From d9d35401bf3153e96dafc00b83db13ed554c6d5c Mon Sep 17 00:00:00 2001
From: 18516761980 <56479841@qq.com>
Date: 星期四, 11 八月 2022 09:26:38 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/TestMastMapper.xml                    |   17 ++
 src/main/java/com/zy/asrs/entity/TestMast.java                  |  195 +++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java     |   62 ++++++++
 src/main/java/com/zy/asrs/service/impl/TestMastServiceImpl.java |   12 +
 src/main/java/com/zy/asrs/service/TestMastService.java          |    8 +
 src/main/java/com/zy/common/model/TestDto.java                  |   23 +++
 src/main/java/com/zy/core/MainProcess.java                      |    7 
 src/main/java/com/zy/asrs/mapper/TestMastMapper.java            |   12 +
 src/main/java/com/zy/common/CodeBuilder.java                    |    3 
 src/main/java/com/zy/core/thread/SiemensDevpThread.java         |    4 
 src/main/resources/application.yml                              |   55 +++++--
 src/main/java/com/zy/core/ServerBootstrap.java                  |   14 +-
 12 files changed, 379 insertions(+), 33 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/TestMast.java b/src/main/java/com/zy/asrs/entity/TestMast.java
new file mode 100644
index 0000000..f510c42
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/TestMast.java
@@ -0,0 +1,195 @@
+package com.zy.asrs.entity;
+
+import com.core.common.Cools;import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@TableName("asr_test_mast")
+public class TestMast implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 缂栧彿
+     */
+    @ApiModelProperty(value= "缂栧彿")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 閫氶亾
+     */
+    @ApiModelProperty(value= "")
+    private Integer channel;
+
+    /**
+     * 搴撲綅鍙�
+     */
+    @ApiModelProperty(value= "搴撲綅鍙�")
+    @TableField("loc_no")
+    private String locNo;
+
+    /**
+     * PACK鐮�
+     */
+    @ApiModelProperty(value= "PACK鐮�")
+    private String barcode;
+
+    /**
+     * 鐢ㄦ埛鐮�
+     */
+    @ApiModelProperty(value= "鐢ㄦ埛鐮�")
+    private String userId;
+
+    /**
+     * 鐘舵�� 0: 寰呯敵璇�  1: 鐢宠涓�  2: 宸插鏍�;3.娴嬭瘯涓�;4  
+     */
+    @ApiModelProperty(value= "鐘舵�� 0: 寰呯敵璇�  1: 鐢宠涓�  2: 宸插鏍� 3:娴嬭瘯涓� 4:瀹屾垚")
+    private Integer status;
+
+    /**
+     * 淇敼鏃堕棿
+     */
+    @ApiModelProperty(value= "淇敼鏃堕棿")
+    @TableField("modi_time")
+    private Date modiTime;
+
+    /**
+     * 娣诲姞鏃堕棿
+     */
+    @ApiModelProperty(value= "娣诲姞鏃堕棿")
+    @TableField("appe_time")
+    private Date appeTime;
+
+    public TestMast() {}
+
+    public TestMast(String locNo,String barcode,String userId,Integer status,Date modiTime,Date appeTime) {
+        this.locNo = locNo;
+        this.barcode = barcode;
+        this.userId = userId;
+        this.status = status;
+        this.modiTime = modiTime;
+        this.appeTime = appeTime;
+    }
+
+//    TestMast testMast = new TestMast(
+//            null,    // 搴撲綅鍙穂闈炵┖]
+//            null,    // PACK鐮�
+//            null,    // 鐢ㄦ埛鐮�
+//            null,    // 鐘舵��
+//            null,    // 淇敼鏃堕棿
+//            null    // 娣诲姞鏃堕棿
+//    );
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Integer getChannel() {
+        return channel;
+    }
+
+    public void setChannel(Integer channel) {
+        this.channel = channel;
+    }
+
+    public String getLocNo() {
+        return locNo;
+    }
+
+    public void setLocNo(String locNo) {
+        this.locNo = locNo;
+    }
+
+    public String getBarcode() {
+        return barcode;
+    }
+
+    public void setBarcode(String barcode) {
+        this.barcode = barcode;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public String getStatus$(){
+        if (null == this.status){ return null; }
+        switch (this.status){
+            case 0:
+                return "寰呯敵璇�";
+            case 1:
+                return "鐢宠涓�";
+            case 2:
+                return "宸插鏍�";
+            case 3:
+                return "娴嬭瘯涓�";
+            case 4:
+                return "瀹屾垚";
+            default:
+                return String.valueOf(this.status);
+        }
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Date getModiTime() {
+        return modiTime;
+    }
+
+    public String getModiTime$(){
+        if (Cools.isEmpty(this.modiTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime);
+    }
+
+    public void setModiTime(Date modiTime) {
+        this.modiTime = modiTime;
+    }
+
+    public Date getAppeTime() {
+        return appeTime;
+    }
+
+    public String getAppeTime$(){
+        if (Cools.isEmpty(this.appeTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
+    }
+
+    public void setAppeTime(Date appeTime) {
+        this.appeTime = appeTime;
+    }
+
+
+}
diff --git a/src/main/java/com/zy/asrs/mapper/TestMastMapper.java b/src/main/java/com/zy/asrs/mapper/TestMastMapper.java
new file mode 100644
index 0000000..2c14584
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/TestMastMapper.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.mapper;
+
+import com.zy.asrs.entity.TestMast;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface TestMastMapper extends BaseMapper<TestMast> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/TestMastService.java b/src/main/java/com/zy/asrs/service/TestMastService.java
new file mode 100644
index 0000000..dec3212
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/TestMastService.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.service;
+
+import com.zy.asrs.entity.TestMast;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface TestMastService extends IService<TestMast> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 02717b6..2268ad4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -9,15 +9,13 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.mapper.BasCrnErrorMapper;
+import com.zy.asrs.mapper.TestMastMapper;
 import com.zy.asrs.mapper.WaitPakinMapper;
 import com.zy.asrs.mapper.WrkMastMapper;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.Utils;
 import com.zy.asrs.utils.VersionUtils;
-import com.zy.common.model.LocTypeDto;
-import com.zy.common.model.MatDto;
-import com.zy.common.model.SearchLocParam;
-import com.zy.common.model.StartupDto;
+import com.zy.common.model.*;
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.CollectionUtils;
 import com.zy.common.utils.HttpHandler;
@@ -87,9 +85,14 @@
     private BasErrLogService basErrLogService;
     @Autowired
     private BasCrnErrorMapper basCrnErrorMapper;
+    @Autowired
+    private TestMastService testMastService;
 
     @Value("${wms.url}")
     private String wmsUrl;
+
+    @Value("${test.url}")
+    private String testUrl;
 
     /**
      * 缁勬墭
@@ -1886,8 +1889,6 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
-
-
     }
 
     public void outOfDevp() {
@@ -1903,5 +1904,54 @@
         }
     }
 
+    /**
+     * 鏍规嵁PLC鎸夐挳娴嬭瘯淇″彿锛屽彂閫佸惎鍔ㄧ敵璇峰埌娴嬭瘯绯荤粺
+     */
+    public void startTest() {
+        try {
+            // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+            for (DevpSlave devp : slaveProperties.getDevp()) {
+                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                if(null != devpThread){
+                    if (devpThread.startSignal1 == 1){
+                        TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
+                        .eq("channel",1).eq("status",0));
+                        if(null != testMast){
+                            Date now = new Date();
+                            //http璇锋眰娴嬭瘯
+                            TestDto testDto = new TestDto();
+                            testDto.setLocNo(testMast.getLocNo());
+                            testDto.setBarcode(testMast.getBarcode());
+                            testDto.setUserId(testMast.getUserId());
+                            testDto.setRequestTime(DateUtils.convert(now));
+                            String response = new HttpHandler.Builder()
+                                    .setUri(testUrl)
+                                    .setPath("/testUrlPath")
+                                    .setJson(JSON.toJSONString(testDto))
+                                    .build()
+                                    .doPost();
+                            JSONObject jsonObject = JSON.parseObject(response);
+                            if (jsonObject.getInteger("code").equals(200)) {
+                                //鏇存柊娴嬭瘯琛ㄧ姸鎬�
+                                testMast.setStatus(1);
+                                testMast.setModiTime(now);
+                                testMastService.update(testMast,new EntityWrapper<TestMast>()
+                                        .eq("channel",1).eq("status",0));
+                                //澶嶄綅PLC淇″彿
+                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, 0));
+                            } else {
+                                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿},request锛歿},response锛歿}", testUrl+"/rpc/pakin/loc/v1", JSON.toJSONString(testDto), response);
+                            }
+
+                        }
+                    }
+                }
+
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
 
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/TestMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TestMastServiceImpl.java
new file mode 100644
index 0000000..4c7e828
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/TestMastServiceImpl.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service.impl;
+
+import com.zy.asrs.mapper.TestMastMapper;
+import com.zy.asrs.entity.TestMast;
+import com.zy.asrs.service.TestMastService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("testMastService")
+public class TestMastServiceImpl extends ServiceImpl<TestMastMapper, TestMast> implements TestMastService {
+
+}
diff --git a/src/main/java/com/zy/common/CodeBuilder.java b/src/main/java/com/zy/common/CodeBuilder.java
index c6802b2..974c59a 100644
--- a/src/main/java/com/zy/common/CodeBuilder.java
+++ b/src/main/java/com/zy/common/CodeBuilder.java
@@ -18,8 +18,9 @@
         generator.url="192.168.4.15:1433;databasename=gzynasrs";
         generator.username="sa";
         generator.password="sa@123";
-        generator.table="asr_fire_log";
+        generator.table="asr_test_mast";
         generator.packagePath="com.zy.asrs";
+        generator.controller=false;
         generator.htmlDetail=false;
         generator.html=false;
         generator.js=false;
diff --git a/src/main/java/com/zy/common/model/TestDto.java b/src/main/java/com/zy/common/model/TestDto.java
new file mode 100644
index 0000000..d0bad84
--- /dev/null
+++ b/src/main/java/com/zy/common/model/TestDto.java
@@ -0,0 +1,23 @@
+package com.zy.common.model;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2020/8/6
+ */
+@Data
+public class TestDto {
+
+    // 搴撲綅鍙�
+    private String locNo;
+
+    // 鐢ㄦ埛鐮�
+    private String userId;
+
+    // pack鐮�
+    private String barcode;
+
+    //璇锋眰鏃堕棿
+    private String requestTime;
+
+}
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 265eef0..ba3b5f1 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -45,9 +45,9 @@
 //                    mainService.ioConvert();
                     // 鍏ュ簱  ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
                     mainService.generateStoreWrkFile(); // 缁勬墭
-                    mainService.generateStoreWrkFile0(); // WMS鍏ュ簱
+//                    mainService.generateStoreWrkFile0(); // WMS鍏ュ簱
                     // 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
