Commit 91ae5cbf authored by 周毅's avatar 周毅

添加日志输出

parent 69251cfa
package com.gavel.qzsa.agv.process; package com.gavel.qzsa.agv.process;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.fastjson.JSONObject;
import com.gavel.common.utils.DateUtils; import com.gavel.common.utils.DateUtils;
import com.gavel.common.utils.SpringUtils; import com.gavel.common.utils.SpringUtils;
import com.gavel.qzsa.agv.service.HcMsglogService; import com.gavel.qzsa.agv.service.HcMsglogService;
...@@ -11,7 +15,7 @@ import com.gavel.qzsa.rabbitmq.model.TaskFeedback; ...@@ -11,7 +15,7 @@ import com.gavel.qzsa.rabbitmq.model.TaskFeedback;
public class AgvTaskHandler implements Runnable { public class AgvTaskHandler implements Runnable {
private Logger logger = LoggerFactory.getLogger(this.getClass());
//任务单号 //任务单号
private AgvTask agvTask; private AgvTask agvTask;
...@@ -52,6 +56,7 @@ public class AgvTaskHandler implements Runnable { ...@@ -52,6 +56,7 @@ public class AgvTaskHandler implements Runnable {
if("任务下发".equals(agvTask.getMsgtype())){ if("任务下发".equals(agvTask.getMsgtype())){
needWriteQueue = true; needWriteQueue = true;
feedback.setMsgtype("接收任务反馈"); feedback.setMsgtype("接收任务反馈");
logger.debug("处理任务下发!{} ", JSONObject.toJSONString(agvTask));
rcmsService().genHcTask(agvTask); rcmsService().genHcTask(agvTask);
feedback.setMsgcode("1"); feedback.setMsgcode("1");
feedback.setMessage("任务下发成功,agvCode:"+agvTask.getTask().getAgvCode()); feedback.setMessage("任务下发成功,agvCode:"+agvTask.getTask().getAgvCode());
......
...@@ -159,32 +159,34 @@ public class AgvServiceImpl extends BaseEditServiceImpl implements AgvService { ...@@ -159,32 +159,34 @@ public class AgvServiceImpl extends BaseEditServiceImpl implements AgvService {
//充电状态,阈值比较 //充电状态,阈值比较
if(StringUtils.equals(isEnable,"Y")){ if(StringUtils.equals(isEnable,"Y")){
if(StringUtils.equals("7",agvStatus.getStatus())) { if(StringUtils.equals("7",agvStatus.getStatus())) {
String agvdl = commonService.getStringOptionValue(JcsjParamEnum.AgvBatterySetting.id()); Integer yz = commonService.getIntOptionValue(JcsjParamEnum.AgvBatterySetting.id());//设置值
Integer yz = Integer.valueOf(agvdl);//设置值
Integer curValue = Integer.valueOf(agvStatus.getBattery());//获取小车值 Integer curValue = Integer.valueOf(agvStatus.getBattery());//获取小车值
if(NumberUtils.less(curValue , yz)){ if(NumberUtils.less(curValue , yz)){
logger.error("小车{}正在充电,且当前电量{}低于设定阈值{}!", agvStatus.getRobotCode(), curValue, yz);
continue; continue;
} }
} }
} }
//查询Eptask中是否已存在小车,如果存在,返回空,生成任务失败 //查询Eptask中是否已存在小车,如果存在,返回空,生成任务失败
if (eptaskDao.countExecutingHcTask(agvStatus.getRobotCode()) > 0) { if (eptaskDao.countExecutingHcTask(agvStatus.getRobotCode()) > 0) {
logger.error("小车"+agvStatus.getRobotCode()+"已存在执行任务,生成任务失败!"); logger.error("小车"+agvStatus.getRobotCode()+"已存在执行任务!");
continue; continue;
} }
if(StringUtils.isNotEmpty(template.getAgv())){ if(StringUtils.isNotEmpty(template.getAgv())){
if(StringUtils.contains(template.getAgv(),agvStatus.getRobotCode())){ if(StringUtils.contains(template.getAgv(),agvStatus.getRobotCode())){
String lockKey = "AgvTask"; String lockKey = "AgvTask-"+agvStatus.getRobotCode();
if(!LockUtils.lock(lockKey,agvStatus.getRobotCode())) { if(!LockUtils.lock(lockKey,agvStatus.getRobotCode())) {
logger.error("小车{}已被别的任务占用,继续寻找小车!", agvStatus.getRobotCode());
continue; continue;
} }
LockUtils.releaseLock(lockKey,agvStatus.getRobotCode()); LockUtils.releaseLock(lockKey,agvStatus.getRobotCode());
return agvStatus.getRobotCode(); return agvStatus.getRobotCode();
} }
}else { }else {
String lockKey = "AgvTask"; String lockKey = "AgvTask-"+agvStatus.getRobotCode();
if(!LockUtils.lock(lockKey,agvStatus.getRobotCode())) { if(!LockUtils.lock(lockKey,agvStatus.getRobotCode())) {
logger.error("小车{}已被别的任务占用,继续寻找小车!", agvStatus.getRobotCode());
continue; continue;
} }
LockUtils.releaseLock(lockKey,agvStatus.getRobotCode()); LockUtils.releaseLock(lockKey,agvStatus.getRobotCode());
......
package com.gavel.qzsa.agv.service.impl; package com.gavel.qzsa.agv.service.impl;
import java.util.Calendar;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.gavel.common.base.service.impl.BaseEditServiceImpl; import com.gavel.common.base.service.impl.BaseEditServiceImpl;
import com.gavel.common.business.service.CommonService; import com.gavel.common.business.service.CommonService;
import com.gavel.common.lock.LockUtils; import com.gavel.common.lock.LockUtils;
import com.gavel.common.utils.StringUtils; import com.gavel.common.utils.StringUtils;
import com.gavel.common.utils.UserInfoUtil; import com.gavel.common.utils.UserInfoUtil;
import com.gavel.persistence.sql.RecordSet;
import com.gavel.qzsa.agv.dao.EptaskDao; import com.gavel.qzsa.agv.dao.EptaskDao;
import com.gavel.qzsa.agv.persistent.Agvtaskqueue; import com.gavel.qzsa.agv.persistent.Agvtaskqueue;
import com.gavel.qzsa.agv.persistent.Eptask; import com.gavel.qzsa.agv.persistent.Eptask;
...@@ -24,21 +31,13 @@ import com.gavel.qzsa.mcs.utils.EpTask2Enum; ...@@ -24,21 +31,13 @@ import com.gavel.qzsa.mcs.utils.EpTask2Enum;
import com.gavel.qzsa.mcs.utils.EpTaskEnum; import com.gavel.qzsa.mcs.utils.EpTaskEnum;
import com.gavel.qzsa.rabbitmq.handler.MessageHandler; import com.gavel.qzsa.rabbitmq.handler.MessageHandler;
import com.gavel.qzsa.rabbitmq.model.AgvTask; import com.gavel.qzsa.rabbitmq.model.AgvTask;
import com.gavel.persistence.sql.RecordSet;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Calendar;
@Service("eptaskService") @Service("eptaskService")
@Transactional @Transactional
public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskService { public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskService {
private Logger logger = LoggerFactory.getLogger(this.getClass()); // private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired @Autowired
private EptaskDao eptaskDao; private EptaskDao eptaskDao;
...@@ -156,7 +155,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ ...@@ -156,7 +155,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ
} }
String cancelTemplate = ","+commonService.getStringOptionValue(JcsjParamEnum.AGVBACK_TEMPLATE.id())+","; String cancelTemplate = ","+commonService.getStringOptionValue(JcsjParamEnum.AGVBACK_TEMPLATE.id())+",";
boolean isCancel = cancelTemplate.indexOf(","+agvTask.getTasktype()+",") >= 0; boolean isCancel = cancelTemplate.indexOf(","+agvTask.getTasktype()+",") >= 0;
String lockKey = "AgvTask"; String lockKey = "AgvTask-"+agvTask.getAgvcode();
String agvCode = agvTask.getAgvcode(); String agvCode = agvTask.getAgvcode();
//查询空闲小车 //查询空闲小车
if (!isCancel){ if (!isCancel){
...@@ -164,7 +163,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ ...@@ -164,7 +163,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ
if(StringUtils.isEmpty(agvCode) ){ if(StringUtils.isEmpty(agvCode) ){
throwReturnMessage("未找到小车,生成任务失败!"); throwReturnMessage("未找到小车,生成任务失败!");
} }
//agvCode="1143"; // agvCode="1143";
} }
if (LockUtils.lock(lockKey, agvCode)){ if (LockUtils.lock(lockKey, agvCode)){
try{ try{
...@@ -202,6 +201,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ ...@@ -202,6 +201,7 @@ public class EptaskServiceImpl extends BaseEditServiceImpl implements EptaskServ
throwReturnMessage("货架"+pod.getPodCode()+"PLC连接状态不正确, 生成任务失败!"); throwReturnMessage("货架"+pod.getPodCode()+"PLC连接状态不正确, 生成任务失败!");
} }
eptask.setPodCode(pod.getPodCode()); eptask.setPodCode(pod.getPodCode());
// eptask.setPodCode("1001");
} }
eptask.setCreateDate(Calendar.getInstance().getTime()); eptask.setCreateDate(Calendar.getInstance().getTime());
eptask.setPriority("1");//优先级 eptask.setPriority("1");//优先级
......
...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject; ...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.gavel.common.base.service.impl.BaseEditServiceImpl; import com.gavel.common.base.service.impl.BaseEditServiceImpl;
import com.gavel.common.converter.DataConvert; import com.gavel.common.converter.DataConvert;
import com.gavel.common.utils.DateUtils; import com.gavel.common.utils.DateUtils;
import com.gavel.common.utils.StringUtils;
import com.gavel.qzsa.agv.persistent.Agvtaskqueue; import com.gavel.qzsa.agv.persistent.Agvtaskqueue;
import com.gavel.qzsa.agv.utils.MsgCodeEnum; import com.gavel.qzsa.agv.utils.MsgCodeEnum;
import com.gavel.qzsa.rabbitmq.model.AgvTask; import com.gavel.qzsa.rabbitmq.model.AgvTask;
...@@ -43,7 +44,8 @@ public class HcMsglogServiceImpl extends BaseEditServiceImpl implements HcMsglog ...@@ -43,7 +44,8 @@ public class HcMsglogServiceImpl extends BaseEditServiceImpl implements HcMsglog
HcMsglog hcMsglog = new HcMsglog(); HcMsglog hcMsglog = new HcMsglog();
hcMsglog.setGuid(agvTask.getGuid()); hcMsglog.setGuid(agvTask.getGuid());
hcMsglog.setTasktype(agvTask.getTasktype()); hcMsglog.setTasktype(agvTask.getTasktype());
hcMsglog.setRevtime(DateUtils.parseDate(feedback.getTime())); if (StringUtils.isNotEmpty(feedback.getTime()))
hcMsglog.setRevtime(DateUtils.parseDate(feedback.getTime()));
hcMsglog.setDesttask(DataConvert.list2JSONString(agvTask.getDesttask())); hcMsglog.setDesttask(DataConvert.list2JSONString(agvTask.getDesttask()));
hcMsglog.setMsgcode(feedback.getMsgcode()); hcMsglog.setMsgcode(feedback.getMsgcode());
hcMsglog.setMessage(JSONObject.toJSONString(feedback)); hcMsglog.setMessage(JSONObject.toJSONString(feedback));
......
package com.gavel.qzsa.config; package com.gavel.qzsa.config;
import com.gavel.qzsa.rabbitmq.handler.MessageHandler; import org.slf4j.Logger;
import com.gavel.timer.scheduler.TimerJobFactory; import org.slf4j.LoggerFactory;
import com.gavel.timer.scheduler.TimerJobInit;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
...@@ -11,8 +10,14 @@ import org.springframework.core.annotation.Order; ...@@ -11,8 +10,14 @@ import org.springframework.core.annotation.Order;
import org.springframework.scheduling.quartz.SchedulerFactoryBean; import org.springframework.scheduling.quartz.SchedulerFactoryBean;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import com.gavel.qzsa.rabbitmq.handler.MessageHandler;
import com.gavel.timer.scheduler.TimerJobFactory;
import com.gavel.timer.scheduler.TimerJobInit;
@Configuration @Configuration
public class InitConfig { public class InitConfig {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired @Autowired
private TimerJobFactory timerJobFactory; private TimerJobFactory timerJobFactory;
...@@ -26,15 +31,44 @@ public class InitConfig { ...@@ -26,15 +31,44 @@ public class InitConfig {
@Autowired @Autowired
private MessageHandler messageHandler; private MessageHandler messageHandler;
// @Autowired
// private AgvtaskqueueService agvtaskqueueService;
@Override @Override
public void run(String... args) throws Exception { public void run(String... args) throws Exception {
messageHandler.init(); messageHandler.init();
timerJobInit.init(); timerJobInit.init();
// test();
} }
/*private void test() {
String value = "{\"msgtype\":\"任务下发\",\"guid\":\"202210230930490000T\",\"tasktype\":\"S31\",\"desttask\":[{\"device\":101,\"desc\":\"上盘\"},{\"device\":101,\"desc\":\"上盘\"},{\"device\":0,\"desc\":\"下盘\"},{\"device\":0,\"desc\":\"下盘\"}],\"EquipID\":201,\"time\":\"2022-10-23 09:30:49.590\"}";
AgvTask agvTask = JSONObject.parseObject(value, AgvTask.class);
if (StringUtils.equals(agvTask.getMsgtype(), MessageHandler.TASK_START)
|| StringUtils.equals(agvTask.getMsgtype(), MessageHandler.TASK_CANCEL)
|| StringUtils.equals(agvTask.getMsgtype(), MessageHandler.TASK_PAUSE)
|| StringUtils.equals(agvTask.getMsgtype(), MessageHandler.TASK_RECORVER)){
TaskFeedback feedback = null;
try {
agvtaskqueueService.writeMessage(value);
}catch (Exception e){
feedback = new TaskFeedback();
feedback.setGuid(agvTask.getGuid());
feedback.setMessage(e.getMessage());
feedback.setMsgtype("接收任务反馈");
feedback.setTime(DateUtils.formatDate(DateUtils.getDateTime(),DateUtils.MillISECONDS_DATE_FORMAT));
feedback.setMsgcode("2");
}finally {
SpringUtils.getBean(HcMsglogService.class).addMsgLog(feedback,agvTask);
SpringUtils.getBean(RabbitMqSendMessage.class).sendMessageAgvTask(feedback);
}
}else
MessageHandler.executorSerivce.execute(new AgvTaskHandler(agvTask));
}*/
public void askForLeave(){ public void askForLeave(){
System.out.println("项目启动了,执行了方法"); logger.debug("项目启动了,执行了方法");
} }
} }
......
...@@ -3,12 +3,16 @@ package com.gavel.qzsa.jcsj.service.impl; ...@@ -3,12 +3,16 @@ package com.gavel.qzsa.jcsj.service.impl;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.alibaba.fastjson.JSONObject;
import com.gavel.common.base.service.impl.BaseEditServiceImpl; import com.gavel.common.base.service.impl.BaseEditServiceImpl;
import com.gavel.common.utils.StringUtils; import com.gavel.common.utils.StringUtils;
import com.gavel.persistence.sql.RecordSet;
import com.gavel.qzsa.jcsj.dao.GwDao; import com.gavel.qzsa.jcsj.dao.GwDao;
import com.gavel.qzsa.jcsj.dao.PodDao; import com.gavel.qzsa.jcsj.dao.PodDao;
import com.gavel.qzsa.jcsj.dao.TemplateDao; import com.gavel.qzsa.jcsj.dao.TemplateDao;
...@@ -24,13 +28,14 @@ import com.gavel.qzsa.jcsj.vo.TemplateVO; ...@@ -24,13 +28,14 @@ import com.gavel.qzsa.jcsj.vo.TemplateVO;
import com.gavel.qzsa.jcsj.vo.TemplatedetailVO; import com.gavel.qzsa.jcsj.vo.TemplatedetailVO;
import com.gavel.qzsa.mcs.model.Position; import com.gavel.qzsa.mcs.model.Position;
import com.gavel.qzsa.rabbitmq.model.Device; import com.gavel.qzsa.rabbitmq.model.Device;
import com.gavel.persistence.sql.RecordSet;
@Service @Service
@Transactional @Transactional
public class TemplateServiceImpl extends BaseEditServiceImpl implements TemplateService { public class TemplateServiceImpl extends BaseEditServiceImpl implements TemplateService {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired @Autowired
private TemplateDao templateDao; private TemplateDao templateDao;
...@@ -173,6 +178,8 @@ public class TemplateServiceImpl extends BaseEditServiceImpl implements Template ...@@ -173,6 +178,8 @@ public class TemplateServiceImpl extends BaseEditServiceImpl implements Template
if (StringUtils.isEmpty(code)) { if (StringUtils.isEmpty(code)) {
throwReturnMessage("编码不允许为空!"); throwReturnMessage("编码不允许为空!");
} }
logger.debug("解析路线模板调用参数!agvCode【{}】, templateCode【{}】, deviceList【{}】, equipID【{}】",
agvCode, code, JSONObject.toJSONString(deviceList), equipID);
List<Position> list = new ArrayList<>(); List<Position> list = new ArrayList<>();
//查询模板 //查询模板
Template param = new Template(); Template param = new Template();
...@@ -253,9 +260,10 @@ public class TemplateServiceImpl extends BaseEditServiceImpl implements Template ...@@ -253,9 +260,10 @@ public class TemplateServiceImpl extends BaseEditServiceImpl implements Template
deviceIndex++; deviceIndex++;
} else if (StringUtils.equals(templatedetail.getGwlx(), GwlxEnum.S.getId())) { } else if (StringUtils.equals(templatedetail.getGwlx(), GwlxEnum.S.getId())) {
//设备单元工位位置点 //设备单元工位位置点
logger.debug("设备起止点解析!equipID【{}】,gwlx【{}】", equipID, templatedetail.getGwlx());
Gw gw = gwDao.findByDevice(equipID, templatedetail.getGwlx()); Gw gw = gwDao.findByDevice(equipID, templatedetail.getGwlx());
if (gw == null) { if (gw == null) {
throwReturnMessage("无法获取设备单元%s的%s!", equipID, GwlxEnum.findNameById(templatedetail.getGwlx())); throwReturnMessage("无法获取起止设备%s的%s!", equipID, GwlxEnum.findNameById(templatedetail.getGwlx()));
} }
position.setPositionCode(gw.getMapdatacode()); position.setPositionCode(gw.getMapdatacode());
list.add(position); list.add(position);
......
...@@ -18,7 +18,7 @@ public enum GwlxEnum { ...@@ -18,7 +18,7 @@ public enum GwlxEnum {
F("货架摆放点", "6"), F("货架摆放点", "6"),
G("取消点内", "7"), G("取消点内", "7"),
H("取消点外", "8"), H("取消点外", "8"),
S("设备单元", "10"), S("起止设备", "10"),
Z("切换设备◎", "99"); Z("切换设备◎", "99");
private String id; private String id;
......
...@@ -468,9 +468,9 @@ public class RcmsServiceImpl extends BaseEditServiceImpl implements RcmsService ...@@ -468,9 +468,9 @@ public class RcmsServiceImpl extends BaseEditServiceImpl implements RcmsService
// RCS 提交任务 // RCS 提交任务
List<Device> deviceList = agvTask.getDesttask().stream().filter(device -> !"0".equals(device.getDevice())).collect(Collectors.toList()); //过滤设备号为零 List<Device> deviceList = agvTask.getDesttask().stream().filter(device -> !"0".equals(device.getDevice())).collect(Collectors.toList()); //过滤设备号为零
String equipID = agvTask.getEquipID();
//获取位置集合 //获取位置集合
List<Position> positionCodePath = templateService.parseTemplate(eptask.getAgvCode(),agvTask.getTasktype(),deviceList,equipID); LOG.debug("解析路线模板调用前的参数传入!{}", JSONObject.toJSONString(agvTask));
List<Position> positionCodePath = templateService.parseTemplate(eptask.getAgvCode(),agvTask.getTasktype(),deviceList,agvTask.getEquipID());
GenAgvTaskResp genAgvTaskResp = genAgvSchedulingTask(eptask.getTaskTyp(), GenAgvTaskResp genAgvTaskResp = genAgvSchedulingTask(eptask.getTaskTyp(),
positionCodePath, eptask.getPriority(), eptask.getTaskCode(),eptask.getPodCode(),eptask.getAgvCode()); positionCodePath, eptask.getPriority(), eptask.getTaskCode(),eptask.getPodCode(),eptask.getAgvCode());
......
...@@ -55,6 +55,7 @@ public class AgvTaskQueueHandler implements Runnable { ...@@ -55,6 +55,7 @@ public class AgvTaskQueueHandler implements Runnable {
logger.error(e.getMessage()); logger.error(e.getMessage());
} }
} else { } else {
logger.debug("process AgvTaskQueue!{}", JSONObject.toJSONString(agvtaskQueue));
AgvTask agvTask = new AgvTask(); AgvTask agvTask = new AgvTask();
agvTask.setTasktype(agvtaskQueue.getTasktype()); agvTask.setTasktype(agvtaskQueue.getTasktype());
agvTask.setGuid(agvtaskQueue.getGuid()); agvTask.setGuid(agvtaskQueue.getGuid());
......
package com.gavel.qzsa.rabbitmq.handler; package com.gavel.qzsa.rabbitmq.handler;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import org.apache.commons.codec.binary.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.gavel.common.utils.DateUtils; import com.gavel.common.utils.DateUtils;
import com.gavel.common.utils.SpringUtils; import com.gavel.common.utils.SpringUtils;
...@@ -13,13 +23,6 @@ import com.gavel.qzsa.jcsj.redisplcqueue.RedisQueuePlcTask; ...@@ -13,13 +23,6 @@ import com.gavel.qzsa.jcsj.redisplcqueue.RedisQueuePlcTask;
import com.gavel.qzsa.rabbitmq.model.AgvStatusModel; import com.gavel.qzsa.rabbitmq.model.AgvStatusModel;
import com.gavel.qzsa.rabbitmq.model.AgvTask; import com.gavel.qzsa.rabbitmq.model.AgvTask;
import com.gavel.qzsa.rabbitmq.model.TaskFeedback; import com.gavel.qzsa.rabbitmq.model.TaskFeedback;
import org.apache.commons.codec.binary.StringUtils;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@Service @Service
@RabbitListener @RabbitListener
...@@ -38,7 +41,7 @@ public class MessageHandler{ ...@@ -38,7 +41,7 @@ public class MessageHandler{
public static ExecutorService parseExecutor = Executors.newSingleThreadExecutor(); public static ExecutorService parseExecutor = Executors.newSingleThreadExecutor();
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Autowired @Autowired
private AgvtaskqueueService agvtaskqueueService; private AgvtaskqueueService agvtaskqueueService;
...@@ -66,7 +69,7 @@ public class MessageHandler{ ...@@ -66,7 +69,7 @@ public class MessageHandler{
value = new String((byte[])message); value = new String((byte[])message);
}else }else
value = message.toString(); value = message.toString();
//LOGGER.info("process AgvTask {}", value); logger.debug("process AgvTask {}", value);
AgvTask agvTask = JSONObject.parseObject(value, AgvTask.class); AgvTask agvTask = JSONObject.parseObject(value, AgvTask.class);
if (StringUtils.equals(agvTask.getMsgtype(), TASK_START) if (StringUtils.equals(agvTask.getMsgtype(), TASK_START)
......
...@@ -84,6 +84,7 @@ $(function () { ...@@ -84,6 +84,7 @@ $(function () {
columns: [[ columns: [[
{title: "工位编码", field: "usercallcode", fieldType: "ftString",width:150}, {title: "工位编码", field: "usercallcode", fieldType: "ftString",width:150},
{title: "工位名称", field: "name", fieldType: "ftString",width:150}, {title: "工位名称", field: "name", fieldType: "ftString",width:150},
{title: "工位别名", field: "alias", fieldType: "ftString",width:150},
{title: "工位类型", field: "type", fieldType: "combobox", width:120, props:{data:$typeArray}}, {title: "工位类型", field: "type", fieldType: "combobox", width:120, props:{data:$typeArray}},
{title: "工位状态", field: "status", fieldType: "ftString",width: 100, align:'center', formatter: function (value, index, row) { {title: "工位状态", field: "status", fieldType: "ftString",width: 100, align:'center', formatter: function (value, index, row) {
return $statusMap[value] || value; return $statusMap[value] || value;
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<div class="gui-col-sm12"> <div class="gui-col-sm12">
<label class="gui-form-label">地图编号:</label> <label class="gui-form-label">地图编号:</label>
<div class="gui-input-block"> <div class="gui-input-block">
<input type="text" name="code" data-toggle="gui-textbox" data-options="" > <input type="text" name="code" data-toggle="gui-textbox" data-options="" readonly>
</div> </div>
</div> </div>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment