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