From ada52749981e391faeedab0fe72b5a78de6d1f6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=B6=9B?= Date: Thu, 16 Apr 2026 16:37:22 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=AE=A1=E7=90=86=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../produce/pojo/entity/WorkOrderAdjust.java | 51 +++++++------------ .../controller/DisTaskingController.java | 26 ++++++++-- .../produce/mapper/WorkOrderAdjustMapper.java | 14 +++++ .../service/IWorkOrderAdjustService.java | 16 ++++++ .../impl/WorkOrderAdjustServiceImpl.java | 28 ++++++++++ .../service/impl/WorkOrderServiceImpl.java | 47 +++++++++-------- 6 files changed, 124 insertions(+), 58 deletions(-) create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderAdjustMapper.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderAdjustService.java create mode 100644 blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderAdjustServiceImpl.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderAdjust.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderAdjust.java index e123174e..91a5824e 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderAdjust.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderAdjust.java @@ -1,6 +1,5 @@ package org.springblade.desk.produce.pojo.entity; -import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -8,51 +7,35 @@ import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; /** - * 车间作业计划修改日志 实体类 + * 订单调整记录 实体类 * * @author BladeX */ @Data @TableName("MES_WORK_ORDER_ADJUST") -@Schema(description = "WorkPlanLog对象") +@Schema(description = "WorkOrderAdjust对象") @EqualsAndHashCode(callSuper = true) public class WorkOrderAdjust extends BaseEntity { + /** + * 未完成 + */ + public static Integer CUR_STATUS_UNFINISHED = 1; + /** + * 已完成 + */ + public static Integer CUR_STATUS_COMPLETE = 2; + @Schema(description = "车间订单") private Long woId; - @Schema(description = "订单编号") - private String woCode; - - @Schema(description = "路线卡号") - private String cardNo; - - @Schema(description = "零件号") - private String partCode; - - @Schema(description = "批次") - private String batchNo; - - @Schema(description = "工序") - private String ppsName; - - @Schema(description = "数量") - private Double workQty; - - @Schema(description = "原班组") - private String oriMakeTeam; - - @Schema(description = "现班组") - private String makeTeam; - - @Schema(description = "原接收人") - private String oriReceiveMan; + @Schema(description = "旧班组") + private Long oldTeam; - @Schema(description = "现接收人") - private String receiveMan; + @Schema(description = "新班组") + private Long newTeam; - @TableField(exist = false) - @Schema(description = "调整人") - private String adjustName; + @Schema(description = "定额") + private Double quota; } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/DisTaskingController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/DisTaskingController.java index 7a066ab1..246cf587 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/DisTaskingController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/DisTaskingController.java @@ -1,6 +1,7 @@ package org.springblade.desk.produce.controller; import com.alibaba.nacos.common.utils.CollectionUtils; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; @@ -15,18 +16,17 @@ 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.core.tool.utils.Func; import org.springblade.desk.produce.pojo.dto.ShiftTransferDTO; import org.springblade.desk.produce.pojo.dto.TaskCompleteDTO; import org.springblade.desk.produce.pojo.dto.TaskCompleteOrderDTO; import org.springblade.desk.produce.pojo.dto.UploadPlanDto; -import org.springblade.desk.produce.pojo.entity.DisTasking; -import org.springblade.desk.produce.pojo.entity.MakeRec; -import org.springblade.desk.produce.pojo.entity.WorkPlan; -import org.springblade.desk.produce.pojo.entity.WorkPlanLog; +import org.springblade.desk.produce.pojo.entity.*; import org.springblade.desk.produce.pojo.vo.ByCardNoByPlanVO; import org.springblade.desk.produce.pojo.vo.TaskCompleteVO; import org.springblade.desk.produce.service.IDisTaskingService; import org.springblade.desk.produce.service.IPdaSaveService; +import org.springblade.desk.produce.service.IWorkOrderAdjustService; import org.springblade.desk.produce.service.IWorkPlanLogService; import org.springblade.system.cache.UserCache; import org.springblade.system.pojo.entity.User; @@ -52,6 +52,8 @@ public class DisTaskingController extends BladeController { private final IPdaSaveService pdaSaveService; + private final IWorkOrderAdjustService workOrderAdjustService; + @GetMapping("/disTaskHandle") @ApiOperationSupport(order = 1) @Operation(summary = "调度任务分派", description = "传入taskCompleteDTO") @@ -161,4 +163,20 @@ public class DisTaskingController extends BladeController { return R.status(disTaskingService.syncDisTasking(true)); } + @GetMapping("/queryUnfinished") + @ApiOperationSupport(order = 11) + @Operation(summary = "加载未处理调整记录", description = "加载未处理调整记录") + public R> queryUnfinished(WorkOrderAdjust workOrderAdjust, Query query) { + LambdaQueryWrapper queryWrapper = Condition.getQueryWrapper(workOrderAdjust).lambda(); + queryWrapper.eq(WorkOrderAdjust::getStatus, 1); + return R.data(workOrderAdjustService.page(Condition.getPage(query), queryWrapper)); + } + + @PostMapping("/markComplete") + @ApiOperationSupport(order = 12) + @Operation(summary = "标记完成", description = "标记完成") + public R markComplete(@RequestParam String ids) { + return R.status(workOrderAdjustService.markComplete(Func.toLongList(ids))); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderAdjustMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderAdjustMapper.java new file mode 100644 index 00000000..c2c98392 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderAdjustMapper.java @@ -0,0 +1,14 @@ +package org.springblade.desk.produce.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust; + +/** + * 订单调整记录 Mapper 接口 + * + * @author BladeX + */ +public interface WorkOrderAdjustMapper extends BaseMapper { + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderAdjustService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderAdjustService.java new file mode 100644 index 00000000..56384448 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderAdjustService.java @@ -0,0 +1,16 @@ +package org.springblade.desk.produce.service; + +import org.springblade.core.mp.base.BaseService; +import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust; + +import java.util.List; + +/** + * 订单调整记录 服务类 + * + * @author BladeX + */ +public interface IWorkOrderAdjustService extends BaseService { + + boolean markComplete(List longList); +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderAdjustServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderAdjustServiceImpl.java new file mode 100644 index 00000000..86e9fe45 --- /dev/null +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderAdjustServiceImpl.java @@ -0,0 +1,28 @@ +package org.springblade.desk.produce.service.impl; + +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.desk.produce.mapper.WorkOrderAdjustMapper; +import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust; +import org.springblade.desk.produce.service.IWorkOrderAdjustService; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 订单调整记录 服务实现类 + * + * @author BladeX + */ +@Slf4j +@Service +@RequiredArgsConstructor +public class WorkOrderAdjustServiceImpl extends BaseServiceImpl implements IWorkOrderAdjustService { + + @Override + public boolean markComplete(List longList) { + return this.update(Wrappers.lambdaUpdate(WorkOrderAdjust.class).in(WorkOrderAdjust::getId, longList).set(WorkOrderAdjust::getStatus, WorkOrderAdjust.CUR_STATUS_COMPLETE)); + } +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java index 0c326131..d18fc52b 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java @@ -65,6 +65,7 @@ import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.math.BigDecimal; +import java.text.NumberFormat; import java.time.Duration; import java.time.Instant; import java.time.LocalDateTime; @@ -159,6 +160,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl selectWorkOrderPage(IPage page, WorkOrderDTO workOrder) { return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder)); @@ -737,26 +740,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl 0) { -// woa.setCurStatus(PrWorkOrderAdjust.CUR_STATUS_UNFINISHED); -// } else { -// woa.setCurStatus(PrWorkOrderAdjust.CUR_STATUS_COMPLETE); -// } -// -// prWorkOrderAdjustDao.save(woa); + YieldOrder yieldOrder = yieldOrderService.getById(wo.getYoId()); + WorkOrderAdjust woa = new WorkOrderAdjust(); + woa.setOldTeam(oldTsId); + woa.setNewTeam(newTsId); + woa.setWoId(woId); + String quota = this.formatDouble(wo.getPlateSingleQuota().doubleValue() * (yieldOrder.getYpQty() != null ? yieldOrder.getYpQty() : wo.getMakeQty()), 10, 6, false); + woa.setQuota(Double.valueOf(quota)); + woa.setStatus(woa.getQuota() > 0 ? WorkOrderAdjust.CUR_STATUS_UNFINISHED : WorkOrderAdjust.CUR_STATUS_COMPLETE); + workOrderAdjustService.save(woa); } private String getVersionByPartCode(String partCode) { @@ -2592,4 +2584,19 @@ public class WorkOrderServiceImpl extends BaseServiceImpl 10) { + maxDigits = 10; + } + + if (minDigits < 0) { + minDigits = 0; + } + + NumberFormat nf = NumberFormat.getInstance(); + nf.setMaximumFractionDigits(maxDigits); + nf.setMinimumFractionDigits(minDigits); + nf.setGroupingUsed(useGrouping); + return nf.format(n); + } }