区分 生产线入库 其它入库 退货入库 生成mydojob任务逻辑,

修改手动完成,修改订单数量逻辑
This commit is contained in:
liuhanqing
2025-09-17 11:26:25 +08:00
parent 1acc3ec6d4
commit f3bb3efe58
9 changed files with 164 additions and 32 deletions

View File

@@ -16,6 +16,8 @@ import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.MessageUtils;
import com.ruoyi.in.erp.domain.TransferBillCallback;
import com.ruoyi.in.erp.service.ITransferBillCallbackService;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import com.ruoyi.job.mydojob.domain.MydoJob;
@@ -67,15 +69,13 @@ public class MydoJobServiceImpl implements IMydoJobService {
@Autowired
private IBasCargoSpaceService basCargoSpaceService;
@Autowired
private ICheckDifferenceRecordService checkDifferenceRecordService;
@Autowired
private IOutExceptionRecordService outExceptionRecordService;
@Autowired
private PdaService pdaService;
@Autowired
private IBasWarehouseService basWarehouseService;
@Autowired
private IToWcsService iToWcsService;
@Autowired
private ITransferBillCallbackService transferBillCallbackService;
/**
@@ -230,25 +230,17 @@ public class MydoJobServiceImpl implements IMydoJobService {
*/
@Override
@Transactional(rollbackFor = Exception.class)
public AjaxResult manualCompleted(MydoJob mydoJob, int type) {
String jobId = mydoJob.getJobId();
MydoJob job = selectMydoJobByJobId(jobId);
if (job == null) {
public AjaxResult manualCompleted(MydoJob mydoJobParam, int type) {
String jobId = mydoJobParam.getJobId();
MydoJob mydoJob = selectMydoJobByJobId(jobId);
if (mydoJob == null) {
return AjaxResult.warn("任务不存在");
}
if (type == 0) {
//todo 取消堆垛机任务 或者 agv任务
/*AjaxResult ajaxResult = iToWcsService.cancelTaskByTaskNo(job.getTaskNo());
if (!ajaxResult.isSuccess()){
return AjaxResult.error("");
}*/
}
//入库任务
MydoJobDetail param = new MydoJobDetail();
param.setJobId(jobId);
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(job.getCargoSpaceId());
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(mydoJob.getCargoSpaceId());
if (CollUtil.isNotEmpty(mydoJobDetails)) {
List<BasStock> list = new ArrayList<>();
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
@@ -260,13 +252,13 @@ public class MydoJobServiceImpl implements IMydoJobService {
inStockinDetailService.updateInStockinDetail(inStockinDetail);
}
//正常库存
list.add(getStockByInStockinDetail(mydoJobDetail, job, "1"));
list.add(getStockByInStockinDetail(mydoJobDetail, mydoJob, "1"));
}
//修改货位状态
basCargoSpace.setStatus("2");
basCargoSpace.setTrayCode(job.getTrayCode());
basCargoSpace.setCargoSpaceId(job.getCargoSpaceId());
basCargoSpace.setTrayCode(mydoJob.getTrayCode());
basCargoSpace.setCargoSpaceId(mydoJob.getCargoSpaceId());
basCargoSpaceService.updateBasCargoSpace(basCargoSpace);
//插入库存信息
@@ -279,8 +271,21 @@ public class MydoJobServiceImpl implements IMydoJobService {
// 插入任务历史表 删除任务
insertHistory(mydoJob.getJobId());
//todo 插入回传表
//修改回传单据表状态
if ("1".equals(mydoJob.getInOrOut())){
//调拨单
TransferBillCallback transferBillCallbackParam = new TransferBillCallback();
transferBillCallbackParam.setJobId(mydoJob.getJobId());
List<TransferBillCallback> transferBillCallbacks = transferBillCallbackService.selectTransferBillCallbackList(transferBillCallbackParam);
if (CollUtil.isNotEmpty(transferBillCallbacks)){
for (TransferBillCallback transferBillCallback : transferBillCallbacks) {
transferBillCallback.setStatus("2");
transferBillCallbackService.updateTransferBillCallback(transferBillCallback);
}
}
}else {
//todo 退料入库 其它入库
}
return AjaxResult.success();
} else {
return AjaxResult.warn("不存在子作业");