Commit f0bf0f85 authored by 高滢's avatar 高滢

feat(结算): 带入投资

parent 79d1f122
......@@ -66,36 +66,32 @@ import {operateType,addItemApi,addItemData} from "@/api/operations/operations"
//历史记录
import Operations from "@/components/Operations/Operations.vue"
//历史记录是否可查
const historyData= ref(true)
//标题
import { router } from '@/router';
const getTitle = ref('');
import { unref, computed, onMounted, ref, reactive } from 'vue';
import projectlibraryModel from '@/components/ContractModel/Contract.vue';
import { useRoute } from 'vue-router';
import { PageWrapper } from '@/components/Page';
import PageCard from '@/components/Page/src/PageCard.vue';
import contractDrawer from '@/views/contract/contractDrawer.vue';
import CollapseContainer from '@/components/Container/src/collapse/CollapseContainer.vue';
import { BasicForm, useForm, FormProps, UseFormReturnType } from '@/components/Form';
import { formSchema } from './data';
import { deepMerge } from '@/utils';
import { useMessage } from '@/hooks/web/useMessage';
import { useDrawer } from '@/components/Drawer';
import {
addItems,
getItem,
updateItem,
auditItem,
} from '@/api/project/settlementManage';
import { EditModel } from '@/api/project/model/settlementManageModel';
import { nextTick } from 'vue';
const [registerDrawer, { openDrawer }] = useDrawer();
const [registerDrawerOperations, { openDrawer: openDrawer2 }] = useDrawer();
import { useModal } from '@/components/Modal';
import {c} from "vite/dist/node/types.d-aGj9QkWt";
const [register, { openModal: openModal }] = useModal();
import { unref, computed, onMounted, ref, reactive , nextTick } from 'vue';
import projectlibraryModel from '@/components/ContractModel/Contract.vue';
import { useRoute } from 'vue-router';
import { PageWrapper } from '@/components/Page';
import PageCard from '@/components/Page/src/PageCard.vue';
import contractDrawer from '@/views/contract/contractDrawer.vue';
import CollapseContainer from '@/components/Container/src/collapse/CollapseContainer.vue';
import { BasicForm, useForm, FormProps, UseFormReturnType } from '@/components/Form';
import { formSchema } from './data';
import { deepMerge } from '@/utils';
import { useMessage } from '@/hooks/web/useMessage';
import { useDrawer } from '@/components/Drawer';
import { addItems, getItem, updateItem, auditItem } from '@/api/project/settlementManage';
import { EditModel } from '@/api/project/model/settlementManageModel';
import { useModal } from '@/components/Modal';
import { c } from 'vite/dist/node/types.d-aGj9QkWt';
//历史记录是否可查
const historyData= ref(true)
const getTitle = ref('');
const [registerDrawer, { openDrawer }] = useDrawer();
const [registerDrawerOperations, { openDrawer: openDrawer2 }] = useDrawer();
const [register, { openModal: openModal }] = useModal();
const { createMessage } = useMessage();
const isUpdate = ref(false);
const loading = ref(false);
......@@ -111,11 +107,11 @@ const [register, { openModal: openModal }] = useModal();
onMounted(async () => {
const route = useRoute();
const id = route.query.id; // 获取名为id的参数
console.log('id111111111',route.query.id)
console.log('id111111111', route.query.id);
routeId.value = id;
statusResult.value = route.query.statusResult;
if (!id) {
historyData.value=false
historyData.value = false;
isUpdate.value = route.query.add = 'add' ? true : false;
console.log(isUpdate.value);
formData.value.management = [];
......@@ -124,8 +120,7 @@ const [register, { openModal: openModal }] = useModal();
formData.value.proClosingQuarter.status = '0';
formData.value.proClosingQuarter.quarter = route.query.quarter;
formData.value.proClosingQuarter.givenYear = route.query.year;
formData.value.proClosingQuarter.yearQuarter =
route.query.year + '年' + route.query.quarter;
formData.value.proClosingQuarter.yearQuarter = route.query.year + '年' + route.query.quarter;
getTitle.value = '新增结算管理';
console.log(formData, 'formData');
} else {
......@@ -149,8 +144,8 @@ const [register, { openModal: openModal }] = useModal();
//根据id查询详情
let res = await getItem({ id });
console.log('000000',res);
console.log('id',id);
console.log('000000', res);
console.log('id', id);
//构建数据
formData.value.management = [];
formData.value.proClosingQuarter = [];
......@@ -161,7 +156,7 @@ const [register, { openModal: openModal }] = useModal();
name: '项目:' + source.projectName,
show: true,
forceRender: true,
projectId:source.projectId,
projectId: source.projectId,
Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
),
......@@ -172,7 +167,7 @@ const [register, { openModal: openModal }] = useModal();
//合同id
id: source.id,
contractId: source.contractId,
projectId:source.projectId
projectId: source.projectId,
});
console.log(formData.value.management, 'eeee');
nextTick(() => {
......@@ -215,8 +210,8 @@ const [register, { openModal: openModal }] = useModal();
*
*/
async function handleNew(info: any) {
console.log('info',info)
console.log('routeId.value',routeId.value)
console.log('info', info);
console.log('routeId.value', routeId.value);
const item = {
name: '项目:' + info.projectName,
// name: '序号' + (tabsFormSchema.length + 1),
......@@ -241,7 +236,8 @@ const [register, { openModal: openModal }] = useModal();
projectName: info.projectName,
fundingSource: info.fundingSource,
contractName: info.contrcatName,
contractAmount: info.contractAmount
contractAmount: info.contractAmount,
projectInvestment: info.projectInvestment,
});
});
}
......@@ -260,88 +256,88 @@ const [register, { openModal: openModal }] = useModal();
});
}
/*删除项目表单*/
async function deleteItemPro(index: any) {
console.log('1',formData.value);
// formData.value.management.splice(index, 1);
// tabsFormSchema.splice(index, 1);
tabsFormSchema[index].show = false;
loading.value = false;
console.log('2',formData.value);
// }
}
async function deleteItemCon(index: any, key: any) {
formData.value.management[index].conList.splice(key, 1);
tabsFormSchema[index].list.splice(key, 1);
loading.value = false;
// }
}
/*删除项目表单*/
async function deleteItemPro(index: any) {
console.log('1', formData.value);
// formData.value.management.splice(index, 1);
// tabsFormSchema.splice(index, 1);
tabsFormSchema[index].show = false;
loading.value = false;
console.log('2', formData.value);
// }
}
async function deleteItemCon(index: any, key: any) {
formData.value.management[index].conList.splice(key, 1);
tabsFormSchema[index].list.splice(key, 1);
loading.value = false;
// }
}
async function handleSuccess(params: any) {
handleNew(params);
}
async function handleSubmit(isSubmit) {
for (let i = 0; i < tabsFormSchema.length; i++) {
let formSchema = tabsFormSchema[i].Form[1];
const {updateSchema} = formSchema;
const { updateSchema } = formSchema;
await nextTick(() => {
if (isSubmit == '0') {
updateSchema([
{field: 'projectName', required: false},
{field: 'fundingSource', required: false},
{field: 'projectInvestment', required: false},
{field: 'biddingMethod', required: false},
{field: 'contracYpe', required: false},
{field: 'contractName', required: false},
{field: 'firstPartyName', required: false},
{field: 'secondPartyName', required: false},
{field: 'formOfContract', required: false},
{field: 'contractSigningTime', required: false},
{field: 'closingTime', required: false},
{field: 'closingTimeDatetime', required: false},
{field: 'contractAmount', required: false},
{field: 'submittedForSettlement', required: false},
{field: 'superContractScale', required: false},
{field: 'sumOfMoney', required: false},
{field: 'proportionContractAmount', required: false},
{field: 'meetingMinutes', required: false},
{field: 'remark', required: false},
{ field: 'projectName', required: false },
{ field: 'fundingSource', required: false },
{ field: 'projectInvestment', required: false },
{ field: 'biddingMethod', required: false },
{ field: 'contracYpe', required: false },
{ field: 'contractName', required: false },
{ field: 'firstPartyName', required: false },
{ field: 'secondPartyName', required: false },
{ field: 'formOfContract', required: false },
{ field: 'contractSigningTime', required: false },
{ field: 'closingTime', required: false },
{ field: 'closingTimeDatetime', required: false },
{ field: 'contractAmount', required: false },
{ field: 'submittedForSettlement', required: false },
{ field: 'superContractScale', required: false },
{ field: 'sumOfMoney', required: false },
{ field: 'proportionContractAmount', required: false },
{ field: 'meetingMinutes', required: false },
{ field: 'remark', required: false },
]);
} else {
updateSchema([
{field: 'projectName', required: true},
{field: 'fundingSource', required: true},
{field: 'projectInvestment', required: true},
{field: 'biddingMethod', required: true},
{field: 'contracYpe', required: true},
{field: 'contractName', required: true},
{field: 'firstPartyName', required: true},
{field: 'secondPartyName', required: true},
{field: 'formOfContract', required: true},
{field: 'contractSigningTime', required: true},
{field: 'closingTime', required: true},
{field: 'closingTimeDatetime', required: true},
{field: 'contractAmount', required: true},
{field: 'submittedForSettlement', required: true},
{field: 'superContractScale', required: true},
{field: 'sumOfMoney', required: true},
{field: 'proportionContractAmount', required: false},
{field: 'meetingMinutes', required: true},
{field: 'remark', required: false},
{ field: 'projectName', required: true },
{ field: 'fundingSource', required: true },
{ field: 'projectInvestment', required: true },
{ field: 'biddingMethod', required: true },
{ field: 'contracYpe', required: true },
{ field: 'contractName', required: true },
{ field: 'firstPartyName', required: true },
{ field: 'secondPartyName', required: true },
{ field: 'formOfContract', required: true },
{ field: 'contractSigningTime', required: true },
{ field: 'closingTime', required: true },
{ field: 'closingTimeDatetime', required: true },
{ field: 'contractAmount', required: true },
{ field: 'submittedForSettlement', required: true },
{ field: 'superContractScale', required: true },
{ field: 'sumOfMoney', required: true },
{ field: 'proportionContractAmount', required: false },
{ field: 'meetingMinutes', required: true },
{ field: 'remark', required: false },
]);
}
});
}
loading.value = true;
formData.value.management = []
formData.value.management = [];
try {
let engineerConListIndex = 0;
for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i];
if (item.show) {
console.log('item', item)
console.log('item', item.show)
const {validate, getFieldsValue} = item.Form[1];
const data = await validate()
console.log('item', item);
console.log('item', item.show);
const { validate, getFieldsValue } = item.Form[1];
const data = await validate();
let res = getFieldsValue();
// formData.value.management[i] = deepMerge(formData.value.management[i], res);
let obj = {
......@@ -357,37 +353,39 @@ async function deleteItemCon(index: any, key: any) {
// res.proportionContractAmount = null;
// }
obj = deepMerge(obj, res);
console.log('obj', obj)
console.log('obj', obj);
formData.value.management.push(obj);
engineerConListIndex = engineerConListIndex + 1;
}
}
console.log('formData.value.management', formData.value.management)
console.log('formData.value.management', formData.value.management);
formData.value.isSubmit = isSubmit;
formData.value.id = routeId.value;
const requestDate={
isSubmit:isSubmit,
id:routeId.value,
ids:deleteId.value,
management:unref(formData).management
}
console.log('requestDate-------------',requestDate)
let res = routeId.value ? await updateItem(unref(requestDate)) : await addItems(unref(formData)) ;
const requestDate = {
isSubmit: isSubmit,
id: routeId.value,
ids: deleteId.value,
management: unref(formData).management,
};
console.log('requestDate-------------', requestDate);
let res = routeId.value
? await updateItem(unref(requestDate))
: await addItems(unref(formData));
// let res = isUpdate.value ? await updateItem(unref(requestDate)) : await addItems(unref(formData)) ;
loading.value = true;
addItemData.operateType = operateType.update;
addItemData.businessId = routeId.value;
addItemData.businessType = '结算管理';
const showDatem = await addItemApi(addItemData);
if (isSubmit === '0'){
if (isSubmit === '0') {
createMessage.success('暂存成功!');
}else{
} else {
createMessage.success('提交成功!');
}
}catch (e){
} catch (e) {
// createMessage.error('e');
createMessage.error('请将项目' + e.values.projectName + '信息填写完整!');
}finally {
} finally {
loading.value = false;
}
}
......@@ -399,27 +397,26 @@ async function deleteItemCon(index: any, key: any) {
statusResult.value = '1';
}
function history(){
openDrawer2(true,{
businessId:routeId.value,
businessType:"结算管理",
});
console.log("历史记录")
}
function history() {
openDrawer2(true, {
businessId: routeId.value,
businessType: '结算管理',
});
console.log('历史记录');
}
</script>
<style scoped>
.subCard {
border: 1px solid #e8eaec;
}
.projectName {
border-left: blue solid 6px;
padding-left: 10px;
font-weight: bold;
}
.contractName {
border-left: red solid 6px;
padding-left: 10px;
font-weight: bold;
}
.subCard {
border: 1px solid #e8eaec;
}
.projectName {
border-left: blue solid 6px;
padding-left: 10px;
font-weight: bold;
}
.contractName {
border-left: red solid 6px;
padding-left: 10px;
font-weight: bold;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment