|
@@ -0,0 +1,1448 @@
|
|
|
+//销售出库报表
|
|
|
+<template>
|
|
|
+ <div class="container">
|
|
|
+ <el-scrollbar style="height: 100%">
|
|
|
+ <el-row>
|
|
|
+ <el-col style="padding-left: 15px" :span="16">
|
|
|
+ <ws-button
|
|
|
+ :type="searchType == 1 ? 'primary' : ''"
|
|
|
+ @click="handlestatus(1)"
|
|
|
+ >待审核</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ :type="searchType == 2 ? 'primary' : ''"
|
|
|
+ @click="handlestatus(2)"
|
|
|
+ >待结算</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ :type="searchType == 3 ? 'primary' : ''"
|
|
|
+ @click="handlestatus(3)"
|
|
|
+ >已结算</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ :type="searchType == '' ? 'primary' : ''"
|
|
|
+ @click="handlestatus('')"
|
|
|
+ >全部</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ type="primary"
|
|
|
+ v-hasPermission="`report.saleOutReport.view`"
|
|
|
+ @click="handlepass()"
|
|
|
+ >通过</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ type="primary"
|
|
|
+ v-hasPermission="`report.saleOutReport.view`"
|
|
|
+ @click="handlereject()"
|
|
|
+ >驳回</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ type="primary"
|
|
|
+ v-hasPermission="`report.saleOutReport.payment`"
|
|
|
+ @click="handlecollect()"
|
|
|
+ >收款</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ type="primary"
|
|
|
+ v-hasPermission="`report.saleOutReport.draw`"
|
|
|
+ @click="handleninvoice()"
|
|
|
+ >开发票</ws-button
|
|
|
+ >
|
|
|
+ <ws-button
|
|
|
+ type="primary"
|
|
|
+ v-hasPermission="`report.saleOutReport.carry`"
|
|
|
+ @click="amend()"
|
|
|
+ >最终结算价</ws-button
|
|
|
+ >
|
|
|
+ </el-col>
|
|
|
+ <el-col
|
|
|
+ style="text-align: right; line-height: 60px; padding-right: 10px"
|
|
|
+ :span="8"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="contractNo"
|
|
|
+ placeholder="请选择合同"
|
|
|
+ clearable
|
|
|
+ filterable
|
|
|
+ :filter-method="dataFilter"
|
|
|
+ @change="contractchange"
|
|
|
+ maxlength="500"
|
|
|
+ type="input"
|
|
|
+ class="findValue"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-if="item.reportStatus"
|
|
|
+ v-for="item in options"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.contractNo + '(' + item.reportStatus + ')'"
|
|
|
+ :value="item.contractNo"
|
|
|
+ />
|
|
|
+ <el-option
|
|
|
+ v-if="!item.reportStatus"
|
|
|
+ v-for="item in options"
|
|
|
+ :key="item.constKey"
|
|
|
+ :label="item.contractNo"
|
|
|
+ :value="item.contractNo"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <div v-if="contractNo != ''">
|
|
|
+ <span v-if="orderList.transactionsNumber"
|
|
|
+ >合同重量: {{ orderList.transactionsNumber }} 吨</span
|
|
|
+ >
|
|
|
+ <span v-else>合同重量: 0 吨</span>
|
|
|
+ <span v-if="orderList.cumulativeTurnover"
|
|
|
+ >成交量: {{ orderList.cumulativeTurnover }} 吨</span
|
|
|
+ >
|
|
|
+ <span v-else>成交量: 0 吨</span>
|
|
|
+ <span v-if="orderList.closedPosition"
|
|
|
+ >已平仓: {{ orderList.closedPosition }} 吨</span
|
|
|
+ >
|
|
|
+ <span v-else>已平仓: 0 吨</span>
|
|
|
+ <span v-if="orderList.stockOutQuantity"
|
|
|
+ >出库量: {{ orderList.stockOutQuantity }} 吨</span
|
|
|
+ >
|
|
|
+ <span v-else>出库量: 0 吨</span>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-table
|
|
|
+ class="wenzi"
|
|
|
+ :data="warehouseList.records"
|
|
|
+ style="width: 100%; margin-top: 20px"
|
|
|
+ ref="warehouseList"
|
|
|
+ border
|
|
|
+ :summary-method="getSummaries"
|
|
|
+ show-summary
|
|
|
+ @row-click="handleRowClick"
|
|
|
+ @selection-change="handleSelectionChange"
|
|
|
+ >
|
|
|
+ <el-table-column
|
|
|
+ :selectable="selectInit"
|
|
|
+ type="selection"
|
|
|
+ width="55"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column type="index" label="序号" width="50"></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ prop="contractNo"
|
|
|
+ width="120"
|
|
|
+ label="合同编号"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ prop="goodsName"
|
|
|
+ label="货名"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ prop="positionNumber"
|
|
|
+ label="仓位号"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column class="table_td" prop="carNo" label="车牌号" width="140">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ scope.row.carNo }}({{ scope.row.tranCarNo }})
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ prop="retrievalDate"
|
|
|
+ width="100"
|
|
|
+ label="出库日期"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ prop="protein"
|
|
|
+ label="蛋白(%)>="
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ prop="waterContent"
|
|
|
+ label="水分(%)<="
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ prop="unitPrice"
|
|
|
+ label="单价(元/吨)"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ prop="basisPrice"
|
|
|
+ label="基差(元/吨)"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ prop="invoiceFee"
|
|
|
+ label="发票费(元/吨)"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="120"
|
|
|
+ class="table_td"
|
|
|
+ prop="settlementPrice"
|
|
|
+ label="结算单价(元/吨)"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ prop="netWeight"
|
|
|
+ label="净重(吨)"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ label="应收金额(元)"
|
|
|
+ prop="collectionIngPayable"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ label="已收金额(元)"
|
|
|
+ prop="collectionEdPayable"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ label="未收金额(元)"
|
|
|
+ prop="collectionNotPayable"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ label="收款日期"
|
|
|
+ prop="collectionDate"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ label="客户确认"
|
|
|
+ prop="customerConfirmationStatus"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ label="客户"
|
|
|
+ prop="customerName"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ class="table_td"
|
|
|
+ label="库点"
|
|
|
+ prop="warehouseName"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ width="100"
|
|
|
+ class="table_td"
|
|
|
+ label="已开发票(元)"
|
|
|
+ prop="alreadyInvoice"
|
|
|
+ >
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ scope.row.alreadyInvoice }}
|
|
|
+ <img
|
|
|
+ v-if="
|
|
|
+ scope.row.collectionEdPayable > 0
|
|
|
+ "
|
|
|
+ width="17"
|
|
|
+ height="18"
|
|
|
+ style="vertical-align: text-top; position: relative; top: -1px"
|
|
|
+ src="../../../public/img/edit.png"
|
|
|
+ @click="editClickInvoice(scope.row)"
|
|
|
+ alt=""
|
|
|
+ /> </template
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column label="状态" prop="status">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span v-if="scope.row.approveStatus != null">{{
|
|
|
+ scope.row.approveStatus
|
|
|
+ }}</span>
|
|
|
+ <span v-else>{{ scope.row.status }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ <!-- 页数 -->
|
|
|
+ <el-pagination
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="currentPage"
|
|
|
+ :page-size="pageSize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="deptBudgetTotal"
|
|
|
+ ></el-pagination>
|
|
|
+ </el-scrollbar>
|
|
|
+ <!-- 收款 -->
|
|
|
+ <el-dialog
|
|
|
+ width="25%"
|
|
|
+ title="收款"
|
|
|
+ :visible.sync="dialogFormVisible1"
|
|
|
+ :append-to-body="true"
|
|
|
+ >
|
|
|
+ <el-form :model="form">
|
|
|
+ <el-form-item label="未收金额(元)" :label-width="formLabelWidth">
|
|
|
+ <span>{{ collectionNotPayable }}</span>
|
|
|
+ <!-- <el-input v-model="form.region" autocomplete="off" class="deal"></el-input> -->
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="本次收款金额" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ v-model="money"
|
|
|
+ autocomplete="off"
|
|
|
+ placeholder="请输入本次收款金额"
|
|
|
+ class="deal"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="收款日期"
|
|
|
+ prop="collectionDate"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ class="deal"
|
|
|
+ >
|
|
|
+ <ws-date-picker
|
|
|
+ v-model="deptBudgetList.collectionDate"
|
|
|
+ type="date"
|
|
|
+ placeholder="请选择收款日期"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ class="deal"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="上传收款截图" :label-width="formLabelWidth">
|
|
|
+ <el-upload
|
|
|
+ action="https://www.zthymaoyi.com/upload/admin"
|
|
|
+ list-type="picture-card"
|
|
|
+ :on-success="handlePictureCardPreview"
|
|
|
+ :on-remove="handleRemove"
|
|
|
+ class="photo2"
|
|
|
+ >
|
|
|
+ <i class="el-icon-plus"></i>
|
|
|
+ </el-upload>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="dialogFormVisible1 = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="collectment">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 批量开发票 -->
|
|
|
+ <el-dialog
|
|
|
+ width="30%"
|
|
|
+ title="批量开发票"
|
|
|
+ :visible.sync="dialogFormVisible2"
|
|
|
+ :append-to-body="true"
|
|
|
+ >
|
|
|
+ <el-form :model="form">
|
|
|
+ <el-form-item label="发票金额(元)" :label-width="formLabelWidth">
|
|
|
+ <span>{{ collectionEdPayable }}</span>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="dialogFormVisible2 = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="submitBatchInvoice()"
|
|
|
+ >提 交</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 开发票 -->
|
|
|
+ <el-dialog
|
|
|
+ width="30%"
|
|
|
+ title="开发票"
|
|
|
+ :visible.sync="dialogFormVisible3"
|
|
|
+ :append-to-body="true"
|
|
|
+ >
|
|
|
+ <el-form :model="form">
|
|
|
+ <el-form-item label="可开发票金额(元)" :label-width="formLabelWidth">
|
|
|
+ <span>{{ collectionEdPayable }}</span>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="实际发票金额(元)" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ v-model="alreadyInvoice"
|
|
|
+ autocomplete="off"
|
|
|
+ class="deal"
|
|
|
+ placeholder="请输入本次收款金额"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="dialogFormVisible3 = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="submitInvoice()">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 最终结算价 -->
|
|
|
+ <el-dialog
|
|
|
+ width="30%"
|
|
|
+ title="最终结算价"
|
|
|
+ :visible.sync="dialogFormVisible5"
|
|
|
+ :append-to-body="true"
|
|
|
+ >
|
|
|
+ <el-form :rules="rules">
|
|
|
+ <el-form-item label="单价" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ @input="getprice"
|
|
|
+ v-model="amendlist.unitPrice"
|
|
|
+ autocomplete="off"
|
|
|
+ class="deal"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="基差" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ @input="getbasis"
|
|
|
+ v-model="amendlist.basisPrice"
|
|
|
+ autocomplete="off"
|
|
|
+ class="deal"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="发票费" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ @input="getinvoice"
|
|
|
+ v-model="amendlist.invoiceFee"
|
|
|
+ autocomplete="off"
|
|
|
+ class="deal"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="最终结算价" :label-width="formLabelWidth">
|
|
|
+ <el-input
|
|
|
+ readonly="readonly"
|
|
|
+ v-model="amendlist.settlementPrice"
|
|
|
+ autocomplete="off"
|
|
|
+ class="deal"
|
|
|
+ placeholder="不可编辑,自动计算"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="dialogFormVisible5 = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="amendconfirm">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+ <!-- </div> -->
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import {
|
|
|
+ salelist,
|
|
|
+ getsaleoutcontractno,
|
|
|
+ finalsettlementprice,
|
|
|
+ issueapproval,
|
|
|
+ getsaleorder,
|
|
|
+ cashierpayment,
|
|
|
+ salesinvoicing,
|
|
|
+ salesbatchinvoicing,
|
|
|
+} from '@/model/statisticalReport/index'
|
|
|
+import { posthandle } from '@/model/purchasingManagement/index'
|
|
|
+import { downloadFile } from '@/utils/batchDown'
|
|
|
+import Pagination from '@/components/Pagination'
|
|
|
+import WsUpload from '@/components/WsUpload'
|
|
|
+import { dayjs, fmoney, EventBus } from 'base-core-lib'
|
|
|
+export default {
|
|
|
+ name: 'viewSpareMoney',
|
|
|
+ components: {
|
|
|
+ WsUpload,
|
|
|
+ Pagination,
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ vesselId(val) {
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ isShow(val) {
|
|
|
+ this.showType = val
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ checked: true,
|
|
|
+ dialogFormVisible1: false,
|
|
|
+ dialogFormVisible2: false,
|
|
|
+ dialogFormVisible3: false,
|
|
|
+ dialogFormVisible4: false,
|
|
|
+ dialogFormVisible5: false,
|
|
|
+ dialogFormVisible6: false,
|
|
|
+ dialogFormVisible7: false,
|
|
|
+ dialogFormVisible8: false,
|
|
|
+ dialogVisible: false,
|
|
|
+ collectionEdPayable: 0,
|
|
|
+ collectionNotPayable: 0,
|
|
|
+ alreadyInvoice: 0,
|
|
|
+
|
|
|
+ form: {
|
|
|
+ transactionPrice: '',
|
|
|
+ transactionsNumber: '',
|
|
|
+ basis: '',
|
|
|
+ submissionDate: '',
|
|
|
+ // delivery: false,
|
|
|
+ // type: [],
|
|
|
+ // resource: '',
|
|
|
+ // desc: ''
|
|
|
+ },
|
|
|
+ currect: true,
|
|
|
+ formLabelWidth: '120px',
|
|
|
+ barWidth: 0,
|
|
|
+ barHeight: 0,
|
|
|
+ retioX: 1,
|
|
|
+ ratioY: 1,
|
|
|
+ orderList: {},
|
|
|
+ isTaped: false,
|
|
|
+ isHover: false,
|
|
|
+ isShow: !this.autohide,
|
|
|
+ //弹出框
|
|
|
+ dialogViewSpareMoney: false,
|
|
|
+ contractNoList: [],
|
|
|
+ // 是否显示
|
|
|
+ showType: true,
|
|
|
+ // 年
|
|
|
+ year: '',
|
|
|
+ pickerOptions: {},
|
|
|
+ value2: '',
|
|
|
+ deptBudgetTotal: 0,
|
|
|
+ currentPage: 1,
|
|
|
+ tranTypeKey: 1,
|
|
|
+ collectmoney: 0,
|
|
|
+ pageSize: 10,
|
|
|
+ searchType: '1',
|
|
|
+ searchTypeText: '未完成',
|
|
|
+ searchKeyWord: '',
|
|
|
+ contractType: 2,
|
|
|
+ enter: {
|
|
|
+ closePositionList: [],
|
|
|
+ },
|
|
|
+ // 提交类型
|
|
|
+ submitType: true,
|
|
|
+ size: 10,
|
|
|
+ spanArr: [],
|
|
|
+ contractNo: '全部合同',
|
|
|
+ inOutTaskNo: '',
|
|
|
+ options:[],
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ deptCircularPage: {},
|
|
|
+ warehouseList: [],
|
|
|
+ deptBudgetList: {},
|
|
|
+ rules: {
|
|
|
+ settlementPrice: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ type: 'number',
|
|
|
+ trigger: 'blur',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ pcFlag: 1,
|
|
|
+ modification: [],
|
|
|
+ amendlist: {},
|
|
|
+ money: '',
|
|
|
+ roleFlag: 1,
|
|
|
+ roleId: sessionStorage.getItem('ws-pf_roleId'),
|
|
|
+ collectionScreenshot: '',
|
|
|
+ salesDeliveryReportList: [],
|
|
|
+ salesDeliveryReport: {
|
|
|
+ salesDeliveryReportList: [],
|
|
|
+ money: '',
|
|
|
+ collectionEdPayable: 0,
|
|
|
+ collectionNotPayable: 0,
|
|
|
+ collectionDate: '',
|
|
|
+ id: '',
|
|
|
+ invoiceType: '',
|
|
|
+ },
|
|
|
+ historyList: [],
|
|
|
+ collectionScreenshotUrls: [],
|
|
|
+ pickerBeginDateBefore: {
|
|
|
+ disabledDate: (time) => {
|
|
|
+ return time.getTime() > Date.now()
|
|
|
+ },
|
|
|
+ },
|
|
|
+ accessoryTFs: false,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ activated() {
|
|
|
+ // this.loaddata()
|
|
|
+ console.log(1111)
|
|
|
+ this.getList()
|
|
|
+ this.showType = this.isShow
|
|
|
+ },
|
|
|
+ // computed:{
|
|
|
+ // sum:function(){
|
|
|
+ // this.amendlist.settlementPrice = Number(
|
|
|
+ // this.amendlist.unitPrice )+ Number(this.amendlist.basisPrice )+ Number(this.amendlist.invoiceFee)
|
|
|
+ // }
|
|
|
+ // },
|
|
|
+ methods: {
|
|
|
+ dataFilter(val) {
|
|
|
+ // console.log(val,"名")
|
|
|
+ this.contractNo = val
|
|
|
+ if (val) {
|
|
|
+ //val存在
|
|
|
+ this.options = this.contractNoList.filter(item => {
|
|
|
+ if (
|
|
|
+ !!~item.contractNo.indexOf(val) ||
|
|
|
+ !!~item.contractNo.toUpperCase().indexOf(val.toUpperCase())
|
|
|
+ ) {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ //val为空时,还原数组
|
|
|
+ this.options = this.contractNoList
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleRowClick(row) {
|
|
|
+ if (row.approveStatus == null) {
|
|
|
+ this.$refs.warehouseList.toggleRowSelection(row)
|
|
|
+ return true
|
|
|
+ } else if (row.approveStatus != null) {
|
|
|
+ if (row.taskId == null) {
|
|
|
+ return false
|
|
|
+ } else {
|
|
|
+ this.$refs.warehouseList.toggleRowSelection(row)
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ selectInit(row) {
|
|
|
+ //在这里一定要记得类型匹配的上。
|
|
|
+ if (row.approveStatus == null) {
|
|
|
+ return true
|
|
|
+ } else if (row.approveStatus != null) {
|
|
|
+ if (row.taskId == null) {
|
|
|
+ return false
|
|
|
+ } else {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ audit(item, index, status, status2, reason) {
|
|
|
+ if (index < this.modification.length) {
|
|
|
+ posthandle({
|
|
|
+ taskId: item.taskId,
|
|
|
+ approved: status,
|
|
|
+ auditMind: reason != undefined ? '已驳回' : '34',
|
|
|
+ needReapply: status2 != undefined ? true : false,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.audit(this.modification[index + 1], index + 1, status)
|
|
|
+ })
|
|
|
+ .catch((req) => {
|
|
|
+ this.$message.warning(req.message)
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ if (status==true) {
|
|
|
+ this.$message.success('通过成功')
|
|
|
+ this.getList()
|
|
|
+ } else if (status==false) {
|
|
|
+ this.$message.success('驳回成功')
|
|
|
+ this.getList()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handlereject(status) {
|
|
|
+ var that = this
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择要驳回的条目')
|
|
|
+ } else {
|
|
|
+ this.$confirm(`是否确定驳回?`, {
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ type: 'warning',
|
|
|
+ }).then(() => {
|
|
|
+ that.audit(this.modification[0], 0, false, true, '已驳回')
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handlepass() {
|
|
|
+ var that = this
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择要通过的条目')
|
|
|
+ } else {
|
|
|
+ this.$confirm(`是否确定通过?`, {
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ type: 'warning',
|
|
|
+ }).then(() => {
|
|
|
+ that.audit(this.modification[0], 0, true)
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //最终结算价
|
|
|
+ amendconfirm() {
|
|
|
+ this.amendlist.id = this.modification[0].id
|
|
|
+ finalsettlementprice(this.amendlist)
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$message.success('修改成功')
|
|
|
+ this.dialogFormVisible5 = false
|
|
|
+ this.getList()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleSelectionChange(val) {
|
|
|
+ this.modification = val
|
|
|
+ },
|
|
|
+ handlestatus(status) {
|
|
|
+ this.searchType = status
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ contractchange(e) {
|
|
|
+ this.contractNo = e
|
|
|
+ getsaleorder({
|
|
|
+ contractNo: this.contractNo,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ if (response != null) {
|
|
|
+ this.orderList = response
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ updated() {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.warehouseList.doLayout()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //合计
|
|
|
+ getSummaries(param) {
|
|
|
+ const { columns, data } = param
|
|
|
+ const sums = []
|
|
|
+ columns.forEach((column, index) => {
|
|
|
+ if (index === 0) {
|
|
|
+ sums[index] = '合计'
|
|
|
+ } else if (
|
|
|
+ index === 13 ||
|
|
|
+ index === 14 ||
|
|
|
+ index === 15 ||
|
|
|
+ index === 16 ||
|
|
|
+ index === 21
|
|
|
+ ) {
|
|
|
+ const values = data.map((item) => Number(item[column.property]))
|
|
|
+ if (!values.every((value) => isNaN(value))) {
|
|
|
+ sums[index] = values.reduce((prev, curr) => {
|
|
|
+ const value = Number(curr)
|
|
|
+ if (!isNaN(value)) {
|
|
|
+ return prev + curr
|
|
|
+ } else {
|
|
|
+ return prev
|
|
|
+ }
|
|
|
+ }, 0)
|
|
|
+ } else {
|
|
|
+ sums[index] = '元'
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ sums[index] = '--'
|
|
|
+ }
|
|
|
+ })
|
|
|
+ return sums
|
|
|
+ },
|
|
|
+ handlecollect() {
|
|
|
+ this.collectionNotPayable = 0
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择一条要收款的条目')
|
|
|
+ } else {
|
|
|
+ for (var i = 0; i < this.modification.length; i++) {
|
|
|
+ if (
|
|
|
+ this.modification[i].status != '已通过' &&
|
|
|
+ this.modification[i].status != '部分收款'
|
|
|
+ ) {
|
|
|
+ this.$message.warning('只有已通过或部分收款的条目才可进行收款操作')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.collectionNotPayable += this.modification[i].collectionNotPayable
|
|
|
+ }
|
|
|
+ this.dialogFormVisible1 = true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //收款
|
|
|
+ collectment() {
|
|
|
+ this.salesDeliveryReport.money = this.money
|
|
|
+ this.salesDeliveryReport.collectionDate = this.collectionDate
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择一条要收款的条目')
|
|
|
+ } else {
|
|
|
+ if (
|
|
|
+ this.money < 0 ||
|
|
|
+ (String(this.money).indexOf('.') != -1 &&
|
|
|
+ String(this.money).length - (String(this.money).indexOf('.') + 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '收款金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.money) {
|
|
|
+ if (isNaN(this.money)) {
|
|
|
+ this.$message({
|
|
|
+ message: '收款金额非数字!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!this.money) {
|
|
|
+ this.$message({
|
|
|
+ message: '收款金额不能为空!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.money > this.modification[0].collectionNotPayable) {
|
|
|
+ this.$message({
|
|
|
+ message: '收款金额不能大于未收金额!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.$confirm(`确定提交收款信息?`, {
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ type: 'warning',
|
|
|
+ }).then(() => {
|
|
|
+ cashierpayment({
|
|
|
+ salesDeliveryReportList: this.modification,
|
|
|
+ collectionEdPayable: this.modification[0].collectionEdPayable,
|
|
|
+ collectionNotPayable: this.modification[0].collectionNotPayable,
|
|
|
+ money: this.money,
|
|
|
+ collectionDate: this.collectionDate,
|
|
|
+ collectionScreenshot: this.collectionScreenshot,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$notify.success({
|
|
|
+ title: '成功',
|
|
|
+ message: '收款成功',
|
|
|
+ })
|
|
|
+ this.salesDeliveryReportList = {}
|
|
|
+ this.money = ''
|
|
|
+ this.collectionDate = ''
|
|
|
+ this.collectionScreenshot=''
|
|
|
+ this.dialogFormVisible1 = false
|
|
|
+ this.getList()
|
|
|
+ })
|
|
|
+ .catch((response) => {
|
|
|
+ console.log(response)
|
|
|
+ EventBus.$emit('error', response.message)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //批量开发票
|
|
|
+ handleninvoice() {
|
|
|
+ this.collectionEdPayable = 0
|
|
|
+ for (var i = 0; i < this.modification.length; i++) {
|
|
|
+ this.collectionEdPayable += this.modification[i].collectionEdPayable
|
|
|
+ }
|
|
|
+ this.dialogFormVisible2 = true
|
|
|
+ },
|
|
|
+ submitBatchInvoice() {
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择一条要开发票的条目')
|
|
|
+ } else if (this.modification[0].collectionEdPayable < 0) {
|
|
|
+ this.$message.warning('请选择一条已收款的条目')
|
|
|
+ } else {
|
|
|
+ this.$confirm(`确定提交发票信息?`, {
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ type: 'warning',
|
|
|
+ }).then(() => {
|
|
|
+ salesbatchinvoicing({
|
|
|
+ salesDeliveryReportList: this.modification,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$notify.success({
|
|
|
+ title: '成功',
|
|
|
+ message: '提交成功',
|
|
|
+ })
|
|
|
+ this.dialogFormVisible2 = false
|
|
|
+ this.getList()
|
|
|
+ })
|
|
|
+ .catch((response) => {
|
|
|
+ console.log(response)
|
|
|
+ EventBus.$emit('error', response.message)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //开发票
|
|
|
+ editClickInvoice(row) {
|
|
|
+ this.id = row.id
|
|
|
+ this.alreadyInvoice1 = row.alreadyInvoice
|
|
|
+ this.amountEdPayable = row.amountEdPayable
|
|
|
+ this.amountNotPayable = row.amountNotPayable
|
|
|
+ this.dialogFormVisible3 = 'true'
|
|
|
+ },
|
|
|
+ submitInvoice() {
|
|
|
+ if (this.collectionEdPayable < 0) {
|
|
|
+ this.$message.warning('请选择一条已付款的条目')
|
|
|
+ } else {
|
|
|
+ if (
|
|
|
+ this.alreadyInvoice < 0 ||
|
|
|
+ this.alreadyInvoice >
|
|
|
+ this.collectionEdPayable - this.alreadyInvoice1 ||
|
|
|
+ (String(this.alreadyInvoice).indexOf('.') != -1 &&
|
|
|
+ String(this.alreadyInvoice).length -
|
|
|
+ (String(this.alreadyInvoice).indexOf('.') + 1) >
|
|
|
+ 2)
|
|
|
+ ) {
|
|
|
+ this.$message({
|
|
|
+ message: '金额输入错误',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (this.alreadyInvoice) {
|
|
|
+ if (isNaN(this.alreadyInvoice)) {
|
|
|
+ this.$message({
|
|
|
+ message: '金额非数字!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!this.alreadyInvoice) {
|
|
|
+ this.$message({
|
|
|
+ message: '金额不能为空!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.$confirm(`确定提交发票信息?`, {
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ type: 'warning',
|
|
|
+ }).then(() => {
|
|
|
+ salesinvoicing({
|
|
|
+ id: this.id,
|
|
|
+ invoiceType: this.invoiceType,
|
|
|
+ alreadyInvoice: this.alreadyInvoice,
|
|
|
+ collectionEdPayable: this.collectionEdPayable,
|
|
|
+ collectionNotPayable: this.collectionNotPayable,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$notify.success({
|
|
|
+ title: '成功',
|
|
|
+ message: '提交成功',
|
|
|
+ })
|
|
|
+ this.dialogFormVisible3 = false
|
|
|
+ this.getList()
|
|
|
+ })
|
|
|
+ .catch((response) => {
|
|
|
+ console.log(response)
|
|
|
+ EventBus.$emit('error', response.message)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //列表
|
|
|
+ getList() {
|
|
|
+ // if(this.roleId=='4c2d50d8ff2943c1b7a1e947feefe048'){
|
|
|
+ // this.roleFlag=1
|
|
|
+ // }else if(this.roleId=='cca3cf0ca2814d1e918f5b0a4380fe69'){
|
|
|
+ // this.roleFlag=2
|
|
|
+ // }else if(this.roleId=='9ad8abb997714ef29068f23c2ad3b125'){
|
|
|
+ // this.roleFlag=3
|
|
|
+ // }else if(this.roleId=='3d7b9179552b4c3e9c2d7af43962e2e4'){
|
|
|
+ // this.roleFlag=4
|
|
|
+ // }else if(this.roleId=="4ef070439cd64784bce8844fd3f0f8e1"){
|
|
|
+ // this.roleFlag=''
|
|
|
+ // }
|
|
|
+ salelist({
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ currentPage: this.currentPage,
|
|
|
+ pageSize: this.pageSize,
|
|
|
+ searchType: this.searchType,
|
|
|
+ contractNo: this.contractNo,
|
|
|
+ // roleFlag:this.roleFlag
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ for (var i = 0; i < response.records.length; i++) {
|
|
|
+ response.records[i].settlementPrice =
|
|
|
+ response.records[i].unitPrice +
|
|
|
+ response.records[i].basisPrice +
|
|
|
+ response.records[i].invoiceFee
|
|
|
+ }
|
|
|
+ this.deptBudgetTotal = response.total
|
|
|
+ this.warehouseList = response
|
|
|
+ })
|
|
|
+ getsaleoutcontractno({
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ currentPage: this.currentPage,
|
|
|
+ pageSize: this.pageSize,
|
|
|
+ roleFlag: this.roleFlag,
|
|
|
+ })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.contractNoList = response
|
|
|
+ this.contractNoList.unshift({contractNo:'全部合同'})
|
|
|
+ this.options=this.contractNoList
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //最终结算价
|
|
|
+ amend() {
|
|
|
+ if (this.modification.length == 0) {
|
|
|
+ this.$message.warning('请选择一条要修改最终结算价的条目')
|
|
|
+ } else {
|
|
|
+ this.dialogFormVisible5 = true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getprice(e) {
|
|
|
+ if (
|
|
|
+ this.amendlist.unitPrice &&
|
|
|
+ this.amendlist.basisPrice &&
|
|
|
+ this.amendlist.invoiceFee
|
|
|
+ ) {
|
|
|
+ this.amendlist.settlementPrice =
|
|
|
+ Number(this.amendlist.unitPrice) +
|
|
|
+ Number(this.amendlist.basisPrice) +
|
|
|
+ Number(this.amendlist.invoiceFee)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getbasis(e) {
|
|
|
+ console.log(e)
|
|
|
+ if (
|
|
|
+ this.amendlist.unitPrice &&
|
|
|
+ this.amendlist.basisPrice &&
|
|
|
+ this.amendlist.invoiceFee
|
|
|
+ ) {
|
|
|
+ this.amendlist.settlementPrice =
|
|
|
+ Number(this.amendlist.unitPrice) +
|
|
|
+ Number(this.amendlist.basisPrice) +
|
|
|
+ Number(this.amendlist.invoiceFee)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getinvoice(e) {
|
|
|
+ if (
|
|
|
+ this.amendlist.unitPrice &&
|
|
|
+ this.amendlist.basisPrice &&
|
|
|
+ this.amendlist.invoiceFee
|
|
|
+ ) {
|
|
|
+ this.amendlist.settlementPrice =
|
|
|
+ Number(this.amendlist.unitPrice) +
|
|
|
+ Number(this.amendlist.basisPrice) +
|
|
|
+ Number(this.amendlist.invoiceFee)
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ handleRemove(file) {
|
|
|
+ console.log(file)
|
|
|
+ },
|
|
|
+ handlePictureCardPreview(file) {
|
|
|
+ this.collectionScreenshot = file.url
|
|
|
+ },
|
|
|
+ handleDownload(file) {
|
|
|
+ console.log(file)
|
|
|
+ },
|
|
|
+
|
|
|
+ getSpanArr(data) {
|
|
|
+ let that = this
|
|
|
+
|
|
|
+ //页面展示的数据,不一定是全部的数据,所以每次都清空之前存储的 保证遍历的数据是最新的数据。以免造成数据渲染混乱
|
|
|
+
|
|
|
+ that.spanArr = []
|
|
|
+
|
|
|
+ that.pos = 0
|
|
|
+
|
|
|
+ // //遍历数据
|
|
|
+
|
|
|
+ data.forEach((item, index) => {
|
|
|
+ //判断是否是第一项
|
|
|
+
|
|
|
+ if (index === 0) {
|
|
|
+ this.spanArr.push(1)
|
|
|
+ this.pos = 0
|
|
|
+ } else {
|
|
|
+ //不是第一项时,就根据标识去存储
|
|
|
+ if (data[index].warehouseNumViewList.length > 1) {
|
|
|
+ 查找到符合条件的数据时每次要把之前存储的数据 + 1
|
|
|
+ this.spanArr[this.pos] = data[index].warehouseNumViewList.length
|
|
|
+ this.spanArr.push(0)
|
|
|
+ } else {
|
|
|
+ // 没有符合的数据时,要记住当前的index
|
|
|
+ this.spanArr.push(1)
|
|
|
+ this.pos = index
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //查看
|
|
|
+ handleLook(row) {
|
|
|
+ this.$router.push({
|
|
|
+ path: 'warehouseManagementPutOutLook',
|
|
|
+ query: {
|
|
|
+ relevanceId: row.relevanceId,
|
|
|
+ },
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //返回
|
|
|
+ revert() {
|
|
|
+ this.$router.push({ path: 'warehouseManagementList' })
|
|
|
+ },
|
|
|
+ dateFormat(fmt, date) {
|
|
|
+ let ret
|
|
|
+ const opt = {
|
|
|
+ 'Y+': date.getFullYear().toString(), // 年
|
|
|
+ 'm+': (date.getMonth() + 1).toString(), // 月
|
|
|
+ 'd+': date.getDate().toString(), // 日
|
|
|
+ 'H+': date.getHours().toString(), // 时
|
|
|
+ // "M+": date.getMinutes().toString(), // 分
|
|
|
+ // "S+": date.getSeconds().toString() // 秒
|
|
|
+ // 有其他格式化字符需求可以继续添加,必须转化成字符串
|
|
|
+ }
|
|
|
+ for (let k in opt) {
|
|
|
+ ret = new RegExp('(' + k + ')').exec(fmt)
|
|
|
+ if (ret) {
|
|
|
+ fmt = fmt.replace(
|
|
|
+ ret[1],
|
|
|
+ ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
|
|
|
+ )
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return fmt
|
|
|
+ },
|
|
|
+ handleClose() {
|
|
|
+ this.accessoryTFs = false
|
|
|
+ },
|
|
|
+ handleSizeChange(val) {
|
|
|
+ console.log(`每页 ${val} 条`)
|
|
|
+ this.pageSize = val
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.currentPage = val
|
|
|
+ console.log(`当前页: ${val}`)
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ editClick(row) {
|
|
|
+ var status = ''
|
|
|
+ if (row.status == '待审核' || row.status == '已完成') {
|
|
|
+ status = '执行中'
|
|
|
+ } else if (row.status == '执行中') {
|
|
|
+ status = '已完成'
|
|
|
+ }
|
|
|
+ //cancelButtonClass: "btn-custom-cancel"
|
|
|
+ this.$confirm(`是否将状态改为${status}`, {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ alsostate({ id: row.id })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$notify.success({
|
|
|
+ title: '成功',
|
|
|
+ message: '状态修改成功',
|
|
|
+ })
|
|
|
+ this.getList()
|
|
|
+ })
|
|
|
+ .catch((response) => {
|
|
|
+ // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ return false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ selecttaskType(e) {
|
|
|
+ for (var i = 0; i < this.taskTypeList.length; i++) {
|
|
|
+ if (this.taskTypeList[i].value == e) {
|
|
|
+ this.searchType = this.taskTypeList[i].type
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleExamine(row) {
|
|
|
+ this.$router.push({
|
|
|
+ name: 'salesContractExamine',
|
|
|
+ query: { id: row.id },
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 关闭 dialog时 处理文件url 初始化upload组件
|
|
|
+ handleCloe() {
|
|
|
+ this.dialogViewSpareMoney = false
|
|
|
+ },
|
|
|
+ history(row) {
|
|
|
+ billoperatehis({ id: row.id })
|
|
|
+ .toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.historyList = response
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //查找
|
|
|
+ find() {
|
|
|
+ this.currentPage = 1
|
|
|
+ this.getList()
|
|
|
+ },
|
|
|
+ async exportlist() {
|
|
|
+ const { data } = await export1(
|
|
|
+ {
|
|
|
+ compId: sessionStorage.getItem('ws-pf_compId'),
|
|
|
+ contractType: this.contractType,
|
|
|
+ currentPage: this.currentPage,
|
|
|
+ pageSize: this.pageSize,
|
|
|
+ searchType: this.searchType,
|
|
|
+ searchKeyWord: this.searchKeyWord,
|
|
|
+ startDate: this.startDate,
|
|
|
+ endDate: this.endDate,
|
|
|
+ },
|
|
|
+ {},
|
|
|
+ { responseType: 'blob' }
|
|
|
+ ).toPromise()
|
|
|
+ downloadFile({
|
|
|
+ res: data,
|
|
|
+ fileName: `${
|
|
|
+ this.date.year + (this.date.month ? `-${this.date.month}` : '')
|
|
|
+ }_采购合同`,
|
|
|
+ type: 'xls',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ total() {},
|
|
|
+ },
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.connert {
|
|
|
+ width: 90%;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+.vertical-text-left {
|
|
|
+ width: 62px;
|
|
|
+ text-align: right;
|
|
|
+}
|
|
|
+//分页
|
|
|
+.el-pagination {
|
|
|
+ padding: 10px 15px;
|
|
|
+ margin-bottom: 0;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+/deep/.el-pager li.active {
|
|
|
+ color: #5878e8;
|
|
|
+ cursor: default;
|
|
|
+}
|
|
|
+/deep/.el-pager li:hover {
|
|
|
+ color: #5878e8;
|
|
|
+ cursor: default;
|
|
|
+}
|
|
|
+.el-button--default {
|
|
|
+ color: #8890b1;
|
|
|
+ border-color: #e8eaf1;
|
|
|
+}
|
|
|
+/deep/.base_header_layout .grid-content.right .find.el-button--primary {
|
|
|
+ width: 30px;
|
|
|
+ margin-left: 0;
|
|
|
+ border-top-left-radius: 0px;
|
|
|
+ border-bottom-left-radius: 0px;
|
|
|
+}
|
|
|
+/deep/.findValue .el-input__inner {
|
|
|
+ border-top-right-radius: 0px;
|
|
|
+ border-bottom-right-radius: 0px;
|
|
|
+ width: 385px;
|
|
|
+}
|
|
|
+.completed.el-button--default {
|
|
|
+ border-color: #5878e8;
|
|
|
+ background-color: #f6f7fc;
|
|
|
+ color: #5878e8;
|
|
|
+}
|
|
|
+.putstorage.el-button--default,
|
|
|
+.deliverystorage.el-button--default {
|
|
|
+ border-color: #8890b1;
|
|
|
+ background-color: #fff;
|
|
|
+ color: #8890b1;
|
|
|
+}
|
|
|
+/deep/.el-table td,
|
|
|
+/deep/.el-table th.is-leaf {
|
|
|
+ border-right: 1px solid #e9ecf7;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+/deep/.el-table tr td:first-child,
|
|
|
+/deep/.el-table tr th.is-leaf:first-child {
|
|
|
+ border-left: 1px solid #e9ecf7;
|
|
|
+}
|
|
|
+.record,
|
|
|
+.adjustment {
|
|
|
+ display: inline-block;
|
|
|
+ color: #5878e8;
|
|
|
+ padding: 0 4px !important;
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+.record:after {
|
|
|
+ position: absolute;
|
|
|
+ content: '';
|
|
|
+ display: block;
|
|
|
+ top: 5px;
|
|
|
+ right: -2px;
|
|
|
+ width: 1px;
|
|
|
+ height: 12px;
|
|
|
+ background: #e9ecf7;
|
|
|
+}
|
|
|
+// .el-row{
|
|
|
+// height: 150px;
|
|
|
+// }
|
|
|
+.base_header_layout .grid-content {
|
|
|
+ margin-top: 80px;
|
|
|
+}
|
|
|
+.el-input--small .el-input__inner {
|
|
|
+ margin-left: 20px;
|
|
|
+}
|
|
|
+.el-range-editor--small.el-input__inner {
|
|
|
+ height: 32px;
|
|
|
+ margin-left: -20%;
|
|
|
+}
|
|
|
+//执行样式
|
|
|
+.executory,
|
|
|
+.inExecution,
|
|
|
+.done {
|
|
|
+ width: 6px;
|
|
|
+ height: 6px;
|
|
|
+ display: inline-block;
|
|
|
+ border-radius: 50%;
|
|
|
+ position: relative;
|
|
|
+ top: -1px;
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
+.executory {
|
|
|
+ background: #ff9f24;
|
|
|
+}
|
|
|
+.inExecution {
|
|
|
+ background: #5878e8;
|
|
|
+}
|
|
|
+.done {
|
|
|
+ background: #50cad4;
|
|
|
+}
|
|
|
+.record,
|
|
|
+.adjustment {
|
|
|
+ display: inline-block;
|
|
|
+ color: #5878e8;
|
|
|
+ padding: 0 4px !important;
|
|
|
+ position: relative;
|
|
|
+ font-size: 14px;
|
|
|
+}
|
|
|
+.container {
|
|
|
+ overflow: scroll;
|
|
|
+ height: 93vh;
|
|
|
+}
|
|
|
+.button-container {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ background-color: #fff;
|
|
|
+ width: 100%;
|
|
|
+ height: 50px;
|
|
|
+ padding: 0 10px;
|
|
|
+ & > div {
|
|
|
+ margin-left: 10px;
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ flex-direction: row;
|
|
|
+ & > span {
|
|
|
+ line-height: 50px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /deep/.auditFlow-box {
|
|
|
+ position: unset;
|
|
|
+ margin-left: 10px;
|
|
|
+ &/deep/.auditFlow-icon {
|
|
|
+ width: auto;
|
|
|
+ padding-right: 30px;
|
|
|
+ }
|
|
|
+ &/deep/.auditFlow-main {
|
|
|
+ position: absolute;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.bg-left {
|
|
|
+ padding-left: 30px;
|
|
|
+}
|
|
|
+.title {
|
|
|
+ position: relative;
|
|
|
+}
|
|
|
+.title::before {
|
|
|
+ content: '';
|
|
|
+ display: inline-block;
|
|
|
+ width: 5px;
|
|
|
+ height: 30px;
|
|
|
+ background: #5473e8;
|
|
|
+ position: absolute;
|
|
|
+ left: 0;
|
|
|
+}
|
|
|
+.el-button--primary {
|
|
|
+ background-color: #5878e8;
|
|
|
+ border-color: #5878e8;
|
|
|
+ // margin-left: 85%;
|
|
|
+ margin-top: 13px;
|
|
|
+}
|
|
|
+//导航条样式
|
|
|
+.el-col-12 {
|
|
|
+ width: 50%;
|
|
|
+ height: 60px;
|
|
|
+ background: #f6f7fc;
|
|
|
+ border-radius: 4px 4px 1px 1px;
|
|
|
+}
|
|
|
+.el-input--small .el-input__inner {
|
|
|
+ height: 32px;
|
|
|
+ line-height: 32px;
|
|
|
+ width: 385px;
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+.bg-bottom {
|
|
|
+ margin-left: 85%;
|
|
|
+}
|
|
|
+.but {
|
|
|
+ margin-left: 30%;
|
|
|
+ /* margin-top: -32px; */
|
|
|
+ overflow: auto;
|
|
|
+ /* float: left; */
|
|
|
+ /* margin-left: 1px; */
|
|
|
+ margin-left: -10px;
|
|
|
+}
|
|
|
+.el-input--small {
|
|
|
+ font-size: 13px;
|
|
|
+ width: 390px;
|
|
|
+ margin-left: 74%;
|
|
|
+}
|
|
|
+/deep/.el-table .el-table__header .cell,
|
|
|
+.el-table .el-table__body .cell {
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+.el-scrollbar__wrap {
|
|
|
+ overflow-y: hidden;
|
|
|
+}
|
|
|
+/deep/.deal {
|
|
|
+ margin-left: 0%;
|
|
|
+ width: 64%;
|
|
|
+}
|
|
|
+.photo {
|
|
|
+ padding: 0% 34%;
|
|
|
+}
|
|
|
+.photo1 {
|
|
|
+ padding: 0 10%;
|
|
|
+}
|
|
|
+.photo2 {
|
|
|
+ padding: 0 12%;
|
|
|
+}
|
|
|
+/deep/.el-form-item--small .el-form-item__label,
|
|
|
+.el-form-item--small .el-form-item__content {
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+hr {
|
|
|
+ width: 91%;
|
|
|
+}
|
|
|
+/deep/.deaal {
|
|
|
+ width: 66%;
|
|
|
+ margin-left: 9%;
|
|
|
+}
|
|
|
+.el-date-editor.el-input,
|
|
|
+.el-date-editor.el-input__inner,
|
|
|
+.el-input-number--small {
|
|
|
+ width: 123% !important;
|
|
|
+}
|
|
|
+/deep/.el-table td,
|
|
|
+.el-table th.is-leaf {
|
|
|
+ border-right: 1px solid #e9ecf7;
|
|
|
+ text-align: center;
|
|
|
+ height: 40px;
|
|
|
+}
|
|
|
+// .danjia{
|
|
|
+// width: 9px;
|
|
|
+// height: 9px;
|
|
|
+// margin-left: 40px;
|
|
|
+// }
|
|
|
+</style>
|