1
This commit is contained in:
parent
c0d1e380e5
commit
7952af7b81
|
|
@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSON;
|
|||
import com.ruoyi.app.domain.*;
|
||||
import com.ruoyi.app.mapper.AppLocationMapper;
|
||||
import com.ruoyi.app.mapper.AppPmsOrderOutMapper;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.quartz.domain.app.*;
|
||||
import com.ruoyi.app.service.*;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
|
|
@ -204,138 +205,99 @@ public class TaskExecutor {
|
|||
// 检查是否存在库存
|
||||
AppStock appStockCheck = new AppStock();
|
||||
appStockCheck.setVehicleId(task.getVehicleId());
|
||||
appStockCheck.setStockStatus(1);
|
||||
List<AppStock> appStocks = appStockService.selectAppStockList(appStockCheck);
|
||||
if (appStocks == null) {
|
||||
continue;
|
||||
}
|
||||
if (!appStocks.isEmpty()) { // 存在库存,可能是回库任务
|
||||
if (!CollectionUtils.isEmpty(appStocks)) { // 存在库存,可能是回库任务
|
||||
int updateLocationWithVehicleId = appStockService.updateLocationWithVehicleId(task.getVehicleId(), task.getDestination());
|
||||
logger.info("重新回库更新库存成功,更新条数:{}", updateLocationWithVehicleId);
|
||||
AppTask updateRemark = new AppTask();
|
||||
updateRemark.setTaskId(task.getTaskId());
|
||||
updateRemark.setRemark("已更新库存库位");
|
||||
appTaskService.updateAppTask(updateRemark); // 更新备注信息
|
||||
} else {
|
||||
// 从码盘表内拉出数据
|
||||
AppPendingStorage appPendingStorage = new AppPendingStorage();
|
||||
appPendingStorage.setVehicleNo(task.getVehicleId());
|
||||
List<AppPendingStorage> appPendingStorages = appPendingStorageService.selectAppPendingStorageList(appPendingStorage);
|
||||
if (!CollectionUtils.isEmpty(appPendingStorages)) {
|
||||
for (AppPendingStorage pendingStorage : appPendingStorages) {
|
||||
// 插入库存
|
||||
String stockId = IdUtils.fastSimpleUUID();
|
||||
AppStock appStock = new AppStock();
|
||||
appStock.setStockId(stockId);
|
||||
appStock.setListId(pendingStorage.getListId());
|
||||
appStock.setVehicleId(pendingStorage.getVehicleNo());
|
||||
appStock.setLocationId(task.getDestination());
|
||||
appStock.setGoodsId(pendingStorage.getGoodsId());
|
||||
appStock.setGoodsName(pendingStorage.getGoodsDesc());
|
||||
appStock.setGoodsUnit(pendingStorage.getUnit());
|
||||
appStock.setProviderId("-");
|
||||
appStock.setProviderName("-");
|
||||
appStock.setRemainNum(pendingStorage.getGoodsNum());
|
||||
appStock.setOriginNum(pendingStorage.getGoodsNum());
|
||||
appStock.setBatchNo("-");
|
||||
appStock.setInvAge(0L);
|
||||
appStock.setGoodsStatus(0);
|
||||
appStock.setStockStatus(0);
|
||||
appStock.setCreateTime(new Date());
|
||||
appStock.setUpdateTime(new Date());
|
||||
appStock.setCreateUser(pendingStorage.getCreatePerson());
|
||||
appStock.setUpdateBy(pendingStorage.getCreatePerson());
|
||||
appStock.setRemark("");
|
||||
int insertStockResult = appStockService.insertAppStock(appStock);
|
||||
logger.info("插入库存:{},结果:{}", JSON.toJSONString(appStock), insertStockResult);
|
||||
if (insertStockResult > 0) {
|
||||
appPendingStorageService.deleteAppPendingStorageByRecordId(pendingStorage.getRecordId()); // 删除码盘数据
|
||||
// 如果是PMS入库则发送PMS入库完成
|
||||
if (pendingStorage.getStorageType().compareTo(2) == 0) {
|
||||
PmsInFeedBack pmsInFeedBack = new PmsInFeedBack();
|
||||
PmsInComplete pmsInComplete = new PmsInComplete();
|
||||
pmsInComplete.setCrmOrder(stockId);
|
||||
pmsInComplete.setSapCode("2290");
|
||||
pmsInComplete.setInArea("TPLK");
|
||||
pmsInComplete.setInLocation("6001");
|
||||
pmsInComplete.setOutArea("TPHC");
|
||||
pmsInComplete.setOutLocation("6001");
|
||||
pmsInFeedBack.setHeaderInfo(pmsInComplete);
|
||||
List<PmsInCompleteDetail> pmsInCompleteDetails = new ArrayList<>();
|
||||
PmsInCompleteDetail pmsInCompleteDetail = new PmsInCompleteDetail();
|
||||
pmsInCompleteDetail.setMaterialNo(pendingStorage.getGoodsId());
|
||||
pmsInCompleteDetail.setMaterialName(pendingStorage.getGoodsDesc());
|
||||
pmsInCompleteDetail.setAmount(pendingStorage.getGoodsNum().intValue());
|
||||
pmsInCompleteDetail.setUnit(pendingStorage.getUnit());
|
||||
pmsInCompleteDetail.setBarcode(pendingStorage.getGoodsCode());
|
||||
pmsInCompleteDetails.add(pmsInCompleteDetail);
|
||||
pmsInFeedBack.setDetailList(pmsInCompleteDetails);
|
||||
String url = sysConfigService.selectConfigByKey("pms.intComplete");
|
||||
if (StringUtils.isEmpty(url)) {
|
||||
return;
|
||||
}
|
||||
PmsCommonRes pmsCommonRes = JSON.parseObject(HttpUtils.sendHttpPostWithoutToken(url, JSON.toJSONString(pmsInFeedBack)), PmsCommonRes.class);
|
||||
logger.info("pms入库反馈请求信息:{},结果:{}", JSON.toJSONString(pmsInFeedBack), JSON.toJSONString(pmsCommonRes));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}else{
|
||||
//空托入库
|
||||
String stockId = IdUtils.fastSimpleUUID();
|
||||
AppStock appStock = new AppStock();
|
||||
appStock.setStockId(stockId);
|
||||
appStock.setVehicleId(task.getVehicleId());
|
||||
appStock.setLocationId(task.getDestination());
|
||||
appStock.setGoodsId("0");
|
||||
appStock.setGoodsStatus(0);
|
||||
appStock.setStockStatus(0);
|
||||
appStock.setCreateTime(new Date());
|
||||
appStock.setUpdateTime(new Date());
|
||||
appStock.setCreateUser(SecurityUtils.getUsername());
|
||||
appStock.setUpdateBy(SecurityUtils.getUsername());
|
||||
appStock.setRemark("空托入库");
|
||||
appStockService.insertAppStock(appStock);
|
||||
}
|
||||
|
||||
AppTaskBak appTaskBak = new AppTaskBak();
|
||||
appTaskBak.setTaskId(task.getTaskId());
|
||||
appTaskBak.setTaskStatus(task.getTaskStatus());
|
||||
appTaskBak.setRemark(updateRemark.getRemark());
|
||||
appTaskBak.setTaskType(task.getTaskType());
|
||||
appTaskBak.setTaskPriority(task.getTaskPriority());
|
||||
appTaskBak.setVehicleId(task.getVehicleId());
|
||||
appTaskBak.setOrigin(task.getOrigin());
|
||||
appTaskBak.setDestination(task.getDestination());
|
||||
appTaskBak.setWcsTaskId(task.getWcsTaskId());
|
||||
appTaskBak.setFinishTime(task.getFinishTime());
|
||||
appTaskBak.setGoodsId(task.getGoodsId());
|
||||
appTaskBak.setOpNum(task.getOpNum());
|
||||
appTaskBak.setStockNum(task.getStockNum());
|
||||
appTaskBak.setOpUser(task.getOpUser());
|
||||
appTaskBak.setPreTask(task.getPreTask());
|
||||
BeanUtils.copyProperties(task, appTaskBak);
|
||||
logger.info("入库任务数据归档成功(回库)。{}", JSON.toJSONString(appTaskBak));
|
||||
appTaskBakService.insertAppTaskBak(appTaskBak);// 数据归档
|
||||
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
|
||||
return;
|
||||
}
|
||||
// 从码盘表内拉出数据
|
||||
AppPendingStorage appPendingStorage = new AppPendingStorage();
|
||||
appPendingStorage.setVehicleNo(task.getVehicleId());
|
||||
List<AppPendingStorage> appPendingStorages = appPendingStorageService.selectAppPendingStorageList(appPendingStorage);
|
||||
if (appPendingStorages == null) {
|
||||
return;
|
||||
}
|
||||
if (appPendingStorages.isEmpty()) {
|
||||
AppTask updateRemark = new AppTask();
|
||||
updateRemark.setTaskId(task.getTaskId());
|
||||
updateRemark.setRemark("该载具似乎未进行过码盘");
|
||||
appTaskService.updateAppTask(updateRemark); // 更新备注信息
|
||||
AppTaskBak appTaskBak = new AppTaskBak();
|
||||
BeanUtils.copyProperties(task, appTaskBak);
|
||||
appTaskBakService.insertAppTaskBak(appTaskBak); // 将任务数据归档
|
||||
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
|
||||
return;
|
||||
}
|
||||
for (AppPendingStorage pendingStorage : appPendingStorages) {
|
||||
// 插入库存
|
||||
String stockId = IdUtils.fastSimpleUUID();
|
||||
AppStock appStock = new AppStock();
|
||||
appStock.setStockId(stockId);
|
||||
appStock.setListId(pendingStorage.getListId());
|
||||
appStock.setVehicleId(pendingStorage.getVehicleNo());
|
||||
appStock.setLocationId(task.getDestination());
|
||||
appStock.setGoodsId(pendingStorage.getGoodsId());
|
||||
appStock.setGoodsName(pendingStorage.getGoodsDesc());
|
||||
appStock.setGoodsUnit(pendingStorage.getUnit());
|
||||
appStock.setProviderId("-");
|
||||
appStock.setProviderName("-");
|
||||
appStock.setRemainNum(pendingStorage.getGoodsNum());
|
||||
appStock.setOriginNum(pendingStorage.getGoodsNum());
|
||||
appStock.setBatchNo("-");
|
||||
appStock.setInvAge(0L);
|
||||
appStock.setGoodsStatus(0);
|
||||
appStock.setStockStatus(0);
|
||||
appStock.setCreateTime(new Date());
|
||||
appStock.setUpdateTime(new Date());
|
||||
appStock.setCreateUser(pendingStorage.getCreatePerson());
|
||||
appStock.setUpdateBy(pendingStorage.getCreatePerson());
|
||||
appStock.setRemark("");
|
||||
int insertStockResult = appStockService.insertAppStock(appStock);
|
||||
logger.info("插入库存:{},结果:{}", JSON.toJSONString(appStock), insertStockResult);
|
||||
if(insertStockResult > 0) {
|
||||
appPendingStorageService.deleteAppPendingStorageByRecordId(pendingStorage.getRecordId()); // 删除码盘数据
|
||||
// 如果是PMS入库则发送PMS入库完成
|
||||
if(pendingStorage.getStorageType().compareTo(2) == 0) {
|
||||
PmsInFeedBack pmsInFeedBack = new PmsInFeedBack();
|
||||
PmsInComplete pmsInComplete = new PmsInComplete();
|
||||
pmsInComplete.setCrmOrder(stockId);
|
||||
pmsInComplete.setSapCode("2290");
|
||||
pmsInComplete.setInArea("TPLK");
|
||||
pmsInComplete.setInLocation("6001");
|
||||
pmsInComplete.setOutArea("TPHC");
|
||||
pmsInComplete.setOutLocation("6001");
|
||||
pmsInFeedBack.setHeaderInfo(pmsInComplete);
|
||||
List<PmsInCompleteDetail> pmsInCompleteDetails = new ArrayList<>();
|
||||
PmsInCompleteDetail pmsInCompleteDetail = new PmsInCompleteDetail();
|
||||
pmsInCompleteDetail.setMaterialNo(pendingStorage.getGoodsId());
|
||||
pmsInCompleteDetail.setMaterialName(pendingStorage.getGoodsDesc());
|
||||
pmsInCompleteDetail.setAmount(pendingStorage.getGoodsNum().intValue());
|
||||
pmsInCompleteDetail.setUnit(pendingStorage.getUnit());
|
||||
pmsInCompleteDetail.setBarcode(pendingStorage.getGoodsCode());
|
||||
pmsInCompleteDetails.add(pmsInCompleteDetail);
|
||||
pmsInFeedBack.setDetailList(pmsInCompleteDetails);
|
||||
String url = sysConfigService.selectConfigByKey("pms.intComplete");
|
||||
if (StringUtils.isEmpty(url)) {
|
||||
return;
|
||||
}
|
||||
PmsCommonRes pmsCommonRes = JSON.parseObject(HttpUtils.sendHttpPostWithoutToken(url, JSON.toJSONString(pmsInFeedBack)), PmsCommonRes.class);
|
||||
logger.info("pms入库反馈请求信息:{},结果:{}", JSON.toJSONString(pmsInFeedBack), JSON.toJSONString(pmsCommonRes));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
AppTask updateRemark = new AppTask();
|
||||
updateRemark.setTaskId(task.getTaskId());
|
||||
updateRemark.setRemark("已插入库存");
|
||||
appTaskService.updateAppTask(updateRemark); // 更新备注信息
|
||||
AppTaskBak appTaskBak = new AppTaskBak();
|
||||
appTaskBak.setTaskId(task.getTaskId());
|
||||
appTaskBak.setTaskStatus(task.getTaskStatus());
|
||||
appTaskBak.setRemark(updateRemark.getRemark());
|
||||
appTaskBak.setTaskType(task.getTaskType());
|
||||
appTaskBak.setTaskPriority(task.getTaskPriority());
|
||||
appTaskBak.setVehicleId(task.getVehicleId());
|
||||
appTaskBak.setOrigin(task.getOrigin());
|
||||
appTaskBak.setDestination(task.getDestination());
|
||||
appTaskBak.setWcsTaskId(task.getWcsTaskId());
|
||||
appTaskBak.setFinishTime(task.getFinishTime());
|
||||
appTaskBak.setGoodsId(task.getGoodsId());
|
||||
appTaskBak.setOpNum(task.getOpNum());
|
||||
appTaskBak.setStockNum(task.getStockNum());
|
||||
appTaskBak.setOpUser(task.getOpUser());
|
||||
appTaskBak.setPreTask(task.getPreTask());
|
||||
logger.info("入库任务数据归档成功。{}", JSON.toJSONString(appTaskBak));
|
||||
appTaskBakService.insertAppTaskBak(appTaskBak);// 数据归档
|
||||
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@
|
|||
update app_stock set location_id = #{newLocation} where location_id = #{oldLocation}
|
||||
</update>
|
||||
<update id="updateLocationWithVehicleId">
|
||||
update app_stock set location_id = #{location} where vehicle_id = #{vehicleId}
|
||||
update app_stock set location_id = #{location} and stock_status = 0 where vehicle_id = #{vehicleId}
|
||||
</update>
|
||||
|
||||
<delete id="deleteAppStockByStockId" parameterType="String">
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user