-                    mainService.stnToCrnStnPick();
+//                    mainService.stnToCrnStnPick();
                     // 鍑哄簱  ===>>  鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
                     mainService.crnStnToOutStn();
                     // 鍏ュ嚭搴�  ===>>  鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
@@ -67,6 +67,9 @@
 
                     mainService.outOfDevp();
 
+                    //鍚姩娴嬭瘯绯荤粺娴嬭瘯
+                    mainService.startTest();
+
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
diff --git a/src/main/java/com/zy/core/ServerBootstrap.java b/src/main/java/com/zy/core/ServerBootstrap.java
index 3098263..dddcf0c 100644
--- a/src/main/java/com/zy/core/ServerBootstrap.java
+++ b/src/main/java/com/zy/core/ServerBootstrap.java
@@ -103,13 +103,13 @@
             SlaveConnection.put(SlaveType.Barcode, barcode.getId(), barcodeThread);
         }
 
-        // 鍒濆鍖栨潯鐮佹壂鎻忎华绾跨▼
-        log.info("鍒濆鍖朣ocket绾跨▼...................................................");
-        for (SocketSlave socket : slaveProperties.getSocket()) {
-            SocketThread socketThread = new SocketThread(socket);
-            new Thread(socketThread).start();
-            SlaveConnection.put(SlaveType.Socket, socket.getId(), socketThread);
-        }
+//        // 鍒濆鍖栨潯鐮佹壂鎻忎华绾跨▼
+//        log.info("鍒濆鍖朣ocket绾跨▼...................................................");
+//        for (SocketSlave socket : slaveProperties.getSocket()) {
+//            SocketThread socketThread = new SocketThread(socket);
+//            new Thread(socketThread).start();
+//            SlaveConnection.put(SlaveType.Socket, socket.getId(), socketThread);
+//        }
 //        // 鍒濆鍖朙ED绾跨▼
 //        log.info("鍒濆鍖朙ED绾跨▼...................................................");
 //        for (LedSlave led : slaveProperties.getLed()) {
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 7cdf2e5..776219a 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -82,6 +82,10 @@
                     case 2:
                         write((StaProtocol)task.getData());
                         break;
