This commit is contained in:
‘huanghaiixia’
2026-03-03 13:33:49 +08:00
parent 55ec9f537b
commit fd985c6d2a
7 changed files with 184 additions and 20 deletions

View File

@ -14,11 +14,6 @@
<a-input v-model:value="formState.kName" placeholder="请输入合同名称" :disabled="isDisable"/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="合同主体" name="comName">
<a-input v-model:value="formState.comName" disabled />
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="合同期限" name="kPeriod">
<a-select v-model:value="formState.kPeriod" :disabled="isDisable" placeholder="请选择合同期限" @change="kPeriodChange" style="width: 100%" allow-clear>
@ -53,6 +48,11 @@
<a-input-search v-model:value="formState.bDeptName" disabled placeholder="请选择业务部门" readonly @search="onSearch"/>
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="合同主体" name="comName">
<a-input v-model:value="formState.comName" disabled />
</a-form-item>
</a-col>
<a-col :span="8">
<a-form-item label="币种" name="curCode">
<a-select v-model:value="formState.curCode" :disabled="isDisable" placeholder="请选择币种" style="width: 100%" allow-clear>
@ -82,7 +82,7 @@
<a-row>
<a-col :span="8">
<a-form-item label="接收站" name="staName">
<a-input-search v-model:value="formState.lngContractProcList[0].staName" :disabled="isDisable" placeholder="请选择接收站" readonly @search="onSearchDownLoad('up', index)"/>
<a-input-search v-model:value="formState.staName" :disabled="isDisable" placeholder="请选择接收站" readonly @search="onSearchDownLoad('up', index)"/>
</a-form-item>
</a-col>
<a-col :span="24">
@ -221,6 +221,7 @@
import { getDictionary } from '/@/api/sales/Customer';
import { useModal } from '/@/components/Modal';
import { addLngContract,updateLngContract, getLngContract,getParameter } from '/@/api/contract/ContractProc';
import { getLngContractFact } from '/@/api/contract/ContractFact';
import { getLngAppro,getCompDept } from '/@/api/approve/Appro';
import dayjs from 'dayjs';
import { h } from 'vue';
@ -289,7 +290,8 @@
empName: [{ required: true, message: "该项为必填项", trigger: 'change' }],
bDeptName: [{ required: false, message: "该项为必填项", trigger: 'change' }],
dateTo:[{ required: true, message: "该项为必填项", trigger: 'change' }],
dateFrom:[{ required: true, message: "该项为必填项", trigger: 'change' }]
dateFrom:[{ required: true, message: "该项为必填项", trigger: 'change' }],
staName:[{ required: true, message: "该项为必填项", trigger: 'change' }],
});
const layout = {
labelCol: { span: 8 },
@ -404,6 +406,7 @@
Object.assign(dataListPrice.value, formState.lngPriceProcList || [])
formState.dateFrom = formState.dateFrom ? dayjs(formState.dateFrom) : null
formState.dateTo = formState.dateTo ? dayjs(formState.dateTo) : null
formState.staName = formState.lngContractProcList[0]?.staName
dataListPrice.value.forEach(v =>{
v.dateFromNew = v.dateFrom ? dayjs(v.dateFrom) : null
v.dateToF = v.dateToF ? dayjs(v.dateToF) : null
@ -423,7 +426,9 @@
dataListAppro.value.forEach(v => {
// v.approId = v.id
})
dataListContractFact.value.forEach(v => {
v.kFactId = v.id
})
} catch (error) {
spinning.value = false
}
@ -538,11 +543,14 @@
formState.cpName = val[0].suName
}
const handleSuccessContractFact = (val) => {
val.forEach(v => {
val.forEach((v, idx) => {
v.kFactId = v.id
v.sort = idx
v.id = null
})
if (!dataListContractFact.value.length) {
dataListContractFact.value = val
getContractFact()
return
}
let arr = []
@ -556,10 +564,31 @@
})
})
dataListContractFact.value = unique([...dataListContractFact.value, ...arr], 'kNo')
getContractFact()
}
const getContractFact = async () => {
let a = []
dataListContractFact.value.forEach(v=>{
if (v.relTypeCode == 'M') {
a.push(v)
}
})
if(a.length == 1) {
const res = await getLngContractFact(a[0].kFactId)
formState.kNo = formState.kNo ? formState.kNo : res?.kNo
formState.kName = formState.kName ? formState.kName : res?.kName
formState.kPeriod = formState.kPeriod ? formState.kPeriod : res?.periodTypeCode
formState.curCode = formState.curCode ? formState.curCode : res?.curCode
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.cpName = formState.cpName ? formState.cpName : (res?.lngContractFactCpList || [])[0]?.cpName
formState.cpCode = formState.cpCode ? formState.cpCode : (res?.lngContractFactCpList || [])[0]?.cpCode
}
}
const handleSuccessDownLoad = (val) => {
formState.lngContractProcList[0].staCode = val[0].code
formState.lngContractProcList[0].staName = val[0].fullName
formState.staName = val[0].fullName
}
function unique(arr, u_key) {
@ -591,7 +620,7 @@
dataListPrice.value[k].dateToF = dataListPrice.value[k].dateToF ? dayjs(dataListPrice.value[k].dateToF).format('YYYY-MM-DD HH:mm:ss') : null
dataListPrice.value[k].dateToY = dataListPrice.value[k].dateToY ? dayjs(dataListPrice.value[k].dateToY).format('MM-DD') : null
dataListPrice.value[k].comCode = formState.comId
dataListPrice.value[k].comId = formState.comId
dataListPrice.value[k].suCode = formState.cpCode
dataListPrice.value[k].staCode = formState.lngContractProcList[0].staCode
let arr = dataListPrice.value[k].lngPriceProcDtlList || []