From fce696c504c3772edb08e52fca12b5e3446f2980 Mon Sep 17 00:00:00 2001 From: cbs <18617195505@163.com> Date: Mon, 31 Mar 2025 14:25:09 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=98=B6=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/robot/detail/RobotTaskDetailLogResoVO.java | 3 +++ .../controller/admin/robot/detail/RobotTaskDetailLogVO.java | 3 +++ .../src/main/resources/mapper/robot/RobotTaskMapper.xml | 6 +++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogResoVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogResoVO.java index 5c26ef749..f7aecf0ef 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogResoVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogResoVO.java @@ -38,4 +38,7 @@ public class RobotTaskDetailLogResoVO { @Schema(description = "计算后的来源库位编号") private String fromLocationNo; + @Schema(description = "任务阶段(0:待执行、1:前往取货、2:取货中、3:前往放货、4:放货中、5:结束、6:移动中、7:正在充电、8:取消、9:人工完成、10:异常)") + private Long taskStage; + } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogVO.java index 5a95b3720..e2454183c 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/robot/detail/RobotTaskDetailLogVO.java @@ -30,4 +30,7 @@ public class RobotTaskDetailLogVO extends PageParam { @Schema(description = "关键词") private String msg; + + @Schema(description = "任务阶段(0:待执行、1:前往取货、2:取货中、3:前往放货、4:放货中、5:结束、6:移动中、7:正在充电、8:取消、9:人工完成、10:异常)") + private Long taskStage; } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/robot/RobotTaskMapper.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/robot/RobotTaskMapper.xml index 01cb3707c..4a010977b 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/robot/RobotTaskMapper.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/robot/RobotTaskMapper.xml @@ -299,7 +299,8 @@ t2.start_time as startTime, t2.end_time as endTime, t2.from_location_no as fromLocationNo, - t2.to_location_no as toLocationNo + t2.to_location_no as toLocationNo, + t2.task_stage as taskStage from robot_task t1 inner join robot_task_detail t2 on t1.id = t2.robot_task_id @@ -324,6 +325,9 @@ AND t1.create_time <= #{pageReqVO.endTime} + + and t2.task_stage = #{pageReqVO.taskStage} + order by t1.create_time desc From 35da84a95dc78adfa340e75e718da5786a3226fc Mon Sep 17 00:00:00 2001 From: cbs <18617195505@163.com> Date: Tue, 1 Apr 2025 09:10:56 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=89=B9=E9=87=8F=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=BA=93=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WareHouseLocationController.java | 7 +++++++ .../houselocation/HouseLocationService.java | 6 ++++++ .../houselocation/HouseLocationServiceImpl.java | 16 ++++++++++++++++ .../robot/RobotInformationServiceImpl.java | 3 +++ .../robot/RobotTaskDetailServiceImpl.java | 10 ++++++++++ 5 files changed, 42 insertions(+) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/houselocation/WareHouseLocationController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/houselocation/WareHouseLocationController.java index 95e303575..240a6d29a 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/houselocation/WareHouseLocationController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/houselocation/WareHouseLocationController.java @@ -108,4 +108,11 @@ public class WareHouseLocationController { return success(houseLocationService.getLocationByName(requestVO)); } + @PutMapping("/updateBatch") + @Operation(summary = "批量更新库位") + @PreAuthorize("@ss.hasPermission('ware:house-location:updateBatch')") + public CommonResult updateHouseLocationList(@Valid @RequestBody List list) { + houseLocationService.updateHouseLocationList(list); + return success(true); + } } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationService.java index 642e9e4e0..dc240a53d 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationService.java @@ -107,4 +107,10 @@ public interface HouseLocationService extends IService { * @param id */ void updateLocationLaneNameEmptyByLaneId(Long laneId); + + /** + * 批量更新库位 + * @param list + */ + void updateHouseLocationList(List list); } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationServiceImpl.java index 206a7fa2a..028778496 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationServiceImpl.java @@ -17,6 +17,7 @@ import cn.iocoder.yudao.module.system.enums.robot.LocationUseStatusEnum; import cn.iocoder.yudao.module.system.service.log.UserOperationLogService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; @@ -24,6 +25,7 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.util.Collections; import java.util.List; +import java.util.stream.Collectors; import static cn.hutool.core.collection.CollUtil.isNotEmpty; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -153,6 +155,20 @@ public class HouseLocationServiceImpl extends ServiceImpl list) { + List locationDOList = BeanUtils.toBean(list, WareHouseLocationDO.class); + houseLocationMapper.updateById(locationDOList); + + List locationNos = locationDOList.stream().map(WareHouseLocationDO::getLocationNo).collect(Collectors.toList()); + String str = StringUtils.join(locationNos, ","); + + UserOperationLogSaveReqVO operationLog = UserOperationLogSaveReqVO.builder() + .operateAction(str) + .nickName(SecurityFrameworkUtils.getLoginUserNickname()).build(); + userOperationLogService.createUserOperationLog(operationLog); + } + @Override @Transactional(rollbackFor = Exception.class) public void batchSaveOrEditOrDel(Long positionMapId, List> list) { diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/robot/RobotInformationServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/robot/RobotInformationServiceImpl.java index ba2d466ec..09b0d63ab 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/robot/RobotInformationServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/robot/RobotInformationServiceImpl.java @@ -270,6 +270,9 @@ public class RobotInformationServiceImpl extends ServiceImpl taskDetailDOS = taskDetailMapper.selectList(new LambdaQueryWrapperX() + .eq(RobotTaskDetailDO::getRobotTaskId, robotTaskDetailDO.getRobotTaskId()) + .in(RobotTaskDetailDO::getTaskStatus, RobotTaskStatusEnum.NEW.getType(), RobotTaskStatusEnum.DOING.getType())); + if (ObjectUtil.isEmpty(taskDetailDOS)) { + RobotTaskDO robotTask = RobotTaskDO.builder() + .id(robotTaskDetailDO.getRobotTaskId()) + .taskStatus(RobotTaskStatusEnum.DONE.getType()).build(); + robotTaskMapper.updateRobot(robotTask); + } + RobotTaskDetailActionLogDO log = taskDetailActionLogService.getLastTaskByRobotNo(robotTaskDetailDO.getRobotNo()); if (ObjectUtil.isEmpty(log) || !log.getTaskDetailId().equals(taskDetailId)) { return;