From 9167025bb8fe2f1b2c9b3d446a372c7cba16ef63 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 15 十二月 2023 17:39:01 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/SiteController.java | 88 ++++++++++++++++++++++
src/main/java/com/zy/core/thread/SiemensCrnThread.java | 2
src/main/webapp/views/deviceOperate/devpOperate.html | 53 +++++++-----
src/main/java/com/zy/asrs/controller/OpenController.java | 27 ++++--
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 33 +++++++
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 13 ++
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 7 -
7 files changed, 179 insertions(+), 44 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index da56835..b0d3edb 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -185,12 +185,12 @@
}
Map<String,Integer> map = new HashMap<>();
- map.put("J-1101",102);map.put("J-1102",101);
- map.put("J-1103",106);map.put("J-1104",105);
- map.put("J-1105",110);map.put("J-1106",109);
- map.put("J-1107",114);map.put("J-1108",113);
- map.put("J-1109",118);map.put("J-1110",117);
- map.put("J-1111",122);map.put("J-1112",121);
+ map.put("J-1102",102);map.put("J-1101",101);
+ map.put("J-1103",105);map.put("J-1104",106);
+ map.put("J-1105",109);map.put("J-1106",110);
+ map.put("J-1107",113);map.put("J-1108",114);
+ map.put("J-1109",117);map.put("J-1110",118);
+ map.put("J-1111",121);map.put("J-1112",122);
map.put("H-1102",300);map.put("H-1101",305);
map.put("G-1102",400);map.put("G-1101",405);
// StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
@@ -269,10 +269,21 @@
StaDesc staDesc = new StaDesc();
if (param.getTaskType().equals("CK") && param.getTargetWharf().contains("J")){
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
- .eq("crn_no", param.getTaskTunnel()).eq("type_no",2).lt("crn_stn", 200));
+ .eq("crn_no",param.getTaskTunnel())
+ .eq("type_no",2)
+ .lt("stn_no",200));
+ }else if (param.getTaskType().equals("CK") && param.getTargetWharf().contains("H")){
+ staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
+ .eq("crn_no",param.getTaskTunnel())
+ .eq("type_no",2)
+ .lt("stn_no",400)
+ .gt("stn_no",200));
}else {
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
- .eq("crn_no", param.getTaskTunnel()).eq("type_no",2).ge("crn_stn", 200));
+ .eq("crn_no",param.getTaskTunnel())
+ .eq("type_no",2)
+ .lt("stn_no",500)
+ .ge("stn_no",400));
}
param.setTargetLocationCode(staDesc.getStnNo().toString());
diff --git a/src/main/java/com/zy/asrs/controller/SiteController.java b/src/main/java/com/zy/asrs/controller/SiteController.java
index 1305824..45efdff 100644
--- a/src/main/java/com/zy/asrs/controller/SiteController.java
+++ b/src/main/java/com/zy/asrs/controller/SiteController.java
@@ -232,6 +232,94 @@
}
return R.error("鏇存柊澶辫触");
}
+ @PostMapping("/detl/out")
+ @ManagerAuth(memo = "淇敼绔欑偣鏁版嵁")
+ public R siteDetlout(@RequestParam Integer devNo,
+ @RequestParam Short workNo,
+ @RequestParam Short staNo,
+ @RequestParam(required = false) String pakMk,
+ @RequestParam(required = false) Boolean inEnable,
+ @RequestParam(required = false) Boolean outEnable
+ ) {
+ BasDevp basDevp = basDevpService.selectById(devNo);
+ if (basDevp == null) {
+ return R.error("绔欑偣涓嶅瓨鍦�");
+ }
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+ Map<Integer, StaProtocol> station = devpThread.getStation();
+ for (Map.Entry<Integer, StaProtocol> entry : station.entrySet()) {
+ if (devNo.equals(entry.getKey())) {
+ StaProtocol staProtocol = entry.getValue();
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ if (pakMk != null) {
+ staProtocol.setPakMk(pakMk.equals("Y"));
+ }
+ if (inEnable != null) {
+ staProtocol.setInEnable(inEnable);
+ basDevp.setInEnable(inEnable ? "Y" : "N");
+ }
+ if (outEnable != null) {
+ staProtocol.setOutEnable(outEnable);
+ basDevp.setOutEnable(outEnable ? "Y" : "N");
+ }
+ staProtocol.setWorkNo((short) 0);
+ staProtocol.setStaNo((short) 0);
+ basDevpService.updateById(basDevp);
+ boolean result = CommandUtils.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol), false);
+ if (result) {
+ return R.ok();
+ } else {
+ return R.error("涓嬪彂鍛戒护澶辫触");
+ }
+ }
+ }
+ }
+ return R.error("鏇存柊澶辫触");
+ }
+ @PostMapping("/detl/in")
+ @ManagerAuth(memo = "淇敼绔欑偣鏁版嵁")
+ public R siteDetlint(@RequestParam Integer devNo,
+ @RequestParam Short workNo,
+ @RequestParam Short staNo,
+ @RequestParam(required = false) String pakMk,
+ @RequestParam(required = false) Boolean inEnable,
+ @RequestParam(required = false) Boolean outEnable
+ ) {
+ BasDevp basDevp = basDevpService.selectById(devNo);
+ if (basDevp == null) {
+ return R.error("绔欑偣涓嶅瓨鍦�");
+ }
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ // 閬嶅巻鍏ュ簱鍙�
+ for (DevpSlave.Sta inSta : devp.getInSta()) {
+ if (!devNo.equals(inSta.getBackSta()) ){
+ continue;
+ }
+ // 鑾峰彇鍏ュ簱绔欎俊鎭�
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+ StaProtocol staProtocol = devpThread.getStation().get(inSta.getBackSta());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ staProtocol.setWorkNo((short) 9999);
+ staProtocol.setStaNo(inSta.getStaNo().shortValue());
+ boolean result = CommandUtils.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol), false);
+ if (result) {
+ return R.ok();
+ } else {
+ return R.error("涓嬪彂鍛戒护澶辫触");
+ }
+ }
+ }
+ return R.error("鏇存柊澶辫触");
+ }
public List<PlcErrorTableVo> staPlcErr(Map.Entry<Integer, StaProtocol> entry){
List<PlcErrorTableVo> list = new ArrayList<>();
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 d46d702..18d1323 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -89,6 +89,9 @@
@Autowired
private StaDescService staDescService;
+ @Autowired
+ private ApiLogService apiLogService;
+
@Value("${wms.url}")
private String wmsUrl;
@Value("${wms.movePath}")
@@ -194,10 +197,10 @@
StaDesc staDesc = new StaDesc();
if (devp.getId() <= 1){
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
- .eq("crn_no", taskWrk.getCrnNo()).eq("type_no",1).lt("crn_stn", 200));
+ .eq("crn_no", taskWrk.getCrnNo()).eq("type_no",1).lt("stn_no", 200));
}else {
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
- .eq("crn_no", taskWrk.getCrnNo()).eq("type_no",1).ge("crn_stn", 200));
+ .eq("crn_no", taskWrk.getCrnNo()).eq("type_no",1).lt("stn_no", 400).ge("stn_no", 250));
}
staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
staProtocol.setStaNo(staDesc.getCrnStn().shortValue());
@@ -223,6 +226,14 @@
log.error("wms閫氳澶辫触,"+e.getMessage());
continue;
}
+ apiLogService.save("wms璇锋眰鍏ュ簱璐т綅鎺ュ彛"
+ ,wmsUrl+"wcsManager/wcsInterface/inboundTaskApply"
+ ,null
+ ,"127.0.0.1"
+ ,JSON.toJSONString(toWmsDTO)
+ ,response
+ ,true
+ );
JSONObject jsonObject = JSON.parseObject(response);
if (jsonObject.getInteger("code").equals(200)) {
GetWmsDto getWmsDto = JSON.parseObject(jsonObject.get("data").toString(), GetWmsDto.class);
@@ -720,7 +731,15 @@
//鑾峰彇鎸囦护ID
Integer commandId = crnProtocol.getCommandId();
- CommandInfo commandInfo = commandInfoService.selectById(commandId);
+ CommandInfo commandInfo = new CommandInfo();
+ if (Cools.isEmpty(commandId)){
+ commandInfo = commandInfoService.selectOne(new EntityWrapper<CommandInfo>()
+ .eq("wrk_no",crnProtocol.getTaskNo())
+ .eq("device","Crn"));
+ }else {
+ commandInfo = commandInfoService.selectById(commandId);
+ }
+
if (commandInfo == null) {
//鎸囦护涓嶅瓨鍦�
continue;
@@ -1023,6 +1042,14 @@
}catch (Exception e){
log.error("鍫嗗灈鏈轰换鍔″畬鎴愶紝璇锋眰wms浠诲姟瀹屾垚鎺ュ彛澶辫触");
}
+ apiLogService.save("鍫嗗灈鏈哄紑濮嬭繍琛�"
+ ,wmsUrl+"wcsManager/wcsInterface/taskStatusFeedback"
+ ,null
+ ,"127.0.0.1"
+ ,JSON.toJSONString(taskOverToWms)
+ ,response
+ ,true
+ );
return response;
}
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 4347bc1..2438af2 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -150,7 +150,7 @@
,wmsUrl+"wcsManager/wcsInterface/inboundTaskApply"
,null
,"127.0.0.1"
- ,JSON.toJSONString(param)
+ ,JSON.toJSONString(toWmsDTO)
,response
,true
);
@@ -175,12 +175,19 @@
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
.eq("crn_no",data.getTaskTunnel())
.eq("type_no",1)
- .lt("crn_stn",200));
+ .lt("stn_no",200));
+ }else if (param.getWharfSource().contains("H")){
+ staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
+ .eq("crn_no",data.getTaskTunnel())
+ .eq("type_no",1)
+ .lt("stn_no",400)
+ .gt("stn_no",200));
}else {
staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
.eq("crn_no",data.getTaskTunnel())
.eq("type_no",1)
- .ge("crn_stn",200));
+ .lt("stn_no",500)
+ .ge("stn_no",400));
}
map1.put("taskTunnel", staDesc.getStnDesc());
//map1.put("taskTunnel", "J-1104");
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 17a80b2..53a5c34 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -275,7 +275,7 @@
CrnCommand crnCommand = new CrnCommand();
crnCommand.setAckFinish((short)1);
- if (write(crnCommand)) {
+ if (write2(crnCommand)) {
resetFlag = false;
}
}
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 668c8e3..392847d 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -670,13 +670,6 @@
staProtocol.setPakMk(true);
}
- //鏇存柊浠诲姟姝ュ簭
- TaskWrkService taskWrkService = SpringUtils.getBean(TaskWrkService.class);
- TaskWrk taskWrk = taskWrkService.selectByWrkNo(staProtocol.getWorkNo().intValue());
- if (taskWrk != null) {
- taskWrk.setCommandStep(taskWrk.getCommandStep() + 1);//鏇存柊鎸囦护姝ュ簭
- taskWrkService.updateById(taskWrk);
- }
}
}
diff --git a/src/main/webapp/views/deviceOperate/devpOperate.html b/src/main/webapp/views/deviceOperate/devpOperate.html
index 785df61..8dd7e98 100644
--- a/src/main/webapp/views/deviceOperate/devpOperate.html
+++ b/src/main/webapp/views/deviceOperate/devpOperate.html
@@ -54,7 +54,9 @@
</el-form-item>
</el-form>
<div>
- <el-button @click="requestOperate('put')" type="primary">鏇存柊</el-button>
+ <el-button @click="requestOperate('update')" type="primary">鏇存柊</el-button>
+ <el-button @click="requestOperate('out')" type="warning">鍙栬揣瀹屾垚</el-button>
+ <el-button @click="requestOperate('in')" type="warning">鏀捐揣瀹屾垚</el-button>
</div>
</div>
</el-card>
@@ -158,29 +160,36 @@
}
});
},
- requestOperate() {
+ requestOperate(method) {
let that = this
- $.ajax({
- url: baseUrl + "/site/detl/update",
- headers: {
- 'token': localStorage.getItem('token')
- },
- data: this.formParam,
- method: 'POST',
- success: function (res) {
- if (res.code == 200) {
- that.$message({
- message: res.msg,
- type: 'success'
- });
- } else {
- that.$message({
- message: res.msg,
- type: 'error'
- });
+ that.$confirm('姝ゆ搷浣滃瓨鍦ㄩ闄╋紝鏄惁缁х画','鎻愮ず',{
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(()=>{
+ $.ajax({
+ url: baseUrl + "/site/detl/"+method,
+ headers: {
+ 'token': localStorage.getItem('token')
+ },
+ data: this.formParam,
+ method: 'POST',
+ success: function (res) {
+ if (res.code == 200) {
+ that.$message({
+ message: res.msg,
+ type: 'success'
+ });
+ } else {
+ that.$message({
+ message: res.msg,
+ type: 'error'
+ });
+ }
}
- }
- });
+ });
+ })
+
}
}
})
--
Gitblit v1.9.1