opt:优化现场联调产生的问题

This commit is contained in:
2024-06-13 13:29:49 +08:00
parent 0a98b9ac44
commit f299f1c7d5
15 changed files with 313 additions and 254 deletions

View File

@@ -32,6 +32,7 @@ public class AgvWaitUtil {
AcsToWmsService acsToWmsService; AcsToWmsService acsToWmsService;
@Autowired @Autowired
@Lazy
InstructionService instructionService; InstructionService instructionService;
@Autowired @Autowired

View File

@@ -307,11 +307,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() > 0 && paperTubePickSiteDeviceDriver.getAction() == 1 if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) { && paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey); , paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey);
} }
@@ -478,11 +478,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 0 && paperTubePickSiteDeviceDriver.getAction() == 1 if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) { && paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货完成反馈,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货完成反馈,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey); , paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey);
} }
@@ -617,11 +617,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 1 && paperTubePickSiteDeviceDriver.getAction() == 1 if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) { && paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey); , paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey);
} }
@@ -792,10 +792,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 0) { if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), ikey); , paperTubePickSiteDeviceDriver.getError(), ikey);
} }
@@ -909,11 +910,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 0 && paperTubePickSiteDeviceDriver.getAction() == 1 if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) { && paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足放货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足放货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey); , paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey);
} }
@@ -1107,11 +1108,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 1 && paperTubePickSiteDeviceDriver.getAction() == 1 if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) { && paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
paperTubePickSiteDeviceDriver.setFlag(3);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction() log.info("设备{}当前光电信号{},动作信号{} ,错误信号{},设备状态{},不满足取货条件,指令号{}", device_code, paperTubePickSiteDeviceDriver.getMove(), paperTubePickSiteDeviceDriver.getAction()
, paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey); , paperTubePickSiteDeviceDriver.getError(), paperTubePickSiteDeviceDriver.getMode(), ikey);
} }
@@ -1237,7 +1239,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() == 0) { if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";
@@ -1369,7 +1372,8 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
if (paperTubePickSiteDeviceDriver.getMove() > 0) { if (paperTubePickSiteDeviceDriver.getAction() == 1
&& paperTubePickSiteDeviceDriver.getError() == 0 && paperTubePickSiteDeviceDriver.getMode() == 2) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0);
} else { } else {
message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件"; message = "设备号:" + device_code + "光电信号:" + paperTubePickSiteDeviceDriver.getMove() + ",动作信号:" + paperTubePickSiteDeviceDriver.getAction() + "报警信号:" + paperTubePickSiteDeviceDriver.getError() + ",指令号:" + ikey + "不满足取货条件";

View File

@@ -271,7 +271,11 @@ public class RgvDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDr
map.put("to_target", address); map.put("to_target", address);
map.put("to_sub_volume_no", material_code); map.put("to_sub_volume_no", material_code);
map.put("to_command", "1"); map.put("to_command", "1");
map.put("to_is_labeling",StrUtil.isNotEmpty(to_is_labeling)?"0":"1"); if (StrUtil.equals("1",to_is_labeling)){
map.put("to_is_labeling","1");
}else {
map.put("to_is_labeling","0");
}
this.writing(map); this.writing(map);
logServer.deviceExecuteLog(this.device_code, "", "", "申请行架任务,返回参数:" + applyManipulatorActionResponse); logServer.deviceExecuteLog(this.device_code, "", "", "申请行架任务,返回参数:" + applyManipulatorActionResponse);
message = "申请行架任务成功"; message = "申请行架任务成功";

View File

@@ -2,6 +2,7 @@ package org.nl.acs.device_driver.two_conveyor.blanking_button;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import lombok.Data; import lombok.Data;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@@ -35,10 +36,7 @@ import org.nl.config.lucene.service.dto.LuceneLogDto;
import org.nl.system.service.param.ISysParamService; import org.nl.system.service.param.ISysParamService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import java.util.Date; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** /**
* @author : TuQiang * @author : TuQiang
* @date : 2024/3/14 * @date : 2024/3/14
@@ -102,7 +100,7 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
Boolean iserror = false; Boolean iserror = false;
String deviceCode; String device_code;
String message = null; String message = null;
@@ -118,7 +116,7 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
@Override @Override
public void execute() { public void execute() {
deviceCode = this.getDeviceCode(); device_code = this.getDeviceCode();
heartbeat = this.itemProtocol.getItem_heartbeat(); heartbeat = this.itemProtocol.getItem_heartbeat();
mode = this.itemProtocol.getItem_mode(); mode = this.itemProtocol.getItem_mode();
move = this.itemProtocol.getItem_move(); move = this.itemProtocol.getItem_move();
@@ -156,22 +154,31 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
case 3: case 3:
log.debug("运行中"); log.debug("运行中");
break; break;
case 9: case 10:
// 表处下满料请求 // 表处下满料请求
if (!requireSucess) { if (!requireSucess) {
applyTakeFullVolume(); boolean b = applyTake();
if (b) {
requireSucess = true;
} }
break;
case 10:
//表处上空轴请求
if (!requireSucess) {
applyTakeEmptyShaft();
} }
break; break;
case 11: case 11:
//表处上空轴请求
if (!requireSucess) {
boolean b = applyTake();
if (b) {
requireSucess = true;
}
}
break;
case 9:
// 取消任务 // 取消任务
if (!requireSucess) { if (!requireSucess) {
cancelTask(); boolean b = applyTake();
if (b) {
requireSucess = true;
}
} }
break; break;
default: default:
@@ -184,110 +191,70 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
lastMove = move; lastMove = move;
lastAction = action; lastAction = action;
lastError = error; lastError = error;
} }
/**
* 表处下满料请求 private boolean applyTake() {
*/
public synchronized void applyTakeFullVolume() {
Date date = new Date(); Date date = new Date();
if (date.getTime() - this.instructionRequireTime.getTime() if (date.getTime() - this.instructionRequireTime.getTime()
< (long) this.instructionRequireTimeOut) { < (long) this.instructionRequireTimeOut) {
log.trace("触发时间因为小于{}毫秒,而被无视", this.instructionRequireTimeOut); log.trace("触发时间因为小于{}毫秒,而被无视", this.instructionRequireTimeOut);
return; return false;
} else { } else {
this.instructionRequireTime = date; JSONObject jo = new JSONObject();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), CommonFinalParam.ONE)) { jo.put("device_code", this.getDevice_code());
message = "two_message5"; if (this.mode==9) {
BlankingButtonRequest blankingButtonRequest = new BlankingButtonRequest(); jo.put("type",CommonFinalParam.TYPE_ONE);
blankingButtonRequest.setDevice_code(deviceCode);
blankingButtonRequest.setType(CommonFinalParam.TYPE_ONE);
BlankingButtonResponse response = acsToWmsService.applyBlankButtonTask(blankingButtonRequest);
if (ObjectUtil.isEmpty(response)) {
message = "two_message6";
} else {
if (response.getCode()== CommonFinalParam.STATUS_OPEN) {
this.writing("to_command","9");
message = "two_message7";
requireSucess = true;
} else {
requireSucess = false;
message = "two_message8";
this.writing("to_command","99");
} }
if (this.mode==10) {
jo.put("type",CommonFinalParam.TYPE_TWO);
} }
if (this.mode==11) {
jo.put("type",CommonFinalParam.TYPE_THREE);
}
HttpResponse httpResponse = acsToWmsService.applyBlankButtonTask(jo);
JSONObject jsonObject = null;
if(ObjectUtil.isNotEmpty(httpResponse)){
String body = httpResponse.body();
jsonObject = JSONObject.parseObject(body);
}
if(ObjectUtil.isNotNull(jsonObject) && jsonObject.getInteger("status") == 200){
Map map = new HashMap();
//反馈取消任务
if (this.mode==9) {
map.put("to_command", 9);
}
//反馈表处下满料请求
if (this.mode==10) {
map.put("to_command", 10);
}
//反馈表处上空轴请求
if (this.mode==11) {
map.put("to_command", 11);
}
try {
this.writing(map);
} catch (Exception e) {
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(device_code)
.content("下发信号报错" + map)
.build();
logDto.setLog_level(3);
luceneExecuteLogService.deviceExecuteLog(logDto);
}
return true;
}else{
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(device_code)
.content("反馈LMS表处按钮任务失败" + httpResponse.body())
.build();
logDto.setLog_level(3);
luceneExecuteLogService.deviceExecuteLog(logDto);
return false;
} }
} }
} }
/**
* 取消任务
*/
public synchronized void cancelTask() {
Date date = new Date();
if (date.getTime() - this.instructionRequireTime.getTime()
< (long) this.instructionRequireTimeOut) {
log.trace("触发时间因为小于{}毫秒,而被无视", this.instructionRequireTimeOut);
return;
} else {
this.instructionRequireTime = date;
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), CommonFinalParam.ONE)) {
message = "two_message9";
BlankingButtonRequest blankingButtonRequest = new BlankingButtonRequest();
blankingButtonRequest.setDevice_code(deviceCode);
blankingButtonRequest.setType(CommonFinalParam.TYPE_SIX);
BlankingButtonResponse response = acsToWmsService.applyBlankButtonTask(blankingButtonRequest);
if (ObjectUtil.isEmpty(response)) {
message = "two_message10";
} else {
if (response.getCode()== CommonFinalParam.STATUS_OPEN) {
this.writing("to_command","10");
message = "two_message11";
requireSucess = true;
} else {
requireSucess = false;
message = "two_message12";
this.writing("to_command","99");
}
}
}
}
}
/**
* 表处上空轴请求
*/
public synchronized void applyTakeEmptyShaft() {
Date date = new Date();
if (date.getTime() - this.instructionRequireTime.getTime()
< (long) this.instructionRequireTimeOut) {
log.trace("触发时间因为小于{}毫秒,而被无视", this.instructionRequireTimeOut);
return;
} else {
this.instructionRequireTime = date;
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), CommonFinalParam.ONE)) {
message = "two_message13";
BlankingButtonRequest blankingButtonRequest = new BlankingButtonRequest();
blankingButtonRequest.setDevice_code(deviceCode);
blankingButtonRequest.setType(CommonFinalParam.TYPE_TWO);
BlankingButtonResponse response = acsToWmsService.applyBlankButtonTask(blankingButtonRequest);
if (ObjectUtil.isEmpty(response)) {
message = "two_message14";
} else {
if (response.getCode()== CommonFinalParam.STATUS_OPEN) {
this.writing("to_command","10");
message = "two_message15";
requireSucess = true;
} else {
requireSucess = false;
message = "two_message16";
this.writing("to_command","99");
}
}
}
}
}
public void writing(String param, String value) { public void writing(String param, String value) {
@@ -298,9 +265,9 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
itemMap.put(to_param, Integer.parseInt(value)); itemMap.put(to_param, Integer.parseInt(value));
this.control(itemMap); this.control(itemMap);
logServer.deviceExecuteLog(deviceCode, "", "", "下发电气信号设备号:" + deviceCode + ",下发电气:" + to_param + ",下发电气值:" + value); logServer.deviceExecuteLog(device_code, "", "", "下发电气信号设备号:" + device_code + ",下发电气:" + to_param + ",下发电气值:" + value);
LuceneLogDto logDto = LuceneLogDto.builder() LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(deviceCode) .device_code(device_code)
.content("下发多个电气信号" + itemMap) .content("下发多个电气信号" + itemMap)
.build(); .build();
logDto.setLog_level(3); logDto.setLog_level(3);
@@ -369,4 +336,28 @@ public class BlankingButtonDriver extends AbstractOpcDeviceDriver implements Dev
public void setDeviceStatus(JSONObject data) { public void setDeviceStatus(JSONObject data) {
} }
public String getToParam() {
return this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code() + ".";
}
public void writing(Map<String, Object> map) throws Exception {
DeviceExecuteLogService logServer = SpringContextHolder.getBean("deviceExecuteLogServiceImpl");
Map<String, Object> itemMap = new LinkedHashMap<>();
map.forEach((key, value) -> {
if (ObjectUtil.isNotEmpty(value)) {
itemMap.put(getToParam() + key, value);
}
});
if (ObjectUtil.isNotEmpty(itemMap)) {
this.checkcontrol(itemMap);
logServer.deviceExecuteLog(this.getDevice().getDevice_code(), "", "", "下发多个电气信号:" + itemMap);
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(device_code)
.content("下发多个电气信号" + itemMap)
.build();
logDto.setLog_level(3);
luceneExecuteLogService.deviceExecuteLog(logDto);
}
}
} }

