Commit 0b6ec13a authored by 罗林杰's avatar 罗林杰

统年度工程资金计划模块

parent 163199eb
......@@ -14,6 +14,7 @@ enum Api {
GetCompletedDetail = '/pro/reportCenter/details/overdueFunds',
selectCount = '/pro/overdueFunds/selectCount',
GetListAll = '/pro/overdueFunds/getListAll',
getStatisticDetails = '/pro/overdueFunds/getDetails',
}
export const selectCount = (params?: any) =>
......@@ -28,7 +29,8 @@ export const getListAll = (params?: any) =>
defHttp.post<ProjectModel>({ url: Api.GetListAll, data: params });
export const getCompletedTotalList = (params?: ProjectParams) =>
defHttp.post<ProjectModel>({ url: Api.GetCompletedList, data: params });
export const getStatisticDetails = (params?: any) =>
defHttp.post<ProjectModel>({ url: Api.getStatisticDetails, data: params });
export const getCompletedProjectList = (params?: ProjectParams) =>
defHttp.post<ProjectModel>({ url: Api.GetCompletedProjectList, data: params });
......
......@@ -10,14 +10,14 @@
<Table
:pagination="false"
:dataSource="dataSource"
:columns="columns"
:columns="getBasicColumns(params.planType)"
bordered
:loading="loadingRef"
:rowClassName="setRowClassName"
:scroll="{ x: 1300, y: 600 }"
>
<template #projectType="{ text, record }">
<a @click="showDetails(record)"> {{ text }}</a>
<template #projectType="{ text, record, planType, filingCycle }">
<a @click="showDetails(record, planType, filingCycle)"> {{ text }}</a>
</template>
</Table>
</PageCard>
......@@ -35,6 +35,7 @@
import { useRouter } from 'vue-router';
import { getListAll } from '@/api/project/completed';
import CompletedStatisticWindow from '@/views/completed/completedStatisticWindow.vue';
import { BasicColumn } from '@/components/Table';
const { push } = useRouter();
onMounted(async () => {
......@@ -49,17 +50,19 @@
schemas: searchFormSchema,
showActionButtonGroup: false,
});
const params = ref({ tenderYear: '', biddingQuarter: '', companyName: '' });
const params = ref({ filingCycle: '', planType: '已竣工验收项目', company: '' });
const loadingRef = ref(false);
const columns = ref([]);
function handleSubmit() {
let data = getFieldsValue();
params.value = data;
if (params.value.tenderYear !== undefined && params.value.tenderYear !== null) {
columns[0].title = params.value.tenderYear + '工程资金计划(已竣工验收项目)';
} else {
columns[0].title = '工程资金计划(已竣工验收项目)';
}
// if (params.value.filingCycle !== undefined && params.value.filingCycle !== null) {
// columns[0].title =
// params.value.filingCycle + params.value.company + '工程资金计划(已竣工验收项目)';
// } else {
// columns[0].title = '工程资金计划(已竣工验收项目)';
// }
getStatisticList();
}
// async function exportCount() {
......@@ -76,9 +79,13 @@
// }
// }
function showDetails(record) {
function showDetails(record, planType, filingCycle) {
planType = params.value.planType;
filingCycle = params.value.filingCycle;
openModal(true, {
record,
filingCycle,
planType,
});
}
......@@ -114,12 +121,10 @@
dataSource.value = data; // 更新数据源
}
// 列表
const dataSource = ref([]);
// 表头
const columns = [
function getBasicColumns(planType: string): BasicColumn[] {
return [
{
title: '工程资金计划(已竣工验收项目)',
title: '工程资金计划(' + planType + ')',
dataIndex: '',
fixed: 'left',
children: [
......@@ -156,6 +161,7 @@
title: '合同额合计(万元)',
dataIndex: 'contractAmount',
width: 180,
className: planType === '已竣工验收项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '年资金计划额合计(万元)',
......@@ -166,8 +172,8 @@
title: '竣工结算额合计(万元)',
dataIndex: 'completionSettlement',
width: 180,
className: planType === '已竣工验收项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '年资金缺口合计(万元)',
dataIndex: 'fundingGap',
......@@ -176,6 +182,9 @@
],
},
];
}
// 列表
const dataSource = ref([]);
</script>
<style lang="less" scoped>
::v-deep .ant-table-tbody .ant-table-row {
......
......@@ -233,7 +233,10 @@
forceRender: true,
show: true,
Form: useForm(
Object.assign({ schemas: formSchema(year.value,planType.value), disabled }, baseFormConfig) as FormProps,
Object.assign(
{ schemas: formSchema(year.value, planType.value), disabled },
baseFormConfig,
) as FormProps,
),
table: useTable({
title: '表尾行合计示例',
......@@ -339,7 +342,12 @@
name: '项目:' + info.projectName,
forceRender: true,
show: true,
Form: useForm(Object.assign({ schemas: formSchema(year.value,planType.value) }, baseFormConfig) as FormProps),
Form: useForm(
Object.assign(
{ schemas: formSchema(year.value, planType.value) },
baseFormConfig,
) as FormProps,
),
sumData: [
{
quarter: '合计',
......@@ -473,7 +481,6 @@
return getDataSource();
}
async function handleSubmit(isSubmit) {
loading.value = true;
try {
for (let i = 0; i < tabsFormSchema.length; i++) {
......
......@@ -22,8 +22,8 @@
import BasicModal from '@/components/Modal/src/BasicModal.vue';
import { ref } from 'vue';
import { Table } from 'ant-design-vue';
import { getStatisticEngineProjectDetails } from '@/api/project/engineeringProject';
import { getDtailsBasicColumns } from '@/views/completed/data';
import { getStatisticDetails } from '@/api/project/completed';
const loadingRef = ref(false);
// 列表
......@@ -37,7 +37,8 @@
params.value.projectType = data.record.projectType;
params.value.filingCycle = data.filingCycle;
params.value.planType = data.planType;
dataSource.value = await getStatisticEngineProjectDetails(params.value);
console.log(params.value.planType);
dataSource.value = await getStatisticDetails(params.value);
});
</script>
<style scoped lang="less"></style>
......@@ -108,8 +108,9 @@ export const searchFormSchema: FormSchema[] = [
colProps: { span: 4 },
},
{
field: 'type',
field: 'planType',
label: '',
defaultValue: '计划投资项目',
component: 'Select',
componentProps: {
options: [
......@@ -199,37 +200,45 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '立项总投资',
dataIndex: 'projectOverview',
dataIndex: 'projectInvestment',
width: 200,
},
{
title: '合同额',
dataIndex: 'constructionScale',
dataIndex: 'contractAmount',
width: 150,
className: planType === '已竣工验收项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '竣工结算额',
dataIndex: 'constructionPurpose',
dataIndex: 'completionSettlement',
width: 150,
className: planType === '已竣工验收项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '2024年计划投资',
dataIndex: 'plannedInvestment',
width: 150,
className: planType === '计划投资项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '2023年资金执行情况',
children: [
{
title: '计划额',
dataIndex: 'totalAmount',
dataIndex: 'annualFund',
width: 150,
},
{
title: '实付额',
dataIndex: 'thisYear',
dataIndex: 'actualPay',
width: 150,
},
],
},
{
title: '2023年底前累计实付额',
dataIndex: 'fundingSource',
dataIndex: 'totalActualPay',
width: 150,
},
{
......@@ -242,22 +251,22 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '一季度',
dataIndex: 'thisYear',
dataIndex: 'totalValueOne',
width: 150,
},
{
title: '二季度',
dataIndex: 'secondYear',
dataIndex: 'totalValueTwo',
width: 150,
},
{
title: '三季度',
dataIndex: 'thirdYear',
dataIndex: 'totalValueThree',
width: 150,
},
{
title: '四季度',
dataIndex: 'thirdYear',
dataIndex: 'totalValueFour',
width: 150,
},
],
......@@ -275,22 +284,22 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '一季度',
dataIndex: 'thisYear',
dataIndex: 'governmentGrantOne',
width: 150,
},
{
title: '二季度',
dataIndex: 'secondYear',
dataIndex: 'governmentGrantTwo',
width: 150,
},
{
title: '三季度',
dataIndex: 'thirdYear',
dataIndex: 'governmentGrantThree',
width: 150,
},
{
title: '四季度',
dataIndex: 'thirdYear',
dataIndex: 'governmentGrantFour',
width: 150,
},
],
......@@ -305,22 +314,22 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '一季度',
dataIndex: 'thisYear',
dataIndex: 'totalSpecialBondOne',
width: 150,
},
{
title: '二季度',
dataIndex: 'secondYear',
dataIndex: 'totalSpecialBondTwo',
width: 150,
},
{
title: '三季度',
dataIndex: 'thirdYear',
dataIndex: 'totalSpecialBondThree',
width: 150,
},
{
title: '四季度',
dataIndex: 'thirdYear',
dataIndex: 'totalSpecialBondFour',
width: 150,
},
],
......@@ -335,22 +344,22 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '一季度',
dataIndex: 'thisYear',
dataIndex: 'totalBankFinancingOne',
width: 150,
},
{
title: '二季度',
dataIndex: 'secondYear',
dataIndex: 'totalBankFinancingTwo',
width: 150,
},
{
title: '三季度',
dataIndex: 'thirdYear',
dataIndex: 'totalBankFinancingThree',
width: 150,
},
{
title: '四季度',
dataIndex: 'thirdYear',
dataIndex: 'totalBankFinancingFour',
width: 150,
},
],
......@@ -365,22 +374,22 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '一季度',
dataIndex: 'thisYear',
dataIndex: 'totalOwnFundsOne',
width: 150,
},
{
title: '二季度',
dataIndex: 'secondYear',
dataIndex: 'totalOwnFundsTwo',
width: 150,
},
{
title: '三季度',
dataIndex: 'thirdYear',
dataIndex: 'totalOwnFundsThree',
width: 150,
},
{
title: '四季度',
dataIndex: 'thirdYear',
dataIndex: 'totalOwnFundsFour',
width: 150,
},
],
......@@ -389,13 +398,38 @@ export function getDtailsBasicColumns(year: string, planType: string): BasicColu
},
{
title: '2024年资金缺口',
dataIndex: 'attribute',
dataIndex: 'fundingGap',
width: 150,
},
{
title: '建设性质',
dataIndex: 'constructionNature',
width: 150,
className: planType === '计划投资项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '开工竣工时间',
dataIndex: 'startTime' + 'endTime',
width: 150,
className: planType === '计划投资项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '2024年底预计形象进度',
dataIndex: 'imageProgress',
width: 150,
className: planType === '计划投资项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '项目主管部门',
dataIndex: 'competentDepartment',
width: 150,
className: planType === '计划投资项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '项目主管',
dataIndex: 'beginTime',
dataIndex: 'company',
width: 150,
className: planType === '已竣工验收项目' ? 'tableShow' : 'tableHiddle',
},
{
title: '备注',
......
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