+                    //澶嶄綅娴嬭瘯淇″彿
+                    case 3:
+                        siemensS7Net.Write("DB100." + (150 + ((int)task.getData()) * 2), 0);
+                        break;
                     default:
                         break;
                 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 11cd314..1bcb92f 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -58,15 +58,33 @@
     crnInStn[0]:
       devpPlcId: ${wcs-slave.devp[0].id}
       staNo: 103
-      row: 3
+      row: 1
       bay: 1
+      lev: 1
+    crnInStn[1]:
+      devpPlcId: ${wcs-slave.devp[0].id}
+      staNo: 108
+      row: 1
+      bay: 19
       lev: 1
     # 鍫嗗灈鏈哄嚭搴撶珯鐐�
     crnOutStn[0]:
       devpPlcId: ${wcs-slave.devp[0].id}
-      staNo: 101
+      staNo: 107
       row: 2
       bay: 1
+      lev: 1
+    crnOutStn[1]:
+      devpPlcId: ${wcs-slave.devp[0].id}
+      staNo: 108
+      row: 1
+      bay: 19
+      lev: 1
+    crnOutStn[2]:
+      devpPlcId: ${wcs-slave.devp[0].id}
+      staNo: 109
+      row: 2
+      bay: 19
       lev: 1
 
   # 杈撻�佺嚎
@@ -85,7 +103,7 @@
       staNo: 103
     # 鍑哄簱鍙�1
     outSta[0]:
-      staNo: 102
+      staNo: 104
 #    # 鎷f枡鍏ュ簱鍙�1
 #    pickSta[0]:
 #      staNo: 103
@@ -95,19 +113,19 @@
     id: 1
     ip: 10.10.10.52
     port: 51236
-   # LED1
-  led[0]:
-    id: 1
-    ip: 10.10.10.60
-    port: 5005
-    devpPlcId: ${wcs-slave.devp[0].id}
-    staArr: 110
-
-  #socket
-  socket[0]:
-    id: 1
-    ip: 10.10.10.100
-    port: 10001
+#   # LED1
+#  led[0]:
+#    id: 1
+#    ip: 10.10.10.60
+#    port: 5005
+#    devpPlcId: ${wcs-slave.devp[0].id}
+#    staArr: 110
+#
+#  #socket
+#  socket[0]:
+#    id: 1
+#    ip: 10.10.10.100
+#    port: 10001
 
 # tcp鏈嶅姟绔厤缃�
 tcp:
@@ -126,4 +144,7 @@
   #涓婁笅琛屾棩蹇楁墦鍗�
   printPacLog: true
   #鏉$爜闀垮害
-  barcodeLen: 8
\ No newline at end of file
+  barcodeLen: 8
+
+test:
+  url: 127.0.0.1:8080/test
\ No newline at end of file
diff --git a/src/main/resources/mapper/TestMastMapper.xml b/src/main/resources/mapper/TestMastMapper.xml
new file mode 100644
index 0000000..6d57ba3
--- /dev/null
+++ b/src/main/resources/mapper/TestMastMapper.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zy.asrs.mapper.TestMastMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.TestMast">
+        <id column="id" property="id" />
+        <result column="loc_no" property="locNo" />
+        <result column="barcode" property="barcode" />
+        <result column="userId" property="userId" />
+        <result column="status" property="status" />
+        <result column="modi_time" property="modiTime" />
+        <result column="appe_time" property="appeTime" />
+
+    </resultMap>
+
+</mapper>

--
Gitblit v1.9.1