0512新功能优化a

This commit is contained in:
lzm
2026-05-12 11:25:24 +08:00
parent 1fbf02a310
commit ddc0c7db1e
15 changed files with 1371 additions and 273 deletions

View File

@@ -13,6 +13,7 @@ export interface EmployeeVO {
leaveDate?: string
employeeStatus: string
remark?: string
officeLeaderFlag?: boolean
sortNo?: number
enabledFlag?: boolean
createTime?: string
@@ -23,6 +24,7 @@ export interface EmployeePageReqVO extends PageParam {
officeId?: number
employeeStatus?: string
enabledFlag?: boolean
officeLeaderFlag?: boolean
}
export interface EmployeeSimpleVO {
@@ -33,6 +35,7 @@ export interface EmployeeSimpleVO {
employeeStatus?: string
registrationType?: string
jobTitle?: string
officeLeaderFlag?: boolean
}
export const getEmployeePage = (params: EmployeePageReqVO) => {
@@ -60,6 +63,7 @@ export const getEmployeeSimpleList = (params: {
officeId?: number
status?: string
enabledFlag?: boolean
officeLeaderFlag?: boolean
}) => {
return request.get({ url: '/tjt/employee/simple-list', params })
}

View File

@@ -19,6 +19,18 @@ export interface EmployeeYearCostBudgetPageReqVO extends PageParam {
enabledFlag?: boolean
}
export interface EmployeeYearCostBudgetGenerateReqVO {
budgetYear: number
expectedCostAmount?: number
}
export interface EmployeeYearCostBudgetGenerateRespVO {
budgetYear: number
totalEnabledEmployeeCount: number
createdCount: number
skippedCount: number
}
export const getEmployeeYearCostBudgetPage = (params: EmployeeYearCostBudgetPageReqVO) => {
return request.get({ url: '/tjt/employee-year-cost-budget/page', params })
}
@@ -31,6 +43,10 @@ export const createEmployeeYearCostBudget = (data: EmployeeYearCostBudgetVO) =>
return request.post({ url: '/tjt/employee-year-cost-budget/create', data })
}
export const generateEmployeeYearCostBudget = (data: EmployeeYearCostBudgetGenerateReqVO) => {
return request.post({ url: '/tjt/employee-year-cost-budget/generate', data })
}
export const updateEmployeeYearCostBudget = (data: EmployeeYearCostBudgetVO) => {
return request.put({ url: '/tjt/employee-year-cost-budget/update', data })
}

View File

@@ -0,0 +1,56 @@
import request from '@/config/axios'
export interface EmployeeYearLeaderOutputVO {
id?: number
employeeId: number
employeeName?: string
outputYear: number
leaderOutputAmount: number
remark?: string
sortNo?: number
enabledFlag?: boolean
createTime?: string
}
export interface EmployeeYearLeaderOutputPageReqVO extends PageParam {
employeeId?: number
employeeName?: string
outputYear?: number
enabledFlag?: boolean
}
export interface EmployeeYearLeaderOutputGenerateReqVO {
outputYear: number
leaderOutputAmount?: number
}
export interface EmployeeYearLeaderOutputGenerateRespVO {
outputYear: number
totalEnabledLeaderCount: number
createdCount: number
skippedCount: number
}
export const getEmployeeYearLeaderOutputPage = (params: EmployeeYearLeaderOutputPageReqVO) => {
return request.get({ url: '/tjt/employee-year-leader-output/page', params })
}
export const getEmployeeYearLeaderOutput = (id: number) => {
return request.get({ url: '/tjt/employee-year-leader-output/get', params: { id } })
}
export const createEmployeeYearLeaderOutput = (data: EmployeeYearLeaderOutputVO) => {
return request.post({ url: '/tjt/employee-year-leader-output/create', data })
}
export const generateEmployeeYearLeaderOutput = (data: EmployeeYearLeaderOutputGenerateReqVO) => {
return request.post({ url: '/tjt/employee-year-leader-output/generate', data })
}
export const updateEmployeeYearLeaderOutput = (data: EmployeeYearLeaderOutputVO) => {
return request.put({ url: '/tjt/employee-year-leader-output/update', data })
}
export const deleteEmployeeYearLeaderOutput = (id: number) => {
return request.delete({ url: '/tjt/employee-year-leader-output/delete', params: { id } })
}

View File

@@ -7,6 +7,7 @@ export interface ProjectProfitVO {
contractSignedFlag: boolean
contractAmount?: number
finalSettlementAmount?: number
effectiveSettlementAmount?: number
comprehensivePlanningAmount?: number
subcontractPlanningAmount?: number
majorOutputValue?: number

View File

@@ -6,6 +6,41 @@ export interface ProjectOverviewExportReqVO {
sortType?: string
}
export interface ProjectOverviewPreviewRespVO {
year?: number
officeName?: string
employeeColumns?: ProjectOverviewEmployeeColumn[]
rows?: ProjectOverviewProjectRow[]
totalRow?: ProjectOverviewProjectRow
}
export interface ProjectOverviewEmployeeColumn {
employeeId?: number
employeeName?: string
}
export interface ProjectOverviewProjectRow {
serialNo?: number
totalRow?: boolean
projectName?: string
progressText?: string
workStage?: string
totalOutputAmountWan?: number
historicalIssuedRatio?: number
currentSettlementRatio?: number
currentSettlementAmountWan?: number
pendingRatio?: number
employeeAmountMap?: Record<string, ProjectOverviewEmployeeAmountValue>
}
export interface ProjectOverviewEmployeeAmountValue {
quarterOneAmountWan?: number
quarterTwoAmountWan?: number
quarterThreeAmountWan?: number
quarterFourAmountWan?: number
annualTotalAmountWan?: number
}
export interface EmployeeOutputSummaryExportReqVO {
year?: number
officeId?: number
@@ -14,6 +49,31 @@ export interface EmployeeOutputSummaryExportReqVO {
sortType?: string
}
export interface EmployeeOutputSummaryPreviewRespVO {
year?: number
kValue?: number
rows?: EmployeeOutputSummaryRow[]
totalRow?: EmployeeOutputSummaryRow
}
export interface EmployeeOutputSummaryRow {
serialNo?: number
employeeName?: string
officeName?: string
quarterOneAmount?: number
quarterTwoAmount?: number
quarterThreeAmount?: number
quarterFourAmount?: number
annualTotalAmount?: number
officeLeaderOrBimAmount?: number
totalAssessmentOutputAmount?: number
expectedCostAmount?: number
basicAssessmentOutputAmount?: number
remainingOutputAmount?: number
estimatedYearEndPerformanceAmount?: number
totalRow?: boolean
}
export interface ProjectBudgetExportReqVO {
projectId: number
year?: number
@@ -35,6 +95,65 @@ export interface SpecialtyPersonOutputExportReqVO {
year?: number
}
export interface SpecialtyPersonOutputPreviewReqVO {
planningId: number
year?: number
}
export interface SpecialtyPersonOutputPreviewRespVO {
planningId: number
year: number
projectName?: string
groups?: SpecialtyPersonOutputPreviewGroupRow[]
}
export interface SpecialtyPersonOutputPreviewGroupRow {
specialtyCode: string
specialtyName?: string
exportable?: boolean
specialtyAmount?: number
roleTotal?: number
personCount?: number
overRatio?: boolean
specialtyQuarterOneAmountWan?: number
specialtyQuarterTwoAmountWan?: number
specialtyQuarterThreeAmountWan?: number
specialtyQuarterFourAmountWan?: number
specialtyYearTotalAmountWan?: number
rows: SpecialtyPersonOutputPreviewRoleRow[]
}
export interface SpecialtyPersonOutputPreviewRoleRow {
specialtyCode: string
specialtyName?: string
roleCode: string
roleName?: string
roleRatio?: number
roleAmount?: number
personTotalRatio?: number
persons: SpecialtyPersonOutputPreviewPersonRow[]
}
export interface SpecialtyPersonOutputPreviewPersonRow {
personKey: string
employeeId?: number
employeeName?: string
personRatio?: number
personAmount?: number
roleNames?: string
adjustedPersonRatio?: number
quarterOneRatio?: number
quarterOneAmountWan?: number
quarterTwoRatio?: number
quarterTwoAmountWan?: number
quarterThreeRatio?: number
quarterThreeAmountWan?: number
quarterFourRatio?: number
quarterFourAmountWan?: number
yearTotalRatio?: number
yearTotalAmountWan?: number
}
export const exportProjectBudget = (params: ProjectBudgetExportReqVO) => {
return request.download({ url: '/tjt/report/project-budget/export-excel', params })
}
@@ -57,10 +176,28 @@ export const exportSpecialtyPersonOutput = (params: SpecialtyPersonOutputExportR
return request.download({ url: '/tjt/report/specialty-person-output/export-excel', params })
}
export const getSpecialtyPersonOutputPreview = (params: SpecialtyPersonOutputPreviewReqVO) => {
return request.get({ url: '/tjt/report/specialty-person-output/preview', params })
}
export const exportProjectOverview = (params: ProjectOverviewExportReqVO) => {
return request.download({ url: '/tjt/report/project-overview/export-excel', params })
}
export const getProjectOverviewPreview = (params: ProjectOverviewExportReqVO) => {
return request.get<ProjectOverviewPreviewRespVO>({
url: '/tjt/report/project-overview/preview',
params: { ...params, _t: Date.now() }
})
}
export const exportEmployeeOutputSummary = (params: EmployeeOutputSummaryExportReqVO) => {
return request.download({ url: '/tjt/report/employee-output-summary/export-excel', params })
}
export const getEmployeeOutputSummaryPreview = (params: EmployeeOutputSummaryExportReqVO) => {
return request.get<EmployeeOutputSummaryPreviewRespVO>({
url: '/tjt/report/employee-output-summary/preview',
params: { ...params, _t: Date.now() }
})
}