Commit 51d8aaef authored by jiaxu.yan's avatar jiaxu.yan

Merge branch 'develop' of http://gitlab.91isoft.com:90/purple-cloud/web-progeam into develop

parents 50047b93 512eff6b
...@@ -6,25 +6,27 @@ ...@@ -6,25 +6,27 @@
<a-button type="default" @click="router.back()"> 返回 </a-button> <a-button type="default" @click="router.back()"> 返回 </a-button>
</template> </template>
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name"> <template v-for="(item, index) in tabsFormSchema">
<template #right> <PageCard v-if="item.show" :key="index" :title="item.name">
<a-button <template #right>
type="text" <a-button
preIcon="ant-design:delete-outlined" type="text"
danger preIcon="ant-design:delete-outlined"
v-if="!disabled" danger
@click="deleteItem(index)" v-if="!disabled"
/> @click="deleteItem(index)"
</template> />
<BasicForm :loading="loading" @register="item.Form[0]" /> </template>
<div style="width: 500px"> <BasicForm :loading="loading" @register="item.Form[0]" />
<BasicTable <div style="width: 500px">
:ref="(el) => setSwipeCellRef(item, index)" <BasicTable
@register="item.table" :ref="(el) => setSwipeCellRef(item, index)"
:beforeEditSubmit="beforeEditSubmit(item, index)" @register="item.table"
/> :beforeEditSubmit="beforeEditSubmit(item, index)"
</div> />
</PageCard> </div>
</PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus"> <a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入 从项目库导入
</a-button> </a-button>
...@@ -185,11 +187,12 @@ ...@@ -185,11 +187,12 @@
engineerId.value = id; engineerId.value = id;
isUpdate.value = true; isUpdate.value = true;
let res = await getItem({ id }); let res = await getItem({ id });
console.log('getItem', res); // console.log('getItem', res);
for (let i = 0; i < res.length; i++) { for (let i = 0; i < res.length; i++) {
const item = { const item = {
name: '序号' + (i + 1), name: '序号' + (i + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm( Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps, Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
), ),
...@@ -217,7 +220,10 @@ ...@@ -217,7 +220,10 @@
id: info.id, id: info.id,
investmentId: info.investmentId, investmentId: info.investmentId,
}; };
formData.value.investmentPlan = []; console.log('ddatadataata', data);
if (formData.value.investmentPlan === undefined) {
formData.value.investmentPlan = [];
}
formData.value.investmentPlan.push(data); formData.value.investmentPlan.push(data);
console.log('info', info); console.log('info', info);
const { setTableData } = item.table[1]; const { setTableData } = item.table[1];
...@@ -254,6 +260,7 @@ ...@@ -254,6 +260,7 @@
type TabsFormType = { type TabsFormType = {
name: string; name: string;
forceRender?: boolean; forceRender?: boolean;
show?: boolean;
Form: UseFormReturnType; Form: UseFormReturnType;
table: any; table: any;
}; };
...@@ -263,7 +270,7 @@ ...@@ -263,7 +270,7 @@
layout: 'vertical', layout: 'vertical',
}; };
const tabsFormSchema = reactive<TabsFormType[]>([]); let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() { async function add() {
openModal(); openModal();
...@@ -283,6 +290,7 @@ ...@@ -283,6 +290,7 @@
const item = { const item = {
name: '序号' + (tabsFormSchema.length + 1), name: '序号' + (tabsFormSchema.length + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps), Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({ table: useTable({
title: '表尾行合计示例', title: '表尾行合计示例',
...@@ -348,8 +356,9 @@ ...@@ -348,8 +356,9 @@
}); });
} }
async function deleteItem(index: any) { async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1); tabsFormSchema[index].show = false;
formData.value.investmentPlan.splice(index, 1); // tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
} }
async function handleAdd() { async function handleAdd() {
openDrawer(true, { openDrawer(true, {
...@@ -366,29 +375,31 @@ ...@@ -366,29 +375,31 @@
try { try {
for (let i = 0; i < tabsFormSchema.length; i++) { for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i]; let item = tabsFormSchema[i];
const { validate, getFieldsValue } = item.Form[1]; if (item.show) {
const { getDataSource } = item.table[1]; const { validate, getFieldsValue } = item.Form[1];
await validate(); const { getDataSource } = item.table[1];
let res = getFieldsValue(); await validate();
let data = getDataSource(); let res = getFieldsValue();
console.log(' getFieldsValue()', getFieldsValue()); let data = getDataSource();
console.log(' getDataSource()', getDataSource()); console.log(' getFieldsValue()', getFieldsValue());
console.log(' data111', data); console.log(' getDataSource()', getDataSource());
data[0].amount = Number(data[0].amount); console.log(' data111', data);
data[1].amount = Number(data[1].amount); data[0].amount = Number(data[0].amount);
data[2].amount = Number(data[2].amount); data[1].amount = Number(data[1].amount);
// res.biddingPeriod = res.biddingPeriod.join(','); data[2].amount = Number(data[2].amount);
// res.plannedPeriod = res.plannedPeriod.join(','); // res.biddingPeriod = res.biddingPeriod.join(',');
formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res); // res.plannedPeriod = res.plannedPeriod.join(',');
formData.value.investmentPlan[i].planYear = data; formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res);
formData.value.investmentPlan[i].beginTime = res.time[0]; formData.value.investmentPlan[i].planYear = data;
formData.value.investmentPlan[i].endTime = res.time[1]; formData.value.investmentPlan[i].beginTime = res.time[0];
formData.value.planType = '承建'; formData.value.investmentPlan[i].endTime = res.time[1];
formData.value.filingCycle = year.value;; formData.value.planType = '承建';
formData.value.investmentPlan[i].totalInvestment = Number( formData.value.filingCycle = year.value;;
formData.value.investmentPlan[i].totalInvestment, formData.value.investmentPlan[i].totalInvestment = Number(
); formData.value.investmentPlan[i].totalInvestment,
formData.value.id = engineerId.value; );
formData.value.id = engineerId.value;
}
} }
formData.value.proNumber = formData.value.investmentPlan.Length; formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData)); console.log(' formData()', unref(formData));
......
...@@ -5,26 +5,27 @@ ...@@ -5,26 +5,27 @@
<a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button> <a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button>
<a-button type="default" @click="router.back()"> 返回 </a-button> <a-button type="default" @click="router.back()"> 返回 </a-button>
</template> </template>
<template v-for="(item, index) in tabsFormSchema">
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name"> <PageCard v-if="item.show" :key="index" :title="item.name">
<template #right> <template #right>
<a-button <a-button
type="text" type="text"
preIcon="ant-design:delete-outlined" preIcon="ant-design:delete-outlined"
danger danger
v-if="!disabled" v-if="!disabled"
@click="deleteItem(index)" @click="deleteItem(index)"
/> />
</template> </template>
<BasicForm :loading="loading" @register="item.Form[0]" /> <BasicForm :loading="loading" @register="item.Form[0]" />
<div style="width: 500px"> <div style="width: 500px">
<BasicTable <BasicTable
:ref="(el) => setSwipeCellRef(item, index)" :ref="(el) => setSwipeCellRef(item, index)"
@register="item.table" @register="item.table"
:beforeEditSubmit="beforeEditSubmit(item, index)" :beforeEditSubmit="beforeEditSubmit(item, index)"
/> />
</div> </div>
</PageCard> </PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus"> <a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入 从项目库导入
</a-button> </a-button>
...@@ -189,6 +190,7 @@ ...@@ -189,6 +190,7 @@
const item = { const item = {
name: '序号' + (i + 1), name: '序号' + (i + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm( Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps, Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
), ),
...@@ -255,6 +257,7 @@ ...@@ -255,6 +257,7 @@
name: string; name: string;
forceRender?: boolean; forceRender?: boolean;
Form: UseFormReturnType; Form: UseFormReturnType;
show?: boolean;
table: any; table: any;
}; };
const baseFormConfig: Partial<FormProps> = { const baseFormConfig: Partial<FormProps> = {
...@@ -263,7 +266,7 @@ ...@@ -263,7 +266,7 @@
layout: 'vertical', layout: 'vertical',
}; };
const tabsFormSchema = reactive<TabsFormType[]>([]); let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() { async function add() {
openModal(); openModal();
...@@ -286,6 +289,7 @@ ...@@ -286,6 +289,7 @@
const item = { const item = {
name: '序号' + (tabsFormSchema.length + 1), name: '序号' + (tabsFormSchema.length + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps), Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({ table: useTable({
title: '表尾行合计示例', title: '表尾行合计示例',
...@@ -351,8 +355,9 @@ ...@@ -351,8 +355,9 @@
}); });
} }
async function deleteItem(index: any) { async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1); tabsFormSchema[index].show = false;
formData.value.investmentPlan.splice(index, 1); // tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
} }
async function handleAdd() { async function handleAdd() {
openDrawer(true, { openDrawer(true, {
...@@ -369,29 +374,31 @@ ...@@ -369,29 +374,31 @@
try { try {
for (let i = 0; i < tabsFormSchema.length; i++) { for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i]; let item = tabsFormSchema[i];
const { validate, getFieldsValue } = item.Form[1]; if (item.show) {
const { getDataSource } = item.table[1]; const { validate, getFieldsValue } = item.Form[1];
await validate(); const { getDataSource } = item.table[1];
let res = getFieldsValue(); await validate();
let data = getDataSource(); let res = getFieldsValue();
console.log(' getFieldsValue()', getFieldsValue()); let data = getDataSource();
console.log(' getDataSource()', getDataSource()); console.log(' getFieldsValue()', getFieldsValue());
console.log(' data111', data); console.log(' getDataSource()', getDataSource());
data[0].amount = Number(data[0].amount); console.log(' data111', data);
data[1].amount = Number(data[1].amount); data[0].amount = Number(data[0].amount);
data[2].amount = Number(data[2].amount); data[1].amount = Number(data[1].amount);
// res.biddingPeriod = res.biddingPeriod.join(','); data[2].amount = Number(data[2].amount);
// res.plannedPeriod = res.plannedPeriod.join(','); // res.biddingPeriod = res.biddingPeriod.join(',');
formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res); // res.plannedPeriod = res.plannedPeriod.join(',');
formData.value.investmentPlan[i].planYear = data; formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res);
formData.value.investmentPlan[i].beginTime = res.time[0]; formData.value.investmentPlan[i].planYear = data;
formData.value.investmentPlan[i].endTime = res.time[1]; formData.value.investmentPlan[i].beginTime = res.time[0];
formData.value.planType = '工程'; formData.value.investmentPlan[i].endTime = res.time[1];
formData.value.filingCycle = year.value; formData.value.planType = '工程';
formData.value.investmentPlan[i].totalInvestment = Number( formData.value.filingCycle = year.value;
formData.value.investmentPlan[i].totalInvestment, formData.value.investmentPlan[i].totalInvestment = Number(
); formData.value.investmentPlan[i].totalInvestment,
formData.value.id = engineerId.value; );
formData.value.id = engineerId.value;
}
} }
formData.value.proNumber = formData.value.investmentPlan.Length; formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData)); console.log(' formData()', unref(formData));
......
...@@ -5,26 +5,27 @@ ...@@ -5,26 +5,27 @@
<a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button> <a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button>
<a-button type="default" @click="router.back()"> 返回 </a-button> <a-button type="default" @click="router.back()"> 返回 </a-button>
</template> </template>
<template v-for="(item, index) in tabsFormSchema">
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name"> <PageCard v-if="item.show" :key="index" :title="item.name">
<template #right> <template #right>
<a-button <a-button
type="text" type="text"
preIcon="ant-design:delete-outlined" preIcon="ant-design:delete-outlined"
danger danger
v-if="!disabled" v-if="!disabled"
@click="deleteItem(index)" @click="deleteItem(index)"
/> />
</template> </template>
<BasicForm :loading="loading" @register="item.Form[0]" /> <BasicForm :loading="loading" @register="item.Form[0]" />
<div style="width: 500px"> <div style="width: 500px">
<BasicTable <BasicTable
:ref="(el) => setSwipeCellRef(item, index)" :ref="(el) => setSwipeCellRef(item, index)"
@register="item.table" @register="item.table"
:beforeEditSubmit="beforeEditSubmit(item, index)" :beforeEditSubmit="beforeEditSubmit(item, index)"
/> />
</div> </div>
</PageCard> </PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus"> <a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入 从项目库导入
</a-button> </a-button>
...@@ -185,11 +186,12 @@ ...@@ -185,11 +186,12 @@
engineerId.value = id; engineerId.value = id;
isUpdate.value = true; isUpdate.value = true;
let res = await getItem({ id }); let res = await getItem({ id });
console.log('getItem', res); // console.log('getItem', res);
for (let i = 0; i < res.length; i++) { for (let i = 0; i < res.length; i++) {
const item = { const item = {
name: '序号' + (i + 1), name: '序号' + (i + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm( Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps, Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
), ),
...@@ -217,7 +219,9 @@ ...@@ -217,7 +219,9 @@
id: info.id, id: info.id,
investmentId: info.investmentId, investmentId: info.investmentId,
}; };
formData.value.investmentPlan = []; if (formData.value.investmentPlan === undefined) {
formData.value.investmentPlan = [];
}
formData.value.investmentPlan.push(data); formData.value.investmentPlan.push(data);
console.log('info', info); console.log('info', info);
const { setTableData } = item.table[1]; const { setTableData } = item.table[1];
...@@ -254,6 +258,7 @@ ...@@ -254,6 +258,7 @@
type TabsFormType = { type TabsFormType = {
name: string; name: string;
forceRender?: boolean; forceRender?: boolean;
show?: boolean;
Form: UseFormReturnType; Form: UseFormReturnType;
table: any; table: any;
}; };
...@@ -263,7 +268,7 @@ ...@@ -263,7 +268,7 @@
layout: 'vertical', layout: 'vertical',
}; };
const tabsFormSchema = reactive<TabsFormType[]>([]); let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() { async function add() {
openModal(); openModal();
...@@ -283,6 +288,7 @@ ...@@ -283,6 +288,7 @@
const item = { const item = {
name: '序号' + (tabsFormSchema.length + 1), name: '序号' + (tabsFormSchema.length + 1),
forceRender: true, forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps), Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({ table: useTable({
title: '表尾行合计示例', title: '表尾行合计示例',
...@@ -348,8 +354,9 @@ ...@@ -348,8 +354,9 @@
}); });
} }
async function deleteItem(index: any) { async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1); tabsFormSchema[index].show = false;
formData.value.investmentPlan.splice(index, 1); // tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
} }
async function handleAdd() { async function handleAdd() {
openDrawer(true, { openDrawer(true, {
...@@ -366,29 +373,31 @@ ...@@ -366,29 +373,31 @@
try { try {
for (let i = 0; i < tabsFormSchema.length; i++) { for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i]; let item = tabsFormSchema[i];
const { validate, getFieldsValue } = item.Form[1]; if (item.show) {
const { getDataSource } = item.table[1]; const { validate, getFieldsValue } = item.Form[1];
await validate(); const { getDataSource } = item.table[1];
let res = getFieldsValue(); await validate();
let data = getDataSource(); let res = getFieldsValue();
console.log(' getFieldsValue()', getFieldsValue()); let data = getDataSource();
console.log(' getDataSource()', getDataSource()); console.log(' getFieldsValue()', getFieldsValue());
console.log(' data111', data); console.log(' getDataSource()', getDataSource());
data[0].amount = Number(data[0].amount); console.log(' data111', data);
data[1].amount = Number(data[1].amount); data[0].amount = Number(data[0].amount);
data[2].amount = Number(data[2].amount); data[1].amount = Number(data[1].amount);
// res.biddingPeriod = res.biddingPeriod.join(','); data[2].amount = Number(data[2].amount);
// res.plannedPeriod = res.plannedPeriod.join(','); // res.biddingPeriod = res.biddingPeriod.join(',');
formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res); // res.plannedPeriod = res.plannedPeriod.join(',');
formData.value.investmentPlan[i].planYear = data; formData.value.investmentPlan[i] = deepMerge(formData.value.investmentPlan[i], res);
formData.value.investmentPlan[i].beginTime = res.time[0]; formData.value.investmentPlan[i].planYear = data;
formData.value.investmentPlan[i].endTime = res.time[1]; formData.value.investmentPlan[i].beginTime = res.time[0];
formData.value.planType = '储备'; formData.value.investmentPlan[i].endTime = res.time[1];
formData.value.filingCycle = year.value;; formData.value.planType = '储备';
formData.value.investmentPlan[i].totalInvestment = Number( formData.value.filingCycle = year.value;;
formData.value.investmentPlan[i].totalInvestment, formData.value.investmentPlan[i].totalInvestment = Number(
); formData.value.investmentPlan[i].totalInvestment,
formData.value.id = engineerId.value; );
formData.value.id = engineerId.value;
}
} }
formData.value.proNumber = formData.value.investmentPlan.Length; formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData)); console.log(' formData()', unref(formData));
......
import { FormSchema, BasicColumn } from '@/components/Table'; import {FormSchema, BasicColumn, FormProps} from '@/components/Table';
import { uploadApi } from '@/api/sys/upload'; import { uploadApi } from '@/api/sys/upload';
export const formSchema: FormSchema[] = [ export const formSchema: FormSchema[] = [
{ {
...@@ -99,6 +99,188 @@ export const formSchema: FormSchema[] = [ ...@@ -99,6 +99,188 @@ export const formSchema: FormSchema[] = [
export const exportUrl = '/pro/export/yearEngineer'; export const exportUrl = '/pro/export/yearEngineer';
//查询条件
export function getFormConfig(): Partial<FormProps> {
return {
labelWidth: 100,
schemas: [
{
field: 'year',
label: '填报周期',
component: 'DatePicker',
componentProps: {
placeholder: '选择填报周期',
picker: 'year',
valueFormat: 'YYYY',
format: 'YYYY',
style: {
width: '100%',
},
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '公司名称',
field: 'companyName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '项目名称',
field: 'projectName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '建设地点',
field: 'constructionSite',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '立项总投资',
field: 'totalInvestment',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '年资金计划额合计',
field: 'plannedQuotaTotal',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '专项拨款合计',
field: 'specialFundTotal',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '银行融资合计',
field: 'bankFinancingTotal',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '自有资金合计',
field: 'ownFundsTotal',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '当年资金缺口',
field: 'fundingGap',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '建设性质',
field: 'attribute',
labelWidth: '140px',
component: 'Select',
componentProps: {
options: [
{ label: '新建', value: '0' },
{ label: '结转', value: '1' },
{ label: '缓建', value: '2' },
],
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '开工竣工时间',
field: 'beginTime',
labelWidth: '140px',
component: 'DatePicker',
componentProps: {
picker: 'DatePicker',
valueFormat: 'YYYY-MM-DD',
format: 'YYYY-MM-DD',
style: {
width: '100%',
},
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '当年底预计形象进度',
field: 'schedule',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '项目主管部门',
field: 'competentDepartment',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '备注',
field: 'remark',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
],
};
}
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{ {
field: 'projecName', field: 'projecName',
......
This diff is collapsed.
This diff is collapsed.
import { FormSchema, BasicColumn } from '@/components/Table'; import { FormSchema, BasicColumn, FormProps } from '@/components/Table';
import { uploadApi } from '@/api/sys/upload'; import { uploadApi } from '@/api/sys/upload';
export const formSchema: FormSchema[] = [ export const formSchema: FormSchema[] = [
{ {
...@@ -113,6 +113,153 @@ export const formSchema: FormSchema[] = [ ...@@ -113,6 +113,153 @@ export const formSchema: FormSchema[] = [
export const exportUrl = '/pro/export/overdueFunds'; export const exportUrl = '/pro/export/overdueFunds';
//查询条件
export function getFormConfig(): Partial<FormProps> {
return {
labelWidth: 100,
schemas: [
{
field: 'filingCycle',
label: '填报周期',
component: 'DatePicker',
componentProps: {
placeholder: '选择填报周期',
picker: 'year',
valueFormat: 'YYYY',
format: 'YYYY',
style: {
width: '100%',
},
},
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '公司名称',
field: 'company',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '项目名称',
field: 'projectName',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '建设地点',
field: 'constructionSite',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '立项总投资合计',
field: 'projectApproval',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '上一年底前累计实付额',
field: 'totalActualPay',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '年资金计划额合计',
field: 'totalValue',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '专项拨款合计',
field: 'totalSpecialBond',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '银行融资合计',
field: 'totalBankFinancing',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '自有资金合计',
field: 'totalOwnFunds',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '当年资金缺口',
field: 'fundingGap',
labelWidth: '140px',
component: 'InputNumber',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '项目主管部门',
field: 'competentDepartment',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
{
label: '备注',
field: 'remarks',
labelWidth: '140px',
component: 'Input',
colProps: {
xl: 8,
xxl: 4,
},
},
],
};
}
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{ {
field: 'projecName', field: 'projecName',
......
...@@ -40,7 +40,7 @@ import {useModal} from "@/components/Modal"; ...@@ -40,7 +40,7 @@ import {useModal} from "@/components/Modal";
import {getFormConfig} from "@/views/statement/InvestmentPlanlDrawer/detail.data"; import {getFormConfig} from "@/views/statement/InvestmentPlanlDrawer/detail.data";
const [registerDrawer, { openDrawer }] = useDrawer(); const [registerDrawer, { openDrawer }] = useDrawer();
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
const [registerTable, { reload }] = useTable({ const [registerTable, { reload, getForm }] = useTable({
api: getInvestmentPlanList, api: getInvestmentPlanList,
columns, columns,
formConfig: getFormConfig(), formConfig: getFormConfig(),
......
...@@ -35,18 +35,16 @@ ...@@ -35,18 +35,16 @@
import {getAnnualPlanDetail, getAnnualPlanTotalList} from '@/api/project/annualPlan'; import {getAnnualPlanDetail, getAnnualPlanTotalList} from '@/api/project/annualPlan';
import { router } from '@/router'; import { router } from '@/router';
import {useDrawer} from "@/components/Drawer"; import {useDrawer} from "@/components/Drawer";
import {getFormConfig} from "@/views/statement/annualPlanDrawer/detail.data";
const [registerDrawer, { openDrawer }] = useDrawer(); const [registerDrawer, { openDrawer }] = useDrawer();
import {useModal} from "@/components/Modal"; import {useModal} from "@/components/Modal";
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
let detailId = inject('detailId'); let detailId = inject('detailId');
console.log('detailId', detailId); console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({ const [registerTable, { reload, getForm }] = useTable({
api: getAnnualPlanTotalList, api: getAnnualPlanTotalList,
columns: annualPlanColumns, columns: annualPlanColumns,
formConfig: { formConfig: getFormConfig(),
labelWidth: 120,
schemas: searchFormSchema,
},
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
}, },
...@@ -67,6 +65,7 @@ ...@@ -67,6 +65,7 @@
projectId: null, projectId: null,
exportUrl: exportUrl, exportUrl: exportUrl,
title:"年度资金计划", title:"年度资金计划",
searchData:getForm().getFieldsValue(),
exportData: getExportData(), exportData: getExportData(),
}); });
} }
......
...@@ -34,9 +34,10 @@ import {biddingManagementColumns, exportBiddingManagementColumns, searchFormSche ...@@ -34,9 +34,10 @@ import {biddingManagementColumns, exportBiddingManagementColumns, searchFormSche
import { BasicTable, useTable, TableAction } from '@/components/Table'; import { BasicTable, useTable, TableAction } from '@/components/Table';
import { tendermanageGetListByPage } from '@/api/project/biddingManagement'; import { tendermanageGetListByPage } from '@/api/project/biddingManagement';
import { inject } from 'vue'; import { inject } from 'vue';
import { getFormConfig } from '@/views/statement/biddingManagement/detail.data';
import { router } from '@/router'; import { router } from '@/router';
import { Tag } from 'ant-design-vue'; import { Tag } from 'ant-design-vue';
import BiddingManagementExportModal from "@/views/statement/tabs/components/biddingManagementExportModal.vue"; import BiddingManagementExportModal from "@/views/statement/biddingManagement/biddingManagementExportModal.vue";
import { useModal } from '@/components/Modal'; import { useModal } from '@/components/Modal';
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
...@@ -45,9 +46,11 @@ const [registerModal, { openModal: openModal }] = useModal(); ...@@ -45,9 +46,11 @@ const [registerModal, { openModal: openModal }] = useModal();
const [registerTable, { reload }] = useTable({ const [registerTable, { reload }] = useTable({
api: tendermanageGetListByPage, api: tendermanageGetListByPage,
columns: biddingManagementColumns, columns: biddingManagementColumns,
formConfig: { formConfig: getFormConfig(),
labelWidth: 120,
schemas: searchFormSchema, rowKey: 'id',
rowSelection: {
type: 'checkbox',
}, },
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
......
...@@ -30,7 +30,8 @@ ...@@ -30,7 +30,8 @@
</div> </div>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import exportModal from './components/exportModal.vue'; import exportModal from '../biddingPlan/exportModal.vue';
import { getFormConfig } from '@/views/statement/biddingPlan/detail.data';
import { biddingPlanColumns,exportBiddingPlanColumns, searchFormSchema } from './data'; import { biddingPlanColumns,exportBiddingPlanColumns, searchFormSchema } from './data';
import { BasicTable, useTable, TableAction } from '@/components/Table'; import { BasicTable, useTable, TableAction } from '@/components/Table';
import { getListTenderPlanGetList } from '@/api/project/biddingPlan'; import { getListTenderPlanGetList } from '@/api/project/biddingPlan';
...@@ -45,9 +46,10 @@ import exportModal from './components/exportModal.vue'; ...@@ -45,9 +46,10 @@ import exportModal from './components/exportModal.vue';
const [registerTable, { reload }] = useTable({ const [registerTable, { reload }] = useTable({
api: getListTenderPlanGetList, api: getListTenderPlanGetList,
columns: biddingPlanColumns, columns: biddingPlanColumns,
formConfig: { formConfig: getFormConfig(),
labelWidth: 120, rowKey: 'id',
schemas: searchFormSchema, rowSelection: {
type: 'checkbox',
}, },
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
......
...@@ -36,29 +36,28 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v ...@@ -36,29 +36,28 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v
import {useDrawer} from "@/components/Drawer"; import {useDrawer} from "@/components/Drawer";
const [registerDrawer, { openDrawer }] = useDrawer(); const [registerDrawer, { openDrawer }] = useDrawer();
import { inject } from 'vue'; import { inject } from 'vue';
import { router } from '@/router';
let detailId = inject('detailId'); let detailId = inject('detailId');
//导出相关操作 //导出相关操作
import {biddingPlanColumns,exportUrl} from "@/views/statement/components/changeSignature/data"; import {biddingPlanColumns,exportUrl} from "@/views/statement/components/changeSignature/data";
import exportModal from '../components/exportModal.vue'; import exportModal from '../components/exportModal.vue';
import {useModal} from "@/components/Modal"; import {useModal} from "@/components/Modal";
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
//高级搜索相关
import {getFormConfig} from "@/views/statement/changeSignatureDrawer/detail.data"
console.log('detailId', detailId); console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({ const [registerTable, { reload,getForm }] = useTable({
api: getChangeSignatureList, api: getChangeSignatureList,
columns: changeSignatureColumns, columns: changeSignatureColumns,
formConfig: { useSearchForm: true,
labelWidth: 120, formConfig: getFormConfig(),
schemas: searchFormSchema, showTableSetting: true,
}, tableSetting: { fullScreen: true },
showIndexColumn: false,
rowKey: 'id',
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
}, },
useSearchForm: true,
showTableSetting: false,
bordered: true, bordered: true,
showIndexColumn: false,
actionColumn: { actionColumn: {
width: 200, width: 200,
title: '操作', title: '操作',
...@@ -92,6 +91,7 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v ...@@ -92,6 +91,7 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v
projectId: null, projectId: null,
exportUrl: exportUrl, exportUrl: exportUrl,
title :"变更签证管理", title :"变更签证管理",
searchData:getForm().getFieldsValue(),
exportData: getExportData(), exportData: getExportData(),
}); });
} }
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
import exportModal from '../components/exportModal.vue'; import exportModal from '../components/exportModal.vue';
import detaildrawer from '@/views/statement/completedDrawer/detailDrawer.vue'; import detaildrawer from '@/views/statement/completedDrawer/detailDrawer.vue';
import { completedColumns, searchFormSchema} from './data'; import { completedColumns, searchFormSchema} from './data';
import { exportUrl } from '../completedDrawer/detail.data'; import { exportUrl, getFormConfig } from '../completedDrawer/detail.data';
import { BasicTable, useTable, TableAction } from '@/components/Table'; import { BasicTable, useTable, TableAction } from '@/components/Table';
import { inject } from 'vue'; import { inject } from 'vue';
import {getCompletedDetail, getCompletedTotalList} from '@/api/project/completed'; import {getCompletedDetail, getCompletedTotalList} from '@/api/project/completed';
...@@ -40,13 +40,10 @@ ...@@ -40,13 +40,10 @@
const [registerModal, { openModal: openModal }] = useModal(); const [registerModal, { openModal: openModal }] = useModal();
let detailId = inject('detailId'); let detailId = inject('detailId');
console.log('detailId', detailId); console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({ const [registerTable, { reload, getForm }] = useTable({
api: getCompletedTotalList, api: getCompletedTotalList,
columns: completedColumns, columns: completedColumns,
formConfig: { formConfig: getFormConfig(),
labelWidth: 120,
schemas: searchFormSchema,
},
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
}, },
...@@ -68,6 +65,7 @@ ...@@ -68,6 +65,7 @@
projectId: null, projectId: null,
exportUrl: exportUrl, exportUrl: exportUrl,
title:"已竣工验收项目陈欠资金计划", title:"已竣工验收项目陈欠资金计划",
searchData:getForm().getFieldsValue(),
exportData: getExportData(), exportData: getExportData(),
}); });
} }
......
...@@ -53,9 +53,6 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra ...@@ -53,9 +53,6 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra
tableSetting: { fullScreen: true }, tableSetting: { fullScreen: true },
showIndexColumn: false, showIndexColumn: false,
rowKey: 'id', rowKey: 'id',
rowSelection: {
type: 'checkbox',
},
searchInfo: { searchInfo: {
proId: detailId, proId: detailId,
}, },
......
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