View File

@@ -100,7 +100,7 @@ public class GreenFoilMachineButtonDriver extends AbstractOpcDeviceDriver implem
Boolean iserror = false; Boolean iserror = false;
String deviceCode; String device_code;
String message = null; String message = null;
@@ -116,7 +116,7 @@ public class GreenFoilMachineButtonDriver extends AbstractOpcDeviceDriver implem
@Override @Override
public void execute() { public void execute() {
deviceCode = this.getDeviceCode(); device_code = this.getDeviceCode();
heartbeat = this.itemProtocol.getItem_heartbeat(); heartbeat = this.itemProtocol.getItem_heartbeat();
mode = this.itemProtocol.getItem_mode(); mode = this.itemProtocol.getItem_mode();
move = this.itemProtocol.getItem_move(); move = this.itemProtocol.getItem_move();
@@ -206,7 +206,7 @@ public class GreenFoilMachineButtonDriver extends AbstractOpcDeviceDriver implem
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), CommonFinalParam.ONE)) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), CommonFinalParam.ONE)) {
message = "two_message17"; message = "two_message17";
ApplyGreenFoilButtonRequest applyGreenFoilButtonRequest = new ApplyGreenFoilButtonRequest(); ApplyGreenFoilButtonRequest applyGreenFoilButtonRequest = new ApplyGreenFoilButtonRequest();
applyGreenFoilButtonRequest.setDevice_code(deviceCode); applyGreenFoilButtonRequest.setDevice_code(device_code);
applyGreenFoilButtonRequest.setType(String.valueOf(mode)); applyGreenFoilButtonRequest.setType(String.valueOf(mode));
ApplyGreenFoilButtonResponse response = acsToWmsService.applyGreenFoilButtonTask(applyGreenFoilButtonRequest); ApplyGreenFoilButtonResponse response = acsToWmsService.applyGreenFoilButtonTask(applyGreenFoilButtonRequest);
if (ObjectUtil.isEmpty(response)) { if (ObjectUtil.isEmpty(response)) {
@@ -242,9 +242,9 @@ public class GreenFoilMachineButtonDriver extends AbstractOpcDeviceDriver implem
itemMap.put(to_param, Integer.parseInt(value)); itemMap.put(to_param, Integer.parseInt(value));
this.control(itemMap); this.control(itemMap);
logServer.deviceExecuteLog(deviceCode, "", "", "下发电气信号设备号:" + deviceCode + ",下发电气:" + to_param + ",下发电气值:" + value); logServer.deviceExecuteLog(device_code, "", "", "下发电气信号设备号:" + device_code + ",下发电气:" + to_param + ",下发电气值:" + value);
LuceneLogDto logDto = LuceneLogDto.builder() LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(deviceCode) .device_code(device_code)
.content("下发多个电气信号" + itemMap) .content("下发多个电气信号" + itemMap)
.build(); .build();
luceneExecuteLogService.deviceExecuteLog(logDto); luceneExecuteLogService.deviceExecuteLog(logDto);

View File

@@ -86,7 +86,7 @@ public class InflatableShaftLibraryDeviceDriver extends AbstractOpcDeviceDriver
Boolean iserror = false; Boolean iserror = false;
String deviceCode; String device_code;
String message = null; String message = null;
@@ -101,7 +101,7 @@ public class InflatableShaftLibraryDeviceDriver extends AbstractOpcDeviceDriver
@Override @Override
public void execute() { public void execute() {
deviceCode = this.getDeviceCode(); device_code = this.getDeviceCode();
heartbeat = this.itemProtocol.getItem_heartbeat(); heartbeat = this.itemProtocol.getItem_heartbeat();
mode = this.itemProtocol.getItem_mode(); mode = this.itemProtocol.getItem_mode();
move = this.itemProtocol.getItem_move(); move = this.itemProtocol.getItem_move();
@@ -139,9 +139,9 @@ public class InflatableShaftLibraryDeviceDriver extends AbstractOpcDeviceDriver
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
logServer.deviceExecuteLog(deviceCode, "", "", "下发电气信号设备号:" + deviceCode + ",下发电气:" + to_param + ",下发电气值:" + value); logServer.deviceExecuteLog(device_code, "", "", "下发电气信号设备号:" + device_code + ",下发电气:" + to_param + ",下发电气值:" + value);
LuceneLogDto logDto = LuceneLogDto.builder() LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(deviceCode) .device_code(device_code)
.content("下发多个电气信号" + itemMap) .content("下发多个电气信号" + itemMap)
.build(); .build();
luceneExecuteLogService.deviceExecuteLog(logDto); luceneExecuteLogService.deviceExecuteLog(logDto);
@@ -163,7 +163,7 @@ public class InflatableShaftLibraryDeviceDriver extends AbstractOpcDeviceDriver
this.checkcontrol(itemMap); this.checkcontrol(itemMap);
logServer.deviceExecuteLog(this.getDevice().getDevice_code(), "", "", "下发多个电气信号:" + itemMap); logServer.deviceExecuteLog(this.getDevice().getDevice_code(), "", "", "下发多个电气信号:" + itemMap);
LuceneLogDto logDto = LuceneLogDto.builder() LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(this.deviceCode) .device_code(this.device_code)
.content("下发多个电气信号" + itemMap) .content("下发多个电气信号" + itemMap)
.build(); .build();
logDto.setLog_level(3); logDto.setLog_level(3);

View File

@@ -20,6 +20,7 @@ import org.nl.acs.device_driver.RouteableDeviceDriver;
import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver; import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver; import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
import org.nl.acs.device_driver.one_manipulator.box_storage_manipulator.InteractionJsonDTO; import org.nl.acs.device_driver.one_manipulator.box_storage_manipulator.InteractionJsonDTO;
import org.nl.acs.device_driver.two_conveyor.plug_pull_device_site.PlugPullDeviceSiteDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.pull_head_manipulator.ItemProtocol; import org.nl.acs.device_driver.two_conveyor.pull_head_manipulator.ItemProtocol;
import org.nl.acs.history.ErrorUtil; import org.nl.acs.history.ErrorUtil;
import org.nl.acs.history.service.DeviceErrorLogService; import org.nl.acs.history.service.DeviceErrorLogService;
@@ -379,6 +380,14 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
} }
} }
if (!ObjectUtil.isEmpty(task)) { if (!ObjectUtil.isEmpty(task)) {
String nextDeviceCode = task.getNext_device_code();
Device device = deviceAppService.findDeviceByCode(nextDeviceCode);
PlugPullDeviceSiteDeviceDriver plugPullDeviceSiteDeviceDriver;
if (device.getDeviceDriver() instanceof PlugPullDeviceSiteDeviceDriver) {
plugPullDeviceSiteDeviceDriver = (PlugPullDeviceSiteDeviceDriver) device.getDeviceDriver();
if (plugPullDeviceSiteDeviceDriver.getMode() != 2 && plugPullDeviceSiteDeviceDriver.getMove() != 0)
return false;
}
String taskId = task.getTask_id(); String taskId = task.getTask_id();
String taskCode = task.getTask_code(); String taskCode = task.getTask_code();
String vehicleCode = task.getVehicle_code(); String vehicleCode = task.getVehicle_code();
@@ -387,7 +396,7 @@ public class PullHeadManipulatorDeviceDriver extends AbstractOpcDeviceDriver imp
String startDeviceCode = task.getStart_device_code(); String startDeviceCode = task.getStart_device_code();
String routePlanCode = task.getRoute_plan_code(); String routePlanCode = task.getRoute_plan_code();
String nextPointCode = task.getNext_point_code(); String nextPointCode = task.getNext_point_code();
String nextDeviceCode = task.getNext_device_code();
Instruction instdto = new Instruction(); Instruction instdto = new Instruction();
instdto.setInstruction_id(IdUtil.simpleUUID()); instdto.setInstruction_id(IdUtil.simpleUUID());

View File

@@ -321,12 +321,14 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
} else { } else {
this.instruction_head_time = date; this.instruction_head_time = date;
String link_device_code = String.valueOf(this.getDevice().getExtraValue().get("link_device_code")); String link_device_code = String.valueOf(this.getDevice().getExtraValue().get("link_device_code"));
Device device = deviceAppservice.findDeviceByCode(link_device_code); List<String> extraDeviceCodes = getExtraDeviceCodes1(link_device_code);
String linkCode = extraDeviceCodes.get(0);
Device device = deviceAppservice.findDeviceByCode(linkCode);
SlitTwoManipulatorDeviceDriver slitTwoManipulatorDeviceDriver; SlitTwoManipulatorDeviceDriver slitTwoManipulatorDeviceDriver;
if (device.getDeviceDriver()instanceof SlitTwoManipulatorDeviceDriver) { if (device.getDeviceDriver() instanceof SlitTwoManipulatorDeviceDriver) {
slitTwoManipulatorDeviceDriver = (SlitTwoManipulatorDeviceDriver) device.getDeviceDriver(); slitTwoManipulatorDeviceDriver = (SlitTwoManipulatorDeviceDriver) device.getDeviceDriver();
//如果禁用 //如果禁用
if (slitTwoManipulatorDeviceDriver.getIs_disable()==1){ if (slitTwoManipulatorDeviceDriver.getIs_disable() == 1) {
//就去走关联设备异常取放货工位的任务 任务生成成功返回true 就不会走下面正常生成任务的逻辑 //就去走关联设备异常取放货工位的任务 任务生成成功返回true 就不会走下面正常生成任务的逻辑
try { try {
flag = instruction_require2(); flag = instruction_require2();
@@ -338,6 +340,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
} }
} }
} }
//没有生成异常取放货工位的任务 就生成正常关联取放货工位的任务
//抓取工位 //抓取工位
if (ObjectUtil.isEmpty(getDeviceCodeList)) { if (ObjectUtil.isEmpty(getDeviceCodeList)) {
getDeviceCodeList = this.getExtraDeviceCodes("get_device_code"); getDeviceCodeList = this.getExtraDeviceCodes("get_device_code");
@@ -396,6 +399,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
} else { } else {
this.instruction_head_time = date; this.instruction_head_time = date;
//抓取工位 //抓取工位
if (ObjectUtil.isEmpty(getDeviceCodeList)) { if (ObjectUtil.isEmpty(getDeviceCodeList)) {
getDeviceCodeList = this.getExtraDeviceCodes("error_get_device_code"); getDeviceCodeList = this.getExtraDeviceCodes("error_get_device_code");
} }
@@ -426,7 +430,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
for (int j = 0; j < taskDtoList.size(); j++) { for (int j = 0; j < taskDtoList.size(); j++) {
task = taskDtoList.get(j); task = taskDtoList.get(j);
// 9 行架任务 // 6 行架任务
if (ObjectUtil.isNotEmpty(task) && !StrUtil.equals(task.getTask_type(), "6")) { if (ObjectUtil.isNotEmpty(task) && !StrUtil.equals(task.getTask_type(), "6")) {
task = null; task = null;
continue; continue;
@@ -717,6 +721,26 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
//将扩展表中的字符串数组数据转换成集合 //将扩展表中的字符串数组数据转换成集合
public List<String> getExtraDeviceCodes1(String extraValue) {
if (StrUtil.isEmpty(extraValue)) {
return new ArrayList<>();
}
String devicesString = extraValue.substring(1, extraValue.length() - 1);
List<String> devicesList = new ArrayList<>();
String[] devices = devicesString.split(",");
for (int i = 0; i < devices.length; i++) {
String s = devices[i].replace("\"", "").replace("\"", "");
devicesList.add(s);
}
return devicesList;
}
/**
* 将扩展表中的字符串数据转换成集合
*
* @param extraName
* @return
*/
@Override @Override
public List<String> getExtraDeviceCodes(String extraName) { public List<String> getExtraDeviceCodes(String extraName) {
String extraValue = (String) this.getDevice().getExtraValue().get(extraName); String extraValue = (String) this.getDevice().getExtraValue().get(extraName);

View File

@@ -110,4 +110,12 @@ public class WmsToAcsController {
return new ResponseEntity<>(wmstoacsService.putWeightAction(whereJson), HttpStatus.OK); return new ResponseEntity<>(wmstoacsService.putWeightAction(whereJson), HttpStatus.OK);
} }
@PostMapping("/getTubeMsg")
@Log("wms下发废箔重量")
@SaIgnore
public ResponseEntity<Object> getTubeMes(@RequestBody String whereJson) throws Exception {
return new ResponseEntity<>(wmstoacsService.getTubeMes(whereJson), HttpStatus.OK);
}
} }

View File

@@ -148,7 +148,7 @@ public interface AcsToWmsService {
* @param param * @param param
* @return * @return
*/ */
BlankingButtonResponse applyBlankButtonTask(BlankingButtonRequest param); HttpResponse applyBlankButtonTask(JSONObject param);
/** /**
* 向lms申请反馈 * 向lms申请反馈

View File

@@ -117,4 +117,5 @@ public interface WmsToAcsService {
*/ */
Map<String, Object> putWeightAction(String jsonObject) throws Exception; Map<String, Object> putWeightAction(String jsonObject) throws Exception;
Map<String, Object> getTubeMes(String whereJson) throws Exception;
} }

View File

@@ -381,8 +381,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
@Override @Override
public ApplyGreenFoilButtonResponse applyGreenFoilButtonTask(ApplyGreenFoilButtonRequest param) { public ApplyGreenFoilButtonResponse applyGreenFoilButtonTask(ApplyGreenFoilButtonRequest param) {
try {
MDC.put(log_file_type, log_type);
ApplyGreenFoilButtonResponse applyGreenFoilButtonResponse = new ApplyGreenFoilButtonResponse(); ApplyGreenFoilButtonResponse applyGreenFoilButtonResponse = new ApplyGreenFoilButtonResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();
@@ -409,43 +407,39 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
luceneLogService.interfaceExecuteLog(luceneLogDto); luceneLogService.interfaceExecuteLog(luceneLogDto);
} }
return applyGreenFoilButtonResponse; return applyGreenFoilButtonResponse;
} finally {
MDC.remove(log_file_type);
}
} }
@Override @Override
public BlankingButtonResponse applyBlankButtonTask(BlankingButtonRequest param) { public HttpResponse applyBlankButtonTask(JSONObject param) {
HttpResponse result = null;
try { try {
MDC.put(log_file_type, log_type);
BlankingButtonResponse blankingButtonResponse = new BlankingButtonResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();
AddressDto addressDto = addressService.findByCode("applyButtonTask"); AddressDto addressDto = addressService.findByCode("applyButtonTask");
String methods_url = addressDto.getMethods_url(); String methods_url = addressDto.getMethods_url();
String url = wmsUrl + methods_url; String url = wmsUrl + methods_url;
log.info("BlankingButtonRequest----请求参数{}", param); log.info("applyBlankButtonTask----反馈表处按钮请求路径{}", param);
try { try {
// String result = ""; result = HttpRequest.post(url)
String result = HttpRequest.post(url) .header("Authorization", token)
.body(JSON.toJSONString(param)) .body(String.valueOf(param))
.execute().body(); .execute();
JSONObject jsonObject = JSONObject.parseObject(result);
log.info("BlankingButtonResponse----返回参数{}", result);
blankingButtonResponse = JSONObject.toJavaObject(jsonObject, BlankingButtonResponse.class);
} catch (Exception e) { } catch (Exception e) {
JSONObject map = new JSONObject(); String msg = e.getMessage();
map.put("status", 400); log.info("feedbackDie-----输出参数{}", msg);
map.put("message", e.getMessage()); //网络不通
return JSONObject.toJavaObject(map, BlankingButtonResponse.class);
} }
LuceneLogDto luceneLogDto = new LuceneLogDto(4,"BlankingButtonRequest", String.valueOf(blankingButtonResponse.getCode()), log.info("applyBlankButtonTask - 反馈表处按钮{}", result.body());
JSON.toJSONString(param), String.valueOf(blankingButtonResponse.getMessage()), "ACS向LMS申请表处下料位按钮任务"); LuceneLogDto luceneLogDto = new LuceneLogDto(4, "applyBlankButtonTask", String.valueOf(result.getStatus()),
JSON.toJSONString(result.body()),
String.valueOf(result.body()), "反馈下发表处任务");
luceneLogService.interfaceExecuteLog(luceneLogDto); luceneLogService.interfaceExecuteLog(luceneLogDto);
} return result;
return blankingButtonResponse; } catch (Exception e) {
} finally { LuceneLogDto luceneLogDto = new LuceneLogDto(4, "applyBlankButtonTask", String.valueOf(result.getStatus()),
MDC.remove(log_file_type); JSON.toJSONString(result),
String.valueOf(result.body()), "反馈下发表处任务报错");
luceneLogService.interfaceExecuteLog(luceneLogDto);
return null;
} }
} }
@@ -453,7 +447,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
public ApplyPlugPullSitResponse applyPlugPullSiteRequest(ApplyPlugPullSiteRequest param) { public ApplyPlugPullSitResponse applyPlugPullSiteRequest(ApplyPlugPullSiteRequest param) {
log.info("向LMS申请反馈,请求参数{}",param); log.info("向LMS申请反馈,请求参数{}",param);
try { try {
MDC.put(log_file_type, log_type);
ApplyPlugPullSitResponse applyPlugPullSitResponse = new ApplyPlugPullSitResponse(); ApplyPlugPullSitResponse applyPlugPullSitResponse = new ApplyPlugPullSitResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();
@@ -491,8 +484,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
@Override @Override
public ApplyfeedbackSubVolumeWeightResponse applyfeedbackSubVolumeWeight(ApplyfeedbackSubVolumeWeightRequest param) { public ApplyfeedbackSubVolumeWeightResponse applyfeedbackSubVolumeWeight(ApplyfeedbackSubVolumeWeightRequest param) {
log.info("向LMS申请反馈,请求参数{}",param); log.info("向LMS申请反馈,请求参数{}",param);
try {
MDC.put(log_file_type, log_type);
ApplyfeedbackSubVolumeWeightResponse applyfeedbackSubVolumeWeightResponse = new ApplyfeedbackSubVolumeWeightResponse(); ApplyfeedbackSubVolumeWeightResponse applyfeedbackSubVolumeWeightResponse = new ApplyfeedbackSubVolumeWeightResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();
@@ -519,16 +510,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
luceneLogService.interfaceExecuteLog(luceneLogDto); luceneLogService.interfaceExecuteLog(luceneLogDto);
} }
return applyfeedbackSubVolumeWeightResponse; return applyfeedbackSubVolumeWeightResponse;
} finally {
MDC.remove(log_file_type);
}
} }
@Override @Override
public ApplyManipulatorActionResponse applyManipulatorActionRequest(ApplyManipulatorActionRequest param) { public ApplyManipulatorActionResponse applyManipulatorActionRequest(ApplyManipulatorActionRequest param) {
log.info("向LMS申请反馈,请求参数{}", param); log.info("向LMS申请反馈,请求参数{}", param);
try {
MDC.put(log_file_type, log_type);
ApplyManipulatorActionResponse applyManipulatorActionResponse = new ApplyManipulatorActionResponse(); ApplyManipulatorActionResponse applyManipulatorActionResponse = new ApplyManipulatorActionResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();
@@ -555,17 +541,12 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
luceneLogService.interfaceExecuteLog(luceneLogDto); luceneLogService.interfaceExecuteLog(luceneLogDto);
} }
return applyManipulatorActionResponse; return applyManipulatorActionResponse;
} finally {
MDC.remove(log_file_type);
}
} }
@Override @Override
public GetWasteFoilWeightResponse feedbackWeight(GetWasteFoilWeightRequest param) { public GetWasteFoilWeightResponse feedbackWeight(GetWasteFoilWeightRequest param) {
log.info("向LMS申请反馈,请求参数{}", param); log.info("向LMS申请反馈,请求参数{}", param);
try { try {
MDC.put(log_file_type, log_type);
GetWasteFoilWeightResponse getWasteFoilWeightResponse = new GetWasteFoilWeightResponse(); GetWasteFoilWeightResponse getWasteFoilWeightResponse = new GetWasteFoilWeightResponse();
if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) {
String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue();

View File

@@ -22,6 +22,7 @@ import org.nl.acs.device_driver.one_conveyor.fold_disc_site.FoldDiscSiteDeviceDr
import org.nl.acs.device_driver.one_manipulator.box_package_manipulator.BoxPackageManipulatorDeviceDriver; import org.nl.acs.device_driver.one_manipulator.box_package_manipulator.BoxPackageManipulatorDeviceDriver;
import org.nl.acs.device_driver.conveyor.box_palletizing_manipulator.BoxPalletizingManipulatorDeviceDriver; import org.nl.acs.device_driver.conveyor.box_palletizing_manipulator.BoxPalletizingManipulatorDeviceDriver;
import org.nl.acs.device_driver.paper_tube_device2.PaperTubeConveyor2DeviceDriver; import org.nl.acs.device_driver.paper_tube_device2.PaperTubeConveyor2DeviceDriver;
import org.nl.acs.device_driver.paper_tube_pick_site.PaperTubePickSiteDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.blank_manipulator.BlankManipulatorDeviceDriver; import org.nl.acs.device_driver.two_conveyor.blank_manipulator.BlankManipulatorDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.hongxiang_conveyor.HongXiangStationDeviceDriver; import org.nl.acs.device_driver.two_conveyor.hongxiang_conveyor.HongXiangStationDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.hongxiang_device.HongXiangConveyorDeviceDriver; import org.nl.acs.device_driver.two_conveyor.hongxiang_device.HongXiangConveyorDeviceDriver;
@@ -489,8 +490,6 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
@Override @Override
public PutActionResponse putAction(String jsonObject) throws Exception { public PutActionResponse putAction(String jsonObject) throws Exception {
try {
MDC.put(log_file_type, log_type);
log.info("putAction--------------:输入参数" + jsonObject); log.info("putAction--------------:输入参数" + jsonObject);
JSONArray datas = JSONArray.parseArray(jsonObject); JSONArray datas = JSONArray.parseArray(jsonObject);
PutActionResponse response = new PutActionResponse(); PutActionResponse response = new PutActionResponse();
@@ -548,20 +547,15 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
} }
response.setStatus(200); response.setStatus(200);
response.setMessage("success"); response.setMessage("success");
LuceneLogDto luceneLogDto = new LuceneLogDto(4,"putAction", String.valueOf(response.getCode()), LuceneLogDto luceneLogDto = new LuceneLogDto(4, "putAction", String.valueOf(response.getCode()),
jsonObject, String.valueOf(response), "LMS下发动作"); jsonObject, String.valueOf(response), "LMS下发动作");
luceneExecuteLogService.interfaceExecuteLog(luceneLogDto); luceneExecuteLogService.interfaceExecuteLog(luceneLogDto);
log.info("putAction--------------:输出参数:" + response); log.info("putAction--------------:输出参数:" + response);
return response; return response;
} finally {
MDC.remove(log_file_type);
}
} }
@Override @Override
public Map<String, Object> putWeightAction(String jsonObject) throws Exception { public Map<String, Object> putWeightAction(String jsonObject) throws Exception {
try {
MDC.put(log_file_type, log_type);
log.info("putWeightAction--------------:输入参数" + jsonObject); log.info("putWeightAction--------------:输入参数" + jsonObject);
JSONArray datas = JSONArray.parseArray(jsonObject); JSONArray datas = JSONArray.parseArray(jsonObject);
JSONObject jo = new JSONObject(); JSONObject jo = new JSONObject();
@@ -582,7 +576,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
wasteFoilWeighingStationDriver.writing("to_command", "6"); wasteFoilWeighingStationDriver.writing("to_command", "6");
Thread.sleep(1000); //休眠1秒 Thread.sleep(1000); //休眠1秒
while (true) { while (true) {
if (wasteFoilWeighingStationDriver.getMode()==6){ if (wasteFoilWeighingStationDriver.getMode() == 6) {
jo.put("currentWeight", wasteFoilWeighingStationDriver.getWeight());//当前重量 jo.put("currentWeight", wasteFoilWeighingStationDriver.getWeight());//当前重量
jo.put("lastWeight", wasteFoilWeighingStationDriver.getOld_weight());//上一次重量 jo.put("lastWeight", wasteFoilWeighingStationDriver.getOld_weight());//上一次重量
jo.put("weightGap", wasteFoilWeighingStationDriver.getGap_weight());//重量差 jo.put("weightGap", wasteFoilWeighingStationDriver.getGap_weight());//重量差
@@ -596,7 +590,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
wasteFoilWeighingStationDriver.writing("to_command", "7"); wasteFoilWeighingStationDriver.writing("to_command", "7");
Thread.sleep(1000); //休眠1秒 Thread.sleep(1000); //休眠1秒
while (true) { while (true) {
if (wasteFoilWeighingStationDriver.getMode()==7){ if (wasteFoilWeighingStationDriver.getMode() == 7) {
jo.put("currentWeight", wasteFoilWeighingStationDriver.getWeight());//当前重量 jo.put("currentWeight", wasteFoilWeighingStationDriver.getWeight());//当前重量
jo.put("lastWeight", wasteFoilWeighingStationDriver.getOld_weight());//上一次重量 jo.put("lastWeight", wasteFoilWeighingStationDriver.getOld_weight());//上一次重量
jo.put("weightGap", wasteFoilWeighingStationDriver.getGap_weight());//重量差 jo.put("weightGap", wasteFoilWeighingStationDriver.getGap_weight());//重量差
@@ -616,9 +610,49 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
resultJson.put("data", jo); resultJson.put("data", jo);
log.info("putWeightAction--------------:输出参数" + resultJson.toString()); log.info("putWeightAction--------------:输出参数" + resultJson.toString());
return resultJson; return resultJson;
} finally {
MDC.remove(log_file_type);
} }
@Override
public Map<String, Object> getTubeMes(String jsonObject) throws Exception {
log.info("getTubeMes--------------:输入参数" + jsonObject);
JSONArray datas = JSONArray.parseArray(jsonObject);
JSONObject jo = new JSONObject();
for (int i = 0; i < datas.size(); i++) {
JSONObject data = (JSONObject) datas.get(i);
String device_code = data.getString("device_code");
String to_material = data.getString("to_material");
String to_spec = data.getString("to_spec");
String to_qty = data.getString("to_qty");
Device device = deviceAppService.findDeviceByCode(device_code);
if (ObjectUtil.isEmpty(device)) {
throw new Exception("未找到对应设备:" + device_code);
}
PaperTubePickSiteDeviceDriver paperTubePickSiteDeviceDriver;
if (device.getDeviceDriver() instanceof WasteFoilWeighingStationDriver) {
paperTubePickSiteDeviceDriver = (PaperTubePickSiteDeviceDriver) device.getDeviceDriver();
try {
//反馈管芯信息
Thread.sleep(1000); //休眠1秒
while (true) {
if (paperTubePickSiteDeviceDriver.getMode() == 2 && paperTubePickSiteDeviceDriver.getFlag() == 3) {
jo.put("to_material", to_material);//当前重量
jo.put("to_spec", to_spec);//上一次重量
jo.put("to_qty", to_qty);//重量差
break;
}
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
JSONObject resultJson = new JSONObject();
resultJson.put("status", HttpStatus.OK.value());
resultJson.put("message", "操作成功");
resultJson.put("data", jo);
log.info("putWeightAction--------------:输出参数" + resultJson.toString());
return resultJson;
} }
@Override @Override

View File

@@ -24,7 +24,8 @@ public class DeviceStageMonitorServiceImpl implements DeviceStageMonitorService
@Override @Override
public JSONArray getData(JSONArray jsonArray) throws Exception { public JSONArray
getData(JSONArray jsonArray) throws Exception {
JSONArray arr = new JSONArray(); JSONArray arr = new JSONArray();
for (int i = 0; i < jsonArray.size(); i++) { for (int i = 0; i < jsonArray.size(); i++) {
JSONObject obj = new JSONObject(); JSONObject obj = new JSONObject();

View File

@@ -283,6 +283,7 @@ export default {
dialogFormVisible10: false, dialogFormVisible10: false,
Stages: [], Stages: [],
stage_code: 'stage_code', stage_code: 'stage_code',
stage_name: '二楼监控',
form: { form: {
device_code: '', device_code: '',
hasGoodStatus: null, hasGoodStatus: null,
@@ -505,7 +506,7 @@ export default {
this.arr = [] // 清空 this.arr = [] // 清空
if (item.device_code && item.data) { if (item.device_code && item.data) {
console.log('item', item) console.log('item', item)
/* let tempDeviceName = '' let tempDeviceName = ''
if (this.language === 'zh') { if (this.language === 'zh') {
tempDeviceName = item.data.zh_device_name tempDeviceName = item.data.zh_device_name
} }
@@ -514,7 +515,7 @@ export default {
} }
if (this.language === 'in') { if (this.language === 'in') {
tempDeviceName = item.data.in_device_name tempDeviceName = item.data.in_device_name
} */ }
this.arr = [ this.arr = [
{ name: i18n.t('monitor.click.equipment_number'), value: item.device_code }, { name: i18n.t('monitor.click.equipment_number'), value: item.device_code },
{ name: i18n.t('monitor.click.device_name'), value: item.device_name } { name: i18n.t('monitor.click.device_name'), value: item.device_name }