From e54a03e1c3fefef7ec84df6168ff5cf26e53f8cb Mon Sep 17 00:00:00 2001
From: Fancy <Fancy.fx@outlook.com>
Date: 星期四, 09 一月 2025 15:47:07 +0800
Subject: [PATCH] station and user disable check Stationlogin first

---
 pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java |   39 +++++++++++++++++++++++++++++++++++++--
 1 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java b/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java
index 783a93c..202121f 100644
--- a/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java
+++ b/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/station/StationSv.java
@@ -1,11 +1,16 @@
 package com.dy.pmsPlatform.station;
 
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
 import com.alibaba.excel.util.StringUtils;
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pmsGlobal.daoPlt.PltProductionLineMapper;
 import com.dy.pmsGlobal.daoPlt.PltStationMapper;
+import com.dy.pmsGlobal.daoSta.StaAssemblyWorkLastMapper;
 import com.dy.pmsGlobal.pojoPlt.PltProductionLine;
 import com.dy.pmsGlobal.pojoPlt.PltStation;
+import com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast;
+import com.dy.pmsGlobal.util.QrCodeConstant;
 import com.dy.pmsGlobal.util.QrCodeUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.common.utils.PojoUtils;
@@ -14,6 +19,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -23,7 +29,8 @@
 
     private PltStationMapper dao;
     private PltProductionLineMapper lineDao;
-    private static final String stationPrefix = "103" ;
+    private StaAssemblyWorkLastMapper assemblyWorkLastDao;
+//    private static final String stationPrefix = "103" ;
     private static final String DEFAULT_CODE = "0001";
     private static final String CODE_FORMAT = "%04d";
 
@@ -34,6 +41,10 @@
     @Autowired
     public void setLineDao(PltProductionLineMapper lineDao) {
         this.lineDao = lineDao;
+    }
+    @Autowired
+    public void setAssemblyWorkLastDao(StaAssemblyWorkLastMapper assemblyWorkLastDao) {
+        this.assemblyWorkLastDao = assemblyWorkLastDao;
     }
 
     @Transactional
@@ -81,6 +92,7 @@
      */
     @Transactional
     public int delete(Long id) {
+        checkStationLogin(id);
         return this.dao.deleteLogicById(id);
     }
 
@@ -125,7 +137,7 @@
         //鏌ヨ绗﹀悎鏉′欢鐨勮褰�
         rsVo.obj = this.dao.selectSome(params) ;
         rsVo.obj.parallelStream().forEach(item->{
-            item.qrCode = QrCodeUtil.genQrCodeString(stationPrefix+item.id);
+            item.qrCode = QrCodeUtil.genQrCodeString(QrCodeConstant.TypeStation+item.id);
         });
         return rsVo ;
     }
@@ -139,6 +151,7 @@
                 throw new RuntimeException("璇ュ伐绔欐墍灞炵敓浜х嚎宸茬鐢�,璇峰厛鍚敤璇ョ敓浜х嚎");
             }
         }
+        checkStationLogin(id);
         PltStation station = new PltStation();
         station.setId(id);
         station.setDisabled(disabled);
@@ -148,5 +161,27 @@
     public List<PltStation> selectAll() {
         return dao.selectAll();
     }
+
+    public JSONArray selectAllIdAndName() {
+        List<PltStation> list = dao.selectAll();
+        JSONArray child = new JSONArray();
+        list.forEach(item->{
+            child.add(new JSONObject().set("id", String.valueOf(item.getId())).set("name", item.getName()));
+        });
+        return child;
+    }
+    public void  checkStationLogin(Long id){
+        //濡傛灉鏈夊伐绔欑櫥褰曚俊鎭�,鍒欐彁绀哄厛鍒拌Е灞忕鐧诲綍椤甸潰logout
+        Map<String, Object> params = new HashMap<>();
+        params.put("stationId", id);
+        List<StaAssemblyWorkLast> workLasts = assemblyWorkLastDao.selectSome(params);
+        if (workLasts.size() > 0) {
+            String stationStr = "(";
+            for (StaAssemblyWorkLast workLast:workLasts) {
+                stationStr += workLast.getStationName() +",";
+            }
+            throw new RuntimeException("璇�"+ stationStr +")宸ョ珯瀛樺湪鐧诲綍淇℃伅,璇峰厛鍒拌Е灞忕鐧诲綍椤甸潰logout,鎴栬仈绯荤鐞嗗憳鍒犻櫎");
+        }
+    }
 }
 

--
Gitblit v1.8.0