From 5a3218fc35dd3e949bb017c77839aedda8c528c8 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 25 四月 2024 18:10:22 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java | 12
src/main/java/com/zy/asrs/entity/BasRgv.java | 271 ++++-----
src/main/resources/mapper/BasRgvErrMapper.xml | 16
src/main/java/com/zy/asrs/service/BasRgvErrService.java | 8
src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java | 12
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 251 --------
src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java | 12
src/main/java/com/zy/asrs/service/WrkMastStaService.java | 8
src/main/java/com/zy/core/thread/ZyRgvThread.java | 351 ++++-------
src/main/java/com/zy/common/CodeBuilder.java | 4
src/main/resources/mapper/WrkMastStaMapper.xml | 24
src/main/java/com/zy/asrs/entity/WrkMastSta.java | 178 ++++++
src/main/java/com/zy/core/model/DevpSlave.java | 2
src/main/java/com/zy/asrs/entity/BasRgvOpt.java | 285 +++++----
src/main/java/com/zy/core/cache/OutputQueue.java | 2
src/main/java/com/zy/core/MainProcess.java | 5
src/main/java/com/zy/core/model/protocol/RgvProtocol.java | 4
src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java | 12
src/main/java/com/zy/core/model/command/RgvCommand.java | 4
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 36 -
src/main/resources/application.yml | 60 +
src/main/java/com/zy/asrs/entity/BasRgvErr.java | 127 ++++
22 files changed, 865 insertions(+), 819 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/BasRgv.java b/src/main/java/com/zy/asrs/entity/BasRgv.java
index bdd5169..79e6b56 100644
--- a/src/main/java/com/zy/asrs/entity/BasRgv.java
+++ b/src/main/java/com/zy/asrs/entity/BasRgv.java
@@ -3,9 +3,15 @@
import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.enums.IdType;
import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.format.annotation.DateTimeFormat;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
import java.text.SimpleDateFormat;
import java.util.Date;
@@ -29,194 +35,152 @@
private Integer rgvNo;
/**
- * 妯″紡
+ * 鍙叆
*/
- @ApiModelProperty(value= "妯″紡")
- private Integer mode;
+ @ApiModelProperty(value= "鍙叆")
+ @TableField("in_enable")
+ private Integer inEnable;
/**
- * 鐘舵��
+ * 鍙嚭
*/
- @ApiModelProperty(value= "鐘舵��")
+ @ApiModelProperty(value= "鍙嚭")
+ @TableField("out_enable")
+ private Integer outEnable;
+
+ /**
+ * 浣滀笟鎬�
+ */
+ @ApiModelProperty(value= "浣滀笟鎬�")
+ @TableField("rgv_sts")
+ private Integer rgvSts;
+
+ /**
+ * 浠诲姟鍙�
+ */
+ @ApiModelProperty(value= "浠诲姟鍙�")
+ @TableField("wrk_no1")
+ private Integer wrkNo1;
+
+ /**
+ * 鍫嗗灈鏈哄彿
+ */
+ @ApiModelProperty(value= "鍫嗗灈鏈哄彿")
+ @TableField("wrk_no2")
+ private Integer wrkNo2;
+
+ /**
+ * 閿欒鐮�
+ */
+ @ApiModelProperty(value= "閿欒鐮�")
+ @TableField("rgv_err")
+ private Long rgvErr;
+
+ /**
+ * 鏍囪
+ */
+ @ApiModelProperty(value= "鏍囪")
+ @TableField("pak_mk")
+ private String pakMk;
+
+ /**
+ * 鐘舵�� 1: 姝e父 0: 绂佺敤
+ */
+ @ApiModelProperty(value= "鐘舵�� 1: 姝e父 0: 绂佺敤 ")
private Integer status;
/**
- * 宸ヤ綅1宸ヤ綔鍙�
+ * 娣诲姞浜哄憳
*/
- @ApiModelProperty(value= "宸ヤ綅1宸ヤ綔鍙�")
- @TableField("task_no1")
- private Integer taskNo1;
+ @ApiModelProperty(value= "娣诲姞浜哄憳")
+ @TableField("create_by")
+ private Long createBy;
/**
- * 宸ヤ綅1鏈夌墿淇″彿
+ * 娣诲姞鏃堕棿
*/
- @ApiModelProperty(value= "宸ヤ綅1鏈夌墿淇″彿")
- private Integer loaded1;
-
- /**
- * RGV褰撳墠浣嶇疆
- */
- @ApiModelProperty(value= "RGV褰撳墠浣嶇疆")
- @TableField("rgv_pos")
- private Integer rgvPos;
-
- /**
- * 璧拌鍦ㄥ畾浣�
- */
- @ApiModelProperty(value= "璧拌鍦ㄥ畾浣�")
- @TableField("walk_pos")
- private Integer walkPos;
-
- /**
- * 宸ヤ綅2宸ヤ綔鍙�
- */
- @ApiModelProperty(value= "宸ヤ綅2宸ヤ綔鍙�")
- @TableField("task_no2")
- private Integer taskNo2;
-
- /**
- * 宸ヤ綅2鏈夌墿淇″彿
- */
- @ApiModelProperty(value= "宸ヤ綅2鏈夌墿淇″彿")
- private Integer loaded2;
-
- /**
- * 宸ヤ綅1浠诲姟瀹屾垚淇″彿
- */
- @ApiModelProperty(value= "宸ヤ綅1浠诲姟瀹屾垚淇″彿")
- @TableField("task_finish1")
- private Integer taskFinish1;
-
- /**
- * 宸ヤ綅2浠诲姟瀹屾垚淇″彿
- */
- @ApiModelProperty(value= "宸ヤ綅2浠诲姟瀹屾垚淇″彿")
- @TableField("task_finish2")
- private Integer taskFinish2;
-
- /**
- * 寮傚父鐮�
- */
- @ApiModelProperty(value= "寮傚父鐮�")
- private Integer alarm;
-
- /**
- * 蹇冭烦
- */
- @ApiModelProperty(value= "蹇冭烦")
- private Integer heart;
-
- /**
- * 澶囩敤1
- */
- @ApiModelProperty(value= "澶囩敤1")
- private Integer temp1;
-
- /**
- * 澶囩敤2
- */
- @ApiModelProperty(value= "澶囩敤2")
- private Integer temp2;
-
- /**
- * 澶囩敤3
- */
- @ApiModelProperty(value= "澶囩敤3")
- private Integer temp3;
-
- /**
- * 澶囩敤4
- */
- @ApiModelProperty(value= "澶囩敤4")
- private Integer temp4;
-
- /**
- * 澶囩敤5
- */
- @ApiModelProperty(value= "澶囩敤5")
- private Integer temp5;
-
- /**
- * 鍒涘缓鏃堕棿
- */
- @ApiModelProperty(value= "鍒涘缓鏃堕棿")
+ @ApiModelProperty(value= "娣诲姞鏃堕棿")
@TableField("create_time")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
- * 鍒涘缓浜哄憳
+ * 淇敼浜哄憳
*/
- @ApiModelProperty(value= "鍒涘缓浜哄憳")
- @TableField("create_by")
- private Long createBy;
+ @ApiModelProperty(value= "淇敼浜哄憳")
+ @TableField("update_by")
+ private Long updateBy;
/**
- * 鏇存柊鏃堕棿
+ * 淇敼鏃堕棿
*/
- @ApiModelProperty(value= "鏇存柊鏃堕棿")
+ @ApiModelProperty(value= "淇敼鏃堕棿")
@TableField("update_time")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**
- * 鏇存柊浜哄憳
+ * 澶囨敞
*/
- @ApiModelProperty(value= "鏇存柊浜哄憳")
- @TableField("update_by")
- private Long updateBy;
+ @ApiModelProperty(value= "澶囨敞")
+ private String memo;
public BasRgv() {}
- public BasRgv(Integer rgvNo,Integer mode,Integer status,Integer taskNo1,Integer loaded1,Integer rgvPos,Integer walkPos,Integer taskNo2,Integer loaded2,Integer taskFinish1,Integer taskFinish2,Integer alarm,Integer heart,Integer temp1,Integer temp2,Integer temp3,Integer temp4,Integer temp5,Date createTime,Long createBy,Date updateTime,Long updateBy) {
+ public BasRgv(Integer rgvNo,Integer inEnable,Integer outEnable,Integer rgvSts,Integer wrkNo1,Integer wrkNo2,Long rgvErr,String pakMk,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
this.rgvNo = rgvNo;
- this.mode = mode;
+ this.inEnable = inEnable;
+ this.outEnable = outEnable;
+ this.rgvSts = rgvSts;
+ this.wrkNo1 = wrkNo1;
+ this.wrkNo2 = wrkNo2;
+ this.rgvErr = rgvErr;
+ this.pakMk = pakMk;
this.status = status;
- this.taskNo1 = taskNo1;
- this.loaded1 = loaded1;
- this.rgvPos = rgvPos;
- this.walkPos = walkPos;
- this.taskNo2 = taskNo2;
- this.loaded2 = loaded2;
- this.taskFinish1 = taskFinish1;
- this.taskFinish2 = taskFinish2;
- this.alarm = alarm;
- this.heart = heart;
- this.temp1 = temp1;
- this.temp2 = temp2;
- this.temp3 = temp3;
- this.temp4 = temp4;
- this.temp5 = temp5;
- this.createTime = createTime;
this.createBy = createBy;
- this.updateTime = updateTime;
+ this.createTime = createTime;
this.updateBy = updateBy;
+ this.updateTime = updateTime;
+ this.memo = memo;
}
// BasRgv basRgv = new BasRgv(
// null, // RGV缂栧彿[闈炵┖]
-// null, // 妯″紡
+// null, // 鍙叆
+// null, // 鍙嚭
+// null, // 浣滀笟鎬�
+// null, // 浠诲姟鍙�
+// null, // 鍫嗗灈鏈哄彿
+// null, // 閿欒鐮�
+// null, // 鏍囪
// null, // 鐘舵��
-// null, // 宸ヤ綅1宸ヤ綔鍙�
-// null, // 宸ヤ綅1鏈夌墿淇″彿
-// null, // RGV褰撳墠浣嶇疆
-// null, // 璧拌鍦ㄥ畾浣�
-// null, // 宸ヤ綅2宸ヤ綔鍙�
-// null, // 宸ヤ綅2鏈夌墿淇″彿
-// null, // 宸ヤ綅1浠诲姟瀹屾垚淇″彿
-// null, // 宸ヤ綅2浠诲姟瀹屾垚淇″彿
-// null, // 寮傚父鐮�
-// null, // 蹇冭烦
-// null, // 澶囩敤1
-// null, // 澶囩敤2
-// null, // 澶囩敤3
-// null, // 澶囩敤4
-// null, // 澶囩敤5
-// null, // 鍒涘缓鏃堕棿
-// null, // 鍒涘缓浜哄憳
-// null, // 鏇存柊鏃堕棿
-// null // 鏇存柊浜哄憳
+// null, // 娣诲姞浜哄憳
+// null, // 娣诲姞鏃堕棿
+// null, // 淇敼浜哄憳
+// null, // 淇敼鏃堕棿
+// null // 澶囨敞
// );
+
+ public String getStatus$(){
+ if (null == this.status){ return null; }
+ switch (this.status){
+ case 1:
+ return "姝e父";
+ case 0:
+ return "绂佺敤";
+ default:
+ return String.valueOf(this.status);
+ }
+ }
+
+ public String getCreateBy$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.createBy);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
public String getCreateTime$(){
if (Cools.isEmpty(this.createTime)){
@@ -225,6 +189,15 @@
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
}
+ public String getUpdateBy$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.updateBy);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
public String getUpdateTime$(){
if (Cools.isEmpty(this.updateTime)){
return "";
diff --git a/src/main/java/com/zy/asrs/entity/BasRgvErr.java b/src/main/java/com/zy/asrs/entity/BasRgvErr.java
new file mode 100644
index 0000000..4641344
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/BasRgvErr.java
@@ -0,0 +1,127 @@
+package com.zy.asrs.entity;
+
+import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@Data
+@TableName("asr_bas_rgv_err")
+public class BasRgvErr implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 寮傚父鐮�
+ */
+ @ApiModelProperty(value= "寮傚父鐮�")
+ @TableId(value = "error_code", type = IdType.INPUT)
+ @TableField("error_code")
+ private Long errorCode;
+
+ /**
+ * 寮傚父
+ */
+ @ApiModelProperty(value= "寮傚父")
+ @TableField("err_name")
+ private String errName;
+
+ /**
+ * 淇敼浜哄憳
+ */
+ @ApiModelProperty(value= "淇敼浜哄憳")
+ @TableField("modi_user")
+ private Long modiUser;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ @TableField("modi_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date modiTime;
+
+ /**
+ * 娣诲姞浜哄憳
+ */
+ @ApiModelProperty(value= "娣诲姞浜哄憳")
+ @TableField("appe_user")
+ private Long appeUser;
+
+ /**
+ * 娣诲姞鏃堕棿
+ */
+ @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ @TableField("appe_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date appeTime;
+
+ public BasRgvErr() {}
+
+ public BasRgvErr(Long errorCode,String errName,Long modiUser,Date modiTime,Long appeUser,Date appeTime) {
+ this.errorCode = errorCode;
+ this.errName = errName;
+ this.modiUser = modiUser;
+ this.modiTime = modiTime;
+ this.appeUser = appeUser;
+ this.appeTime = appeTime;
+ }
+
+// BasRgvErr basRgvErr = new BasRgvErr(
+// null, // 寮傚父鐮乕闈炵┖]
+// null, // 寮傚父
+// null, // 淇敼浜哄憳
+// null, // 淇敼鏃堕棿
+// null, // 娣诲姞浜哄憳
+// null // 娣诲姞鏃堕棿
+// );
+
+ public String getModiUser$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.modiUser);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
+ public String getModiTime$(){
+ if (Cools.isEmpty(this.modiTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime);
+ }
+
+ public String getAppeUser$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.appeUser);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
+ public String getAppeTime$(){
+ if (Cools.isEmpty(this.appeTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/asrs/entity/BasRgvOpt.java b/src/main/java/com/zy/asrs/entity/BasRgvOpt.java
index ebe6d41..941ca06 100644
--- a/src/main/java/com/zy/asrs/entity/BasRgvOpt.java
+++ b/src/main/java/com/zy/asrs/entity/BasRgvOpt.java
@@ -1,13 +1,16 @@
package com.zy.asrs.entity;
-import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId;
-import com.baomidou.mybatisplus.enums.IdType;
-import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableField;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.format.annotation.DateTimeFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
+import com.core.common.SpringUtils;
+import com.zy.system.service.UserService;
+import com.zy.system.entity.User;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -20,115 +23,93 @@
private static final long serialVersionUID = 1L;
+ /**
+ * 浠诲姟鍙�
+ */
+ @ApiModelProperty(value= "浠诲姟鍙�")
+ @TableField("wrk_no1")
+ private Integer wrkNo1;
+
@ApiModelProperty(value= "")
- @TableId(value = "id", type = IdType.INPUT)
- private Long id;
+ @TableField("wrk_no2")
+ private Integer wrkNo2;
/**
- * RGV缂栧彿
+ * 绌挎杞�
*/
- @ApiModelProperty(value= "RGV缂栧彿")
+ @ApiModelProperty(value= "绌挎杞�")
@TableField("rgv_no")
private Integer rgvNo;
/**
- * 浠诲姟瀹屾垚纭浣�
+ * 涓嬪彂鏃堕棿
*/
- @ApiModelProperty(value= "浠诲姟瀹屾垚纭浣�")
- @TableField("ack_finish")
- private Integer ackFinish;
-
- /**
- * 宸ヤ綅1宸ヤ綔鍙�
- */
- @ApiModelProperty(value= "宸ヤ綅1宸ヤ綔鍙�")
- @TableField("task_no1")
- private Integer taskNo1;
-
- /**
- * 宸ヤ綅1妯″紡
- */
- @ApiModelProperty(value= "宸ヤ綅1妯″紡")
- @TableField("task_mode1")
- private Integer taskMode1;
-
- /**
- * 宸ヤ綅1婧愮珯
- */
- @ApiModelProperty(value= "宸ヤ綅1婧愮珯")
- @TableField("source_sta_no1")
- private Integer sourceStaNo1;
-
- /**
- * 宸ヤ綅1鐩爣绔�
- */
- @ApiModelProperty(value= "宸ヤ綅1鐩爣绔�")
- @TableField("destination_sta_no_1")
- private Integer destinationStaNo1;
-
- /**
- * 宸ヤ綅2宸ヤ綔鍙�
- */
- @ApiModelProperty(value= "宸ヤ綅2宸ヤ綔鍙�")
- @TableField("task_no2")
- private Integer taskNo2;
-
- /**
- * 宸ヤ綅2妯″紡
- */
- @ApiModelProperty(value= "宸ヤ綅2妯″紡")
- @TableField("task_mode2")
- private Integer taskMode2;
-
- /**
- * 宸ヤ綅2婧愮珯
- */
- @ApiModelProperty(value= "宸ヤ綅2婧愮珯")
- @TableField("source_sta_no2")
- private Integer sourceStaNo2;
-
- /**
- * 宸ヤ綅2鐩爣绔�
- */
- @ApiModelProperty(value= "宸ヤ綅2鐩爣绔�")
- @TableField("destination_sta_no2")
- private Integer destinationStaNo2;
-
- /**
- * 浠诲姟纭
- */
- @ApiModelProperty(value= "浠诲姟纭")
- private Integer command;
-
- /**
- * 鍒涘缓鏃堕棿
- */
- @ApiModelProperty(value= "鍒涘缓鏃堕棿")
- @TableField("create_time")
+ @ApiModelProperty(value= "涓嬪彂鏃堕棿")
+ @TableField("send_time")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
- private Date createTime;
+ private Date sendTime;
/**
- * 鍒涘缓浜哄憳
+ * 浣滀笟
*/
- @ApiModelProperty(value= "鍒涘缓浜哄憳")
- @TableField("create_by")
- private Long createBy;
+ @ApiModelProperty(value= "浣滀笟")
+ private String mode;
/**
- * 鏇存柊鏃堕棿
+ * 婧愭帓
*/
- @ApiModelProperty(value= "鏇存柊鏃堕棿")
- @TableField("update_time")
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
- private Date updateTime;
+ @ApiModelProperty(value= "婧愭帓")
+ @TableField("source_row")
+ private Integer sourceRow;
/**
- * 鏇存柊浜哄憳
+ * 婧愬垪
*/
- @ApiModelProperty(value= "鏇存柊浜哄憳")
- @TableField("update_by")
- private Long updateBy;
+ @ApiModelProperty(value= "婧愬垪")
+ @TableField("source_bay")
+ private Integer sourceBay;
+
+ /**
+ * 婧愬眰
+ */
+ @ApiModelProperty(value= "婧愬眰")
+ @TableField("source_lev")
+ private Integer sourceLev;
+
+ /**
+ * 婧愮珯
+ */
+ @ApiModelProperty(value= "婧愮珯")
+ @TableField("source_sta")
+ private Integer sourceSta;
+
+ /**
+ * 鐩爣鎺�
+ */
+ @ApiModelProperty(value= "鐩爣鎺�")
+ @TableField("pos_row")
+ private Integer posRow;
+
+ /**
+ * 鐩爣鍒�
+ */
+ @ApiModelProperty(value= "鐩爣鍒�")
+ @TableField("pos_bay")
+ private Integer posBay;
+
+ /**
+ * 鐩爣灞�
+ */
+ @ApiModelProperty(value= "鐩爣灞�")
+ @TableField("pos_lev")
+ private Integer posLev;
+
+ /**
+ * 鐩爣绔�
+ */
+ @ApiModelProperty(value= "鐩爣绔�")
+ @TableField("pos_sta")
+ private Integer posSta;
/**
* 鍝嶅簲缁撴灉 1: 姝e父 0: 澶辫触
@@ -136,59 +117,79 @@
@ApiModelProperty(value= "鍝嶅簲缁撴灉 1: 姝e父 0: 澶辫触 ")
private Integer response;
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ @TableField("update_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date updateTime;
+
+ /**
+ * 淇敼浜哄憳
+ */
+ @ApiModelProperty(value= "淇敼浜哄憳")
+ @TableField("update_by")
+ private Long updateBy;
+
+ /**
+ * 澶囨敞
+ */
+ @ApiModelProperty(value= "澶囨敞")
+ private String memo;
+
+ @ApiModelProperty(value= "")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
public BasRgvOpt() {}
- public BasRgvOpt(Integer rgvNo,Integer ackFinish,Integer taskNo1,Integer taskMode1,Integer sourceStaNo1,Integer destinationStaNo1,Integer taskNo2,Integer taskMode2,Integer sourceStaNo2,Integer destinationStaNo2,Integer command,Date createTime,Long createBy,Date updateTime,Long updateBy,Integer response) {
+ public BasRgvOpt(Integer wrkNo1,Integer wrkNo2,Integer rgvNo,Date sendTime,String mode,Integer sourceRow,Integer sourceBay,Integer sourceLev,Integer sourceSta,Integer posRow,Integer posBay,Integer posLev,Integer posSta,Integer response,Date updateTime,Long updateBy,String memo) {
+ this.wrkNo1 = wrkNo1;
+ this.wrkNo2 = wrkNo2;
this.rgvNo = rgvNo;
- this.ackFinish = ackFinish;
- this.taskNo1 = taskNo1;
- this.taskMode1 = taskMode1;
- this.sourceStaNo1 = sourceStaNo1;
- this.destinationStaNo1 = destinationStaNo1;
- this.taskNo2 = taskNo2;
- this.taskMode2 = taskMode2;
- this.sourceStaNo2 = sourceStaNo2;
- this.destinationStaNo2 = destinationStaNo2;
- this.command = command;
- this.createTime = createTime;
- this.createBy = createBy;
+ this.sendTime = sendTime;
+ this.mode = mode;
+ this.sourceRow = sourceRow;
+ this.sourceBay = sourceBay;
+ this.sourceLev = sourceLev;
+ this.sourceSta = sourceSta;
+ this.posRow = posRow;
+ this.posBay = posBay;
+ this.posLev = posLev;
+ this.posSta = posSta;
+ this.response = response;
this.updateTime = updateTime;
this.updateBy = updateBy;
- this.response = response;
+ this.memo = memo;
}
// BasRgvOpt basRgvOpt = new BasRgvOpt(
-// null, // [闈炵┖]
-// null, // RGV缂栧彿
-// null, // 浠诲姟瀹屾垚纭浣�
-// null, // 宸ヤ綅1宸ヤ綔鍙�
-// null, // 宸ヤ綅1妯″紡
-// null, // 宸ヤ綅1婧愮珯
-// null, // 宸ヤ綅1鐩爣绔�
-// null, // 宸ヤ綅2宸ヤ綔鍙�
-// null, // 宸ヤ綅2妯″紡
-// null, // 宸ヤ綅2婧愮珯
-// null, // 宸ヤ綅2鐩爣绔�
-// null, // 浠诲姟纭
-// null, // 鍒涘缓鏃堕棿
-// null, // 鍒涘缓浜哄憳
-// null, // 鏇存柊鏃堕棿
-// null, // 鏇存柊浜哄憳
-// null // 鍝嶅簲缁撴灉
+// null, // 浠诲姟鍙�
+// null, //
+// null, // 绌挎杞�
+// null, // 涓嬪彂鏃堕棿
+// null, // 浣滀笟
+// null, // 婧愭帓
+// null, // 婧愬垪
+// null, // 婧愬眰
+// null, // 婧愮珯
+// null, // 鐩爣鎺�
+// null, // 鐩爣鍒�
+// null, // 鐩爣灞�
+// null, // 鐩爣绔�
+// null, // 鍝嶅簲缁撴灉
+// null, // 淇敼鏃堕棿
+// null, // 淇敼浜哄憳
+// null, // 澶囨敞
+
// );
- public String getCreateTime$(){
- if (Cools.isEmpty(this.createTime)){
+ public String getSendTime$(){
+ if (Cools.isEmpty(this.sendTime)){
return "";
}
- return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
- }
-
- public String getUpdateTime$(){
- if (Cools.isEmpty(this.updateTime)){
- return "";
- }
- return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.sendTime);
}
public String getResponse$(){
@@ -203,5 +204,21 @@
}
}
+ public String getUpdateTime$(){
+ if (Cools.isEmpty(this.updateTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
+ }
+
+ public String getUpdateBy$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.updateBy);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/entity/WrkMastSta.java b/src/main/java/com/zy/asrs/entity/WrkMastSta.java
new file mode 100644
index 0000000..c777b4d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/WrkMastSta.java
@@ -0,0 +1,178 @@
+package com.zy.asrs.entity;
+
+import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.baomidou.mybatisplus.annotations.TableField;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import com.baomidou.mybatisplus.annotations.TableName;
+import java.io.Serializable;
+
+@Data
+@TableName("asr_wrk_mast_sta")
+public class WrkMastSta implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID
+ */
+ @ApiModelProperty(value= "ID")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 宸ヤ綔鍙�
+ */
+ @ApiModelProperty(value= "宸ヤ綔鍙�")
+ @TableField("wrk_no")
+ private Long wrkNo;
+
+ /**
+ * 宸ヤ綔妗e紑濮嬩綅缃�
+ */
+ @ApiModelProperty(value= "宸ヤ綔妗e紑濮嬩綅缃�")
+ @TableField("wrk_start")
+ private Integer wrkStart;
+
+ /**
+ * 宸ヤ綔妗g粨鏉熶綅缃�
+ */
+ @ApiModelProperty(value= "宸ヤ綔妗g粨鏉熶綅缃�")
+ @TableField("wrk_end")
+ private Integer wrkEnd;
+
+ /**
+ * 灏忚溅鎺ヨ揣浣嶇疆
+ */
+ @ApiModelProperty(value= "灏忚溅鎺ヨ揣浣嶇疆")
+ @TableField("sta_start")
+ private Integer staStart;
+
+ /**
+ * 灏忚溅鏀捐揣浣嶇疆
+ */
+ @ApiModelProperty(value= "灏忚溅鏀捐揣浣嶇疆")
+ @TableField("sta_end")
+ private Integer staEnd;
+
+ /**
+ * 娣诲姞鏃堕棿
+ */
+ @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ @TableField("create_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ @TableField("update_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date updateTime;
+
+ /**
+ * 绫诲瀷 0:婊$増 1:绌烘澘
+ */
+ @ApiModelProperty(value= "绫诲瀷 0:婊$増 1:绌烘澘")
+ private Integer type;
+
+ /**
+ * 宸ヤ綔鐘舵�� 0锛氬垵濮� 1锛氱瓑寰呭皬杞﹀彇 2锛氱瓑寰呭皬杞︽斁 3锛氬畬鎴�
+ */
+ @ApiModelProperty(value= "宸ヤ綔鐘舵�� 0锛氬垵濮� 1锛氱瓑寰呭皬杞﹀彇 2锛氱瓑寰呭皬杞︽斁 3锛氬畬鎴�")
+ @TableField("wrk_sts")
+ private Integer wrkSts;
+
+ /**
+ * 琛屽彿
+ */
+ @ApiModelProperty(value= "琛屽彿")
+ @TableField("line_number")
+ private Integer lineNumber;
+
+ /**
+ * 宸ヤ綔绫诲瀷 绫诲瀷 1:鍙栵紙鍙犵洏锛� 2锛氭斁 3锛氬彇鏀� 4锛氭媶鐩�
+ */
+ @ApiModelProperty(value= "宸ヤ綔绫诲瀷 绫诲瀷 1:鍙栵紙鍙犵洏锛� 2锛氭斁 3锛氬彇鏀� 4锛氭媶鐩�")
+ @TableField("wrk_type")
+ private Integer wrkType;
+
+ /**
+ * 鏍囪鏃堕棿
+ */
+ @ApiModelProperty(value= "鏍囪鏃堕棿")
+ @TableField("bign_time")
+ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date bignTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("wrk_crn")
+ private Integer wrkCrn;
+
+ public WrkMastSta() {}
+
+ public WrkMastSta(Long wrkNo,Integer wrkStart,Integer wrkEnd,Integer staStart,Integer staEnd,Date createTime,Date updateTime,Integer type,Integer wrkSts,Integer lineNumber,Integer wrkType,Date bignTime,Integer wrkCrn) {
+ this.wrkNo = wrkNo;
+ this.wrkStart = wrkStart;
+ this.wrkEnd = wrkEnd;
+ this.staStart = staStart;
+ this.staEnd = staEnd;
+ this.createTime = createTime;
+ this.updateTime = updateTime;
+ this.type = type;
+ this.wrkSts = wrkSts;
+ this.lineNumber = lineNumber;
+ this.wrkType = wrkType;
+ this.bignTime = bignTime;
+ this.wrkCrn = wrkCrn;
+ }
+
+// WrkMastSta wrkMastSta = new WrkMastSta(
+// null, // 宸ヤ綔鍙穂闈炵┖]
+// null, // 宸ヤ綔妗e紑濮嬩綅缃甗闈炵┖]
+// null, // 宸ヤ綔妗g粨鏉熶綅缃甗闈炵┖]
+// null, // 灏忚溅鎺ヨ揣浣嶇疆[闈炵┖]
+// null, // 灏忚溅鏀捐揣浣嶇疆[闈炵┖]
+// null, // 娣诲姞鏃堕棿
+// null, // 淇敼鏃堕棿
+// null, // 绫诲瀷 0:婊$増 1:绌烘澘[闈炵┖]
+// null, // 宸ヤ綔鐘舵�� 0锛氬垵濮� 1锛氱瓑寰呭皬杞﹀彇 2锛氱瓑寰呭皬杞︽斁 3锛氬畬鎴怺闈炵┖]
+// null, // 琛屽彿[闈炵┖]
+// null, // 宸ヤ綔绫诲瀷 绫诲瀷 1:鍙栵紙鍙犵洏锛� 2锛氭斁 3锛氬彇鏀� 4锛氭媶鐩榌闈炵┖]
+// null, // 鏍囪鏃堕棿
+// null //
+// );
+
+ public String getCreateTime$(){
+ if (Cools.isEmpty(this.createTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
+ }
+
+ public String getUpdateTime$(){
+ if (Cools.isEmpty(this.updateTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
+ }
+
+ public String getBignTime$(){
+ if (Cools.isEmpty(this.bignTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.bignTime);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java b/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java
new file mode 100644
index 0000000..4b3a44e
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/BasRgvErrMapper.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.mapper;
+
+import com.zy.asrs.entity.BasRgvErr;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface BasRgvErrMapper extends BaseMapper<BasRgvErr> {
+
+}
diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
new file mode 100644
index 0000000..fef59fb
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.mapper;
+
+import com.zy.asrs.entity.WrkMastSta;
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface WrkMastStaMapper extends BaseMapper<WrkMastSta> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/BasRgvErrService.java b/src/main/java/com/zy/asrs/service/BasRgvErrService.java
new file mode 100644
index 0000000..754bb63
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/BasRgvErrService.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.service;
+
+import com.zy.asrs.entity.BasRgvErr;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface BasRgvErrService extends IService<BasRgvErr> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/WrkMastStaService.java b/src/main/java/com/zy/asrs/service/WrkMastStaService.java
new file mode 100644
index 0000000..9a08d24
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/WrkMastStaService.java
@@ -0,0 +1,8 @@
+package com.zy.asrs.service;
+
+import com.zy.asrs.entity.WrkMastSta;
+import com.baomidou.mybatisplus.service.IService;
+
+public interface WrkMastStaService extends IService<WrkMastSta> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java
new file mode 100644
index 0000000..dcf62fd
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/BasRgvErrServiceImpl.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service.impl;
+
+import com.zy.asrs.mapper.BasRgvErrMapper;
+import com.zy.asrs.entity.BasRgvErr;
+import com.zy.asrs.service.BasRgvErrService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("basRgvErrService")
+public class BasRgvErrServiceImpl extends ServiceImpl<BasRgvErrMapper, BasRgvErr> implements BasRgvErrService {
+
+}
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 41c240f..d4eaf2f 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -603,6 +603,7 @@
if (crn.getId() == 5){
continue;
}
+
this.crnStnToLoc(crn, crnProtocol); // 鍏ュ簱
crnProtocol.setLastIo("O");
}
@@ -2020,261 +2021,11 @@
}
- //RGV鎼繍
- public synchronized void rgvIoExecute() {
- for (RgvSlave slave : slaveProperties.getRgv()) {
- ZyRgvThread rgvThread = (ZyRgvThread) SlaveConnection.get(SlaveType.Rgv, slave.getId());
- if (rgvThread == null) {
- return;
- }
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- return;
- }
- // 鍒ゆ柇RGV鏄惁绌洪棽
- if (rgvProtocol.getModeType() == RgvModeType.COMPUTER
- && rgvProtocol.getStatusType() == RgvStatusType.IDLE) {
- // 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡锛屽垯浼樺厛鎵弿鍑哄簱绔欑偣
- if (rgvProtocol.getLastIo().equals("I")) {
- this.rgvOutExecute(rgvThread, rgvProtocol);//鍑哄簱
- rgvProtocol.setLastIo("O");
- }else {
- this.rgvInExecute(rgvThread, rgvProtocol);//鍏ュ簱
- rgvProtocol.setLastIo("I");
- }
- //妫�鏌ユ槸鍚﹀瓨鍦ㄥ伐浣�1浠诲姟瓒呮椂娌′笅鍙�
- if (rgvProtocol.getTaskNo1() > 0 && rgvProtocol.getTaskNo2() == 0) {
- if (System.currentTimeMillis() - rgvProtocol.getTask1SendTime() > (1000*60)) {
- //宸ヤ綅1涓嬪彂鏃堕棿瓒呰繃60s
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setRgvNo(rgvProtocol.getRgvNo());//RGV缂栧彿
- rgvCommand.setCommand((short) 1);//宸ヤ綅1纭
- if (!MessageQueue.offer(SlaveType.Rgv, rgvCommand.getRgvNo(), new Task(4, rgvCommand))) {
- log.error("RGV纭鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- return;
- }
- log.error("RGV纭鍛戒护涓嬪彂鎴愬姛锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- }
- }
- }
- }
- }
- //rgv鍏ュ簱
- public synchronized void rgvInExecute(ZyRgvThread rgvThread, RgvProtocol rgvProtocol) {
- for (RgvSlave.Sta sta : rgvThread.getSlave().getInStn()) {
- if (rgvProtocol.getTaskNo1() > 0) {
- //妫�娴媟gv宸ヤ綅1鏄惁涓哄叆搴撲换鍔�
- WrkMast wrkMast1 = wrkMastMapper.selectByWrkNo(rgvProtocol.getTaskNo1().intValue());
- if (wrkMast1.getWrkSts() > 100) {
- continue;//鍑哄簱浠诲姟璺宠繃
- }
- }
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, sta.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(sta.getSourceStaNo());
- //鍒ゆ柇杈撻�佺嚎鏄惁鑷姩銆佹湁鐗┿�佸彲鍏ャ�佹湁宸ヤ綔鍙�
- if (!(staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isOutEnable() && (staProtocol.getWorkNo() > 0))) {
- continue;
- }
-
- //鎼滅储宸ヤ綔妗�
- WrkMast wrkMast = wrkMastMapper.selectByWrkNo(staProtocol.getWorkNo().intValue());
- if (wrkMast == null) {
- continue;//宸ヤ綔妗d笉瀛樺湪
- }
-
- //鑾峰彇RGV鏀捐揣绔欑偣
- Integer staNo = Utils.getRgvStaNo(rgvProtocol.getRgvNo(), sta.getSourceStaNo(), staProtocol.getStaNo().intValue(), true);
- if (staNo == null) {
- continue;//RGV鏀捐揣绔欑偣涓嶅瓨鍦�
- }
-
- //鍒ゆ柇鐩爣绔欐槸鍚﹁嚜鍔ㄣ�佸彲鍏ャ�佹棤鐗┿�佹棤宸ヤ綔鍙�
- StaProtocol staProtocol1 = devpThread.getStation().get(staNo);
- if (!(staProtocol1.isAutoing() && staProtocol1.isInEnable() && !staProtocol1.isLoading() && (staProtocol1.getWorkNo() == 0))) {
- continue;
- }
-
- // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setRgvNo(rgvProtocol.getRgvNo());//RGV缂栧彿
- rgvCommand.setAckFinish((short) 0);
-
- //鍒ゆ柇rgv宸ヤ綅1鏄惁鍙敤
- if (rgvProtocol.getTaskNo1() == 0) {
- rgvCommand.setTaskNo1(wrkMast.getWrkNo().shortValue());//宸ヤ綔鍙�
- rgvCommand.setTaskMode1(RgvTaskModeType.PICK_RELEASE);//宸ヤ綔妯″紡 鍙栨斁璐�
- rgvCommand.setSourceStaNo1(staProtocol.getStaNo());//婧愮珯
- rgvCommand.setDestinationStaNo1(staNo.shortValue());//鐩爣绔�
- rgvCommand.setCommand((short) 0);//宸ヤ綅1鏆備笉纭
- } else if (rgvProtocol.getTaskNo2() == 0) {//鍒ゆ柇rgv宸ヤ綅2鏄惁鍙敤
- rgvCommand.setTaskNo2(wrkMast.getWrkNo().shortValue());//宸ヤ綔鍙�
- rgvCommand.setTaskMode2(RgvTaskModeType.PICK_RELEASE);//宸ヤ綔妯″紡 鍙栨斁璐�
- rgvCommand.setSourceStaNo2(staProtocol.getStaNo());//婧愮珯
- rgvCommand.setDestinationStaNo2(staNo.shortValue());//鐩爣绔�
- rgvCommand.setCommand((short) 1);//宸ヤ綅2纭
- }else {
- continue;//娌℃湁鍙敤RGV宸ヤ綅
- }
-
- if (!MessageQueue.offer(SlaveType.Rgv, rgvCommand.getRgvNo(), new Task(2, rgvCommand))) {
- log.error("RGV鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- continue;
- }
-
- log.error("RGV鍛戒护涓嬪彂鎴愬姛锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- }
- }
-
- //rgv鍑哄簱
- public synchronized void rgvOutExecute(ZyRgvThread rgvThread, RgvProtocol rgvProtocol) {
- for (RgvSlave.Sta sta : rgvThread.getSlave().getOutStn()) {
- if (rgvProtocol.getTaskNo1() > 0) {
- //妫�娴媟gv宸ヤ綅1鏄惁涓哄嚭搴撲换鍔�
- WrkMast wrkMast1 = wrkMastMapper.selectByWrkNo(rgvProtocol.getTaskNo1().intValue());
- if (wrkMast1.getWrkSts() < 100) {
- continue;//鍏ュ簱浠诲姟璺宠繃
- }
- }
-
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, sta.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(sta.getSourceStaNo());
- //鍒ゆ柇杈撻�佺嚎鏄惁鑷姩銆佹湁鐗┿�佸彲鍑恒�佹湁宸ヤ綔鍙�
- if (!(staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isOutEnable() && (staProtocol.getWorkNo() > 0))) {
- continue;
- }
-
- //鎼滅储宸ヤ綔妗�
- WrkMast wrkMast = wrkMastMapper.selectByWrkNo(staProtocol.getWorkNo().intValue());
- if (wrkMast == null) {
- continue;//宸ヤ綔妗d笉瀛樺湪
- }
-
- //鑾峰彇RGV鏀捐揣绔欑偣
- Integer staNo = Utils.getRgvStaNo(rgvProtocol.getRgvNo(), sta.getSourceStaNo(), staProtocol.getStaNo().intValue(), false);
- if (staNo == null) {
- continue;//RGV鏀捐揣绔欑偣涓嶅瓨鍦�
- }
-
- //鍒ゆ柇鐩爣绔欐槸鍚﹁嚜鍔ㄣ�佸彲鍑恒�佹棤鐗┿�佹棤宸ヤ綔鍙�
- StaProtocol staProtocol1 = devpThread.getStation().get(staNo);
- if (!(staProtocol1.isAutoing() && staProtocol1.isOutEnable() && !staProtocol1.isLoading() && (staProtocol1.getWorkNo() == 0))) {
- continue;
- }
-
- // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setRgvNo(rgvProtocol.getRgvNo());//RGV缂栧彿
- rgvCommand.setAckFinish((short) 0);
-
- //鍒ゆ柇rgv宸ヤ綅1鏄惁鍙敤
- if (rgvProtocol.getTaskNo1() == 0) {
- rgvCommand.setTaskNo1(wrkMast.getWrkNo().shortValue());//宸ヤ綔鍙�
- rgvCommand.setTaskMode1(RgvTaskModeType.PICK_RELEASE);//宸ヤ綔妯″紡 鍙栨斁璐�
- rgvCommand.setSourceStaNo1(staProtocol.getStaNo());//婧愮珯
- rgvCommand.setDestinationStaNo1(staNo.shortValue());//鐩爣绔�
- rgvCommand.setCommand((short) 0);//宸ヤ綅1鏆備笉纭
- } else if (rgvProtocol.getTaskNo2() == 0) {//鍒ゆ柇rgv宸ヤ綅2鏄惁鍙敤
- rgvCommand.setTaskNo2(wrkMast.getWrkNo().shortValue());//宸ヤ綔鍙�
- rgvCommand.setTaskMode2(RgvTaskModeType.PICK_RELEASE);//宸ヤ綔妯″紡 鍙栨斁璐�
- rgvCommand.setSourceStaNo2(staProtocol.getStaNo());//婧愮珯
- rgvCommand.setDestinationStaNo2(staNo.shortValue());//鐩爣绔�
- rgvCommand.setCommand((short) 1);//宸ヤ綅2纭
- }else {
- continue;//娌℃湁鍙敤RGV宸ヤ綅
- }
-
- if (!MessageQueue.offer(SlaveType.Rgv, rgvCommand.getRgvNo(), new Task(2, rgvCommand))) {
- log.error("RGV鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- continue;
- }
-
- log.error("RGV鍛戒护涓嬪彂鎴愬姛锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvProtocol.getRgvNo(), JSON.toJSON(rgvCommand));
- }
- }
-
- //RGV宸ヤ綔瀹屾垚
- public synchronized void rgvFinished() {
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
- for (RgvSlave slave : slaveProperties.getRgv()) {
- ZyRgvThread rgvThread = (ZyRgvThread) SlaveConnection.get(SlaveType.Rgv, slave.getId());
- if (rgvThread == null) {
- return;
- }
-
- RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
- if (rgvProtocol == null) {
- return;
- }
-
- // 鐘舵�侊細绛夊緟纭
- if (rgvProtocol.getStatusType() == RgvStatusType.WAITING) {
- if (rgvProtocol.getTaskNo1() == 9999) {
- // RGV澶嶄綅
- rgvThread.setResetFlag1(true);
- }else {
- // 鑾峰彇寰呯‘璁ゅ伐浣滄。
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(rgvProtocol.getTaskNo1().intValue());
- if (wrkMast == null) {
- log.error("RGV澶勪簬绛夊緟纭涓斾换鍔″畬鎴愮姸鎬侊紝浣嗘湭鎵惧埌宸ヤ綔妗c�俁GV鍙�={}锛屽伐浣滃彿={}", rgvProtocol.getRgvNo(), rgvProtocol.getTaskNo1());
- continue;
- }
-
- if (rgvProtocol.getTaskNo1() > 0 && rgvProtocol.getTaskFinish1() == 1) {
- //宸ヤ綅1浠诲姟瀹屾垚
- // RGV澶嶄綅
- rgvThread.setResetFlag1(true);
-
- //缁欑洰鏍囩珯杈撻�佺嚎鍐欏叆鏁版嵁
- Short destinationPos1 = rgvProtocol.getDestinationPos1();//鑾峰彇宸ヤ綅1鐩爣绔�
- StaProtocol staProtocol = devpThread.getStation().get(destinationPos1.intValue()).clone();
- staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());//鍐欏叆宸ヤ綔鍙�
- staProtocol.setStaNo(wrkMast.getStaNo().shortValue());//鍐欏叆鐩爣绔�
- if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol))) {
- log.info("{}浠诲姟锛孯GV鎼繍鎴愬姛锛屽啓鍏ヨ緭閫佹暟鎹け璐}", wrkMast.getWrkNo(), JSON.toJSONString(staProtocol));
- }
-
- //2鍙稲GV鍜�3鍙稲GV宸ヤ綔瀹屾垚鍚庨渶瑕佹洿鏂板伐浣滄。鐘舵��
- if (rgvProtocol.getRgvNo() == 2 || rgvProtocol.getRgvNo() == 3) {
- if (wrkMast.getWrkSts() == 13) {//13.RGV鎼繍涓� => 14.宸插嚭搴�
- wrkMast.setWrkSts(14L);
- wrkMast.setModiTime(new Date());
- wrkMastMapper.updateById(wrkMast);
- }
- }
- }
-
- if (rgvProtocol.getTaskNo2() > 0 && rgvProtocol.getTaskFinish2() == 1) {
- //宸ヤ綅2浠诲姟瀹屾垚
- // RGV澶嶄綅
- rgvThread.setResetFlag2(true);
-
- //缁欑洰鏍囩珯杈撻�佺嚎鍐欏叆鏁版嵁
- Short destinationPos2 = rgvProtocol.getDestinationPos2();//鑾峰彇宸ヤ綅2鐩爣绔�
- StaProtocol staProtocol = devpThread.getStation().get(destinationPos2.intValue()).clone();
- staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());//鍐欏叆宸ヤ綔鍙�
- staProtocol.setStaNo(wrkMast.getStaNo().shortValue());//鍐欏叆鐩爣绔�
- if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol))) {
- log.info("{}浠诲姟锛孯GV鎼繍鎴愬姛锛屽啓鍏ヨ緭閫佹暟鎹け璐}", wrkMast.getWrkNo(), JSON.toJSONString(staProtocol));
- }
-
- //2鍙稲GV鍜�3鍙稲GV宸ヤ綔瀹屾垚鍚庨渶瑕佹洿鏂板伐浣滄。鐘舵��
- if (rgvProtocol.getRgvNo() == 2 || rgvProtocol.getRgvNo() == 3) {
- if (wrkMast.getWrkSts() == 13) {//13.RGV鎼繍涓� => 14.宸插嚭搴�
- wrkMast.setWrkSts(14L);
- wrkMast.setModiTime(new Date());
- wrkMastMapper.updateById(wrkMast);
- }
- }
- }
- }
- }
- }
- }
/**
* 鎵弿纰熺洏鏈鸿嚜鍔ㄥ叆搴撶┖鎵樼洏
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java
new file mode 100644
index 0000000..5f9b639
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service.impl;
+
+import com.zy.asrs.mapper.WrkMastStaMapper;
+import com.zy.asrs.entity.WrkMastSta;
+import com.zy.asrs.service.WrkMastStaService;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("wrkMastStaService")
+public class WrkMastStaServiceImpl extends ServiceImpl<WrkMastStaMapper, WrkMastSta> implements WrkMastStaService {
+
+}
diff --git a/src/main/java/com/zy/common/CodeBuilder.java b/src/main/java/com/zy/common/CodeBuilder.java
index 3b9fcf5..7df0e02 100644
--- a/src/main/java/com/zy/common/CodeBuilder.java
+++ b/src/main/java/com/zy/common/CodeBuilder.java
@@ -17,10 +17,10 @@
// generator.table="sys_host";
// sqlserver
generator.sqlOsType = SqlOsType.SQL_SERVER;
- generator.url="192.168.4.15:1433;databasename=mdqdasrs";
+ generator.url="127.0.0.1:1433;databasename=mdqdasrs";
generator.username="sa";
generator.password="sa@123";
- generator.table="asr_bas_rgv_opt";
+ generator.table="asr_wrk_mast_sta";
generator.packagePath="com.zy.asrs";
generator.html = false;
generator.htmlDetail = false;
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 8a525a7..70dfd89 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -61,10 +61,7 @@
// 鍏ュ簱 ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣�
mainService.storeFinished();
- //RGV鎼繍
- mainService.rgvIoExecute();
- //RGV宸ヤ綔瀹屾垚
- mainService.rgvFinished();
+
// 鍫嗗灈鏈哄紓甯镐俊鎭褰�
mainService.recCrnErr();
diff --git a/src/main/java/com/zy/core/cache/OutputQueue.java b/src/main/java/com/zy/core/cache/OutputQueue.java
index 63205e7..8ff7458 100644
--- a/src/main/java/com/zy/core/cache/OutputQueue.java
+++ b/src/main/java/com/zy/core/cache/OutputQueue.java
@@ -11,6 +11,8 @@
// 鍫嗗灈鏈鸿緭鍑烘棩蹇�
public static ArrayBlockingQueue<String> CRN = new ArrayBlockingQueue<>(32);
+
+ public static ArrayBlockingQueue<String> RGV = new ArrayBlockingQueue<>(32);
// 杈撻�佺嚎杈撳嚭鏃ュ織
public static ArrayBlockingQueue<String> DEVP = new ArrayBlockingQueue<>(32);
// 鏉$爜鍣ㄨ緭鍑烘棩蹇�
diff --git a/src/main/java/com/zy/core/model/DevpSlave.java b/src/main/java/com/zy/core/model/DevpSlave.java
index a13cb76..21e29a9 100644
--- a/src/main/java/com/zy/core/model/DevpSlave.java
+++ b/src/main/java/com/zy/core/model/DevpSlave.java
@@ -21,6 +21,8 @@
private List<Sta> inSta = new ArrayList<>();
+ private List<Sta> rgvSta = new ArrayList<>();
+
private List<Sta> emptyInSta = new ArrayList<>();
private List<Sta> outSta = new ArrayList<>();
diff --git a/src/main/java/com/zy/core/model/command/RgvCommand.java b/src/main/java/com/zy/core/model/command/RgvCommand.java
index 3be8caa..e4079e2 100644
--- a/src/main/java/com/zy/core/model/command/RgvCommand.java
+++ b/src/main/java/com/zy/core/model/command/RgvCommand.java
@@ -14,12 +14,12 @@
private Integer rgvNo = 0;
// 浠诲姟瀹屾垚纭浣�
- private Short ackFinish = 0;
+ private boolean ackFinish = false;
//**************宸ヤ綅1**************
// 宸ヤ綅1宸ヤ綔鍙�
- private Short taskNo1 = 0;
+ private Integer taskNo1 = 0;
/**
* 浠诲姟妯″紡锛�
diff --git a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
index 7001f63..13c11bf 100644
--- a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java
@@ -26,7 +26,7 @@
private RgvStatusType statusType;
//宸ヤ綅1宸ヤ綔鍙�
- private Short taskNo1;
+ private Integer taskNo1;
//宸ヤ綅1鏈夌墿淇″彿
private Short loaded1;
@@ -59,7 +59,7 @@
private Short heart;
//澶囩敤1
- private Short temp1;
+ private Integer temp1;
//澶囩敤2
private Short temp2;
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 18f3eef..c360820 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -43,36 +43,6 @@
private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
private short heartBeatVal = 1;
-// public static final ArrayList<Integer> staNoseee1 = new ArrayList<Integer>() {{
-// add(1001);add(1002);add(1003);add(1004);add(1005);
-// add(1006);add(1007);add(1008);add(1009);add(1010);
-// add(1011);add(1012);add(1013);add(1014);add(1015);
-// add(1016);add(1017);add(1018);add(1019);add(1020);
-// add(1021);add(1022);add(1023);add(1024);add(1025);
-//
-// add(2001);add(2002);add(2003);add(2004);add(2005);
-// add(2006);add(2007);add(2008);add(2009);add(2010);
-// add(2011);add(2012);add(2013);
-//
-// add(2101);add(2102);add(2103);add(2104);add(2105);
-// add(2106);add(2107);add(2108);add(2109);add(2110);
-// add(2111);add(2112);add(2113);add(2114);
-//
-// add(2301);add(2302);add(2303);add(2304);add(2305);
-// add(2306);
-//
-// add(2401);add(2402);add(2403);
-//
-// add(3001);add(3002);add(3003);add(3004);add(3005);
-// add(3006);add(3007);add(3008);add(3009);add(3010);
-// add(3011);add(3012);
-//
-// add(4001);add(4002);add(4003);add(4004);add(4005);
-// add(4006);add(4007);
-//
-// add(4010);add(4011);add(4012);add(4013);add(4014);
-// add(4015);add(4016);
-// }};
public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
add(1001);add(1002);add(1003);add(1004);add(1005);
@@ -83,9 +53,9 @@
}};
public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{
- add(2001);add(2002);add(2003);add(2004);add(2005);add(2006);
- add(2101);add(2102);add(2103);add(2104);add(2105);add(2106);add(2107);
- add(2301);add(2302);add(2303);add(2304);add(2305);add(2306);
+ add(2001);add(2002);add(2101);add(2102);add(2301);add(2302);
+ add(2303);add(2304);add(2305);add(2306);add(2003);add(2004);add(2005);
+ add(2006);add(2103);add(2104);add(2105);add(2106);add(2107);
}};
public static final ArrayList<Integer> staNos3 = new ArrayList<Integer>() {{
diff --git a/src/main/java/com/zy/core/thread/ZyRgvThread.java b/src/main/java/com/zy/core/thread/ZyRgvThread.java
index e10e17f..184847d 100644
--- a/src/main/java/com/zy/core/thread/ZyRgvThread.java
+++ b/src/main/java/com/zy/core/thread/ZyRgvThread.java
@@ -7,10 +7,10 @@
import com.alibaba.fastjson.JSON;
import com.core.common.DateUtils;
import com.core.common.SpringUtils;
-import com.zy.asrs.entity.BasRgv;
-import com.zy.asrs.entity.BasRgvOpt;
-import com.zy.asrs.service.BasRgvOptService;
-import com.zy.asrs.service.BasRgvService;
+//import com.zy.asrs.entity.BasRgv;
+//import com.zy.asrs.entity.BasRgvOpt;
+//import com.zy.asrs.service.BasRgvOptService;
+//import com.zy.asrs.service.BasRgvService;
import com.zy.core.RgvThread;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.OutputQueue;
@@ -71,7 +71,7 @@
command = new RgvCommand();
}
command.setRgvNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
- command.setTaskNo1((short) 0); // 宸ヤ綔鍙�
+ command.setTaskNo1(0); // 宸ヤ綔鍙�
command.setTaskMode1(RgvTaskModeType.NONE); // 浠诲姟妯″紡
command.setSourceStaNo1((short) 0);//婧愮珯
command.setDestinationStaNo1((short) 0);//鐩爣绔�
@@ -79,13 +79,10 @@
command.setTaskMode2(RgvTaskModeType.NONE); // 浠诲姟妯″紡
command.setSourceStaNo2((short) 0);//婧愮珯
command.setDestinationStaNo2((short) 0);//鐩爣绔�
- command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
+ command.setAckFinish(true); // 浠诲姟瀹屾垚纭浣�
write(command);
break;
- //鍐欏叆鏁版嵁纭鍛戒护
- case 4:
- writeCommand((RgvCommand) task.getData());
- break;
+
default:
break;
}
@@ -121,86 +118,56 @@
*/
private void readStatus(){
try {
- OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 34);
+ OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 30);
if (result.IsSuccess) {
if (null == rgvProtocol) {
rgvProtocol = new RgvProtocol();
rgvProtocol.setRgvNo(slave.getId());
}
rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0));//妯″紡
- rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 2));//RGV鐘舵��
- rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 4));//宸ヤ綅1宸ヤ綔鍙�
- rgvProtocol.setLoaded1(siemensNet.getByteTransform().TransInt16(result.Content, 6));//宸ヤ綅1鏈夌墿
+ rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt32(result.Content, 2));//宸ヤ綅1宸ヤ綔鍙�
+ rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 6));//RGV鐘舵��
rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransInt16(result.Content, 8));//RGV褰撳墠浣嶇疆
rgvProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 10));//璧拌鍦ㄥ畾浣�
- rgvProtocol.setTaskNo2(siemensNet.getByteTransform().TransInt16(result.Content, 12));//宸ヤ綅2宸ヤ綔鍙�
- rgvProtocol.setLoaded2(siemensNet.getByteTransform().TransInt16(result.Content, 14));//宸ヤ綅2鏈夌墿
- rgvProtocol.setTaskFinish1(siemensNet.getByteTransform().TransInt16(result.Content, 16));//宸ヤ綅1浠诲姟瀹屾垚
- rgvProtocol.setTaskFinish2(siemensNet.getByteTransform().TransInt16(result.Content, 18));//宸ヤ綅2浠诲姟瀹屾垚
- rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 20));//寮傚父鐮�
- rgvProtocol.setHeart(siemensNet.getByteTransform().TransInt16(result.Content, 22));//RGV蹇冭烦淇″彿
- rgvProtocol.setTemp1(siemensNet.getByteTransform().TransInt16(result.Content, 24));//澶囩敤1
- rgvProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 26));//澶囩敤2
- rgvProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 28));//澶囩敤3
- rgvProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 30));//澶囩敤4
- rgvProtocol.setTemp5(siemensNet.getByteTransform().TransInt16(result.Content, 32));//澶囩敤5
-
- OperateResultExOne<byte[]> result2 = siemensNet.Read("DB100.0", (short) 22);
- if (result2.IsSuccess) {
- rgvProtocol.setTaskMode1(siemensNet.getByteTransform().TransInt16(result.Content, 4));//宸ヤ綅1浠诲姟妯″紡
- rgvProtocol.setSourceStn1(siemensNet.getByteTransform().TransInt16(result.Content, 6));//宸ヤ綅1婧愮珯
- rgvProtocol.setDestinationPos1(siemensNet.getByteTransform().TransInt16(result.Content, 8));//宸ヤ綅1鐩爣绔�
- rgvProtocol.setTaskMode2(siemensNet.getByteTransform().TransInt16(result.Content, 14));//宸ヤ綅2浠诲姟妯″紡
- rgvProtocol.setSourceStn2(siemensNet.getByteTransform().TransInt16(result.Content, 16));//宸ヤ綅2婧愮珯
- rgvProtocol.setDestinationPos2(siemensNet.getByteTransform().TransInt16(result.Content, 18));//宸ヤ綅2鐩爣绔�
- }
+ rgvProtocol.setTemp1(siemensNet.getByteTransform().TransInt32(result.Content, 12));//澶囩敤1
+ rgvProtocol.setLoaded1(siemensNet.getByteTransform().TransInt16(result.Content, 16));//宸ヤ綅1鏈夌墿
+ rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 18));//寮傚父鐮�
+ rgvProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 20));//澶囩敤2
+ rgvProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 24));//澶囩敤3
+ rgvProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 28));//澶囩敤4
OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
// 澶嶄綅淇″彿
if (rgvProtocol.getStatusType().equals(RgvStatusType.WAITING)) {
- if (resetFlag1) {
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setAckFinish((short) 2);//宸ヤ綅1浠诲姟缁撴潫宸叉帴鏀�
- if (write(rgvCommand)) {
- resetFlag1 = false;
- }
- }
- if (resetFlag2) {
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setAckFinish((short) 3);//宸ヤ綅2浠诲姟缁撴潫宸叉帴鏀�
- if (write(rgvCommand)) {
- resetFlag2 = false;
- }
- }
}
try {
// 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
- BasRgvService basRgvService = SpringUtils.getBean(BasRgvService.class);
- BasRgv basRgv = new BasRgv();
- basRgv.setRgvNo(slave.getId());
- basRgv.setMode(rgvProtocol.getMode().intValue());
- basRgv.setStatus(rgvProtocol.getStatus().intValue());
- basRgv.setTaskNo1(rgvProtocol.getTaskNo1().intValue());
- basRgv.setLoaded1(rgvProtocol.getLoaded1().intValue());
- basRgv.setRgvPos(rgvProtocol.getRgvPos().intValue());
- basRgv.setWalkPos(rgvProtocol.getWalkPos().intValue());
- basRgv.setTaskNo2(rgvProtocol.getTaskNo2().intValue());
- basRgv.setLoaded2(rgvProtocol.getLoaded2().intValue());
- basRgv.setTaskFinish1(rgvProtocol.getTaskFinish1().intValue());
- basRgv.setTaskFinish2(rgvProtocol.getTaskFinish2().intValue());
- basRgv.setAlarm(rgvProtocol.getAlarm().intValue());
- basRgv.setHeart(rgvProtocol.getHeart().intValue());
- basRgv.setTemp1(rgvProtocol.getTemp1().intValue());
- basRgv.setTemp2(rgvProtocol.getTemp2().intValue());
- basRgv.setTemp3(rgvProtocol.getTemp3().intValue());
- basRgv.setTemp4(rgvProtocol.getTemp4().intValue());
- basRgv.setTemp5(rgvProtocol.getTemp5().intValue());
- if (!basRgvService.updateById(basRgv)){
- log.error("RGV plc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
- }
+// BasRgvService basRgvService = SpringUtils.getBean(BasRgvService.class);
+// BasRgv basRgv = new BasRgv();
+// basRgv.setRgvNo(slave.getId());
+// basRgv.setMode(rgvProtocol.getMode().intValue());
+// basRgv.setStatus(rgvProtocol.getStatus().intValue());
+// basRgv.setTaskNo1(rgvProtocol.getTaskNo1());
+// basRgv.setLoaded1(rgvProtocol.getLoaded1().intValue());
+// basRgv.setRgvPos(rgvProtocol.getRgvPos().intValue());
+// basRgv.setWalkPos(rgvProtocol.getWalkPos().intValue());
+//// basRgv.setTaskNo2(rgvProtocol.getTaskNo2().intValue());
+//// basRgv.setLoaded2(rgvProtocol.getLoaded2().intValue());
+//// basRgv.setTaskFinish1(rgvProtocol.getTaskFinish1().intValue());
+//// basRgv.setTaskFinish2(rgvProtocol.getTaskFinish2().intValue());
+// basRgv.setAlarm(rgvProtocol.getAlarm().intValue());
+//// basRgv.setHeart(rgvProtocol.getHeart().intValue());
+// basRgv.setTemp1(rgvProtocol.getTemp1());
+// basRgv.setTemp2(rgvProtocol.getTemp2().intValue());
+// basRgv.setTemp3(rgvProtocol.getTemp3().intValue());
+//// basRgv.setTemp4(rgvProtocol.getTemp4().intValue());
+//// basRgv.setTemp5(rgvProtocol.getTemp5().intValue());
+// if (!basRgvService.updateById(basRgv)){
+// log.error("RGV plc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
+// }
} catch (Exception ignore){}
} else {
@@ -224,164 +191,116 @@
log.error("RGV鍐欏叆鍛戒护涓虹┖");
return false;
}
+
command.setRgvNo(slave.getId());
- OperateResult result = null;
- if (command.getTaskNo1() > 0 && command.getTaskNo2() == 0) {
- //鍙湁宸ヤ綅1瀛樺湪浠诲姟涓斾换鍔℃病鏈夎纭锛屽伐浣�1寮�濮嬭鏃�
- if (command.getCommand() == 0) {
- rgvProtocol.setTask1SendTime(System.currentTimeMillis());
+ short[] array = new short[5];
+ array[0] = command.getSourceStaNo1();
+ array[1] = command.getSourceStaNo2();
+ array[2] = command.getDestinationStaNo1();
+ array[3] = command.getDestinationStaNo2();
+ array[4] = command.getTaskMode1();
+
+ OperateResult result1 = siemensNet.Write("DB100.0",array);
+ OperateResult result2 = siemensNet.Write("DB100.10",command.getTaskNo1());
+ OperateResult result3 = siemensNet.Write("DB100.18.1",command.isAckFinish());
+
+ if (!result1.IsSuccess && !result2.IsSuccess && !result3.IsSuccess){
+ log.error("鍐欏叆RGVplc鏁版嵁澶辫触锛岄噸鏂版坊鍔犱换鍔″埌闃熷垪 ===> [id:{}],{}",slave.getId(),JSON.toJSON(command));
+ MessageQueue.offer(SlaveType.Rgv,slave.getId(),new Task(2,command));
+ Thread.sleep(100);
+ readStatus();
+ return false;
+ }
+
+ //RGV浠诲姟鍐欏叆鍚庯紝鍥炶涓�娆★紝鐪嬫槸鍚︽垚鍔�
+ Thread.sleep(400);
+ try {
+ OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.0", (short) 20);
+ OperateResultExOne<byte[]> resultReadAck = siemensNet.Read("DB100.18.1", (short) 1);
+ if (resultRead.IsSuccess){
+ RgvCommand one = new RgvCommand();
+ one.setAckFinish(siemensNet.getByteTransform().TransBool(resultReadAck.Content, 0));
+ one.setSourceStaNo1(siemensNet.getByteTransform().TransInt16(resultRead.Content, 0));
+ one.setSourceStaNo2(siemensNet.getByteTransform().TransInt16(resultRead.Content, 2));
+ one.setDestinationStaNo1(siemensNet.getByteTransform().TransInt16(resultRead.Content, 4));
+ one.setDestinationStaNo2(siemensNet.getByteTransform().TransInt16(resultRead.Content, 6));
+ one.setTaskMode1(siemensNet.getByteTransform().TransInt16(resultRead.Content, 8));
+ one.setTaskNo1(siemensNet.getByteTransform().TransInt32(resultRead.Content, 10));
+// one.setDestinationStaNo1(siemensNet.getByteTransform().TransInt16(resultRead.Content, 8));
+ if ( !command.isAckFinish() == one.isAckFinish() ||
+ !command.getTaskNo1().equals(one.getTaskNo1()) ||
+ !command.getTaskMode1().equals(one.getTaskMode1()) ||
+ !command.getSourceStaNo1().equals(one.getSourceStaNo1()) ||
+ !command.getDestinationStaNo1().equals(one.getDestinationStaNo1())
+ ){
+ try{
+ log.error("RGV鍛戒护鍦板潃鍐欏叆鍚庡洖璇诲け璐id:{}] >>>>> 鍐欏叆[{}],===>>鍥炶[{}]", slave.getId(), JSON.toJSON(command),JSON.toJSON(one));
+ }catch (Exception e){
+ try{
+ log.error("鏃ュ織鎵撳嵃澶辫触锛�===>>鍙傛暟one鎶ラ敊 [id:{}],{}", slave.getId(), JSON.toJSON(command),JSON.toJSON(resultRead));
+ }catch (Exception e1){
+ log.error("鏃ュ織鎵撳嵃澶辫触锛�===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
+ }
+ }
+ log.error("Rgv鍛戒护鍥炶澶辫触鍚庯紝閲嶆柊娣诲姞浠诲姟鍒伴槦鍒� ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
+ MessageQueue.offer(SlaveType.Rgv, slave.getId(), new Task(2, command));
+ Thread.sleep(100);
+ readStatus();
+ return false;
+ }else {
+ log.info("RGV鍛戒护鍦板潃鍐欏叆鍚庡洖璇绘垚鍔焄id:{}] >>>>> 鍐欏叆[{}],===>>鍥炶[{}]", slave.getId(), JSON.toJSON(command),JSON.toJSON(one));
+ }
}
- short[] array = new short[10];
- array[0] = command.getAckFinish(); // 浠诲姟瀹屾垚纭浣�
- array[1] = command.getTaskNo1(); // 宸ヤ綅1浠诲姟鍙�
- array[2] = command.getTaskMode1(); // 宸ヤ綅1妯″紡
- array[3] = command.getSourceStaNo1(); // 宸ヤ綅1婧愮珯
- array[4] = command.getDestinationStaNo1(); // 宸ヤ綅1鐩爣绔�
- array[5] = 0; // 宸ヤ綅2浠诲姟鍙�
- array[6] = 0; // 宸ヤ綅2妯″紡
- array[7] = 0; // 宸ヤ綅2婧愮珯
- array[8] = 0; // 宸ヤ綅2鐩爣绔�
- array[9] = command.getCommand();// 浠诲姟纭浣�
- result = siemensNet.Write("DB100.0", array);
- log.info("RGV鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), array);
- } else if (command.getTaskNo2() > 0 && command.getTaskNo1() == 0) {
- //鍙湁宸ヤ綅2瀛樺湪浠诲姟
- short[] array = new short[5];
- array[0] = command.getTaskNo2(); // 宸ヤ綅2浠诲姟鍙�
- array[1] = command.getTaskMode2(); // 宸ヤ綅2妯″紡
- array[2] = command.getSourceStaNo2(); // 宸ヤ綅2婧愮珯
- array[3] = command.getDestinationStaNo2(); // 宸ヤ綅2鐩爣绔�
- array[4] = command.getCommand();// 浠诲姟纭浣�
- result = siemensNet.Write("DB100.12", array);
- log.info("RGV鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), array);
- }else {
- //宸ヤ綅1鍜屽伐浣�2浠诲姟
- short[] array = new short[10];
- array[0] = command.getAckFinish(); // 浠诲姟瀹屾垚纭浣�
- array[1] = command.getTaskNo1(); // 宸ヤ綅1浠诲姟鍙�
- array[2] = command.getTaskMode1(); // 宸ヤ綅1妯″紡
- array[3] = command.getSourceStaNo1(); // 宸ヤ綅1婧愮珯
- array[4] = command.getDestinationStaNo1(); // 宸ヤ綅1鐩爣绔�
- array[5] = command.getTaskNo2(); // 宸ヤ綅2浠诲姟鍙�
- array[6] = command.getTaskMode2(); // 宸ヤ綅2妯″紡
- array[7] = command.getSourceStaNo2(); // 宸ヤ綅2婧愮珯
- array[8] = command.getDestinationStaNo2(); // 宸ヤ綅2鐩爣绔�
- array[9] = command.getCommand();// 浠诲姟纭浣�
- result = siemensNet.Write("DB100.0", array);
- log.info("RGV鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), array);
+ }catch (Exception e){
+ log.error("RGV鍛戒护鍦板潃鍐欏叆鍚庡洖璇诲嚭閿�");
}
- if (command.getCommand() == 1) {
- //浠诲姟琚‘璁�
- rgvProtocol.setTask1SendTime(0L);//閲嶇疆宸ヤ綅1涓嬪彂鏃堕棿
+ if (!command.isAckFinish()) {
+ if (result1.IsSuccess) {
+ Thread.sleep(300);
+ //浠诲姟涓嬪彂娆℃暟
+ int writeCount2 = 0;
+
+ do {
+ writeCount2++;
+ result1 = siemensNet.Write("DB100.18", true);
+ if(result1.IsSuccess){
+ //RGV浠诲姟鍐欏叆鍚庯紝鍥炶涓�娆★紝鐪嬫槸鍚︽垚鍔�
+ Thread.sleep(200);
+ OperateResultExOne<byte[]> resultRead = siemensNet.Read("DB100.18", (short) 2);
+ if (resultRead.IsSuccess) {
+ boolean commandFinish=siemensNet.getByteTransform().TransBool(resultRead.Content, 0);
+ if (!commandFinish){
+ log.error("RGV浠诲姟纭浣�"+commandFinish+"鍐欏叆鏁版嵁涓庡洖璇绘暟鎹笉涓�鑷达紒"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�");
+ }else{
+ //浠诲姟鍛戒护鍐欏叆鎴愬姛
+ log.info("RGV浠诲姟纭浣�"+commandFinish+"鍥炶鎴愬姛锛�"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�");
+ break;
+ }
+ }else {
+ log.error("RGV浠诲姟纭浣嶅洖璇诲け璐ワ紒"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�");
+ }
+ } else {
+ log.error("RGV浠诲姟纭浣嶅啓鍏ュけ璐ワ紒"+"寰幆鎵ц娆℃暟:"+writeCount2+"娆�");
+ }
+ }while (writeCount2<5);
+ }
}
- if(!result.IsSuccess){
- log.error("鍐欏叆RGV plc鏁版嵁澶辫触锛岄噸鏂版坊鍔犱换鍔″埌闃熷垪 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
- MessageQueue.offer(SlaveType.Rgv, slave.getId(), new Task(2, command));
- Thread.sleep(100);
- readStatus();
- return false;
- }
-
- try {
- // 鏃ュ織璁板綍
- BasRgvOptService bean = SpringUtils.getBean(BasRgvOptService.class);
- Date now = new Date();
- BasRgvOpt basRgvOpt = new BasRgvOpt(
- command.getRgvNo(), // RGV[闈炵┖]
- command.getAckFinish().intValue(), // 浠诲姟瀹屾垚纭浣�
- command.getTaskNo1().intValue(), // 浠诲姟鍙�
- command.getTaskMode1().intValue(), // 妯″紡
- command.getSourceStaNo1().intValue(), // 婧愮珯
- command.getDestinationStaNo1().intValue(), // 鐩爣绔�
- command.getTaskNo2().intValue(), // 浠诲姟鍙�
- command.getTaskMode2().intValue(), // 妯″紡
- command.getSourceStaNo2().intValue(), // 婧愮珯
- command.getDestinationStaNo2().intValue(), // 鐩爣绔�
- command.getCommand().intValue(),
- now, // 涓嬪彂鏃堕棿
- null, // 涓嬪彂浜哄憳
- now, // 淇敼鏃堕棿
- null, // 淇敼浜哄憳
- null //鍝嶅簲
- );
- bean.insert(basRgvOpt);
- } catch (Exception ignore) {}
-
- if (result != null && result.IsSuccess) {
+ if (result1 != null && result1.IsSuccess) {
Thread.sleep(200);
this.readStatus();
- log.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
- OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
+ log.info("RGV 宸ヤ綅1鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
+ OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 宸ヤ綅1鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
return true;
} else {
- OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆戝啓鍏ュ爢鍨涙満plc鏁版嵁澶辫触 ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
- log.error("鍐欏叆鍫嗗灈鏈簆lc鏁版嵁澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
+ OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆戝啓鍏GV plc宸ヤ綅1鏁版嵁澶辫触 ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
+ log.error("鍐欏叆RGV plc宸ヤ綅1鏁版嵁澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
return false;
}
+
}
- /**
- * 鍐欏叆鏁版嵁纭鍛戒护
- */
- private boolean writeCommand(RgvCommand command) throws InterruptedException {
- if (null == command) {
- log.error("RGV鍐欏叆鍛戒护涓虹┖");
- return false;
- }
-
- command.setRgvNo(slave.getId());
- short[] array = new short[1];
- array[0] = command.getCommand();// 浠诲姟纭浣�
- OperateResult result = siemensNet.Write("DB100.20", array);
- log.info("RGV鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), array);
-
- if(!result.IsSuccess){
- log.error("鍐欏叆RGV plc鏁版嵁澶辫触锛岄噸鏂版坊鍔犱换鍔″埌闃熷垪 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
- MessageQueue.offer(SlaveType.Rgv, slave.getId(), new Task(2, command));
- Thread.sleep(100);
- readStatus();
- return false;
- }
-
- try {
- // 鏃ュ織璁板綍
- BasRgvOptService bean = SpringUtils.getBean(BasRgvOptService.class);
- Date now = new Date();
- BasRgvOpt basRgvOpt = new BasRgvOpt(
- command.getRgvNo(), // RGV[闈炵┖]
- command.getAckFinish().intValue(), // 浠诲姟瀹屾垚纭浣�
- command.getTaskNo1().intValue(), // 浠诲姟鍙�
- command.getTaskMode1().intValue(), // 妯″紡
- command.getSourceStaNo1().intValue(), // 婧愮珯
- command.getDestinationStaNo1().intValue(), // 鐩爣绔�
- command.getTaskNo2().intValue(), // 浠诲姟鍙�
- command.getTaskMode2().intValue(), // 妯″紡
- command.getSourceStaNo2().intValue(), // 婧愮珯
- command.getDestinationStaNo2().intValue(), // 鐩爣绔�
- command.getCommand().intValue(),
- now, // 涓嬪彂鏃堕棿
- null, // 涓嬪彂浜哄憳
- now, // 淇敼鏃堕棿
- null, // 淇敼浜哄憳
- null //鍝嶅簲
- );
- bean.insert(basRgvOpt);
- } catch (Exception ignore) {}
-
- if (result != null && result.IsSuccess) {
- Thread.sleep(200);
- this.readStatus();
- log.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
- OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
- return true;
- } else {
- OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆戝啓鍏ュ爢鍨涙満plc鏁版嵁澶辫触 ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
- log.error("鍐欏叆鍫嗗灈鏈簆lc鏁版嵁澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
- return false;
- }
- }
/**
* 鍒濆鍖栧爢鍨涙満鐘舵��
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 993049b..c499a4b 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,5 +1,5 @@
server:
- port: 8080
+ port: 9090
servlet:
context-path: /@pom.build.finalName@
@@ -47,7 +47,7 @@
# 鍫嗗灈鏈�1
crn[0]:
id: 1
- ip: 10.10.10.120
+ ip: 10.10.10.100
port: 102
rack: 0
slot: 0
@@ -123,7 +123,7 @@
# 鍫嗗灈鏈�3
crn[2]:
id: 5
- ip: 10.10.10.100
+ ip: 10.10.10.120
port: 102
rack: 0
slot: 0
@@ -219,12 +219,30 @@
autoEmptyIn[0]:
staNo: 1007
# 杈撻�佺嚎2
-# devp[1]:
-# id: 1
-# ip: 10.10.10.10
-# port: 102
-# rack: 0
-# slot: 0
+ devp[1]:
+ id: 2
+ ip: 10.10.10.10
+ port: 102
+ rack: 0
+ slot: 0
+ rgvSta[0]:
+ staNo: 4007
+ rgvSta[1]:
+ staNo: 4001
+ rgvSta[2]:
+ staNo: 4016
+ rgvSta[3]:
+ staNo: 4010
+ rgvSta[4]:
+ staNo: 2003
+ rgvSta[5]:
+ staNo: 2103
+ rgvSta[6]:
+ staNo: 2301
+ rgvSta[7]:
+ staNo: 2002
+ rgvSta[8]:
+ staNo: 2102
# # 杈撻�佺嚎3
# devp[2]:
# id: 1
@@ -240,24 +258,12 @@
# rack: 0
# slot: 0
# RGV1
-# rgv[0]:
-# id: 1
-# ip: 10.10.10.120
-# port: 102
-# rack: 0
-# slot: 0
-# inStn[0]:
-# devpPlcId: ${wcs-slave.devp[0].id}
-# sourceStaNo: 2401
-# inStn[1]:
-# devpPlcId: ${wcs-slave.devp[0].id}
-# sourceStaNo: 2114
-# outStn[0]:
-# devpPlcId: ${wcs-slave.devp[0].id}
-# sourceStaNo: 1014
-# outStn[1]:
-# devpPlcId: ${wcs-slave.devp[0].id}
-# sourceStaNo: 1017
+ rgv[0]:
+ id: 1
+ ip: 10.10.10.120
+ port: 102
+ rack: 0
+ slot: 0
# # RGV2
# rgv[1]:
# id: 2
diff --git a/src/main/resources/mapper/BasRgvErrMapper.xml b/src/main/resources/mapper/BasRgvErrMapper.xml
new file mode 100644
index 0000000..c3eb284
--- /dev/null
+++ b/src/main/resources/mapper/BasRgvErrMapper.xml
@@ -0,0 +1,16 @@
+<?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.BasRgvErrMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="com.zy.asrs.entity.BasRgvErr">
+ <result column="error_code" property="errorCode" />
+ <result column="err_name" property="errName" />
+ <result column="modi_user" property="modiUser" />
+ <result column="modi_time" property="modiTime" />
+ <result column="appe_user" property="appeUser" />
+ <result column="appe_time" property="appeTime" />
+
+ </resultMap>
+
+</mapper>
diff --git a/src/main/resources/mapper/WrkMastStaMapper.xml b/src/main/resources/mapper/WrkMastStaMapper.xml
new file mode 100644
index 0000000..d96f72d
--- /dev/null
+++ b/src/main/resources/mapper/WrkMastStaMapper.xml
@@ -0,0 +1,24 @@
+<?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.WrkMastStaMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="com.zy.asrs.entity.WrkMastSta">
+ <id column="id" property="id" />
+ <result column="wrk_no" property="wrkNo" />
+ <result column="wrk_start" property="wrkStart" />
+ <result column="wrk_end" property="wrkEnd" />
+ <result column="sta_start" property="staStart" />
+ <result column="sta_end" property="staEnd" />
+ <result column="create_time" property="createTime" />
+ <result column="update_time" property="updateTime" />
+ <result column="type" property="type" />
+ <result column="wrk_sts" property="wrkSts" />
+ <result column="line_number" property="lineNumber" />
+ <result column="wrk_type" property="wrkType" />
+ <result column="bign_time" property="bignTime" />
+ <result column="wrk_crn" property="wrkCrn" />
+
+ </resultMap>
+
+</mapper>
--
Gitblit v1.9.1