From 99b88d79117d7a2fda5561d7e46a4ab030363d95 Mon Sep 17 00:00:00 2001 From: sugy <455459989@qq.com> Date: Thu, 5 Feb 2026 18:23:53 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=AE=A1=E7=90=86-=E8=BD=A6?= =?UTF-8?q?=E9=97=B4=E5=B7=A5=E4=BD=9C=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ModelPrototypeServiceImpl.java | 1 - .../pojo/dto/MesRbFilePreserveDetailDTO.java | 46 ++++++++ .../pojo/dto/MesRbFilePreserveSlotDTO.java | 21 ++++ .../produce/pojo/dto/RetrospectDefendDTO.java | 20 ++++ .../entity/MesRbFilePreserveDetailEntity.java | 69 +++++++++++ .../entity/MesRbFilePreserveSlotEntity.java | 64 ++++++++++ .../pojo/vo/MesRbFilePreserveDetailVO.java | 46 ++++++++ .../pojo/vo/MesRbFilePreserveSlotVO.java | 21 ++++ .../MesRbFilePreserveDetailController.java | 108 +++++++++++++++++ .../MesRbFilePreserveSlotController.java | 110 ++++++++++++++++++ .../produce/controller/PdaLoadController.java | 13 +++ .../controller/PrMakeRecController.java | 21 ++-- .../mapper/MesRbFilePreserveDetailMapper.java | 30 +++++ .../mapper/MesRbFilePreserveSlotMapper.java | 28 +++++ .../mapper/RbFilePreserveDetailMapper.xml | 30 +++++ .../mapper/RbFilePreserveSlotMapper.xml | 29 +++++ .../desk/produce/mapper/WorkPlanMapper.java | 1 + .../desk/produce/mapper/WorkPlanMapper.xml | 16 +++ .../desk/produce/service/IMakeRecService.java | 9 ++ .../IMesRbFilePreserveDetailService.java | 24 ++++ .../IMesRbFilePreserveSlotService.java | 27 +++++ .../desk/produce/service/IPdaLoadService.java | 4 + .../service/impl/MakeRecServiceImpl.java | 69 +++++++++++ .../MesRbFilePreserveDetailServiceImpl.java | 26 +++++ .../MesRbFilePreserveSlotServiceImpl.java | 29 +++++ .../service/impl/PdaLoadServiceImpl.java | 26 +++++ .../MesRbFilePreserveDetailWrapper.java | 35 ++++++ .../wrapper/MesRbFilePreserveSlotWrapper.java | 35 ++++++ 28 files changed, 949 insertions(+), 9 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/MesRbFilePreserveDetailDTO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/MesRbFilePreserveSlotDTO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/RetrospectDefendDTO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveDetailEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveSlotEntity.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveDetailVO.java create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveSlotVO.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveDetailController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveSlotController.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveDetailMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveSlotMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveDetailMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveSlotMapper.xml create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveDetailService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveSlotService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveDetailServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveSlotServiceImpl.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveDetailWrapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveSlotWrapper.java diff --git a/blade-ops/blade-develop/src/main/java/org/springblade/develop/service/impl/ModelPrototypeServiceImpl.java b/blade-ops/blade-develop/src/main/java/org/springblade/develop/service/impl/ModelPrototypeServiceImpl.java index de909256..5f5cac18 100644 --- a/blade-ops/blade-develop/src/main/java/org/springblade/develop/service/impl/ModelPrototypeServiceImpl.java +++ b/blade-ops/blade-develop/src/main/java/org/springblade/develop/service/impl/ModelPrototypeServiceImpl.java @@ -103,7 +103,6 @@ public class ModelPrototypeServiceImpl extends BaseServiceImpl + * 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.produce.pojo.dto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; + +import java.io.Serial; + +/** + * 热表电子档案维护-明细 数据传输对象实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveDetailDTO extends MesRbFilePreserveDetailEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/MesRbFilePreserveSlotDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/MesRbFilePreserveSlotDTO.java new file mode 100644 index 00000000..39308a0b --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/MesRbFilePreserveSlotDTO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.produce.pojo.dto; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; + +import java.io.Serial; + +/** + * 热表电子档案维护-槽子明细 数据传输对象实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveSlotDTO extends MesRbFilePreserveSlotEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/RetrospectDefendDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/RetrospectDefendDTO.java new file mode 100644 index 00000000..4a33612f --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/RetrospectDefendDTO.java @@ -0,0 +1,20 @@ +package org.springblade.desk.produce.pojo.dto; + +import lombok.Data; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; + +import java.util.List; + +@Data +public class RetrospectDefendDTO { + + private Long ecId; + + private Long rfpId; + + private List wpIdList; + + private Boolean line; + + private List preserveSlotList; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveDetailEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveDetailEntity.java new file mode 100644 index 00000000..54aba47f --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveDetailEntity.java @@ -0,0 +1,69 @@ +package org.springblade.desk.produce.pojo.entity; + +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.math.BigDecimal; +import java.util.Date; + +/** + * 热表电子档案维护-明细 实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@TableName("MES_RB_FILE_PRESERVE_DETAIL") +@Schema(description = "MesRbFilePreserveDetail对象") +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveDetailEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 热表电子档案维护-槽子明细 + */ + @Schema(description = "热表电子档案维护-槽子明细") + private BigDecimal rfpsId; + /** + * 明细名称 + */ + @Schema(description = "明细名称") + private String detailName; + /** + * 明细序号 + */ + @Schema(description = "明细序号") + private String detailIndex; + /** + * 工艺要求 + */ + @Schema(description = "工艺要求") + private String ask; + /** + * 时间 + */ + @Schema(description = "时间") + private Date rfpdTime; + /** + * 是否合格 + */ + @Schema(description = "是否合格") + private BigDecimal qualified; + /** + * 参数名称 + */ + @Schema(description = "参数名称") + private String paramName; + /** + * 参数值 + */ + @Schema(description = "参数值") + private String paramValue; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveSlotEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveSlotEntity.java new file mode 100644 index 00000000..c2458208 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/MesRbFilePreserveSlotEntity.java @@ -0,0 +1,64 @@ +package org.springblade.desk.produce.pojo.entity; + +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.math.BigDecimal; +import java.util.Date; + +/** + * 热表电子档案维护-槽子明细 实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@TableName("MES_RB_FILE_PRESERVE_SLOT") +@Schema(description = "MesRbFilePreserveSlot对象") +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveSlotEntity extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 热表电子档案维护 + */ + @Schema(description = "热表电子档案维护") + private BigDecimal rfpId; + /** + * 槽号名称 + */ + @Schema(description = "槽号名称") + private String slotName; + /** + * 槽号序号 + */ + @Schema(description = "槽号序号") + private String slotIndex; + /** + * 插入序号 + */ + @Schema(description = "插入序号") + private String insertIndex; + /** + * 模板类型 + */ + @Schema(description = "模板类型") + private String rfpsType; + /** + * 维护时间 + */ + @Schema(description = "维护时间") + private Date keepTime; + /** + * 维护人 + */ + @Schema(description = "维护人") + private String keepMan; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveDetailVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveDetailVO.java new file mode 100644 index 00000000..5bc2bae2 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveDetailVO.java @@ -0,0 +1,46 @@ +/** + * 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.produce.pojo.vo; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; + +import java.io.Serial; + +/** + * 热表电子档案维护-明细 视图实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveDetailVO extends MesRbFilePreserveDetailEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveSlotVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveSlotVO.java new file mode 100644 index 00000000..e4dfa9d8 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/MesRbFilePreserveSlotVO.java @@ -0,0 +1,21 @@ +package org.springblade.desk.produce.pojo.vo; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; + +import java.io.Serial; + +/** + * 热表电子档案维护-槽子明细 视图实体类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MesRbFilePreserveSlotVO extends MesRbFilePreserveSlotEntity { + @Serial + private static final long serialVersionUID = 1L; + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveDetailController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveDetailController.java new file mode 100644 index 00000000..e4ba63ba --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveDetailController.java @@ -0,0 +1,108 @@ +package org.springblade.desk.produce.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +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.produce.pojo.entity.MesRbFilePreserveDetailEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveDetailVO; +import org.springblade.desk.produce.service.IMesRbFilePreserveDetailService; +import org.springblade.desk.produce.wrapper.MesRbFilePreserveDetailWrapper; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + * 热表电子档案维护-明细 控制器 + * + * @author BladeX + * @since 2026-02-05 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/mesRbFilePreserveDetail") +@Tag(name = "热表电子档案维护-明细", description = "热表电子档案维护-明细接口") +public class MesRbFilePreserveDetailController extends BladeController { + + private final IMesRbFilePreserveDetailService mesRbFilePreserveDetailService; + + /** + * 热表电子档案维护-明细 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入mesRbFilePreserveDetail") + public R detail(MesRbFilePreserveDetailEntity mesRbFilePreserveDetail) { + MesRbFilePreserveDetailEntity detail = mesRbFilePreserveDetailService.getOne(Condition.getQueryWrapper(mesRbFilePreserveDetail)); + return R.data(MesRbFilePreserveDetailWrapper.build().entityVO(detail)); + } + /** + * 热表电子档案维护-明细 分页 + */ + @GetMapping("/list") + @ApiOperationSupport(order = 2) + @Operation(summary = "分页", description = "传入mesRbFilePreserveDetail") + public R> list(@Parameter(hidden = true) @RequestParam Map mesRbFilePreserveDetail, Query query) { + IPage pages = mesRbFilePreserveDetailService.page(Condition.getPage(query), Condition.getQueryWrapper(mesRbFilePreserveDetail, MesRbFilePreserveDetailEntity.class)); + return R.data(MesRbFilePreserveDetailWrapper.build().pageVO(pages)); + } + + /** + * 热表电子档案维护-明细 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入mesRbFilePreserveDetail") + public R> page(MesRbFilePreserveDetailVO mesRbFilePreserveDetail, Query query) { + IPage pages = mesRbFilePreserveDetailService.selectMesRbFilePreserveDetailPage(Condition.getPage(query), mesRbFilePreserveDetail); + return R.data(pages); + } + + /** + * 热表电子档案维护-明细 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入mesRbFilePreserveDetail") + public R save(@Valid @RequestBody MesRbFilePreserveDetailEntity mesRbFilePreserveDetail) { + return R.status(mesRbFilePreserveDetailService.save(mesRbFilePreserveDetail)); + } + + /** + * 热表电子档案维护-明细 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入mesRbFilePreserveDetail") + public R update(@Valid @RequestBody MesRbFilePreserveDetailEntity mesRbFilePreserveDetail) { + return R.status(mesRbFilePreserveDetailService.updateById(mesRbFilePreserveDetail)); + } + + /** + * 热表电子档案维护-明细 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入mesRbFilePreserveDetail") + public R submit(@Valid @RequestBody MesRbFilePreserveDetailEntity mesRbFilePreserveDetail) { + return R.status(mesRbFilePreserveDetailService.saveOrUpdate(mesRbFilePreserveDetail)); + } + + /** + * 热表电子档案维护-明细 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(mesRbFilePreserveDetailService.deleteLogic(Func.toLongList(ids))); + } +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveSlotController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveSlotController.java new file mode 100644 index 00000000..225c5055 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/MesRbFilePreserveSlotController.java @@ -0,0 +1,110 @@ +package org.springblade.desk.produce.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +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.produce.pojo.entity.MesRbFilePreserveSlotEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveSlotVO; +import org.springblade.desk.produce.service.IMesRbFilePreserveSlotService; +import org.springblade.desk.produce.wrapper.MesRbFilePreserveSlotWrapper; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + * 热表电子档案维护-槽子明细 控制器 + * + * @author BladeX + * @since 2026-02-05 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/mesRbFilePreserveSlot") +@Tag(name = "热表电子档案维护-槽子明细", description = "热表电子档案维护-槽子明细接口") +public class MesRbFilePreserveSlotController extends BladeController { + + private final IMesRbFilePreserveSlotService mesRbFilePreserveSlotService; + + /** + * 热表电子档案维护-槽子明细 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入mesRbFilePreserveSlot") + public R detail(MesRbFilePreserveSlotEntity mesRbFilePreserveSlot) { + MesRbFilePreserveSlotEntity detail = mesRbFilePreserveSlotService.getOne(Condition.getQueryWrapper(mesRbFilePreserveSlot)); + return R.data(MesRbFilePreserveSlotWrapper.build().entityVO(detail)); + } + /** + * 热表电子档案维护-槽子明细 分页 + */ + @GetMapping("/list") + @ApiOperationSupport(order = 2) + @Operation(summary = "分页", description = "传入mesRbFilePreserveSlot") + public R> list(@Parameter(hidden = true) @RequestParam Map mesRbFilePreserveSlot, Query query) { + IPage pages = mesRbFilePreserveSlotService.page(Condition.getPage(query), Condition.getQueryWrapper(mesRbFilePreserveSlot, MesRbFilePreserveSlotEntity.class)); + return R.data(MesRbFilePreserveSlotWrapper.build().pageVO(pages)); + } + + /** + * 热表电子档案维护-槽子明细 自定义分页 + */ + @GetMapping("/page") + @ApiOperationSupport(order = 3) + @Operation(summary = "分页", description = "传入mesRbFilePreserveSlot") + public R> page(MesRbFilePreserveSlotVO mesRbFilePreserveSlot, Query query) { + IPage pages = mesRbFilePreserveSlotService.selectMesRbFilePreserveSlotPage(Condition.getPage(query), mesRbFilePreserveSlot); + return R.data(pages); + } + + /** + * 热表电子档案维护-槽子明细 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 4) + @Operation(summary = "新增", description = "传入mesRbFilePreserveSlot") + public R save(@Valid @RequestBody MesRbFilePreserveSlotEntity mesRbFilePreserveSlot) { + return R.status(mesRbFilePreserveSlotService.save(mesRbFilePreserveSlot)); + } + + /** + * 热表电子档案维护-槽子明细 修改 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 5) + @Operation(summary = "修改", description = "传入mesRbFilePreserveSlot") + public R update(@Valid @RequestBody MesRbFilePreserveSlotEntity mesRbFilePreserveSlot) { + return R.status(mesRbFilePreserveSlotService.updateById(mesRbFilePreserveSlot)); + } + + /** + * 热表电子档案维护-槽子明细 新增或修改 + */ + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入mesRbFilePreserveSlot") + public R submit(@Valid @RequestBody MesRbFilePreserveSlotEntity mesRbFilePreserveSlot) { + return R.status(mesRbFilePreserveSlotService.saveOrUpdate(mesRbFilePreserveSlot)); + } + + /** + * 热表电子档案维护-槽子明细 删除 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "逻辑删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + return R.status(mesRbFilePreserveSlotService.deleteLogic(Func.toLongList(ids))); + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaLoadController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaLoadController.java index 9f73691a..fe6e2990 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaLoadController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaLoadController.java @@ -67,4 +67,17 @@ public class PdaLoadController { return R.data(pdaLoadService.loadProTestWorkPlan(cardNo)); } + @GetMapping(value = "/loadPrMacToolUseByMtnCode/{mtnCode}") + @ApiOperationSupport(order = 7) + @Operation(summary = "加载当前工序检验数据", description = "传入mtnCode") + public R loadPrMacToolUseByMtnCode(@PathVariable String mtnCode) { + return R.data(pdaLoadService.loadPrMacToolUseByMtnCode(mtnCode)); + } + @GetMapping(value = "/deletedProduceRun/{mtnCode}") + @ApiOperationSupport(order = 8) + @Operation(summary = "根据同槽号删除信息", description = "传入mtnCode") + public R deletedProduceRun(@PathVariable String mtnCode) { + pdaLoadService.deletedProduceRun(mtnCode); + return R.success(); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PrMakeRecController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PrMakeRecController.java index c5e25c2a..104adb04 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PrMakeRecController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PrMakeRecController.java @@ -8,14 +8,11 @@ import lombok.AllArgsConstructor; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; -import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.desk.produce.pojo.dto.MakeRecDTO; +import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO; import org.springblade.desk.produce.pojo.vo.MesMakeRecVO; -import org.springblade.desk.produce.pojo.vo.UnBingDeviceVo; -import org.springblade.desk.produce.pojo.vo.WorkPlanVO; import org.springblade.desk.produce.service.IMakeRecService; -import org.springblade.desk.produce.service.IWorkPlanService; import org.springframework.web.bind.annotation.*; /** @@ -44,10 +41,6 @@ public class PrMakeRecController extends BladeController { makeRecService.saveMakeRec(makeRecDTO); return R.success() ; } - - /** - * 加工记录 - */ @GetMapping("/queryMakeRec") @ApiOperationSupport(order = 3) @Operation(summary = "加工记录", description = "传入mesMakeRec") @@ -60,5 +53,17 @@ public class PrMakeRecController extends BladeController { public R loadNotReceived(@PathVariable String cardNo) { return R.data(makeRecService.loadNotReceived(cardNo)); } + @GetMapping(value = "/afterPlaReceive/{cardNo}") + @Operation(summary = "加载镀后接收数据", description = "传入cardNo") + public R afterPlaReceive(@PathVariable String cardNo) { + return R.data(makeRecService.afterPlaReceive(cardNo)); + } + + @Operation(summary = "手动维护生产追溯") + @PostMapping("/saveRetrospectDefend") + public R saveRetrospectDefend(@RequestBody RetrospectDefendDTO retrospectDefendDTO) { + makeRecService.saveRetrospectDefend(retrospectDefendDTO); + return R.success() ; + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveDetailMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveDetailMapper.java new file mode 100644 index 00000000..b0c38025 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveDetailMapper.java @@ -0,0 +1,30 @@ +package org.springblade.desk.produce.mapper; + +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 org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveDetailVO; + +import java.util.List; + +/** + * 热表电子档案维护-明细 Mapper 接口 + * + * @author BladeX + * @since 2026-02-05 + */ +public interface MesRbFilePreserveDetailMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param mesRbFilePreserveDetail 查询参数 + * @return List + */ + List selectMesRbFilePreserveDetailPage(IPage page, MesRbFilePreserveDetailVO mesRbFilePreserveDetail); + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveSlotMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveSlotMapper.java new file mode 100644 index 00000000..1fc24f0c --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/MesRbFilePreserveSlotMapper.java @@ -0,0 +1,28 @@ +package org.springblade.desk.produce.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveSlotVO; + +import java.util.List; + +/** + * 热表电子档案维护-槽子明细 Mapper 接口 + * + * @author BladeX + * @since 2026-02-05 + */ +public interface MesRbFilePreserveSlotMapper extends BaseMapper { + + /** + * 自定义分页 + * + * @param page 分页参数 + * @param mesRbFilePreserveSlot 查询参数 + * @return List + */ + List selectMesRbFilePreserveSlotPage(IPage page, MesRbFilePreserveSlotVO mesRbFilePreserveSlot); + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveDetailMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveDetailMapper.xml new file mode 100644 index 00000000..8b5274d8 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveDetailMapper.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveSlotMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveSlotMapper.xml new file mode 100644 index 00000000..08e4fc4e --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/RbFilePreserveSlotMapper.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.java index cb4e2c7a..a27a61ce 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.java @@ -24,4 +24,5 @@ public interface WorkPlanMapper extends BaseMapper { IPage queryWorkPlan(IPage page, String cardNo, List tsIds); + List loadPrMacToolUseByMtnCode(@Param("mtnCode") String mtnCode); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml index 4d99346c..63b85f2e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkPlanMapper.xml @@ -53,4 +53,20 @@ select * from MES_WORK_PLAN where is_deleted = 0 + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMakeRecService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMakeRecService.java index ed1539bc..43288a91 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMakeRecService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMakeRecService.java @@ -3,8 +3,10 @@ package org.springblade.desk.produce.service; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; import org.springblade.desk.produce.pojo.dto.MakeRecDTO; +import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO; import org.springblade.desk.produce.pojo.dto.WorkPlanDto; import org.springblade.desk.produce.pojo.entity.MakeRec; +import org.springblade.desk.produce.pojo.entity.WorkPlan; import org.springblade.desk.produce.pojo.vo.MesMakeRecVO; import org.springblade.desk.produce.pojo.vo.WorkPlanLoadVO; @@ -29,4 +31,11 @@ public interface IMakeRecService extends BaseService { IPage selectMesMakeRecPage(IPage page, MesMakeRecVO mesMakeRec); List loadNotReceived(String cardNo); + + List afterPlaReceive(String cardNo); + /** + * 手动维护生产追溯 + * @param retrospectDefendDTO + */ + void saveRetrospectDefend(RetrospectDefendDTO retrospectDefendDTO); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveDetailService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveDetailService.java new file mode 100644 index 00000000..b102f1f1 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveDetailService.java @@ -0,0 +1,24 @@ +package org.springblade.desk.produce.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveDetailVO; + +/** + * 热表电子档案维护-明细 服务类 + * + * @author BladeX + * @since 2026-02-05 + */ +public interface IMesRbFilePreserveDetailService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param mesRbFilePreserveDetail 查询参数 + * @return IPage + */ + IPage selectMesRbFilePreserveDetailPage(IPage page, MesRbFilePreserveDetailVO mesRbFilePreserveDetail); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveSlotService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveSlotService.java new file mode 100644 index 00000000..1c9861ba --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IMesRbFilePreserveSlotService.java @@ -0,0 +1,27 @@ +package org.springblade.desk.produce.service; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseService; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveSlotVO; + +import java.util.List; + +/** + * 热表电子档案维护-槽子明细 服务类 + * + * @author BladeX + * @since 2026-02-05 + */ +public interface IMesRbFilePreserveSlotService extends BaseService { + /** + * 自定义分页 + * + * @param page 分页参数 + * @param mesRbFilePreserveSlot 查询参数 + * @return IPage + */ + IPage selectMesRbFilePreserveSlotPage(IPage page, MesRbFilePreserveSlotVO mesRbFilePreserveSlot); + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaLoadService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaLoadService.java index 612eff44..4df91140 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaLoadService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaLoadService.java @@ -55,4 +55,8 @@ public interface IPdaLoadService extends BaseService { LoadSubOrderVO loadSubOrder(String cardNo); PdaProRelevantVO loadProTestWorkPlan(String cardNo); + + List loadPrMacToolUseByMtnCode(String mtnCode); + + void deletedProduceRun(String mtnCode); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MakeRecServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MakeRecServiceImpl.java index c07ec3cb..702b6d1d 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MakeRecServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MakeRecServiceImpl.java @@ -25,6 +25,7 @@ import org.springblade.desk.produce.mapper.MakeRecMapper; import org.springblade.desk.produce.mapper.WorkOrderMapper; import org.springblade.desk.produce.mapper.WorkPlanMapper; import org.springblade.desk.produce.pojo.dto.MakeRecDTO; +import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO; import org.springblade.desk.produce.pojo.dto.WorkPlanDto; import org.springblade.desk.produce.pojo.entity.*; import org.springblade.desk.produce.pojo.vo.MesMakeRecVO; @@ -71,6 +72,9 @@ public class MakeRecServiceImpl extends BaseServiceImpl private final IDsPartService partService; private final IRelTeamSetUserService relTeamSetUserService; + + private final IMesEquipmentCardService mesEquipmentCardService; + @Override public WorkPlanDto loadCurrentWp(String cardNo) { WorkOrder wo= workOrderMapper.getWorkOrderByCardNo(cardNo, (short) 0); @@ -297,4 +301,69 @@ public class MakeRecServiceImpl extends BaseServiceImpl }).collect(Collectors.toList()); return wpLoadList; } + + @Override + public List afterPlaReceive(String cardNo) { + WorkOrder wo = workOrderMapper.getWorkOrderByCardNo(cardNo, (short) 0); + List wpList= workPlanMapper.selectList(Wrappers.lambdaQuery() + .eq(WorkPlan::getWoId, wo.getId())); + return wpList; + } + + @Override + public void saveRetrospectDefend(RetrospectDefendDTO retrospectDefendDTO) { + WorkPlan prWorkPlan = null; + MesEquipmentCardEntity equipmentCard = mesEquipmentCardService.getById(retrospectDefendDTO.getEcId()); + MacToolUse prMacToolUse; + List produceRunList; + String code = macToolUseService.nextCode(2); + for (Long wpId : retrospectDefendDTO.getWpIdList()) { + prWorkPlan = workPlanMapper.selectById(wpId); + + prWorkPlan.setPrintType((short) 1); + + if (prWorkPlan.getStatus().equals(WorkPlan.STATUS_START)) { + throw new ServiceException("流程卡为 " + prWorkPlan.getCaId()+ " 的订单对应的工序不在加工中暂时不可再维护!"); + } + // 查询自动生产追溯是否已经开始 + List mtnCodeList=macToolUseService.listObjs(Wrappers.lambdaQuery() + .eq(MacToolUse::getWpId, wpId).eq(MacToolUse::getMtuIndex,2).select(MacToolUse::getMtnCode)); + produceRunList = mesQcProduceRunService.list(Wrappers.lambdaQuery() + .in(MesQcProduceRunEntity::getMtnCode,mtnCodeList).ne(MesQcProduceRunEntity::getWorkSlot, "烘箱")); + // 上线前 没有生产追溯数据 + if (retrospectDefendDTO.getLine().equals(Boolean.TRUE)) { + if (produceRunList != null && produceRunList.size() > 0) { + throw new ServiceException("流程卡为 " + prWorkPlan.getCaId() + " 的订单对应的工序已经在已上线,不可再维护!"); + } + } else if (retrospectDefendDTO.getLine().equals(Boolean.FALSE)) { + // 下线后 有自动生产追溯数据 + if (produceRunList.size() == 0 || produceRunList == null) { + throw new ServiceException("流程卡为 " + prWorkPlan.getId() + " 的订单对应的工序还未下线,不可再维护!"); + } + MacToolUse macToolUse = macToolUseService.getOne(Wrappers.lambdaQuery().eq(MacToolUse::getWpId, wpId) + .eq(MacToolUse::getMtuIndex,2)); + if (macToolUse != null && macToolUse.getRfpId() != null && macToolUse.getFinished()!=1) { + macToolUse.setFinished(1); + String deviceCode = macToolUse.getEquipmentCard() != null ? macToolUse.getMtnCode() : ""; + log.info("修改设备绑定状态:设备编号:{},批次号:{},槽号:{},方法名:saveRetrospectDefend(),{}", deviceCode, macToolUse.getHangNum(), macToolUse.getMtnCode(), macToolUse.getFinished()); + // 2025-07-23 线上迁移修改 + macToolUseService.updateById(macToolUse); + } + + } + } + // 创建一条绑定记录 + prMacToolUse = new MacToolUse(); + prMacToolUse.setWpId(prWorkPlan.getId()); + prMacToolUse.setEquipmentCard(equipmentCard.getId()); + prMacToolUse.setFinished(1); + prMacToolUse.setCreateTime(new Date()); + prMacToolUse.setCreateMan(AuthUtil.getUserId()); + prMacToolUse.setRfpId(retrospectDefendDTO.getRfpId().toString()); + prMacToolUse.setMtnCode(code); + prMacToolUse.setMtuIndex(String.valueOf(retrospectDefendDTO.getLine() ? 1 : 3)); + macToolUseService.save(prMacToolUse); + String deviceCode = prMacToolUse.getEquipmentCard() != null ? prMacToolUse.getMtnCode(): ""; + log.info("修改设备绑定状态:设备编号:{},批次号:{},槽号:{},方法名:saveRetrospectDefend(),{}", deviceCode, prMacToolUse.getHangNum(), prMacToolUse.getMtnCode(), prMacToolUse.getFinished()); + } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveDetailServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveDetailServiceImpl.java new file mode 100644 index 00000000..f0827607 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveDetailServiceImpl.java @@ -0,0 +1,26 @@ +package org.springblade.desk.produce.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.desk.produce.mapper.MesRbFilePreserveDetailMapper; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveDetailVO; +import org.springblade.desk.produce.service.IMesRbFilePreserveDetailService; +import org.springframework.stereotype.Service; + +/** + * 热表电子档案维护-明细 服务实现类 + * + * @author BladeX + * @since 2026-02-05 + */ +@Service +public class MesRbFilePreserveDetailServiceImpl extends BaseServiceImpl implements IMesRbFilePreserveDetailService { + + @Override + public IPage selectMesRbFilePreserveDetailPage(IPage page, MesRbFilePreserveDetailVO mesRbFilePreserveDetail) { + return page.setRecords(baseMapper.selectMesRbFilePreserveDetailPage(page, mesRbFilePreserveDetail)); + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveSlotServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveSlotServiceImpl.java new file mode 100644 index 00000000..32d7d2ce --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/MesRbFilePreserveSlotServiceImpl.java @@ -0,0 +1,29 @@ +package org.springblade.desk.produce.service.impl; + +import org.springblade.desk.produce.mapper.MesRbFilePreserveSlotMapper; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveSlotVO; +import org.springblade.desk.produce.service.IMesRbFilePreserveSlotService; +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 BladeX + * @since 2026-02-05 + */ +@Service +public class MesRbFilePreserveSlotServiceImpl extends BaseServiceImpl implements IMesRbFilePreserveSlotService { + + @Override + public IPage selectMesRbFilePreserveSlotPage(IPage page, MesRbFilePreserveSlotVO mesRbFilePreserveSlot) { + return page.setRecords(baseMapper.selectMesRbFilePreserveSlotPage(page, mesRbFilePreserveSlot)); + } + + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java index 7cadc814..9a7dbfa4 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java @@ -1,6 +1,7 @@ package org.springblade.desk.produce.service.impl; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -89,6 +90,8 @@ public class PdaLoadServiceImpl extends BaseServiceImpl loadPrMacToolUseByMtnCode(String mtnCode) { + return baseMapper.loadPrMacToolUseByMtnCode(mtnCode); + } + + @Override + public void deletedProduceRun(String mtnCode) { + // 删除产生的记录数据 + List qcProduceRunList = mesQcProduceRunService.list(Wrappers.lambdaQuery(MesQcProduceRunEntity.class) + .eq(MesQcProduceRunEntity::getMtnCode, mtnCode)); + if (qcProduceRunList != null && qcProduceRunList.size() > 0) { + List< Long> qcProduceRunIds = qcProduceRunList.stream().map(MesQcProduceRunEntity::getId).collect(Collectors.toList()); + mesQcProduceRunService.deleteLogic(qcProduceRunIds); + } + // 删除绑定记录 + List prMacToolUseList = macToolUseService.list(Wrappers.lambdaQuery(MacToolUse.class) + .eq(MacToolUse::getMtnCode, mtnCode)); + if (prMacToolUseList != null && prMacToolUseList.size() > 0) { + List prMacToolUseIds = prMacToolUseList.stream().map(MacToolUse::getId).collect(Collectors.toList()); + macToolUseService.deleteLogic(prMacToolUseIds); + } + } + private WorkPlan getCurrentWorkPlan(String cardNo, BladeUser user, boolean checkCurrentProcess, boolean checkAfterPlating) { //获取并验证车间订单 WorkOrder prWorkOrder = this.checkPrWorkOrder(cardNo); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveDetailWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveDetailWrapper.java new file mode 100644 index 00000000..357a1833 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveDetailWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.produce.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveDetailEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveDetailVO; + +import java.util.Objects; + +/** + * 热表电子档案维护-明细 包装类,返回视图层所需的字段 + * + * @author BladeX + * @since 2026-02-05 + */ +public class MesRbFilePreserveDetailWrapper extends BaseEntityWrapper { + + public static MesRbFilePreserveDetailWrapper build() { + return new MesRbFilePreserveDetailWrapper(); + } + + @Override + public MesRbFilePreserveDetailVO entityVO(MesRbFilePreserveDetailEntity mesRbFilePreserveDetail) { + MesRbFilePreserveDetailVO mesRbFilePreserveDetailVO = Objects.requireNonNull(BeanUtil.copyProperties(mesRbFilePreserveDetail, MesRbFilePreserveDetailVO.class)); + + //User createUser = UserCache.getUser(mesRbFilePreserveDetail.getCreateUser()); + //User updateUser = UserCache.getUser(mesRbFilePreserveDetail.getUpdateUser()); + //mesRbFilePreserveDetailVO.setCreateUserName(createUser.getName()); + //mesRbFilePreserveDetailVO.setUpdateUserName(updateUser.getName()); + + return mesRbFilePreserveDetailVO; + } + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveSlotWrapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveSlotWrapper.java new file mode 100644 index 00000000..f967f315 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/wrapper/MesRbFilePreserveSlotWrapper.java @@ -0,0 +1,35 @@ +package org.springblade.desk.produce.wrapper; + +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; +import org.springblade.desk.produce.pojo.vo.MesRbFilePreserveSlotVO; + +import java.util.Objects; + +/** + * 热表电子档案维护-槽子明细 包装类,返回视图层所需的字段 + * + * @author BladeX + * @since 2026-02-05 + */ +public class MesRbFilePreserveSlotWrapper extends BaseEntityWrapper { + + public static MesRbFilePreserveSlotWrapper build() { + return new MesRbFilePreserveSlotWrapper(); + } + + @Override + public MesRbFilePreserveSlotVO entityVO(MesRbFilePreserveSlotEntity mesRbFilePreserveSlot) { + MesRbFilePreserveSlotVO mesRbFilePreserveSlotVO = Objects.requireNonNull(BeanUtil.copyProperties(mesRbFilePreserveSlot, MesRbFilePreserveSlotVO.class)); + + //User createUser = UserCache.getUser(mesRbFilePreserveSlot.getCreateUser()); + //User updateUser = UserCache.getUser(mesRbFilePreserveSlot.getUpdateUser()); + //mesRbFilePreserveSlotVO.setCreateUserName(createUser.getName()); + //mesRbFilePreserveSlotVO.setUpdateUserName(updateUser.getName()); + + return mesRbFilePreserveSlotVO; + } + + +}