Browse Source

rev:更新

master
涂强 1 year ago
parent
commit
9c44559e67
  1. 10
      acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java
  2. 7
      acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java
  3. 15
      acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java
  4. 4
      acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/ZheDaAgvServiceImpl.java
  5. 118
      acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java
  6. 1
      acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java
  7. 5
      acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java
  8. 4
      acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskFeedbackServiceImpl.java
  9. 17
      acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java

10
acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/MagicAgvServiceImpl.java

@ -27,6 +27,7 @@ import org.nl.acs.opc.DeviceType;
import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.system.service.ParamService; import org.nl.modules.system.service.ParamService;
import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.SpringContextHolder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Arrays; import java.util.Arrays;
@ -38,9 +39,12 @@ import java.util.Map;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class MagicAgvServiceImpl implements MagicAgvService { public class MagicAgvServiceImpl implements MagicAgvService {
private final DeviceAppService deviceAppService; @Autowired
private final ParamService paramService; DeviceAppService deviceAppService;
private final AcsToWmsService acsToWmsService; @Autowired
ParamService paramService;
@Autowired
AcsToWmsService acsToWmsService;
Map<String, AgvDto> AGVDeviceStatus = new HashMap(); Map<String, AgvDto> AGVDeviceStatus = new HashMap();

7
acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/NDCAgvServiceImpl.java

@ -19,6 +19,7 @@ import org.nl.acs.opc.DeviceAppServiceImpl;
import org.nl.modules.system.service.ParamService; import org.nl.modules.system.service.ParamService;
import org.nl.modules.system.util.CodeUtil; import org.nl.modules.system.util.CodeUtil;
import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.SpringContextHolder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.HashMap; import java.util.HashMap;
@ -29,8 +30,10 @@ import java.util.Map;
@RequiredArgsConstructor @RequiredArgsConstructor
public class NDCAgvServiceImpl implements NDCAgvService { public class NDCAgvServiceImpl implements NDCAgvService {
private final DeviceAppService deviceAppService; @Autowired
private final ParamService paramService; DeviceAppService deviceAppService;
@Autowired
ParamService paramService;
private final AcsToWmsService acsToWmsService; private final AcsToWmsService acsToWmsService;
private final DeviceExecuteLogService logServer; private final DeviceExecuteLogService logServer;

15
acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/XianGongAgvServiceImpl.java

@ -21,6 +21,8 @@ import org.nl.acs.opc.DeviceAppService;
import org.nl.acs.opc.DeviceType; import org.nl.acs.opc.DeviceType;
import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.system.service.ParamService; import org.nl.modules.system.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Arrays; import java.util.Arrays;
@ -32,9 +34,16 @@ import java.util.Map;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class XianGongAgvServiceImpl implements XianGongAgvService { public class XianGongAgvServiceImpl implements XianGongAgvService {
private final DeviceAppService deviceAppService; @Autowired
private final ParamService paramService; DeviceAppService deviceAppService;
private final AcsToWmsService acsToWmsService;
@Autowired
ParamService paramService;
@Lazy
@Autowired
AcsToWmsService acsToWmsService;
Map<String, AgvDto> AGVDeviceStatus = new HashMap(); Map<String, AgvDto> AGVDeviceStatus = new HashMap();
@LokiLog(type = LokiLogType.AGV) @LokiLog(type = LokiLogType.AGV)

4
acs/nladmin-system/src/main/java/org/nl/acs/agv/server/impl/ZheDaAgvServiceImpl.java

@ -27,13 +27,15 @@ import org.nl.acs.task.service.TaskService;
import org.nl.acs.task.service.dto.TaskDto; import org.nl.acs.task.service.dto.TaskDto;
import org.nl.modules.system.service.ParamService; import org.nl.modules.system.service.ParamService;
import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.SpringContextHolder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@Slf4j @Slf4j
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class ZheDaAgvServiceImpl implements ZheDaAgvService { public class ZheDaAgvServiceImpl implements ZheDaAgvService {
private final ParamService paramService; @Autowired
ParamService paramService;
@LokiLog(type = LokiLogType.AGV) @LokiLog(type = LokiLogType.AGV)
@Override @Override
public HttpResponse sendAgvInstToAgv(Instruction inst) throws Exception { public HttpResponse sendAgvInstToAgv(Instruction inst) throws Exception {

118
acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java

@ -193,6 +193,32 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
} else { } else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
} }
if (ObjectUtil.isNotEmpty(inst)){
JSONArray req = new JSONArray();
JSONObject map = new JSONObject();
map.put("device_code", inst.getStart_point_code());
map.put("device_status",inst.getExecute_status());
map.put("energyLevel",electric_qty);
map.put("transportOrder",inst.getTask_code());
map.put("positionX",x);
map.put("positionY",y);
map.put("positionAngle",angle);
HttpResponse httpResponse = acsToWmsService.feedbackAgv(req);
if (ObjectUtil.isNotEmpty(httpResponse) && httpResponse.getStatus() == 200) {
JSONObject resp = JSONObject.parseObject(httpResponse.body());
if (resp.getInteger("status") == 200) {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("指令号:{},acs向wms反馈AGV设备信息,已反馈AGV设备信息", inst.getInstruction_code());
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息,未反馈AGV设备信息", inst.getInstruction_code());
}
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息失败,连接被拒绝,未反馈agv设备信息", inst.getInstruction_code());
}
} else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
}
//取货完毕 //取货完毕
//(需要WCS反馈) //(需要WCS反馈)
} else if (phase == 0x05) { } else if (phase == 0x05) {
@ -254,6 +280,32 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
} else { } else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
} }
if (ObjectUtil.isNotEmpty(inst)){
JSONArray req = new JSONArray();
JSONObject map = new JSONObject();
map.put("device_code", inst.getStart_point_code());
map.put("device_status",inst.getExecute_status());
map.put("energyLevel",electric_qty);
map.put("transportOrder",inst.getTask_code());
map.put("positionX",x);
map.put("positionY",y);
map.put("positionAngle",angle);
HttpResponse httpResponse = acsToWmsService.feedbackAgv(req);
if (ObjectUtil.isNotEmpty(httpResponse) && httpResponse.getStatus() == 200) {
JSONObject resp = JSONObject.parseObject(httpResponse.body());
if (resp.getInteger("status") == 200) {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("指令号:{},acs向wms反馈AGV设备信息,已反馈AGV设备信息", inst.getInstruction_code());
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息,未反馈AGV设备信息", inst.getInstruction_code());
}
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息失败,连接被拒绝,未反馈agv设备信息", inst.getInstruction_code());
}
} else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
}
//到达放货点 //到达放货点
//(需要WCS反馈) //(需要WCS反馈)
} else if (phase == 0x07) { } else if (phase == 0x07) {
@ -311,6 +363,32 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
} else { } else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
} }
if (ObjectUtil.isNotEmpty(inst)){
JSONArray req = new JSONArray();
JSONObject map = new JSONObject();
map.put("device_code", inst.getStart_point_code());
map.put("device_status",inst.getExecute_status());
map.put("energyLevel",electric_qty);
map.put("transportOrder",inst.getTask_code());
map.put("positionX",x);
map.put("positionY",y);
map.put("positionAngle",angle);
HttpResponse httpResponse = acsToWmsService.feedbackAgv(req);
if (ObjectUtil.isNotEmpty(httpResponse) && httpResponse.getStatus() == 200) {
JSONObject resp = JSONObject.parseObject(httpResponse.body());
if (resp.getInteger("status") == 200) {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("指令号:{},acs向wms反馈AGV设备信息,已反馈AGV设备信息", inst.getInstruction_code());
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息,未反馈AGV设备信息", inst.getInstruction_code());
}
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息失败,连接被拒绝,未反馈agv设备信息", inst.getInstruction_code());
}
} else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
}
//放货完毕 //放货完毕
//(需要WCS反馈) //(需要WCS反馈)
} else if (phase == 0x09) { } else if (phase == 0x09) {
@ -364,6 +442,31 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
} else { } else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
} }
if (ObjectUtil.isNotEmpty(inst)){
JSONArray req = new JSONArray();
JSONObject map = new JSONObject();
map.put("device_code", inst.getStart_point_code());
map.put("device_status",inst.getExecute_status());
map.put("energyLevel",electric_qty);
map.put("transportOrder",inst.getTask_code());
map.put("positionX",x);
map.put("positionY",y);
map.put("positionAngle",angle);
HttpResponse httpResponse = acsToWmsService.feedbackAgv(req);
if (ObjectUtil.isNotEmpty(httpResponse) && httpResponse.getStatus() == 200) {
JSONObject resp = JSONObject.parseObject(httpResponse.body());
if (resp.getInteger("status") == 200) {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
log.info("指令号:{},acs向wms反馈AGV设备信息,已反馈AGV设备信息", inst.getInstruction_code());
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息,未反馈AGV设备信息", inst.getInstruction_code());
}
} else {
log.warn("指令号:{},acs向wms反馈AGV设备信息失败,连接被拒绝,未反馈agv设备信息", inst.getInstruction_code());
}
} else {
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
}
} }
//到达位置点 //到达位置点
//(需要WCS反馈) //(需要WCS反馈)
@ -379,6 +482,21 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
} else if (phase == 0x51) {//离开交通灯区域 } else if (phase == 0x51) {//离开交通灯区域
data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); data = NDCAgvService.sendAgvOneModeInst(phase, index, 0);
logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + phase + "反馈:" + data); logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + phase + "反馈:" + data);
} else if (phase == 0x70) {
//x坐标
x = ikey;
} else if (phase == 0x71) {
//y坐标
y = ikey;
} else if (phase == 0x72) {
//车辆角度
angle = ikey;
} else if (phase == 0x73) {
//agv电量
electric_qty = ikey;
} else if (phase == 0x74) {
//三色灯状态
status = ikey;
} }
if (!ObjectUtil.isEmpty(data)) { if (!ObjectUtil.isEmpty(data)) {
logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + phase + "反馈:" + data); logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + phase + "反馈:" + data);

