Browse Source

fix: 修复联调中存在的问题

master
yanps 6 months ago
parent
commit
ebbe7d28be
  1. 6
      acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java
  2. 20
      acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/basedriver/plc_to_agv/PlcToAgvDeviceDriver.java
  3. 18
      acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/route/service/impl/RouteLineServiceImpl.java
  4. 7
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/connector/service/impl/ConnectorToWmsServiceImpl.java
  5. 32
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/sorting/service/impl/SortingServiceImpl.java
  6. 11
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/sorting/service/impl/WmsToSortingService.java
  7. 13
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java
  8. 4
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/connector/FTGTask.java
  9. 24
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/sorting/SortingCMTTask.java
  10. 4
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/sorting/SortingCNTTask.java

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

@ -254,6 +254,8 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
PlcToAgvDeviceDriver plcToAgvDeviceDriver = (PlcToAgvDeviceDriver) device.getDeviceDriver(); PlcToAgvDeviceDriver plcToAgvDeviceDriver = (PlcToAgvDeviceDriver) device.getDeviceDriver();
try { try {
plcToAgvDeviceDriver.writing("AGVInOP", "0"); plcToAgvDeviceDriver.writing("AGVInOP", "0");
plcToAgvDeviceDriver.writing("AGVSetOutReqUpper", "0");
plcToAgvDeviceDriver.writing("AGVSetOutReqLower", "0");
} catch (Exception e) { } catch (Exception e) {
log.info("下发AGVInOP信号:{}失败", "0"); log.info("下发AGVInOP信号:{}失败", "0");
} }
@ -383,8 +385,10 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic
PlcToAgvDeviceDriver plcToAgvDeviceDriver = (PlcToAgvDeviceDriver) device.getDeviceDriver(); PlcToAgvDeviceDriver plcToAgvDeviceDriver = (PlcToAgvDeviceDriver) device.getDeviceDriver();
try { try {
plcToAgvDeviceDriver.writing("AGVInOP", "0"); plcToAgvDeviceDriver.writing("AGVInOP", "0");
plcToAgvDeviceDriver.writing("AGVSetInReqUpper", "0");
plcToAgvDeviceDriver.writing("AGVSetInReqLower", "0");
} catch (Exception e) { } catch (Exception e) {
log.info("下发AGVInOP信号:{}失败", "0"); log.info("下发AGVInOP信号失败");
} }
data = feedBackStatus(data, index, 4, inst, task, 2, false); data = feedBackStatus(data, index, 4, inst, task, 2, false);
} else if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { } else if (device.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) {

20
acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/device_driver/basedriver/plc_to_agv/PlcToAgvDeviceDriver.java

@ -29,6 +29,7 @@ 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.acs.task.service.mapper.TaskMapper; import org.nl.acs.task.service.mapper.TaskMapper;
import org.nl.acs.utils.ConvertUtil; import org.nl.acs.utils.ConvertUtil;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.CodeUtil; import org.nl.common.utils.CodeUtil;
import org.nl.config.SpringContextHolder; import org.nl.config.SpringContextHolder;
import org.nl.system.service.lucene.LuceneExecuteLogService; import org.nl.system.service.lucene.LuceneExecuteLogService;
@ -44,7 +45,7 @@ import java.util.*;
@Slf4j @Slf4j
@Data @Data
@RequiredArgsConstructor @RequiredArgsConstructor
public class PlcToAgvDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver, RouteableDeviceDriver , DeviceStageMonitor { public class PlcToAgvDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver, RouteableDeviceDriver, DeviceStageMonitor {
protected ItemProtocol itemProtocol = new ItemProtocol(this); protected ItemProtocol itemProtocol = new ItemProtocol(this);
InstructionService instructionService = SpringContextHolder.getBean("instructionServiceImpl"); InstructionService instructionService = SpringContextHolder.getBean("instructionServiceImpl");
@ -57,16 +58,16 @@ public class PlcToAgvDeviceDriver extends AbstractOpcDeviceDriver implements Dev
TaskMapper taskMapper; TaskMapper taskMapper;
AcsToWmsService acsToWmsService=SpringContextHolder.getBean("acsToWmsServiceImpl"); AcsToWmsService acsToWmsService = SpringContextHolder.getBean("acsToWmsServiceImpl");
LuceneExecuteLogService luceneExecuteLogService = SpringContextHolder.getBean(LuceneExecuteLogService.class); LuceneExecuteLogService luceneExecuteLogService = SpringContextHolder.getBean(LuceneExecuteLogService.class);
int AGVSetInLowerAllowed =0; int AGVSetInLowerAllowed = 0;
int AGVSetOutLowerAllowed=0; int AGVSetOutLowerAllowed = 0;
int AGVSetInUpperAllowed =0; int AGVSetInUpperAllowed = 0;
int AGVSetOutUpperAllowed=0; int AGVSetOutUpperAllowed = 0;
int AGVEnable=0; int AGVEnable = 0;
String device_code; String device_code;
@ -89,7 +90,8 @@ public class PlcToAgvDeviceDriver extends AbstractOpcDeviceDriver implements Dev
AGVEnable = this.itemProtocol.getAGVEnable(); AGVEnable = this.itemProtocol.getAGVEnable();
} catch (Exception var17) { } catch (Exception var17) {
return; log.info("读取信号失败,失败原因:{}", var17.getMessage());
throw new BadRequestException("读取信号失败,失败原因:" + var17.getMessage());
} }
} }
@ -162,13 +164,11 @@ public class PlcToAgvDeviceDriver extends AbstractOpcDeviceDriver implements Dev
} }
public void executing(Server server, Map<String, Object> itemMap) { public void executing(Server server, Map<String, Object> itemMap) {
this.control(itemMap); this.control(itemMap);
} }
@Override @Override
public JSONObject getDeviceStatusName() { public JSONObject getDeviceStatusName() {
JSONObject jo = new JSONObject(); JSONObject jo = new JSONObject();

18
acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/route/service/impl/RouteLineServiceImpl.java

@ -529,28 +529,10 @@ public class RouteLineServiceImpl extends CommonServiceImpl<RouteLineMapper, Rou
RoutePlanDto routePlan = (RoutePlanDto) var2.next(); RoutePlanDto routePlan = (RoutePlanDto) var2.next();
Map map1 = new HashMap(); Map map1 = new HashMap();
map1.put("route_plan_id", routePlan.getPlan_uuid()); map1.put("route_plan_id", routePlan.getPlan_uuid());
//List<Entity> allRouteLines = Db.use().query(initsql,param);
/*long l = System.currentTimeMillis();
List<Entity> allRouteLines = Db.use((DataSource) SpringContextHolder.getBean("dataSource")).query(initsql,param);
long l1 = System.currentTimeMillis();
System.out.println("加载时间"+(l1-l));*/
replaceAccess(routePlan.getPlan_uuid()); replaceAccess(routePlan.getPlan_uuid());
this.routePlans.put(routePlan.getPlan_code(), routePlan); this.routePlans.put(routePlan.getPlan_code(), routePlan);
/*List<RouteLineDto> routeDaoList = allRouteLines.stream().map(entity -> {
RouteLineDto routeLineDto = new RouteLineDto();
routeLineDto.setDevice_code(entity.get("device_code").toString());
routeLineDto.setNext_device_code(entity.get("next_device_code").toString());
routeLineDto.setRoute_plan_id(entity.get("route_plan_id").toString());
routeLineDto.setType(entity.get("type").toString());
routeLineDto.setPath(entity.get("path").toString());
routeLineDto.setWeights(Integer.parseInt(entity.get("weights").toString()));
return routeLineDto;
}).collect(Collectors.toList());*/
List<RouteLineDto> routeDaoList = routePlansList.stream().map(entity -> { List<RouteLineDto> routeDaoList = routePlansList.stream().map(entity -> {
RouteLineDto routeLineDto = new RouteLineDto(); RouteLineDto routeLineDto = new RouteLineDto();
routeLineDto.setDevice_code(entity.get("device_code").toString()); routeLineDto.setDevice_code(entity.get("device_code").toString());

7
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/connector/service/impl/ConnectorToWmsServiceImpl.java

@ -7,6 +7,7 @@ import cn.hutool.http.HttpStatus;
import cn.hutool.json.JSONArray; import cn.hutool.json.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.nl.config.MapOf;
import org.nl.wms.ext.acs.service.WmsToAcsService; import org.nl.wms.ext.acs.service.WmsToAcsService;
import org.nl.wms.ext.connector.service.ConnectorToWmsService; import org.nl.wms.ext.connector.service.ConnectorToWmsService;
import org.nl.wms.sch.point.service.ISchBasePointService; import org.nl.wms.sch.point.service.ISchBasePointService;
@ -95,7 +96,11 @@ public class ConnectorToWmsServiceImpl implements ConnectorToWmsService {
param.put("task_code", task_code); param.put("task_code", task_code);
param.put("remark", remark); param.put("remark", remark);
param.put("ext_data", data); param.put("ext_data", data);
connectorTask.apply(param); try{
connectorTask.apply(param);
}catch (Exception e){
return MapOf.of("status", 400,"msg", e.getMessage());
}
schBasePoint.setIs_lock(true); schBasePoint.setIs_lock(true);
schBasePointService.updateById(schBasePoint); schBasePointService.updateById(schBasePoint);
map1.put("task_code", task_code); map1.put("task_code", task_code);

32
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/sorting/service/impl/SortingServiceImpl.java

@ -1,6 +1,9 @@
package org.nl.wms.ext.sorting.service.impl; package org.nl.wms.ext.sorting.service.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONArray; import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
@ -18,6 +21,8 @@ import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup;
import org.nl.wms.sch.point.service.ISchBasePointService; import org.nl.wms.sch.point.service.ISchBasePointService;
import org.nl.wms.sch.point.service.dao.SchBasePoint; import org.nl.wms.sch.point.service.dao.SchBasePoint;
import org.nl.wms.sch.point.service.dto.PointMaterialInfo; import org.nl.wms.sch.point.service.dto.PointMaterialInfo;
import org.nl.wms.sch.task_manage.AbstractTask;
import org.nl.wms.sch.task_manage.task.TaskFactory;
import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingCMTTask; import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingCMTTask;
import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingCNTTask; import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingCNTTask;
import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingSMTTask; import org.nl.wms.sch.task_manage.task.tasks.sorting.SortingSMTTask;
@ -37,13 +42,7 @@ import java.util.Map;
public class SortingServiceImpl implements SortingService { public class SortingServiceImpl implements SortingService {
@Autowired @Autowired
private SortingCMTTask sortingCMTTask; private TaskFactory taskFactory;
@Autowired
private SortingCNTTask sortingCNTTask;
@Autowired
private SortingSMTTask sortingSMTTask;
@Autowired
private SortingSNTTask sortingSNTTask;
@Autowired @Autowired
private ISchBasePointService iSchBasePointService; private ISchBasePointService iSchBasePointService;
@Autowired @Autowired
@ -69,6 +68,13 @@ public class SortingServiceImpl implements SortingService {
String vehicle_code = jsonObject.getString("vehicle_code"); String vehicle_code = jsonObject.getString("vehicle_code");
//托盘上的堆垛信息 //托盘上的堆垛信息
JSONArray jsonArray = JSONUtil.parseArray(jsonObject.get("pallet_detail")); JSONArray jsonArray = JSONUtil.parseArray(jsonObject.get("pallet_detail"));
SchBasePoint schBasePoint = iSchBasePointService.selectByPointCode(pointCode);
if(ObjectUtil.isEmpty(schBasePoint)) {
return MapOf.of("status", 400,"msg", "点位编码不存在!");
}
if(schBasePoint.getIs_lock()){
return MapOf.of("status", 400,"msg", "该点位已创建任务!");
}
// TODO:呼叫空托 // TODO:呼叫空托
iSchBasePointService.update(new UpdateWrapper<SchBasePoint>() iSchBasePointService.update(new UpdateWrapper<SchBasePoint>()
.set("is_lock",true) .set("is_lock",true)
@ -76,21 +82,23 @@ public class SortingServiceImpl implements SortingService {
.eq("point_code",pointCode)); .eq("point_code",pointCode));
JSONObject taskParam = new JSONObject(MapOf.of("task_code",task_code,"job_name",jobname,"device_code",pointCode,"requestNo" JSONObject taskParam = new JSONObject(MapOf.of("task_code",task_code,"job_name",jobname,"device_code",pointCode,"requestNo"
, "sorting_"+IdUtil.getStringId(),"ext_data",jsonObject,"vehicle_code",vehicle_code,"ext_data",jsonObject)); , "sorting_"+IdUtil.getStringId(),"ext_data",jsonObject,"vehicle_code",vehicle_code,"ext_data",jsonObject));
AbstractTask connectorTask = taskFactory.getTask("CNTTask");
if(SortingEnum.TASK_TYPE_ONE.getValue().equals(task_type) && SortingEnum.IS_EMPTY.getValue().equals(is_empty)){ if(SortingEnum.TASK_TYPE_ONE.getValue().equals(task_type) && SortingEnum.IS_EMPTY.getValue().equals(is_empty)){
taskParam.put("config_code","SortingCNTTask"); taskParam.put("config_code","SortingCNTTask");
sortingCNTTask.apply(taskParam);
//TODO:叫料 //TODO:叫料
}else if(SortingEnum.TASK_TYPE_ONE.getValue().equals(task_type) && SortingEnum.NOT_EMPTY.getValue().equals(is_empty)){ }else if(SortingEnum.TASK_TYPE_ONE.getValue().equals(task_type) && SortingEnum.NOT_EMPTY.getValue().equals(is_empty)){
taskParam.put("config_code","SortingCMTTask"); taskParam.put("config_code","SortingCMTTask");
sortingCMTTask.apply(taskParam);
//TODO:将空托盘放到线边库 //TODO:将空托盘放到线边库
}else if(SortingEnum.TASK_TYPE_TWO.getValue().equals(task_type) && SortingEnum.IS_EMPTY.getValue().equals(is_empty)){ }else if(SortingEnum.TASK_TYPE_TWO.getValue().equals(task_type) && SortingEnum.IS_EMPTY.getValue().equals(is_empty)){
taskParam.put("config_code","SortingSNTTask"); taskParam.put("config_code","SortingSNTTask");
sortingSNTTask.apply(taskParam);
//TODO:将满料放到线边库 //TODO:将满料放到线边库
}else if(SortingEnum.TASK_TYPE_TWO.getValue().equals(task_type) && SortingEnum.NOT_EMPTY.getValue().equals(is_empty)){ }else if(SortingEnum.TASK_TYPE_TWO.getValue().equals(task_type) && SortingEnum.NOT_EMPTY.getValue().equals(is_empty)){
taskParam.put("config_code","SortingSMTTask"); taskParam.put("config_code","SortingSMTTask");
sortingSMTTask.apply(taskParam); }
try{
connectorTask.apply(taskParam);
}catch (Exception e){
return MapOf.of("status", 400,"msg", e.getMessage());
} }
return MapOf.of("status", 200,"msg", "sucess"); return MapOf.of("status", 200,"msg", "sucess");
}catch (Exception ex){ }catch (Exception ex){
@ -106,6 +114,8 @@ public class SortingServiceImpl implements SortingService {
for (SchBaseVehiclematerialgroup schBaseVehiclematerialgroup : list) { for (SchBaseVehiclematerialgroup schBaseVehiclematerialgroup : list) {
Gson gson = new Gson(); Gson gson = new Gson();
ConnectorDto connectorDto = gson.fromJson(schBaseVehiclematerialgroup.getExtend(), ConnectorDto.class); ConnectorDto connectorDto = gson.fromJson(schBaseVehiclematerialgroup.getExtend(), ConnectorDto.class);
connectorDto.setDueDate(StrUtil.isNotEmpty(connectorDto.getDueDate())?connectorDto.getDueDate():RegionEnum.TRUBEND_SHELVES_3_1_1.getRegion_code());
connectorDto.setNextOperation(StrUtil.isNotEmpty(connectorDto.getNextOperation())?connectorDto.getNextOperation(): DateUtil.now());
connectors.add(connectorDto); connectors.add(connectorDto);
} }
// List<PointMaterialInfo> structList = iSchBasePointService.getStructList(RegionEnum.ZDFJ.getRegion_code(), "1"); // List<PointMaterialInfo> structList = iSchBasePointService.getStructList(RegionEnum.ZDFJ.getRegion_code(), "1");

11
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/sorting/service/impl/WmsToSortingService.java

@ -25,16 +25,7 @@ public class WmsToSortingService {
private ISchBaseTaskService iSchBaseTaskService; private ISchBaseTaskService iSchBaseTaskService;
public AcsResponse feedAgvTaskStatus(JSONObject json) { public AcsResponse feedAgvTaskStatus(JSONObject json) {
String task_code = json.getString("task_code"); AcsResponse acsResponse = ConnectorUtil.notifyEextSystem("api/external/wms/agv", json, GeneralDefinition.SORTING_URL);
SchBaseTask task = iSchBaseTaskService.getByCode(task_code);
String request_param = task.getRequest_param();
JSONObject toJSON = (JSONObject)JSONObject.toJSON(request_param);
if (toJSON == null){
throw new BadRequestException("WmsToSortingService反馈异常,sorting对接数据ext_data为空");
}
AcsResponse acsResponse = ConnectorUtil.notifyEextSystem("api/external/wms/agv", toJSON, GeneralDefinition.SORTING_URL);
return acsResponse; return acsResponse;
} }
} }

13
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java

@ -108,7 +108,7 @@ public abstract class AbstractTask {
// taskDto.setStart_wait_code(task.getStart_wait_point()); // taskDto.setStart_wait_code(task.getStart_wait_point());
// taskDto.setNext_wait_code(task.getNext_wait_point()); // taskDto.setNext_wait_code(task.getNext_wait_point());
taskDto.setVehicle_code(task.getVehicle_code()); taskDto.setVehicle_code(task.getVehicle_code());
this.setTask(task.getConfig_code(), taskDto,task); this.setTask(task.getConfig_code(), taskDto, task);
list.add(taskDto); list.add(taskDto);
JSONObject result = AcsUtil.notifyAcs("api/wms/task", list); JSONObject result = AcsUtil.notifyAcs("api/wms/task", list);
if (HttpStatus.OK.value() == result.getInteger("status")) { if (HttpStatus.OK.value() == result.getInteger("status")) {
@ -124,7 +124,7 @@ public abstract class AbstractTask {
} }
} }
private AcsTaskDto setTask(String config_code, AcsTaskDto taskDto,SchBaseTask task) { private AcsTaskDto setTask(String config_code, AcsTaskDto taskDto, SchBaseTask task) {
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>() SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
.eq(SchBaseTaskconfig::getConfig_code, config_code)); .eq(SchBaseTaskconfig::getConfig_code, config_code));
taskDto.setPriority(taskConfig.getPriority()); taskDto.setPriority(taskConfig.getPriority());
@ -243,6 +243,7 @@ public abstract class AbstractTask {
// 获取对接位点位对象 // 获取对接位点位对象
SchBasePoint pointObj = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>() SchBasePoint pointObj = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>()
.eq(SchBasePoint::getPoint_code, apply_point_code)); .eq(SchBasePoint::getPoint_code, apply_point_code));
if (ObjectUtil.isEmpty(pointObj)) throw new BadRequestException("点位编码不存在!");
// 判断是否校验工单 // 判断是否校验工单
if (taskConfig.getIs_check_workorder()) { if (taskConfig.getIs_check_workorder()) {
// 校验工单 // 校验工单
@ -295,12 +296,12 @@ public abstract class AbstractTask {
task.setGroup_id(bean.setGroupPlate(param)); task.setGroup_id(bean.setGroupPlate(param));
// 创建一条单点任务。 // 创建一条单点任务。
taskService.save(task); taskService.save(task);
try{ try {
bean.create(); bean.create();
}catch (Exception e){ } catch (Exception e) {
taskService.update(Wrappers.lambdaUpdate(SchBaseTask.class) taskService.update(Wrappers.lambdaUpdate(SchBaseTask.class)
.set(SchBaseTask::getRemark,"下发任务失败"+ e.getMessage()) .set(SchBaseTask::getRemark, "下发任务失败" + e.getMessage())
.eq(SchBaseTask::getTask_code,task.getTask_code())); .eq(SchBaseTask::getTask_code, task.getTask_code()));
} }
} }
} }

4
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/connector/FTGTask.java

@ -120,14 +120,14 @@ public class FTGTask extends AbstractTask {
if (ObjectUtil.isNotEmpty(schBasePoint)) { if (ObjectUtil.isNotEmpty(schBasePoint)) {
PointUtils.updateByIngTaskCode(schBasePoint); PointUtils.updateByIngTaskCode(schBasePoint);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint)
.set(SchBasePoint::getIs_lock, false)); .set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code, null));
} }
String point_code2 = taskObj.getPoint_code2(); String point_code2 = taskObj.getPoint_code2();
SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2); SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2);
if (ObjectUtil.isNotEmpty(schBasePoint2)) { if (ObjectUtil.isNotEmpty(schBasePoint2)) {
PointUtils.updateByIngTaskCode(schBasePoint2); PointUtils.updateByIngTaskCode(schBasePoint2);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2)
.set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code, null)); .set(SchBasePoint::getIs_lock, false));
} }
// 任务完成 // 任务完成
taskObj.setTask_status(TaskStatus.FINISHED.getCode()); taskObj.setTask_status(TaskStatus.FINISHED.getCode());

