关联主合同优化

This commit is contained in:
‘huanghaiixia’
2026-03-11 13:47:57 +08:00
parent 68e301ca25
commit 4f9a410c5c
12 changed files with 124 additions and 199 deletions

View File

@ -12,8 +12,19 @@ enum Api {
queryAllCurrency ='/magic-api/mdm/queryAllCurrency', queryAllCurrency ='/magic-api/mdm/queryAllCurrency',
queryAllUser ='/magic-api/mdm/queryAllUser', queryAllUser ='/magic-api/mdm/queryAllUser',
queryBankByCode ='/magic-api/sales/queryBankByCode', queryBankByCode ='/magic-api/sales/queryBankByCode',
PageModal ='/magic-api/contract/lngContractFact/page/modal' PageModal ='/magic-api/contract/lngContractFact/page/modal',
MainContractById = '/magic-api/contract/getMainContractById',
}
export async function getMainContractById(id: String,bizType: String, mode: ErrorMessageMode = 'modal') {
return defHttp.get<LngContractFactPageModel>(
{
url: Api.MainContractById,
params: { id,bizType },
},
{
errorMessageMode: mode,
},
);
} }
export async function getLngContractFactPageModal(params: LngContractFactPageParams, mode: ErrorMessageMode = 'modal') { export async function getLngContractFactPageModal(params: LngContractFactPageParams, mode: ErrorMessageMode = 'modal') {
return defHttp.get<LngContractFactPageResult>( return defHttp.get<LngContractFactPageResult>(

View File

@ -221,7 +221,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract,getParameter } from '/@/api/contract/ContractProc'; import { addLngContract,updateLngContract, getLngContract,getParameter } from '/@/api/contract/ContractProc';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { h } from 'vue'; import { h } from 'vue';
@ -577,10 +577,10 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'S')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
@ -588,19 +588,8 @@
formState.curCode = formState.curCode ? formState.curCode : res?.curCode formState.curCode = formState.curCode ? formState.curCode : res?.curCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSupplier[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSupplier[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -285,7 +285,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract, getAllPriceTerm} from '/@/api/contract/ContractPurInt'; import { addLngContract,updateLngContract, getLngContract, getAllPriceTerm} from '/@/api/contract/ContractPurInt';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getAllCurrency } from '/@/api/contract/ContractFact'; import { getAllCurrency } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
@ -631,10 +631,10 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'S')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
@ -642,19 +642,8 @@
formState.curCode = formState.curCode ? formState.curCode : res?.curCode formState.curCode = formState.curCode ? formState.curCode : res?.curCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSupplier[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSupplier[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -127,7 +127,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract} from '/@/api/contract/ContractPurLng'; import { addLngContract,updateLngContract, getLngContract} from '/@/api/contract/ContractPurLng';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getAllCurrency } from '/@/api/contract/ContractFact'; import { getAllCurrency } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
@ -394,10 +394,10 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'S')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
@ -405,19 +405,8 @@
formState.curCode = formState.curCode ? formState.curCode : res?.curCode formState.curCode = formState.curCode ? formState.curCode : res?.curCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSupplier[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSupplier[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -187,7 +187,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract } from '/@/api/contract/ContractPurPng'; import { addLngContract,updateLngContract, getLngContract } from '/@/api/contract/ContractPurPng';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { h } from 'vue'; import { h } from 'vue';
@ -526,29 +526,18 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].id || a[0].idNew) const res = await getMainContractById(a[0].id || a[0].idNew, 'S')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSupplier[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSupplier[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -189,7 +189,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract, getTransList, getPurList } from '/@/api/contract/ContractSales'; import { addLngContract,updateLngContract, getLngContract, getTransList, getPurList } from '/@/api/contract/ContractSales';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { getAppEnvConfig } from '/@/utils/env'; import { getAppEnvConfig } from '/@/utils/env';
@ -557,29 +557,18 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'C')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSales[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSales[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -286,7 +286,7 @@
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import {getAllPriceTerm} from '/@/api/contract/ContractPurInt'; import {getAllPriceTerm} from '/@/api/contract/ContractPurInt';
import { addLngContract,updateLngContract, getLngContract} from '/@/api/contract/ContractSalesInt'; import { addLngContract,updateLngContract, getLngContract} from '/@/api/contract/ContractSalesInt';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getAllCurrency } from '/@/api/contract/ContractFact'; import { getAllCurrency } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
@ -633,10 +633,10 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'C')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
@ -644,19 +644,8 @@
formState.curCode = formState.curCode ? formState.curCode : res?.curCode formState.curCode = formState.curCode ? formState.curCode : res?.curCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSales[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSales[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -164,7 +164,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract, getTransList, getPurList } from '/@/api/contract/ContractSalesLng'; import { addLngContract,updateLngContract, getLngContract, getTransList, getPurList } from '/@/api/contract/ContractSalesLng';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { getAppEnvConfig } from '/@/utils/env'; import { getAppEnvConfig } from '/@/utils/env';
@ -482,29 +482,18 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].id || a[0].idNew) const res = await getMainContractById(a[0].id || a[0].idNew, 'C')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSales[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSales[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -225,7 +225,7 @@
import { getDictionary } from '/@/api/sales/Customer'; import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal'; import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract } from '/@/api/contract/ContractTransPng'; import { addLngContract,updateLngContract, getLngContract } from '/@/api/contract/ContractTransPng';
import { getLngContractFact } from '/@/api/contract/ContractFact'; import { getMainContractById } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro'; import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { h } from 'vue'; import { h } from 'vue';
@ -595,10 +595,10 @@
a.push(v) a.push(v)
} }
}) })
if(a.length == 1) { if(a.length >= 1) {
spinning.value = true spinning.value = true
try { try {
const res = await getLngContractFact(a[0].kFactId) const res = await getMainContractById(a[0].kFactId, 'S')
spinning.value = false spinning.value = false
formState.kNo = formState.kNo ? formState.kNo : res?.kNo formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName formState.kName = formState.kName ? formState.kName : res?.kName
@ -606,19 +606,8 @@
formState.curCode = formState.curCode ? formState.curCode : res?.curCode formState.curCode = formState.curCode ? formState.curCode : res?.curCode
formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null) formState.dateFrom = formState.dateFrom ? formState.dateFrom : (res?.dateFrom ? dayjs(res?.dateFrom) : null)
formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null) formState.dateTo = formState.dateTo ? formState.dateTo : (res?.dateTo ? dayjs(res?.dateTo) : null)
let arr = res?.lngContractFactCpList || [] formState.cpName = formState.cpName ? formState.cpName : res?.cpName
let arrSales = [] formState.cpCode = formState.cpCode ? formState.cpCode : res?.cpCode
let arrSupplier = []
arr.forEach(v=> {
if (v.cpTableName == 'lng_customer') {
arrSales.push(v)
}
if (v.cpTableName == 'lng_supplier') {
arrSupplier.push(v)
}
})
formState.cpName = formState.cpName ? formState.cpName : arrSupplier[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : arrSupplier[0]?.cpCode
} catch (error) { } catch (error) {
spinning.value = false spinning.value = false

View File

@ -1,44 +1,38 @@
<template> <template>
<a-spin :spinning="spinning" tip="加载中..."> <BasicModal v-bind="$attrs" @register="registerModal" width="85%" :title="getTitle" @ok="handleSubmit" @visible-change="handleVisibleChange">
<div class="page-bg-wrap formViewStyle pdcss"> <a-spin :spinning="spinning" tip="加载中...">
<div class="top-toolbar"> <searchForm @search="onSearch" @reset="onReset" ></searchForm>
<a-button style="margin-right: 10px" @click="close"> <BasicTable @register="registerTable" v-if="showTable">
<slot name="icon"><close-outlined /></slot>取消 <template #bodyCell="{ column, record }">
</a-button> <template v-if="column.dataIndex === 'qtySalesGj'">
<a-button style="margin-right: 10px" type="primary" @click="checkBtn"> {{ Number.format(Number.parse(record.qtySalesGj),numFormat) }}
<slot name="icon"><save-outlined /></slot>保存 </template>
</a-button> <template v-if="column.dataIndex === 'qtyMeaGj'">
</div> {{ Number.format(Number.parse(record.qtyMeaGj || 0),numFormat) }}
<searchForm @search="onSearch" @reset="onReset" ></searchForm> </template>
<BasicTable @register="registerTable"> <template v-if="column.dataIndex === 'qtySalesM3'">
<template #bodyCell="{ column, record }"> {{ Number.format(Number.parse(NP.divide(Number(record.qtySalesM3), 10000)),numFormat) }}
<template v-if="column.dataIndex === 'qtySalesGj'"> </template>
{{ Number.format(Number.parse(record.qtySalesGj),numFormat) }} <template v-if="column.dataIndex === 'qtyMeaM3'">
{{ Number.format(Number.parse(NP.divide(Number(record.qtyMeaM3), 10000)),numFormat) }}
</template>
</template> </template>
<template v-if="column.dataIndex === 'qtyMeaGj'"> </BasicTable>
{{ Number.format(Number.parse(record.qtyMeaGj || 0),numFormat) }}
</template> </a-spin>
<template v-if="column.dataIndex === 'qtySalesM3'"> </BasicModal>
{{ Number.format(Number.parse(NP.divide(Number(record.qtySalesM3), 10000)),numFormat) }}
</template>
<template v-if="column.dataIndex === 'qtyMeaM3'">
{{ Number.format(Number.parse(NP.divide(Number(record.qtyMeaM3), 10000)),numFormat) }}
</template>
</template>
</BasicTable>
</div>
</a-spin>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { ref, computed, onMounted, onBeforeMount, nextTick, defineAsyncComponent, reactive, defineComponent, watch} from 'vue'; import { ref, computed, unref, nextTick } from 'vue';
import { SaveOutlined, } from '@ant-design/icons-vue'; import { SaveOutlined, } from '@ant-design/icons-vue';
import { useMessage } from '/@/hooks/web/useMessage'; import { useMessage } from '/@/hooks/web/useMessage';
import { useI18n } from '/@/hooks/web/useI18n'; import { useI18n } from '/@/hooks/web/useI18n';
import { useMultipleTabStore } from '/@/store/modules/multipleTab'; import { useMultipleTabStore } from '/@/store/modules/multipleTab';
import useEventBus from '/@/hooks/event/useEventBus'; import useEventBus from '/@/hooks/event/useEventBus';
import { useModal } from '/@/components/Modal'; import { BasicModal, useModalInner, useModal } from '/@/components/Modal';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import { useUserStore } from '/@/store/modules/user'; import { useUserStore } from '/@/store/modules/user';
@ -60,17 +54,19 @@
const spinning = ref(false); const spinning = ref(false);
const { t } = useI18n(); const { t } = useI18n();
const formState = ref({}); const formState = ref({});
const [register, { openModal:openModal}] = useModal(); const isUpdate = ref(true);
const showTable = ref(false)
onMounted(() => { const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
showTable.value = true
setModalProps({ confirmLoading: false });
setPagination({'limit': 1,'size': 10,'page': 1});
isUpdate.value = !!data?.isUpdate;
}); });
const emit = defineEmits(['success', 'register']); const emit = defineEmits(['success', 'register']);
const { notification } = useMessage(); const { notification } = useMessage();
const selectedKeys = ref<string[]>([]); const selectedKeys = ref<string[]>([]);
const selectedValues = ref([]); const selectedValues = ref([]);
const [registerTable, { reload }] = useTable({ const [registerTable, { reload,setPagination }] = useTable({
title: t('管道气计量新增列表'), title: t('管道气计量新增列表'),
api: getLngPngMeasureSalesPurPageAdd, api: getLngPngMeasureSalesPurPageAdd,
columns: columns, columns: columns,
@ -83,15 +79,28 @@
showResetButton: false, showResetButton: false,
showSubmitButton: false showSubmitButton: false
}, },
immediate: true, immediate: false,
beforeFetch: (params) => { beforeFetch: (params) => {
return { ...params,...formState.value}; return { ...params,...formState.value,page:params.limit};
}, },
rowSelection: { rowSelection: {
type: 'checkbox', type: 'checkbox',
onChange: onSelectChange onChange: onSelectChange
}, },
}); });
const getTitle = computed(() => (!unref(isUpdate) ? t('管道气计量新增列表') : t('')));
const handleVisibleChange = async (visible: boolean) => {
if (visible) {
showTable.value = false
await nextTick();
await nextTick();
await nextTick();
nextTick(() => {
reload({searchInfo:{'limit':1,'size':10,'page':1}});
});
}
};
function onSelectChange(rowKeys: string[], e) { function onSelectChange(rowKeys: string[], e) {
selectedKeys.value = rowKeys; selectedKeys.value = rowKeys;
selectedValues.value = e selectedValues.value = e
@ -107,7 +116,7 @@
function close() { function close() {
tabStore.closeTab(currentRoute.value, router); tabStore.closeTab(currentRoute.value, router);
} }
async function checkBtn() { async function handleSubmit() {
if (!selectedValues.value.length) { if (!selectedValues.value.length) {
message.warn('请选择数据') message.warn('请选择数据')
return return
@ -121,10 +130,8 @@
message: 'Tip', message: 'Tip',
description: '保存成功' description: '保存成功'
}); });
setTimeout(() => { closeModal();
bus.emit(FORM_LIST_MODIFIED, {}); emit('success', selectedValues.value);
close();
}, 500);
}catch (errorInfo) { }catch (errorInfo) {
spinning.value = false; spinning.value = false;
} }
@ -133,18 +140,6 @@
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.page-bg-wrap {
background-color: #fff;
}
.top-toolbar {
min-height: 44px;
margin-bottom: 12px;
border-bottom: 1px solid #eee;
}
.pdcss {
padding:0px 12px 6px 12px !important;
}
:deep(.ant-table-title) { :deep(.ant-table-title) {
display: none !important; display: none !important;
} }

