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,7 +6,8 @@
<a-button type="default" @click="router.back()"> 返回 </a-button>
</template>
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name">
<template v-for="(item, index) in tabsFormSchema">
<PageCard v-if="item.show" :key="index" :title="item.name">
<template #right>
<a-button
type="text"
......@@ -25,6 +26,7 @@
/>
</div>
</PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入
</a-button>
......@@ -185,11 +187,12 @@
engineerId.value = id;
isUpdate.value = true;
let res = await getItem({ id });
console.log('getItem', res);
// console.log('getItem', res);
for (let i = 0; i < res.length; i++) {
const item = {
name: '序号' + (i + 1),
forceRender: true,
show: true,
Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
),
......@@ -217,7 +220,10 @@
id: info.id,
investmentId: info.investmentId,
};
console.log('ddatadataata', data);
if (formData.value.investmentPlan === undefined) {
formData.value.investmentPlan = [];
}
formData.value.investmentPlan.push(data);
console.log('info', info);
const { setTableData } = item.table[1];
......@@ -254,6 +260,7 @@
type TabsFormType = {
name: string;
forceRender?: boolean;
show?: boolean;
Form: UseFormReturnType;
table: any;
};
......@@ -263,7 +270,7 @@
layout: 'vertical',
};
const tabsFormSchema = reactive<TabsFormType[]>([]);
let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() {
openModal();
......@@ -283,6 +290,7 @@
const item = {
name: '序号' + (tabsFormSchema.length + 1),
forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({
title: '表尾行合计示例',
......@@ -348,8 +356,9 @@
});
}
async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1);
formData.value.investmentPlan.splice(index, 1);
tabsFormSchema[index].show = false;
// tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
}
async function handleAdd() {
openDrawer(true, {
......@@ -366,6 +375,7 @@
try {
for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i];
if (item.show) {
const { validate, getFieldsValue } = item.Form[1];
const { getDataSource } = item.table[1];
await validate();
......@@ -390,6 +400,7 @@
);
formData.value.id = engineerId.value;
}
}
formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData));
// console.log(' setTableData()', setTableData);
......
......@@ -5,8 +5,8 @@
<a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button>
<a-button type="default" @click="router.back()"> 返回 </a-button>
</template>
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name">
<template v-for="(item, index) in tabsFormSchema">
<PageCard v-if="item.show" :key="index" :title="item.name">
<template #right>
<a-button
type="text"
......@@ -25,6 +25,7 @@
/>
</div>
</PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入
</a-button>
......@@ -189,6 +190,7 @@
const item = {
name: '序号' + (i + 1),
forceRender: true,
show: true,
Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
),
......@@ -255,6 +257,7 @@
name: string;
forceRender?: boolean;
Form: UseFormReturnType;
show?: boolean;
table: any;
};
const baseFormConfig: Partial<FormProps> = {
......@@ -263,7 +266,7 @@
layout: 'vertical',
};
const tabsFormSchema = reactive<TabsFormType[]>([]);
let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() {
openModal();
......@@ -286,6 +289,7 @@
const item = {
name: '序号' + (tabsFormSchema.length + 1),
forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({
title: '表尾行合计示例',
......@@ -351,8 +355,9 @@
});
}
async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1);
formData.value.investmentPlan.splice(index, 1);
tabsFormSchema[index].show = false;
// tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
}
async function handleAdd() {
openDrawer(true, {
......@@ -369,6 +374,7 @@
try {
for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i];
if (item.show) {
const { validate, getFieldsValue } = item.Form[1];
const { getDataSource } = item.table[1];
await validate();
......@@ -393,6 +399,7 @@
);
formData.value.id = engineerId.value;
}
}
formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData));
// console.log(' setTableData()', setTableData);
......
......@@ -5,8 +5,8 @@
<a-button type="primary" v-if="!disabled" @click="handleSubmit"> 提交 </a-button>
<a-button type="default" @click="router.back()"> 返回 </a-button>
</template>
<PageCard v-for="(item, index) in tabsFormSchema" :key="index" :title="item.name">
<template v-for="(item, index) in tabsFormSchema">
<PageCard v-if="item.show" :key="index" :title="item.name">
<template #right>
<a-button
type="text"
......@@ -25,6 +25,7 @@
/>
</div>
</PageCard>
</template>
<a-button v-if="!disabled" type="dashed" @click="add" preIcon="ei:plus">
从项目库导入
</a-button>
......@@ -185,11 +186,12 @@
engineerId.value = id;
isUpdate.value = true;
let res = await getItem({ id });
console.log('getItem', res);
// console.log('getItem', res);
for (let i = 0; i < res.length; i++) {
const item = {
name: '序号' + (i + 1),
forceRender: true,
show: true,
Form: useForm(
Object.assign({ schemas: formSchema, disabled }, baseFormConfig) as FormProps,
),
......@@ -217,7 +219,9 @@
id: info.id,
investmentId: info.investmentId,
};
if (formData.value.investmentPlan === undefined) {
formData.value.investmentPlan = [];
}
formData.value.investmentPlan.push(data);
console.log('info', info);
const { setTableData } = item.table[1];
......@@ -254,6 +258,7 @@
type TabsFormType = {
name: string;
forceRender?: boolean;
show?: boolean;
Form: UseFormReturnType;
table: any;
};
......@@ -263,7 +268,7 @@
layout: 'vertical',
};
const tabsFormSchema = reactive<TabsFormType[]>([]);
let tabsFormSchema = reactive<TabsFormType[]>([]);
async function add() {
openModal();
......@@ -283,6 +288,7 @@
const item = {
name: '序号' + (tabsFormSchema.length + 1),
forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema }, baseFormConfig) as FormProps),
table: useTable({
title: '表尾行合计示例',
......@@ -348,8 +354,9 @@
});
}
async function deleteItem(index: any) {
tabsFormSchema.splice(index, 1);
formData.value.investmentPlan.splice(index, 1);
tabsFormSchema[index].show = false;
// tabsFormSchema.splice(index, 1);
// formData.value.investmentPlan.splice(index, 1);
}
async function handleAdd() {
openDrawer(true, {
......@@ -366,6 +373,7 @@
try {
for (let i = 0; i < tabsFormSchema.length; i++) {
let item = tabsFormSchema[i];
if (item.show) {
const { validate, getFieldsValue } = item.Form[1];
const { getDataSource } = item.table[1];
await validate();
......@@ -390,6 +398,7 @@
);
formData.value.id = engineerId.value;
}
}
formData.value.proNumber = formData.value.investmentPlan.Length;
console.log(' formData()', unref(formData));
// console.log(' setTableData()', setTableData);
......
import { FormSchema, BasicColumn } from '@/components/Table';
import {FormSchema, BasicColumn, FormProps} from '@/components/Table';
import { uploadApi } from '@/api/sys/upload';
export const formSchema: FormSchema[] = [
{
......@@ -99,6 +99,188 @@ export const formSchema: FormSchema[] = [
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[] = [
{
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';
export const formSchema: FormSchema[] = [
{
......@@ -113,6 +113,153 @@ export const formSchema: FormSchema[] = [
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[] = [
{
field: 'projecName',
......
......@@ -40,7 +40,7 @@ import {useModal} from "@/components/Modal";
import {getFormConfig} from "@/views/statement/InvestmentPlanlDrawer/detail.data";
const [registerDrawer, { openDrawer }] = useDrawer();
const [registerModal, { openModal: openModal }] = useModal();
const [registerTable, { reload }] = useTable({
const [registerTable, { reload, getForm }] = useTable({
api: getInvestmentPlanList,
columns,
formConfig: getFormConfig(),
......
......@@ -35,18 +35,16 @@
import {getAnnualPlanDetail, getAnnualPlanTotalList} from '@/api/project/annualPlan';
import { router } from '@/router';
import {useDrawer} from "@/components/Drawer";
import {getFormConfig} from "@/views/statement/annualPlanDrawer/detail.data";
const [registerDrawer, { openDrawer }] = useDrawer();
import {useModal} from "@/components/Modal";
const [registerModal, { openModal: openModal }] = useModal();
let detailId = inject('detailId');
console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({
const [registerTable, { reload, getForm }] = useTable({
api: getAnnualPlanTotalList,
columns: annualPlanColumns,
formConfig: {
labelWidth: 120,
schemas: searchFormSchema,
},
formConfig: getFormConfig(),
searchInfo: {
proId: detailId,
},
......@@ -67,6 +65,7 @@
projectId: null,
exportUrl: exportUrl,
title:"年度资金计划",
searchData:getForm().getFieldsValue(),
exportData: getExportData(),
});
}
......
......@@ -34,9 +34,10 @@ import {biddingManagementColumns, exportBiddingManagementColumns, searchFormSche
import { BasicTable, useTable, TableAction } from '@/components/Table';
import { tendermanageGetListByPage } from '@/api/project/biddingManagement';
import { inject } from 'vue';
import { getFormConfig } from '@/views/statement/biddingManagement/detail.data';
import { router } from '@/router';
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';
const [registerModal, { openModal: openModal }] = useModal();
......@@ -45,9 +46,11 @@ const [registerModal, { openModal: openModal }] = useModal();
const [registerTable, { reload }] = useTable({
api: tendermanageGetListByPage,
columns: biddingManagementColumns,
formConfig: {
labelWidth: 120,
schemas: searchFormSchema,
formConfig: getFormConfig(),
rowKey: 'id',
rowSelection: {
type: 'checkbox',
},
searchInfo: {
proId: detailId,
......
......@@ -30,7 +30,8 @@
</div>
</template>
<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 { BasicTable, useTable, TableAction } from '@/components/Table';
import { getListTenderPlanGetList } from '@/api/project/biddingPlan';
......@@ -45,9 +46,10 @@ import exportModal from './components/exportModal.vue';
const [registerTable, { reload }] = useTable({
api: getListTenderPlanGetList,
columns: biddingPlanColumns,
formConfig: {
labelWidth: 120,
schemas: searchFormSchema,
formConfig: getFormConfig(),
rowKey: 'id',
rowSelection: {
type: 'checkbox',
},
searchInfo: {
proId: detailId,
......
......@@ -36,29 +36,28 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v
import {useDrawer} from "@/components/Drawer";
const [registerDrawer, { openDrawer }] = useDrawer();
import { inject } from 'vue';
import { router } from '@/router';
let detailId = inject('detailId');
//导出相关操作
import {biddingPlanColumns,exportUrl} from "@/views/statement/components/changeSignature/data";
import exportModal from '../components/exportModal.vue';
import {useModal} from "@/components/Modal";
const [registerModal, { openModal: openModal }] = useModal();
//高级搜索相关
import {getFormConfig} from "@/views/statement/changeSignatureDrawer/detail.data"
console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({
const [registerTable, { reload,getForm }] = useTable({
api: getChangeSignatureList,
columns: changeSignatureColumns,
formConfig: {
labelWidth: 120,
schemas: searchFormSchema,
},
useSearchForm: true,
formConfig: getFormConfig(),
showTableSetting: true,
tableSetting: { fullScreen: true },
showIndexColumn: false,
rowKey: 'id',
searchInfo: {
proId: detailId,
},
useSearchForm: true,
showTableSetting: false,
bordered: true,
showIndexColumn: false,
actionColumn: {
width: 200,
title: '操作',
......@@ -92,6 +91,7 @@ import detaildrawer from '@/views/statement/changeSignatureDrawer/detailDrawer.v
projectId: null,
exportUrl: exportUrl,
title :"变更签证管理",
searchData:getForm().getFieldsValue(),
exportData: getExportData(),
});
}
......
......@@ -29,7 +29,7 @@
import exportModal from '../components/exportModal.vue';
import detaildrawer from '@/views/statement/completedDrawer/detailDrawer.vue';
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 { inject } from 'vue';
import {getCompletedDetail, getCompletedTotalList} from '@/api/project/completed';
......@@ -40,13 +40,10 @@
const [registerModal, { openModal: openModal }] = useModal();
let detailId = inject('detailId');
console.log('detailId', detailId);
const [registerTable, { reload }] = useTable({
const [registerTable, { reload, getForm }] = useTable({
api: getCompletedTotalList,
columns: completedColumns,
formConfig: {
labelWidth: 120,
schemas: searchFormSchema,
},
formConfig: getFormConfig(),
searchInfo: {
proId: detailId,
},
......@@ -68,6 +65,7 @@
projectId: null,
exportUrl: exportUrl,
title:"已竣工验收项目陈欠资金计划",
searchData:getForm().getFieldsValue(),
exportData: getExportData(),
});
}
......
......@@ -53,9 +53,6 @@ import detaildrawer from '@/views/statement/settlementManagementDrawer/detailDra
tableSetting: { fullScreen: true },
showIndexColumn: false,
rowKey: 'id',
rowSelection: {
type: 'checkbox',
},
searchInfo: {
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