From dda4c08d41693d2495a13e7db230c3e9747540de Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期二, 02 九月 2025 10:33:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master
---
ui/admin-ui3/src/views/cwgl/estimatedReceivableBill/index.vue | 736 ++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 584 insertions(+), 152 deletions(-)
diff --git a/ui/admin-ui3/src/views/cwgl/estimatedReceivableBill/index.vue b/ui/admin-ui3/src/views/cwgl/estimatedReceivableBill/index.vue
index 3fd7356..e76662d 100644
--- a/ui/admin-ui3/src/views/cwgl/estimatedReceivableBill/index.vue
+++ b/ui/admin-ui3/src/views/cwgl/estimatedReceivableBill/index.vue
@@ -1,174 +1,606 @@
<template>
- <basicContainer >
- <avue-crud
- :option="option"
- :table-loading="pageF.loading"
- :data="tableData"
- :page="page"
- :permission="permissionList"
- :before-open="beforeOpen"
- v-model="form"
- ref="crudRef"
- @row-update="rowUpdate"
- @row-save="rowSave"
- @refresh-change="refreshChange"
- @row-del="rowDel"
- @search-change="searchChange"
- @search-reset="searchReset"
- @selection-change="selectionChange"
- @current-change="currentChange"
- @size-change="sizeChange"
- @on-load="onLoad"
- >
+ <basicContainer>
+ <avue-crud :option="option" :table-loading="pageF.loading" :data="tableData" :page="page"
+ :permission="permissionList" :before-open="beforeOpen" v-model="form" ref="crudRef" @row-update="rowUpdate"
+ @row-save="rowSave" @refresh-change="refreshChange" @row-del="rowDel" @search-change="searchChange"
+ @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
+ @size-change="sizeChange" @on-load="onLoad">
<template #menu-left>
- <el-button
- type="success"
- icon="Edit"
- :disabled="pageF.single"
- v-hasPermi="['cwgl:estimatedReceivableBill:edit']"
- @click="handleUpdate">淇敼
+ <!-- <el-button type="success" icon="Edit" :disabled="pageF.single"
+ v-hasPermi="['cwgl:estimatedReceivableBill:edit']" @click="handleUpdate">淇敼
+ </el-button> -->
+ <!-- <el-button type="danger" icon="Delete" :disabled="pageF.multiple" @click="handleDelete"
+ v-hasPermi="['cwgl:estimatedReceivableBill:remove']">鍒犻櫎
</el-button>
- <el-button
- type="danger"
- icon="Delete"
- :disabled="pageF.multiple"
- @click="handleDelete"
- v-hasPermi="['cwgl:estimatedReceivableBill:remove']"
- >鍒犻櫎
- </el-button>
- <el-button
- type="warning"
- plain
- icon="Download"
- @click="handleExport"
- v-hasPermi="['cwgl:estimatedReceivableBill:export']"
- >瀵煎嚭
- </el-button>
+ <el-button type="warning" plain icon="Download" @click="handleExport"
+ v-hasPermi="['cwgl:estimatedReceivableBill:export']">瀵煎嚭
+ </el-button> -->
+ </template>
+ <template #billSystemNo="{ size, row, index }">
+
+ <el-link class="link-btn" type="primary" :underline="false" plain @click="handleBillSystemNo(row)">
+ {{ row.billSystemNo }}
+ </el-link>
+ </template>
+
+
+ <template #menu="{ size, row, index }">
+
+ <el-link class="link-btn" type="primary" v-if="[0, 1].includes(row.status)" :underline="false" plain
+ @click="handleclose(row)" v-hasPermi="['cwgl:estimatedReceivableBill:confirm']"> 缁撶畻
+ </el-link>
+ <el-link class="link-btn" type="primary" v-if="[0].includes(row.status)" :underline="false" plain
+ @click="handleAmend(row)" v-hasPermi="['cwgl:estimatedReceivableBill:invalid']"> 淇敼
+ </el-link>
+ <el-link class="link-btn" type="primary" :underline="false" plain @click="handleFlow(row)"
+ v-hasPermi="['cwgl:estimatedReceivableBill:flog']"> 鏃ュ織
+ </el-link>
</template>
</avue-crud>
</basicContainer>
+
+
+ <el-dialog v-model="dialog.visible" :title="dialog.title" width="1200px">
+ <el-form ref="newFormRef" v-if="!dispIshow && noIshow" :model="newForm" :rules="rules" label-width="120px">
+ <el-row :gutter="20">
+ <el-col :span="12">
+ <el-form-item label="鏈缁撶畻閲戦" prop="settlementAmount">
+ <el-input v-model="newForm.settlementAmount" placeholder="璇疯緭鍏ユ湰娆$粨绠楅噾棰�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="澶囨敞" prop="remark">
+ <el-input v-model="newForm.remark" :rows="2" type="textarea" placeholder="璇疯緭鍏ュ娉�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="闄勪欢" prop="attachment">
+ <FileUpload v-model="newForm.attachment" :isShowTip="false"
+ :fileType="['pdf', 'bmp', 'gif', 'jpg', 'jpeg', 'png']"></FileUpload>
+ 鏀寔鏂囦欢绫诲瀷锛� pdf锛宐mp锛実if锛宩pg锛宩peg锛宲ng'
+ </el-form-item>
+ </el-col>
+
+ </el-row>
+
+ </el-form>
+
+ <div v-if="!dispIshow && noIshow" style="text-align: center;margin-top: 20px;">
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ </div>
+
+
+ <h2 style="margin: 15px;font-size: 15px;">
+ 璐﹀崟鍩烘湰淇℃伅
+ </h2>
+ <el-form ref="storagesTransferRef" :model="newObjForm" label-width="120px">
+ <el-descriptions class="margin-top" title="" :column="3" border>
+ <el-descriptions-item label="璐﹀崟绯荤粺缂栧彿" align="center">
+ {{ importForm.billSystemNo }}
+ </el-descriptions-item>
+ <el-descriptions-item label="璐﹀崟鍚嶇О" align="center">
+ <el-input v-if="dispIshow" v-model="importForm.billName" placeholder="璇疯緭鍏ヨ处鍗曞悕绉�" />
+ <span v-if="!dispIshow"> {{ importForm.billName }}</span>
+ </el-descriptions-item>
+ <el-descriptions-item label="瀹㈡埛鍚嶇О" align="center">
+ {{ importForm.customerName }}
+ </el-descriptions-item>
+
+ <el-descriptions-item label="搴旂粨绠楅噾棰�" align="center">
+ {{ importForm.totalAmount }}
+ </el-descriptions-item>
+
+ <el-descriptions-item v-if="!dispIshow" label="宸茬粨绠楅噾棰�" align="center">
+ {{ importForm.settledAmount }}
+ </el-descriptions-item>
+
+ <el-descriptions-item v-if="!dispIshow" label="寰呯粨绠楅噾棰�" align="center">
+ <span v-if="importForm.totalAmount == 0">0</span>
+ <span v-else>{{ (importForm.totalAmount - importForm.settledAmount).toFixed(2) }}</span>
+ </el-descriptions-item>
+
+ <el-descriptions-item v-if="dispIshow" label="" align="center">
+ </el-descriptions-item>
+
+ <el-descriptions-item v-if="dispIshow" label="" align="center">
+ </el-descriptions-item>
+
+ </el-descriptions>
+ </el-form>
+
+ <div v-if="dispIshow" style="text-align: center;margin-top: 20px;">
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitFormTow">纭� 瀹�</el-button>
+ </div>
+ <h2 style="margin: 15px;font-size: 15px;">
+ 鍏宠仈鏄庣粏
+ </h2>
+ <avue-crud :option="newOption" :data="newTableData" v-model:search="newFormData" :page="newPageF"
+ :table-loading="itemTableLoading2" @search-change="newSearchChange" ref="newTableRef"
+ @search-reset="newRsetChange" @current-change="handleAttachmentCurrentChange"
+ @size-change="handleAttachmentSizeChange" @on-load="newOnLoad">
+
+ <template #menu="{ size, row, index }">
+ <el-link class="link-btn" type="primary" :underline="false" plain @click="handleRelevance(row)"
+ v-hasPermi="['cwgl:estimatedReceivableBill:relevancy']"> 鍙栨秷鍏宠仈
+ </el-link>
+ </template>
+
+ </avue-crud>
+
+
+ <div v-if="!noIshow" style="text-align: right;margin-top: 20px;">
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+
+ </el-dialog>
+
+ <flowLog ref="flowLogIshow" :fileNameIshow="true" :flowParams="flowParams"></flowLog>
+
+
</template>
<script setup name="estimatedReceivableBill" lang="ts">
- import {EstimatedReceivableBillI,addEstimatedReceivableBill, delEstimatedReceivableBill, exportEstimatedReceivableBill, getEstimatedReceivableBill, listEstimatedReceivableBill, updateEstimatedReceivableBill} from "@/api/cwgl/estimatedReceivableBill";
- import useCurrentInstance from "@/utils/useCurrentInstance";
- import {computed,reactive, ref, toRefs} from "vue";
- import {PagesInterface, PageQueryInterface} from "@/utils/globalInterface";
- import {usePagePlus} from "@/hooks/usePagePlus";
- import {hasPermission} from "@/utils/permissionUtils";
+import {
+ EstimatedReceivableBillI, addEstimatedReceivableBill, delEstimatedReceivableBill, exportEstimatedReceivableBill, getEstimatedReceivableBill, listEstimatedReceivableBill, updateEstimatedReceivableBill,
+ estimatedReceivableBillSettlement, addEstimatedReceivableLog, cancelRelevancy, listEstimatedReceivableBillLog, updateEstimatedReceivableBillNmae
+} from "@/api/cwgl/estimatedReceivableBill";
+import useCurrentInstance from "@/utils/useCurrentInstance";
+import { computed, reactive, ref, toRefs } from "vue";
+import {
+ getSelectCustomNam,
+} from "@/api/cwgl/pendingSettlementBusiness";
+import { PagesInterface, PageQueryInterface } from "@/utils/globalInterface";
+import { usePagePlus } from "@/hooks/usePagePlus";
+import { hasPermission } from "@/utils/permissionUtils";
+import {
+ getPendingSettlementBusiness, listPendingSettlementBusiness
+} from "@/api/cwgl/pendingSettlementBusiness";
+const { proxy } = useCurrentInstance();
+const crudRef = ref();
- const { proxy } = useCurrentInstance();
- const crudRef = ref();
+const permissionList = computed(() => {
+ return {
+ addBtn: hasPermission(["cwgl:estimatedReceivableBill:add"]),
+ delBtn: hasPermission(["cwgl:estimatedReceivableBill:remove"]),
+ editBtn: hasPermission(["cwgl:estimatedReceivableBill:edit"]),
+ viewBtn: hasPermission(["cwgl:estimatedReceivableBill:query"]),
+ }
+})
+const dispIshow = ref(false)
+const data = reactive({
+ form: <EstimatedReceivableBillI>{},
+ queryParams: <EstimatedReceivableBillI & PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList: [],
+ newForm: <EstimatedReceivableI>{
+ pageNum: 1,
+ pageSize: 10
+ },
+ importForm: {},
+ newTableData: [],
+ newFormData: {
+ pageNum: 1,
+ pageSize: 10
+ },
+ itemTableLoading2: false,
+ rules: {
+ settlementAmount: [
+ { required: true, message: '璇疯緭鍏ユ湰娆$粨绠楅噾棰�', trigger: 'blur' }
+ ],
- const permissionList = computed(()=>{
- return {
- addBtn: hasPermission(["cwgl:estimatedReceivableBill:add"]),
- delBtn: hasPermission(["cwgl:estimatedReceivableBill:remove"]),
- editBtn: hasPermission(["cwgl:estimatedReceivableBill:edit"]),
- viewBtn: hasPermission(["cwgl:estimatedReceivableBill:query"]),
- }
- })
+ },
+})
+const { queryParams, form, page, selectionList, newForm, importForm, newTableData, itemTableLoading2, newFormData, rules } = toRefs(data);
+const option = ref({
+ pageKey: 'EstimatedReceivableBill',
+ rowKey: 'id',
- const data = reactive({
- form:<EstimatedReceivableBillI>{},
- queryParams:<EstimatedReceivableBillI&PageQueryInterface>{},
- page: <PagesInterface>{
- pageSize: 10,
- total: 0,
- currentPage: 1,
+ searchSpan: 5,
+ editDisplay: false,
+
+ addBtn: false,
+ editBtn: false,
+ delBtn: false,
+ viewBtn: false,
+
+ searchLabelWidth: 100,
+ labelWidth: 120,
+
+ column: {
+ // id: {
+ // label: 'ID',
+ // },
+ billSystemNo: {
+ label: '璐﹀崟绯荤粺缂栧彿',
+ showOverflowTooltip: true,
+ search: true,
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur"
+ }
+ ],
},
- selectionList:[],
- })
- const {queryParams,form,page,selectionList} = toRefs(data);
- const option = ref({
- pageKey: 'EstimatedReceivableBill',
- rowKey: 'id',
- column: {
- id: {
- label: 'ID',
- },
- billSystemNo: {
- label: '璐﹀崟绯荤粺缂栧彿',
- rules: [
- {
- required: true,
- message: "璐﹀崟绯荤粺缂栧彿涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- billName: {
- label: '璐﹀崟鍚嶇О',
- rules: [
- {
- required: true,
- message: "璐﹀崟鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- customerName: {
- label: '瀹㈡埛鍚嶇О',
- rules: [
- {
- required: true,
- message: "瀹㈡埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- dispatchCount: {
- label: '璋冨害鍗曟暟閲�',
- },
- totalAmount: {
- label: '搴旂粨绠楅噾棰�',
- },
- settledAmount: {
- label: '宸茬粨绠楅噾棰�',
- },
- invoiceStatus: {
- label: '寮�绁ㄧ姸鎬�',
- },
- attachment: {
- label: '闄勪欢鍦板潃',
- type: 'textarea', minRows: 3, maxRows: 5,
- },
- status: {
- label: '鐘舵��',
- },
- remark: {
- label: '澶囨敞',
- type: 'textarea', minRows: 3, maxRows: 5,
- },
- createBy: {
- label: '鍒涘缓浜�',
- },
- confirmTime: {
- label: '纭鏃堕棿',
- },
- createTime: {
- label: '鍒涘缓鏃堕棿',
- },
- updateTime: {
- label: '鏇存柊鏃堕棿',
- },
- deleted: {
- label: '鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)',
- },
- }
- })
+ billName: {
+ label: '璐﹀崟鍚嶇О',
+ minWidth: 200,
+ showOverflowTooltip: true,
+ rules: [
+ {
+ required: true,
+ message: "璐﹀崟鍚嶇О涓嶈兘涓虹┖", trigger: "blur"
+ }
+ ],
+ },
- const { tableData,pageF,rowSave,rowUpdate,rowDel,beforeOpen,searchChange,
- searchReset,selectionChange,onLoad,currentChange,sizeChange,handleDelete,handleExport,handleUpdate,refreshChange} = usePagePlus({
- form:form,
- option:option,
- queryParams:queryParams,
- idKey:'id',
- page:page.value,
- getListApi:listEstimatedReceivableBill,
- getDetailApi:getEstimatedReceivableBill,
- exportApi:exportEstimatedReceivableBill,
- deleteApi:delEstimatedReceivableBill,
- addApi:addEstimatedReceivableBill,
- updateApi:updateEstimatedReceivableBill,
- handleUpdateFunc:()=>{
+ customerName: {
+ label: '瀹㈡埛鍚嶇О',
+ search: true,
+ minWidth: 220,
+ search: true,
+ showOverflowTooltip: true,
+ type: 'select', // 璁剧疆涓轰笅鎷夋绫诲瀷
+ dicData: [], // 浣跨敤 selectCustomName 浣滀负鏁版嵁婧�
+ disabled: false // 鏍规嵁闇�瑕佽缃槸鍚︾鐢�
+ },
+
+ dispatchCount: {
+ label: '璋冨害鍗曟暟閲�',
+ },
+ totalAmount: {
+ label: '搴旂粨绠楅噾棰�',
+ },
+ settledAmount: {
+ label: '宸茬粨绠楅噾棰�',
+ },
+ invoiceStatus: {
+ label: '寮�绁ㄧ姸鎬�',
+ search: true,
+ dataType: 'string',
+ type: 'select',
+ dicUrl: '/system/dict/data/type/sys_ticket_status',
+ },
+ // attachment: {
+ // label: '闄勪欢鍦板潃',
+ // type: 'textarea', minRows: 3, maxRows: 5,
+ // },
+ status: {
+ label: '鐘舵��',
+ search: true,
+ dataType: 'string',
+ type: 'select',
+ dicUrl: '/system/dict/data/type/sys_final_statement_status',
+ },
+ // remark: {
+ // label: '澶囨敞',
+ // type: 'textarea', minRows: 3, maxRows: 5,
+ // },
+ // createBy: {
+ // label: '鍒涘缓浜�',
+ // },
+ // confirmTime: {
+ // label: '纭鏃堕棿',
+ // },
+ // createTime: {
+ // label: '鍒涘缓鏃堕棿',
+ // },
+ // updateTime: {
+ // label: '鏇存柊鏃堕棿',
+ // },
+ // deleted: {
+ // label: '鍒犻櫎鏍囪(0:姝e父;1:鍒犻櫎)',
+ // },
+ }
+})
+
+const newOption = ref({
+ pageKey: 'PendingSettlementBusiness',
+ rowKey: 'id',
+ searchSpan: 5,
+ selectionType: 'single',
+ selectType: 'radio',
+ editDisplay: false,
+ addBtn: false,
+ editBtn: false,
+ selection: false,
+ delBtn: false,
+ menu: false,
+ viewBtn: false,
+ header: false,
+ // searchLabelWidth: 100,
+ // labelWidth: 120,
+ column: {
+ projectName: {
+ label: '椤圭洰鍚嶇О',
+ },
+ dispatchNo: {
+ label: '璋冨害鍗曞彿',
+ },
+ createdTime: {
+ label: '涓嬪崟鏃堕棿',
+ },
+ estimatedTotalIncome: {
+ label: '棰勪及搴旀敹閲戦',
+ },
+ currency: {
+ label: '甯佸埗',
+ },
+ // customerName: {
+ // label: '瀹㈡埛鍚嶇О',
+ // search: true,
+ // },
+
+
+ }
+})
+const { tableData, pageF, rowSave, rowUpdate, rowDel, beforeOpen, searchChange,
+ searchReset, selectionChange, onLoad, currentChange, sizeChange, handleDelete, handleExport, handleUpdate, refreshChange } = usePagePlus({
+ form: form,
+ option: option,
+ queryParams: queryParams,
+ idKey: 'id',
+ page: page.value,
+ getListApi: listEstimatedReceivableBill,
+ getDetailApi: getEstimatedReceivableBill,
+ exportApi: exportEstimatedReceivableBill,
+ deleteApi: delEstimatedReceivableBill,
+ addApi: addEstimatedReceivableBill,
+ updateApi: updateEstimatedReceivableBill,
+ handleUpdateFunc: () => {
crudRef.value.rowEdit(selectionList.value[0]);
},
- handleSelectionChangeFunc:(selection:any)=>{
+ handleSelectionChangeFunc: (selection: any) => {
selectionList.value = selection;
+ },
+
+
+ })
+const dialog = reactive({
+ visible: false,
+ title: '',
+})
+const newTableRef = ref();
+const handleclose = (row) => {
+ newFormData.value.billId = row.id;
+ dispIshow.value = false;
+ newOption.value.menu = false;
+ noIshow.value = true;
+ listPendingSettlementBusiness({ billId: row.id }).then((res) => {
+ if (res.code === 200) {
+ newForm.value.id = row.id;
+ importForm.value = row;
+ dialog.visible = true;
+ newPageF.value.total = res.total || 0;
+ newTableData.value = res.rows || [];
+ newTableData.value.map(item => {
+ item.currency = '浜烘皯甯�';
+ });
+ newTableRef.value.refreshTable();
+ dialog.title = '搴旀敹璐﹀崟缁撶畻';
}
})
+ // crudRef.value.close();
+}
+const handleAmend = (row) => {
+ newFormData.value.billId = row.id;
+ importForm.value.billId = row.id;
+ dispIshow.value = true;
+ newOption.value.menu = true;
+ listPendingSettlementBusiness({ billId: row.id }).then((res) => {
+ if (res.code === 200) {
+ newForm.value.id = row.id;
+ importForm.value = row;
+ dialog.visible = true;
+ newPageF.value.total = res.total || 0;
+ newTableData.value = res.rows || [];
+ newTableData.value.map(item => {
+ item.currency = '浜烘皯甯�';
+ });
+ newTableRef.value.refreshTable();
+ dialog.title = '搴旀敹璐﹀崟淇敼';
+ }
+ })
+}
+const noIshow = ref(false)
+const handleBillSystemNo = (row) => {
+ newFormData.value.billId = row.id;
+ dispIshow.value = false;
+ noIshow.value = false;
+ newOption.value.menu = false;
+ listPendingSettlementBusiness({ billId: row.id }).then((res) => {
+ if (res.code === 200) {
+ importForm.value = row;
+ dialog.visible = true;
+ dialog.title = '璐﹀崟璇︽儏';
+ newPageF.value.total = res.total || 0;
+ newTableData.value = res.rows || [];
+ newTableData.value.map(item => {
+ item.currency = '浜烘皯甯�';
+ });
+ newTableRef.value.refreshTable();
+ }
+ })
+}
+const newFormRef = ref();
+const submitForm = () => {
+ if (newTableData.value.length == 0) {
+ proxy.$message.error('鏃犲叧鑱旀槑缁嗭紝鏃犳硶缁撶畻');
+ return; // 娣诲姞 return 涓柇鎵ц
+ } else {
+ newFormRef.value!.validate(valid => {
+ if (valid) {
+ // 娣诲姞鏍¢獙閫昏緫锛氭湰娆$粨绠楅噾棰濅笉鑳藉ぇ浜庡簲缁撶畻閲戦
+ const settlementAmount = parseFloat(newForm.value.settlementAmount);
+ const totalAmount = parseFloat(importForm.value.totalAmount);
+
+ // 妫�鏌ヨ緭鍏ユ槸鍚︿负鏈夋晥鏁板瓧
+ if (isNaN(settlementAmount) || isNaN(totalAmount)) {
+ proxy.$message.error('閲戦鏍煎紡涓嶆纭�');
+ return;
+ }
+
+ if (settlementAmount > totalAmount) {
+ proxy.$message.error('鏈缁撶畻閲戦涓嶈兘澶т簬搴旂粨绠楅噾棰�');
+ return; // 鍏抽敭锛氬湪杩欓噷娣诲姞 return 涓柇鍚庣画鎵ц
+ }
+
+ let data = {
+ billId: newForm.value.id,
+ fileName: newForm.value.attachment
+ }
+ if (newForm.value.attachment == null || newForm.value.attachment === '' || newForm.value.attachment === undefined) {
+ estimatedReceivableBillSettlement(newForm.value).then((res) => {
+ if (res.code === 200) {
+ onLoad(page.value);
+ proxy.$message.success('鎿嶄綔鎴愬姛');
+ dialog.visible = false;
+ newForm.value = {};
+ }
+ })
+ }else{
+ addEstimatedReceivableLog(data).then((res1) => {
+ if (res1.code === 200) {
+ estimatedReceivableBillSettlement(newForm.value).then((res) => {
+ if (res.code === 200) {
+ onLoad(page.value);
+ proxy.$message.success('鎿嶄綔鎴愬姛');
+ dialog.visible = false;
+ newForm.value = {};
+ }
+ })
+ }
+ })
+ }
+
+
+ } else {
+ // 琛ㄥ崟楠岃瘉澶辫触
+ return false;
+ }
+ });
+ }
+}
+const submitFormTow = () => {
+ proxy.$modal.confirm(`鏄惁纭淇敼璐﹀崟鍚嶇О?`).then(function () {
+ return updateEstimatedReceivableBillNmae(importForm.value);
+ }).then((res) => {
+ onLoad(page.value);
+ proxy.$modal.msgSuccess(res.msg);
+ })
+
+}
+const storagesTransferRef = ref();
+const cancel = () => {
+ newForm.value = {};
+ dialog.visible = false;
+ proxy.resetForm(storagesTransferRef.value)
+}
+
+
+const newPageF = ref<PagesInterface>({
+ total: 0,
+ pageSize: 10
+})
+
+const newSearchChange = (params, done) => {
+ // itemTableLoading2.value = true;
+ // listPendingSettlementBusiness(newForm.value).then((res) => {
+ // if (res.code === 200) {
+ // done()
+ // newTableData.value = res.rows || [];
+ // newPageF.value.total = res.total || 0;
+ // }
+ // itemTableLoading2.value = false;
+ // })
+}
+const newRsetChange = (done) => {
+ getEstimatedReceivableCancel()
+}
+// 澶勭悊闄勪欢鍒嗛〉椤电爜鍙樺寲
+const handleAttachmentCurrentChange = (currentPage: number) => {
+ newFormData.value.pageNum = currentPage;
+ getEstimatedReceivableCancel();
+}
+// 澶勭悊闄勪欢鍒嗛〉澶у皬鍙樺寲
+const handleAttachmentSizeChange = (pageSize: number) => {
+ newFormData.value.pageSize = pageSize;
+ getEstimatedReceivableCancel();
+}
+const newOnLoad = (newPageF) => {
+ getEstimatedReceivableCancel(newPageF);
+}
+const getEstimatedReceivableCancel = () => {
+ itemTableLoading2.value = true;
+ listPendingSettlementBusiness(newFormData.value).then((res) => {
+ if (res.code === 200) {
+ newTableData.value = res.rows || [];
+ newTableData.value.map(item => {
+ item.currency = '浜烘皯甯�';
+ });
+ newTableRef.value.refreshTable();
+ newPageF.value.total = res.total || 0;
+ }
+ itemTableLoading2.value = false;
+ })
+}
+
+const handleRelevance = (row) => {
+ proxy.$modal.confirm(`鏄惁鍙栨秷鍏宠仈鎴愬姛璇ヨ皟搴﹀彿 锛�${row.dispatchNo}?`).then(function () {
+ return cancelRelevancy(row.id);
+ }).then((res) => {
+ newOnLoad(newPageF.value);
+ proxy.$modal.msgSuccess(res.msg);
+ })
+
+}
+
+const flowLogIshow = ref()
+const flowParams = ref([])
+const handleFlow = (row: string) => {
+ let data = {
+ billId: row.id,
+ }
+ listEstimatedReceivableBillLog(data).then((res) => {
+ flowParams.value = res.rows
+ flowLogIshow.value.openModel()
+
+ })
+}
+
+const selectCustomName = ref([]);
+const getSelectCustomName = () => {
+ getSelectCustomNam().then((res) => {
+ if (res.code === 200) {
+ // selectCustomName.value = res.data;
+ selectCustomName.value = res.data.map(item => ({
+ dictLabel: item,
+ dictValue: item
+ }));
+ option.value.column.customerName.dicData = selectCustomName.value || [];
+ }
+ })
+}
+getSelectCustomName()
</script>
+<style scoped>
+::v-deep .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell {
+ border: var(--el-descriptions-table-border);
+ padding: 8px 11px;
+ width: 200px;
+}
+:deep(.avue-crud__table) {
+ overflow-y: auto;
+}
+
+:deep(.el-scrollbar__bar.is-horizontal) {
+ pointer-events: auto;
+}
+</style>
--
Gitblit v1.8.0