View File

@ -3,7 +3,7 @@
<a-row> <a-row>
<a-col :span="6"> <a-col :span="6">
<a-form-item label="计量日期" name="dateMea" > <a-form-item label="计量日期" name="dateMea" >
<a-range-picker v-model:value="formState.dateMea" /> <RangePicker v-model:value="formState.dateMea" />
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="7"> <a-col :span="7">
@ -61,6 +61,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { RangePicker } from '/@/components/RangePicker';
import { ref, computed, onMounted, onBeforeMount, nextTick, defineAsyncComponent, reactive, defineComponent, watch} from 'vue'; import { ref, computed, onMounted, onBeforeMount, nextTick, defineAsyncComponent, reactive, defineComponent, watch} from 'vue';
import { useMessage } from '/@/hooks/web/useMessage'; import { useMessage } from '/@/hooks/web/useMessage';
import { useI18n } from '/@/hooks/web/useI18n'; import { useI18n } from '/@/hooks/web/useI18n';

View File

@ -54,6 +54,7 @@
</BasicTable> </BasicTable>
<PngMeasureSalesPurModal @register="registerModal" @success="handleSuccess" /> <PngMeasureSalesPurModal @register="registerModal" @success="handleSuccess" />
<createFormModal @register="registerModalForm" @success="handleSuccessForm"/>
<ImportModal @register="registerImportModal" importUrl="/dayPlan/pngMeasureSalesPur/import" @success="handleImportSuccess"/> <ImportModal @register="registerImportModal" importUrl="/dayPlan/pngMeasureSalesPur/import" @success="handleImportSuccess"/>
<DataLog :logId="logId" :logPath="logPath" v-model:visible="modalVisible"/> <DataLog :logId="logId" :logPath="logPath" v-model:visible="modalVisible"/>
@ -93,6 +94,7 @@
import { DeleteOutlined } from '@ant-design/icons-vue'; import { DeleteOutlined } from '@ant-design/icons-vue';
import searchForm from './components/searchForm.vue' import searchForm from './components/searchForm.vue'
import NP from 'number-precision'; import NP from 'number-precision';
import createFormModal from './components/createForm.vue'
const { bus, CREATE_FLOW, FLOW_PROCESSED, FORM_LIST_MODIFIED } = useEventBus(); const { bus, CREATE_FLOW, FLOW_PROCESSED, FORM_LIST_MODIFIED } = useEventBus();
const numFormat = "###,###,###,###,###,###.000" const numFormat = "###,###,###,###,###,###.000"
@ -160,6 +162,7 @@
const curIdx = ref() const curIdx = ref()
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerModalForm, { openModal: openModalForm }] = useModal();
const [registerImportModal, { openModal: openImportModal }] = useModal(); const [registerImportModal, { openModal: openImportModal }] = useModal();
const tableId = ''; const tableId = '';
const tableName = 'PngMeasureSalesPur'; const tableName = 'PngMeasureSalesPur';
@ -218,21 +221,24 @@
downloadByUrl({ url, fileName: fileName}); downloadByUrl({ url, fileName: fileName});
}; };
const numChange = (record, index) => { const numChange = (record, index) => {
record.rateM3Gj = Number(record.qtyMeaGj) ? (Number(record.qtyMeaM3) || 0 ) / Number(record.qtyMeaGj) : '0' record.rateM3Gj = Number(record.qtyMeaGj) ? (Number(record.qtyMeaM3) || 0 ) / Number(record.qtyMeaGj) : 0
record.rateM3Gj = record.rateM3Gj.toFixed(6) record.rateM3Gj = record.rateM3Gj ? Number(record.rateM3Gj).toFixed(6) : 0
tableData.value[index] = record tableData.value[index] = record
} }
const handleSuccessForm = (val) => {
handleSuccess()
}
function handleAdd() { function handleAdd() {
openModalForm(true,{isUpdate: false});
router.push({ // router.push({
path: '/dayPlan/PngMeasureSalesPur/createForm', // path: '/dayPlan/PngMeasureSalesPur/createForm',
query: { // query: {
formPath: 'dayPlan/PngMeasureSalesPur', // formPath: 'dayPlan/PngMeasureSalesPur',
formName: "新建"+formName, // formName: "新建"+formName,
formId:currentRoute.value.meta.formId, // formId:currentRoute.value.meta.formId,
type:'add' // type:'add'
} // }
}); // });
} }
async function handleReject() { async function handleReject() {