From 54b274998a6e839227a86a3f39ff2a9f69f32fcc Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期二, 30 七月 2024 14:35:11 +0800
Subject: [PATCH] 兼容无任务工作中的追溯信息

---
 pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java |   34 +++++++++++++++++++++++++++++++---
 1 files changed, 31 insertions(+), 3 deletions(-)

diff --git a/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java b/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java
index b94f17d..8cf3d79 100644
--- a/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java
+++ b/pms-parent/pms-web-station/src/main/java/com/dy/pmsStation/assemblyStep/AssemblyStepSv.java
@@ -36,6 +36,7 @@
     private static final String WORK_TYPE_TEST = "2";
     private static final String WORK_TYPE_INSPECTION = "3";
     private static final String WORK_TYPE_REPAIR = "4";
+    private static final String WORK_TYPE_OTHER = "5";
 
     private StaDeviceLastMapper deviceLastDao;
     private StaDeviceLifeMapper deviceLifeDao;
@@ -237,6 +238,7 @@
 
         Boolean isEnd = false;//鏄惁缁忓巻杩囩粨鏉熻妭鐐�
         PrProductionNode node = nodeDao.selectByPrimaryKey(workLast.nodeId);
+        //
         record.nodeContent = node.content;
         if (node.isRecord) {
             record.deviceCycleContent = node.deviceCycleContent;
@@ -281,6 +283,7 @@
         if (WORK_TYPE_ASSEMBLY.equals(workType) || WORK_TYPE_TEST.equals(workType) || WORK_TYPE_INSPECTION.equals(workType) || WORK_TYPE_REPAIR.equals(workType)) {
             return switch (status) {
                 case QrCodeConstant.MarkOk -> isEnd ? DeviceStatus.COMPLETED.getCode() : DeviceStatus.ASSEMBLING.getCode();
+                case QrCodeConstant.MarkQualified -> isEnd ? DeviceStatus.COMPLETED.getCode() : DeviceStatus.ASSEMBLING.getCode();
                 case QrCodeConstant.MarkUnqualified -> DeviceStatus.REPAIR.getCode();
                 case QrCodeConstant.MarkWaste -> DeviceStatus.WASTE.getCode();
                 default -> throw new RuntimeException("鐘舵�侀敊璇�");
@@ -304,14 +307,14 @@
             //娴嬭瘯
         }else if (WORK_TYPE_TEST.equals(workType)) {
             return switch (status) {
-                case QrCodeConstant.MarkOk -> DeviceResult.TEST_PASS.getCode();
+                case QrCodeConstant.MarkQualified  -> DeviceResult.TEST_PASS.getCode();
                 case QrCodeConstant.MarkUnqualified -> DeviceResult.TEST_FAIL.getCode();
                 default -> throw new RuntimeException("鐘舵�侀敊璇�");
             };
             //鍝佹
         }else if (WORK_TYPE_INSPECTION.equals(workType)) {
             return switch (status) {
-                case QrCodeConstant.MarkOk -> DeviceResult.INSPECTION_PASS.getCode();
+                case QrCodeConstant.MarkQualified -> DeviceResult.INSPECTION_PASS.getCode();
                 case QrCodeConstant.MarkUnqualified -> DeviceResult.INSPECTION_FAIL.getCode();
                 default -> throw new RuntimeException("鐘舵�侀敊璇�");
             };
@@ -389,7 +392,32 @@
         }
         return count;
     }
-
+    //鏃犱换鍔¤鍒掍腑鐨勫叾浠� 浼爓orkId ,鎵嬪啓宸ヤ綔鍐呭 , 鏁伴噺
+    @Transactional
+    public int otherWork(QueryVo vo) {
+        long workId = Long.parseLong(vo.workId);
+        StaAssemblyWorkLast workLast = assemblyWorkLastDao.selectByPrimaryKey(workId);
+        if (workLast == null) {
+            throw new RuntimeException("绯荤粺涓病鏈夎鏉$櫥褰曚俊鎭�");
+        }
+        //淇濆瓨宸ヤ綔璁板綍
+        StaDeviceProductionLog log = new StaDeviceProductionLog();
+        log.setId(null); // 璁惧鐢熶骇鏃ュ織ID璁句负null锛岃〃绀烘柊澧�
+        log.setDeviceNo("");  //RepairId  planId  currNode deviceCycleContent  memo
+        log.setWorkId(workId);
+        log.setStationId(workLast.getStationId());
+        log.setNodeContent(vo.getContent());
+        log.setStatus(DeviceStatus.COMPLETED.getCode());//瀹屾垚鐘舵��
+        log.setResult(DeviceResult.PASS.getCode());//閫氳繃
+        log.setErrorMsg(vo.getErrorMsg());
+        log.setAssistants(workLast.getAssistants());
+        log.setInTime(new Date());
+        log.setOutTime(new Date());
+        log.setUpdatedBy(workLast.getUserId());
+        log.setNumber(vo.getNumber());
+        int count = deviceProductionLogDao.insertSelective(log);
+        return count;
+    }
     //鏍规嵁鑺傜偣鏌ュ嚭鑺傜偣浣滀笟鎸囧涔�
     public PrProductionNode getSopByNodeId(String nodeId) {
         if (com.alibaba.excel.util.StringUtils.isBlank(nodeId)) {

--
Gitblit v1.8.0