diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/IotToWmsController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/IotToWmsController.java index 4a165f9..5d50a66 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/IotToWmsController.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/IotToWmsController.java @@ -53,11 +53,19 @@ public class IotToWmsController { return new ResponseEntity<>(iotToWmsService.orders(iotOrdersReq), HttpStatus.OK); } - @PostMapping("/fjMaterialInfo") - @Log("sorting系统查询库存") + @PostMapping("/sortingMaterialInfo") + @Log("分拣系统查询库存") @ApiOperation("sorting系统查询库存") + public ResponseEntity sortingMaterialInfo(@RequestBody SortingReq sortingReq) { + return new ResponseEntity<>(iotToWmsService.sortingMaterialInfo(sortingReq), HttpStatus.OK); + } + + @PostMapping("/sortingCallMaterial") + @Log("分拣系统下发叫料请求") + @ApiOperation("分拣系统下发叫料请求") public ResponseEntity fjMaterialInfo(@RequestBody SortingReq sortingReq) { - return new ResponseEntity<>(iotToWmsService.fjMaterialInfo(sortingReq), HttpStatus.OK); + return new ResponseEntity<>(iotToWmsService.sortingCallMaterial(sortingReq), HttpStatus.OK); } + } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/IotToWmsService.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/IotToWmsService.java index b711f55..0b98941 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/IotToWmsService.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/IotToWmsService.java @@ -21,5 +21,7 @@ public interface IotToWmsService { BaseResponse orders(IotOrdersReq iotOrdersReq); - List fjMaterialInfo(SortingReq sortingReq); + List sortingMaterialInfo(SortingReq sortingReq); + + BaseResponse sortingCallMaterial(SortingReq sortingReq); } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/dto/to/iot/SortingReq.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/dto/to/iot/SortingReq.java index 777c6e8..c5aa046 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/dto/to/iot/SortingReq.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/dto/to/iot/SortingReq.java @@ -8,4 +8,6 @@ import lombok.Data; @Data public class SortingReq { private String order; + private String startDeviceCode; + private String endDeviceCode; } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/IotToWmsServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/IotToWmsServiceImpl.java index 8cd9c06..6d8a1c6 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/IotToWmsServiceImpl.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/IotToWmsServiceImpl.java @@ -1,5 +1,6 @@ package org.nl.wms.ext.service.impl; +import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.nl.wms.ext.service.AcsToWmsService; @@ -8,6 +9,7 @@ import org.nl.wms.ext.service.dto.to.BaseResponse; import org.nl.wms.ext.service.dto.to.iot.IotOrdersReq; import org.nl.wms.ext.service.dto.to.iot.IotPartsReq; import org.nl.wms.ext.service.dto.to.iot.SortingReq; +import org.nl.wms.pda.service.dao.vo.PdaResponseVo; import org.nl.wms.sch.materialBind.service.IMaterialVehicleBindService; import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; import org.springframework.beans.factory.annotation.Autowired; @@ -47,9 +49,20 @@ public class IotToWmsServiceImpl implements IotToWmsService { } @Override - public List fjMaterialInfo(SortingReq sortingReq) { + public List sortingMaterialInfo(SortingReq sortingReq) { String order = sortingReq.getOrder(); return materialVehicleBindService.selectByOrder(order); } + @Override + public BaseResponse sortingCallMaterial(SortingReq sortingReq) { + JSONObject param = new JSONObject(); + param.put("taskCode", IdUtil.getSnowflake(1, 1).nextIdStr()); + param.put("taskType", "FJSLTask"); + param.put("start_device_code",sortingReq.getStartDeviceCode()); + param.put("end_device_code",sortingReq.getEndDeviceCode()); + acsToWmsService.acsApply(param); + return BaseResponse.responseOk("任务下发成功"); + } + } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/controller/MaterialVehicleBindController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/controller/MaterialVehicleBindController.java new file mode 100644 index 0000000..ea114de --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/controller/MaterialVehicleBindController.java @@ -0,0 +1,66 @@ +package org.nl.wms.sch.materialBind.controller; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.sch.materialBind.service.IMaterialVehicleBindService; +import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author songxiaopeng +* @date 2024-05-10 +**/ +@Slf4j +@RestController +@Api(tags = "载具物料信息绑定管理") +@RequestMapping("/api/materialVehicleBind") +public class MaterialVehicleBindController { + + @Autowired + private IMaterialVehicleBindService materialVehicleBindService; + + @GetMapping + @Log("查询载具物料信息绑定") + @ApiOperation("查询载具物料信息绑定") + //@SaCheckPermission("@el.check('materialVehicleBind:list')") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(materialVehicleBindService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增载具物料信息绑定") + @ApiOperation("新增载具物料信息绑定") + //@SaCheckPermission("@el.check('materialVehicleBind:add')") + public ResponseEntity create(@Validated @RequestBody MaterialVehicleBind entity){ + materialVehicleBindService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改载具物料信息绑定") + @ApiOperation("修改载具物料信息绑定") + //@SaCheckPermission("@el.check('materialVehicleBind:edit')") + public ResponseEntity update(@Validated @RequestBody MaterialVehicleBind entity){ + materialVehicleBindService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除载具物料信息绑定") + @ApiOperation("删除载具物料信息绑定") + //@SaCheckPermission("@el.check('materialVehicleBind:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + materialVehicleBindService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/IMaterialVehicleBindService.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/IMaterialVehicleBindService.java new file mode 100644 index 0000000..0597ed8 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/IMaterialVehicleBindService.java @@ -0,0 +1,48 @@ +package org.nl.wms.sch.materialBind.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author songxiaopeng +* @date 2024-05-10 +**/ +public interface IMaterialVehicleBindService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(MaterialVehicleBind entity); + + /** + * 编辑 + * @param entity / + */ + void update(MaterialVehicleBind entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); + + List selectByOrder(String order); + + void deleteByGroupId(String groupId); +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/MaterialVehicleBind.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/MaterialVehicleBind.java new file mode 100644 index 0000000..292973b --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/MaterialVehicleBind.java @@ -0,0 +1,58 @@ +package org.nl.wms.sch.materialBind.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** +* @description / +* @author songxiaopeng +* @date 2024-05-10 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("material_vehicle_bind") +public class MaterialVehicleBind implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.NONE) + @ApiModelProperty(value = "ID") + private String id; + + @ApiModelProperty(value = "物料编码") + private String material_code; + + @ApiModelProperty(value = "物料名称") + private String material_name; + + @ApiModelProperty(value = "组盘表id") + private String group_id; + + @ApiModelProperty(value = "托盘号") + private String vehicle_code; + + @ApiModelProperty(value = "物料数量") + private String material_num; + + @ApiModelProperty(value = "订单号") + private String order_code; + + @ApiModelProperty(value = "位置") + private String position; + + @ApiModelProperty(value = "创建时间") + private String create_time; + + @ApiModelProperty(value = "修改时间") + private String update_time; + + @ApiModelProperty(value = "是否删除") + private String is_delete; + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.java new file mode 100644 index 0000000..e5c8c3d --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.materialBind.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; + +/** +* @author songxiaopeng +* @date 2024-05-10 +**/ +public interface MaterialVehicleBindMapper extends BaseMapper { + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.xml b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.xml new file mode 100644 index 0000000..a4c6bee --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dao/mapper/MaterialVehicleBindMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindDto.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindDto.java new file mode 100644 index 0000000..6eebf66 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindDto.java @@ -0,0 +1,43 @@ +package org.nl.wms.sch.materialBind.service.dto; + +import lombok.Data; +import java.io.Serializable; + +/** +* @description / +* @author songxiaopeng +* @date 2024-05-10 +**/ +@Data +public class MaterialVehicleBindDto implements Serializable { + + /** ID */ + private String id; + + /** 物料编码 */ + private String material_code; + + /** 物料名称 */ + private String material_name; + + /** 托盘号 */ + private String vehicle_code; + + /** 物料数量 */ + private String material_num; + + /** 订单号 */ + private String order_code; + + /** 位置 */ + private String position; + + /** 创建时间 */ + private String create_time; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private String is_delete; +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindQuery.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindQuery.java new file mode 100644 index 0000000..dc2ff53 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/dto/MaterialVehicleBindQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.sch.materialBind.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; + +/** +* @author songxiaopeng +* @date 2024-05-10 +**/ +public class MaterialVehicleBindQuery extends BaseQuery { + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/impl/MaterialVehicleBindServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/impl/MaterialVehicleBindServiceImpl.java new file mode 100644 index 0000000..26f657f --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/materialBind/service/impl/MaterialVehicleBindServiceImpl.java @@ -0,0 +1,84 @@ +package org.nl.wms.sch.materialBind.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.sch.materialBind.service.IMaterialVehicleBindService; +import org.nl.wms.sch.materialBind.service.dao.mapper.MaterialVehicleBindMapper; +import org.nl.wms.sch.materialBind.service.dao.MaterialVehicleBind; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * @author songxiaopeng + * @description 服务实现 + * @date 2024-05-10 + **/ +@Slf4j +@Service +public class MaterialVehicleBindServiceImpl extends ServiceImpl implements IMaterialVehicleBindService { + + @Autowired + private MaterialVehicleBindMapper materialVehicleBindMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + materialVehicleBindMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(MaterialVehicleBind entity) { + String now = DateUtil.now(); + entity.setId(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_time(now); + entity.setUpdate_time(now); + materialVehicleBindMapper.insert(entity); + } + + @Override + public void update(MaterialVehicleBind entity) { + MaterialVehicleBind dto = materialVehicleBindMapper.selectById(entity.getId()); + if (dto == null) throw new BadRequestException("被删除或无权限,操作失败!"); + String now = DateUtil.now(); + entity.setUpdate_time(now); + materialVehicleBindMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + materialVehicleBindMapper.deleteBatchIds(ids); + } + + @Override + public List selectByOrder(String order) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(MaterialVehicleBind::getOrder_code, order) + .orderByDesc(MaterialVehicleBind::getCreate_time); + return materialVehicleBindMapper.selectList(lam); + } + + @Override + public void deleteByGroupId(String groupId) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(MaterialVehicleBind::getGroup_id, groupId) + .orderByDesc(MaterialVehicleBind::getCreate_time); + materialVehicleBindMapper.delete(lam); + } + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/FJSLTask.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/FJSLTask.java index c51f5df..6295704 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/FJSLTask.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/FJSLTask.java @@ -7,6 +7,8 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.apache.poi.util.StringUtil; import org.nl.common.exception.BadRequestException; import org.nl.config.SpringContextHolder; import org.nl.system.service.param.impl.SysParamServiceImpl; @@ -16,6 +18,7 @@ import org.nl.wms.ext.service.dto.to.iot.AgvStateParam; import org.nl.wms.pdm.service.IPdmBdWorkorderService; import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService; import org.nl.wms.sch.group.service.dao.SchBaseVehiclematerialgroup; +import org.nl.wms.sch.materialBind.service.IMaterialVehicleBindService; import org.nl.wms.sch.point.service.ISchBasePointService; import org.nl.wms.sch.point.service.dao.SchBasePoint; import org.nl.wms.sch.task.service.ISchBaseTaskService; @@ -50,10 +53,6 @@ import java.util.List; @Lazy public class FJSLTask extends AbstractTask { private static String TASK_CONFIG_CODE = "FJSLTask"; - /** - * 入口 - */ - private static String ENTRANCE = "1"; @Autowired private ISchBasePointService pointService; @Autowired @@ -61,13 +60,9 @@ public class FJSLTask extends AbstractTask { @Autowired private ISchBaseTaskconfigService taskConfigService; @Autowired - private IPdmBdWorkorderService workorderService; - @Autowired private ISchBaseVehiclematerialgroupService vehiclematerialgroupService; @Autowired - private PointMapper pointMapper; - @Autowired - private WmsToAcsService wmsToAcsService; + private IMaterialVehicleBindService materialVehicleBindService; @Override // @Transactional(rollbackFor = Exception.class) @@ -78,7 +73,7 @@ public class FJSLTask extends AbstractTask { SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper() .eq(SchBaseTaskconfig::getConfig_code, TASK_CONFIG_CODE)); for (SchBaseTask task : tasks) { - SchBasePoint point = findStartPoint(taskConfig.getStart_region_str()); + SchBasePoint point = findStartPoint(task, taskConfig.getStart_region_str()); if (ObjectUtil.isEmpty(point)) { task.setRemark("未找到所需点位!"); taskService.update(task); @@ -104,14 +99,17 @@ public class FJSLTask extends AbstractTask { } } - //查找待分拣物料 todo 需要关联组盘信息去查 - private SchBasePoint findStartPoint(String startRegionStr) { + //查找起点,如果上位系统指定起点,直接返回起点,未指定,就从数据库中查找 + private SchBasePoint findStartPoint(SchBaseTask task, String startRegionStr) { + if (StringUtils.isNotEmpty(task.getPoint_code1())) { + return pointService.selectByExtPointCode(task.getPoint_code1()); + } //从待分拣货架查找 物料类型是待分拣物料,物料类型字段尚未确定 String[] reginList = startRegionStr.split(","); LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); lam.in(SchBasePoint::getRegion_code, Arrays.asList(reginList)) .eq(SchBasePoint::getPoint_status, PointStatusEnum.FULL_POINT.getCode()) - .eq(SchBasePoint::getPoint_type,"1") + .eq(SchBasePoint::getCan_vehicle_type, task.getVehicle_type()) .and(la -> la.isNull(SchBasePoint::getIng_task_code) .or() .eq(SchBasePoint::getIng_task_code, "")) @@ -159,17 +157,18 @@ public class FJSLTask extends AbstractTask { startPointObj.setPoint_status(PointStatusEnum.EMPTY_POINT.getCode()); startPointObj.setUpdate_time(DateUtil.now()); pointService.updateById(startPointObj); - //todo 分拣上料完成后 组盘信息解绑 -// SchBaseVehiclematerialgroup vehicleMaterialGroupObj = vehiclematerialgroupService.getById(taskObj.getGroup_id()); -// vehicleMaterialGroupObj.setGroup_bind_material_status(GroupBindMaterialStatusEnum.UNBOUND.getValue()); -// vehicleMaterialGroupObj.setPoint_code(endPointObj.getPoint_code()); -// vehicleMaterialGroupObj.setPoint_name(endPointObj.getPoint_name()); -// vehicleMaterialGroupObj.setTask_code(taskObj.getTask_code()); -// vehicleMaterialGroupObj.setMove_way(vehicleMaterialGroupObj.getMove_way() + " -> " + endPointObj.getPoint_code()); -// vehicleMaterialGroupObj.setUpdate_id(GeneralDefinition.ACS_ID); -// vehicleMaterialGroupObj.setUpdate_name(GeneralDefinition.ACS_NAME); -// vehicleMaterialGroupObj.setUpdate_time(DateUtil.now()); -// vehiclematerialgroupService.updateById(vehicleMaterialGroupObj); + // 分拣上料完成后 组盘信息解绑 + SchBaseVehiclematerialgroup vehicleMaterialGroupObj = vehiclematerialgroupService.getById(taskObj.getGroup_id()); + vehicleMaterialGroupObj.setGroup_bind_material_status(GroupBindMaterialStatusEnum.UNBOUND.getValue()); + vehicleMaterialGroupObj.setPoint_code(endPointObj.getPoint_code()); + vehicleMaterialGroupObj.setPoint_name(endPointObj.getPoint_name()); + vehicleMaterialGroupObj.setTask_code(taskObj.getTask_code()); + vehicleMaterialGroupObj.setMove_way(vehicleMaterialGroupObj.getMove_way() + " -> " + endPointObj.getPoint_code()); + vehicleMaterialGroupObj.setUpdate_id(GeneralDefinition.ACS_ID); + vehicleMaterialGroupObj.setUpdate_name(GeneralDefinition.ACS_NAME); + vehicleMaterialGroupObj.setUpdate_time(DateUtil.now()); + vehiclematerialgroupService.updateById(vehicleMaterialGroupObj); + materialVehicleBindService.deleteByGroupId(vehicleMaterialGroupObj.getGroup_id()); // 任务完成 taskObj.setTask_status(TaskStatus.FINISHED.getCode()); taskObj.setRemark("任务完成"); @@ -234,6 +233,7 @@ public class FJSLTask extends AbstractTask { pointService.update(endPoint); } } + private void applyIot(String url, AgvStateParam agvStateParam, BaseResponse result) { String jsonParam = JSON.toJSONString(agvStateParam); log.info("请求iot参数为:{}", jsonParam);