This commit is contained in:
陆一凡 2025-03-14 13:08:45 +08:00
parent 7ff44acb10
commit 5af579e36a
4 changed files with 28 additions and 15 deletions

View File

@ -184,12 +184,13 @@ public class AppTaskController extends BaseController
/**
* 反馈任务状态
*/
@ApiOperation("生成库位")
@Log(title = "执行任务", skipAuth = true)
@ApiOperation("反馈任务状态")
@Log(title = "反馈任务", skipAuth = true)
@PostMapping("/receiveTaskResult")
@Anonymous
public AjaxResult receiveTaskResult(@RequestBody TaskResultFeedRequest feedBackRequest)
{
logger.info("反馈任务状态。,请求任务{}",JSON.toJSONString(feedBackRequest));
// 判断请求参数是否齐全
if (feedBackRequest == null
|| StringUtils.isEmpty(feedBackRequest.getTaskId())
@ -296,14 +297,15 @@ public class AppTaskController extends BaseController
appTask.setVehicleId(wcsStackerTask.getVehicleNo());
List<AppTask> appTasks = appTaskService.selectAppTaskList(appTask);
if(!appTasks.isEmpty()){
logger.info("此托盘任务已存在");
return error("此托盘任务已存在");
}
AppTask appTask2 = new AppTask();
BeanUtils.copyProperties(wcsStackerTask, appTask2);
appTask2.setTaskId("RK"+System.currentTimeMillis());
appTask2.setWcsTaskId("RK"+System.currentTimeMillis());
appTask2.setTaskStatus(1);
appTask2.setTaskId(OrderCodeFactory.getOrderCode("", ""));
// appTask2.setWcsTaskId("RK"+System.currentTimeMillis());
appTask2.setTaskStatus(0);
appTask2.setTaskType(1);
appTask2.setOrigin(wcsStackerTask.getPoint());
appTask2.setTaskPriority(1);

View File

@ -194,20 +194,25 @@ public class TaskExecutor {
* 完成通常入库任务
*/
private void completeNormalInTask() {
logger.info("开始执行通常入库任务");
AppTask appTask = new AppTask();
appTask.setTaskStatus(5);
appTask.setTaskType(1);
List<AppTask> appTasks = appTaskService.selectAppTaskList(appTask);
logger.info("通常入库任务数量:{}", appTasks.size());
if (appTasks == null || appTasks.isEmpty()) {
return;
}
for (AppTask task : appTasks) {
logger.info("开始执行通常入库任务:{}", task.getTaskId());
// 检查是否存在库存
AppStock appStockCheck = new AppStock();
appStockCheck.setVehicleId(task.getVehicleId());
appStockCheck.setStockStatus(1);
List<AppStock> appStocks = appStockService.selectAppStockList(appStockCheck);
logger.info("通常入库任务:{},库存数量:{}", task.getTaskId(), appStocks.size());
if (!CollectionUtils.isEmpty(appStocks)) { // 存在库存可能是回库任务
logger.info("通常入库任务==============================");
int updateLocationWithVehicleId = appStockService.updateLocationWithVehicleId(task.getVehicleId(), task.getDestination());
logger.info("重新回库更新库存成功,更新条数:{}", updateLocationWithVehicleId);
} else {
@ -286,19 +291,21 @@ public class TaskExecutor {
appStock.setStockStatus(0);
appStock.setCreateTime(new Date());
appStock.setUpdateTime(new Date());
appStock.setCreateUser(SecurityUtils.getUsername());
appStock.setUpdateBy(SecurityUtils.getUsername());
appStock.setCreateUser("定时任务");
appStock.setUpdateBy("定时任务");
appStock.setRemark("空托入库");
appStockService.insertAppStock(appStock);
}
AppTaskBak appTaskBak = new AppTaskBak();
BeanUtils.copyProperties(task, appTaskBak);
logger.info("入库任务数据归档成功(回库)。{}", JSON.toJSONString(appTaskBak));
appTaskBakService.insertAppTaskBak(appTaskBak);// 数据归档
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
}
AppTaskBak appTaskBak = new AppTaskBak();
BeanUtils.copyProperties(task, appTaskBak);
logger.info("入库任务数据归档成功(回库)。{}", JSON.toJSONString(appTaskBak));
appTaskBakService.insertAppTaskBak(appTaskBak);// 数据归档
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
}
logger.info("完成通常入库任务完成===================");
}
/**
@ -441,7 +448,7 @@ public class TaskExecutor {
}
}
//java8 stream流过滤出appTasks数组中的stockId对应的vehicleId 去重
List<String> locations = appTasks.stream().map(AppTask::getLocationId).distinct().collect(Collectors.toList());
List<String> locations = appTasks.stream().map(AppTask::getOrigin).distinct().collect(Collectors.toList());
// List<String> vehicles = appTasks.stream().map(AppTask::getVehicleId).distinct().collect(Collectors.toList());
//更新库存中中这些vehicleId对应的stock_status为0,并且把locationId置空
// for (String vehicleId : vehicles) {

View File

@ -161,7 +161,11 @@ public class AppPmsOrderInServiceImpl implements IAppPmsOrderInService
// 变更订单剩余数量
AppPmsOrderIn update = new AppPmsOrderIn();
update.setListId(pmsInDatum.getListId());
update.setRemainingNum(appPmsOrderInInsert.getRemainingNum().subtract(pmsInDatum.getGoodsNum()));
BigDecimal subtract = appPmsOrderInInsert.getRemainingNum().subtract(pmsInDatum.getGoodsNum());
if(subtract.compareTo(BigDecimal.ZERO) < 0){
throw new ServiceException("订单剩余数量不足,请重新输入");
}
update.setRemainingNum(subtract);
appPmsOrderInMapper.updateAppPmsOrderIn(update);
insertNum ++;
}

View File

@ -186,7 +186,7 @@
update app_stock set location_id = #{newLocation} where location_id = #{oldLocation}
</update>
<update id="updateLocationWithVehicleId">
update app_stock set location_id = #{location} and stock_status = 0 where vehicle_id = #{vehicleId}
update app_stock set location_id = #{location}, stock_status = 0 where vehicle_id = #{vehicleId}
</update>
<delete id="deleteAppStockByStockId" parameterType="String">