From 5d53969cd375afe2c78748d16d71264af1656a69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E4=B8=89=E7=82=AE?= <15856818120@163.com> Date: Fri, 30 Jan 2026 13:32:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tool/MonthPlanExcelExporter.java | 2 +- .../java/com/bonus/digital/dao/DayPlanVo.java | 9 ++++++++ .../digital/dao/ProposedPersonnelVo.java | 23 ++++++++++++++++--- .../com/bonus/digital/dao/WorkloadVo.java | 10 ++++++++ .../digital/mapper/MonthlyPlanMapper.java | 2 +- .../service/impl/DayPlanServiceImpl.java | 14 +++++++---- .../service/impl/MonthlyPlanServiceImpl.java | 10 ++++++-- .../main/resources/mapper/DayPlanMapper.xml | 14 +++++++++-- .../main/resources/mapper/MonthPlanMapper.xml | 8 +++---- .../mapper/WorkloadCategoryMapper.xml | 3 ++- 10 files changed, 77 insertions(+), 18 deletions(-) diff --git a/bonus-business/src/main/java/com/bonus/business/controller/tool/MonthPlanExcelExporter.java b/bonus-business/src/main/java/com/bonus/business/controller/tool/MonthPlanExcelExporter.java index a307d4e..372711d 100644 --- a/bonus-business/src/main/java/com/bonus/business/controller/tool/MonthPlanExcelExporter.java +++ b/bonus-business/src/main/java/com/bonus/business/controller/tool/MonthPlanExcelExporter.java @@ -114,7 +114,7 @@ public class MonthPlanExcelExporter { // 固定列(空值兜底) newRow.put("运检站", item.getInspectionStationName() == null ? "" : item.getInspectionStationName()); newRow.put("姓名", item.getName() == null ? "" : item.getName()); - newRow.put("性别", item.getSex() == null ? "" : item.getSex()); + newRow.put("性别", Objects.equals(item.getSex(), "1") ? "男" : "女"); newRow.put("岗位", item.getPositionName() == null ? "" : item.getPositionName()); newRow.put("人员性质", item.getPersonnelNatureName() == null ? "" : item.getPersonnelNatureName()); newRow.put("分类", item.getPersonnelClassificationName() == null ? "" : item.getPersonnelClassificationName()); diff --git a/bonus-business/src/main/java/com/bonus/digital/dao/DayPlanVo.java b/bonus-business/src/main/java/com/bonus/digital/dao/DayPlanVo.java index f6bc13e..8657018 100644 --- a/bonus-business/src/main/java/com/bonus/digital/dao/DayPlanVo.java +++ b/bonus-business/src/main/java/com/bonus/digital/dao/DayPlanVo.java @@ -203,6 +203,15 @@ public class DayPlanVo { * 结束日期 */ private String endDate; + /** + * 实际投入高空分包 + */ + private String actualHighSub; + + /** + * 实际投入地面分包 + */ + private String actualGroundSub; // 拟投入高处作业人员(data_source=2) private String proposedHighPersonnelNames; // 姓名拼接 diff --git a/bonus-business/src/main/java/com/bonus/digital/dao/ProposedPersonnelVo.java b/bonus-business/src/main/java/com/bonus/digital/dao/ProposedPersonnelVo.java index 1ac94d0..654e0a8 100644 --- a/bonus-business/src/main/java/com/bonus/digital/dao/ProposedPersonnelVo.java +++ b/bonus-business/src/main/java/com/bonus/digital/dao/ProposedPersonnelVo.java @@ -1,37 +1,43 @@ package com.bonus.digital.dao; -import io.swagger.models.auth.In; import lombok.Data; - /** + * 拟投入人员值对象(VO)类 + * 用于封装拟投入人员相关的数据信息 + * * @author 马三炮 * @date 2025/12/26 */ -@Data +@Data // Lombok注解,自动生成getter、setter等方法 public class ProposedPersonnelVo { /** * 拟投入人员id + * 唯一标识一条拟投入人员记录 */ private Integer proposedPersonnelId; /** * 日计划id + * 关联到具体的日计划 */ private Integer dayPlanId; /** * 人员所属 + * 表示人员所属的检查站点名称 */ private String inspectionStationName; /** * 人员id + * 系统中人员的唯一标识 */ private Integer personnelId; /** * 姓名 + * 人员的实际姓名 */ private String name; @@ -41,4 +47,15 @@ public class ProposedPersonnelVo { * */ private String dataSource; + + /** + * 人员分类id + */ + private int personnelClassificationId; + + /** + * 人员分类名称 + */ + private String personnelClassificationName; + } diff --git a/bonus-business/src/main/java/com/bonus/digital/dao/WorkloadVo.java b/bonus-business/src/main/java/com/bonus/digital/dao/WorkloadVo.java index ac7e537..d521426 100644 --- a/bonus-business/src/main/java/com/bonus/digital/dao/WorkloadVo.java +++ b/bonus-business/src/main/java/com/bonus/digital/dao/WorkloadVo.java @@ -48,4 +48,14 @@ public class WorkloadVo { * 结算单价(元) */ private int settlementUnitPrice; + + /** + * 完成率 + */ + private String completionRate; + + /** + * 实际工作量 + */ + private String actualWorkloadNum; } diff --git a/bonus-business/src/main/java/com/bonus/digital/mapper/MonthlyPlanMapper.java b/bonus-business/src/main/java/com/bonus/digital/mapper/MonthlyPlanMapper.java index 34c9eac..f54492e 100644 --- a/bonus-business/src/main/java/com/bonus/digital/mapper/MonthlyPlanMapper.java +++ b/bonus-business/src/main/java/com/bonus/digital/mapper/MonthlyPlanMapper.java @@ -64,7 +64,7 @@ public interface MonthlyPlanMapper { /** * 删除工作量信息 */ - void delWorkload(MonthlyPlanVo monthlyPlanVo); + void delWorkload(WorkloadVo workloadVo); /** * 修改月计划 diff --git a/bonus-business/src/main/java/com/bonus/digital/service/impl/DayPlanServiceImpl.java b/bonus-business/src/main/java/com/bonus/digital/service/impl/DayPlanServiceImpl.java index 9f17290..e305a7b 100644 --- a/bonus-business/src/main/java/com/bonus/digital/service/impl/DayPlanServiceImpl.java +++ b/bonus-business/src/main/java/com/bonus/digital/service/impl/DayPlanServiceImpl.java @@ -58,13 +58,13 @@ public class DayPlanServiceImpl implements DayPlanService { dayPlanMapper.delProposedPersonnel(dayPlanVo); dayPlanMapper.addProposedPersonnelList(proposedPersonnelList); } - + WorkloadVo workloadVo = new WorkloadVo(); + workloadVo.setPlanId(dayPlanVo.getDayPlanId()); + workloadVo.setDataSource("1"); + monthlyPlanMapper.delWorkload(workloadVo); //保存工作量信息 List workloadVoList = dayPlanVo.getWorkloadList(); if (workloadVoList != null && !workloadVoList.isEmpty()) { - MonthlyPlanVo monthlyPlanVo = new MonthlyPlanVo(); - monthlyPlanVo.setMonthlyPlanId(dayPlanVo.getMonthlyPlanId()); - monthlyPlanMapper.delWorkload(monthlyPlanVo); for (WorkloadVo w : workloadVoList) { w.setPlanId(dayPlanVo.getDayPlanId()); w.setDataSource("1"); @@ -140,10 +140,16 @@ public class DayPlanServiceImpl implements DayPlanService { if (res != null ) { List proposedPersonnelList =dayPlanMapper.getProposedPersonnelList(res); res.setProposedPersonnelList(proposedPersonnelList); + //先看日计划是否编辑,没有编辑获取月计划的工作量,编辑了就获取日计划的工作量 WorkloadVo workloadVo = new WorkloadVo(); workloadVo.setPlanId(res.getDayPlanId()); workloadVo.setDataSource("1"); List workloadVoList = workloadCategoryMapper.getWorkloadList(workloadVo); + if (workloadVoList == null || workloadVoList.isEmpty()) { + workloadVo.setPlanId(res.getMonthlyPlanId()); + workloadVo.setDataSource("0"); + workloadVoList = workloadCategoryMapper.getWorkloadList(workloadVo); + } res.setWorkloadList(workloadVoList); } return res; diff --git a/bonus-business/src/main/java/com/bonus/digital/service/impl/MonthlyPlanServiceImpl.java b/bonus-business/src/main/java/com/bonus/digital/service/impl/MonthlyPlanServiceImpl.java index 69beab9..edf9fbd 100644 --- a/bonus-business/src/main/java/com/bonus/digital/service/impl/MonthlyPlanServiceImpl.java +++ b/bonus-business/src/main/java/com/bonus/digital/service/impl/MonthlyPlanServiceImpl.java @@ -104,7 +104,10 @@ public class MonthlyPlanServiceImpl implements MonthlyPlanService { return 2; } monthlyPlanMapper.delPersonnelArrangement(monthlyPlanVo); - monthlyPlanMapper.delWorkload(monthlyPlanVo); + WorkloadVo workloadVo = new WorkloadVo(); + workloadVo.setPlanId(monthlyPlanVo.getMonthlyPlanId()); + workloadVo.setDataSource("0"); + monthlyPlanMapper.delWorkload(workloadVo); return monthlyPlanMapper.delMonthlyPlanList(monthlyPlanVo); } @@ -119,7 +122,10 @@ public class MonthlyPlanServiceImpl implements MonthlyPlanService { monthlyPlanVo.setUpdateTime(new Date()); int res = monthlyPlanMapper.updateMonthlyPlan(monthlyPlanVo); monthlyPlanMapper.delPersonnelArrangement(monthlyPlanVo); - monthlyPlanMapper.delWorkload(monthlyPlanVo); + WorkloadVo workloadVo = new WorkloadVo(); + workloadVo.setPlanId(monthlyPlanVo.getMonthlyPlanId()); + workloadVo.setDataSource("0"); + monthlyPlanMapper.delWorkload(workloadVo); //保存人员安排信息 List personnelArrangementList = monthlyPlanVo.getPersonnelArrangementList(); for (PersonnelArrangementVo p : personnelArrangementList) { diff --git a/bonus-business/src/main/resources/mapper/DayPlanMapper.xml b/bonus-business/src/main/resources/mapper/DayPlanMapper.xml index 2cc9393..0c9aa38 100644 --- a/bonus-business/src/main/resources/mapper/DayPlanMapper.xml +++ b/bonus-business/src/main/resources/mapper/DayPlanMapper.xml @@ -115,6 +115,8 @@ update_user = #{updateUser}, status = #{status}, risk_level = #{riskLevel}, + actual_high_sub = #{actualHighSub}, + actual_ground_sub = #{actualGroundSub}, WHERE day_plan_id = #{dayPlanId} @@ -157,6 +159,8 @@ tdp.status AS status, tdp.day_plan_type AS dayPlanType, tdp.risk_level AS riskLevel, + tdp.actual_high_sub AS actualHighSub, + tdp.actual_ground_sub AS actualGroundSub, tmp.inspection_station_name AS inspectionStationName, tpm.plan_major_name AS planMajorName, tmp.project_name AS projectName, @@ -216,8 +220,12 @@ ORDER BY tmp.inspection_station_name ASC; diff --git a/bonus-business/src/main/resources/mapper/WorkloadCategoryMapper.xml b/bonus-business/src/main/resources/mapper/WorkloadCategoryMapper.xml index 8d4d42d..0b0b57f 100644 --- a/bonus-business/src/main/resources/mapper/WorkloadCategoryMapper.xml +++ b/bonus-business/src/main/resources/mapper/WorkloadCategoryMapper.xml @@ -43,7 +43,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"