diff --git a/src/api/tjt/report/index.ts b/src/api/tjt/report/index.ts index 548bd1c..6d31d12 100644 --- a/src/api/tjt/report/index.ts +++ b/src/api/tjt/report/index.ts @@ -133,13 +133,90 @@ export interface ProjectBudgetPreviewQuarterRow { } export interface ProjectQuarterOutputExportReqVO { - planningId: number + projectId: number year?: number } -export interface ProjectLeadQuarterOutputExportReqVO { - planningId: number +export interface ProjectQuarterOutputPreviewRespVO { + projectCode?: string + projectName?: string year?: number + rows?: ProjectQuarterOutputPreviewRow[] +} + +export interface ProjectQuarterOutputPreviewRow { + serialNo?: number + totalRow?: boolean + placeholderRow?: boolean + outputType?: string + designContent?: string + quarterOneAmountWan?: number + quarterTwoAmountWan?: number + quarterThreeAmountWan?: number + quarterFourAmountWan?: number + yearTotalAmountWan?: number + projectLeadRatio?: number + projectLeadAssessmentOutputWan?: number + projectLeadQuarterOneAmountWan?: number + projectLeadQuarterTwoAmountWan?: number + projectLeadQuarterThreeAmountWan?: number + projectLeadQuarterFourAmountWan?: number + projectLeadYearTotalAmountWan?: number + officeRatio?: number + officeAssessmentOutputWan?: number + officeQuarterOneAmountWan?: number + officeQuarterTwoAmountWan?: number + officeQuarterThreeAmountWan?: number + officeQuarterFourAmountWan?: number + officeYearTotalAmountWan?: number + archRatio?: number + decorRatio?: number + structRatio?: number + waterRatio?: number + hvacRatio?: number + elecRatio?: number + digitalRatio?: number + archAssessmentOutputWan?: number + decorAssessmentOutputWan?: number + structAssessmentOutputWan?: number + waterAssessmentOutputWan?: number + hvacAssessmentOutputWan?: number + elecAssessmentOutputWan?: number + digitalAssessmentOutputWan?: number +} + +export interface ProjectLeadQuarterOutputExportReqVO { + projectId: number + year?: number +} + +export interface ProjectLeadQuarterOutputPreviewRespVO { + projectName?: string + year?: number + projectManagerNames?: string + engineeringPrincipalNames?: string + rows?: ProjectLeadQuarterOutputPreviewRow[] +} + +export interface ProjectLeadQuarterOutputPreviewRow { + serialNo?: number + outputType?: string + designContent?: string + subtotalRow?: boolean + projectManagerNames?: string + projectManagerRatio?: number + engineeringPrincipalNames?: string + engineeringPrincipalRatio?: number + projectManagerQuarterOneAmountWan?: number + projectManagerQuarterTwoAmountWan?: number + projectManagerQuarterThreeAmountWan?: number + projectManagerQuarterFourAmountWan?: number + projectManagerYearTotalAmountWan?: number + engineeringPrincipalQuarterOneAmountWan?: number + engineeringPrincipalQuarterTwoAmountWan?: number + engineeringPrincipalQuarterThreeAmountWan?: number + engineeringPrincipalQuarterFourAmountWan?: number + engineeringPrincipalYearTotalAmountWan?: number } export interface SpecialtyPersonOutputExportReqVO { @@ -225,6 +302,13 @@ export const exportProjectQuarterOutput = (params: ProjectQuarterOutputExportReq }) } +export const getProjectQuarterOutputPreview = (params: ProjectQuarterOutputExportReqVO) => { + return request.get({ + url: '/tjt/report/project-quarter-output/preview', + params: { ...params, _t: Date.now() } + }) +} + export const exportProjectLeadQuarterOutput = (params: ProjectLeadQuarterOutputExportReqVO) => { return request.download({ url: '/tjt/report/project-lead-quarter-output/export-excel', @@ -232,6 +316,13 @@ export const exportProjectLeadQuarterOutput = (params: ProjectLeadQuarterOutputE }) } +export const getProjectLeadQuarterOutputPreview = (params: ProjectLeadQuarterOutputExportReqVO) => { + return request.get({ + url: '/tjt/report/project-lead-quarter-output/preview', + params: { ...params, _t: Date.now() } + }) +} + export const exportSpecialtyPersonOutput = (params: SpecialtyPersonOutputExportReqVO) => { return request.download({ url: '/tjt/report/specialty-person-output/export-excel', params }) } diff --git a/src/views/tjt/output-split/index.vue b/src/views/tjt/output-split/index.vue index 65236b2..010a7bd 100644 --- a/src/views/tjt/output-split/index.vue +++ b/src/views/tjt/output-split/index.vue @@ -98,6 +98,12 @@ + @@ -287,6 +293,7 @@ import * as ProjectApi from '@/api/tjt/project' import * as PlanningApi from '@/api/tjt/planning' import * as PlanningQuarterApi from '@/api/tjt/planningQuarter' import * as OutputSplitApi from '@/api/tjt/outputSplit' +import PlanningOwnershipSummary from '@/views/tjt/shared/PlanningOwnershipSummary.vue' import SplitPane from '@/views/tjt/shared/SplitPane.vue' import { formatAmountText, diff --git a/src/views/tjt/output/index.vue b/src/views/tjt/output/index.vue index 48c9454..9172e00 100644 --- a/src/views/tjt/output/index.vue +++ b/src/views/tjt/output/index.vue @@ -161,6 +161,12 @@ + @@ -464,6 +470,7 @@ import * as PlanningApi from '@/api/tjt/planning' import * as PlanningQuarterApi from '@/api/tjt/planningQuarter' import PlanningOutputForm from './PlanningOutputForm.vue' import QuarterDistributionForm from './QuarterDistributionForm.vue' +import PlanningOwnershipSummary from '@/views/tjt/shared/PlanningOwnershipSummary.vue' import SplitPane from '@/views/tjt/shared/SplitPane.vue' import { CONTRACT_SIGN_OPTIONS, diff --git a/src/views/tjt/report-project-lead-quarter/index.vue b/src/views/tjt/report-project-lead-quarter/index.vue new file mode 100644 index 0000000..631d0fb --- /dev/null +++ b/src/views/tjt/report-project-lead-quarter/index.vue @@ -0,0 +1,495 @@ + + + + + diff --git a/src/views/tjt/report-project-quarter/index.vue b/src/views/tjt/report-project-quarter/index.vue index bc713f2..f26b998 100644 --- a/src/views/tjt/report-project-quarter/index.vue +++ b/src/views/tjt/report-project-quarter/index.vue @@ -71,240 +71,201 @@ /> - - - - - - + + + + + diff --git a/src/views/tjt/shared/PlanningOwnershipSummary.vue b/src/views/tjt/shared/PlanningOwnershipSummary.vue new file mode 100644 index 0000000..a05b7f6 --- /dev/null +++ b/src/views/tjt/shared/PlanningOwnershipSummary.vue @@ -0,0 +1,156 @@ + + + + + diff --git a/src/views/tjt/staff-assignment/index.vue b/src/views/tjt/staff-assignment/index.vue index f16bb28..5d6f46b 100644 --- a/src/views/tjt/staff-assignment/index.vue +++ b/src/views/tjt/staff-assignment/index.vue @@ -100,6 +100,12 @@ + @@ -354,6 +360,7 @@ import * as EmployeeApi from '@/api/tjt/employee' import * as ProjectApi from '@/api/tjt/project' import * as PlanningApi from '@/api/tjt/planning' import * as SpecialtyRoleSplitApi from '@/api/tjt/specialtyRoleSplit' +import PlanningOwnershipSummary from '@/views/tjt/shared/PlanningOwnershipSummary.vue' import SplitPane from '@/views/tjt/shared/SplitPane.vue' import { formatAmountText,