Merge branch 'dev' of http://git.znkjfw.com/ak/zn-cloud-wcs into aikai
# Conflicts: # yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationService.java # yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/houselocation/HouseLocationServiceImpl.java
This commit is contained in:
commit
2c7efa2e0f
@ -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<Boolean> updateHouseLocationList(@Valid @RequestBody List<WareHouseLocationSaveReqVO> list) {
|
||||
houseLocationService.updateHouseLocationList(list);
|
||||
return success(true);
|
||||
}
|
||||
}
|
||||
|
@ -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;
|
||||
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -108,6 +108,12 @@ public interface HouseLocationService extends IService<WareHouseLocationDO> {
|
||||
*/
|
||||
void updateLocationLaneNameEmptyByLaneId(Long laneId);
|
||||
|
||||
/**
|
||||
* 批量更新库位
|
||||
* @param list
|
||||
*/
|
||||
void updateHouseLocationList(List<WareHouseLocationSaveReqVO> list);
|
||||
|
||||
/**
|
||||
* 设置库区名称和id为空
|
||||
* @param id
|
||||
|
@ -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;
|
||||
@ -158,6 +160,20 @@ public class HouseLocationServiceImpl extends ServiceImpl<WareHouseLocationMappe
|
||||
houseLocationMapper.updateLocationAreaNameEmptyByAreaId(areaId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateHouseLocationList(List<WareHouseLocationSaveReqVO> list) {
|
||||
List<WareHouseLocationDO> locationDOList = BeanUtils.toBean(list, WareHouseLocationDO.class);
|
||||
houseLocationMapper.updateById(locationDOList);
|
||||
|
||||
List<String> 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<WareHouseLocationDO>> list) {
|
||||
|
@ -270,6 +270,9 @@ public class RobotInformationServiceImpl extends ServiceImpl<RobotInformationMap
|
||||
throw exception(ROBOT_HAVE_DOING_TASK);
|
||||
}
|
||||
|
||||
redisUtil.del(RobotTaskChcheConstant.ROBOT_GET_ROBOTNO_BY_MAC + robotInformationDO.getMacAddress());
|
||||
redisUtil.del(RobotTaskChcheConstant.ROBOT_GET_MAC_BY_NO + robotInformationDO.getRobotNo());
|
||||
|
||||
UserOperationLogSaveReqVO operationLog = UserOperationLogSaveReqVO.builder()
|
||||
.operateAction("删除车辆 " + robotInformationDO.getRobotNo())
|
||||
.nickName(SecurityFrameworkUtils.getLoginUserNickname()).build();
|
||||
|
@ -138,6 +138,16 @@ public class RobotTaskDetailServiceImpl implements RobotTaskDetailService {
|
||||
robotTaskDetailDO.setTaskStage(RobotTaskStageEnum.MANUALLY_COMPLETED.getType());
|
||||
taskDetailMapper.updateById(robotTaskDetailDO);
|
||||
|
||||
List<RobotTaskDetailDO> taskDetailDOS = taskDetailMapper.selectList(new LambdaQueryWrapperX<RobotTaskDetailDO>()
|
||||
.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;
|
||||
|
@ -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 @@
|
||||
<if test="pageReqVO.endTime!=null ">
|
||||
AND t1.create_time <= #{pageReqVO.endTime}
|
||||
</if>
|
||||
<if test="pageReqVO.taskStage != null">
|
||||
and t2.task_stage = #{pageReqVO.taskStage}
|
||||
</if>
|
||||
</where>
|
||||
order by t1.create_time desc
|
||||
</select>
|
||||
|
Loading…
Reference in New Issue
Block a user