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;