Browse Source

指定阶段金额回显

master
gjh 2 days ago
parent
commit
c3ac4c072e
  1. 20
      src/views/ProcessApprovalSubPage/planFileApproval.vue
  2. 19
      src/views/projectLib/projectContract/ContractPay.vue
  3. 75
      src/views/projectLib/projectContract/projectContract.data.ts
  4. 21
      src/views/projectLib/projectPlan/addPlanFile.vue
  5. 10
      src/views/projectLib/projectPlan/planinfoFileDetail.vue

20
src/views/ProcessApprovalSubPage/planFileApproval.vue

@ -15,7 +15,7 @@
:isEdit="false"
:isJiHua="true"
v-if="pjid"
ref="contractRef"
ref="contractRef1"
/>
<el-divider content-position="left">实际金额</el-divider>
</div>
@ -221,13 +221,6 @@
disabled: true,
wrapperCol: { style: { width: 'auto' } },
});
const [registerContractMoneyFormShow, { setFieldsValue: setContractMoneyFieldsValueShow }] =
useForm({
schemas: ContractMoneyFormSchemas,
showActionButtonGroup: false,
disabled: true,
wrapperCol: { style: { width: 'auto' } },
});
let dataTo = defineProps(['record']);
const emit = defineEmits(['close']);
console.log('routerouterouteroute', dataTo.record);
@ -315,14 +308,6 @@
});
if (contract.realList != null && contract.realList.length > 0) {
showMoneyForm.value = true;
setContractMoneyFieldsValueShow({
contractTotalMoney: contract.planList[0].totalMoney,
contractCentralMoney: contract.planList[0].centralMoney,
contractProvincialMoney: contract.planList[0].provincialMoney,
contractCityMoney: contract.planList[0].cityMoney,
contractCountyMoney: contract.planList[0].countyMoney,
contractSelfMoney: contract.planList[0].selfMoney,
});
setContractMoneyProps({ disabled: resButton.isEdit == true ? false : true });
}
},
@ -513,6 +498,9 @@
}
let fromdate = await contractRef.value.getFieldsValuetoRef();
params.append('contractinfoList', JSON.stringify(fromdate));
}else if(showMoneyForm.value){
let fromdate = await contractRef.value.getFieldsValuetoRef();
params.append('contractinfoList', JSON.stringify(fromdate));
}
if (resButton.isEdit) {
if (fileList.length == 0) {

19
src/views/projectLib/projectContract/ContractPay.vue

@ -3,8 +3,9 @@
<!-- <BasicModal v-bind="$attrs" @register="registerModal" title="项目合同信息详情" width="1500px" :showOkBtn="false"
:showCancelBtn="false"> -->
<el-divider content-position="left">合同信息</el-divider>
<BasicForm @register="registerContractForm" />
<el-button type="primary" @click="addFrom">
<BasicForm @register="registerContractForm"/>
<div v-if="data.isEdit">
<el-button type="primary" @click="addFrom">
<template #icon>
<PlusCircleOutlined />
</template>
@ -15,6 +16,8 @@
</template>
</el-button>
</div>
<!-- </BasicModal> -->
</template>
<script lang="ts" name="addAndModify" setup>
@ -174,14 +177,14 @@
tempSchemas = cloneDeep(contractformSchemas) as Array<FormSchema>;
tempSchemas.forEach((item) => {
if (item.field.indexOf('Money') != -1) {
item.dynamicRules = aaa;
// item.dynamicRules = aaa;
item.componentProps = bbb;
}
if (item.field == 'taskName') {
item.componentProps.options = taskNameTypeDict.value;
console.log('item.componentProps.options', item.componentProps.options,data.taskName);
if (data.taskName != '合同签订') {
item.dynamicDisabled = true;
// item.dynamicDisabled = true;
item.defaultValue = data.taskName;
}
}
@ -220,7 +223,7 @@
contractformSchemas.forEach((item) => {
let tempitem = cloneDeep(item);
if (tempitem.field.indexOf('Money') != -1) {
tempitem.dynamicRules = aaa;
// tempitem.dynamicRules = aaa;
tempitem.componentProps = bbb;
}
if (tempitem.field == 'payDate') {
@ -229,7 +232,7 @@
if (tempitem.field == 'taskName') {
tempitem.componentProps.options = taskNameTypeDict.value;
if (data.taskName != '合同签订') {
tempitem.dynamicDisabled = true;
// tempitem.dynamicDisabled = true;
tempitem.defaultValue = data.taskName;
}
}
@ -296,7 +299,7 @@
contractformSchemas.forEach((item) => {
let tempitem = cloneDeep(item);
if (tempitem.field.indexOf('Money') != -1) {
tempitem.dynamicRules = aaa;
// tempitem.dynamicRules = aaa;
tempitem.componentProps = bbb;
}
if (tempitem.field == 'payDate') {
@ -305,7 +308,7 @@
if (tempitem.field == 'taskName') {
tempitem.componentProps.options = taskNameTypeDict.value;
if (data.taskName != '合同签订') {
tempitem.dynamicDisabled = true;
// tempitem.dynamicDisabled = true;
tempitem.defaultValue = data.taskName;
}
}

75
src/views/projectLib/projectContract/projectContract.data.ts

@ -298,44 +298,43 @@ export const contractformSchemas: FormSchema[] = [
componentProps: {
options: [{label:"首付支付",value:"首付支付"}],
},
dynamicRules: ({ values }) => {
console.log('values:', values);//表单所有值
//需要return
return [
{
//默认开启表单检验
required: true,
// value 当前手机号输入的值
validator: (formSchemas, value) => {
console.log("______", formSchemas, value);
//需要return 一个Promise对象
return new Promise((resolve, reject) => {
isExitTaskNameInPlanInfo({ projectid: values.id, taskName: value }).then
(res => {
if (!res) {
console.log("当前项目的计划中没有这个阶段");
reject("当前项目的计划中没有这个阶段");
}
Object.keys(values).forEach(key => {
//判断是否taskName字段的名称是否重复
if (key != formSchemas.field && key.includes("taskName")) {
if (values[key] == value) {
reject("属性值重复");
}
}
})
if (!value) {
reject(`此项不能未空`);
} else {
resolve();
}
})
});
},
},
];
},
// dynamicRules: ({ values }) => {
// console.log('values:', values);//表单所有值
// //需要return
// return [
// {
// //默认开启表单检验
// required: true,
// // value 当前手机号输入的值
// validator: (formSchemas, value) => {
// console.log("______", formSchemas, value);
// //需要return 一个Promise对象
// return new Promise((resolve, reject) => {
// isExitTaskNameInPlanInfo({ projectid: values.id, taskName: value }).then
// (res => {
// if (!res) {
// console.log("当前项目的计划中没有这个阶段");
// reject("当前项目的计划中没有这个阶段");
// }
// Object.keys(values).forEach(key => {
// //判断是否taskName字段的名称是否重复
// if (key != formSchemas.field && key.includes("taskName")) {
// if (values[key] == value) {
// reject("属性值重复");
// }
// }
// })
// if (!value) {
// reject(`此项不能未空`);
// } else {
// resolve();
// }
// })
// });
// },
// },
// ];
// },
required: true,
colProps: { span: 6,},
helpMessage: '需与项目计划的阶段名称所匹配',

21
src/views/projectLib/projectPlan/addPlanFile.vue

@ -185,13 +185,6 @@
// labelCol: { style: { width: '120px' } },
wrapperCol: { style: { width: 'auto' } },
});
const [registerContractMoneyFormShow, { setFieldsValue: setContractMoneyFieldsValueShow }] =
useForm({
schemas: ContractMoneyFormSchemas,
showActionButtonGroup: false,
disabled: true,
wrapperCol: { style: { width: 'auto' } },
});
let fileList = reactive<Array<any>>([]);
let projectId = ref('');
let contractRef = ref();
@ -228,14 +221,6 @@
});
if (contract.planList != null && contract.planList.length > 0) {
showMoneyForm.value = true;
setContractMoneyFieldsValueShow({
contractTotalMoney: contract.planList[0].totalMoney,
contractCentralMoney: contract.planList[0].centralMoney,
contractProvincialMoney: contract.planList[0].provincialMoney,
contractCityMoney: contract.planList[0].cityMoney,
contractCountyMoney: contract.planList[0].countyMoney,
contractSelfMoney: contract.planList[0].selfMoney,
});
}
});
@ -369,11 +354,15 @@
return;
}
//
if (dataTo.taskName == '合同签订' || showMoneyForm.value) {
if (dataTo.taskName == '合同签订') {
let fromdate = await contractRef.value.getFieldsValuetoRef();
params.append('contractinfoList', JSON.stringify(fromdate));
}
}
else if(showMoneyForm.value){
let fromdate = await contractRef.value.getFieldsValuetoRef();
params.append('contractinfoList', JSON.stringify(fromdate));
}
// paramsData
fileList.forEach((x) => {
console.log('xxxxxxxxxx', x, x.file);

10
src/views/projectLib/projectPlan/planinfoFileDetail.vue

@ -30,6 +30,7 @@
:taskName="taskName"
:isModify="false"
:isEdit="false"
:isJiHua="true"
v-if="projectId"
/>
</div>
@ -150,6 +151,15 @@
let res = await queryProjectInfoById(param);
setMoneyFieldsValue(res);
}
let contract = await getContractinfoByTaskName({
taskName: taskName.value,
projectId: data.projectid,
});
if (contract.realList != null && contract.realList.length > 0) {
showMoneyForm.value = true;
setContractMoneyProps({ disabled: resButton.isEdit == true ? false : true });
}
}
</script>
<style></style>

Loading…
Cancel
Save