1
acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java

@ -46,7 +46,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
/*@Value("${acsTowms.token}")*/ /*@Value("${acsTowms.token}")*/
public String token; public String token;
private String log_file_type="log_file_type"; private String log_file_type="log_file_type";
private String log_type="ACS请求LMS"; private String log_type="ACS请求LMS";

5
acs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java

@ -71,14 +71,15 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu
@Autowired @Autowired
DeviceAppService deviceAppService; DeviceAppService deviceAppService;
@Autowired @Autowired
NDCAgvService ndcAgvService; NDCAgvService ndcAgvService;
@Autowired @Autowired
ParamService paramService; ParamService paramService;
@Autowired @Autowired
RouteLineService routeLineService; RouteLineService routeLineService;
@Autowired
TaskService taskService; private final TaskService taskService;
@Autowired @Autowired
AcsToLiKuService acsToLiKuService; AcsToLiKuService acsToLiKuService;

4
acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskFeedbackServiceImpl.java

@ -105,7 +105,9 @@ public class TaskFeedbackServiceImpl implements TaskFeedbackService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void update(TaskFeedbackDto dto) { public void update(TaskFeedbackDto dto) {
TaskFeedbackDto entity = this.findById(dto.getTaskback_id()); TaskFeedbackDto entity = this.findById(dto.getTaskback_id());
if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); if (entity == null) {
throw new BadRequestException("被删除或无权限,操作失败!");
}
String currentUsername = SecurityUtils.getCurrentUsername(); String currentUsername = SecurityUtils.getCurrentUsername();
String now = DateUtil.now(); String now = DateUtil.now();

17
acs/nladmin-system/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java

@ -74,8 +74,10 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
DeviceAppService deviceAppService; DeviceAppService deviceAppService;
@Autowired @Autowired
RouteLineService routelineserver; RouteLineService routelineserver;
@Autowired @Autowired
AcsToWmsService acstowmsService; AcsToWmsService acstowmsService;
@Autowired @Autowired
TaskFeedbackService taskFeedbackService; TaskFeedbackService taskFeedbackService;
@Autowired @Autowired
@ -86,8 +88,10 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
RouteLineService routeLineService; RouteLineService routeLineService;
@Autowired @Autowired
DeviceAssignedService deviceAssignedService; DeviceAssignedService deviceAssignedService;
@Autowired @Autowired
InstructionService instructionService; InstructionService instructionService;
@Autowired @Autowired
StorageCellService storageCellService; StorageCellService storageCellService;
@ -99,6 +103,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
} }
} }
@Override
public synchronized void reload() { public synchronized void reload() {
List list = this.queryAll("task_status <2 and is_delete =0 order by create_time"); List list = this.queryAll("task_status <2 and is_delete =0 order by create_time");
@ -372,6 +377,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
return list; return list;
} }
@Override
public List<TaskDto> queryTaskByStartAndIntStatus(String head_start_device_code) { public List<TaskDto> queryTaskByStartAndIntStatus(String head_start_device_code) {
List<TaskDto> list = new ArrayList<>(); List<TaskDto> list = new ArrayList<>();
Iterator<TaskDto> iterator = tasks.iterator(); Iterator<TaskDto> iterator = tasks.iterator();
@ -392,6 +398,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
return list; return list;
} }
@Override
public List<TaskDto> queryTaskByNextAndIntStatus(String back_start_device_code) { public List<TaskDto> queryTaskByNextAndIntStatus(String back_start_device_code) {
List<TaskDto> list = new ArrayList<>(); List<TaskDto> list = new ArrayList<>();
Iterator<TaskDto> iterator = tasks.iterator(); Iterator<TaskDto> iterator = tasks.iterator();
@ -800,10 +807,14 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void finish(String id) { public void finish(String id) {
TaskDto entity = this.findById(id); TaskDto entity = this.findById(id);
if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); if (entity == null) {
throw new BadRequestException("被删除或无权限,操作失败!");
}
InstructionService instructionservice = SpringContextHolder.getBean("instructionServiceImpl"); InstructionService instructionservice = SpringContextHolder.getBean("instructionServiceImpl");
InstructionDto instdto = instructionservice.findByTaskid(id, "instruction_status <2 "); InstructionDto instdto = instructionservice.findByTaskid(id, "instruction_status <2 ");
if (instdto != null) throw new BadRequestException("有指令未完成!"); if (instdto != null) {
throw new BadRequestException("有指令未完成!");
}
String currentUsername = SecurityUtils.getCurrentUsername(); String currentUsername = SecurityUtils.getCurrentUsername();
String now = DateUtil.now(); String now = DateUtil.now();
entity.setUpdate_time(now); entity.setUpdate_time(now);
@ -1327,6 +1338,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
return tasks; return tasks;
} }
@Override
public TaskDto findByContainer(String container_code) { public TaskDto findByContainer(String container_code) {
Iterator var3 = tasks.iterator(); Iterator var3 = tasks.iterator();
@ -1340,6 +1352,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
return null; return null;
} }
@Override
public TaskDto findByCodeFromCache(String task_code) { public TaskDto findByCodeFromCache(String task_code) {
Iterator var3 = tasks.iterator(); Iterator var3 = tasks.iterator();

Loading…
Cancel
Save