diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaPickUpConfirmServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaPickUpConfirmServiceImpl.java index 661bcc2..af10bbc 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaPickUpConfirmServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaPickUpConfirmServiceImpl.java @@ -8,11 +8,13 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.nl.common.exception.BadRequestException; import org.nl.wms.pda.general_management.service.PdaPickUpConfirmService; import org.nl.wms.pda.util.PdaResponse; +import org.nl.wms.sch_manage.enums.TaskStatus; import org.nl.wms.sch_manage.service.ISchBasePointService; import org.nl.wms.sch_manage.service.ISchBaseTaskService; import org.nl.wms.sch_manage.service.dao.SchBasePoint; import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.dao.mapper.SchBasePointMapper; +import org.nl.wms.warehouse_management.enums.IOSConstant; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -55,26 +57,30 @@ public class PdaPickUpConfirmServiceImpl implements PdaPickUpConfirmService { throw new BadRequestException("搜索条件不能为空!"); } - LambdaQueryWrapper lambda = new QueryWrapper().lambda(); - lambda.eq(SchBasePoint::getPoint_code, search) - .or(qw -> qw.eq(SchBasePoint::getVehicle_code, search)); - SchBasePoint pointDao = iSchBasePointService.getOne(lambda); - JSONObject result = JSONObject.parseObject(JSON.toJSONString(pointDao), JSONObject.class); + // 查询任务 + List taskList = iSchBaseTaskService.list( + new QueryWrapper().lambda() + .eq(SchBaseTask::getVehicle_code, search) + .eq(SchBaseTask::getTask_status, TaskStatus.EXECUTING.getCode()) + .eq(SchBaseTask::getIs_delete, IOSConstant.ZERO) + ); - if (ObjectUtil.isEmpty(result)) { - throw new BadRequestException("未查询到当前信息!"); + if (taskList.size() > 1) { + throw new BadRequestException("当前载具存在多条正在执行中的任务【"+search+"】"); } - SchBaseTask taskDao = iSchBaseTaskService.getById(pointDao.getIng_task_code()); - if (ObjectUtil.isNotEmpty(taskDao)) { + JSONObject result = new JSONObject(); + if (ObjectUtil.isNotEmpty(taskList)) { + SchBaseTask taskDao = taskList.get(0); result.put("task_code", taskDao.getTask_code()); + result.put("point_code", search); result.put("car_no", taskDao.getCar_no()); result.put("point_code1", taskDao.getPoint_code1()); result.put("point_code2", taskDao.getPoint_code2()); } // 查询明细 - List rows = schBasePointMapper.getPointDtl(whereJson); + List rows = schBasePointMapper.getTaskDtl(whereJson); result.put("rows", rows); return PdaResponse.requestParamOk(result); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.java index 4012c50..b25b68c 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.java @@ -56,4 +56,13 @@ public interface SchBasePointMapper extends BaseMapper { * @return List */ List getPointDtl(@Param("param") JSONObject whereJson); + + /** + * 查询任务物料明细 + * @param whereJson { + * search:载具编码 + * } + * @return List + */ + List getTaskDtl(@Param("param") JSONObject whereJson); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.xml index 2bae81c..b83d894 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.xml +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBasePointMapper.xml @@ -110,4 +110,41 @@ + + diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBasePointServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBasePointServiceImpl.java index 65ceadc..7bf0364 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBasePointServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBasePointServiceImpl.java @@ -220,21 +220,22 @@ public class SchBasePointServiceImpl extends ServiceImpl taskList = iSchBaseTaskService.list( + new QueryWrapper().lambda() + .eq(SchBaseTask::getVehicle_code, whereJson.getString("point_code")) + .eq(SchBaseTask::getTask_status, TaskStatus.EXECUTING.getCode()) + .eq(SchBaseTask::getIs_delete, IOSConstant.ZERO) + ); + if (ObjectUtil.isEmpty(taskList)) { + throw new BadRequestException("当前载具没有正在执行的任务!"); } + if (taskList.size() > 1) { + throw new BadRequestException("当前载具存在多条正在执行中的任务【"+whereJson.getString("point_code")+"】"); + } + + SchBaseTask taskDao = taskList.get(0); // 通知ACS可以离开 JSONObject jsonParam = new JSONObject(); jsonParam.put("task_type", IOSConstant.ONE); @@ -246,20 +247,22 @@ public class SchBasePointServiceImpl extends ServiceImpl taskList = iSchBaseTaskService.list( + new QueryWrapper().lambda() + .eq(SchBaseTask::getVehicle_code, whereJson.getString("point_code")) + .eq(SchBaseTask::getTask_status, TaskStatus.EXECUTING.getCode()) + .eq(SchBaseTask::getIs_delete, IOSConstant.ZERO) + ); + if (ObjectUtil.isEmpty(taskList)) { + throw new BadRequestException("当前载具没有正在执行的任务!"); } + if (taskList.size() > 1) { + throw new BadRequestException("当前载具存在多条正在执行中的任务【"+whereJson.getString("point_code")+"】"); + } + + SchBaseTask taskDao = taskList.get(0); // 通知ACS可以离开 JSONObject jsonParam = new JSONObject(); jsonParam.put("task_type", IOSConstant.TWO);