diff --git a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/controller/AgvTaskController.java b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/controller/AgvTaskController.java index 38ada04..f07181c 100644 --- a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/controller/AgvTaskController.java +++ b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/controller/AgvTaskController.java @@ -1,8 +1,10 @@ package org.cpte.modules.agvTask.controller; import java.util.Arrays; + import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.cpte.modules.constant.enums.BusinessTypeEnum; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.cpte.modules.agvTask.entity.AgvTask; @@ -31,6 +33,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; @RequestMapping("/agvTask") @Slf4j public class AgvTaskController extends JeecgController { + @Autowired private IAgvTaskService agvTaskService; @@ -84,6 +87,9 @@ public class AgvTaskController extends JeecgController @RequiresPermissions("agvTask:data_agv_task:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result edit(@RequestBody AgvTask agvTask) { + if (BusinessTypeEnum.INBOUND.getValue().equals(agvTask.getType())) { + agvTaskService.editInBoundAgvTask(agvTask); + } agvTaskService.updateById(agvTask); return Result.OK("编辑成功!"); } diff --git a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/IAgvTaskService.java b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/IAgvTaskService.java index 911e21a..a5e60f4 100644 --- a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/IAgvTaskService.java +++ b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/IAgvTaskService.java @@ -3,11 +3,7 @@ package org.cpte.modules.agvTask.service; import org.cpte.modules.agvTask.entity.AgvTask; import com.baomidou.mybatisplus.extension.service.IService; import org.cpte.modules.base.entity.Point; -import org.cpte.modules.base.entity.Stock; import org.cpte.modules.conveyorLine.vo.ScanTrayData; -import org.cpte.modules.receive.entity.Asn; - -import java.util.List; /** * @Description: AGV任务表 @@ -51,4 +47,10 @@ public interface IAgvTaskService extends IService { */ void processAgvTask(ScanTrayData data, Point dstPoint); + /** + * 修改入库AGV任务 + * @param agvTask AGV任务 + */ + void editInBoundAgvTask(AgvTask agvTask); + } diff --git a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/impl/AgvTaskServiceImpl.java b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/impl/AgvTaskServiceImpl.java index 1e47a53..4a27655 100644 --- a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/impl/AgvTaskServiceImpl.java +++ b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/agvTask/service/impl/AgvTaskServiceImpl.java @@ -1,6 +1,5 @@ package org.cpte.modules.agvTask.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import org.apache.commons.collections4.CollectionUtils; import org.apache.shiro.SecurityUtils; @@ -9,15 +8,14 @@ import org.cpte.modules.agvTask.mapper.AgvTaskMapper; import org.cpte.modules.agvTask.service.IAgvTaskService; import org.cpte.modules.base.entity.Point; import org.cpte.modules.base.entity.Stock; +import org.cpte.modules.base.mapper.PointMapper; import org.cpte.modules.base.service.IPointService; -import org.cpte.modules.base.service.IStockService; import org.cpte.modules.constant.enums.*; import org.cpte.modules.conveyorLine.vo.ScanTrayData; import org.cpte.modules.receive.entity.Asn; import org.cpte.modules.receive.entity.AsnDetail; import org.cpte.modules.receive.mapper.AsnDetailMapper; import org.cpte.modules.receive.mapper.AsnMapper; -import org.cpte.modules.shipping.mapper.PickMapper; import org.jeecg.common.system.vo.LoginUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -36,6 +34,8 @@ import java.util.List; */ @Service public class AgvTaskServiceImpl extends ServiceImpl implements IAgvTaskService { + @Autowired + private PointMapper pointMapper; @Autowired private AsnMapper asnMapper; @@ -141,4 +141,19 @@ public class AgvTaskServiceImpl extends ServiceImpl impl createAgvTask(null, asnDetails.get(0).getItemId(),asn.getId(), stock.getStockCode(), station.getPointCode(), dstPoint.getPointCode(), null, BusinessTypeEnum.INBOUND.getValue(), 0, AgvVendorEnum.TES.getValue()); } + + @Override + @Transactional(rollbackFor = Exception.class) + public void editInBoundAgvTask(AgvTask agvTask) { + Point point = pointMapper.queryByPointCode(agvTask.getEndCode()); + point.setStatus(CommonStatusEnum.USED.getValue()); + pointMapper.updateById(point); + List asnDetails= asnDetailMapper.selectByMainId(agvTask.getBusinessDetailId()); + for (AsnDetail asnDetail : asnDetails){ + asnDetail.setToPointId(point.getId()); + } + if(CollectionUtils.isNotEmpty(asnDetails)){ + asnDetailMapper.updateById(asnDetails); + } + } } diff --git a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/tesAgv/service/impl/ITesAgvServiceImpl.java b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/tesAgv/service/impl/ITesAgvServiceImpl.java index c927647..92b2a9d 100644 --- a/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/tesAgv/service/impl/ITesAgvServiceImpl.java +++ b/cpte-boot-module/cpte-module-wms/src/main/java/org/cpte/modules/tesAgv/service/impl/ITesAgvServiceImpl.java @@ -179,7 +179,7 @@ public class ITesAgvServiceImpl implements ITesAgvService { AgvTask agvTask = agvTaskMapper.selectById(id); // 检查接口开关, 未开启则返回 if (sysDictMapper.queryByDictCode(GeneralConstant.OPEN_FLAG) == null) { - updateAgvTaskResponse(agvTask, null, "接口未开启", GeneralConstant.TES_FAIL_CODE); + updateAgvTaskResponse(agvTask, null, "接口未开启", GeneralConstant.TES_SUCCESS_CODE); handleCelled(agvTask); return; }