From 9e61dfb5c1a05fd36c510615821a8e044b092258 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Thu, 8 Jan 2026 16:27:25 +0800 Subject: [PATCH 01/20] =?UTF-8?q?=E5=B2=97=E4=BD=8D=E5=A4=84=E7=90=86?= =?UTF-8?q?=E3=80=81=E5=9F=B9=E8=AE=AD=E5=AE=89=E6=8E=92=E3=80=81=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E7=B1=BB=E5=9E=8B=E3=80=81=E5=9F=B9=E8=AE=AD=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E6=A8=A1=E6=9D=BF=E3=80=81=E5=B2=97=E4=BD=8D=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E7=BB=B4=E6=8A=A4=E3=80=81=E5=B2=97=E4=BD=8D=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E7=BB=B4=E6=8A=A4=E8=A1=A8=E7=BB=93=E6=9E=84=E5=88=9B?= =?UTF-8?q?=E5=BB=BAsql+=E9=80=86=E5=90=91=E4=BB=A3=E7=A0=81=E7=94=9F?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/CertificateMaintenanceEntity.java | 65 ++++ .../pojo/entity/CertificateTypeEntity.java | 47 +++ .../pojo/entity/CultivateDetailEntity.java | 70 ++++ .../entity/EquipmentMaintenanceEntity.java | 55 +++ .../pojo/entity/PostHandleEntity.java | 145 +++++++ .../pojo/entity/TrainingPlanEntity.java | 62 +++ .../excel/CertificateMaintenanceExcel.java | 76 ++++ .../pojo/excel/CertificateTypeExcel.java | 58 +++ .../pojo/excel/CultivateDetailExcel.java | 82 ++++ .../pojo/excel/EquipmentMaintenanceExcel.java | 64 ++++ .../pojo/excel/PostHandleExcel.java | 172 +++++++++ .../pojo/excel/TrainingPlanExcel.java | 76 ++++ .../pojo/request/PostHandleQuery.java | 60 +++ .../pojo/vo/CertificateMaintenanceVO.java | 21 + .../pojo/vo/CertificateTypeVO.java | 21 + .../pojo/vo/CultivateDetailVO.java | 21 + .../pojo/vo/EquipmentMaintenanceVO.java | 21 + .../jobTransfer/pojo/vo/PostHandleVO.java | 29 ++ .../jobTransfer/pojo/vo/TrainingPlanVO.java | 21 + .../CertificateMaintenanceController.java | 128 +++++++ .../controller/CertificateTypeController.java | 128 +++++++ .../controller/CultivateDetailController.java | 128 +++++++ .../EquipmentMaintenanceController.java | 128 +++++++ .../controller/PostHandleController.java | 142 +++++++ .../controller/TrainingPlanController.java | 134 +++++++ .../mapper/CertificateMaintenanceMapper.java | 39 ++ .../mapper/CertificateMaintenanceMapper.xml | 40 ++ .../mapper/CertificateTypeMapper.java | 39 ++ .../mapper/CertificateTypeMapper.xml | 36 ++ .../mapper/CultivateDetailMapper.java | 39 ++ .../mapper/CultivateDetailMapper.xml | 40 ++ .../mapper/EquipmentMaintenanceMapper.java | 39 ++ .../mapper/EquipmentMaintenanceMapper.xml | 38 ++ .../jobTransfer/mapper/PostHandleMapper.java | 49 +++ .../jobTransfer/mapper/PostHandleMapper.xml | 133 +++++++ .../mapper/TrainingPlanMapper.java | 39 ++ .../jobTransfer/mapper/TrainingPlanMapper.xml | 38 ++ .../ICertificateMaintenanceService.java | 37 ++ .../service/ICertificateTypeService.java | 37 ++ .../service/ICultivateDetailService.java | 37 ++ .../service/IEquipmentMaintenanceService.java | 37 ++ .../service/IPostHandleService.java | 38 ++ .../service/ITrainingPlanService.java | 37 ++ .../CertificateMaintenanceServiceImpl.java | 39 ++ .../impl/CertificateTypeServiceImpl.java | 39 ++ .../impl/CultivateDetailServiceImpl.java | 39 ++ .../impl/EquipmentMaintenanceServiceImpl.java | 39 ++ .../service/impl/PostHandleServiceImpl.java | 46 +++ .../service/impl/TrainingPlanServiceImpl.java | 51 +++ .../CertificateMaintenanceWrapper.java | 35 ++ .../wrapper/CertificateTypeWrapper.java | 35 ++ .../wrapper/CultivateDetailWrapper.java | 35 ++ .../wrapper/EquipmentMaintenanceWrapper.java | 35 ++ .../wrapper/PostHandleWrapper.java | 44 +++ .../wrapper/TrainingPlanWrapper.java | 35 ++ doc/sql/mes/increase-260108.sql | 359 ++++++++++++++++++ 56 files changed, 3577 insertions(+) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateMaintenanceEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateTypeEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/EquipmentMaintenanceEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/TrainingPlanEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateMaintenanceExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateTypeExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CultivateDetailExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/EquipmentMaintenanceExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/TrainingPlanExcel.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/PostHandleQuery.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateTypeVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/TrainingPlanVO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateTypeController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateTypeService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ITrainingPlanService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateTypeServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/TrainingPlanServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateMaintenanceWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateTypeWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CultivateDetailWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/EquipmentMaintenanceWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/PostHandleWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/TrainingPlanWrapper.java create mode 100644 doc/sql/mes/increase-260108.sql diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateMaintenanceEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateMaintenanceEntity.java new file mode 100644 index 00000000..0b8b4a4a --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateMaintenanceEntity.java @@ -0,0 +1,65 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 证书维护 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_CERTIFICATE_MAINTENANCE") +@Schema(description = "CertificateMaintenance对象") +@EqualsAndHashCode(callSuper = true) +public class CertificateMaintenanceEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @Schema(description = "岗位处理ID") + private Long phId; + /** + * 证书类型ID + */ + @Schema(description = "证书类型ID") + private Long certificateId; + /** + * 证书编号 + */ + @Schema(description = "证书编号") + private String certificateCode; + /** + * 证书日期 + */ + @Schema(description = "证书日期") + private Date certificateDate; + /** + * 适航日期 + */ + @Schema(description = "适航日期") + private Date airworthinessDate; + /** + * 宇航日期 + */ + @Schema(description = "宇航日期") + private Date astronautDate; + /** + * 维护状态(1正常,2到期,3离职) + */ + @Schema(description = "维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateTypeEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateTypeEntity.java new file mode 100644 index 00000000..09ca27d6 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CertificateTypeEntity.java @@ -0,0 +1,47 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 证书类型 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_CERTIFICATE_TYPE") +@Schema(description = "CertificateType对象") +@EqualsAndHashCode(callSuper = true) +public class CertificateTypeEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 证书名称 + */ + @Schema(description = "证书名称") + private String name; + /** + * 证书有效期 + */ + @Schema(description = "证书有效期") + private Short validityPeriod; + /** + * 适航有效期 + */ + @Schema(description = "适航有效期") + private Short airworthinessValidityPeriod; + /** + * 宇航有效期 + */ + @Schema(description = "宇航有效期") + private Short astronautValidityPeriod; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java new file mode 100644 index 00000000..f1b083f6 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java @@ -0,0 +1,70 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 培训安排 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_CULTIVATE_DETAIL") +@Schema(description = "CultivateDetail对象") +@EqualsAndHashCode(callSuper = true) +public class CultivateDetailEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @Schema(description = "岗位处理ID") + private Long phId; + /** + * 培训类型(1实习,2转岗,3下岗) + */ + @Schema(description = "培训类型(1实习,2转岗,3下岗)") + private Short type; + /** + * 培训模板ID + */ + @Schema(description = "培训模板ID") + private Long planId; + /** + * 培训师ID + */ + @Schema(description = "培训师ID") + private Long teacherId; + /** + * 培训师 + */ + @Schema(description = "培训师") + private String teacherName; + /** + * 培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成) + */ + @Schema(description = "培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成)") + private Short caStatus; + /** + * 下发时间 + */ + @Schema(description = "下发时间") + private Date distributeTime; + /** + * 附件链接 + */ + @Schema(description = "附件链接") + private String attachLink; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/EquipmentMaintenanceEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/EquipmentMaintenanceEntity.java new file mode 100644 index 00000000..82932104 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/EquipmentMaintenanceEntity.java @@ -0,0 +1,55 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 岗位设备维护 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_EQUIPMENT_MAINTENANCE") +@Schema(description = "EquipmentMaintenance对象") +@EqualsAndHashCode(callSuper = true) +public class EquipmentMaintenanceEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @Schema(description = "岗位处理ID") + private Long phId; + /** + * 设备ID + */ + @Schema(description = "设备ID") + private Long equipmentId; + /** + * 设备有效期 + */ + @Schema(description = "设备有效期") + private Integer equipmentValidityPeriod; + /** + * 设备日期 + */ + @Schema(description = "设备日期") + private Date equipmentDate; + /** + * 维护状态(1正常,2到期,3离职) + */ + @Schema(description = "维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java new file mode 100644 index 00000000..707e37d2 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java @@ -0,0 +1,145 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 岗位处理 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_POST_HANDLE") +@Schema(description = "PostHandle对象") +@EqualsAndHashCode(callSuper = true) +public class PostHandleEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 用户ID + */ + @Schema(description = "用户ID") + private Long userId; + /** + * 名称 + */ + @Schema(description = "名称") + private String name; + /** + * 民族 + */ + @Schema(description = "民族") + private String nation; + /** + * 年龄 + */ + @Schema(description = "年龄") + private Short age; + /** + * 身份证号码 + */ + @Schema(description = "身份证号码") + private String idCard; + /** + * 籍贯 + */ + @Schema(description = "籍贯") + private String nativePlace; + /** + * 班组ID + */ + @Schema(description = "班组ID") + private Long deptId; + /** + * 所属岗位 + */ + @Schema(description = "所属岗位") + private String station; + /** + * 出生日期 + */ + @Schema(description = "出生日期") + private Date dataBirth; + /** + * 政治面貌 + */ + @Schema(description = "政治面貌") + private String face; + /** + * 婚姻状态(0未婚,1已婚) + */ + @Schema(description = "婚姻状态(0未婚,1已婚)") + private String marriage; + /** + * 毕业院校 + */ + @Schema(description = "毕业院校") + private String school; + /** + * 所学专业 + */ + @Schema(description = "所学专业") + private String major; + /** + * 最高学历 + */ + @Schema(description = "最高学历") + private String education; + /** + * 毕业时间 + */ + @Schema(description = "毕业时间") + private Date endDate; + /** + * 用工类型 + */ + @Schema(description = "用工类型") + private Short staffType; + /** + * 参加工作时间 + */ + @Schema(description = "参加工作时间") + private Date joinJobDate; + /** + * 技能等级 + */ + @Schema(description = "技能等级") + private Short skill; + /** + * 任现职时间 + */ + @Schema(description = "任现职时间") + private Date inJobDate; + /** + * 合同到期 + */ + @Schema(description = "合同到期") + private Date conExpDate; + /** + * 家庭住址 + */ + @Schema(description = "家庭住址") + private String address; + /** + * 转岗时间 + */ + @Schema(description = "转岗时间") + private Date toNewJob; + /** + * 1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格 + */ + @Schema(description = "1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格") + private Short phStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/TrainingPlanEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/TrainingPlanEntity.java new file mode 100644 index 00000000..1dec4736 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/TrainingPlanEntity.java @@ -0,0 +1,62 @@ +package org.springblade.desk.jobTransfer.pojo.entity; + +import lombok.Data; +import io.swagger.v3.oas.annotations.media.Schema; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; + +/** + * 培训计划模板 实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@TableName("MES_TRAINING_PLAN") +@Schema(description = "TrainingPlan对象") +@EqualsAndHashCode(callSuper = true) +public class TrainingPlanEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 培训计划名称 + */ + @Schema(description = "培训计划名称") + private String name; + /** + * 培训周期(天) + */ + @Schema(description = "培训周期(天)") + private Integer cycle; + /** + * 培训师ID + */ + @Schema(description = "培训师ID") + private Long teacherId; + /** + * 培训师名称 + */ + @Schema(description = "培训师名称") + private String teacherName; + /** + * 预警周期(天) + */ + @Schema(description = "预警周期(天)") + private Integer earlyWarningDay; + /** + * 备注 + */ + @Schema(description = "备注") + private String memo; + /** + * 附件链接 + */ + @Schema(description = "附件链接") + private String attachLink; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateMaintenanceExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateMaintenanceExcel.java new file mode 100644 index 00000000..50c40010 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateMaintenanceExcel.java @@ -0,0 +1,76 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 证书维护 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class CertificateMaintenanceExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @ColumnWidth(20) + @ExcelProperty("岗位处理ID") + private Long phId; + /** + * 证书类型ID + */ + @ColumnWidth(20) + @ExcelProperty("证书类型ID") + private Long certificateId; + /** + * 证书编号 + */ + @ColumnWidth(20) + @ExcelProperty("证书编号") + private String certificateCode; + /** + * 证书日期 + */ + @ColumnWidth(20) + @ExcelProperty("证书日期") + private Date certificateDate; + /** + * 适航日期 + */ + @ColumnWidth(20) + @ExcelProperty("适航日期") + private Date airworthinessDate; + /** + * 宇航日期 + */ + @ColumnWidth(20) + @ExcelProperty("宇航日期") + private Date astronautDate; + /** + * 维护状态(1正常,2到期,3离职) + */ + @ColumnWidth(20) + @ExcelProperty("维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateTypeExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateTypeExcel.java new file mode 100644 index 00000000..bd5a9703 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CertificateTypeExcel.java @@ -0,0 +1,58 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 证书类型 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class CertificateTypeExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 证书名称 + */ + @ColumnWidth(20) + @ExcelProperty("证书名称") + private String name; + /** + * 证书有效期 + */ + @ColumnWidth(20) + @ExcelProperty("证书有效期") + private Short validityPeriod; + /** + * 适航有效期 + */ + @ColumnWidth(20) + @ExcelProperty("适航有效期") + private Short airworthinessValidityPeriod; + /** + * 宇航有效期 + */ + @ColumnWidth(20) + @ExcelProperty("宇航有效期") + private Short astronautValidityPeriod; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CultivateDetailExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CultivateDetailExcel.java new file mode 100644 index 00000000..fd5fd1dd --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/CultivateDetailExcel.java @@ -0,0 +1,82 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 培训安排 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class CultivateDetailExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @ColumnWidth(20) + @ExcelProperty("岗位处理ID") + private Long phId; + /** + * 培训类型(1实习,2转岗,3下岗) + */ + @ColumnWidth(20) + @ExcelProperty("培训类型(1实习,2转岗,3下岗)") + private Short type; + /** + * 培训模板ID + */ + @ColumnWidth(20) + @ExcelProperty("培训模板ID") + private Long planId; + /** + * 培训师ID + */ + @ColumnWidth(20) + @ExcelProperty("培训师ID") + private Long teacherId; + /** + * 培训师 + */ + @ColumnWidth(20) + @ExcelProperty("培训师") + private String teacherName; + /** + * 培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成) + */ + @ColumnWidth(20) + @ExcelProperty("培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成)") + private Short caStatus; + /** + * 下发时间 + */ + @ColumnWidth(20) + @ExcelProperty("下发时间") + private Date distributeTime; + /** + * 附件链接 + */ + @ColumnWidth(20) + @ExcelProperty("附件链接") + private String attachLink; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/EquipmentMaintenanceExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/EquipmentMaintenanceExcel.java new file mode 100644 index 00000000..cf14166c --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/EquipmentMaintenanceExcel.java @@ -0,0 +1,64 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 岗位设备维护 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class EquipmentMaintenanceExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 岗位处理ID + */ + @ColumnWidth(20) + @ExcelProperty("岗位处理ID") + private Long phId; + /** + * 设备ID + */ + @ColumnWidth(20) + @ExcelProperty("设备ID") + private Long equipmentId; + /** + * 设备有效期 + */ + @ColumnWidth(20) + @ExcelProperty("设备有效期") + private Integer equipmentValidityPeriod; + /** + * 设备日期 + */ + @ColumnWidth(20) + @ExcelProperty("设备日期") + private Date equipmentDate; + /** + * 维护状态(1正常,2到期,3离职) + */ + @ColumnWidth(20) + @ExcelProperty("维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleExcel.java new file mode 100644 index 00000000..f022c9fc --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleExcel.java @@ -0,0 +1,172 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 岗位处理 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class PostHandleExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 用户ID + */ + @ColumnWidth(20) + @ExcelProperty("用户ID") + private Long userId; + /** + * 名称 + */ + @ColumnWidth(20) + @ExcelProperty("名称") + private String name; + /** + * 民族 + */ + @ColumnWidth(20) + @ExcelProperty("民族") + private String nation; + /** + * 年龄 + */ + @ColumnWidth(20) + @ExcelProperty("年龄") + private Short age; + /** + * 身份证号码 + */ + @ColumnWidth(20) + @ExcelProperty("身份证号码") + private String idCard; + /** + * 籍贯 + */ + @ColumnWidth(20) + @ExcelProperty("籍贯") + private String nativePlace; + /** + * 班组ID + */ + @ColumnWidth(20) + @ExcelProperty("班组ID") + private Long deptId; + /** + * 所属岗位 + */ + @ColumnWidth(20) + @ExcelProperty("所属岗位") + private String station; + /** + * 出生日期 + */ + @ColumnWidth(20) + @ExcelProperty("出生日期") + private Date dataBirth; + /** + * 政治面貌 + */ + @ColumnWidth(20) + @ExcelProperty("政治面貌") + private String face; + /** + * 婚姻状态(0未婚,1已婚) + */ + @ColumnWidth(20) + @ExcelProperty("婚姻状态(0未婚,1已婚)") + private String marriage; + /** + * 毕业院校 + */ + @ColumnWidth(20) + @ExcelProperty("毕业院校") + private String school; + /** + * 所学专业 + */ + @ColumnWidth(20) + @ExcelProperty("所学专业") + private String major; + /** + * 最高学历 + */ + @ColumnWidth(20) + @ExcelProperty("最高学历") + private String education; + /** + * 毕业时间 + */ + @ColumnWidth(20) + @ExcelProperty("毕业时间") + private Date endDate; + /** + * 用工类型 + */ + @ColumnWidth(20) + @ExcelProperty("用工类型") + private Short staffType; + /** + * 参加工作时间 + */ + @ColumnWidth(20) + @ExcelProperty("参加工作时间") + private Date joinJobDate; + /** + * 技能等级 + */ + @ColumnWidth(20) + @ExcelProperty("技能等级") + private Short skill; + /** + * 任现职时间 + */ + @ColumnWidth(20) + @ExcelProperty("任现职时间") + private Date inJobDate; + /** + * 合同到期 + */ + @ColumnWidth(20) + @ExcelProperty("合同到期") + private Date conExpDate; + /** + * 家庭住址 + */ + @ColumnWidth(20) + @ExcelProperty("家庭住址") + private String address; + /** + * 转岗时间 + */ + @ColumnWidth(20) + @ExcelProperty("转岗时间") + private Date toNewJob; + /** + * 1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格 + */ + @ColumnWidth(20) + @ExcelProperty("1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格") + private Short phStatus; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/TrainingPlanExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/TrainingPlanExcel.java new file mode 100644 index 00000000..97732d25 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/TrainingPlanExcel.java @@ -0,0 +1,76 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; + +import java.io.Serializable; +import java.io.Serial; + + +/** + * 培训计划模板 Excel实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class TrainingPlanExcel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 培训计划名称 + */ + @ColumnWidth(20) + @ExcelProperty("培训计划名称") + private String name; + /** + * 培训周期(天) + */ + @ColumnWidth(20) + @ExcelProperty("培训周期(天)") + private Integer cycle; + /** + * 培训师ID + */ + @ColumnWidth(20) + @ExcelProperty("培训师ID") + private Long teacherId; + /** + * 培训师名称 + */ + @ColumnWidth(20) + @ExcelProperty("培训师名称") + private String teacherName; + /** + * 预警周期(天) + */ + @ColumnWidth(20) + @ExcelProperty("预警周期(天)") + private Integer earlyWarningDay; + /** + * 备注 + */ + @ColumnWidth(20) + @ExcelProperty("备注") + private String memo; + /** + * 附件链接 + */ + @ColumnWidth(20) + @ExcelProperty("附件链接") + private String attachLink; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/PostHandleQuery.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/PostHandleQuery.java new file mode 100644 index 00000000..2354f055 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/PostHandleQuery.java @@ -0,0 +1,60 @@ +package org.springblade.desk.jobTransfer.pojo.request; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.enums.ParameterIn; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.util.Date; + +/** + * 人员岗位管理检索请求入参 + */ +@Data +public class PostHandleQuery { + + /** + * 所属班组 + */ + @Schema(description = "所属班组") + private Long deptId; + /** + * 工号 + */ + @Schema(description = "工号") + private String userCode; + /** + * 姓名 + */ + @Schema(description = "姓名") + private String name; + /** + * 所属岗位 + */ + @Schema(description = "所属岗位") + private String station; + /** + * 技能等级 + */ + @Schema(description = "技能等级") + private Short skill; + /** + * 状态 + */ + @Schema(description = "状态") + private Integer phStatus; + /** + * 入职时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date inJobDate; + /** + * 合同到期日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date conExpDate; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java new file mode 100644 index 00000000..fd675c8a --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 证书维护 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class CertificateMaintenanceVO extends CertificateMaintenanceEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateTypeVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateTypeVO.java new file mode 100644 index 00000000..ba85252d --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateTypeVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 证书类型 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class CertificateTypeVO extends CertificateTypeEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java new file mode 100644 index 00000000..5490bc4e --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 培训安排 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class CultivateDetailVO extends CultivateDetailEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java new file mode 100644 index 00000000..bed9c1d3 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 岗位设备维护 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class EquipmentMaintenanceVO extends EquipmentMaintenanceEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java new file mode 100644 index 00000000..054a18ad --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java @@ -0,0 +1,29 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 岗位处理 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class PostHandleVO extends PostHandleEntity { + @Serial + private static final long serialVersionUID = 1L; + + //用户名 + private String userName; + + //用户工号 + private String userCode; + + //班组名 + private String deptName; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/TrainingPlanVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/TrainingPlanVO.java new file mode 100644 index 00000000..03aaf9ca --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/TrainingPlanVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 培训计划模板 视图实体类 + * + * @author qyl + * @since 2026-01-08 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class TrainingPlanVO extends TrainingPlanEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java new file mode 100644 index 00000000..ab5ffadf --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java @@ -0,0 +1,128 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; +import org.springblade.desk.jobTransfer.wrapper.CertificateMaintenanceWrapper; +import org.springblade.desk.jobTransfer.service.ICertificateMaintenanceService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 证书维护 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/certificateMaintenance") +@Tag(name = "证书维护", description = "证书维护接口") +public class CertificateMaintenanceController extends BladeController { + + private final ICertificateMaintenanceService certificateMaintenanceService; + + /** + * 证书维护 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入certificateMaintenance") + public R detail(CertificateMaintenanceEntity certificateMaintenance) { + CertificateMaintenanceEntity detail = certificateMaintenanceService.getOne(Condition.getQueryWrapper(certificateMaintenance)); + return R.data(CertificateMaintenanceWrapper.build().entityVO(detail)); + } + + /** + * 证书维护 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入certificateMaintenance") + public R> page(CertificateMaintenanceVO certificateMaintenance, Query query) { + IPage pages = certificateMaintenanceService.selectCertificateMaintenancePage(Condition.getPage(query), certificateMaintenance); + return R.data(pages); + } + + /** + * 证书维护 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入certificateMaintenance") + public R save(@Valid @RequestBody CertificateMaintenanceEntity certificateMaintenance) { + return R.status(certificateMaintenanceService.save(certificateMaintenance)); + } + + /** + * 证书维护 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入certificateMaintenance") + public R update(@Valid @RequestBody CertificateMaintenanceEntity certificateMaintenance) { + return R.status(certificateMaintenanceService.updateById(certificateMaintenance)); + } + + /** + * 证书维护 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入certificateMaintenance") + public R submit(@Valid @RequestBody CertificateMaintenanceEntity certificateMaintenance) { + return R.status(certificateMaintenanceService.saveOrUpdate(certificateMaintenance)); + } + + /** + * 证书维护 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(certificateMaintenanceService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-certificateMaintenance") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入certificateMaintenance") + public void exportCertificateMaintenance(@Parameter(hidden = true) @RequestParam Map certificateMaintenance, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(certificateMaintenance, CertificateMaintenanceEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(CertificateMaintenance::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(CertificateMaintenanceEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = certificateMaintenanceService.exportCertificateMaintenance(queryWrapper); + ExcelUtil.export(response, "证书维护数据" + DateUtil.time(), "证书维护数据表", list, CertificateMaintenanceExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateTypeController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateTypeController.java new file mode 100644 index 00000000..e3542503 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateTypeController.java @@ -0,0 +1,128 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateTypeExcel; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateTypeVO; +import org.springblade.desk.jobTransfer.wrapper.CertificateTypeWrapper; +import org.springblade.desk.jobTransfer.service.ICertificateTypeService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 证书类型 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/certificateType") +@Tag(name = "证书类型", description = "证书类型接口") +public class CertificateTypeController extends BladeController { + + private final ICertificateTypeService certificateTypeService; + + /** + * 证书类型 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入certificateType") + public R detail(CertificateTypeEntity certificateType) { + CertificateTypeEntity detail = certificateTypeService.getOne(Condition.getQueryWrapper(certificateType)); + return R.data(CertificateTypeWrapper.build().entityVO(detail)); + } + + /** + * 证书类型 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入certificateType") + public R> page(CertificateTypeVO certificateType, Query query) { + IPage pages = certificateTypeService.selectCertificateTypePage(Condition.getPage(query), certificateType); + return R.data(pages); + } + + /** + * 证书类型 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入certificateType") + public R save(@Valid @RequestBody CertificateTypeEntity certificateType) { + return R.status(certificateTypeService.save(certificateType)); + } + + /** + * 证书类型 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入certificateType") + public R update(@Valid @RequestBody CertificateTypeEntity certificateType) { + return R.status(certificateTypeService.updateById(certificateType)); + } + + /** + * 证书类型 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入certificateType") + public R submit(@Valid @RequestBody CertificateTypeEntity certificateType) { + return R.status(certificateTypeService.saveOrUpdate(certificateType)); + } + + /** + * 证书类型 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(certificateTypeService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-certificateType") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入certificateType") + public void exportCertificateType(@Parameter(hidden = true) @RequestParam Map certificateType, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(certificateType, CertificateTypeEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(CertificateType::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(CertificateTypeEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = certificateTypeService.exportCertificateType(queryWrapper); + ExcelUtil.export(response, "证书类型数据" + DateUtil.time(), "证书类型数据表", list, CertificateTypeExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java new file mode 100644 index 00000000..2644f031 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java @@ -0,0 +1,128 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; +import org.springblade.desk.jobTransfer.wrapper.CultivateDetailWrapper; +import org.springblade.desk.jobTransfer.service.ICultivateDetailService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 培训安排 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/cultivateDetail") +@Tag(name = "培训安排", description = "培训安排接口") +public class CultivateDetailController extends BladeController { + + private final ICultivateDetailService cultivateDetailService; + + /** + * 培训安排 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入cultivateDetail") + public R detail(CultivateDetailEntity cultivateDetail) { + CultivateDetailEntity detail = cultivateDetailService.getOne(Condition.getQueryWrapper(cultivateDetail)); + return R.data(CultivateDetailWrapper.build().entityVO(detail)); + } + + /** + * 培训安排 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入cultivateDetail") + public R> page(CultivateDetailVO cultivateDetail, Query query) { + IPage pages = cultivateDetailService.selectCultivateDetailPage(Condition.getPage(query), cultivateDetail); + return R.data(pages); + } + + /** + * 培训安排 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入cultivateDetail") + public R save(@Valid @RequestBody CultivateDetailEntity cultivateDetail) { + return R.status(cultivateDetailService.save(cultivateDetail)); + } + + /** + * 培训安排 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入cultivateDetail") + public R update(@Valid @RequestBody CultivateDetailEntity cultivateDetail) { + return R.status(cultivateDetailService.updateById(cultivateDetail)); + } + + /** + * 培训安排 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入cultivateDetail") + public R submit(@Valid @RequestBody CultivateDetailEntity cultivateDetail) { + return R.status(cultivateDetailService.saveOrUpdate(cultivateDetail)); + } + + /** + * 培训安排 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(cultivateDetailService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-cultivateDetail") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入cultivateDetail") + public void exportCultivateDetail(@Parameter(hidden = true) @RequestParam Map cultivateDetail, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(cultivateDetail, CultivateDetailEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(CultivateDetail::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(CultivateDetailEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = cultivateDetailService.exportCultivateDetail(queryWrapper); + ExcelUtil.export(response, "培训安排数据" + DateUtil.time(), "培训安排数据表", list, CultivateDetailExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java new file mode 100644 index 00000000..7994c552 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java @@ -0,0 +1,128 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; +import org.springblade.desk.jobTransfer.wrapper.EquipmentMaintenanceWrapper; +import org.springblade.desk.jobTransfer.service.IEquipmentMaintenanceService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 岗位设备维护 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/equipmentMaintenance") +@Tag(name = "岗位设备维护", description = "岗位设备维护接口") +public class EquipmentMaintenanceController extends BladeController { + + private final IEquipmentMaintenanceService equipmentMaintenanceService; + + /** + * 岗位设备维护 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入equipmentMaintenance") + public R detail(EquipmentMaintenanceEntity equipmentMaintenance) { + EquipmentMaintenanceEntity detail = equipmentMaintenanceService.getOne(Condition.getQueryWrapper(equipmentMaintenance)); + return R.data(EquipmentMaintenanceWrapper.build().entityVO(detail)); + } + + /** + * 岗位设备维护 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入equipmentMaintenance") + public R> page(EquipmentMaintenanceVO equipmentMaintenance, Query query) { + IPage pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenance); + return R.data(pages); + } + + /** + * 岗位设备维护 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入equipmentMaintenance") + public R save(@Valid @RequestBody EquipmentMaintenanceEntity equipmentMaintenance) { + return R.status(equipmentMaintenanceService.save(equipmentMaintenance)); + } + + /** + * 岗位设备维护 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入equipmentMaintenance") + public R update(@Valid @RequestBody EquipmentMaintenanceEntity equipmentMaintenance) { + return R.status(equipmentMaintenanceService.updateById(equipmentMaintenance)); + } + + /** + * 岗位设备维护 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入equipmentMaintenance") + public R submit(@Valid @RequestBody EquipmentMaintenanceEntity equipmentMaintenance) { + return R.status(equipmentMaintenanceService.saveOrUpdate(equipmentMaintenance)); + } + + /** + * 岗位设备维护 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(equipmentMaintenanceService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-equipmentMaintenance") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入equipmentMaintenance") + public void exportEquipmentMaintenance(@Parameter(hidden = true) @RequestParam Map equipmentMaintenance, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(equipmentMaintenance, EquipmentMaintenanceEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(EquipmentMaintenance::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(EquipmentMaintenanceEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = equipmentMaintenanceService.exportEquipmentMaintenance(queryWrapper); + ExcelUtil.export(response, "岗位设备维护数据" + DateUtil.time(), "岗位设备维护数据表", list, EquipmentMaintenanceExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java new file mode 100644 index 00000000..303d6344 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java @@ -0,0 +1,142 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.enums.ParameterIn; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; +import org.springblade.desk.jobTransfer.wrapper.PostHandleWrapper; +import org.springblade.desk.jobTransfer.service.IPostHandleService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 岗位处理 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/postHandle") +@Tag(name = "岗位处理", description = "岗位处理接口") +public class PostHandleController extends BladeController { + + private final IPostHandleService postHandleService; + + /** + * 岗位处理 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入postHandle") + public R detail(PostHandleEntity postHandle) { + PostHandleEntity detail = postHandleService.getOne(Condition.getQueryWrapper(postHandle)); + return R.data(PostHandleWrapper.build().entityVO(detail)); + } + + /** + * 岗位处理 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入postHandle") + @Parameters({ + @Parameter(name = "deptId", description = "所属班组", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "userCode", description = "员工编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "name", description = "姓名", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "station", description = "所属岗位", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "inJobDate", description = "入职时间", in = ParameterIn.QUERY, schema = @Schema(type = "string", format = "date")), + @Parameter(name = "skill", description = "技能等级", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "phStatus", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "conExpDate", description = "合同到期日期", in = ParameterIn.QUERY, schema = @Schema(type = "string", format = "date")), + }) + public R> page(@Parameter(hidden = true) PostHandleQuery postHandleQuery, Query query) { + IPage pages = postHandleService.selectPostHandlePage(Condition.getPage(query), postHandleQuery); + return R.data(pages); + } + + /** + * 岗位处理 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入postHandle") + public R save(@Valid @RequestBody PostHandleEntity postHandle) { + return R.status(postHandleService.save(postHandle)); + } + + /** + * 岗位处理 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入postHandle") + public R update(@Valid @RequestBody PostHandleEntity postHandle) { + return R.status(postHandleService.updateById(postHandle)); + } + + /** + * 岗位处理 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入postHandle") + public R submit(@Valid @RequestBody PostHandleEntity postHandle) { + return R.status(postHandleService.saveOrUpdate(postHandle)); + } + + /** + * 岗位处理 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(postHandleService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-postHandle") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入postHandle") + public void exportPostHandle(@Parameter(hidden = true) @RequestParam Map postHandle, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(postHandle, PostHandleEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(PostHandle::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(PostHandleEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = postHandleService.exportPostHandle(queryWrapper); + ExcelUtil.export(response, "岗位处理数据" + DateUtil.time(), "岗位处理数据表", list, PostHandleExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java new file mode 100644 index 00000000..f991c161 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java @@ -0,0 +1,134 @@ +package org.springblade.desk.jobTransfer.controller; + +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.enums.ParameterIn; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import lombok.AllArgsConstructor; +import jakarta.validation.Valid; + +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.annotation.IsAdmin; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.excel.TrainingPlanExcel; +import org.springframework.web.bind.annotation.*; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import org.springblade.desk.jobTransfer.pojo.vo.TrainingPlanVO; +import org.springblade.desk.jobTransfer.wrapper.TrainingPlanWrapper; +import org.springblade.desk.jobTransfer.service.ITrainingPlanService; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.constant.BladeConstant; + +import java.util.Map; +import java.util.List; + +import jakarta.servlet.http.HttpServletResponse; + +/** + * 培训计划模板 控制器 + * + * @author qyl + * @since 2026-01-08 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/trainingPlan") +@Tag(name = "培训计划模板", description = "培训计划模板接口") +public class TrainingPlanController extends BladeController { + + private final ITrainingPlanService trainingPlanService; + + /** + * 培训计划模板 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入trainingPlan") + public R detail(TrainingPlanEntity trainingPlan) { + TrainingPlanEntity detail = trainingPlanService.getOne(Condition.getQueryWrapper(trainingPlan)); + return R.data(TrainingPlanWrapper.build().entityVO(detail)); + } + + /** + * 培训计划模板 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Parameters({ + @Parameter(name = "name", description = "培训计划名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + }) + @Operation(summary = "分页", description = "传入trainingPlan") + public R> page(@Parameter(hidden = true) TrainingPlanEntity trainingPlan, Query query) { + IPage pages = trainingPlanService.selectTrainingPlanPage(Condition.getPage(query), trainingPlan); + return R.data(TrainingPlanWrapper.build().pageVO(pages)); + } + + /** + * 培训计划模板 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入trainingPlan") + public R save(@Valid @RequestBody TrainingPlanEntity trainingPlan) { + return R.status(trainingPlanService.save(trainingPlan)); + } + + /** + * 培训计划模板 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入trainingPlan") + public R update(@Valid @RequestBody TrainingPlanEntity trainingPlan) { + return R.status(trainingPlanService.updateById(trainingPlan)); + } + + /** + * 培训计划模板 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入trainingPlan") + public R submit(@Valid @RequestBody TrainingPlanEntity trainingPlan) { + return R.status(trainingPlanService.saveOrUpdate(trainingPlan)); + } + + /** + * 培训计划模板 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(trainingPlanService.deleteLogic(Func.toLongList(ids))); + } + + + /** + * 导出数据 + */ + @IsAdmin + @GetMapping("/export-trainingPlan") + @ApiOperationSupport(order = 9) + @Operation(summary = "导出数据", description = "传入trainingPlan") + public void exportTrainingPlan(@Parameter(hidden = true) @RequestParam Map trainingPlan, BladeUser bladeUser, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(trainingPlan, TrainingPlanEntity.class); + //if (!AuthUtil.isAdministrator()) { + // queryWrapper.lambda().eq(TrainingPlan::getTenantId, bladeUser.getTenantId()); + //} + //queryWrapper.lambda().eq(TrainingPlanEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); + List list = trainingPlanService.exportTrainingPlan(queryWrapper); + ExcelUtil.export(response, "培训计划模板数据" + DateUtil.time(), "培训计划模板数据表", list, TrainingPlanExcel.class); + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java new file mode 100644 index 00000000..871ee6f6 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.mapper; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 证书维护 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface CertificateMaintenanceMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param certificateMaintenance 查询参数 + * @return List + */ + List selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCertificateMaintenance(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml new file mode 100644 index 00000000..39a6038e --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.java new file mode 100644 index 00000000..8c322867 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.mapper; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateTypeExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateTypeVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 证书类型 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface CertificateTypeMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param certificateType 查询参数 + * @return List + */ + List selectCertificateTypePage(IPage page, CertificateTypeVO certificateType); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCertificateType(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.xml new file mode 100644 index 00000000..e8d02765 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateTypeMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java new file mode 100644 index 00000000..2ca14dbf --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.mapper; + +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 培训安排 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface CultivateDetailMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param cultivateDetail 查询参数 + * @return List + */ + List selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCultivateDetail(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml new file mode 100644 index 00000000..7ce4430e --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java new file mode 100644 index 00000000..4ddfdc24 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.mapper; + +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 岗位设备维护 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface EquipmentMaintenanceMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param equipmentMaintenance 查询参数 + * @return List + */ + List selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportEquipmentMaintenance(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml new file mode 100644 index 00000000..70a669dc --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.java new file mode 100644 index 00000000..ed153d93 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.java @@ -0,0 +1,49 @@ +package org.springblade.desk.jobTransfer.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; +import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 岗位处理 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface PostHandleMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param postHandle 查询参数 + * @return List + */ + List selectPostHandlePage(IPage page, PostHandleQuery postHandle); + + /** + * 自定义分页连表 + * + * @param page 分页参数 + * @param postHandle 查询参数 + * @return List + */ + List selectPostHandleVOByCondition(IPage page, PostHandleQuery postHandle); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportPostHandle(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.xml new file mode 100644 index 00000000..26252749 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/PostHandleMapper.xml @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.java new file mode 100644 index 00000000..74e8ad84 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.mapper; + +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import org.springblade.desk.jobTransfer.pojo.excel.TrainingPlanExcel; +import org.springblade.desk.jobTransfer.pojo.vo.TrainingPlanVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 培训计划模板 Mapper 接口 + * + * @author qyl + * @since 2026-01-08 + */ +public interface TrainingPlanMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param trainingPlan 查询参数 + * @return List + */ + List selectTrainingPlanPage(IPage page, TrainingPlanEntity trainingPlan); + + + /** + * 获取导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportTrainingPlan(@Param("ew") Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.xml new file mode 100644 index 00000000..9996d23c --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/TrainingPlanMapper.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java new file mode 100644 index 00000000..6df8162a --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java @@ -0,0 +1,37 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 证书维护 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface ICertificateMaintenanceService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param certificateMaintenance 查询参数 + * @return IPage + */ + IPage selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCertificateMaintenance(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateTypeService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateTypeService.java new file mode 100644 index 00000000..e976a6dd --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateTypeService.java @@ -0,0 +1,37 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateTypeExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateTypeVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 证书类型 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface ICertificateTypeService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param certificateType 查询参数 + * @return IPage + */ + IPage selectCertificateTypePage(IPage page, CertificateTypeVO certificateType); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCertificateType(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java new file mode 100644 index 00000000..58806370 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java @@ -0,0 +1,37 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 培训安排 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface ICultivateDetailService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param cultivateDetail 查询参数 + * @return IPage + */ + IPage selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportCultivateDetail(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java new file mode 100644 index 00000000..ebac3f11 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java @@ -0,0 +1,37 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 岗位设备维护 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface IEquipmentMaintenanceService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param equipmentMaintenance 查询参数 + * @return IPage + */ + IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportEquipmentMaintenance(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java new file mode 100644 index 00000000..319d21d7 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java @@ -0,0 +1,38 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; +import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 岗位处理 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface IPostHandleService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param postHandle 查询参数 + * @return IPage + */ + IPage selectPostHandlePage(IPage page, PostHandleQuery postHandle); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportPostHandle(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ITrainingPlanService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ITrainingPlanService.java new file mode 100644 index 00000000..bd0bbacb --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ITrainingPlanService.java @@ -0,0 +1,37 @@ +package org.springblade.desk.jobTransfer.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import org.springblade.desk.jobTransfer.pojo.excel.TrainingPlanExcel; +import org.springblade.desk.jobTransfer.pojo.vo.TrainingPlanVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; + +import java.util.List; + +/** + * 培训计划模板 服务类 + * + * @author qyl + * @since 2026-01-08 + */ +public interface ITrainingPlanService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param trainingPlan 查询参数 + * @return IPage + */ + IPage selectTrainingPlanPage(IPage page, TrainingPlanEntity trainingPlan); + + + /** + * 导出数据 + * + * @param queryWrapper 查询条件 + * @return List + */ + List exportTrainingPlan(Wrapper queryWrapper); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java new file mode 100644 index 00000000..6bab90f5 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; +import org.springblade.desk.jobTransfer.mapper.CertificateMaintenanceMapper; +import org.springblade.desk.jobTransfer.service.ICertificateMaintenanceService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; + +/** + * 证书维护 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class CertificateMaintenanceServiceImpl extends BaseServiceImpl implements ICertificateMaintenanceService { + + @Override + public IPage selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance) { + return page.setRecords(baseMapper.selectCertificateMaintenancePage(page, certificateMaintenance)); + } + + + @Override + public List exportCertificateMaintenance(Wrapper queryWrapper) { + List certificateMaintenanceList = baseMapper.exportCertificateMaintenance(queryWrapper); + //certificateMaintenanceList.forEach(certificateMaintenance -> { + // certificateMaintenance.setTypeName(DictCache.getValue(DictEnum.YES_NO, CertificateMaintenance.getType())); + //}); + return certificateMaintenanceList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateTypeServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateTypeServiceImpl.java new file mode 100644 index 00000000..a6bc9570 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateTypeServiceImpl.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CertificateTypeExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateTypeVO; +import org.springblade.desk.jobTransfer.mapper.CertificateTypeMapper; +import org.springblade.desk.jobTransfer.service.ICertificateTypeService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; + +/** + * 证书类型 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class CertificateTypeServiceImpl extends BaseServiceImpl implements ICertificateTypeService { + + @Override + public IPage selectCertificateTypePage(IPage page, CertificateTypeVO certificateType) { + return page.setRecords(baseMapper.selectCertificateTypePage(page, certificateType)); + } + + + @Override + public List exportCertificateType(Wrapper queryWrapper) { + List certificateTypeList = baseMapper.exportCertificateType(queryWrapper); + //certificateTypeList.forEach(certificateType -> { + // certificateType.setTypeName(DictCache.getValue(DictEnum.YES_NO, CertificateType.getType())); + //}); + return certificateTypeList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java new file mode 100644 index 00000000..37aa8855 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; +import org.springblade.desk.jobTransfer.mapper.CultivateDetailMapper; +import org.springblade.desk.jobTransfer.service.ICultivateDetailService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; + +/** + * 培训安排 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class CultivateDetailServiceImpl extends BaseServiceImpl implements ICultivateDetailService { + + @Override + public IPage selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail) { + return page.setRecords(baseMapper.selectCultivateDetailPage(page, cultivateDetail)); + } + + + @Override + public List exportCultivateDetail(Wrapper queryWrapper) { + List cultivateDetailList = baseMapper.exportCultivateDetail(queryWrapper); + //cultivateDetailList.forEach(cultivateDetail -> { + // cultivateDetail.setTypeName(DictCache.getValue(DictEnum.YES_NO, CultivateDetail.getType())); + //}); + return cultivateDetailList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java new file mode 100644 index 00000000..dc38e5dc --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java @@ -0,0 +1,39 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; +import org.springblade.desk.jobTransfer.mapper.EquipmentMaintenanceMapper; +import org.springblade.desk.jobTransfer.service.IEquipmentMaintenanceService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; + +/** + * 岗位设备维护 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class EquipmentMaintenanceServiceImpl extends BaseServiceImpl implements IEquipmentMaintenanceService { + + @Override + public IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance) { + return page.setRecords(baseMapper.selectEquipmentMaintenancePage(page, equipmentMaintenance)); + } + + + @Override + public List exportEquipmentMaintenance(Wrapper queryWrapper) { + List equipmentMaintenanceList = baseMapper.exportEquipmentMaintenance(queryWrapper); + //equipmentMaintenanceList.forEach(equipmentMaintenance -> { + // equipmentMaintenance.setTypeName(DictCache.getValue(DictEnum.YES_NO, EquipmentMaintenance.getType())); + //}); + return equipmentMaintenanceList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java new file mode 100644 index 00000000..0e6c9b11 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -0,0 +1,46 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; +import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; +import org.springblade.desk.jobTransfer.mapper.PostHandleMapper; +import org.springblade.desk.jobTransfer.service.IPostHandleService; +import org.springblade.system.pojo.entity.Dept; +import org.springblade.system.pojo.entity.User; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; +import java.util.Objects; + +/** + * 岗位处理 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class PostHandleServiceImpl extends BaseServiceImpl implements IPostHandleService { + + @Override + public IPage selectPostHandlePage(IPage page, PostHandleQuery postHandleQuery) { +// return page.setRecords(baseMapper.selectPostHandlePage(page, postHandle)); + List dataList = baseMapper.selectPostHandleVOByCondition(page, postHandleQuery); + return page.setRecords(dataList); + } + + + @Override + public List exportPostHandle(Wrapper queryWrapper) { + List postHandleList = baseMapper.exportPostHandle(queryWrapper); + //postHandleList.forEach(postHandle -> { + // postHandle.setTypeName(DictCache.getValue(DictEnum.YES_NO, PostHandle.getType())); + //}); + return postHandleList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/TrainingPlanServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/TrainingPlanServiceImpl.java new file mode 100644 index 00000000..f642b888 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/TrainingPlanServiceImpl.java @@ -0,0 +1,51 @@ +package org.springblade.desk.jobTransfer.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import org.springblade.desk.jobTransfer.pojo.excel.TrainingPlanExcel; +import org.springblade.desk.jobTransfer.pojo.vo.TrainingPlanVO; +import org.springblade.desk.jobTransfer.mapper.TrainingPlanMapper; +import org.springblade.desk.jobTransfer.service.ITrainingPlanService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.List; +import java.util.Objects; + +/** + * 培训计划模板 服务实现类 + * + * @author qyl + * @since 2026-01-08 + */ +@Service +public class TrainingPlanServiceImpl extends BaseServiceImpl implements ITrainingPlanService { + + @Override + public IPage selectTrainingPlanPage(IPage page, TrainingPlanEntity trainingPlan) { +// return page.setRecords(baseMapper.selectTrainingPlanPage(page, trainingPlan)); + // 1. 创建条件构造器 + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + + // 2. 动态添加条件(核心!) + // 根据实体对象 entity 中字段是否为空,来动态拼接WHERE条件 + wrapper.like(Objects.nonNull(trainingPlan.getName()), TrainingPlanEntity::getName, trainingPlan.getName()); + + // 3. 执行分页查询 + return baseMapper.selectPage(page, wrapper); + } + + + @Override + public List exportTrainingPlan(Wrapper queryWrapper) { + List trainingPlanList = baseMapper.exportTrainingPlan(queryWrapper); + //trainingPlanList.forEach(trainingPlan -> { + // trainingPlan.setTypeName(DictCache.getValue(DictEnum.YES_NO, TrainingPlan.getType())); + //}); + return trainingPlanList; + } + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateMaintenanceWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateMaintenanceWrapper.java new file mode 100644 index 00000000..49f91ec6 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateMaintenanceWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; + +import java.util.Objects; + +/** + * 证书维护 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class CertificateMaintenanceWrapper extends BaseEntityWrapper { + + public static CertificateMaintenanceWrapper build() { + return new CertificateMaintenanceWrapper(); + } + + @Override + public CertificateMaintenanceVO entityVO(CertificateMaintenanceEntity certificateMaintenance) { + CertificateMaintenanceVO certificateMaintenanceVO = Objects.requireNonNull(BeanUtil.copyProperties(certificateMaintenance, CertificateMaintenanceVO.class)); + + //User createUser = UserCache.getUser(certificateMaintenance.getCreateUser()); + //User updateUser = UserCache.getUser(certificateMaintenance.getUpdateUser()); + //certificateMaintenanceVO.setCreateUserName(createUser.getName()); + //certificateMaintenanceVO.setUpdateUserName(updateUser.getName()); + + return certificateMaintenanceVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateTypeWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateTypeWrapper.java new file mode 100644 index 00000000..920d0d1c --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CertificateTypeWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateTypeEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateTypeVO; + +import java.util.Objects; + +/** + * 证书类型 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class CertificateTypeWrapper extends BaseEntityWrapper { + + public static CertificateTypeWrapper build() { + return new CertificateTypeWrapper(); + } + + @Override + public CertificateTypeVO entityVO(CertificateTypeEntity certificateType) { + CertificateTypeVO certificateTypeVO = Objects.requireNonNull(BeanUtil.copyProperties(certificateType, CertificateTypeVO.class)); + + //User createUser = UserCache.getUser(certificateType.getCreateUser()); + //User updateUser = UserCache.getUser(certificateType.getUpdateUser()); + //certificateTypeVO.setCreateUserName(createUser.getName()); + //certificateTypeVO.setUpdateUserName(updateUser.getName()); + + return certificateTypeVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CultivateDetailWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CultivateDetailWrapper.java new file mode 100644 index 00000000..39ef09f7 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/CultivateDetailWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; + +import java.util.Objects; + +/** + * 培训安排 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class CultivateDetailWrapper extends BaseEntityWrapper { + + public static CultivateDetailWrapper build() { + return new CultivateDetailWrapper(); + } + + @Override + public CultivateDetailVO entityVO(CultivateDetailEntity cultivateDetail) { + CultivateDetailVO cultivateDetailVO = Objects.requireNonNull(BeanUtil.copyProperties(cultivateDetail, CultivateDetailVO.class)); + + //User createUser = UserCache.getUser(cultivateDetail.getCreateUser()); + //User updateUser = UserCache.getUser(cultivateDetail.getUpdateUser()); + //cultivateDetailVO.setCreateUserName(createUser.getName()); + //cultivateDetailVO.setUpdateUserName(updateUser.getName()); + + return cultivateDetailVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/EquipmentMaintenanceWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/EquipmentMaintenanceWrapper.java new file mode 100644 index 00000000..9cd1b3b9 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/EquipmentMaintenanceWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; + +import java.util.Objects; + +/** + * 岗位设备维护 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class EquipmentMaintenanceWrapper extends BaseEntityWrapper { + + public static EquipmentMaintenanceWrapper build() { + return new EquipmentMaintenanceWrapper(); + } + + @Override + public EquipmentMaintenanceVO entityVO(EquipmentMaintenanceEntity equipmentMaintenance) { + EquipmentMaintenanceVO equipmentMaintenanceVO = Objects.requireNonNull(BeanUtil.copyProperties(equipmentMaintenance, EquipmentMaintenanceVO.class)); + + //User createUser = UserCache.getUser(equipmentMaintenance.getCreateUser()); + //User updateUser = UserCache.getUser(equipmentMaintenance.getUpdateUser()); + //equipmentMaintenanceVO.setCreateUserName(createUser.getName()); + //equipmentMaintenanceVO.setUpdateUserName(updateUser.getName()); + + return equipmentMaintenanceVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/PostHandleWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/PostHandleWrapper.java new file mode 100644 index 00000000..3a1b5ad0 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/PostHandleWrapper.java @@ -0,0 +1,44 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; +import org.springblade.system.cache.SysCache; +import org.springblade.system.cache.UserCache; +import org.springblade.system.pojo.entity.Dept; +import org.springblade.system.pojo.entity.User; +import org.springblade.system.pojo.entity.UserDept; + +import java.util.Objects; + +/** + * 岗位处理 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class PostHandleWrapper extends BaseEntityWrapper { + + public static PostHandleWrapper build() { + return new PostHandleWrapper(); + } + + @Override + public PostHandleVO entityVO(PostHandleEntity postHandle) { + PostHandleVO postHandleVO = Objects.requireNonNull(BeanUtil.copyProperties(postHandle, PostHandleVO.class)); + + //User createUser = UserCache.getUser(postHandle.getCreateUser()); + //User updateUser = UserCache.getUser(postHandle.getUpdateUser()); + //postHandleVO.setCreateUserName(createUser.getName()); + //postHandleVO.setUpdateUserName(updateUser.getName()); + User user = UserCache.getUser(postHandle.getUserId()); + Dept dept = SysCache.getDept(postHandle.getDeptId()); + postHandleVO.setUserName(user.getRealName()); + postHandleVO.setUserCode(user.getCode()); + postHandleVO.setDeptName(dept.getDeptName()); + return postHandleVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/TrainingPlanWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/TrainingPlanWrapper.java new file mode 100644 index 00000000..8eb00fa9 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/wrapper/TrainingPlanWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.jobTransfer.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.jobTransfer.pojo.entity.TrainingPlanEntity; +import org.springblade.desk.jobTransfer.pojo.vo.TrainingPlanVO; + +import java.util.Objects; + +/** + * 培训计划模板 包装类,返回视图层所需的字段 + * + * @author qyl + * @since 2026-01-08 + */ +public class TrainingPlanWrapper extends BaseEntityWrapper { + + public static TrainingPlanWrapper build() { + return new TrainingPlanWrapper(); + } + + @Override + public TrainingPlanVO entityVO(TrainingPlanEntity trainingPlan) { + TrainingPlanVO trainingPlanVO = Objects.requireNonNull(BeanUtil.copyProperties(trainingPlan, TrainingPlanVO.class)); + + //User createUser = UserCache.getUser(trainingPlan.getCreateUser()); + //User updateUser = UserCache.getUser(trainingPlan.getUpdateUser()); + //trainingPlanVO.setCreateUserName(createUser.getName()); + //trainingPlanVO.setUpdateUserName(updateUser.getName()); + + return trainingPlanVO; + } + + +} diff --git a/doc/sql/mes/increase-260108.sql b/doc/sql/mes/increase-260108.sql new file mode 100644 index 00000000..3387114d --- /dev/null +++ b/doc/sql/mes/increase-260108.sql @@ -0,0 +1,359 @@ +--岗位处理 +DROP TABLE MES_POST_HANDLE; +CREATE TABLE MES_POST_HANDLE +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + USER_ID NUMBER(20,0) NOT NULL ENABLE, + NAME NVARCHAR2(32), + NATION NVARCHAR2(32), + AGE NUMBER(3,0), + ID_CARD NVARCHAR2(64), + NATIVE_PLACE NVARCHAR2(255), + DEPT_ID NUMBER(20,0), + STATION NVARCHAR2(255), + DATA_BIRTH DATE, + FACE NVARCHAR2(32), + MARRIAGE CHAR(1), + SCHOOL NVARCHAR2(255), + MAJOR NVARCHAR2(255), + EDUCATION NVARCHAR2(255), + END_DATE DATE, + STAFF_TYPE NUMBER(3,0), + JOIN_JOB_DATE DATE, + SKILL NUMBER(3,0), + IN_JOB_DATE DATE, + CON_EXP_DATE DATE, + ADDRESS NVARCHAR2(255), + TO_NEW_JOB DATE, + PH_STATUS NUMBER(3,0), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_POST_HANDLE.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_POST_HANDLE.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_POST_HANDLE.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_POST_HANDLE.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_POST_HANDLE.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_POST_HANDLE.USER_ID IS '用户ID'; +COMMENT +ON COLUMN MES_POST_HANDLE.NAME IS '名称'; +COMMENT +ON COLUMN MES_POST_HANDLE.NATION IS '民族'; +COMMENT +ON COLUMN MES_POST_HANDLE.AGE IS '年龄'; +COMMENT +ON COLUMN MES_POST_HANDLE.ID_CARD IS '身份证号码'; +COMMENT +ON COLUMN MES_POST_HANDLE.NATIVE_PLACE IS '籍贯'; +COMMENT +ON COLUMN MES_POST_HANDLE.DEPT_ID IS '班组ID'; +COMMENT +ON COLUMN MES_POST_HANDLE.STATION IS '所属岗位'; +COMMENT +ON COLUMN MES_POST_HANDLE.DATA_BIRTH IS '出生日期'; +COMMENT +ON COLUMN MES_POST_HANDLE.FACE IS '政治面貌'; +COMMENT +ON COLUMN MES_POST_HANDLE.MARRIAGE IS '婚姻状态(0未婚,1已婚)'; +COMMENT +ON COLUMN MES_POST_HANDLE.SCHOOL IS '毕业院校'; +COMMENT +ON COLUMN MES_POST_HANDLE.MAJOR IS '所学专业'; +COMMENT +ON COLUMN MES_POST_HANDLE.EDUCATION IS '最高学历'; +COMMENT +ON COLUMN MES_POST_HANDLE.END_DATE IS '毕业时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.STAFF_TYPE IS '用工类型'; +COMMENT +ON COLUMN MES_POST_HANDLE.JOIN_JOB_DATE IS '参加工作时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.SKILL IS '技能等级'; +COMMENT +ON COLUMN MES_POST_HANDLE.IN_JOB_DATE IS '任现职时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.CON_EXP_DATE IS '合同到期'; +COMMENT +ON COLUMN MES_POST_HANDLE.ADDRESS IS '家庭住址'; +COMMENT +ON COLUMN MES_POST_HANDLE.TO_NEW_JOB IS '转岗时间'; +COMMENT +ON COLUMN MES_POST_HANDLE.PH_STATUS IS '1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格'; +COMMENT +ON TABLE MES_POST_HANDLE IS '岗位处理'; + +--培训安排 +DROP TABLE MES_CULTIVATE_DETAIL; +CREATE TABLE MES_CULTIVATE_DETAIL +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + PH_ID NUMBER(20,0), + TYPE NUMBER(3,0), + PLAN_ID NUMBER(20,0), + TEACHER_ID NUMBER(20,0), + TEACHER_NAME NVARCHAR2(32), + CA_STATUS NUMBER(3,0), + DISTRIBUTE_TIME DATE, + ATTACH_LINK NVARCHAR2(255), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.PH_ID IS '岗位处理ID'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.TYPE IS '培训类型(1实习,2转岗,3下岗)'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.PLAN_ID IS '培训模板ID'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.TEACHER_ID IS '培训师ID'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.TEACHER_NAME IS '培训师'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.CA_STATUS IS '培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成)'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.DISTRIBUTE_TIME IS '下发时间'; +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.ATTACH_LINK IS '附件链接'; +COMMENT +ON TABLE MES_CULTIVATE_DETAIL IS '培训安排'; + +--证书类型 +DROP TABLE MES_CERTIFICATE_TYPE; +CREATE TABLE MES_CERTIFICATE_TYPE +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + NAME NVARCHAR2(255), + VALIDITY_PERIOD NUMBER(3,0), + AIRWORTHINESS_VALIDITY_PERIOD NUMBER(3,0), + ASTRONAUT_VALIDITY_PERIOD NUMBER(3,0), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.NAME IS '证书名称'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.VALIDITY_PERIOD IS '证书有效期'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.AIRWORTHINESS_VALIDITY_PERIOD IS '适航有效期'; +COMMENT +ON COLUMN MES_CERTIFICATE_TYPE.ASTRONAUT_VALIDITY_PERIOD IS '宇航有效期'; +COMMENT +ON TABLE MES_CERTIFICATE_TYPE IS '证书类型'; + +--培训计划模板 +DROP TABLE MES_TRAINING_PLAN; +CREATE TABLE MES_TRAINING_PLAN +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + NAME NVARCHAR2(255), + CYCLE NUMBER(5,0), + TEACHER_ID NUMBER(20,0), + TEACHER_NAME NVARCHAR2(32), + EARLY_WARNING_DAY NUMBER(5,0), + MEMO NVARCHAR2(255), + ATTACH_LINK NVARCHAR2(255), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_TRAINING_PLAN.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.NAME IS '培训计划名称'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.CYCLE IS '培训周期(天)'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.TEACHER_ID IS '培训师ID'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.TEACHER_NAME IS '培训师名称'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.EARLY_WARNING_DAY IS '预警周期(天)'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.MEMO IS '备注'; +COMMENT +ON COLUMN MES_TRAINING_PLAN.ATTACH_LINK IS '附件链接'; +COMMENT +ON TABLE MES_TRAINING_PLAN IS '培训计划模板'; + +--岗位证书维护 +DROP TABLE MES_CERTIFICATE_MAINTENANCE; +CREATE TABLE MES_CERTIFICATE_MAINTENANCE +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + PH_ID NUMBER(20,0), + CERTIFICATE_ID NUMBER(20,0), + CERTIFICATE_CODE NVARCHAR2(20), + CERTIFICATE_DATE DATE, + AIRWORTHINESS_DATE DATE, + ASTRONAUT_DATE DATE, + MAINTENANCE_STATUS NUMBER(3,0), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.PH_ID IS '岗位处理ID'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CERTIFICATE_ID IS '证书类型ID'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CERTIFICATE_CODE IS '证书编号'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.CERTIFICATE_DATE IS '证书日期'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.AIRWORTHINESS_DATE IS '适航日期'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.ASTRONAUT_DATE IS '宇航日期'; +COMMENT +ON COLUMN MES_CERTIFICATE_MAINTENANCE.MAINTENANCE_STATUS IS '维护状态(1正常,2到期,3离职)'; +COMMENT +ON TABLE MES_CERTIFICATE_MAINTENANCE IS '证书维护'; + +--岗位设备维护 +DROP TABLE MES_EQUIPMENT_MAINTENANCE; +CREATE TABLE MES_EQUIPMENT_MAINTENANCE +( + ID NUMBER(20,0) NOT NULL ENABLE, + TENANT_ID NVARCHAR2(12), + CREATE_USER NUMBER(20,0), + CREATE_TIME DATE, + CREATE_DEPT NUMBER(20,0), + UPDATE_USER NUMBER(20,0), + UPDATE_TIME DATE, + STATUS NUMBER(11,0) DEFAULT 1, + IS_DELETED NUMBER(11,0) DEFAULT 0, + PH_ID NUMBER(20,0), + EQUIPMENT_ID NUMBER(20,0), + EQUIPMENT_VALIDITY_PERIOD NUMBER(5,0), + EQUIPMENT_DATE DATE, + MAINTENANCE_STATUS NUMBER(3,0), + CHECK (ID IS NOT NULL) ENABLE, + PRIMARY KEY (ID) +) TABLESPACE JONHON_MES_DATA; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.CREATE_USER IS '创建人'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.CREATE_TIME IS '创建时间'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.CREATE_DEPT IS '创建部门'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.UPDATE_USER IS '更新人'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.UPDATE_TIME IS '更新时间'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.STATUS IS '状态;1、空闲;2、使用中'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.IS_DELETED IS '删除标记;1:删除,0:正常'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.PH_ID IS '岗位处理ID'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.EQUIPMENT_ID IS '设备ID'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.EQUIPMENT_VALIDITY_PERIOD IS '设备有效期'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.EQUIPMENT_DATE IS '设备日期'; +COMMENT +ON COLUMN MES_EQUIPMENT_MAINTENANCE.MAINTENANCE_STATUS IS '维护状态(1正常,2到期,3离职)'; +COMMENT +ON TABLE MES_EQUIPMENT_MAINTENANCE IS '岗位设备维护'; From 60376b9094847abfbeced2a3f1b78e90b48e46f9 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Fri, 9 Jan 2026 09:26:39 +0800 Subject: [PATCH 02/20] =?UTF-8?q?=E4=BA=BA=E5=91=98=E5=B7=A5=E4=BD=8D?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E7=8A=B6=E6=80=81=E3=80=81=E7=94=A8=E5=B7=A5?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E3=80=81=E5=9F=B9=E8=AE=AD=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/enums/PostHandleStatusEnum.java | 62 +++++++++++++++++++ .../jobTransfer/pojo/enums/StaffTypeEnum.java | 57 +++++++++++++++++ .../pojo/enums/TrainingStatusEnum.java | 61 ++++++++++++++++++ 3 files changed, 180 insertions(+) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java new file mode 100644 index 00000000..6dc966cd --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java @@ -0,0 +1,62 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 人员岗位管理状态枚举 + * + * @author qyl + * @date 2026-01-09 + */ +@Getter +@AllArgsConstructor +public enum PostHandleStatusEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + IN_PRACTICE("实习中", 1), + JOB_TRANSFER("转岗中", 2), + NORMALITY("正常", 3), + LAID_OFF("下岗中", 4), + DEPART("离职", 5), + TRAINED("培训合格", 6), + UNQUALIFIED("培训不合格", 7), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static PostHandleStatusEnum of(String name) { + return Arrays.stream(PostHandleStatusEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(PostHandleStatusEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(int code) { + PostHandleStatusEnum item = Arrays.stream(PostHandleStatusEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java new file mode 100644 index 00000000..8576d34c --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java @@ -0,0 +1,57 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 用工类型枚举 + * + * @author qyl + * @date 2026-01-09 + */ +@Getter +@AllArgsConstructor +public enum StaffTypeEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + FIELD_WORK("实习工", 1), + FORMAL("正式工", 2), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static StaffTypeEnum of(String name) { + return Arrays.stream(StaffTypeEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(StaffTypeEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(int code) { + StaffTypeEnum item = Arrays.stream(StaffTypeEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java new file mode 100644 index 00000000..62152699 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java @@ -0,0 +1,61 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 培训状态枚举 + * + * @author qyl + * @date 2026-01-09 + */ +@Getter +@AllArgsConstructor +public enum TrainingStatusEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + NOT_CONFIGURED("未配置", 1), + WAIT_DISTRIBUTE("等待下发", 2), + ISSUED("已下发-培训中", 3), + EXPIRED("已到期", 4), + TRAINED("已培训-待确认", 5), + OK_TRAINED("已培训", 6), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static TrainingStatusEnum of(String name) { + return Arrays.stream(TrainingStatusEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(TrainingStatusEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(int code) { + TrainingStatusEnum item = Arrays.stream(TrainingStatusEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} From 388411a1f98a2def2cbec4a3aff42b5ee2a41219 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Fri, 9 Jan 2026 09:27:12 +0800 Subject: [PATCH 03/20] =?UTF-8?q?=E8=BD=AC=E5=B2=97=E7=AE=A1=E7=90=86?= =?UTF-8?q?=EF=BC=9A=E5=AE=9E=E4=B9=A0=E5=B7=A5=E8=BD=AC=E6=AD=A3=E5=8A=9F?= =?UTF-8?q?=E8=83=BD+=E4=BA=BA=E5=91=98=E8=BD=AC=E5=B2=97=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/PostHandleController.java | 37 +++++++- .../service/IPostHandleService.java | 18 ++++ .../service/impl/PostHandleServiceImpl.java | 86 ++++++++++++++++++- 3 files changed, 137 insertions(+), 4 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java index 303d6344..fe61d24f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java @@ -1,5 +1,7 @@ package org.springblade.desk.jobTransfer.controller; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.enums.ParameterIn; import io.swagger.v3.oas.annotations.media.Schema; @@ -108,7 +110,7 @@ public class PostHandleController extends BladeController { @ApiOperationSupport(order = 6) @Operation(summary = "新增或修改", description = "传入postHandle") public R submit(@Valid @RequestBody PostHandleEntity postHandle) { - return R.status(postHandleService.saveOrUpdate(postHandle)); + return postHandleService.saveOrUpdateHandle(postHandle); } /** @@ -121,6 +123,39 @@ public class PostHandleController extends BladeController { return R.status(postHandleService.deleteLogic(Func.toLongList(ids))); } + /** + * 批量转正 + * + * @param ids + * @return R + */ + @PostMapping("/regularization") + @ApiOperationSupport(order = 8) + @Operation(summary = "转正", description = "传入ids") + public R regularization(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return postHandleService.regularization(Func.toLongList(ids)); + + } + + /** + * 批量转岗计划 + * + * @param ids + * @param teacherId + * @param teacherName + * @param trainingPlanId + * @return + */ + @PostMapping("/JobTransferPlan") + @ApiOperationSupport(order = 8) + @Operation(summary = "批量转岗计划", description = "传入ids") + public R JobTransferPlan(@Parameter(description = "主键集合", required = true) @RequestParam String ids, + @Parameter(description = "培训师id", required = true) @RequestParam Long teacherId, + @Parameter(description = "培训师姓名", required = true) @RequestParam String teacherName, + @Parameter(description = "培训模板id", required = true) @RequestParam Long trainingPlanId) { + return postHandleService.JobTransferPlan(Func.toLongList(ids), teacherId, teacherName, trainingPlanId); + } + /** * 导出数据 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java index 319d21d7..871a868c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java @@ -1,6 +1,7 @@ package org.springblade.desk.jobTransfer.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.core.tool.api.R; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; @@ -35,4 +36,21 @@ public interface IPostHandleService extends BaseService { */ List exportPostHandle(Wrapper queryWrapper); + /** + * 批量转正 + * + * @param ids + * @return + */ + R regularization(List ids); + + /** + * 新增 + * + * @param postHandleEntity + * @return + */ + R saveOrUpdateHandle(PostHandleEntity postHandleEntity); + + R JobTransferPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index 0e6c9b11..29d31967 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -1,21 +1,26 @@ package org.springblade.desk.jobTransfer.service.impl; import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import org.springblade.core.tool.api.R; +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.enums.PostHandleStatusEnum; +import org.springblade.desk.jobTransfer.pojo.enums.StaffTypeEnum; +import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; import org.springblade.desk.jobTransfer.mapper.PostHandleMapper; +import org.springblade.desk.jobTransfer.service.ICultivateDetailService; import org.springblade.desk.jobTransfer.service.IPostHandleService; -import org.springblade.system.pojo.entity.Dept; -import org.springblade.system.pojo.entity.User; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; +import java.util.Date; import java.util.List; -import java.util.Objects; /** * 岗位处理 服务实现类 @@ -26,6 +31,9 @@ import java.util.Objects; @Service public class PostHandleServiceImpl extends BaseServiceImpl implements IPostHandleService { + @Autowired + private ICultivateDetailService iCultivateDetailService; + @Override public IPage selectPostHandlePage(IPage page, PostHandleQuery postHandleQuery) { // return page.setRecords(baseMapper.selectPostHandlePage(page, postHandle)); @@ -43,4 +51,76 @@ public class PostHandleServiceImpl extends BaseServiceImpl ids) { + // 1. 验证阶段:查看匹配的数据数量,如数量和id不同,则失败 + Long matchedCount = this.lambdaQuery() + .in(PostHandleEntity::getId, ids) +// .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.of("")) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.of("实习工").getCode()) + .eq(PostHandleEntity::getIsDeleted, 0) + .count(); + if (matchedCount < ids.size()) { + return R.fail("请选择实习工进行转正操作"); + } + + //更新阶段 + boolean updateSuccess = this.lambdaUpdate() + .in(PostHandleEntity::getId, ids) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.of("实习工").getCode()) + .set(PostHandleEntity::getStaffType, StaffTypeEnum.of("正式工").getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.of("正常").getCode()) + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + return R.status(updateSuccess); + } + + @Override + public R saveOrUpdateHandle(PostHandleEntity postHandleEntity) { + + if (null != postHandleEntity.getId() && postHandleEntity.getId() > 0) { + //更新 + return R.status(this.updateById(postHandleEntity)); + } else { + //同一用户不允许多次新增 + Long existCount = this.lambdaQuery() + .eq(PostHandleEntity::getUserId, postHandleEntity.getUserId()) + .eq(PostHandleEntity::getIsDeleted, 0) + .count(); + if (existCount > 0) { + return R.fail("该用户已存在岗位处理记录,不允许重复添加"); + } + // 如果是正式工状态为正常 + if (postHandleEntity.getStaffType() == StaffTypeEnum.of("正式工").getCode().shortValue()) { + postHandleEntity.setPhStatus(PostHandleStatusEnum.of("正常").getCode().shortValue()); + } else { + postHandleEntity.setPhStatus(PostHandleStatusEnum.of("实习中").getCode().shortValue()); + } + boolean save = this.save(postHandleEntity); + //实习工自动创建一条培训计划 + createPlan(postHandleEntity); + return R.status(save); + } + } + + @Override + public R JobTransferPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId) { + + return null; + } + + /** + * 实习工自动创建一条培训计划 + * + * @param postHandleEntity + */ + public void createPlan(PostHandleEntity postHandleEntity) { + if (postHandleEntity.getStaffType() == StaffTypeEnum.of("实习工").getCode().shortValue()) { + CultivateDetailEntity cultivateDetailEntity = new CultivateDetailEntity(); + cultivateDetailEntity.setPhId(postHandleEntity.getId()); + cultivateDetailEntity.setType((short) 1); + cultivateDetailEntity.setCaStatus(TrainingStatusEnum.of("未配置").getCode().shortValue()); + iCultivateDetailService.save(cultivateDetailEntity); + } + } } From b2aa5fcd02ebb8e12e45017562011b38c739f49d Mon Sep 17 00:00:00 2001 From: qinyulong Date: Fri, 9 Jan 2026 10:15:29 +0800 Subject: [PATCH 04/20] =?UTF-8?q?=E6=89=B9=E9=87=8F=E8=BD=AC=E5=B2=97?= =?UTF-8?q?=E8=AE=A1=E5=88=92+=E6=89=B9=E9=87=8F=E4=B8=8B=E5=B2=97?= =?UTF-8?q?=E8=AE=A1=E5=88=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/PostHandleController.java | 18 ++++ .../service/IPostHandleService.java | 21 ++++ .../service/impl/PostHandleServiceImpl.java | 96 +++++++++++++++++-- 3 files changed, 127 insertions(+), 8 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java index fe61d24f..470a2afb 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java @@ -156,6 +156,24 @@ public class PostHandleController extends BladeController { return postHandleService.JobTransferPlan(Func.toLongList(ids), teacherId, teacherName, trainingPlanId); } + /** + * 批量下岗计划 + * + * @param ids + * @param teacherId + * @param teacherName + * @param trainingPlanId + * @return + */ + @PostMapping("/layoffPlan") + @ApiOperationSupport(order = 8) + @Operation(summary = "批量下岗计划", description = "传入ids") + public R layoffPlan(@Parameter(description = "主键集合", required = true) @RequestParam String ids, + @Parameter(description = "培训师id", required = true) @RequestParam Long teacherId, + @Parameter(description = "培训师姓名", required = true) @RequestParam String teacherName, + @Parameter(description = "培训模板id", required = true) @RequestParam Long trainingPlanId) { + return postHandleService.layoffPlan(Func.toLongList(ids), teacherId, teacherName, trainingPlanId); + } /** * 导出数据 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java index 871a868c..10945d1e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java @@ -52,5 +52,26 @@ public interface IPostHandleService extends BaseService { */ R saveOrUpdateHandle(PostHandleEntity postHandleEntity); + /** + * 批量转岗计划 + * + * @param ids + * @param teacherId + * @param teacherName + * @param trainingPlanId + * @return + */ R JobTransferPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId); + + /** + * 批量下岗计划 + * + * @param ids + * @param teacherId + * @param teacherName + * @param trainingPlanId + * @return + */ + R layoffPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId); + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index 29d31967..e6ec1149 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -18,7 +18,9 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -52,12 +54,13 @@ public class PostHandleServiceImpl extends BaseServiceImpl ids) { // 1. 验证阶段:查看匹配的数据数量,如数量和id不同,则失败 Long matchedCount = this.lambdaQuery() .in(PostHandleEntity::getId, ids) // .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.of("")) - .eq(PostHandleEntity::getStaffType, StaffTypeEnum.of("实习工").getCode()) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.FIELD_WORK.getCode()) .eq(PostHandleEntity::getIsDeleted, 0) .count(); if (matchedCount < ids.size()) { @@ -67,15 +70,16 @@ public class PostHandleServiceImpl extends BaseServiceImpl 0) { @@ -91,10 +95,10 @@ public class PostHandleServiceImpl extends BaseServiceImpl ids, Long teacherId, String teacherName, Long trainingPlanId) { + // 1. 验证阶段:查看匹配的数据数量,如数量和id不同,则失败 + Long matchedCount = this.lambdaQuery() + .in(PostHandleEntity::getId, ids) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.NORMALITY.getCode()) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.FORMAL.getCode()) + .eq(PostHandleEntity::getIsDeleted, 0) + .count(); + if (matchedCount < ids.size()) { + return R.fail("请选择正式工安排转岗计划"); + } + // 2. 更新人员岗位数据 + boolean updateSuccess = this.lambdaUpdate() + .in(PostHandleEntity::getId, ids) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.NORMALITY.getCode()) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.FORMAL.getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.JOB_TRANSFER.getCode()) + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + if (!updateSuccess) { + return R.fail("转岗计划操作失败"); + } + // 3. 为每条转岗计划新增培训安排 + List cultivateDetails = new ArrayList<>(); + for (Long phId : ids) { + CultivateDetailEntity detail = new CultivateDetailEntity(); + detail.setType((short) 2); + detail.setPlanId(trainingPlanId); + detail.setPhId(phId); + detail.setCaStatus(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue()); + detail.setTeacherId(teacherId); + detail.setTeacherName(teacherName); + cultivateDetails.add(detail); + } + boolean saveResult = iCultivateDetailService.saveBatch(cultivateDetails); + + return R.status(saveResult, "操作成功"); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public R layoffPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId) { + // 1. 验证阶段:查看匹配的数据数量,如数量和id不同,则失败 + Long matchedCount = this.lambdaQuery() + .in(PostHandleEntity::getId, ids) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.NORMALITY.getCode()) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.FORMAL.getCode()) + .eq(PostHandleEntity::getIsDeleted, 0) + .count(); + if (matchedCount < ids.size()) { + return R.fail("请选择正式工安排下岗计划"); + } + // 2. 更新人员岗位数据 + boolean updateSuccess = this.lambdaUpdate() + .in(PostHandleEntity::getId, ids) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.NORMALITY.getCode()) + .eq(PostHandleEntity::getStaffType, StaffTypeEnum.FORMAL.getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.LAID_OFF.getCode()) + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + if (!updateSuccess) { + return R.fail("下岗计划操作失败"); + } + // 3. 为每条下岗计划新增培训安排 + List cultivateDetails = new ArrayList<>(); + for (Long phId : ids) { + CultivateDetailEntity detail = new CultivateDetailEntity(); + detail.setType((short) 3); + detail.setPlanId(trainingPlanId); + detail.setPhId(phId); + detail.setCaStatus(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue()); + detail.setTeacherId(teacherId); + detail.setTeacherName(teacherName); + cultivateDetails.add(detail); + } + boolean saveResult = iCultivateDetailService.saveBatch(cultivateDetails); - return null; + return R.status(saveResult, "操作成功"); } /** From 24ed89e37772f69b5f5816d3c91d83d26a700d68 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Fri, 9 Jan 2026 16:31:00 +0800 Subject: [PATCH 05/20] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E7=94=A8=E6=88=B7code,?= =?UTF-8?q?=E4=BB=8E=E7=94=A8=E6=88=B7=E7=BC=93=E5=AD=98=E5=8F=96=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E3=80=82=20roleService.getRoleAliases(user.getRoleId(?= =?UTF-8?q?))=E5=89=8D=E5=8A=A0=E9=9D=9E=E7=A9=BA=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/springblade/system/cache/UserCache.java | 15 +++++++++++++++ .../system/service/impl/UserServiceImpl.java | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java index a0c0ac2f..19a9ff5b 100644 --- a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java +++ b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java @@ -33,9 +33,11 @@ import org.springblade.core.tool.utils.StringPool; import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.pojo.entity.User; import org.springblade.system.feign.IUserClient; +import org.springblade.system.pojo.entity.UserInfo; import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE; import static org.springblade.core.launch.constant.FlowConstant.TASK_USR_PREFIX; +import static org.springblade.system.feign.IUserClient.USER_BY_CODE; /** * 系统缓存 @@ -44,6 +46,7 @@ import static org.springblade.core.launch.constant.FlowConstant.TASK_USR_PREFIX; */ public class UserCache { private static final String USER_CACHE_ID = "user:id:"; + private static final String USER_CACHE_CODE = "user:code:"; private static final String USER_CACHE_ACCOUNT = "user:account:"; private static IUserClient userClient; @@ -93,4 +96,16 @@ public class UserCache { }); } + /** + * 获取用户 + * + * @return + */ + public static UserInfo getUserByCode(String code) { + return CacheUtil.get(USER_CACHE, USER_CACHE_CODE, code, () -> { + R result = getUserClient().userInfoByCode(code); + return result.getData(); + }); + } + } diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/UserServiceImpl.java b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/UserServiceImpl.java index beddb1c8..c4458832 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/UserServiceImpl.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/UserServiceImpl.java @@ -275,7 +275,7 @@ public class UserServiceImpl extends BaseServiceImpl implement } UserInfo userInfo = new UserInfo(); userInfo.setUser(user); - if (Func.isNotEmpty(user)) { + if (Func.isNotEmpty(user) && StringUtil.isNotBlank(user.getRoleId())) { List roleAlias = roleService.getRoleAliases(user.getRoleId()); if (!roleAlias.isEmpty()) { userInfo.setRoles(roleAlias); From 92572cd398d65aaa7f32f8be295bd5dc23b6ce3d Mon Sep 17 00:00:00 2001 From: qinyulong Date: Fri, 9 Jan 2026 17:00:49 +0800 Subject: [PATCH 06/20] =?UTF-8?q?=E5=AF=BC=E5=85=A5=E4=BA=BA=E5=91=98?= =?UTF-8?q?=E5=B2=97=E4=BD=8D+=E6=8A=80=E8=83=BD=E3=80=81=E5=A9=9A?= =?UTF-8?q?=E5=A7=BB=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/PostHandleEntity.java | 2 +- .../jobTransfer/pojo/enums/MarriageEnum.java | 57 ++++++++ .../jobTransfer/pojo/enums/SkillEnum.java | 58 ++++++++ .../pojo/excel/PostHandleImport.java | 130 ++++++++++++++++++ .../controller/PostHandleController.java | 45 +++++- .../service/IPostHandleService.java | 8 ++ .../service/impl/PostHandleServiceImpl.java | 113 ++++++++++++--- .../岗位处理导入模板下载.xls | Bin 0 -> 21504 bytes 8 files changed, 389 insertions(+), 24 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MarriageEnum.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleImport.java create mode 100644 blade-service/blade-desk/src/main/resources/Excel/jobTransfer/岗位处理导入模板下载.xls diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java index 707e37d2..31355182 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java @@ -104,7 +104,7 @@ public class PostHandleEntity extends BaseEntity { /** * 用工类型 */ - @Schema(description = "用工类型") + @Schema(description = "用工类型(1实习工,2正式工)") private Short staffType; /** * 参加工作时间 diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MarriageEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MarriageEnum.java new file mode 100644 index 00000000..0a5eba2b --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MarriageEnum.java @@ -0,0 +1,57 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 婚姻枚举 + * + * @author qyl + * @date 2026-01-09 + */ +@Getter +@AllArgsConstructor +public enum MarriageEnum { + EMPTY(StringPool.EMPTY, ""), + + /** + * 状态枚举 + */ + MARRIED("已婚", "1"), + SPINSTERHOOD("未婚", "0"), + ; + final String name; + final String code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static MarriageEnum of(String name) { + return Arrays.stream(MarriageEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(MarriageEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(String code) { + MarriageEnum item = Arrays.stream(MarriageEnum.values()) + .filter(enumItem -> enumItem.getCode().equalsIgnoreCase(code)) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java new file mode 100644 index 00000000..53f4f507 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java @@ -0,0 +1,58 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 技能等级枚举 + * + * @author qyl + * @date 2026-01-09 + */ +@Getter +@AllArgsConstructor +public enum SkillEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + MIDDLE_RANK("中级", 1), + SENIOR("高级", 2), + ARTIFICER("技师", 3), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static SkillEnum of(String name) { + return Arrays.stream(SkillEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(SkillEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(int code) { + SkillEnum item = Arrays.stream(SkillEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleImport.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleImport.java new file mode 100644 index 00000000..f8234e17 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/excel/PostHandleImport.java @@ -0,0 +1,130 @@ +package org.springblade.desk.jobTransfer.pojo.excel; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.format.DateTimeFormat; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +import java.io.Serial; +import java.util.Date; + +/** + * 岗位处理导入 + * + * @author qyl + * @since 2026-01-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class PostHandleImport extends BaseEntity { + + /** + * 用户code + */ + @ExcelProperty(index = 0) + private String code; + /** + * 名称 + */ + @ExcelProperty(index = 1) + private String name; + /** + * 民族 + */ + @ExcelProperty(index = 2) + private String nation; + /** + * 年龄 + */ + @ExcelProperty(index = 3) + private Short age; + /** + * 身份证号码 + */ + @ExcelProperty(index = 4) + private String idCard; + /** + * 籍贯 + */ + @ExcelProperty(index = 5) + private String nativePlace; + + /** + * 所属岗位 + */ + @ExcelProperty(index = 6) + private String station; + /** + * 出生日期 + */ + @ExcelProperty(index = 7) + @DateTimeFormat("yyyy/MM/dd") + private Date dataBirth; + /** + * 政治面貌 + */ + @ExcelProperty(index = 8) + private String face; + /** + * 婚姻状态(0未婚,1已婚) + */ + @ExcelProperty(index = 9) + private String marriageName; + /** + * 毕业院校 + */ + @ExcelProperty(index = 10) + private String school; + /** + * 所学专业 + */ + @ExcelProperty(index = 11) + private String major; + /** + * 最高学历 + */ + @ExcelProperty(index = 12) + private String education; + /** + * 毕业时间 + */ + @ExcelProperty(index = 13) + @DateTimeFormat("yyyy/MM/dd") + private Date endDate; + /** + * 用工类型 + */ + @ExcelProperty(index = 14) + private String staffTypeName; + /** + * 参加工作时间 + */ + @ExcelProperty(index = 15) + @DateTimeFormat("yyyy/MM/dd") + private Date joinJobDate; + /** + * 技能等级 + */ + @ExcelProperty(index = 16) + private String skillName; + /** + * 任现职时间 + */ + @ExcelProperty(index = 17) + @DateTimeFormat("yyyy/MM/dd") + private Date inJobDate; + /** + * 合同到期 + */ + @ExcelProperty(index = 18) + @DateTimeFormat("yyyy/MM/dd") + private Date conExpDate; + /** + * 家庭住址 + */ + @ExcelProperty(index = 19) + private String address; +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java index 470a2afb..a6810c52 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java @@ -1,7 +1,5 @@ package org.springblade.desk.jobTransfer.controller; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.enums.ParameterIn; import io.swagger.v3.oas.annotations.media.Schema; @@ -18,8 +16,13 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.desk.basic.util.ExcelExtUtil; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleImport; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; +import org.springframework.beans.BeanUtils; +import org.springframework.core.io.Resource; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -30,12 +33,13 @@ import org.springblade.desk.jobTransfer.service.IPostHandleService; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; -import org.springblade.core.tool.constant.BladeConstant; import java.util.Map; import java.util.List; +import java.util.stream.Collectors; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.web.multipart.MultipartFile; /** * 岗位处理 控制器 @@ -147,7 +151,7 @@ public class PostHandleController extends BladeController { * @return */ @PostMapping("/JobTransferPlan") - @ApiOperationSupport(order = 8) + @ApiOperationSupport(order = 9) @Operation(summary = "批量转岗计划", description = "传入ids") public R JobTransferPlan(@Parameter(description = "主键集合", required = true) @RequestParam String ids, @Parameter(description = "培训师id", required = true) @RequestParam Long teacherId, @@ -166,7 +170,7 @@ public class PostHandleController extends BladeController { * @return */ @PostMapping("/layoffPlan") - @ApiOperationSupport(order = 8) + @ApiOperationSupport(order = 10) @Operation(summary = "批量下岗计划", description = "传入ids") public R layoffPlan(@Parameter(description = "主键集合", required = true) @RequestParam String ids, @Parameter(description = "培训师id", required = true) @RequestParam Long teacherId, @@ -180,7 +184,7 @@ public class PostHandleController extends BladeController { */ @IsAdmin @GetMapping("/export-postHandle") - @ApiOperationSupport(order = 9) + @ApiOperationSupport(order = 11) @Operation(summary = "导出数据", description = "传入postHandle") public void exportPostHandle(@Parameter(hidden = true) @RequestParam Map postHandle, BladeUser bladeUser, HttpServletResponse response) { QueryWrapper queryWrapper = Condition.getQueryWrapper(postHandle, PostHandleEntity.class); @@ -192,4 +196,33 @@ public class PostHandleController extends BladeController { ExcelUtil.export(response, "岗位处理数据" + DateUtil.time(), "岗位处理数据表", list, PostHandleExcel.class); } + /** + * 下载Excel模板 + */ + @GetMapping("/downloadExcelTemplate") + @ApiOperationSupport(order = 12) + @Operation(summary = "下载Excel模板", description = "") + public ResponseEntity downloadExcelTemplate() { + return ExcelExtUtil.downloadXlsTemplate( + "Excel/jobTransfer/岗位处理导入模板下载.xls", + "岗位处理导入模板下载.xls"); + } + + /** + * 导入Excel + */ + @PostMapping("/importExcel") + @ApiOperationSupport(order = 13) + @Operation(summary = "导入Excel", description = "MultipartFile") + public R importExcel(@RequestParam("file") MultipartFile file) { + R checkR = ExcelExtUtil.importExcelCheck(file); + if (checkR != null) { + return checkR; + } + List importList = ExcelUtil.read( + file, 0, 1, PostHandleImport.class + ); + return postHandleService.saveExcelData(importList); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java index 10945d1e..05d9052b 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.springblade.core.tool.api.R; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleImport; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -74,4 +75,11 @@ public interface IPostHandleService extends BaseService { */ R layoffPlan(List ids, Long teacherId, String teacherName, Long trainingPlanId); + /** + * 导入Excel + * + * @param postHandleEntityList + * @return + */ + R saveExcelData(List postHandleEntityList); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index e6ec1149..70815818 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -1,18 +1,23 @@ package org.springblade.desk.jobTransfer.service.impl; import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import jakarta.annotation.Resource; import org.springblade.core.tool.api.R; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; -import org.springblade.desk.jobTransfer.pojo.enums.PostHandleStatusEnum; -import org.springblade.desk.jobTransfer.pojo.enums.StaffTypeEnum; -import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; +import org.springblade.desk.jobTransfer.pojo.enums.*; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; +import org.springblade.desk.jobTransfer.pojo.excel.PostHandleImport; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; import org.springblade.desk.jobTransfer.mapper.PostHandleMapper; import org.springblade.desk.jobTransfer.service.ICultivateDetailService; import org.springblade.desk.jobTransfer.service.IPostHandleService; +import org.springblade.system.cache.SysCache; +import org.springblade.system.cache.UserCache; +import org.springblade.system.pojo.entity.User; +import org.springblade.system.pojo.entity.UserInfo; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -20,9 +25,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** * 岗位处理 服务实现类 @@ -33,7 +37,7 @@ import java.util.List; @Service public class PostHandleServiceImpl extends BaseServiceImpl implements IPostHandleService { - @Autowired + @Resource private ICultivateDetailService iCultivateDetailService; @Override @@ -102,7 +106,7 @@ public class PostHandleServiceImpl extends BaseServiceImpl postHandleImports) { + //检查导入的集合postHandleImports,不允许用户code重复 + Set importedCodes = new HashSet<>(); + Set duplicateCodes = postHandleImports.stream() + .map(PostHandleImport::getCode) // 假设PostHandleImport有getCode方法 + .filter(code -> !importedCodes.add(code)) // 如果add失败,说明已存在,即重复 + .collect(Collectors.toSet()); + + if (!duplicateCodes.isEmpty()) { + // 存在重复的用户code,返回错误信息。假设R是统一的返回结果类 + return R.fail("导入数据中存在重复的工号:" + duplicateCodes); + } + List list = postHandleImports.stream().map(this::convertSingle).collect(Collectors.toList()); + //获取全部用户id,对比PostHandleEntity已有数据,不允许重复添加 + List ids = list.stream().map(PostHandleEntity::getUserId) + .collect(Collectors.toList()); + Long existCount = this.lambdaQuery() + .in(PostHandleEntity::getUserId, ids) + .eq(PostHandleEntity::getIsDeleted, 0) + .count(); + if (existCount > 0) { + return R.fail("用户已存在岗位处理记录,不允许重复添加"); + } + boolean saved = this.saveBatch(list); + if (!saved) { + return R.fail("操作失败"); + } + try { + createPlan(list); // 确保此方法中的异常能传播出来 + } catch (Exception e) { + // 由于配置了 rollbackFor = Exception.class,异常抛出后事务将回滚 + throw new RuntimeException("创建培训计划失败,数据已回滚", e); + } + return R.status(saved); + } + + /** + * 转换单个对象 + */ + private PostHandleEntity convertSingle(PostHandleImport excel) { + PostHandleEntity entity = new PostHandleEntity(); + // 核心:属性拷贝,两个类的字段名和类型必须一致 + BeanUtils.copyProperties(excel, entity); + // 对于字段名不完全一致或有特殊处理的字段,可以在此手动设置 + //用工类型 + entity.setStaffType(StaffTypeEnum.of(excel.getStaffTypeName()).getCode().shortValue()); + //用户及部门 + UserInfo userByCode = UserCache.getUserByCode(excel.getCode()); + if (userByCode == null || userByCode.getUser() == null) { + //报错并提示 + throw new IllegalArgumentException("工号 '" + excel.getCode() + "' 在系统中不存在,请检查数据准确性"); + } + entity.setUserId(userByCode.getUser().getId()); + entity.setName(userByCode.getUser().getRealName()); + entity.setDeptId(Long.valueOf(userByCode.getUser().getDeptId())); + //技能等级 + entity.setSkill(SkillEnum.of(excel.getSkillName()).getCode().shortValue()); + //婚姻状态 + entity.setMarriage(MarriageEnum.of(excel.getMarriageName()).getCode().toString()); + // 如果是正式工状态为正常 + if (entity.getStaffType() == StaffTypeEnum.FORMAL.getCode().shortValue()) { + entity.setPhStatus(PostHandleStatusEnum.NORMALITY.getCode().shortValue()); + } else { + entity.setPhStatus(PostHandleStatusEnum.IN_PRACTICE.getCode().shortValue()); + } + return entity; + } /** * 实习工自动创建一条培训计划 * - * @param postHandleEntity + * @param postHandleEntitys */ - public void createPlan(PostHandleEntity postHandleEntity) { - if (postHandleEntity.getStaffType() == StaffTypeEnum.of("实习工").getCode().shortValue()) { - CultivateDetailEntity cultivateDetailEntity = new CultivateDetailEntity(); - cultivateDetailEntity.setPhId(postHandleEntity.getId()); - cultivateDetailEntity.setType((short) 1); - cultivateDetailEntity.setCaStatus(TrainingStatusEnum.of("未配置").getCode().shortValue()); - iCultivateDetailService.save(cultivateDetailEntity); - } + public void createPlan(List postHandleEntitys) { + //新增实习工时,为其创建一条培训计划 + List cultivateDetailEntities = postHandleEntitys.stream() + .filter(entity -> entity.getStaffType() == StaffTypeEnum.FIELD_WORK.getCode().shortValue()) + .map(fieldWork -> { + CultivateDetailEntity detailEntity = new CultivateDetailEntity(); + detailEntity.setPhId(fieldWork.getId()); + detailEntity.setType((short) 1); + detailEntity.setCaStatus(TrainingStatusEnum.NOT_CONFIGURED.getCode().shortValue()); + return detailEntity; + }) + .collect(Collectors.toList()); + + iCultivateDetailService.saveBatch(cultivateDetailEntities); } } diff --git a/blade-service/blade-desk/src/main/resources/Excel/jobTransfer/岗位处理导入模板下载.xls b/blade-service/blade-desk/src/main/resources/Excel/jobTransfer/岗位处理导入模板下载.xls new file mode 100644 index 0000000000000000000000000000000000000000..125619c021d7c87804525efe3383472e435586a9 GIT binary patch literal 21504 zcmeHP2V4}_*1x+fuz*MvDGCds6zL$KA|PO=C}0IekOhngiijqP5W7JUyCNDJw%DR# z??jD?4SNg`G}wD$(5Tt(oS7}Nv$JG*@BQBQz3=z#{_f1&bI<*sbI(1u%$=FNa@nMI z?f2GogcX8`7Wqq}M|2o;9$aIjf-xa{xWM#Z5{ZN+5(1b14gWzF_zb!_N!w5WXJ?4m z=DHAt5cMGHLo|Tc45A^#<`9h_f(sB6h^7$DAeuvL0nq|tONf>btsq)Mw1Lk93)-+X2p6Ks%vLGYkajIb;+`q4XF<6Ps`}C43%2 z$qcVaQRM$BjOOe{;-Tgfq2>`J8IH-C05EvWK|T-CSSQqhk=5wsSG1YHdU0et84bT= z%J#jW71Ai1ASIWKgzKzEkeoq2%Ei8`seJ6uRZ>jU9aTa75d&?*?*G^inf)Kr>iR$C zVgJYTf5ZQM3+M@r2~UR@mGW=kkWY>IAC02<$87HO>;)cG01k3O>ec`5GwLH>aG;}N zP>@{q6YEGut`eFgDr|6iUz@zCBUB#bjv&rcEw zO;ow$rCZAUZ8O0t~60@$K6WF&W0+EfA9S zPJ8Zn0j&%oIx6OeLd16L2@%&S@epw>k_r*!O@@f;mDvz+eX~Yy?xuR|pM~E{ic_gg4<&kf%@IoQKuqIMIpF#2; z3hL^Qdh%~vyiw+1W4ve?)ZgvHjtHP>vuLk@whbcck2dKE5!YUQA>x=l2qM;HI7GBT z21Fd6$3R5eVE-pN+GI$~Mcs2?9UTCwgYz!INy=9DfhQ5TVO~g0&dD4p`Zt9zN{3_~ z+TjFLtP5Q6p!NB%;;gXUzTka9;h2G5fxv-w8N?5z_~ubZ z2kO`yjy$rTD)SRX@rD)b&%iGvC1^@A^ERK?Ytr#4GPRw@4E2%3zA!v}v+<#$uVFHl4O8T8}ECnT5yANfN# z_2CgeHFP~rIstxF{SjZNhTnvfAManda0m%fL)TM7XSSolPn7jRx~;$x`W5s_hjNED zZf)9lb%u*Xck0qs(3oKfxY2g zRgp^>ONm7U7Kd9|DGSPBU_cUK+5(7(#iNWQWi%qY@ZS1M2%e)oQ#*&&Qn%2AypuqA zc{m|LI*v&1BrsV2F3V_~jy;`=UmYD6GF<%sU+HK?9=4M#@M(L>>x&~b27wJ_e^t7t z8oHhuy0sd*of^8U8oHYrx;lL<)bO`gLsy4S^TUut`-$8>G`}jH)<>02>!V6nhwn}4 zsmk9`s=pqs&wHx1;6S${-sE!mGcF7%`gI}-6`cTBnjaTKTy)&*QqV(T?L_m->8$>U ziz|v>ZXb6_PhA9PpzV(fWtyIrcHHi`9T5ajdg7vyqO~tRJQiQ7Vqstb?Lv?Wr|V@+;WPPZx?Gu;})P@w!dDL79>x<^FRN|`^!2PNw6~J-4NdlL}ymZ?r&HmM`JRp{3rJ@cv1Qh|_Qv02aHjoE3@kg=`QU zJ~aSAH&hRTW32`t=$h(5aG=!y1l?6V2+k@RfS?Pj2f-;z0}ym;^&mJ;{w+vVWaF)a zlZFN$jkgXCoEm^M-a7c4O9PO`TL&MMX#moA>)?|%4L}-i9eh-$0D*+^I865)AK%7X z2cPw60MdBt;6|MWAdR<+dX=iucQ9L`R~u4nhCN z49VF`62%b5mg*vxioE!IP6f6*%h7bq z=7d?03aU#jHvm=`QG>Oa``;BlonN`-`ks3^sx$&^BxR43RFqLpXT zRNKM}*y*;ARa8kS)dH|z#wY;Nlxv~ti#||5;fpG5A+xchkSDLUs#IUORP1vaxQyT5 z6=1K=Iw+}GCT7)3);f}BWehdhP3#XKiY7+OD_K(p!sU0&=9JllNz=TE*-8bll*;2) zN>a5#UbBCFXJ8L$f%5i2zbhn#%1WuaQAc3=+v%Hr6sH(S*^LbQ#hQRLzL4mw8A#&` zi6G5D8ed3s(F~;Vg+#DsAj%5~wvUAX2<`Zs{Zr=n5=oVckL}*QTV-rx(qxX0G>}3C z+1SRUm;0n07d%5MbLOK2#`I`vjaB(X9&Bu4;sfV;29NZwt$G6tpa=84> zky8%S-+X+3-!+|EjxDzwE`M|8l*9BlAK!E5&T-4J!Xmgh_44P)Whpdx*5xtFBG;{X4W#2@CoMN5`&scVeuCc|Aoxg4B_c(;v2%`FGoa=Wh0u%5os^g0I{6{ z5q*=5Xevjf{ZS2~BxGCFQ>l(l3PkimPgbqX@)5FvC=bULsXSeHZVWo-4_4LL8g$Md%+wioo@6@1>*+EKJ$NAp zysbxO=iw@|td_61uhYbOBYl{t^^pI!SWQZ9`Qg;*A^|Cv{0C>T!3!@u$Y7QM7W+oOW{4gtj4$r zLRk&9#!TFFqP13}gi3jON~uMBBjO20;GM{*PwyWW-Y+O)p>RA)iRoL}HHe3sZPeW4In<&>qU1CQSUD6F2tH-Mfa%VlDKo-zz0Soni3=%+Hfgs^n61YH#QvT+A1 zD{mL{A0*(W6zxC0g<9Ylw#rc2TA)yPTvUus?Bb=gUkHd_p$>35vN&}lx^hlsKk9&f z#4mA=UMLJuF2rjEeuO#9o`V}uvbHOOT`H;V^k6{%IE&{0*-zCUTL2E`FnxgOkJyk( z{)hyHKhi0t5Afg>Y}!I}9?la1w0tp#d~-^^SV=x^H_7S|5|XDZzv=x!KmrT(!0xQ! zlCKALe>?Pe(aR;%^HhhgLfChbJ6}h1KE+LCXXVBaw1&2p<;ogFHaB5KaH~e%nQ*G= zq`P_h7R&L z^ZbH^!eM~N9G>*SK`{qjiAN|R29`26J zfc|#`HxY>riOUd+bG=K2mZX#+lb#*vm-g4g%lYdWd01{Pn0EmDcJRRM2~W@x-tm={ zImr`}laOdz$tRy+i=+kcV*~@5WL_4-DR6hFQ`FFN z{~5@?&>^o~;pf8U7svPe+49+(1%VIFh2N^z+PACqpe`@#KP-2=U$Xa5h=269-r>S& zdrmC8{(SR??&mDRJkB3g9X9_WdTTJ(v~pLoIZ2n( zMON+)k9S@@=lR{6gENoR6z?vc>_4n3`lQ5s_`8tDX4k3;5(>Z~5?FgG+pGNMrbj2h zPX6Ge_)bz%jyQ9irw1OV&%gXdrB}0AuVx&bb~V3Wb){w7JkRoyaL@Jmq|Uh@!@=gR z&9l2PXLa-s3#V^*)v%?@UptCE)GdA_vMAlEQ+Yo;nGiiVFI-Zteu_jxTbHJW`V=1A<0u+*#PjH`QhyX%+YSg>iq*rZ!_%U4^~ z`bS=SXAyfVVEB&to6kx1RC-mdjyYMd)2+UnAS+;Tvv})u+bb0Z zKHU5aRZ*?zs4tgVOoIx30}EaypkY-g;`jsN%(7OD!6H4v` zj5zGvEoJwG9f$uQ;bqoc&#tNd_U^6v2h##B-7~+jvX9|lw=!MBZ^RcpX77JJ*=>`} z=AU}DI_;KOcecgDClf8t?VV?Kuh);``sKH|Q8HtDMUCiYMf)4}uiR>e9d!JnOHq%3 zkFPbj-0$|ReLH=AAh+_o`uZ!6;bDr072O*cYSUHlMzx<0?lb?czwxn_j|)V(**AZA z*JjucHqZb3{%%@;UW!w<;=K`l=DPF~J*jzrbCjpH{)TRz+Fw0e>ukKH%e(4=MQfr8 zB4#aiTjakgf4I>|laDF=?llX!H20W&{iKGZjm=h>*}Ggm)b(?;d#Izqml1mo*aWpU z3OQ^e+A_u>`HXM1p+$sFgHiD3Uu}OGsMkx6|1t9AgRBzgC9hsR|Iv8n_eUznEj)SD zrKQV&F)sI4^{h2`y>j=enjzaO7NwMGJ6F0K$oE@SU9#r;JgZi2tBfoY(|SMsx@69R zyr@Hh9 zl*Wu4XdSU%Qk|r){5XNZiT;T_;_!-s@VRQ&?#{V91#7^Zn;{>hU>k zPDSYHnE9`!96mm9!t14yqlTAeMSULsS||Q}c4qCYO52F5CvEzEot;%{Gw+YAoprT_ zn@{ZbfBoX8IO%W2q)InF9ZRr-hF>t!;%jE7(Q`f~=JN1s4)}XiVWy|ojKU-G&I#}tK zewX#STXEgNL0{$v_c)u_)^G3UP8LpqMWc%*gcN+dJU?me@q&*}YQB5*O|M&Ts?Qw% z{O;NQf=?fU8(v#(7asla*Sov-l8%3|yZp*=cj;eNMczCc^ux zswGBK&eS+XB!%0K+1H`wvh&#L{Da0p+I4$fw(CdSTVW96F<)=O(+PWr$3@OPU$~=l z&Z_F?u`fK*4n*DfW6ZJENB`)Y=P)IzJlOpD$0KFip8V$jb3xxFA1AKv((bh=Gp~I9 zx=;NUPm>&V&YrY1JL#K&PYq6OYbZEvd-wT)YujyJx`;D3Sj;W!z30)=E92JLH~XUV zxZ935cy2MZo2D#G=IgdJ$jmIMecEU1!hTc7-QIai>xJXe@@IqAmGud9Dox&*Jum&Y z-{sh{2U9W8az-%Oz~rlBYTsb(R;Jv|8-dX2GSn z1y99!Q9jwe*X~Yz5+7pMzD&YIpo%R|r1>RM&$)HbmL zHrXE4pZDzHp*_8~gvZQUH+M$2_4y6?Zds+Hb|u`>S$e1UNuS)ShC?PrIj=B&R5M)v z(fIc(9`@}Vo1NxeR98N5bHtky_aX-8*!Q=)ut9jhWL219?AF<#b2rw6dLHksbz$yI z%dB@pji(zeP1H@T4{xK}Yr>+)jd7-~onPFXU7R~sPd_PRM#B#8;~fVjyzRJQ(&C7g z8K)lJ*PCfNYTvU?g(gd0$8H)H;k)j&?QYZE{XcK-urW68Ma!=@&irO<)my=`)~79g z<7aI+vTnqVt(JoZ)|c9^8PM~5_rN*hr&UaQntN^QDDzhP@@g*3%l*~uYT~=d9{qD~ z{r=r@-^$&F+fKhti~1#{qM7&JK8Gt?Rv+~^xT^f-_7`SbJ$SsG_a8kuG%!PGQE?-+ zd54P=<7QT*EnA=UYLLfk(=P^&G+p|1|I(~m_XoTazRLBQxc-t+-n0G&;n(VqRY&~v zDLGlP>4cMKXwaXp|H!+v*l)}9f@Xr5hF5=l-plol*G64fTXRfohF43z-3Jqz4NQAZ ztci`D&8gXfF}+D=_bB~SUgpyqrcMxMXJ0#Hyr5mp>?_-^Yfb;PgQ0(jW54Gw40pH* zJ!T~zTQTzRvQ_8IM)>^Vow3zg*y+iVv85+RA9!9I8fy_f=T7I;UBjmqX9v7!k-ngh zb5uLWSZ5FK``rBn= zrEixF_~r;h1=va@)$p=KStx$%47U)l{^!F@n-O(w0!O^f5|U3_-c(1W^bJX(=&lqU zH#7;EN>K`_)jlL4w1w?P_y-)`*N}4(?gZ!?tZ5YYbn4g+xYMZcFvN**?JP%m9OA;b zUJD;@=z&)FsXdQEfO`}wTnmw%;mc=XJBX+OcL>7W11j_f3?a#D6 z9{|uV{?IlQ^6}OVubX3|1FsQ58Yb8@Y#TNW9%3lbKEneU4B-Ut%;*#k{^bSRj85?( zg@I0KK?-HjDFLKV3Z2r16ynn<9l%5{pi{c=|1tRH5uFkOC%QGA(t{Lk;Ls_3NMRGw zDFaBM%hRc5kV1Xwlp$c^{SlpN4)XBMl};H!9)4{>r;MQ-T9Qtg!1w?7odlgSg*>z= zoic-zi9BTvDN{%tgH2$pb$6v-4@L^FnQ3#X4BDotWzd36DRT>IZ3=>dNIQ6xVxTfO~A@QdN zzhk_9oW;zrn2_fly=e*|w@dL@m;xJLPz?4`;Aad!*j}d2T2M($3t+aw^D$lsC#W8R zYVkbN;J>xv3E4D7i-JHs5CYE#LF?6n6T$=`ba|^2hDX=K!;}%DjFRw7187l}z`+YG zf>3x)7q*0m)usasz-VSI=yY_?lx6(){J&=b9NDtT2x=QsO#K5`)BcYt5E>m@RTea< z3658b>0Sj69S-tG!#|9~z!vKlniN;!!G8gf$;Pu%rkVt9iH=m0_m7a9D*qpm(O8*( zM*c(q#<`^kB97_!-#9o<Df!@rTMgg8pb+T> z-vAjncVcjch}1ZUSSSG^%AO@nBMo_bg%6{QWuxbnhDI>lYXn;p2mkZ7BV4A>iZH!N=X($HUvh z%fs8>&s(vdj9eN79{hum77Sn6z2ok&8p!`=S^fto)OXYX literal 0 HcmV?d00001 From 35d377cacf01b1f670a5c0714bba07626835664c Mon Sep 17 00:00:00 2001 From: qinyulong Date: Mon, 12 Jan 2026 09:13:47 +0800 Subject: [PATCH 07/20] =?UTF-8?q?=E5=9F=B9=E8=AE=AD=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E7=89=B9=E5=AE=9A=E6=A3=80=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/CultivateDetailEntity.java | 5 + .../pojo/request/CultivateDetailQuery.java | 81 ++++++++++++++++ .../pojo/vo/CultivateDetailVO.java | 23 +++++ .../controller/CultivateDetailController.java | 5 +- .../mapper/CultivateDetailMapper.java | 5 +- .../mapper/CultivateDetailMapper.xml | 93 ++++++++++++++++++- .../service/ICultivateDetailService.java | 3 +- .../impl/CultivateDetailServiceImpl.java | 5 +- doc/sql/mes/increase-260108.sql | 6 ++ 9 files changed, 215 insertions(+), 11 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CultivateDetailQuery.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java index f1b083f6..705554c4 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/CultivateDetailEntity.java @@ -61,6 +61,11 @@ public class CultivateDetailEntity extends BaseEntity { */ @Schema(description = "下发时间") private Date distributeTime; + /** + * 完成时间 + */ + @Schema(description = "完成时间") + private Date finishTime; /** * 附件链接 */ diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CultivateDetailQuery.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CultivateDetailQuery.java new file mode 100644 index 00000000..19fb4664 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CultivateDetailQuery.java @@ -0,0 +1,81 @@ +package org.springblade.desk.jobTransfer.pojo.request; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springblade.core.mp.base.BaseEntity; + +import java.util.Date; + +/** + * 培训安排分页检索 实体类 + * + * @author qyl + * @since 2026-01-09 + */ +@Data +public class CultivateDetailQuery extends BaseEntity { + + /** + * 姓名 + */ + @Schema(description = "姓名") + private String name; + /** + * 工号 + */ + @Schema(description = "工号") + private String code; + /** + * 用工类型 + */ + @Schema(description = "用工类型(1实习工,2正式工)") + private Short staffType; + /** + * 培训类型(1实习,2转岗,3下岗) + */ + @Schema(description = "培训类型(1实习,2转岗,3下岗)") + private Short type; + /** + * 培训模板ID + */ + @Schema(description = "培训模板ID") + private Long planId; + /** + * 培训师ID + */ + @Schema(description = "培训师ID") + private Long teacherId; + /** + * 培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成) + */ + @Schema(description = "培训状态(1未配置,2等待下发,3已下发-培训中,4已到期,5已培训-待确认,6培训完成)") + private Short caStatus; + /** + * 下发时间 + */ + @Schema(description = "下发时间") + private Date distributeTime; + + /** + * 培训周期(天) + */ + @Schema(description = "培训周期(天)") + private Integer cycle; + /** + * 预警周期(天) + */ + @Schema(description = "预警周期(天)") + private Integer earlyWarningDay; + + /** + * 开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date startTime; + /** + * 结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date endTime; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java index 5490bc4e..216d6f24 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java @@ -18,4 +18,27 @@ public class CultivateDetailVO extends CultivateDetailEntity { @Serial private static final long serialVersionUID = 1L; + //姓名 + private String name; + + //用工号 + private String code; + + //用工类型 + private String staffTypeName; + + //培训类型 + private String typeName; + + //培训周期(天) + private Integer cycle; + + //预警周期(天) + private Integer earlyWarningDay; + + //培训计划 + private String planName; + + //状态 + private String caStatusName; } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java index 2644f031..40f388e1 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java @@ -14,6 +14,7 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -62,8 +63,8 @@ public class CultivateDetailController extends BladeController { @GetMapping("/page") @ApiOperationSupport(order = 3) @Operation(summary = "分页", description = "传入cultivateDetail") - public R> page(CultivateDetailVO cultivateDetail, Query query) { - IPage pages = cultivateDetailService.selectCultivateDetailPage(Condition.getPage(query), cultivateDetail); + public R> page(CultivateDetailQuery cultivateDetailQuery, Query query) { + IPage pages = cultivateDetailService.selectCultivateDetailPage(Condition.getPage(query), cultivateDetailQuery); return R.data(pages); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java index 2ca14dbf..b21bd807 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java @@ -2,6 +2,7 @@ package org.springblade.desk.jobTransfer.mapper; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -22,10 +23,10 @@ public interface CultivateDetailMapper extends BaseMapper * 自定义分页 * * @param page 分页参数 - * @param cultivateDetail 查询参数 + * @param query 查询参数 * @return List */ - List selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail); + List selectCultivateDetailPage(IPage page, CultivateDetailQuery query); /** diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml index 7ce4430e..a806ff0f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml @@ -22,13 +22,98 @@ + + + + + + + + + + + + + + + + + + + + + - + SELECT + cd.*, + bu.real_name as name, + bu.code as code, + mph.staff_type, + mp.cycle, + mp.early_warning_day, + mp.name as plan_name + FROM + mes_cultivate_detail cd + LEFT JOIN + mes_post_handle mph ON cd.ph_id = mph.id AND mph.is_deleted = 0 + LEFT JOIN + mes_training_plan mp ON cd.plan_id = mp.id AND mp.is_deleted = 0 + LEFT JOIN + blade_user bu ON mph.user_id = bu.id + WHERE + cd.is_deleted = 0 + + AND bu.real_name LIKE CONCAT(CONCAT('%', #{query.name}), '%') + + + AND bu.code LIKE CONCAT(CONCAT('%', #{query.code}), '%') + + + AND mph.staff_type = #{query.staffType} + + + AND cd.type = #{query.type} + + + AND cd.plan_id = #{query.planId} + + + AND cd.teacher_id = #{query.teacherId} + + + AND cd.ca_status = #{query.caStatus} + + + AND cd.distribute_time = #{query.distributeTime} + + + AND mp.cycle = #{query.cycle} + + + AND mp.early_warning_day = #{query.earlyWarningDay} + + + + AND cd.DISTRIBUTE_TIME >= #{query.startTime} + + + AND cd.DISTRIBUTE_TIME <= #{query.endTime} + + ORDER BY cd.create_time DESC diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java index 58806370..38b7e05e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java @@ -3,6 +3,7 @@ package org.springblade.desk.jobTransfer.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; @@ -23,7 +24,7 @@ public interface ICultivateDetailService extends BaseService */ - IPage selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail); + IPage selectCultivateDetailPage(IPage page, CultivateDetailQuery cultivateDetail); /** diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java index 37aa8855..cdc4e3a4 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java @@ -2,6 +2,7 @@ package org.springblade.desk.jobTransfer.service.impl; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; +import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; import org.springblade.desk.jobTransfer.mapper.CultivateDetailMapper; import org.springblade.desk.jobTransfer.service.ICultivateDetailService; @@ -22,8 +23,8 @@ import java.util.List; public class CultivateDetailServiceImpl extends BaseServiceImpl implements ICultivateDetailService { @Override - public IPage selectCultivateDetailPage(IPage page, CultivateDetailVO cultivateDetail) { - return page.setRecords(baseMapper.selectCultivateDetailPage(page, cultivateDetail)); + public IPage selectCultivateDetailPage(IPage page, CultivateDetailQuery cultivateDetailQuery) { + return page.setRecords(baseMapper.selectCultivateDetailPage(page, cultivateDetailQuery)); } diff --git a/doc/sql/mes/increase-260108.sql b/doc/sql/mes/increase-260108.sql index 3387114d..ecc45c7a 100644 --- a/doc/sql/mes/increase-260108.sql +++ b/doc/sql/mes/increase-260108.sql @@ -357,3 +357,9 @@ COMMENT ON COLUMN MES_EQUIPMENT_MAINTENANCE.MAINTENANCE_STATUS IS '维护状态(1正常,2到期,3离职)'; COMMENT ON TABLE MES_EQUIPMENT_MAINTENANCE IS '岗位设备维护'; + +--加字段 +ALTER TABLE MES_CULTIVATE_DETAIL + ADD (FINISH_TIME DATE); +COMMENT +ON COLUMN MES_CULTIVATE_DETAIL.FINISH_TIME IS '完成时间' \ No newline at end of file From ba11b7122822837ea070a4fbb1ad5509839a4c36 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Mon, 12 Jan 2026 14:11:34 +0800 Subject: [PATCH 08/20] =?UTF-8?q?=E5=B2=97=E4=BD=8D=E8=AF=81=E4=B9=A6?= =?UTF-8?q?=E7=BB=B4=E6=8A=A4=E6=A3=80=E7=B4=A2=E5=8A=9F=E8=83=BD+?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E6=9B=B4=E6=96=B0=E5=B2=97?= =?UTF-8?q?=E4=BD=8D=E8=AF=81=E4=B9=A6=E7=BB=B4=E6=8A=A4=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/enums/MaintenanceStatusEnum.java | 58 +++++++ .../pojo/request/CertificateLedgerQuery.java | 47 +++++ .../pojo/vo/CertificateLedgerVO.java | 21 +++ .../pojo/vo/CertificateMaintenanceVO.java | 93 ++++++++++ .../org/springblade/desk/DeskApplication.java | 2 + .../CertificateMaintenanceController.java | 36 +++- .../mapper/CertificateMaintenanceMapper.java | 12 +- .../mapper/CertificateMaintenanceMapper.xml | 164 +++++++++++++++++- .../ICertificateMaintenanceService.java | 12 +- .../CertificateMaintenanceServiceImpl.java | 11 +- 10 files changed, 439 insertions(+), 17 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CertificateLedgerQuery.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateLedgerVO.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java new file mode 100644 index 00000000..0d2e996d --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java @@ -0,0 +1,58 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 证书维护状态枚举 + * + * @author qyl + * @date 2026-01-12 + */ +@Getter +@AllArgsConstructor +public enum MaintenanceStatusEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + NORMAL("正常", 1), + DUE("到期", 2), + DEPART("离职", 3), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static MaintenanceStatusEnum of(String name) { + return Arrays.stream(MaintenanceStatusEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(MaintenanceStatusEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(Integer code) { + MaintenanceStatusEnum item = Arrays.stream(MaintenanceStatusEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CertificateLedgerQuery.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CertificateLedgerQuery.java new file mode 100644 index 00000000..8f81505a --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/CertificateLedgerQuery.java @@ -0,0 +1,47 @@ +package org.springblade.desk.jobTransfer.pojo.request; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * 岗位证书管理检索请求入参 + */ +@Data +public class CertificateLedgerQuery { + /** + * 姓名 + */ + @Schema(description = "姓名") + private String name; + /** + * 所属班组 + */ + @Schema(description = "所属班组") + private Long deptId; + + /** + * 所属岗位 + */ + @Schema(description = "所属岗位") + private String station; + /** + * 技能等级 + */ + @Schema(description = "技能等级") + private Short skill; + /** + * 证书类型 + */ + @Schema(description = "证书类型") + private Long certificateId; + /** + * 证书编号 + */ + @Schema(description = "证书编号") + private String certificateCode; + /** + * 维护状态(1正常,2到期,3离职) + */ + @Schema(description = "维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateLedgerVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateLedgerVO.java new file mode 100644 index 00000000..e236d254 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateLedgerVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.List; + +/** + * 岗位证书台账VO + */ +@Data +public class CertificateLedgerVO { + + //人员岗位数据 + @Schema(description = "人员岗位数据") + private PostHandleVO postHandleVO; + + //岗位证书数据集合 + @Schema(description = "岗位证书数据集合") + private List certificateMaintenanceVOList; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java index fd675c8a..1c6e9ebf 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java @@ -1,10 +1,14 @@ package org.springblade.desk.jobTransfer.pojo.vo; +import io.swagger.v3.oas.annotations.media.Schema; import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springblade.desk.jobTransfer.pojo.enums.MaintenanceStatusEnum; import java.io.Serial; +import java.util.Calendar; +import java.util.Date; /** * 证书维护 视图实体类 @@ -17,5 +21,94 @@ import java.io.Serial; public class CertificateMaintenanceVO extends CertificateMaintenanceEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 证书名称 + */ + @Schema(description = "证书名称") + private String CertificateTypeName; + /** + * 证书有效期 + */ + @Schema(description = "证书有效期") + private Short validityPeriod; + /** + * 适航有效期 + */ + @Schema(description = "适航有效期") + private Short airworthinessValidityPeriod; + /** + * 宇航有效期 + */ + @Schema(description = "宇航有效期") + private Short astronautValidityPeriod; + // 适航到期日期 + public Date getAirworthinessDateExpire() { + if (this.getAirworthinessDate() != null && this.airworthinessValidityPeriod != null) { + Calendar cal = Calendar.getInstance(); + cal.setTime(this.getAirworthinessDate()); + cal.add(Calendar.YEAR, Integer.valueOf(this.airworthinessValidityPeriod.toString())); + //得到结算后的结果 yyyy-MM-dd HH:mm + Date date = cal.getTime(); + cal.setTime(date); + cal.add(Calendar.MONTH, -1); + return cal.getTime(); + } else { + return null; + } + + } + + // 宇航到期日期 + public Date getAstronautDateExpire() { + if (this.getAstronautDate() != null && this.astronautValidityPeriod != null) { + Calendar cal = Calendar.getInstance(); + cal.setTime(this.getAstronautDate()); + cal.add(Calendar.YEAR, Integer.valueOf(this.astronautValidityPeriod.toString())); + //得到结算后的结果 yyyy-MM-dd HH:mm + Date date = cal.getTime(); + cal.setTime(date); + cal.add(Calendar.MONTH, -1); + return cal.getTime(); + } else { + return null; + } + } + + // 上岗证到期日期 + public Date getValidityPeriodExpire() { + if (this.getCertificateDate() != null && this.validityPeriod != null) { + Calendar cal = Calendar.getInstance(); + cal.setTime(this.getCertificateDate()); + cal.add(Calendar.YEAR, Integer.valueOf(this.validityPeriod.toString())); + //得到结算后的结果 yyyy-MM-dd HH:mm + Date date = cal.getTime(); + cal.setTime(date); + cal.add(Calendar.MONTH, -1); + return cal.getTime(); + } else { + return null; + } + } + + public String getMaintenanceStatusName() { + if (this.getMaintenanceStatus() == MaintenanceStatusEnum.DEPART.getCode().shortValue()) { + return MaintenanceStatusEnum.DEPART.getName(); + } + Date date = new Date(); + if (getAirworthinessDateExpire() != null && getAirworthinessDateExpire().getTime() < date.getTime()) { + setMaintenanceStatus(MaintenanceStatusEnum.DUE.getCode().shortValue()); + return MaintenanceStatusEnum.DUE.getName(); + } + if (getAstronautDateExpire() != null && getAstronautDateExpire().getTime() < date.getTime()) { + setMaintenanceStatus(MaintenanceStatusEnum.DUE.getCode().shortValue()); + return MaintenanceStatusEnum.DUE.getName(); + } + if (getValidityPeriodExpire() != null && getValidityPeriodExpire().getTime() < date.getTime()) { + setMaintenanceStatus(MaintenanceStatusEnum.DUE.getCode().shortValue()); + return MaintenanceStatusEnum.DUE.getName(); + } + setMaintenanceStatus(MaintenanceStatusEnum.NORMAL.getCode().shortValue()); + return MaintenanceStatusEnum.NORMAL.getName(); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/DeskApplication.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/DeskApplication.java index 1e25b375..084debd1 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/DeskApplication.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/DeskApplication.java @@ -28,6 +28,7 @@ package org.springblade.desk; import org.springblade.core.cloud.client.BladeCloudApplication; import org.springblade.core.launch.BladeApplication; import org.springblade.core.launch.constant.AppConstant; +import org.springframework.scheduling.annotation.EnableScheduling; /** * Desk启动器 @@ -35,6 +36,7 @@ import org.springblade.core.launch.constant.AppConstant; * @author Chill */ @BladeCloudApplication +@EnableScheduling public class DeskApplication { public static void main(String[] args) { diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java index ab5ffadf..f030bc6f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java @@ -1,9 +1,13 @@ package org.springblade.desk.jobTransfer.controller; +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.enums.ParameterIn; +import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import jakarta.annotation.PostConstruct; import lombok.AllArgsConstructor; import jakarta.validation.Valid; @@ -14,6 +18,9 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.CertificateLedgerQuery; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateLedgerVO; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -61,9 +68,18 @@ public class CertificateMaintenanceController extends BladeController { */ @GetMapping("/page") @ApiOperationSupport(order = 3) - @Operation(summary = "分页", description = "传入certificateMaintenance") - public R> page(CertificateMaintenanceVO certificateMaintenance, Query query) { - IPage pages = certificateMaintenanceService.selectCertificateMaintenancePage(Condition.getPage(query), certificateMaintenance); + @Operation(summary = "分页", description = "CertificateLedgerQuery") + @Parameters({ + @Parameter(name = "name", description = "姓名", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "deptId", description = "所属班组", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "station", description = "所属岗位", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "skill", description = "技能等级", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "certificateId", description = "证书类型", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + @Parameter(name = "certificateCode", description = "证书编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "maintenanceStatus", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), + }) + public R> page(CertificateLedgerQuery certificateLedgerQuery, Query query) { + IPage pages = certificateMaintenanceService.selectCertificateMaintenancePage(Condition.getPage(query), certificateLedgerQuery); return R.data(pages); } @@ -125,4 +141,18 @@ public class CertificateMaintenanceController extends BladeController { ExcelUtil.export(response, "证书维护数据" + DateUtil.time(), "证书维护数据表", list, CertificateMaintenanceExcel.class); } + @PostConstruct // 项目启动后立即执行一次 + public void init() { + updateMaintenanceStatus(); + } + + /** + * 更新证书维护状态 + * TODO 以后需要交由PowerJob服务统一管理 + */ + @Scheduled(cron = "0 0 0 * * ?") // 每天凌晨0点执行 + public void updateMaintenanceStatus() { + certificateMaintenanceService.updateMaintenanceStatus(); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java index 871ee6f6..85ea27e8 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.java @@ -2,6 +2,8 @@ package org.springblade.desk.jobTransfer.mapper; import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.CertificateLedgerQuery; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateLedgerVO; import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -22,10 +24,10 @@ public interface CertificateMaintenanceMapper extends BaseMapper + * @param certificateLedgerQuery 查询参数 + * @return List */ - List selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance); + List selectCertificateMaintenancePage(IPage page, CertificateLedgerQuery query); /** @@ -36,4 +38,8 @@ public interface CertificateMaintenanceMapper extends BaseMapper exportCertificateMaintenance(@Param("ew") Wrapper queryWrapper); + /** + * 更新证书维护状态 + */ + void updateMaintenanceStatus(); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml index 39a6038e..0846f923 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml @@ -22,14 +22,134 @@ + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MERGE INTO MES_CERTIFICATE_MAINTENANCE m + USING (SELECT ID, + VALIDITY_PERIOD, + AIRWORTHINESS_VALIDITY_PERIOD, + ASTRONAUT_VALIDITY_PERIOD + FROM MES_CERTIFICATE_TYPE + WHERE IS_DELETED = 0) ct + ON (m.CERTIFICATE_ID = ct.ID AND m.IS_DELETED = 0) + WHEN MATCHED THEN + UPDATE SET + m.MAINTENANCE_STATUS = + CASE + WHEN m.CERTIFICATE_DATE IS NOT NULL AND ct.VALIDITY_PERIOD IS NOT NULL THEN + CASE + WHEN m.CERTIFICATE_DATE + NUMTOYMINTERVAL(ct.VALIDITY_PERIOD, 'YEAR') < + SYSDATE THEN 2 + ELSE 1 END + WHEN m.AIRWORTHINESS_DATE IS NOT NULL AND ct.AIRWORTHINESS_VALIDITY_PERIOD IS NOT NULL + THEN + CASE + WHEN m.AIRWORTHINESS_DATE + + NUMTOYMINTERVAL(ct.AIRWORTHINESS_VALIDITY_PERIOD, 'YEAR') < SYSDATE + THEN 2 + ELSE 1 END + WHEN m.ASTRONAUT_DATE IS NOT NULL AND ct.ASTRONAUT_VALIDITY_PERIOD IS NOT NULL THEN + CASE + WHEN m.ASTRONAUT_DATE + + NUMTOYMINTERVAL(ct.ASTRONAUT_VALIDITY_PERIOD, 'YEAR') < SYSDATE THEN 2 + ELSE 1 END + ELSE 1 + END, + m.UPDATE_TIME = SYSDATE + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java index 6df8162a..77316fa0 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java @@ -3,6 +3,8 @@ package org.springblade.desk.jobTransfer.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.CertificateLedgerQuery; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateLedgerVO; import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; @@ -20,10 +22,10 @@ public interface ICertificateMaintenanceService extends BaseService + * @param certificateLedgerQuery 查询参数 + * @return IPage */ - IPage selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance); + IPage selectCertificateMaintenancePage(IPage page, CertificateLedgerQuery certificateLedgerQuery); /** @@ -34,4 +36,8 @@ public interface ICertificateMaintenanceService extends BaseService exportCertificateMaintenance(Wrapper queryWrapper); + /** + * 更新证书维护状态 + */ + void updateMaintenanceStatus(); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java index 6bab90f5..14d33de5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java @@ -2,7 +2,8 @@ package org.springblade.desk.jobTransfer.service.impl; import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; -import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; +import org.springblade.desk.jobTransfer.pojo.request.CertificateLedgerQuery; +import org.springblade.desk.jobTransfer.pojo.vo.CertificateLedgerVO; import org.springblade.desk.jobTransfer.mapper.CertificateMaintenanceMapper; import org.springblade.desk.jobTransfer.service.ICertificateMaintenanceService; import org.springframework.stereotype.Service; @@ -22,8 +23,8 @@ import java.util.List; public class CertificateMaintenanceServiceImpl extends BaseServiceImpl implements ICertificateMaintenanceService { @Override - public IPage selectCertificateMaintenancePage(IPage page, CertificateMaintenanceVO certificateMaintenance) { - return page.setRecords(baseMapper.selectCertificateMaintenancePage(page, certificateMaintenance)); + public IPage selectCertificateMaintenancePage(IPage page, CertificateLedgerQuery certificateLedgerQuery) { + return page.setRecords(baseMapper.selectCertificateMaintenancePage(page, certificateLedgerQuery)); } @@ -36,4 +37,8 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl Date: Mon, 12 Jan 2026 15:12:55 +0800 Subject: [PATCH 09/20] =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E7=B1=BB=E5=8F=96?= =?UTF-8?q?=E5=80=BC=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/LauncherConstant.java | 4 +- .../pojo/enums/CultivateStatusEnum.java | 61 +++++++++++++++++++ .../pojo/enums/MaintenanceStatusEnum.java | 3 + .../pojo/enums/PostHandleStatusEnum.java | 5 +- .../jobTransfer/pojo/enums/SkillEnum.java | 5 +- .../jobTransfer/pojo/enums/StaffTypeEnum.java | 5 +- .../pojo/enums/TrainingStatusEnum.java | 7 ++- .../pojo/vo/CultivateDetailVO.java | 20 +++++- .../jobTransfer/pojo/vo/PostHandleVO.java | 31 +++++++++- .../mapper/CultivateDetailMapper.xml | 2 +- 10 files changed, 132 insertions(+), 11 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/CultivateStatusEnum.java diff --git a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java index 0ff16892..2e147e81 100644 --- a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java +++ b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java @@ -14,9 +14,9 @@ public interface LauncherConstant { */ // String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; // 生产环境 -// String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; + String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; // 测试环境 - String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; +// String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; /** * nacos 用户名 diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/CultivateStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/CultivateStatusEnum.java new file mode 100644 index 00000000..a1abb2e4 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/CultivateStatusEnum.java @@ -0,0 +1,61 @@ +package org.springblade.desk.jobTransfer.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 培训类型枚举 + * + * @author qyl + * @date 2026-01-12 + */ +@Getter +@AllArgsConstructor +public enum CultivateStatusEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态枚举 + */ + PRACTICE("实习", 1), + JOB_TRANSFER("转岗", 2), + LAYOFF("下岗", 3), + ; + final String name; + final Integer code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return + */ + public static CultivateStatusEnum of(String name) { + return Arrays.stream(CultivateStatusEnum.values()) + .filter(enumItem -> enumItem.getName().equalsIgnoreCase(name != null ? name : "")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(CultivateStatusEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param code + * @return + */ + public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } + CultivateStatusEnum item = Arrays.stream(CultivateStatusEnum.values()) + .filter(enumItem -> enumItem.getCode() == code) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java index 0d2e996d..259c07cc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/MaintenanceStatusEnum.java @@ -49,6 +49,9 @@ public enum MaintenanceStatusEnum { * @return */ public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } MaintenanceStatusEnum item = Arrays.stream(MaintenanceStatusEnum.values()) .filter(enumItem -> enumItem.getCode() == code) .findFirst() diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java index 6dc966cd..d1fefcda 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java @@ -52,7 +52,10 @@ public enum PostHandleStatusEnum { * @param code * @return */ - public static String getName(int code) { + public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } PostHandleStatusEnum item = Arrays.stream(PostHandleStatusEnum.values()) .filter(enumItem -> enumItem.getCode() == code) .findFirst() diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java index 53f4f507..5f9dcb02 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/SkillEnum.java @@ -48,7 +48,10 @@ public enum SkillEnum { * @param code * @return */ - public static String getName(int code) { + public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } SkillEnum item = Arrays.stream(SkillEnum.values()) .filter(enumItem -> enumItem.getCode() == code) .findFirst() diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java index 8576d34c..9f64feef 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/StaffTypeEnum.java @@ -47,7 +47,10 @@ public enum StaffTypeEnum { * @param code * @return */ - public static String getName(int code) { + public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } StaffTypeEnum item = Arrays.stream(StaffTypeEnum.values()) .filter(enumItem -> enumItem.getCode() == code) .findFirst() diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java index 62152699..ae79787f 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/TrainingStatusEnum.java @@ -26,7 +26,7 @@ public enum TrainingStatusEnum { ISSUED("已下发-培训中", 3), EXPIRED("已到期", 4), TRAINED("已培训-待确认", 5), - OK_TRAINED("已培训", 6), + OK_TRAINED("培训完成", 6), ; final String name; final Integer code; @@ -51,7 +51,10 @@ public enum TrainingStatusEnum { * @param code * @return */ - public static String getName(int code) { + public static String getName(Integer code) { + if (code == null) { + return StringPool.EMPTY; // 或者返回一个默认值,如 "UNKNOWN" + } TrainingStatusEnum item = Arrays.stream(TrainingStatusEnum.values()) .filter(enumItem -> enumItem.getCode() == code) .findFirst() diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java index 216d6f24..0c8e0dc8 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CultivateDetailVO.java @@ -3,6 +3,9 @@ package org.springblade.desk.jobTransfer.pojo.vo; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springblade.desk.jobTransfer.pojo.enums.CultivateStatusEnum; +import org.springblade.desk.jobTransfer.pojo.enums.StaffTypeEnum; +import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; import java.io.Serial; @@ -24,9 +27,12 @@ public class CultivateDetailVO extends CultivateDetailEntity { //用工号 private String code; - //用工类型 + //用工类型名 private String staffTypeName; + //用工类型 + private Short staffType; + //培训类型 private String typeName; @@ -41,4 +47,16 @@ public class CultivateDetailVO extends CultivateDetailEntity { //状态 private String caStatusName; + + public String getCaStatusName() { + return TrainingStatusEnum.getName(null != this.getCaStatus() ? this.getCaStatus().intValue() : null); + } + + public String getStaffTypeName() { + return StaffTypeEnum.getName(null != this.getStaffType() ? this.getStaffType().intValue() : null); + } + + public String getTypeName() { + return CultivateStatusEnum.getName(null != this.getType() ? this.getType().intValue() : null); + } } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java index 054a18ad..7716f321 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/PostHandleVO.java @@ -1,8 +1,13 @@ package org.springblade.desk.jobTransfer.pojo.vo; +import io.swagger.v3.oas.annotations.media.Schema; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springblade.desk.jobTransfer.pojo.enums.PostHandleStatusEnum; +import org.springblade.desk.jobTransfer.pojo.enums.SkillEnum; +import org.springblade.desk.jobTransfer.pojo.enums.StaffTypeEnum; +import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; import java.io.Serial; @@ -19,11 +24,33 @@ public class PostHandleVO extends PostHandleEntity { private static final long serialVersionUID = 1L; //用户名 + @Schema(description = "用户名") private String userName; - //用户工号 + @Schema(description = "用户工号") private String userCode; - //班组名 + @Schema(description = "班组名") private String deptName; + //状态名 + @Schema(description = "状态名") + private String phStatusName; + //用工类型名 + @Schema(description = "用工类型名") + private String staffTypeName; + //技能等级名 + @Schema(description = "技能等级名") + private String skillName; + + public String getPhStatusName() { + return PostHandleStatusEnum.getName(null != this.getPhStatus() ? this.getPhStatus().intValue() : null); + } + + public String getStaffTypeName() { + return StaffTypeEnum.getName(null != this.getStaffType() ? this.getStaffType().intValue() : null); + } + + public String getSkillName() { + return SkillEnum.getName(null != this.getSkill() ? this.getSkill().intValue() : null); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml index a806ff0f..76ba2cec 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml @@ -49,7 +49,7 @@ - + From 9722720ebb601af58fa4c56d4d71514eefdfdc2a Mon Sep 17 00:00:00 2001 From: qinyulong Date: Mon, 12 Jan 2026 16:32:32 +0800 Subject: [PATCH 10/20] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E5=8F=B0=E8=B4=A6?= =?UTF-8?q?=E8=A1=A8=E5=8A=A0=E5=85=A5=E5=AD=97=E6=AE=B5=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E4=BD=8D=E7=BD=AE=EF=BC=8C=E4=BD=9C=E4=B8=9A=E4=B8=AD=E5=BF=83?= =?UTF-8?q?ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../desk/device/pojo/entity/EquipmentEntity.java | 11 ++++++++++- .../desk/device/pojo/excel/EquipmentExcel.java | 6 ++++++ .../desk/device/mapper/EquipmentMapper.xml | 2 ++ doc/sql/mes/increase-260108.sql | 11 ++++++++++- 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/entity/EquipmentEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/entity/EquipmentEntity.java index 120f7807..1de7aa0c 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/entity/EquipmentEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/entity/EquipmentEntity.java @@ -144,7 +144,16 @@ public class EquipmentEntity extends BaseEntity { */ @Schema(description = "附件链接") private String attachLink; - + /** + * 设备位置 + */ + @Schema(description = "设备位置") + private String equipmentLocation; + /** + * 作业中心ID + */ + @Schema(description = "作业中心ID") + private Long workstationId; public void setDocking(String docking) { // 核心逻辑:如果传入的是 null 或空字符串,则使用默认值 "0" if (docking == null || docking.trim().isEmpty()) { diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/excel/EquipmentExcel.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/excel/EquipmentExcel.java index 6b34982c..cdbe1b3a 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/excel/EquipmentExcel.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/excel/EquipmentExcel.java @@ -124,8 +124,14 @@ public class EquipmentExcel implements Serializable { @ColumnWidth(20) @ExcelProperty("设备分类") private String categorys; + /** + * 设备位置 + */ @ColumnWidth(20) + @ExcelProperty("设备位置") + private String equipmentLocation; + @ColumnWidth(20) @ExcelProperty("附件链接") private String attachLink; diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/EquipmentMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/EquipmentMapper.xml index d8df87f0..d8632dfd 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/EquipmentMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/EquipmentMapper.xml @@ -26,6 +26,8 @@ + + Date: Mon, 12 Jan 2026 16:33:14 +0800 Subject: [PATCH 11/20] =?UTF-8?q?=E6=89=B9=E9=87=8F=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=88=96=E6=9B=B4=E6=96=B0=E5=B2=97=E4=BD=8D=E8=AF=81=E4=B9=A6?= =?UTF-8?q?=EF=BC=8C=E5=B9=B6=E6=9B=B4=E6=96=B0=E5=B2=97=E4=BD=8D=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CertificateMaintenanceController.java | 11 +++++++++-- .../service/ICertificateMaintenanceService.java | 9 ++++++++- .../impl/CertificateMaintenanceServiceImpl.java | 15 +++++++++++++++ .../service/impl/PostHandleServiceImpl.java | 4 ++-- 4 files changed, 34 insertions(+), 5 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java index f030bc6f..c944f804 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CertificateMaintenanceController.java @@ -31,7 +31,6 @@ import org.springblade.desk.jobTransfer.service.ICertificateMaintenanceService; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; -import org.springblade.core.tool.constant.BladeConstant; import java.util.Map; import java.util.List; @@ -123,7 +122,15 @@ public class CertificateMaintenanceController extends BladeController { return R.status(certificateMaintenanceService.deleteLogic(Func.toLongList(ids))); } - + /** + * 批量新增或修改 + */ + @PostMapping("/submit-list") + @ApiOperationSupport(order = 8) + @Operation(summary = "批量新增或修改", description = "") + public R submitList(@Valid @RequestBody List certificateMaintenances) { + return R.status(certificateMaintenanceService.submitList(certificateMaintenances)); + } /** * 导出数据 */ diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java index 77316fa0..a0e5d0b9 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICertificateMaintenanceService.java @@ -5,7 +5,6 @@ import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity import org.springblade.desk.jobTransfer.pojo.excel.CertificateMaintenanceExcel; import org.springblade.desk.jobTransfer.pojo.request.CertificateLedgerQuery; import org.springblade.desk.jobTransfer.pojo.vo.CertificateLedgerVO; -import org.springblade.desk.jobTransfer.pojo.vo.CertificateMaintenanceVO; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; @@ -40,4 +39,12 @@ public interface ICertificateMaintenanceService extends BaseService certificateMaintenances); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java index 14d33de5..df4c6118 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CertificateMaintenanceServiceImpl.java @@ -10,6 +10,7 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.transaction.annotation.Transactional; import java.util.List; @@ -41,4 +42,18 @@ public class CertificateMaintenanceServiceImpl extends BaseServiceImpl certificateMaintenances) { + //保存基本字段 + boolean saved = this.saveOrUpdateBatch(certificateMaintenances); + //计算过期时间和状态,批量更新 + baseMapper.updateMaintenanceStatus(); + return saved; + } + + + + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index 70815818..9e5b6894 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -139,7 +139,7 @@ public class PostHandleServiceImpl extends BaseServiceImpl cultivateDetails = new ArrayList<>(); for (Long phId : ids) { CultivateDetailEntity detail = new CultivateDetailEntity(); - detail.setType((short) 2); + detail.setType(CultivateStatusEnum.JOB_TRANSFER.getCode().shortValue()); detail.setPlanId(trainingPlanId); detail.setPhId(phId); detail.setCaStatus(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue()); @@ -180,7 +180,7 @@ public class PostHandleServiceImpl extends BaseServiceImpl cultivateDetails = new ArrayList<>(); for (Long phId : ids) { CultivateDetailEntity detail = new CultivateDetailEntity(); - detail.setType((short) 3); + detail.setType(CultivateStatusEnum.LAYOFF.getCode().shortValue()); detail.setPlanId(trainingPlanId); detail.setPhId(phId); detail.setCaStatus(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue()); From 600d3b46ee56583c7c75bd4d4dbb9c5b79dd1e06 Mon Sep 17 00:00:00 2001 From: liweidong-hj Date: Mon, 12 Jan 2026 16:51:43 +0800 Subject: [PATCH 12/20] =?UTF-8?q?=E5=B7=A5=E8=89=BA=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/LauncherConstant.java | 4 ++-- .../dashboard/pojo/dto/BsCraftAbilityDTO.java | 0 .../desk/dashboard/pojo/dto/BsPlatingDTO.java | 0 .../pojo/dto/BsPlatingTypeAssignDTO.java | 0 .../dashboard/pojo/dto/BsPlatingTypeDTO.java | 0 .../pojo/dto/BsPlatingTypeSmallDTO.java | 0 .../dashboard/pojo/dto/BsProcessGroupDTO.java | 0 .../dashboard/pojo/dto/BsProcessSetDTO.java | 0 .../dashboard/pojo/dto/BsProcessTeamDTO.java | 0 .../desk/dashboard/pojo/dto/BsTeamSetDTO.java | 0 .../dashboard/pojo/dto/BsWorkCenterDTO.java | 0 .../pojo/dto/DsBatchPreservePlanDTO.java | 0 .../pojo/dto/DsBatchPreserveTaskDTO.java | 0 .../pojo/dto/DsBatchWorkCenterSetDTO.java | 0 .../desk/dashboard/pojo/dto/DsBomDTO.java | 0 .../desk/dashboard/pojo/dto/DsCraftDTO.java | 0 .../desk/dashboard/pojo/dto/DsHourQuotaDTO.java | 0 .../pojo/dto/DsHourQuotaDetailDTO.java | 0 .../pojo/dto/DsMainSaltAddQuantityDTO.java | 0 .../desk/dashboard/pojo/dto/DsPartDTO.java | 0 .../dashboard/pojo/dto/DsPartRelationDTO.java | 0 .../desk/dashboard/pojo/dto/DsProDetailDTO.java | 0 .../desk/dashboard/pojo/dto/DsProModelDTO.java | 0 .../desk/dashboard/pojo/dto/DsProcessDTO.java | 0 .../pojo/dto/DsProcessMeasuringToolDTO.java | 0 .../pojo/dto/DsProcessMoldToolDTO.java | 0 .../dashboard/pojo/dto/DsProcessProjectDTO.java | 0 .../dashboard/pojo/dto/DsSimilarPartsDTO.java | 0 .../dashboard/pojo/dto/DsSpecialProDTO.java | 0 .../desk/dashboard/pojo/dto/DsTaskBillDTO.java | 0 .../desk/dashboard/pojo/dto/DsTaskingDTO.java | 0 .../dashboard/pojo/dto/PrReworkProcessDTO.java | 0 .../pojo/entity/BsCraftAbilityEntity.java | 0 .../dashboard/pojo/entity/BsPlatingEntity.java | 0 .../pojo/entity/BsPlatingTypeAssignEntity.java | 0 .../pojo/entity/BsPlatingTypeEntity.java | 0 .../pojo/entity/BsPlatingTypeSmallEntity.java | 0 .../pojo/entity/BsProcessGroupEntity.java | 0 .../pojo/entity/BsProcessSetEntity.java | 0 .../pojo/entity/BsProcessTeamEntity.java | 0 .../dashboard/pojo/entity/BsTeamSetEntity.java | 0 .../pojo/entity/BsWorkCenterEntity.java | 0 .../pojo/entity/DsBatchPreservePlanEntity.java | 0 .../pojo/entity/DsBatchPreserveTaskEntity.java | 0 .../pojo/entity/DsBatchWorkCenterSetEntity.java | 0 .../desk/dashboard/pojo/entity/DsBomEntity.java | 0 .../dashboard/pojo/entity/DsCraftEntity.java | 0 .../pojo/entity/DsHourQuotaDetailEntity.java | 0 .../pojo/entity/DsHourQuotaEntity.java | 0 .../entity/DsMainSaltAddQuantityEntity.java | 0 .../dashboard/pojo/entity/DsPartEntity.java | 0 .../pojo/entity/DsPartRelationEntity.java | 0 .../pojo/entity/DsProDetailEntity.java | 0 .../dashboard/pojo/entity/DsProModelEntity.java | 0 .../dashboard/pojo/entity/DsProcessEntity.java | 0 .../entity/DsProcessMeasuringToolEntity.java | 0 .../pojo/entity/DsProcessMoldToolEntity.java | 0 .../pojo/entity/DsProcessProjectEntity.java | 0 .../pojo/entity/DsSimilarPartsEntity.java | 0 .../pojo/entity/DsSpecialProEntity.java | 0 .../dashboard/pojo/entity/DsTaskBillEntity.java | 0 .../dashboard/pojo/entity/DsTaskingEntity.java | 0 .../pojo/entity/PrReworkProcessEntity.java | 0 .../pojo/vo/BsCompilationCompletedVO.java | 0 .../dashboard/pojo/vo/BsCraftAbilityVO.java | 0 .../pojo/vo/BsPlatingTypeAssignVO.java | 0 .../dashboard/pojo/vo/BsPlatingTypeListVO.java | 0 .../dashboard/pojo/vo/BsPlatingTypeSmallVO.java | 0 .../desk/dashboard/pojo/vo/BsPlatingTypeVO.java | 0 .../desk/dashboard/pojo/vo/BsPlatingVO.java | 0 .../dashboard/pojo/vo/BsProcessGroupVO.java | 0 .../desk/dashboard/pojo/vo/BsProcessSetVO.java | 0 .../desk/dashboard/pojo/vo/BsProcessTeamVO.java | 0 .../desk/dashboard/pojo/vo/BsTeamProcessVO.java | 0 .../dashboard/pojo/vo/BsTeamSetEntityVO.java | 0 .../desk/dashboard/pojo/vo/BsTeamSetVO.java | 0 .../desk/dashboard/pojo/vo/BsWorkCenterVO.java | 0 .../desk/dashboard/pojo/vo/CraftTreeVO.java | 0 .../pojo/vo/DsBatchPreservePlanVO.java | 0 .../pojo/vo/DsBatchPreserveTaskVO.java | 0 .../pojo/vo/DsBatchWorkCenterSetVO.java | 0 .../desk/dashboard/pojo/vo/DsBomVO.java | 0 .../desk/dashboard/pojo/vo/DsCraftExpireVO.java | 0 .../desk/dashboard/pojo/vo/DsCraftVO.java | 0 .../dashboard/pojo/vo/DsHourQuotaDetailVO.java | 0 .../desk/dashboard/pojo/vo/DsHourQuotaVO.java | 0 .../pojo/vo/DsMainSaltAddQuantityVO.java | 0 .../dashboard/pojo/vo/DsModelAndDetailVO.java | 0 .../dashboard/pojo/vo/DsPartAuthorizedVO.java | 0 .../desk/dashboard/pojo/vo/DsPartBomVO.java | 0 .../pojo/vo/DsPartCodeAndPartNameVO.java | 0 .../dashboard/pojo/vo/DsPartRelationVO.java | 0 .../dashboard/pojo/vo/DsPartSynthesisVO.java | 0 .../desk/dashboard/pojo/vo/DsPartTreeVO.java | 0 .../desk/dashboard/pojo/vo/DsPartVO.java | 0 .../desk/dashboard/pojo/vo/DsProDetailVO.java | 0 .../pojo/vo/DsProModelDetailListVO.java | 0 .../desk/dashboard/pojo/vo/DsProModelVO.java | 0 .../pojo/vo/DsProcessMeasuringToolVO.java | 0 .../dashboard/pojo/vo/DsProcessMoldToolVO.java | 0 .../dashboard/pojo/vo/DsProcessProjectVO.java | 0 .../desk/dashboard/pojo/vo/DsProcessSaveVO.java | 0 .../dashboard/pojo/vo/DsProcessSynthesisVO.java | 0 .../desk/dashboard/pojo/vo/DsProcessVO.java | 0 .../desk/dashboard/pojo/vo/DsReworkTaskVO.java | 0 .../dashboard/pojo/vo/DsSimilarPartsVO.java | 0 .../desk/dashboard/pojo/vo/DsSpecialProVO.java | 0 .../desk/dashboard/pojo/vo/DsTaskBillVO.java | 0 .../desk/dashboard/pojo/vo/DsTaskingVO.java | 0 .../pojo/vo/PrReworkCompilationCompletedVO.java | 0 .../dashboard/pojo/vo/PrReworkProcessVO.java | 0 .../desk/dashboard/pojo/vo/ProcessTreeVO.java | 0 .../desk/dashboard/pojo/vo/SyncResult.java | 0 .../controller/BsProcessGroupController.java | 2 +- .../controller/BsProcessSetController.java | 2 +- .../dashboard/mapper/BsProcessGroupMapper.java | 1 + .../dashboard/mapper/ProcessGroupMapper.xml | 5 ++++- .../service/IBsProcessGroupService.java | 6 ++++++ .../service/impl/BsProcessGroupServiceImpl.java | 17 +++++++++++++++++ 119 files changed, 32 insertions(+), 5 deletions(-) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsCraftAbilityDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeAssignDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeSmallDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessGroupDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessSetDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessTeamDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsTeamSetDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsWorkCenterDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreservePlanDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreserveTaskDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchWorkCenterSetDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBomDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsCraftDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDetailDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsMainSaltAddQuantityDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartRelationDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProDetailDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProModelDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMeasuringToolDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMoldToolDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessProjectDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSimilarPartsDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSpecialProDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskBillDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskingDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/dto/PrReworkProcessDTO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsCraftAbilityEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeAssignEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeSmallEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessGroupEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessSetEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessTeamEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsTeamSetEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsWorkCenterEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreservePlanEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreserveTaskEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchWorkCenterSetEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBomEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsCraftEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaDetailEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsMainSaltAddQuantityEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProDetailEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProModelEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMoldToolEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessProjectEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSimilarPartsEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSpecialProEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskBillEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskingEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/entity/PrReworkProcessEntity.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCompilationCompletedVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCraftAbilityVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeAssignVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeListVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeSmallVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessGroupVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessSetVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessTeamVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamProcessVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetEntityVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsWorkCenterVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/CraftTreeVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreservePlanVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreserveTaskVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchWorkCenterSetVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBomVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftExpireVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaDetailVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsMainSaltAddQuantityVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsModelAndDetailVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartAuthorizedVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartBomVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartCodeAndPartNameVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartRelationVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartSynthesisVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartTreeVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProDetailVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelDetailListVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMeasuringToolVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMoldToolVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessProjectVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSaveVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSynthesisVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsReworkTaskVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSimilarPartsVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSpecialProVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskBillVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskingVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkCompilationCompletedVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkProcessVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/ProcessTreeVO.java (100%) rename {blade-service/blade-desk => blade-service-api/blade-desk-api}/src/main/java/org/springblade/desk/dashboard/pojo/vo/SyncResult.java (100%) diff --git a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java index 0ff16892..9459299e 100644 --- a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java +++ b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java @@ -12,11 +12,11 @@ public interface LauncherConstant { /** * nacos 命名空间 */ -// String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; + String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; // 生产环境 // String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; // 测试环境 - String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; +// String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; /** * nacos 用户名 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsCraftAbilityDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsCraftAbilityDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsCraftAbilityDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsCraftAbilityDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeAssignDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeAssignDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeAssignDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeAssignDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeSmallDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeSmallDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeSmallDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsPlatingTypeSmallDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessGroupDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessGroupDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessGroupDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessGroupDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessSetDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessSetDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessSetDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessSetDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessTeamDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessTeamDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessTeamDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsProcessTeamDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsTeamSetDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsTeamSetDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsTeamSetDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsTeamSetDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsWorkCenterDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsWorkCenterDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsWorkCenterDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/BsWorkCenterDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreservePlanDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreservePlanDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreservePlanDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreservePlanDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreserveTaskDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreserveTaskDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreserveTaskDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchPreserveTaskDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchWorkCenterSetDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchWorkCenterSetDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchWorkCenterSetDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBatchWorkCenterSetDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBomDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBomDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBomDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsBomDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsCraftDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsCraftDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsCraftDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsCraftDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDetailDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDetailDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDetailDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsHourQuotaDetailDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsMainSaltAddQuantityDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsMainSaltAddQuantityDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsMainSaltAddQuantityDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsMainSaltAddQuantityDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartRelationDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartRelationDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartRelationDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsPartRelationDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProDetailDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProDetailDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProDetailDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProDetailDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProModelDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProModelDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProModelDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProModelDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMeasuringToolDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMeasuringToolDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMeasuringToolDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMeasuringToolDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMoldToolDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMoldToolDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMoldToolDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessMoldToolDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessProjectDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessProjectDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessProjectDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsProcessProjectDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSimilarPartsDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSimilarPartsDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSimilarPartsDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSimilarPartsDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSpecialProDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSpecialProDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSpecialProDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsSpecialProDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskBillDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskBillDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskBillDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskBillDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskingDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskingDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskingDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/DsTaskingDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/PrReworkProcessDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/PrReworkProcessDTO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/dto/PrReworkProcessDTO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/dto/PrReworkProcessDTO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsCraftAbilityEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsCraftAbilityEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsCraftAbilityEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsCraftAbilityEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeAssignEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeAssignEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeAssignEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeAssignEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeSmallEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeSmallEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeSmallEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsPlatingTypeSmallEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessGroupEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessGroupEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessGroupEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessGroupEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessSetEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessSetEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessSetEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessSetEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessTeamEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessTeamEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessTeamEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsProcessTeamEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsTeamSetEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsTeamSetEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsTeamSetEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsTeamSetEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsWorkCenterEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsWorkCenterEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsWorkCenterEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/BsWorkCenterEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreservePlanEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreservePlanEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreservePlanEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreservePlanEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreserveTaskEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreserveTaskEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreserveTaskEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchPreserveTaskEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchWorkCenterSetEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchWorkCenterSetEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchWorkCenterSetEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBatchWorkCenterSetEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBomEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBomEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBomEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsBomEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsCraftEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsCraftEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsCraftEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsCraftEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaDetailEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaDetailEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaDetailEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaDetailEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsHourQuotaEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsMainSaltAddQuantityEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsMainSaltAddQuantityEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsMainSaltAddQuantityEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsMainSaltAddQuantityEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProDetailEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProDetailEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProDetailEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProDetailEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProModelEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProModelEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProModelEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProModelEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMoldToolEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMoldToolEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMoldToolEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMoldToolEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessProjectEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessProjectEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessProjectEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessProjectEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSimilarPartsEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSimilarPartsEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSimilarPartsEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSimilarPartsEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSpecialProEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSpecialProEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSpecialProEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsSpecialProEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskBillEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskBillEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskBillEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskBillEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskingEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskingEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskingEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsTaskingEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/PrReworkProcessEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/PrReworkProcessEntity.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/entity/PrReworkProcessEntity.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/PrReworkProcessEntity.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCompilationCompletedVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCompilationCompletedVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCompilationCompletedVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCompilationCompletedVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCraftAbilityVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCraftAbilityVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCraftAbilityVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsCraftAbilityVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeAssignVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeAssignVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeAssignVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeAssignVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeListVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeListVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeListVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeListVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeSmallVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeSmallVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeSmallVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeSmallVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingTypeVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsPlatingVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessGroupVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessGroupVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessGroupVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessGroupVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessSetVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessSetVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessSetVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessSetVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessTeamVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessTeamVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessTeamVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsProcessTeamVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamProcessVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamProcessVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamProcessVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamProcessVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetEntityVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetEntityVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetEntityVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetEntityVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsTeamSetVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsWorkCenterVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsWorkCenterVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsWorkCenterVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/BsWorkCenterVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/CraftTreeVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/CraftTreeVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/CraftTreeVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/CraftTreeVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreservePlanVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreservePlanVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreservePlanVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreservePlanVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreserveTaskVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreserveTaskVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreserveTaskVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchPreserveTaskVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchWorkCenterSetVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchWorkCenterSetVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchWorkCenterSetVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBatchWorkCenterSetVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBomVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBomVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBomVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsBomVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftExpireVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftExpireVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftExpireVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftExpireVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsCraftVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaDetailVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaDetailVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaDetailVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsHourQuotaVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsMainSaltAddQuantityVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsMainSaltAddQuantityVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsMainSaltAddQuantityVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsMainSaltAddQuantityVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsModelAndDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsModelAndDetailVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsModelAndDetailVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsModelAndDetailVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartAuthorizedVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartAuthorizedVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartAuthorizedVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartAuthorizedVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartBomVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartBomVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartBomVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartBomVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartCodeAndPartNameVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartCodeAndPartNameVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartCodeAndPartNameVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartCodeAndPartNameVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartRelationVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartRelationVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartRelationVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartRelationVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartSynthesisVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartSynthesisVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartSynthesisVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartSynthesisVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartTreeVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartTreeVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartTreeVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartTreeVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsPartVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProDetailVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProDetailVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProDetailVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelDetailListVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelDetailListVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelDetailListVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelDetailListVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProModelVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMeasuringToolVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMeasuringToolVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMeasuringToolVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMeasuringToolVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMoldToolVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMoldToolVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMoldToolVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessMoldToolVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessProjectVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessProjectVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessProjectVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessProjectVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSaveVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSaveVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSaveVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSaveVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSynthesisVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSynthesisVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSynthesisVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessSynthesisVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsProcessVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsReworkTaskVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsReworkTaskVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsReworkTaskVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsReworkTaskVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSimilarPartsVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSimilarPartsVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSimilarPartsVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSimilarPartsVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSpecialProVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSpecialProVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSpecialProVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsSpecialProVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskBillVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskBillVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskBillVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskBillVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskingVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskingVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskingVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/DsTaskingVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkCompilationCompletedVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkCompilationCompletedVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkCompilationCompletedVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkCompilationCompletedVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkProcessVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkProcessVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkProcessVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/PrReworkProcessVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/ProcessTreeVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/ProcessTreeVO.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/ProcessTreeVO.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/ProcessTreeVO.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/SyncResult.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/SyncResult.java similarity index 100% rename from blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/pojo/vo/SyncResult.java rename to blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/vo/SyncResult.java diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessGroupController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessGroupController.java index acabbdd5..cdbbf3f4 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessGroupController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessGroupController.java @@ -107,7 +107,7 @@ public class BsProcessGroupController extends BladeController { @ApiOperationSupport(order = 4) @Operation(summary = "新增", description = "传入bsProcessGroup") public R save(@Valid @RequestBody BsProcessGroupEntity bsProcessGroup) { - return R.status(bsProcessGroupService.save(bsProcessGroup)); + return R.status(bsProcessGroupService.saveProcessGroup(bsProcessGroup)); } /** diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessSetController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessSetController.java index 804d2199..52503fb5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessSetController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/controller/BsProcessSetController.java @@ -104,7 +104,7 @@ public class BsProcessSetController extends BladeController { @ApiOperationSupport(order = 2) @Operation(summary = "分页", description = "传入bsProcessSet") public R> list(@Parameter(hidden = true) @RequestParam Map bsProcessSet, Query query) { - IPage pages = bsProcessSetService.page(Condition.getPage(query), Condition.getQueryWrapper(bsProcessSet, BsProcessSetEntity.class)); + IPage pages = bsProcessSetService.page(Condition.getPage(query), Condition.getQueryWrapper(bsProcessSet, BsProcessSetEntity.class).orderByDesc("update_time")); return R.data(BsProcessSetWrapper.build().pageVO(pages)); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/BsProcessGroupMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/BsProcessGroupMapper.java index bf077536..ead4ecdd 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/BsProcessGroupMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/BsProcessGroupMapper.java @@ -60,4 +60,5 @@ public interface BsProcessGroupMapper extends BaseMapper { */ List exportBsProcessGroup(@Param("ew") Wrapper queryWrapper); + BsProcessGroupEntity selectByGroupCode(@Param("groupCode") String groupCode); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/ProcessGroupMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/ProcessGroupMapper.xml index 5e52a910..0ec1751b 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/ProcessGroupMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/ProcessGroupMapper.xml @@ -14,7 +14,6 @@ - @@ -31,5 +30,9 @@ + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IBsProcessGroupService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IBsProcessGroupService.java index 0d1c3a42..9b6fd764 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IBsProcessGroupService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IBsProcessGroupService.java @@ -58,4 +58,10 @@ public interface IBsProcessGroupService extends BaseService exportBsProcessGroup(Wrapper queryWrapper); + /** + * 工序组新增 + * @param bsProcessGroup + * @return + */ + boolean saveProcessGroup(BsProcessGroupEntity bsProcessGroup); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/BsProcessGroupServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/BsProcessGroupServiceImpl.java index b2b74838..344191c9 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/BsProcessGroupServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/BsProcessGroupServiceImpl.java @@ -25,6 +25,7 @@ */ package org.springblade.desk.dashboard.service.impl; +import org.springblade.core.log.exception.ServiceException; import org.springblade.desk.dashboard.pojo.entity.BsProcessGroupEntity; import org.springblade.desk.dashboard.pojo.vo.BsProcessGroupVO; import org.springblade.desk.dashboard.excel.BsProcessGroupExcel; @@ -60,4 +61,20 @@ public class BsProcessGroupServiceImpl extends BaseServiceImpl Date: Mon, 12 Jan 2026 16:51:56 +0800 Subject: [PATCH 13/20] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../springblade/common/cache/CacheNames.java | 40 +++--- .../common/constant/LauncherConstant.java | 2 +- blade-ops/pom.xml | 2 +- blade-service-api/blade-desk-api/pom.xml | 4 + .../desk/basic/cache/WorkCenterCache.java | 39 ++++++ .../desk/basic/feign/IWorkCenterClient.java | 57 ++++++++ .../desk/order/pojo/entity/AssayContent.java | 12 ++ .../desk/order/pojo/entity/MoldPlan.java | 37 +++--- .../desk/order/pojo/entity/MoldPlanOrder.java | 10 +- .../desk/order/pojo/entity/MoldPlanTool.java | 1 + .../order/pojo/entity/PlateGoodsRecord.java | 1 + .../pojo/entity/PlateGoodsRecordDetail.java | 2 +- .../order/pojo/enums/AssayContentEnum.java | 58 ++++++++ .../desk/order/pojo/enums/MoldPlanEnum.java | 31 ++++- .../desk/order/pojo/enums/PlateGoodsEnum.java | 6 +- .../desk/order/pojo/request/MoldPlanSave.java | 1 + .../desk/order/pojo/vo/AssayContentVo.java | 17 +++ .../desk/order/pojo/vo/MoldPlanVo.java | 10 ++ .../order/pojo/vo/PlateGoodsRecordVo.java | 13 ++ .../desk/basic/feign/WorkCenterClient.java | 30 +++++ .../controller/AssayContentController.java | 105 ++++++++------- .../order/controller/MoldPlanController.java | 125 ++++++++++-------- .../PlateGoodsRecordController.java | 22 ++- .../controller/YieldOrderController.java | 21 ++- .../order/controller/YieldPlanController.java | 4 +- .../mapper/AssayContentDetailMapper.java | 8 ++ .../order/mapper/AssayContentDetailMapper.xml | 13 +- .../desk/order/mapper/AssayContentMapper.xml | 3 +- .../desk/order/mapper/MoldPlanMapper.java | 9 ++ .../desk/order/mapper/MoldPlanMapper.xml | 20 ++- .../order/mapper/PlateGoodsApplyMapper.xml | 1 + .../order/mapper/PlateGoodsRecordMapper.xml | 7 + .../desk/order/mapper/YieldOrderMapper.xml | 3 + .../service/IAssayContentDetailService.java | 21 +++ .../order/service/IAssayContentService.java | 8 ++ .../desk/order/service/IMoldPlanService.java | 26 ++++ .../IPlateGoodsRecordDetailService.java | 18 +++ .../service/IPlateGoodsRecordService.java | 27 ++-- .../order/service/IYieldOrderService.java | 11 ++ .../impl/AssayContentDetailServiceImpl.java | 21 +++ .../service/impl/AssayContentServiceImpl.java | 29 +++- .../service/impl/MoldPlanServiceImpl.java | 35 +++++ .../PlateGoodsRecordDetailServiceImpl.java | 26 ++++ .../impl/PlateGoodsRecordServiceImpl.java | 41 ++++-- .../service/impl/YieldOrderServiceImpl.java | 15 +++ .../order/wrapper/AssayContentWrapper.java | 16 ++- .../desk/order/wrapper/MoldPlanWrapper.java | 2 + .../wrapper/PlateGoodsRecordWrapper.java | 19 ++- .../src/main/resources/application-dev.yml | 5 +- .../blade-desk/src/main/resources/logback.xml | 56 ++++++++ doc/sql/mes/increase-260108.sql | 16 ++- 51 files changed, 922 insertions(+), 184 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/cache/WorkCenterCache.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/feign/IWorkCenterClient.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/AssayContentEnum.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/basic/feign/WorkCenterClient.java create mode 100644 blade-service/blade-desk/src/main/resources/logback.xml diff --git a/blade-common/src/main/java/org/springblade/common/cache/CacheNames.java b/blade-common/src/main/java/org/springblade/common/cache/CacheNames.java index 97909a3e..ffbafde1 100644 --- a/blade-common/src/main/java/org/springblade/common/cache/CacheNames.java +++ b/blade-common/src/main/java/org/springblade/common/cache/CacheNames.java @@ -32,6 +32,31 @@ package org.springblade.common.cache; */ public interface CacheNames { + //region 系统缓存 + /** + * 验证码key + */ + String CAPTCHA_KEY = "blade:auth::blade:captcha:"; + + /** + * 账号失败key + */ + String ACCOUNT_FAIL_KEY = "blade:lock::account:fail:"; + + /** + * IP失败key + */ + String IP_FAIL_KEY = "blade:lock::ip:fail:"; + //endregion + + //region 业务缓存 + /** + * 基础信息缓存 + */ + String BASIC = "mes:basic:"; + + //endregion + /** * 返回拼接后的key * @@ -55,19 +80,4 @@ public interface CacheNames { return tenantId.concat(":").concat(cacheKey).concat(cacheKeyValue); } - /** - * 验证码key - */ - String CAPTCHA_KEY = "blade:auth::blade:captcha:"; - - /** - * 账号失败key - */ - String ACCOUNT_FAIL_KEY = "blade:lock::account:fail:"; - - /** - * IP失败key - */ - String IP_FAIL_KEY = "blade:lock::ip:fail:"; - } diff --git a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java index 2e147e81..83e6bdc6 100644 --- a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java +++ b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java @@ -14,7 +14,7 @@ public interface LauncherConstant { */ // String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; // 生产环境 - String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; + String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; // 测试环境 // String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; diff --git a/blade-ops/pom.xml b/blade-ops/pom.xml index 95cd78f2..98c9ba02 100644 --- a/blade-ops/pom.xml +++ b/blade-ops/pom.xml @@ -14,7 +14,7 @@ pom - blade-admin + blade-develop blade-job blade-log diff --git a/blade-service-api/blade-desk-api/pom.xml b/blade-service-api/blade-desk-api/pom.xml index a47cc24d..2182a907 100644 --- a/blade-service-api/blade-desk-api/pom.xml +++ b/blade-service-api/blade-desk-api/pom.xml @@ -24,6 +24,10 @@ org.springblade blade-starter-excel + + org.springblade + blade-common + org.springblade blade-resource-api diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/cache/WorkCenterCache.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/cache/WorkCenterCache.java new file mode 100644 index 00000000..288c08da --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/cache/WorkCenterCache.java @@ -0,0 +1,39 @@ +package org.springblade.desk.basic.cache; + +import org.springblade.common.cache.CacheNames; +import org.springblade.core.cache.utils.CacheUtil; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.SpringUtil; +import org.springblade.desk.basic.feign.IWorkCenterClient; +import org.springblade.desk.basic.pojo.entity.WorkCenter; + +/** + * 系统缓存 + * + * @author Chill + */ +public class WorkCenterCache { + private static final String WORK_CENTER_CACHE_ID = "workCenter:id:"; + + private static IWorkCenterClient workCenterClient; + + private static IWorkCenterClient getWorkCenterClient() { + if (workCenterClient == null) { + workCenterClient = SpringUtil.getBean(IWorkCenterClient.class); + } + return workCenterClient; + } + + /** + * 获取用户 + * + * @param workCenterId 作业中心id + * @return + */ + public static WorkCenter getById(Long workCenterId) { + return CacheUtil.get(CacheNames.BASIC, WORK_CENTER_CACHE_ID, workCenterId, () -> { + R result = getWorkCenterClient().getById(workCenterId); + return result.getData(); + }); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/feign/IWorkCenterClient.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/feign/IWorkCenterClient.java new file mode 100644 index 00000000..2bc3aadc --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/feign/IWorkCenterClient.java @@ -0,0 +1,57 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * Author: Chill Zhuang (bladejava@qq.com) + */ +package org.springblade.desk.basic.feign; + + +import org.springblade.core.launch.constant.AppConstant; +import org.springblade.core.tool.api.R; +import org.springblade.desk.basic.pojo.entity.WorkCenter; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 作业中心 Feign接口类 + * + * @author lqk + */ +@FeignClient( + value = AppConstant.APPLICATION_DESK_NAME +) +public interface IWorkCenterClient { + + String API_PREFIX = "/feign/workCenter"; + String GET_BY_ID = API_PREFIX + "/getById"; + + /** + * 根据id获取作业中心 + * + * @param workCenterId 作业中心id + * @return + */ + @GetMapping(GET_BY_ID) + R getById(@RequestParam("id") Long workCenterId); +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/AssayContent.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/AssayContent.java index f40fd302..2a2927fc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/AssayContent.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/AssayContent.java @@ -60,4 +60,16 @@ public class AssayContent extends BaseEntity { */ @TableField(value = "SILVER_PLATE") private BigDecimal silverPlate; + + /** + * 是否被使用,默认0,已使用过此次化验申报添加量后,记录申报记录id,同时更新为1 + */ + @TableField(value = "IS_USED") + private Integer isUsed; + + /** + * 申报记录id + */ + @TableField(value = "APPLY_ID") + private Long applyId; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlan.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlan.java index 9dd5d143..eafb15dc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlan.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlan.java @@ -56,17 +56,27 @@ public class MoldPlan extends BaseEntity { private String erpWoCode; /** - * 状态;1、新建,2、已下发,3、已完成 + * 状态; 11001、新建,11002:已下发,11003、已完成 */ @TableField(value = "MAF_STATUS") - private Long mafStatus; + private Integer mafStatus; /** - * 计划类型名称 + * 类型; 12001、热表,烧结,12002、仓库 */ - @TableField(value = "PLAN_TYPE") - private String planType; + @TableField(value = "MAF_TYPE") + private Integer mafType; + /** + * 计划类型; 13001:Z:制造(工装不为空且工装名称为压饼模),13002:D:夹具(工装不为空且工装名称为石墨模) + */ + @TableField(value = "PLAN_TYPE_CODE") + private String planTypeCode; + /** + * 计划类型名称;14001:Z:制造(工装不为空且工装名称为压饼模),14002:D:夹具(工装不为空且工装名称为石墨模) + */ + @TableField(value = "PLAN_TYPE_NAME") + private String planTypeName; /** * 需求日期 */ @@ -91,12 +101,6 @@ public class MoldPlan extends BaseEntity { @TableField(value = "QUA_LEVEL") private String quaLevel; - /** - * - */ - @TableField(value = "PLAN_TYPE_NAME") - private String planTypeName; - /** * 零件编码 */ @@ -115,15 +119,14 @@ public class MoldPlan extends BaseEntity { @TableField(value = "MEMO") private String memo; - /** - * 类型;1、热表,烧结,2、仓库 - */ - @TableField(value = "MAF_TYPE") - private Long mafType; - /** * 紧急状态 */ @TableField(value = "URGENT_TYPE") private String urgentType; + /** + * 计划来源;15001:自动生成,15002:人工添加 + */ + @TableField(value = "SOURCE") + private Integer source; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanOrder.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanOrder.java index 52aca3b4..97592862 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanOrder.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanOrder.java @@ -14,12 +14,18 @@ import org.springblade.core.mp.base.BaseEntity; @TableName(value = "MES_MOLD_PLAN_ORDER") @Data public class MoldPlanOrder extends BaseEntity { - @TableField(exist = false) - private static final long serialVersionUID = 1L; + @TableField(exist = false) + private static final long serialVersionUID = 1L; /** * 烧结模具计划ID */ @TableField(value = "MP_ID") private Long mpId; + + /** + * 生产订单id + */ + @TableField(value = "ORDER_ID") + private Long orderId; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanTool.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanTool.java index 0ba5c614..b45ca20f 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanTool.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/MoldPlanTool.java @@ -11,6 +11,7 @@ import org.springblade.core.mp.base.BaseEntity; * @author lqk * @TableName MES_MOLD_PLAN_TOOL */ +@Deprecated @TableName(value = "MES_MOLD_PLAN_TOOL") @Data public class MoldPlanTool extends BaseEntity { diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecord.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecord.java index 17003924..ce1311fc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecord.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecord.java @@ -70,6 +70,7 @@ public class PlateGoodsRecord extends BaseEntity { /** * 审批状态 + * 11001:正常, 11002:审批中, 11003:不通过, 11004:通过 */ @TableField(value = "APPROVAL_STATUS") private Integer approvalStatus; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecordDetail.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecordDetail.java index 36290f70..8d03ce81 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecordDetail.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/PlateGoodsRecordDetail.java @@ -27,6 +27,6 @@ public class PlateGoodsRecordDetail extends BaseEntity { * 生产订单ID */ @TableField(value = "YO_ID") - private String yoId; + private Long yoId; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/AssayContentEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/AssayContentEnum.java new file mode 100644 index 00000000..68afe38a --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/AssayContentEnum.java @@ -0,0 +1,58 @@ +package org.springblade.desk.order.pojo.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springblade.core.tool.utils.ObjectUtil; +import org.springblade.core.tool.utils.StringPool; + +import java.util.Arrays; + +/** + * 镀层物料需求枚举 + * + * @author lqk + * @date 2025-12-19 9:25 + */ +@Getter +@AllArgsConstructor +public enum AssayContentEnum { + EMPTY(StringPool.EMPTY, -1), + + /** + * 状态, 10000:未使用, 10001:已使用, 10002:已过期 + */ + STATUS_UNUSED("未使用", 10000), + STATUS_USED("已使用", 10001), + STATUS_OUTDATE("已过期", 10002), + ; + final String name; + final int code; + + /** + * 匹配枚举值 + * + * @param name 名称 + * @return BladeUserEnum + */ + public static AssayContentEnum of(String name) { + return Arrays.stream(AssayContentEnum.values()) + .filter(userEnum -> userEnum.getName().equalsIgnoreCase(name != null ? name : "web")) + .findFirst() + // 在没有找到匹配项时返回默认值 + .orElse(AssayContentEnum.EMPTY); + } + + /** + * 根据值获取名称 + * + * @param category + * @return + */ + public static String getName(int category) { + AssayContentEnum item = Arrays.stream(AssayContentEnum.values()) + .filter(enumItem -> enumItem.getCode() == category) + .findFirst() + .orElse(null); + return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); + } +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/MoldPlanEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/MoldPlanEnum.java index 8a822a74..efbd9a00 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/MoldPlanEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/MoldPlanEnum.java @@ -25,9 +25,36 @@ public enum MoldPlanEnum { STATUS_OUT_STORE("已出库", 10001), STATUS_DONE("完成", 10002), STATUS_CLOSE("关闭", 10003), + + /** + * 状态枚举; 11001、新建,11002:已下发,11003、已完成 + */ + MAF_STATUS_CREATE("新建", 11001), + MAF_STATUS_SEND("已下发", 11002), + MAF_STATUS_DONE("已完成", 11003), + + /** + * 类型;12001、热表,烧结,12002、仓库 + */ + MAF_TYPE_RB("热表,烧结", 12001), + MAF_TYPE_STORE("仓库", 12002), + + /** + * 计划类型; 13001:Z:制造(工装不为空且工装名称为压饼模),13002:D:夹具(工装不为空且工装名称为石墨模) + */ + PLAN_TYPE_CODE_Z("Z", 13001), + PLAN_TYPE_CODE_D("D", 13002), + PLAN_TYPE_NAME_Z("制造", 14001), + PLAN_TYPE_NAME_D("夹具", 15002), + + /** + * 计划来源;15001:自动生成,15002:人工添加 + */ + SOURCE_AUTO("自动生成", 15001), + SOURCE_USER("人工添加", 15002), ; final String name; - final int category; + final int code; /** * 匹配枚举值 @@ -51,7 +78,7 @@ public enum MoldPlanEnum { */ public static String getName(int category) { MoldPlanEnum item = Arrays.stream(MoldPlanEnum.values()) - .filter(enumItem -> enumItem.getCategory() == category) + .filter(enumItem -> enumItem.getCode() == category) .findFirst() .orElse(null); return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/PlateGoodsEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/PlateGoodsEnum.java index 748541a4..303a0ddb 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/PlateGoodsEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/enums/PlateGoodsEnum.java @@ -19,7 +19,7 @@ public enum PlateGoodsEnum { EMPTY(StringPool.EMPTY, -1), /** - * 状态枚举 + * 状态, 10000:待审核, 10001:审核通过, 10002:使用中, 10003:已超期, 10004:已完成, 10005:审核未通过, 10006:已关闭 */ STATUS_WAITING("待审核", 10000), STATUS_PASS("审核通过", 10001), @@ -30,7 +30,7 @@ public enum PlateGoodsEnum { STATUS_CLOSE("已关闭", 10006), ; final String name; - final int category; + final int code; /** * 匹配枚举值 @@ -54,7 +54,7 @@ public enum PlateGoodsEnum { */ public static String getName(int category) { PlateGoodsEnum item = Arrays.stream(PlateGoodsEnum.values()) - .filter(enumItem -> enumItem.getCategory() == category) + .filter(enumItem -> enumItem.getCode() == category) .findFirst() .orElse(null); return ObjectUtil.isEmpty(item) ? StringPool.EMPTY : item.getName(); diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/request/MoldPlanSave.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/request/MoldPlanSave.java index 8a119bef..8bcba9bc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/request/MoldPlanSave.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/request/MoldPlanSave.java @@ -12,6 +12,7 @@ import java.util.List; * * @author lqk */ +@Deprecated @Data public class MoldPlanSave { /** diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/AssayContentVo.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/AssayContentVo.java index d6b0eac7..7acd36ad 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/AssayContentVo.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/AssayContentVo.java @@ -4,8 +4,10 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import org.springblade.desk.order.pojo.entity.AssayContent; +import org.springblade.desk.order.pojo.entity.AssayContentDetail; import java.io.Serial; +import java.util.List; /** * 化验含量-视图类 @@ -23,8 +25,23 @@ public class AssayContentVo extends AssayContent { @JsonSerialize(using = ToStringSerializer.class) private Long id; + /** + * 作业中心名称 + */ + String wcName; + + /** + * 化验人名称 + */ + String assayManName; + /** * 状态名称 */ String statusName; + + /** + * 明细列表 + */ + List detailList; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/MoldPlanVo.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/MoldPlanVo.java index 48d0bd3e..b77249dc 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/MoldPlanVo.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/MoldPlanVo.java @@ -27,4 +27,14 @@ public class MoldPlanVo extends MoldPlan { * 状态名称 */ String statusName; + + /** + * 状态名称 + */ + String mafStatusName; + + /** + * 类型名称 + */ + String mafTypeName; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/PlateGoodsRecordVo.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/PlateGoodsRecordVo.java index 11556175..174ec14e 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/PlateGoodsRecordVo.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/vo/PlateGoodsRecordVo.java @@ -6,6 +6,7 @@ import lombok.Data; import org.springblade.desk.order.pojo.entity.PlateGoodsRecord; import java.io.Serial; +import java.util.List; /** * 镀层物料额外需求上报-视图类 @@ -23,8 +24,20 @@ public class PlateGoodsRecordVo extends PlateGoodsRecord { @JsonSerialize(using = ToStringSerializer.class) private Long id; + /** + * 作业中心名称 + */ + String wcName; + /** * 状态名称 */ String statusName; + + /** + * 创建人名称 + */ + String createUserName; + + List yieldOrderList; } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/feign/WorkCenterClient.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/feign/WorkCenterClient.java new file mode 100644 index 00000000..f286d780 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/basic/feign/WorkCenterClient.java @@ -0,0 +1,30 @@ +package org.springblade.desk.basic.feign; + + +import io.swagger.v3.oas.annotations.Hidden; +import lombok.RequiredArgsConstructor; +import org.springblade.core.tenant.annotation.NonDS; +import org.springblade.core.tool.api.R; +import org.springblade.desk.basic.pojo.entity.WorkCenter; +import org.springblade.desk.basic.service.IWorkCenterService; +import org.springframework.web.bind.annotation.RestController; + +/** + * 作业中心 Feign接口类 + * + * @author lqk + */ +@NonDS +@Hidden() +@RestController +@RequiredArgsConstructor +public class WorkCenterClient implements IWorkCenterClient { + + private final IWorkCenterService workCenterService; + + @Override + public R getById(Long workCenterId) { + WorkCenter workCenter = workCenterService.getById(workCenterId); + return R.data(workCenter); + } +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/AssayContentController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/AssayContentController.java index e4508dd8..8f8f8494 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/AssayContentController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/AssayContentController.java @@ -45,7 +45,7 @@ public class AssayContentController extends BladeController { @GetMapping("/page") @Parameters({ @Parameter(name = "wcId", description = "作业中心", in = ParameterIn.QUERY, schema = @Schema(type = "string")), - @Parameter(name = "status", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "int")) + @Parameter(name = "status", description = "状态, 10000:未使用, 10001:已使用, 10002:已过期", in = ParameterIn.QUERY, schema = @Schema(type = "int")) }) @Operation(summary = "分页", description = "") public R> page(@Parameter(hidden = true) AssayContent entity, Query query) { @@ -54,56 +54,65 @@ public class AssayContentController extends BladeController { } /** - * 详情 - */ - @GetMapping("/detail") - @Operation(summary = "详情", description = "") - public R detail(String id) { - AssayContent detail = assayContentService.getById(id); - return R.data(detail); - } + * 详情 + */ + @GetMapping("/detail") + @Operation(summary = "详情", description = "") + public R detail(String id) { + AssayContent content = assayContentService.getById(id); + List detailList = assayContentDetailService.getByContentId(content.getId()); - /** - * 新增 - */ - @PostMapping("/save") - @Operation(summary = "新增", description = "") - public R save(@Valid @RequestBody AssayContentSave saveData) { - AssayContent entity = saveData.getAssayContent(); - List detailList = saveData.getDetailList(); - assayContentService.save(entity, detailList); - return R.status(true); - } + AssayContentVo vo = AssayContentWrapper.build().entityVO(content); + vo.setDetailList(detailList); + return R.data(vo); + } - /** - * 修改 - */ - @PostMapping("/update") - @Operation(summary = "修改", description = "") - public R update(@Valid @RequestBody AssayContentSave saveData) { - AssayContent entity = saveData.getAssayContent(); - List detailList = saveData.getDetailList(); - assayContentService.update(entity, detailList); - return R.status(true); - } + /** + * 新增 + */ + @PostMapping("/save") + @Operation(summary = "新增", description = "") + public R save(@Valid @RequestBody AssayContentSave saveData) { + AssayContent entity = saveData.getAssayContent(); + List detailList = saveData.getDetailList(); + assayContentService.save(entity, detailList); + return R.status(true); + } - /** - * 删除 - */ - @PostMapping("/remove") - @Operation(summary = "逻辑删除", description = "传入ids") - public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - Boolean result = assayContentService.deleteLogic(Func.toLongList(ids)); - return R.status(result); - } + /** + * 修改 + */ + @PostMapping("/update") + @Operation(summary = "修改", description = "") + public R update(@Valid @RequestBody AssayContentSave saveData) { + AssayContent entity = saveData.getAssayContent(); + List detailList = saveData.getDetailList(); + assayContentService.update(entity, detailList); + return R.status(true); + } - /** - * 列表 - 未使用的化验含量 - */ - @GetMapping("/listNoUsed") - @Operation(summary = "未使用的化验含量列表", description = "") - public R listNoUsed(@Parameter(hidden = true) AssayContentDetail authClient, Query query) { - return R.data(null); - } + /** + * 删除 + */ + @PostMapping("/remove") + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + // 删除化验记录 + Boolean result = assayContentService.deleteLogic(Func.toLongList(ids)); + + // 删除化验记录明细 + assayContentDetailService.deleteLogicByContentId(Func.toLongList(ids)); + return R.status(result); + } + + /** + * 列表 - 未使用的化验含量明细列表 + */ + @GetMapping("/detailListNoUsed") + @Operation(summary = "未使用的化验含量明细列表", description = "") + public R> detailListNoUsed(@Parameter(hidden = true) Long workCenterId) { + List detailList = assayContentService.detailListNoUsed(workCenterId); + return R.data(detailList); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/MoldPlanController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/MoldPlanController.java index 67c77f55..9e8f23fd 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/MoldPlanController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/MoldPlanController.java @@ -22,7 +22,6 @@ import org.springblade.desk.order.pojo.request.MoldPlanSave; import org.springblade.desk.order.pojo.vo.MoldPlanVo; import org.springblade.desk.order.service.IMoldPlanOrderService; import org.springblade.desk.order.service.IMoldPlanService; -import org.springblade.desk.order.service.IMoldPlanToolService; import org.springblade.desk.order.wrapper.MoldPlanWrapper; import org.springframework.web.bind.annotation.*; @@ -40,64 +39,84 @@ import java.util.List; public class MoldPlanController extends BladeController { private final IMoldPlanService moldPlanService; - private final IMoldPlanToolService moldPlanToolService; private final IMoldPlanOrderService moldPlanOrderService; /** - * 分页 - */ - @GetMapping("/page") + * 分页 + */ + @GetMapping("/page") @Parameters({ @Parameter(name = "moCode", description = "工装号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), @Parameter(name = "partCode", description = "零件号", in = ParameterIn.QUERY, schema = @Schema(type = "string")) }) - @Operation(summary = "分页", description = "") - public R> page(@Parameter(hidden = true) MoldPlan entity, Query query) { + @Operation(summary = "分页-所有需求", description = "") + public R> page(@Parameter(hidden = true) MoldPlan entity, Query query) { IPage page = moldPlanService.selectPage(Condition.getPage(query), entity); return R.data(MoldPlanWrapper.build().pageVO(page)); - } + } - /** - * 详情 - */ - @GetMapping("/detail") - @Operation(summary = "详情", description = "") - public R detail(String id) { - MoldPlan detail = moldPlanService.getById(id); - return R.data(detail); - } + /** + * 分页 + */ + @GetMapping("/pageApply") + @Parameters({ + @Parameter(name = "moCode", description = "工装号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "partCode", description = "零件号", in = ParameterIn.QUERY, schema = @Schema(type = "string")) + }) + @Operation(summary = "分页-申报记录", description = "") + public R> pageApply(@Parameter(hidden = true) MoldPlan entity, Query query) { + IPage page = moldPlanService.selectPageApply(Condition.getPage(query), entity); + return R.data(MoldPlanWrapper.build().pageVO(page)); + } - /** - * 新增 - */ - @PostMapping("/save") - @Operation(summary = "新增", description = "") - public R save(@Valid @RequestBody MoldPlanSave saveData) { - MoldPlan entity = saveData.getMoldPlan(); - List orderList = saveData.getOrderList(); - List toolList = saveData.getToolList(); - moldPlanService.save(entity, orderList, toolList); - return R.status(true); - } + /** + * 分页-近一月的模具计划 + */ + @GetMapping("/pageNearlyMonth") + @Operation(summary = "分页-近一月的模具计划", description = "") + public R> pageNearlyMonth(@Parameter(hidden = true) MoldPlan entity, Query query) { + IPage page = moldPlanService.pageNearlyMonth(Condition.getPage(query), entity); + return R.data(MoldPlanWrapper.build().pageVO(page)); + } - /** - * 修改 - */ - @PostMapping("/update") - @Operation(summary = "修改", description = "") - public R update(@Valid @RequestBody MoldPlanSave saveData) { - MoldPlan entity = saveData.getMoldPlan(); - List orderList = saveData.getOrderList(); - List toolList = saveData.getToolList(); - moldPlanService.update(entity, orderList, toolList); - return R.status(true); - } + /** + * 详情 + */ + @GetMapping("/detail") + @Operation(summary = "详情", description = "") + public R detail(String id) { + MoldPlan detail = moldPlanService.getById(id); + return R.data(detail); + } - /** - * 删除 - */ - @PostMapping("/remove") - @Operation(summary = "逻辑删除", description = "传入ids") + /** + * 新增 + */ + @PostMapping("/save") + @Operation(summary = "新增", description = "") + public R save(@Valid @RequestBody List planList) { + moldPlanService.save(planList); + return R.status(true); + } + + /** + * 修改 + */ + @PostMapping("/update") + @Operation(summary = "修改", description = "") + public R update(@Valid @RequestBody MoldPlanSave saveData) { + MoldPlan entity = saveData.getMoldPlan(); + List orderList = saveData.getOrderList(); + List toolList = saveData.getToolList(); + moldPlanService.update(entity, orderList, toolList); + return R.status(true); + } + + /** + * 删除 + */ + @PostMapping("/remove") + @Operation(summary = "逻辑删除", description = "传入ids") public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { Boolean result = moldPlanService.deleteLogic(Func.toLongList(ids)); return R.status(result); @@ -110,17 +129,7 @@ public class MoldPlanController extends BladeController { @PostMapping("/closeBatch") @Operation(summary = "批量关闭", description = "传入ids") public R closeBatch(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - Boolean result = moldPlanService.changeStatus(Func.toLongList(ids), MoldPlanEnum.STATUS_CLOSE.getCategory()); + Boolean result = moldPlanService.changeStatus(Func.toLongList(ids), MoldPlanEnum.STATUS_CLOSE.getCode()); return R.status(result); - } - - /** - * 分页-近一月的模具计划 - */ - @GetMapping("/pageNearlyMonth") - @Operation(summary = "分页", description = "") - public R> pageNearlyMonth(@Parameter(hidden = true) MoldPlan authClient, Query query) { - // 根据零件号,分页查询近一月的模具申报 - return R.data(null); - } + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/PlateGoodsRecordController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/PlateGoodsRecordController.java index de81cd4e..7ffe8b00 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/PlateGoodsRecordController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/PlateGoodsRecordController.java @@ -17,12 +17,14 @@ import org.springblade.core.tool.utils.Func; import org.springblade.desk.order.pojo.entity.AssayContentDetail; import org.springblade.desk.order.pojo.entity.PlateGoodsRecord; import org.springblade.desk.order.pojo.entity.PlateGoodsRecordDetail; +import org.springblade.desk.order.pojo.entity.YieldOrder; import org.springblade.desk.order.pojo.enums.PlateGoodsEnum; import org.springblade.desk.order.pojo.request.PlateGoodsRecordSave; import org.springblade.desk.order.pojo.vo.PlateGoodsRecordVo; import org.springblade.desk.order.service.IPlateGoodsRecordDetailService; import org.springblade.desk.order.service.IPlateGoodsRecordService; import org.springblade.desk.order.wrapper.PlateGoodsRecordWrapper; +import org.springblade.desk.order.wrapper.YieldOrderWrapper; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -45,11 +47,9 @@ public class PlateGoodsRecordController extends BladeController { * 分页 */ @GetMapping("/page") - @Parameters({ - @Parameter(name = "demandCode", description = "需求单号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameters({@Parameter(name = "demandCode", description = "需求单号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), @Parameter(name = "wcId", description = "作业中心", in = ParameterIn.QUERY, schema = @Schema(type = "string")), - @Parameter(name = "status", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "int")) - }) + @Parameter(name = "status", description = "状态,10000:待审核, 10001:审核通过, 10002:使用中, 10003:已超期, 10004:已完成, 10005:审核未通过, 10006:已关闭", in = ParameterIn.QUERY, schema = @Schema(type = "int"))}) @Operation(summary = "分页", description = "") public R> page(@Parameter(hidden = true) PlateGoodsRecord entity, Query query) { IPage page = goodsRecordService.selectPage(Condition.getPage(query), entity); @@ -61,9 +61,16 @@ public class PlateGoodsRecordController extends BladeController { */ @GetMapping("/detail") @Operation(summary = "详情", description = "") - public R detail(String id) { + public R detail(String id) { PlateGoodsRecord detail = goodsRecordService.getById(id); - return R.data(detail); + + PlateGoodsRecordVo vo = PlateGoodsRecordWrapper.build().entityVO(detail); + + // 查询关联订单列表 + List yieldOrderList = goodsRecordService.listDetailYieldOrder(detail.getId()); + vo.setYieldOrderList(YieldOrderWrapper.build().listVO(yieldOrderList)); + + return R.data(vo); } /** @@ -96,6 +103,7 @@ public class PlateGoodsRecordController extends BladeController { @PostMapping("/remove") @Operation(summary = "逻辑删除", description = "传入ids") public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + // TODO 验证是否进行添加, 若已添加, 不允许删除 Boolean result = goodsRecordService.deleteLogic(Func.toLongList(ids)); return R.status(result); } @@ -118,7 +126,7 @@ public class PlateGoodsRecordController extends BladeController { @PostMapping("/closeBatch") @Operation(summary = "批量关闭", description = "传入ids") public R closeBatch(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - Boolean result = goodsRecordService.changeStatus(Func.toLongList(ids), PlateGoodsEnum.STATUS_CLOSE.getCategory()); + Boolean result = goodsRecordService.changeStatus(Func.toLongList(ids), PlateGoodsEnum.STATUS_CLOSE.getCode()); return R.status(result); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldOrderController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldOrderController.java index 15097124..55c79d6c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldOrderController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldOrderController.java @@ -99,12 +99,31 @@ public class YieldOrderController extends BladeController { page.setRecords(new ArrayList<>()); if (ObjectUtil.isNotEmpty(entity.getValidationResult())) { - page = yieldOrderService.selectPageSintering(Condition.getPage(query), entity); + page = yieldOrderService.selectPage(Condition.getPage(query), entity); } return R.data(YieldOrderWrapper.build().pageVO(page)); } + /** + * 分页查询列表 - 物料申请 + */ + @GetMapping("/pageMaterialApply") + @Parameters({ + @Parameter(name = "wcId", description = "作业中心", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "materialType", description = "物料类型,1:金钾,2:银钾", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "overHalfMon", description = "使用半月以上的数据,0:否,1:是", in = ParameterIn.QUERY, schema = @Schema(type = "string")) + }) + @Operation(summary = "分页-物料申请", description = "") + public R> pageMaterialApply(Long wcId, Integer materialType, Integer overHalfMon, Query query) { + IPage page = Condition.getPage(query); + page.setRecords(new ArrayList<>()); + + page = yieldOrderService.pageMaterialApply(Condition.getPage(query), wcId, materialType, overHalfMon); + + return R.data(YieldOrderWrapper.build().pageVO(page)); + } + /** * 详情 */ diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldPlanController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldPlanController.java index 4edf05ce..2d378bcb 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldPlanController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/controller/YieldPlanController.java @@ -58,7 +58,7 @@ public class YieldPlanController extends BladeController { @Parameter(name = "partCode", description = "零件号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), @Parameter(name = "status", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "int")) }) - @Operation(summary = "分页", description = "") + @Operation(summary = "分页查询列表-电镀", description = "") public R> pageElectroplate(@Parameter(hidden = true) YieldPlan entity, Query query) { IPage page = yieldPlanService.selectPageElectroplate(Condition.getPage(query), entity); return R.data(YieldPlanWrapper.build().pageVO(page)); @@ -73,7 +73,7 @@ public class YieldPlanController extends BladeController { @Parameter(name = "partCode", description = "零件号", in = ParameterIn.QUERY, schema = @Schema(type = "string")), @Parameter(name = "status", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "int")) }) - @Operation(summary = "分页", description = "") + @Operation(summary = "分页查询列表-烧结", description = "") public R> pageSintering(@Parameter(hidden = true) YieldPlan entity, Query query) { IPage page = yieldPlanService.selectPageSintering(Condition.getPage(query), entity); return R.data(YieldPlanWrapper.build().pageVO(page)); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.java index 55e40435..928a5839 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.java @@ -22,4 +22,12 @@ public interface AssayContentDetailMapper extends BaseMapper * @return */ List selectPage(IPage page, AssayContentDetail entity); + + /** + * 根据化验记录逻辑删除明细 + * + * @param contentIds + * @return + */ + boolean deleteLogicByContentId(List contentIds); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.xml index 41180f0b..ba8b5b4e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentDetailMapper.xml @@ -4,6 +4,17 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + UPDATE MES_ASSAY_CONTENT_DETAIL + SET IS_DELETED = TRUE + WHERE AC_ID IN + + #{contentId} + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentMapper.xml index 505d66d6..2ea0082a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/AssayContentMapper.xml @@ -5,8 +5,9 @@ SELECT ID, TENANT_ID, CREATE_USER, CREATE_DEPT, CREATE_TIME, UPDATE_USER, UPDATE_TIME, STATUS, IS_DELETED, - MO_CODE, MO_NAME, QUANTITY, ERP_ID, YP_ID, ERP_WO_CODE, MAF_STATUS, PLAN_TYPE, NEED_DATE, KEEPER, RELEASER, QUA_LEVEL, + MO_CODE, MO_NAME, QUANTITY, ERP_ID, YP_ID, ERP_WO_CODE, MAF_STATUS, PLAN_TYPE_CODE, NEED_DATE, KEEPER, RELEASER, QUA_LEVEL, PLAN_TYPE_NAME, PART_CODE, PART_NAME, MEMO, MAF_TYPE, URGENT_TYPE FROM MES_MOLD_PLAN + WHERE IS_DELETED = 0 + + AND SOURCE = #{entity.source} + + + AND MO_CODE LIKE CONCAT('%', CONCAT(#{entity.moCode}, '%')) + + + AND PART_CODE LIKE CONCAT('%', CONCAT(#{entity.partCode}, '%')) + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldOrderMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldOrderMapper.xml index d2a031b5..ced2a749 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldOrderMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldOrderMapper.xml @@ -20,6 +20,9 @@ #{yieldType.code} + + + AND WORK_CENTER_ID = #{entity.workCenterId} AND YP_CODE LIKE CONCAT('%', CONCAT(#{entity.ypCode}, '%')) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentDetailService.java index 2f358e71..65f7d7cb 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentDetailService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentDetailService.java @@ -1,9 +1,12 @@ package org.springblade.desk.order.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import jakarta.validation.constraints.NotEmpty; import org.springblade.core.mp.base.BaseService; import org.springblade.desk.order.pojo.entity.AssayContentDetail; +import java.util.List; + /** * 服务实现类 * @@ -18,4 +21,22 @@ public interface IAssayContentDetailService extends BaseService selectPage(IPage page, AssayContentDetail entity); + + /** + * 根据化验记录查询明细列表 + * + * @param contentId + * @return + */ + List getByContentId(Long contentId); + + /** + * 根据化验记录逻辑删除明细 + * + * @param contentIds + * @return + */ + boolean deleteLogicByContentId(@NotEmpty List contentIds); + + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentService.java index 4b698296..cccd2dff 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IAssayContentService.java @@ -39,4 +39,12 @@ public interface IAssayContentService extends BaseService { * @return */ boolean update(AssayContent entity, List detailList); + + /** + * 查询作业中心下,未使用的化验含量明细列表 + * + * @param workCenterId + * @return + */ + List detailListNoUsed(Long workCenterId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IMoldPlanService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IMoldPlanService.java index 9d34d028..6e8fb0c7 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IMoldPlanService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IMoldPlanService.java @@ -23,6 +23,32 @@ public interface IMoldPlanService extends BaseService { */ IPage selectPage(IPage page, MoldPlan entity); + /** + * 自定义分页 - 人工申报的 + * + * @param page + * @param entity + * @return + */ + IPage selectPageApply(IPage page, MoldPlan entity); + + /** + * 自定义分页 - 近一月的模具计划 + * + * @param page + * @param entity + * @return + */ + IPage pageNearlyMonth(IPage page, MoldPlan entity); + + /** + * 保存 + * + * @param planList + * @return + */ + boolean save(List planList); + /** * 保存 * diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordDetailService.java index 1cb40853..ed3ee52a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordDetailService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordDetailService.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; import org.springblade.desk.order.pojo.entity.PlateGoodsRecordDetail; +import java.util.List; + /** * 服务实现类 * @@ -18,4 +20,20 @@ public interface IPlateGoodsRecordDetailService extends BaseService selectPage(IPage page, PlateGoodsRecordDetail entity); + + /** + * 根据镀层需求上报删除明细列表 + * + * @param recordId + * @return + */ + boolean deleteLogicByRecordId(Long recordId); + + /** + * 根据镀层需求上报查询明细列表 + * + * @param recordId + * @return + */ + List listByRecordId(Long recordId); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordService.java index bc3b2781..e7f8e365 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IPlateGoodsRecordService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; import org.springblade.desk.order.pojo.entity.PlateGoodsRecord; import org.springblade.desk.order.pojo.entity.PlateGoodsRecordDetail; +import org.springblade.desk.order.pojo.entity.YieldOrder; import java.util.List; @@ -40,13 +41,21 @@ public interface IPlateGoodsRecordService extends BaseService */ boolean update(PlateGoodsRecord entity, List detailList); - /** - * 批量审核 - * - * @param ids - * @param approvalStatus - * @param approvalMemo - * @return - */ - boolean confirmBatch(List ids, Integer approvalStatus, String approvalMemo); + /** + * 批量审核 + * + * @param ids + * @param approvalStatus + * @param approvalMemo + * @return + */ + boolean confirmBatch(List ids, Integer approvalStatus, String approvalMemo); + + /** + * 获取详情关联的生产订单列表 + * + * @param id + * @return + */ + List listDetailYieldOrder(Long id); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IYieldOrderService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IYieldOrderService.java index 958a6e6c..d6c73150 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IYieldOrderService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/IYieldOrderService.java @@ -43,6 +43,17 @@ public interface IYieldOrderService extends BaseService { */ IPage selectPageSintering(IPage page, YieldOrder entity); + /** + * 自定义分页 - 物料申请 + * + * @param page + * @param wcId + * @param materialType + * @param overHalfMon + * @return + */ + IPage pageMaterialApply(IPage page, Long wcId, Integer materialType, Integer overHalfMon); + /** * 批量确认 * diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentDetailServiceImpl.java index 038bff74..f12f4336 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentDetailServiceImpl.java @@ -1,6 +1,9 @@ package org.springblade.desk.order.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import org.springblade.common.constant.CommonConstant; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.desk.order.pojo.entity.AssayContentDetail; import org.springblade.desk.order.mapper.AssayContentDetailMapper; @@ -22,4 +25,22 @@ public class AssayContentDetailServiceImpl extends BaseServiceImpl dataList = baseMapper.selectPage(page, entity); return page.setRecords(dataList); } + + @Override + public List getByContentId(Long contentId) { + Wrapper wrapper = Wrappers.lambdaQuery(AssayContentDetail.class) + .eq(AssayContentDetail::getIsDeleted, CommonConstant.DELETE_FALSE) + .eq(AssayContentDetail::getAcId, contentId); + List detailList = baseMapper.selectList(wrapper); + return detailList; + } + + @Override + public boolean deleteLogicByContentId(List contentIds) { + return baseMapper.deleteLogicByContentId(contentIds); + } + + + + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentServiceImpl.java index 0300cad7..3a0b513c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/AssayContentServiceImpl.java @@ -1,11 +1,15 @@ package org.springblade.desk.order.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; +import org.springblade.common.constant.CommonConstant; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.desk.order.mapper.AssayContentMapper; import org.springblade.desk.order.pojo.entity.AssayContent; import org.springblade.desk.order.pojo.entity.AssayContentDetail; -import org.springblade.desk.order.mapper.AssayContentMapper; +import org.springblade.desk.order.pojo.enums.AssayContentEnum; import org.springblade.desk.order.service.IAssayContentDetailService; import org.springblade.desk.order.service.IAssayContentService; import org.springframework.stereotype.Service; @@ -31,6 +35,7 @@ public class AssayContentServiceImpl extends BaseServiceImpl detailList) { + entity.setStatus(AssayContentEnum.STATUS_UNUSED.getCode()); if (this.save(entity)) { for (AssayContentDetail detail : detailList) { detail.setAcId(entity.getId()); @@ -44,11 +49,31 @@ public class AssayContentServiceImpl extends BaseServiceImpl detailList) { if (this.updateById(entity)) { - detailService.saveBatch(detailList); + detailService.updateBatchById(detailList); return true; } return false; } + @Override + public List detailListNoUsed(Long workCenterId) { + // 1. 查询作业中心下,最新的未被使用的化验明细 + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(AssayContent.class) + .eq(AssayContent::getIsDeleted, CommonConstant.DELETE_FALSE) + .eq(AssayContent::getWcId, workCenterId) + .orderByDesc(AssayContent::getCreateTime); + List contentList = baseMapper.selectList(wrapper); + + // 若未查询到化验记录,直接返回空 + if (contentList.size() == 0) { + return null; + } + + // 查询该化验记录的明细数据,并返回 + AssayContent assayContent = contentList.get(0); + List detailList = detailService.getByContentId(assayContent.getId()); + + return detailList; + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/MoldPlanServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/MoldPlanServiceImpl.java index 37a91f43..59a2e26b 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/MoldPlanServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/MoldPlanServiceImpl.java @@ -3,10 +3,13 @@ package org.springblade.desk.order.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.RequiredArgsConstructor; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.desk.dashboard.pojo.entity.DsPartEntity; +import org.springblade.desk.dashboard.service.IDsPartService; import org.springblade.desk.order.pojo.entity.MoldPlan; import org.springblade.desk.order.pojo.entity.MoldPlanOrder; import org.springblade.desk.order.pojo.entity.MoldPlanTool; import org.springblade.desk.order.mapper.MoldPlanMapper; +import org.springblade.desk.order.pojo.enums.MoldPlanEnum; import org.springblade.desk.order.service.IMoldPlanOrderService; import org.springblade.desk.order.service.IMoldPlanService; import org.springblade.desk.order.service.IMoldPlanToolService; @@ -28,12 +31,44 @@ public class MoldPlanServiceImpl extends BaseServiceImpl selectPage(IPage page, MoldPlan entity) { List dataList = baseMapper.selectPage(page, entity); return page.setRecords(dataList); } + @Override + public IPage selectPageApply(IPage page, MoldPlan entity) { + entity.setSource(MoldPlanEnum.SOURCE_USER.getCode()); + List dataList = baseMapper.selectPage(page, entity); + return page.setRecords(dataList); + } + + @Override + public IPage pageNearlyMonth(IPage page, MoldPlan entity) { + return null; + } + + @Override + public boolean save(List planList) { + for (MoldPlan moldPlan : planList) { + moldPlan.setStatus(MoldPlanEnum.MAF_STATUS_CREATE.getCode()); + moldPlan.setSource(MoldPlanEnum.SOURCE_USER.getCode()); + // 工装 + DsPartEntity dsPart = dsPartService.selectDsPartByPatCode(moldPlan.getPartCode()); + if (dsPart != null && "压饼模".equals(dsPart.getPartName())) { + moldPlan.setPlanTypeCode(MoldPlanEnum.PLAN_TYPE_CODE_Z.getName()); + moldPlan.setPlanTypeName(MoldPlanEnum.PLAN_TYPE_CODE_D.getName()); + } else if (dsPart != null && "石墨模".equals(dsPart.getPartName())) { + moldPlan.setPlanTypeCode(MoldPlanEnum.PLAN_TYPE_CODE_Z.getName()); + moldPlan.setPlanTypeName(MoldPlanEnum.PLAN_TYPE_NAME_D.getName()); + } + } + return this.saveBatch(planList); + } + @Transactional(rollbackFor = Exception.class) @Override public boolean save(MoldPlan entity, List orderList, List toolList) { diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordDetailServiceImpl.java index 8b614057..3a469073 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordDetailServiceImpl.java @@ -1,6 +1,9 @@ package org.springblade.desk.order.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import org.springblade.common.constant.CommonConstant; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.desk.order.pojo.entity.PlateGoodsRecordDetail; import org.springblade.desk.order.mapper.PlateGoodsRecordDetailMapper; @@ -22,4 +25,27 @@ public class PlateGoodsRecordDetailServiceImpl extends BaseServiceImpl dataList = baseMapper.selectPage(page, entity); return page.setRecords(dataList); } + + @Override + public boolean deleteLogicByRecordId(Long recordId) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(PlateGoodsRecordDetail.class) + .eq(PlateGoodsRecordDetail::getIsDeleted, CommonConstant.DELETE_FALSE) + .eq(PlateGoodsRecordDetail::getPgrdId, recordId); + List dataList = baseMapper.selectList(wrapper); + + dataList.forEach(data -> { + data.setIsDeleted(CommonConstant.DELETE_TRUE); + }); + + return this.saveBatch(dataList); + } + + @Override + public List listByRecordId(Long recordId) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(PlateGoodsRecordDetail.class) + .eq(PlateGoodsRecordDetail::getIsDeleted, CommonConstant.DELETE_FALSE) + .eq(PlateGoodsRecordDetail::getPgrdId, recordId); + List dataList = baseMapper.selectList(wrapper); + return dataList; + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordServiceImpl.java index 38ff4a37..c44d1288 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/PlateGoodsRecordServiceImpl.java @@ -6,15 +6,21 @@ import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.utils.DateUtil; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.dashboard.utils.DateUtils; +import org.springblade.desk.order.mapper.PlateGoodsRecordMapper; import org.springblade.desk.order.pojo.entity.PlateGoodsRecord; import org.springblade.desk.order.pojo.entity.PlateGoodsRecordDetail; -import org.springblade.desk.order.mapper.PlateGoodsRecordMapper; +import org.springblade.desk.order.pojo.entity.YieldOrder; +import org.springblade.desk.order.pojo.enums.PlateGoodsEnum; import org.springblade.desk.order.service.IPlateGoodsRecordDetailService; import org.springblade.desk.order.service.IPlateGoodsRecordService; +import org.springblade.desk.order.service.IYieldOrderService; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 服务实现类 @@ -26,6 +32,7 @@ import java.util.List; public class PlateGoodsRecordServiceImpl extends BaseServiceImpl implements IPlateGoodsRecordService { private final IPlateGoodsRecordDetailService detailService; + private final IYieldOrderService yieldOrderService; @Override public IPage selectPage(IPage page, PlateGoodsRecord entity) { @@ -35,26 +42,28 @@ public class PlateGoodsRecordServiceImpl extends BaseServiceImpl detailList) { + // todo 需求单号需要优化 + entity.setDemandCode(DateUtils.dateTimeNow()); + entity.setStatus(PlateGoodsEnum.STATUS_WAITING.getCode()); if (this.save(entity)) { for (PlateGoodsRecordDetail detail : detailList) { detail.setPgrdId(entity.getId()); } - detailService.saveBatch(detailList); - return true; + return detailService.saveBatch(detailList); } - return false; + return Boolean.FALSE; } @Override public boolean update(PlateGoodsRecord entity, List detailList) { if (this.save(entity)) { - //TODO 先根据需求ID将原明细删除 + // 先根据需求ID将原明细删除 + detailService.deleteLogicByRecordId(entity.getId()); // 保存新的明细 - detailService.saveBatch(detailList); - return true; + return detailService.saveBatch(detailList); } - return false; + return Boolean.FALSE; } @Override @@ -74,4 +83,20 @@ public class PlateGoodsRecordServiceImpl extends BaseServiceImpl listDetailYieldOrder(Long id) { + // 先查询关联的明细列表 + List detailList = detailService.listByRecordId(id); + + if (Func.isEmpty(detailList)) { + return null; + } + + List yieldOrderIds = detailList.stream().map(PlateGoodsRecordDetail::getYoId).collect(Collectors.toList()); + // 再根据明细中的生产订单id查询订单 + List yieldOrderList = yieldOrderService.listByIds(yieldOrderIds); + return yieldOrderList; + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java index d9ed1bf2..94754cda 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java @@ -90,6 +90,16 @@ public class YieldOrderServiceImpl extends BaseServiceImpl pageMaterialApply(IPage page, Long wcId, Integer materialType, Integer overHalfMon) { + YieldOrder entity = new YieldOrder(); + entity.setWorkCenterId(wcId); + //TODO 1. 金钾银钾如何区分 + // 2. 允许使用半月以上的数据是以生产订单的什么时间算 + List dataList = baseMapper.selectPage(page, entity, null); + return page.setRecords(dataList); + } + @Override public boolean confirmBatch(List ids) { List yieldOrderList = new ArrayList<>(); @@ -504,6 +514,11 @@ public class YieldOrderServiceImpl extends BaseServiceImpl { public MoldPlanVo entityVO(MoldPlan entity) { MoldPlanVo vo = Objects.requireNonNull(BeanUtil.copyProperties(entity, MoldPlanVo.class)); vo.setStatusName(MoldPlanEnum.getName(entity.getStatus())); + vo.setMafStatusName(MoldPlanEnum.getName(entity.getMafStatus())); + vo.setMafTypeName(MoldPlanEnum.getName(entity.getMafType())); return vo; } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/wrapper/PlateGoodsRecordWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/wrapper/PlateGoodsRecordWrapper.java index 7258c1e6..21dd575c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/order/wrapper/PlateGoodsRecordWrapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/order/wrapper/PlateGoodsRecordWrapper.java @@ -2,8 +2,14 @@ package org.springblade.desk.order.wrapper; import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.core.tool.utils.Func; +import org.springblade.desk.basic.cache.WorkCenterCache; +import org.springblade.desk.basic.pojo.entity.WorkCenter; import org.springblade.desk.order.pojo.entity.PlateGoodsRecord; +import org.springblade.desk.order.pojo.enums.PlateGoodsEnum; import org.springblade.desk.order.pojo.vo.PlateGoodsRecordVo; +import org.springblade.system.cache.UserCache; +import org.springblade.system.pojo.entity.User; import java.util.Objects; @@ -21,7 +27,18 @@ public class PlateGoodsRecordWrapper extends BaseEntityWrapper + + + logback + + + + + + + + + + + + + WARN + ACCEPT + DENY + + + + %-4relative [%thread] %-5level %logger{30} - %msg%n + + + + + + ${log.path} + + ${log.path}.%d{yyyy-MM-dd}.zip + + + %date %level [%thread] %logger{36} [%file : %line] %msg%n + + + + + + + + + + + + + + + + + + + diff --git a/doc/sql/mes/increase-260108.sql b/doc/sql/mes/increase-260108.sql index 6de3a33b..34df2173 100644 --- a/doc/sql/mes/increase-260108.sql +++ b/doc/sql/mes/increase-260108.sql @@ -371,4 +371,18 @@ ADD (WORKSTATION_ID NUMBER(11)); COMMENT ON COLUMN MES_EQUIPMENT.EQUIPMENT_LOCATION IS '设备位置'; COMMENT -ON COLUMN MES_EQUIPMENT.WORKSTATION_ID IS '作业中心ID'; \ No newline at end of file +ON COLUMN MES_EQUIPMENT.WORKSTATION_ID IS '作业中心ID'; + +-- 修改字段及注释 +ALTER TABLE mes_mold_plan DROP COLUMN plan_type; +ALTER TABLE mes_mold_plan ADD plan_type_code NUMBER(38, 0) NULL; +COMMENT ON COLUMN mes_mold_plan.plan_type_code IS '计划类型; 13001:Z:制造(工装不为空且工装名称为压饼模),13002:D:夹具(工装不为空且工装名称为石墨模)'; + +-- 修改字段及注释 +ALTER TABLE mes_mold_plan DROP COLUMN plan_type_name; +ALTER TABLE mes_mold_plan ADD plan_type_name NVARCHAR2(255) NULL; +COMMENT ON COLUMN mes_mold_plan.plan_type_name IS '计划类型名称;14001:Z:制造(工装不为空且工装名称为压饼模),14002:D:夹具(工装不为空且工装名称为石墨模)'; + +-- 添加字段及注释 +ALTER TABLE MES_MOLD_PLAN ADD "SOURCE" NUMBER(38,0) NULL; +COMMENT ON COLUMN MES_MOLD_PLAN."SOURCE" IS '计划来源;15001:自动生成,15002:人工添加'; From 903ce2d9b5ca54b26926212a045c674efba9fc7f Mon Sep 17 00:00:00 2001 From: liweidong-hj Date: Mon, 12 Jan 2026 16:54:16 +0800 Subject: [PATCH 14/20] =?UTF-8?q?=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/springblade/common/constant/LauncherConstant.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java index 9459299e..83e6bdc6 100644 --- a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java +++ b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java @@ -12,9 +12,9 @@ public interface LauncherConstant { /** * nacos 命名空间 */ - String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; +// String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; // 生产环境 -// String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; + String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; // 测试环境 // String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; From c883287e5528cf97061f8e67e08cd49933804a17 Mon Sep 17 00:00:00 2001 From: sunjianxi <839419401@qq.com> Date: Mon, 12 Jan 2026 17:23:44 +0800 Subject: [PATCH 15/20] =?UTF-8?q?=E6=8E=92=E4=BA=A7=E7=9B=B8=E5=85=B3-sjx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/EquipAbilityEntity.java | 7 ++++ .../pojo/entity/SameTroughEntity.java | 6 ++-- .../scheduling/mapper/SameTroughMapper.java | 3 ++ .../scheduling/mapper/SameTroughMapper.xml | 23 +++++++++++++ .../service/ISameTroughService.java | 4 +++ .../service/impl/SameTroughServiceImpl.java | 6 ++++ .../service/impl/WorkOrderServiceImpl.java | 33 +++++++++++-------- .../scheduling/vo/SameTroughVO.java | 5 +++ 8 files changed, 71 insertions(+), 16 deletions(-) diff --git a/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/EquipAbilityEntity.java b/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/EquipAbilityEntity.java index 6db4959b..a5cefaaf 100644 --- a/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/EquipAbilityEntity.java +++ b/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/EquipAbilityEntity.java @@ -26,6 +26,9 @@ package org.springblade.scheduling.pojo.entity; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.NullSerializer; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -96,24 +99,28 @@ public class EquipAbilityEntity extends BaseEntity { * 额定加工能力 */ @Schema(description = "额定加工能力") + @JsonSerialize(nullsUsing = NullSerializer.class) private BigDecimal standardProcessAbility; /** * 额定工时(分钟) */ @Schema(description = "额定工时(分钟)") + @JsonSerialize(nullsUsing = NullSerializer.class) private BigDecimal standardTime; /** * 准备工时(分钟) */ @Schema(description = "准备工时(分钟)") + @JsonSerialize(nullsUsing = NullSerializer.class) private BigDecimal prepareTime; /** * 轮次间隔(分钟) */ @Schema(description = "轮次间隔(分钟)") + @JsonSerialize(using = ToStringSerializer.class) private BigDecimal interval; /** diff --git a/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/SameTroughEntity.java b/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/SameTroughEntity.java index 53625738..614b2f80 100644 --- a/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/SameTroughEntity.java +++ b/blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/SameTroughEntity.java @@ -53,7 +53,7 @@ public class SameTroughEntity extends BaseEntity { * 作业中心id */ @Schema(description = "作业中心id") - private BigDecimal workCenterId; + private Long workCenterId; /** * 作业中心名称 */ @@ -63,7 +63,7 @@ public class SameTroughEntity extends BaseEntity { * 工序id */ @Schema(description = "工序id") - private BigDecimal processId; + private Long processId; /** * 工序名称 */ @@ -73,7 +73,7 @@ public class SameTroughEntity extends BaseEntity { * 工艺id */ @Schema(description = "工艺id") - private BigDecimal craftId; + private Long craftId; /** * 工艺名称 */ diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.java b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.java index 08b38e3e..4f9d44ee 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.java +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.java @@ -34,6 +34,7 @@ import org.springblade.scheduling.scheduling.excel.SameTroughExcel; import org.springblade.scheduling.scheduling.vo.SameTroughVO; import java.util.List; +import java.util.Map; /** * 非同槽因素表 Mapper 接口 @@ -61,4 +62,6 @@ public interface SameTroughMapper extends BaseMapper { */ List export(@Param("ew") Wrapper queryWrapper); + SameTroughVO selectSameTroughInfo(Long id); + } diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.xml b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.xml index 90f0a446..ca2583e8 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.xml +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/SameTroughMapper.xml @@ -41,4 +41,27 @@ SELECT * FROM MES_SAME_TROUGH ${ew.customSqlSegment} + + diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/ISameTroughService.java b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/ISameTroughService.java index aed3019e..e7a21945 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/ISameTroughService.java +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/ISameTroughService.java @@ -27,12 +27,14 @@ package org.springblade.scheduling.scheduling.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; import org.springblade.core.mp.base.BaseService; import org.springblade.scheduling.pojo.entity.SameTroughEntity; import org.springblade.scheduling.scheduling.excel.SameTroughExcel; import org.springblade.scheduling.scheduling.vo.SameTroughVO; import java.util.List; +import java.util.Map; /** * 非同槽因素表 服务类 @@ -59,4 +61,6 @@ public interface ISameTroughService extends BaseService { */ List export(Wrapper queryWrapper); + SameTroughVO selectSameTroughInfo(Long id); + } diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/SameTroughServiceImpl.java b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/SameTroughServiceImpl.java index 9e1692fe..d7203a0f 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/SameTroughServiceImpl.java +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/SameTroughServiceImpl.java @@ -35,6 +35,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; import java.util.List; +import java.util.Map; /** * 非同槽因素表 服务实现类 @@ -58,4 +59,9 @@ public class SameTroughServiceImpl extends BaseServiceImpl schedulingBoard(WorkOrderDto workOrder) { List list = baseMapper.selectWorkOrderList(workOrder); + list.forEach(item -> { + item.setPriorityAps(YieldOrderEnum.getName(Integer.parseInt(item.getPriorityAps()))); + }); Map> woCodeGroup = list.stream().collect(Collectors.groupingBy(WorkOrderDto::getWoCode)); List resultList = new ArrayList<>(); for (Map.Entry> entry : woCodeGroup.entrySet()) { @@ -482,7 +486,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl> entry : equipAbilityMap.entrySet()) { //根据时间点获取所有设备资源 - List equipResourceList = equipResourceService.list(Wrappers.lambdaQuery().eq(EquipResourceEntity::getCraftId, craft.getCaId()).eq(EquipResourceEntity::getWorkCenterId, craft.getWorkCenterId()).ge(EquipResourceEntity::getStartTime, dateTime).eq(EquipResourceEntity::getIsUsed, 0).in(EquipResourceEntity::getEquipOrder, entry.getKey())); + List equipResourceList = equipResourceService.list(Wrappers.lambdaQuery() + .eq(EquipResourceEntity::getCraftId, craft.getCaId()) + .eq(EquipResourceEntity::getWorkCenterId, craft.getWorkCenterId()) + .ge(EquipResourceEntity::getStartTime, dateTime) + .eq(EquipResourceEntity::getIsUsed, 0) + .in(EquipResourceEntity::getEquipOrder, entry.getKey())); if (CollectionUtils.isEmpty(equipResourceList)) { order.setStatus(YieldOrderEnum.STATUS_PROCESS_ERROR.getCode()); order.setErrorInfo("工序:" + processMap.get(craft.getPpsId()) + ",未匹配到对应的设备资源"); @@ -1167,19 +1176,17 @@ public class WorkOrderServiceImpl extends BaseServiceImpl list,Long workCenterId){ - List sameTroughEntities = sameTroughService.list(); - //相同零件号判断键位、生产厂家、检验编号、生产标识 - //按照零件号分组 - Map> map = list.stream().collect(Collectors.groupingBy(YieldOrderEntity::getPartCode)); - for(Map.Entry> entry : map.entrySet()){ - List list1 = entry.getValue(); - if(list1.size() > 1){ - List craftList = yieldOrderCraftService.list(Wrappers.lambdaQuery().in(YieldOrderCraftEntity::getYoId,list1.stream().map(BaseEntity::getId).collect(Collectors.toList()))); - + /*public void sameTrough(YieldOrderCraftEntity yieldOrderCraft,LocalDateTime dateTime){ + SameTroughEntity sameTrough =sameTroughService.getOne(Wrappers.lambdaQuery().eq(SameTroughEntity::getWorkCenterId,yieldOrderCraft.getWorkCenterId()).eq(SameTroughEntity::getCraftId,yieldOrderCraft.getCaId()).eq(SameTroughEntity::getProcessId,yieldOrderCraft.getPpsId())); + if(sameTrough != null){ + //查询是否有已经排产的计划 + List workPlanList = workPlanService.list(Wrappers.lambdaQuery().eq(WorkPlanEntity::getWorkCenterId,yieldOrderCraft.getWorkCenterId()).eq(WorkPlanEntity::getCaId,yieldOrderCraft.getCaId()).eq(WorkPlanEntity::getPpsId,yieldOrderCraft.getPpsId())); + if(CollectionUtils.isNotEmpty(workPlanList)){ + Map<> } + SameTroughVO vo = sameTroughService.selectSameTroughInfo(yieldOrderCraft.getId()); + } - //不同零件号判断工艺 - } + }*/ } diff --git a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/vo/SameTroughVO.java b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/vo/SameTroughVO.java index fdaad7b5..234c4e72 100644 --- a/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/vo/SameTroughVO.java +++ b/blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/vo/SameTroughVO.java @@ -42,4 +42,9 @@ public class SameTroughVO extends SameTroughEntity { @Serial private static final long serialVersionUID = 1L; + private String partCode; + + private String plate; + + } From e89e50e3fe00de860a403523d698925e0dc63616 Mon Sep 17 00:00:00 2001 From: qinyulong Date: Tue, 13 Jan 2026 09:07:09 +0800 Subject: [PATCH 16/20] =?UTF-8?q?=E5=9F=B9=E8=AE=AD=E5=AE=89=E6=8E=92?= =?UTF-8?q?=EF=BC=9A=E9=85=8D=E7=BD=AE=E3=80=81=E6=89=B9=E9=87=8F=E4=B8=8B?= =?UTF-8?q?=E5=8F=91=E3=80=81=E6=89=B9=E9=87=8F=E8=B5=84=E6=96=99=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E3=80=81=E6=89=B9=E9=87=8F=E5=9F=B9=E8=AE=AD=E5=AE=8C?= =?UTF-8?q?=E6=88=90=E3=80=81=E6=9B=B4=E6=96=B0=E5=9F=B9=E8=AE=AD=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E8=B6=85=E6=9C=9F=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CultivateDetailController.java | 82 +++++++++++++++++++ .../mapper/CultivateDetailMapper.java | 4 + .../mapper/CultivateDetailMapper.xml | 12 +++ .../service/ICultivateDetailService.java | 4 + .../impl/CultivateDetailServiceImpl.java | 5 ++ 5 files changed, 107 insertions(+) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java index 40f388e1..fea2e567 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java @@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import jakarta.annotation.PostConstruct; import lombok.AllArgsConstructor; import jakarta.validation.Valid; @@ -13,8 +14,10 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -27,6 +30,7 @@ import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.constant.BladeConstant; +import java.util.Date; import java.util.Map; import java.util.List; @@ -126,4 +130,82 @@ public class CultivateDetailController extends BladeController { ExcelUtil.export(response, "培训安排数据" + DateUtil.time(), "培训安排数据表", list, CultivateDetailExcel.class); } + /** + * 培训安排 配置 + */ + @PostMapping("/configured") + @ApiOperationSupport(order = 10) + @Operation(summary = "配置", description = "传入cultivateDetail") + public R configured(@Valid @RequestBody CultivateDetailEntity cultivateDetail) { + cultivateDetail.setCaStatus(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue()); + return R.status(cultivateDetailService.updateById(cultivateDetail)); + } + + /** + * 批量下发 + */ + @PostMapping("/issued") + @ApiOperationSupport(order = 11) + @Operation(summary = "批量下发", description = "传入cultivateDetails") + public R issued(@Valid @RequestBody List cultivateDetails) { + for (CultivateDetailEntity cultivateDetail : cultivateDetails) { + Short caStatus = cultivateDetail.getCaStatus(); + if (!(TrainingStatusEnum.WAIT_DISTRIBUTE.getCode().shortValue() == caStatus)) { + return R.fail("请选择状态为待下发的记录"); + } + cultivateDetail.setCaStatus(TrainingStatusEnum.ISSUED.getCode().shortValue()); + cultivateDetail.setDistributeTime(new Date()); + } + return R.status(cultivateDetailService.saveOrUpdateBatch(cultivateDetails)); + } + + /** + * 批量资料上传 + */ + @PostMapping("/uploadMaterials") + @ApiOperationSupport(order = 12) + @Operation(summary = "批量资料上传", description = "传入cultivateDetails") + public R uploadMaterials(@Valid @RequestBody List cultivateDetails) { + for (CultivateDetailEntity cultivateDetail : cultivateDetails) { + Short caStatus = cultivateDetail.getCaStatus(); + if (!(TrainingStatusEnum.ISSUED.getCode().shortValue() == caStatus)) { + return R.fail("请选择状态为培训中的记录"); + } + cultivateDetail.setCaStatus(TrainingStatusEnum.TRAINED.getCode().shortValue()); + } + return R.status(cultivateDetailService.saveOrUpdateBatch(cultivateDetails)); + } + + /** + * 批量培训完成 + */ + @PostMapping("/trainingCompleted") + @ApiOperationSupport(order = 13) + @Operation(summary = "批量培训完成", description = "传入cultivateDetails") + public R trainingCompleted(@Valid @RequestBody List cultivateDetails) { + for (CultivateDetailEntity cultivateDetail : cultivateDetails) { + Short caStatus = cultivateDetail.getCaStatus(); + if (!(TrainingStatusEnum.TRAINED.getCode().shortValue() == caStatus)) { + return R.fail("请选择状态为待确认的记录"); + } + cultivateDetail.setCaStatus(TrainingStatusEnum.OK_TRAINED.getCode().shortValue()); + cultivateDetail.setFinishTime(new Date()); + } + return R.status(cultivateDetailService.saveOrUpdateBatch(cultivateDetails)); + } + + @PostConstruct // 项目启动后立即执行一次 + public void init() { + exceed(); + } + + /** + * 更新培训记录超期状态 + * TODO 以后需要交由PowerJob服务统一管理 + */ + @Scheduled(cron = "0 0 0 * * ?") // 每天凌晨0点执行 + public void exceed() { + cultivateDetailService.exceed(); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java index b21bd807..34b87a7d 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.java @@ -37,4 +37,8 @@ public interface CultivateDetailMapper extends BaseMapper */ List exportCultivateDetail(@Param("ew") Wrapper queryWrapper); + /** + * 培训超期 + */ + void exceed(); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml index 76ba2cec..1a7f9c64 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CultivateDetailMapper.xml @@ -122,4 +122,16 @@ FROM MES_CULTIVATE_DETAIL ${ew.customSqlSegment} + + UPDATE MES_CULTIVATE_DETAIL cd + SET cd.CA_STATUS = 4, -- 4表示已到期 + cd.UPDATE_TIME = SYSDATE + WHERE cd.CA_STATUS = 3 -- 当前状态为已下发-培训中 + AND cd.IS_DELETED = 0 + AND EXISTS (SELECT 1 + FROM MES_TRAINING_PLAN tp + WHERE tp.ID = cd.PLAN_ID + AND tp.IS_DELETED = 0 + AND SYSDATE > (cd.DISTRIBUTE_TIME + tp.CYCLE)) + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java index 38b7e05e..9a558f5a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java @@ -35,4 +35,8 @@ public interface ICultivateDetailService extends BaseService exportCultivateDetail(Wrapper queryWrapper); + /** + * 培训超期 + */ + void exceed(); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java index cdc4e3a4..e66d9306 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java @@ -37,4 +37,9 @@ public class CultivateDetailServiceImpl extends BaseServiceImpl Date: Tue, 13 Jan 2026 10:32:08 +0800 Subject: [PATCH 17/20] =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=9F=B9=E8=AE=AD?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E6=A0=B9=E6=8D=AE=E4=B8=8D=E5=90=8C=E7=9A=84?= =?UTF-8?q?=E4=BA=BA=E5=91=98=E5=B2=97=E4=BD=8D=E7=8A=B6=E6=80=81=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E4=B8=8D=E5=90=8C=E7=9A=84=E7=9B=AE=E6=A0=87=E7=8A=B6?= =?UTF-8?q?=E6=80=81=EF=BC=8C=E4=BA=BA=E5=91=98=E5=B2=97=E4=BD=8D=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E8=BD=AC=E5=B2=97=E5=8A=9F=E8=83=BD=E5=92=8C=E7=A6=BB?= =?UTF-8?q?=E8=81=8C=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/PostHandleEntity.java | 4 +- .../pojo/enums/PostHandleStatusEnum.java | 6 ++- .../controller/CultivateDetailController.java | 2 +- .../controller/PostHandleController.java | 21 ++++++++ .../controller/TrainingPlanController.java | 13 +++++ .../service/ICultivateDetailService.java | 8 +++ .../service/IPostHandleService.java | 16 ++++++ .../impl/CultivateDetailServiceImpl.java | 38 ++++++++++++++ .../service/impl/PostHandleServiceImpl.java | 51 ++++++++++++++++++- 9 files changed, 152 insertions(+), 7 deletions(-) diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java index 31355182..3f7a2a59 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/entity/PostHandleEntity.java @@ -137,9 +137,9 @@ public class PostHandleEntity extends BaseEntity { @Schema(description = "转岗时间") private Date toNewJob; /** - * 1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格 + * 1实习-培训中,2转岗中,3正常,4下岗中,5离职,6转岗培训合格,7下岗培训合格,8实习培训合格,9培训不合格 */ - @Schema(description = "1实习-培训中,2转岗中,3正常,4下岗中,5离职,6培训合格,7培训不合格") + @Schema(description = "1实习-培训中,2转岗中,3正常,4下岗中,5离职,6转岗培训合格,7下岗培训合格,8实习培训合格,9培训不合格") private Short phStatus; } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java index d1fefcda..4ba3b663 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/enums/PostHandleStatusEnum.java @@ -26,8 +26,10 @@ public enum PostHandleStatusEnum { NORMALITY("正常", 3), LAID_OFF("下岗中", 4), DEPART("离职", 5), - TRAINED("培训合格", 6), - UNQUALIFIED("培训不合格", 7), + JOB_TRANSFER_TRAINED("转岗培训合格", 6), + LAID_OFF_TRAINED("下岗培训合格", 7), + IN_PRACTICE_TRAINED("实习培训合格", 8), + UNQUALIFIED("培训不合格", 9), ; final String name; final Integer code; diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java index fea2e567..604580a3 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/CultivateDetailController.java @@ -191,7 +191,7 @@ public class CultivateDetailController extends BladeController { cultivateDetail.setCaStatus(TrainingStatusEnum.OK_TRAINED.getCode().shortValue()); cultivateDetail.setFinishTime(new Date()); } - return R.status(cultivateDetailService.saveOrUpdateBatch(cultivateDetails)); + return cultivateDetailService.trainingCompleted(cultivateDetails); } @PostConstruct // 项目启动后立即执行一次 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java index a6810c52..cef1dd1e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/PostHandleController.java @@ -225,4 +225,25 @@ public class PostHandleController extends BladeController { return postHandleService.saveExcelData(importList); } + + /** + * 转岗 + */ + @PostMapping("/jobTransfer") + @ApiOperationSupport(order = 13) + @Operation(summary = "转岗", description = "传入postHandle") + public R jobTransfer(@Valid @RequestBody PostHandleEntity postHandle) { + return postHandleService.jobTransfer(postHandle); + } + + /** + * 离职 + */ + @PostMapping("/depart") + @ApiOperationSupport(order = 14) + @Operation(summary = "离职", description = "传入postHandle") + public R depart(@Valid @RequestBody PostHandleEntity postHandle) { + return postHandleService.depart(postHandle); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java index f991c161..dd6276a0 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/TrainingPlanController.java @@ -16,6 +16,8 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.enums.TrainingStatusEnum; import org.springblade.desk.jobTransfer.pojo.excel.TrainingPlanExcel; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -29,6 +31,7 @@ import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.constant.BladeConstant; +import java.util.Date; import java.util.Map; import java.util.List; @@ -113,6 +116,16 @@ public class TrainingPlanController extends BladeController { return R.status(trainingPlanService.deleteLogic(Func.toLongList(ids))); } + /** + * 批量增改 + */ + @PostMapping("/submit-list") + @ApiOperationSupport(order = 8) + @Operation(summary = "批量增改", description = "传入trainingPlanEntities") + public R issued(@Valid @RequestBody List trainingPlanEntities) { + return R.status(trainingPlanService.saveOrUpdateBatch(trainingPlanEntities)); + } + /** * 导出数据 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java index 9a558f5a..febffdc1 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/ICultivateDetailService.java @@ -1,6 +1,7 @@ package org.springblade.desk.jobTransfer.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.springblade.core.tool.api.R; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; @@ -35,6 +36,13 @@ public interface ICultivateDetailService extends BaseService exportCultivateDetail(Wrapper queryWrapper); + /** + * 批量培训完成 + * + * @param cultivateDetails + * @return + */ + R trainingCompleted(List cultivateDetails); /** * 培训超期 */ diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java index 05d9052b..45045850 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IPostHandleService.java @@ -82,4 +82,20 @@ public interface IPostHandleService extends BaseService { * @return */ R saveExcelData(List postHandleEntityList); + + /** + * 转岗 + * + * @param postHandleEntity + * @return + */ + R jobTransfer(PostHandleEntity postHandleEntity); + + /** + * 离职 + * + * @param postHandleEntity + * @return + */ + R depart(PostHandleEntity postHandleEntity); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java index e66d9306..5d5abe4f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java @@ -1,17 +1,27 @@ package org.springblade.desk.jobTransfer.service.impl; +import jakarta.annotation.Resource; +import org.springblade.core.tool.api.R; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; +import org.springblade.desk.jobTransfer.pojo.enums.PostHandleStatusEnum; import org.springblade.desk.jobTransfer.pojo.excel.CultivateDetailExcel; import org.springblade.desk.jobTransfer.pojo.request.CultivateDetailQuery; import org.springblade.desk.jobTransfer.pojo.vo.CultivateDetailVO; import org.springblade.desk.jobTransfer.mapper.CultivateDetailMapper; import org.springblade.desk.jobTransfer.service.ICultivateDetailService; +import org.springblade.desk.jobTransfer.service.IPostHandleService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * 培训安排 服务实现类 @@ -22,6 +32,9 @@ import java.util.List; @Service public class CultivateDetailServiceImpl extends BaseServiceImpl implements ICultivateDetailService { + @Resource + private IPostHandleService postHandleService; + @Override public IPage selectCultivateDetailPage(IPage page, CultivateDetailQuery cultivateDetailQuery) { return page.setRecords(baseMapper.selectCultivateDetailPage(page, cultivateDetailQuery)); @@ -37,6 +50,31 @@ public class CultivateDetailServiceImpl extends BaseServiceImpl cultivateDetails) { + //1.批量修改培训计划状态 + boolean saved = this.saveOrUpdateBatch(cultivateDetails); + if (!saved) { + return R.fail("批量操作失败"); + } + //2.批量修改人员岗位表数据 + Set phIds = cultivateDetails.stream().map(CultivateDetailEntity::getPhId).collect(Collectors.toSet()); + boolean updateSuccess = postHandleService.lambdaUpdate() + .in(PostHandleEntity::getId, phIds) + // 根据不同的原始状态设置不同的目标状态 + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.JOB_TRANSFER.getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.JOB_TRANSFER_TRAINED.getCode()) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.LAID_OFF.getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.LAID_OFF_TRAINED.getCode()) + .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.IN_PRACTICE.getCode()) + .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.IN_PRACTICE_TRAINED.getCode()) + // 统一设置更新时间 + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + return R.status(updateSuccess); + } + @Override public void exceed() { baseMapper.exceed(); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index 9e5b6894..3c3f59d7 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -3,7 +3,9 @@ package org.springblade.desk.jobTransfer.service.impl; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import jakarta.annotation.Resource; import org.springblade.core.tool.api.R; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.entity.CultivateDetailEntity; +import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.entity.PostHandleEntity; import org.springblade.desk.jobTransfer.pojo.enums.*; import org.springblade.desk.jobTransfer.pojo.excel.PostHandleExcel; @@ -11,7 +13,9 @@ import org.springblade.desk.jobTransfer.pojo.excel.PostHandleImport; import org.springblade.desk.jobTransfer.pojo.request.PostHandleQuery; import org.springblade.desk.jobTransfer.pojo.vo.PostHandleVO; import org.springblade.desk.jobTransfer.mapper.PostHandleMapper; +import org.springblade.desk.jobTransfer.service.ICertificateMaintenanceService; import org.springblade.desk.jobTransfer.service.ICultivateDetailService; +import org.springblade.desk.jobTransfer.service.IEquipmentMaintenanceService; import org.springblade.desk.jobTransfer.service.IPostHandleService; import org.springblade.system.cache.SysCache; import org.springblade.system.cache.UserCache; @@ -40,6 +44,12 @@ public class PostHandleServiceImpl extends BaseServiceImpl selectPostHandlePage(IPage page, PostHandleQuery postHandleQuery) { // return page.setRecords(baseMapper.selectPostHandlePage(page, postHandle)); @@ -63,12 +73,12 @@ public class PostHandleServiceImpl extends BaseServiceImpl Date: Tue, 13 Jan 2026 11:09:47 +0800 Subject: [PATCH 18/20] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E6=A3=80=E7=B4=A2=EF=BC=9A=E5=B7=A5=E4=BD=9C=E4=B8=AD=E5=BF=83?= =?UTF-8?q?ID,=E8=AE=BE=E5=A4=87=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/service/impl/EquipmentServiceImpl.java | 5 +++-- .../controller/EquipmentMaintenanceController.java | 11 +++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/impl/EquipmentServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/impl/EquipmentServiceImpl.java index c313820f..743691a2 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/impl/EquipmentServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/service/impl/EquipmentServiceImpl.java @@ -63,9 +63,10 @@ public class EquipmentServiceImpl extends BaseServiceImpl> page(EquipmentMaintenanceVO equipmentMaintenance, Query query) { IPage pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenance); From 6dce523566b9da5a6515fd2333905456c348220c Mon Sep 17 00:00:00 2001 From: qinyulong Date: Tue, 13 Jan 2026 11:10:23 +0800 Subject: [PATCH 19/20] =?UTF-8?q?=E5=BE=AA=E7=8E=AF=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CultivateDetailServiceImpl.java | 22 ++++++++++++++----- .../service/impl/PostHandleServiceImpl.java | 22 ++++++++++++------- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java index 5d5abe4f..4f7ad9d1 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/CultivateDetailServiceImpl.java @@ -12,6 +12,7 @@ import org.springblade.desk.jobTransfer.mapper.CultivateDetailMapper; import org.springblade.desk.jobTransfer.service.ICultivateDetailService; import org.springblade.desk.jobTransfer.service.IPostHandleService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -32,9 +33,14 @@ import java.util.stream.Collectors; @Service public class CultivateDetailServiceImpl extends BaseServiceImpl implements ICultivateDetailService { - @Resource private IPostHandleService postHandleService; + @Resource + @Lazy + public void setPostHandleService(IPostHandleService postHandleService) { + this.postHandleService = postHandleService; + } + @Override public IPage selectCultivateDetailPage(IPage page, CultivateDetailQuery cultivateDetailQuery) { return page.setRecords(baseMapper.selectCultivateDetailPage(page, cultivateDetailQuery)); @@ -60,19 +66,25 @@ public class CultivateDetailServiceImpl extends BaseServiceImpl phIds = cultivateDetails.stream().map(CultivateDetailEntity::getPhId).collect(Collectors.toSet()); - boolean updateSuccess = postHandleService.lambdaUpdate() + boolean update1 = postHandleService.lambdaUpdate() .in(PostHandleEntity::getId, phIds) - // 根据不同的原始状态设置不同的目标状态 .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.JOB_TRANSFER.getCode()) .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.JOB_TRANSFER_TRAINED.getCode()) + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + boolean update2 = postHandleService.lambdaUpdate() + .in(PostHandleEntity::getId, phIds) .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.LAID_OFF.getCode()) .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.LAID_OFF_TRAINED.getCode()) + .set(PostHandleEntity::getUpdateTime, new Date()) + .update(); + boolean update3 = postHandleService.lambdaUpdate() + .in(PostHandleEntity::getId, phIds) .eq(PostHandleEntity::getPhStatus, PostHandleStatusEnum.IN_PRACTICE.getCode()) .set(PostHandleEntity::getPhStatus, PostHandleStatusEnum.IN_PRACTICE_TRAINED.getCode()) - // 统一设置更新时间 .set(PostHandleEntity::getUpdateTime, new Date()) .update(); - return R.status(updateSuccess); + return R.status(saved); } @Override diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java index 3c3f59d7..40316691 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/PostHandleServiceImpl.java @@ -41,14 +41,24 @@ import java.util.stream.Collectors; @Service public class PostHandleServiceImpl extends BaseServiceImpl implements IPostHandleService { - @Resource private ICultivateDetailService iCultivateDetailService; + private ICertificateMaintenanceService certificateMaintenanceService; + private IEquipmentMaintenanceService equipmentMaintenanceService; @Resource - private ICertificateMaintenanceService certificateMaintenanceService; + public void setICultivateDetailService(ICultivateDetailService iCultivateDetailService) { + this.iCultivateDetailService = iCultivateDetailService; + } @Resource - private IEquipmentMaintenanceService equipmentMaintenanceService; + public void setCertificateMaintenanceService(ICertificateMaintenanceService certificateMaintenanceService) { + this.certificateMaintenanceService = certificateMaintenanceService; + } + + @Resource + public void setEquipmentMaintenanceService(IEquipmentMaintenanceService equipmentMaintenanceService) { + this.equipmentMaintenanceService = equipmentMaintenanceService; + } @Override public IPage selectPostHandlePage(IPage page, PostHandleQuery postHandleQuery) { @@ -271,11 +281,7 @@ public class PostHandleServiceImpl extends BaseServiceImpl Date: Tue, 13 Jan 2026 14:03:44 +0800 Subject: [PATCH 20/20] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E7=BB=B4=E6=8A=A4?= =?UTF-8?q?=E6=A3=80=E7=B4=A2+=E8=AE=BE=E5=A4=87=E7=BB=B4=E6=8A=A4?= =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=A2=9E=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../request/EquipmentMaintenanceQuery.java | 42 ++++++ .../pojo/vo/CertificateMaintenanceVO.java | 3 - .../pojo/vo/EquipmentMaintenanceListVO.java | 21 +++ .../pojo/vo/EquipmentMaintenanceVO.java | 32 +++++ .../EquipmentMaintenanceController.java | 18 ++- .../mapper/CertificateMaintenanceMapper.xml | 5 +- .../mapper/EquipmentMaintenanceMapper.java | 7 +- .../mapper/EquipmentMaintenanceMapper.xml | 126 +++++++++++++++++- .../service/IEquipmentMaintenanceService.java | 9 +- .../impl/EquipmentMaintenanceServiceImpl.java | 14 +- 10 files changed, 259 insertions(+), 18 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/EquipmentMaintenanceQuery.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceListVO.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/EquipmentMaintenanceQuery.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/EquipmentMaintenanceQuery.java new file mode 100644 index 00000000..1a6e9b01 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/request/EquipmentMaintenanceQuery.java @@ -0,0 +1,42 @@ +package org.springblade.desk.jobTransfer.pojo.request; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * 设备维护管理检索请求入参 + */ +@Data +public class EquipmentMaintenanceQuery { + /** + * 姓名 + */ + @Schema(description = "姓名") + private String name; + /** + * 所属班组 + */ + @Schema(description = "所属班组") + private Long deptId; + + /** + * 所属岗位 + */ + @Schema(description = "所属岗位") + private String station; + /** + * 技能等级 + */ + @Schema(description = "技能等级") + private Short skill; + /** + * 证书类型 + */ + @Schema(description = "设备ID") + private Long equipmentId; + /** + * 维护状态(1正常,2到期,3离职) + */ + @Schema(description = "维护状态(1正常,2到期,3离职)") + private Short maintenanceStatus; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java index 1c6e9ebf..7d2ba0fe 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/CertificateMaintenanceVO.java @@ -51,7 +51,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity { //得到结算后的结果 yyyy-MM-dd HH:mm Date date = cal.getTime(); cal.setTime(date); - cal.add(Calendar.MONTH, -1); return cal.getTime(); } else { return null; @@ -68,7 +67,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity { //得到结算后的结果 yyyy-MM-dd HH:mm Date date = cal.getTime(); cal.setTime(date); - cal.add(Calendar.MONTH, -1); return cal.getTime(); } else { return null; @@ -84,7 +82,6 @@ public class CertificateMaintenanceVO extends CertificateMaintenanceEntity { //得到结算后的结果 yyyy-MM-dd HH:mm Date date = cal.getTime(); cal.setTime(date); - cal.add(Calendar.MONTH, -1); return cal.getTime(); } else { return null; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceListVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceListVO.java new file mode 100644 index 00000000..2eda7eea --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceListVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.jobTransfer.pojo.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.List; + +/** + * 岗位证书台账VO + */ +@Data +public class EquipmentMaintenanceListVO { + + //人员岗位数据 + @Schema(description = "人员岗位数据") + private PostHandleVO postHandleVO; + + //设备维护数据集合 + @Schema(description = "设备维护数据集合") + private List equipmentMaintenanceVOList; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java index bed9c1d3..2c09c1c8 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/jobTransfer/pojo/vo/EquipmentMaintenanceVO.java @@ -1,10 +1,13 @@ package org.springblade.desk.jobTransfer.pojo.vo; +import io.swagger.v3.oas.annotations.media.Schema; import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serial; +import java.util.Calendar; +import java.util.Date; /** * 岗位设备维护 视图实体类 @@ -17,5 +20,34 @@ import java.io.Serial; public class EquipmentMaintenanceVO extends EquipmentMaintenanceEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 设备名称 + */ + @Schema(description = "设备名称") + private String deviceName; + /** + * 设备编号 + */ + @Schema(description = "设备编号") + private String deviceCode; + /** + * 规格型号 + */ + @Schema(description = "规格型号") + private String macSpec; + // 到期日期 + public Date getValidityPeriodExpire() { + if (this.getEquipmentDate() != null && this.getEquipmentValidityPeriod() != null) { + Calendar cal = Calendar.getInstance(); + cal.setTime(this.getEquipmentDate()); + cal.add(Calendar.YEAR, Integer.valueOf(this.getEquipmentValidityPeriod().toString())); + //得到结算后的结果 yyyy-MM-dd HH:mm + Date date = cal.getTime(); + cal.setTime(date); + return cal.getTime(); + } else { + return null; + } + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java index c88ffe44..d38f03a2 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/controller/EquipmentMaintenanceController.java @@ -16,7 +16,10 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; +import org.springblade.desk.jobTransfer.pojo.entity.CertificateMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -72,9 +75,9 @@ public class EquipmentMaintenanceController extends BladeController { @Parameter(name = "equipmentId", description = "设备", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), @Parameter(name = "maintenanceStatus", description = "状态", in = ParameterIn.QUERY, schema = @Schema(type = "integer")), }) - @Operation(summary = "分页", description = "传入equipmentMaintenance") - public R> page(EquipmentMaintenanceVO equipmentMaintenance, Query query) { - IPage pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenance); + @Operation(summary = "分页", description = "传入equipmentMaintenanceQuery") + public R> page(EquipmentMaintenanceQuery equipmentMaintenanceQuery, Query query) { + IPage pages = equipmentMaintenanceService.selectEquipmentMaintenancePage(Condition.getPage(query), equipmentMaintenanceQuery); return R.data(pages); } @@ -119,6 +122,15 @@ public class EquipmentMaintenanceController extends BladeController { } + /** + * 批量新增或修改 + */ + @PostMapping("/submit-list") + @ApiOperationSupport(order = 8) + @Operation(summary = "批量新增或修改", description = "") + public R submitList(@Valid @RequestBody List equipmentMaintenanceEntities) { + return R.status(equipmentMaintenanceService.submitList(equipmentMaintenanceEntities)); + } /** * 导出数据 */ diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml index 0846f923..0a90ab1a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/CertificateMaintenanceMapper.xml @@ -139,6 +139,9 @@ AND ph.station = #{query.station} + + AND ph.skill = #{query.skill} + AND cm.certificate_id = #{query.certificateId} @@ -189,6 +192,6 @@ ELSE 1 END ELSE 1 END, - m.UPDATE_TIME = SYSDATE + m.UPDATE_TIME = SYSDATE WHERE m.MAINTENANCE_STATUS != 3 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java index 4ddfdc24..845dfd8f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.java @@ -2,6 +2,8 @@ package org.springblade.desk.jobTransfer.mapper; import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO; import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -22,10 +24,10 @@ public interface EquipmentMaintenanceMapper extends BaseMapper */ - List selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance); + List selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceQuery query); /** @@ -36,4 +38,5 @@ public interface EquipmentMaintenanceMapper extends BaseMapper exportEquipmentMaintenance(@Param("ew") Wrapper queryWrapper); + void updateMaintenanceStatus(); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml index 70a669dc..8a233930 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/mapper/EquipmentMaintenanceMapper.xml @@ -20,12 +20,119 @@ + + + + + - + SELECT + ph.ID as ph_id, + ph.*, + bd.DEPT_NAME as DEPT_NAME, + em.id as em_id, + em.ph_id as em_ph_id, + em.equipment_id, + em.equipment_validity_period, + em.equipment_date, + em.maintenance_status, + equipment.device_name, + equipment.device_code, + equipment.mac_spec + FROM MES_POST_HANDLE ph + LEFT JOIN BLADE_USER bu ON ph.USER_ID = bu.ID + LEFT JOIN BLADE_DEPT bd ON ph.DEPT_ID = bd.ID + LEFT JOIN MES_EQUIPMENT_MAINTENANCE em ON ph.id = em.ph_id AND em.is_deleted = 0 + LEFT JOIN MES_EQUIPMENT equipment ON em.equipment_id = equipment.id AND equipment.is_deleted = 0 + WHERE ph.is_deleted = 0 + + AND ph.name LIKE CONCAT(CONCAT('%', #{query.name}), '%') + + + AND ph.dept_id = #{query.deptId} + + + AND ph.skill = #{query.skill} + + + AND ph.station = #{query.station} + + + AND em.equipment_id = #{query.equipmentId} + + + + + + AND em.maintenance_status = #{query.maintenanceStatus} + + ORDER BY ph.create_time DESC, em.equipment_date DESC @@ -35,4 +142,15 @@ FROM MES_EQUIPMENT_MAINTENANCE ${ew.customSqlSegment} + + UPDATE MES_EQUIPMENT_MAINTENANCE + SET MAINTENANCE_STATUS = CASE + WHEN EQUIPMENT_DATE + + NUMTOYMINTERVAL(EQUIPMENT_VALIDITY_PERIOD, 'YEAR') < SYSDATE + THEN 2 + ELSE 1 END, + UPDATE_TIME = SYSDATE + WHERE IS_DELETED = 0 + AND MAINTENANCE_STATUS != 3 + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java index ebac3f11..20a8a7ed 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/IEquipmentMaintenanceService.java @@ -3,7 +3,8 @@ package org.springblade.desk.jobTransfer.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; -import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; +import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; @@ -20,10 +21,10 @@ public interface IEquipmentMaintenanceService extends BaseService */ - IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance); + IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceQuery equipmentMaintenanceQuery); /** @@ -34,4 +35,6 @@ public interface IEquipmentMaintenanceService extends BaseService exportEquipmentMaintenance(Wrapper queryWrapper); + Boolean submitList(List equipmentMaintenanceEntities); + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java index dc38e5dc..8c48c7e5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/jobTransfer/service/impl/EquipmentMaintenanceServiceImpl.java @@ -2,6 +2,8 @@ package org.springblade.desk.jobTransfer.service.impl; import org.springblade.desk.jobTransfer.pojo.entity.EquipmentMaintenanceEntity; import org.springblade.desk.jobTransfer.pojo.excel.EquipmentMaintenanceExcel; +import org.springblade.desk.jobTransfer.pojo.request.EquipmentMaintenanceQuery; +import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceListVO; import org.springblade.desk.jobTransfer.pojo.vo.EquipmentMaintenanceVO; import org.springblade.desk.jobTransfer.mapper.EquipmentMaintenanceMapper; import org.springblade.desk.jobTransfer.service.IEquipmentMaintenanceService; @@ -22,8 +24,8 @@ import java.util.List; public class EquipmentMaintenanceServiceImpl extends BaseServiceImpl implements IEquipmentMaintenanceService { @Override - public IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceVO equipmentMaintenance) { - return page.setRecords(baseMapper.selectEquipmentMaintenancePage(page, equipmentMaintenance)); + public IPage selectEquipmentMaintenancePage(IPage page, EquipmentMaintenanceQuery equipmentMaintenanceQuery) { + return page.setRecords(baseMapper.selectEquipmentMaintenancePage(page, equipmentMaintenanceQuery)); } @@ -36,4 +38,12 @@ public class EquipmentMaintenanceServiceImpl extends BaseServiceImpl equipmentMaintenanceEntities) { + boolean saved = this.saveOrUpdateBatch(equipmentMaintenanceEntities); + //更新状态 + baseMapper.updateMaintenanceStatus(); + return saved; + } + }