24
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/sorting/SortingCMTTask.java

@ -10,6 +10,9 @@ import lombok.extern.slf4j.Slf4j;
import org.nl.common.enums.region.RegionEnum; import org.nl.common.enums.region.RegionEnum;
import org.nl.common.exception.BadRequestException; import org.nl.common.exception.BadRequestException;
import org.nl.system.service.notice.ISysNoticeService; import org.nl.system.service.notice.ISysNoticeService;
import org.nl.wms.database.vehicle.service.IMdBaseVehicleService;
import org.nl.wms.database.vehicle.service.dao.MdBaseVehicle;
import org.nl.wms.database.vehicle.service.dto.MdBaseVehicleQuery;
import org.nl.wms.ext.acs.service.dto.to.BaseResponse; import org.nl.wms.ext.acs.service.dto.to.BaseResponse;
import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService; import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService;
import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup;
@ -52,6 +55,8 @@ public class SortingCMTTask extends AbstractTask {
private ISchBasePointService schBasePointService; private ISchBasePointService schBasePointService;
@Autowired @Autowired
private ISchBaseVehiclematerialgroupService schBaseVehiclematerialgroupService; private ISchBaseVehiclematerialgroupService schBaseVehiclematerialgroupService;
@Autowired
private IMdBaseVehicleService iMdBaseVehicleService;
@Override @Override
protected void create() throws BadRequestException { protected void create() throws BadRequestException {
@ -72,7 +77,20 @@ public class SortingCMTTask extends AbstractTask {
String jobname = jsonObject.getString("jobname"); String jobname = jsonObject.getString("jobname");
//载具托盘号 //载具托盘号
String vehicle_code = jsonObject.getString("vehicle_code"); String vehicle_code = jsonObject.getString("vehicle_code");
SchBasePoint structPoint = schBasePointService.getOne(new QueryWrapper<SchBasePoint>().eq("vehicle_code", vehicle_code)); MdBaseVehicle vehicle_code1 = iMdBaseVehicleService.getOne(new QueryWrapper<MdBaseVehicle>().eq("vehicle_code", vehicle_code));
if(ObjectUtil.isEmpty(vehicle_code1)) throw new BadRequestException("载具不存在");
SchBasePoint structPoint = schBasePointService.getOne(new QueryWrapper<SchBasePoint>()
.eq("vehicle_code", vehicle_code)
.eq("point_status","2")
.eq("is_lock",false));
if (ObjectUtil.isEmpty(structPoint)) {
task.setRemark("未找到所需点位!");
taskService.updateById(task);
// 消息通知
noticeService.createNotice("未找到所需点位!", TASK_CONFIG_CODE + task.getTask_code(),
NoticeTypeEnum.WARN.getCode());
continue;
}
taskService.update(new UpdateWrapper<SchBaseTask>() taskService.update(new UpdateWrapper<SchBaseTask>()
.set("task_status",TaskStatus.CREATED.getCode()) .set("task_status",TaskStatus.CREATED.getCode())
.set("point_code1",structPoint.getPoint_code()) .set("point_code1",structPoint.getPoint_code())
@ -122,14 +140,14 @@ public class SortingCMTTask extends AbstractTask {
if (ObjectUtil.isNotEmpty(schBasePoint)) { if (ObjectUtil.isNotEmpty(schBasePoint)) {
PointUtils.updateByIngTaskCode(schBasePoint); PointUtils.updateByIngTaskCode(schBasePoint);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint)
.set(SchBasePoint::getIs_lock, false)); .set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code,null));
} }
String point_code2 = taskObj.getPoint_code2(); String point_code2 = taskObj.getPoint_code2();
SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2); SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2);
if (ObjectUtil.isNotEmpty(schBasePoint2)) { if (ObjectUtil.isNotEmpty(schBasePoint2)) {
PointUtils.updateByIngTaskCode(schBasePoint2); PointUtils.updateByIngTaskCode(schBasePoint2);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2)
.set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code,null)); .set(SchBasePoint::getIs_lock, false));
} }
// 任务完成 // 任务完成
taskObj.setTask_status(TaskStatus.FINISHED.getCode()); taskObj.setTask_status(TaskStatus.FINISHED.getCode());

4
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/sorting/SortingCNTTask.java

@ -111,14 +111,14 @@ public class SortingCNTTask extends AbstractTask {
if (ObjectUtil.isNotEmpty(schBasePoint)) { if (ObjectUtil.isNotEmpty(schBasePoint)) {
PointUtils.updateByIngTaskCode(schBasePoint); PointUtils.updateByIngTaskCode(schBasePoint);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, startPoint)
.set(SchBasePoint::getIs_lock, false)); .set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code,null));
} }
String point_code2 = taskObj.getPoint_code2(); String point_code2 = taskObj.getPoint_code2();
SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2); SchBasePoint schBasePoint2 = pointService.selectByPointCode(point_code2);
if (ObjectUtil.isNotEmpty(schBasePoint2)) { if (ObjectUtil.isNotEmpty(schBasePoint2)) {
PointUtils.updateByIngTaskCode(schBasePoint2); PointUtils.updateByIngTaskCode(schBasePoint2);
pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2) pointService.update(Wrappers.lambdaUpdate(SchBasePoint.class).eq(SchBasePoint::getPoint_code, point_code2)
.set(SchBasePoint::getIs_lock, false).set(SchBasePoint::getVehicle_code,null)); .set(SchBasePoint::getIs_lock, false));
} }
// 任务完成 // 任务完成
taskObj.setTask_status(TaskStatus.FINISHED.getCode()); taskObj.setTask_status(TaskStatus.FINISHED.getCode());

Loading…
Cancel
Save