From 0cee2b7f371a5eb353b334ad905f90e7f0c807b4 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Fri, 23 Aug 2024 17:15:38 +0800 Subject: [PATCH] =?UTF-8?q?modified:=20=E7=83=98=E7=83=A4=E8=B4=A8?= =?UTF-8?q?=E6=A3=80=E3=80=81=E4=BF=AE=E6=94=B9=E6=B8=A9=E5=BA=A6/?= =?UTF-8?q?=E6=97=B6=E9=97=B4=20add:=20=E7=83=98=E7=83=A4=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mps/controller/BakingPdaController.java | 10 ++ .../wms/pda/mps/service/BakingPdaService.java | 14 +++ .../service/impl/BakingPdaServiceImpl.java | 96 +++++++++++++++++-- .../tasks/hot/AutoInHotTrussTask.java | 2 +- .../task_manage/tasks/hot/InHotTrussTask.java | 2 +- 5 files changed, 113 insertions(+), 11 deletions(-) diff --git a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/controller/BakingPdaController.java b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/controller/BakingPdaController.java index 143e2e656..3fcd0780d 100644 --- a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/controller/BakingPdaController.java +++ b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/controller/BakingPdaController.java @@ -32,4 +32,14 @@ public class BakingPdaController { public ResponseEntity bakingQuality(@RequestBody JSONObject whereJson) { return new ResponseEntity<>(bakingPdaService.bakingQuality(whereJson), HttpStatus.OK); } + @PostMapping("/getHotTempPointInfo") + @Log("获取烘箱暂存位信息") + public ResponseEntity getHotTempPointInfo(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(bakingPdaService.getHotTempPointInfo(whereJson), HttpStatus.OK); + } + @PostMapping("/doModifyRawInfos") + @Log("修改信息") + public ResponseEntity doModifyRawInfos(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(bakingPdaService.doModifyRawInfos(whereJson), HttpStatus.OK); + } } diff --git a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/BakingPdaService.java b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/BakingPdaService.java index 016c53aa5..d366a1283 100644 --- a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/BakingPdaService.java +++ b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/BakingPdaService.java @@ -14,4 +14,18 @@ public interface BakingPdaService { * @return / */ JSONObject bakingQuality(JSONObject param); + + /** + * 获取烘箱点位信息 + * @param param / + * @return / + */ + JSONObject getHotTempPointInfo(JSONObject param); + + /** + * 修改生箔信息 + * @param param / + * @return / + */ + JSONObject doModifyRawInfos(JSONObject param); } diff --git a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/impl/BakingPdaServiceImpl.java b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/impl/BakingPdaServiceImpl.java index d172e0fcd..8d256c951 100644 --- a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/impl/BakingPdaServiceImpl.java +++ b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/mps/service/impl/BakingPdaServiceImpl.java @@ -1,10 +1,13 @@ package org.nl.wms.pda.mps.service.impl; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import lombok.extern.slf4j.Slf4j; import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.wms.pda.mps.service.BakingPdaService; import org.nl.wms.pdm.bi.dao.PdmBiRawfoilworkorder; import org.nl.wms.pdm.bi.service.IpdmBiRawfoilworkorderService; @@ -14,7 +17,9 @@ import org.nl.wms.util.PointUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * @Author: lyd @@ -32,22 +37,17 @@ public class BakingPdaServiceImpl implements BakingPdaService { @Override public JSONObject bakingQuality(JSONObject param) { log.info("手持操作烘烤质检:{}", param); - // param: point_code, vehicle_code,quality(1: 合格,0: 不合格) + // param: point_code,quality(1: 合格,0: 不合格) String quality = param.getString("quality"); String pointCode = param.getString("point_code"); - String vehicleCode = param.getString("vehicle_code"); Assert.notBlank(pointCode, "点位不能为空!"); - Assert.notBlank(vehicleCode, "收卷辊不能为空!"); SchBasePoint hotZcPoint = pointService.getById(pointCode); if (ObjectUtil.isEmpty(hotZcPoint)) { throw new BadRequestException("点位 [" + pointCode + "] 不存在!"); } - List rawOrderList = rawfoilworkorderService.getOrderByVehicleAndStatus(vehicleCode, "04"); - if (rawOrderList.size() > 1) { - throw new BadRequestException("收卷辊 [" + vehicleCode + "] 对应的生箔工单存在多条,请将其他多余工单结束!"); - } - if (rawOrderList.size() == 0) { - throw new BadRequestException("收卷辊 [" + vehicleCode + "] 对应的生箔工单不存在!"); + PdmBiRawfoilworkorder rawOrder = rawfoilworkorderService.getById(hotZcPoint.getSource_id()); + if (ObjectUtil.isEmpty(rawOrder)) { + throw new BadRequestException("点位 [" + pointCode + "] 对应的生箔工单不存在!"); } if ("0".equals(quality)) { // 重复烘烤 @@ -62,4 +62,82 @@ public class BakingPdaServiceImpl implements BakingPdaService { result.put("message", "操作成功!"); return result; } + + @Override + public JSONObject getHotTempPointInfo(JSONObject param) { + // param: point_code, 可选:order_code + JSONObject result = new JSONObject(); + String pointCode = param.getString("point_code"); + String orderCode = param.getString("order_code"); + SchBasePoint hotPoint = pointService.getById(pointCode); + List tip = new ArrayList<>(); + if (orderCode == null) { + if (ObjectUtil.isEmpty(hotPoint.getSource_id())) { + result.put("container_name", "该点位不存在母卷信息"); + result.put("status", "空位"); + tip.add("点位不存在工单信息"); + } else { + PdmBiRawfoilworkorder rawOrder = rawfoilworkorderService.getById(hotPoint.getSource_id()); + result.put("container_name", rawOrder.getContainer_name()); + result.put("status", hotPoint.getPoint_status()); + doCheckEmptyOrderInfo(tip, rawOrder); + } + } else { + PdmBiRawfoilworkorder rawOrder = rawfoilworkorderService.getByContainerName(orderCode); + if (rawOrder.getWorkorder_id().equals(hotPoint.getSource_id())) { + result.put("container_name", rawOrder.getContainer_name()); + result.put("status", hotPoint.getPoint_status()); + doCheckEmptyOrderInfo(tip, rawOrder); + } else { + result.put("container_name", "-"); + result.put("status", hotPoint.getPoint_status()); + tip.add("系统信息与扫描的转运卡号信息不一致"); + } + } + if (tip.size() == 0) { + tip.add("暂无提示信息!"); + } + String collect = tip.stream().collect(Collectors.joining(" , ")); + result.put("tip", collect); + return result; + } + + @Override + public JSONObject doModifyRawInfos(JSONObject param) { + log.info("手持修改温度/时间 - {}", param); + // point_code, temperature, time + String pointCode = param.getString("point_code"); + String temperature = param.getString("temperature"); + String time = param.getString("time"); + SchBasePoint hotPoint = pointService.getById(pointCode); + if (ObjectUtil.isEmpty(hotPoint.getSource_id())) { + throw new BadRequestException("点位 [" + pointCode + "] 不存在生箔工单信息!"); + } + PdmBiRawfoilworkorder order = rawfoilworkorderService.getById(hotPoint.getSource_id()); + if (ObjectUtil.isEmpty(order)) { + throw new BadRequestException("生箔工单不存在!"); + } + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + lam.set(PdmBiRawfoilworkorder::getBaking_temperature, temperature) + .set(PdmBiRawfoilworkorder::getBaking_time, time) + .set(PdmBiRawfoilworkorder::getUpdate_optid, SecurityUtils.getCurrentUserId()) + .set(PdmBiRawfoilworkorder::getUpdate_optname, SecurityUtils.getCurrentNickName()) + .set(PdmBiRawfoilworkorder::getUpdate_time, DateUtil.now()) + .eq(PdmBiRawfoilworkorder::getWorkorder_id, hotPoint.getSource_id()); + rawfoilworkorderService.update(lam); + JSONObject result = new JSONObject(); + result.put("message", "操作成功!"); + return result; + } + + public static void doCheckEmptyOrderInfo(List tip, PdmBiRawfoilworkorder rawOrder) { + if ("1".equals(rawOrder.getIs_baking())) { + if (ObjectUtil.isEmpty(rawOrder.getBaking_temperature())) { + tip.add("烘烤温度不能为空,请维护"); + } + if (ObjectUtil.isEmpty(rawOrder.getBaking_time())) { + tip.add("烘烤时间不能为空,请维护"); + } + } + } } diff --git a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/AutoInHotTrussTask.java b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/AutoInHotTrussTask.java index 203d95f59..80e352641 100644 --- a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/AutoInHotTrussTask.java +++ b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/AutoInHotTrussTask.java @@ -33,7 +33,7 @@ import static org.nl.wms.util.TaskUtils.checkTaskOptionStatus; /** * @Author: lyd - * @Description: 自动创建入烘箱任务 + * @Description: 自动创建入烘箱任务 todo: 考虑温度与时间没有信息也不入 *

通过定时任务 {@link org.nl.wms.quartz.AutoCreateInHotTask} 调用此类

* @Date: 2024/8/9 */ diff --git a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/InHotTrussTask.java b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/InHotTrussTask.java index 4c4b02bfe..e5246bbfd 100644 --- a/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/InHotTrussTask.java +++ b/lms2/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/tasks/hot/InHotTrussTask.java @@ -33,7 +33,7 @@ import static org.nl.wms.util.PointUtils.setHxUpdateByType; /** * @Author: lyd - * @Description: 入烘箱的任务类 todo: 需要修改 + * @Description: 入烘箱的任务类 todo: 需要修改, 考虑温度与时间没有信息也不入 * @Date: 2024/8/8 */ @Slf4j