测试修改
This commit is contained in:
@@ -28,6 +28,7 @@ public interface IMydoJobService
|
||||
* @return 任务表集合
|
||||
*/
|
||||
public List<MydoJob> selectMydoJobList(MydoJob mydoJob);
|
||||
public List<MydoJob> selectMydoJobListApi(MydoJob mydoJob);
|
||||
|
||||
/**
|
||||
* 新增任务表
|
||||
|
||||
@@ -90,6 +90,17 @@ public class MydoJobServiceImpl implements IMydoJobService {
|
||||
return mydoJobMapper.selectMydoJobList(mydoJob);
|
||||
}
|
||||
|
||||
/**
|
||||
* 对外接口查询任务表列表
|
||||
*
|
||||
* @param mydoJob
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<MydoJob> selectMydoJobListApi(MydoJob mydoJob) {
|
||||
return mydoJobMapper.selectMydoJobList(mydoJob);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增任务表
|
||||
*
|
||||
@@ -148,27 +159,37 @@ public class MydoJobServiceImpl implements IMydoJobService {
|
||||
if (job == null) {
|
||||
return AjaxResult.warn("任务不存在");
|
||||
}
|
||||
if(!"1".equals(job.getStatus())) {
|
||||
if (!"1".equals(job.getStatus())) {
|
||||
return AjaxResult.warn("任务已开始");
|
||||
}
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) {
|
||||
mydoJob.setStatus("5");
|
||||
updateMydoJob(mydoJob);
|
||||
//插入历史表
|
||||
insertHistory(mydoJob.getJobId());
|
||||
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
String inOrOutDId = mydoJobDetail.getInOrOutDId();
|
||||
InStockinDetail inStockinDetail = inStockinDetailService.selectInStockinDetailByStockinDetailId(inOrOutDId);
|
||||
BigDecimal stockInNum = Convert.toBigDecimal(inStockinDetail.getScanNum());
|
||||
BigDecimal jobInNum = Convert.toBigDecimal(mydoJobDetail.getInQuantity());
|
||||
BigDecimal subtract = stockInNum.subtract(jobInNum);
|
||||
inStockinDetail.setScanNum(Convert.toStr(subtract));
|
||||
inStockinDetailService.updateInStockinDetail(inStockinDetail);
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
String inOrOutDId = mydoJobDetail.getInOrOutDId();
|
||||
InStockinDetail inStockinDetail = inStockinDetailService.selectInStockinDetailByStockinDetailId(inOrOutDId);
|
||||
BigDecimal stockInNum = Convert.toBigDecimal(inStockinDetail.getScanNum());
|
||||
BigDecimal jobInNum = Convert.toBigDecimal(mydoJobDetail.getInQuantity());
|
||||
BigDecimal subtract = stockInNum.subtract(jobInNum);
|
||||
inStockinDetail.setScanNum(Convert.toStr(subtract));
|
||||
inStockinDetailService.updateInStockinDetail(inStockinDetail);
|
||||
}
|
||||
mydoJob.setStatus("5");
|
||||
updateMydoJob(mydoJob);
|
||||
//插入历史表
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
}
|
||||
mydoJob.setStatus("5");
|
||||
updateMydoJob(mydoJob);
|
||||
//插入历史表
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -194,21 +215,122 @@ public class MydoJobServiceImpl implements IMydoJobService {
|
||||
if (job == null) {
|
||||
return AjaxResult.warn("任务不存在");
|
||||
}
|
||||
//入库作业
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(job.getCargoSpaceId());
|
||||
if (CollUtil.isNotEmpty(mydoJobDetails)) {
|
||||
List<BasStock> list = new ArrayList<>();
|
||||
if ("1".equals(job.getStatus()) || "2".equals(job.getStatus())) {
|
||||
return AjaxResult.warn("任务未开始");
|
||||
}
|
||||
if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) {
|
||||
//空料箱入库 托盘垛入库
|
||||
//入库作业
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(job.getCargoSpaceId());
|
||||
if (CollUtil.isNotEmpty(mydoJobDetails)) {
|
||||
List<BasStock> list = new ArrayList<>();
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
//正常库存
|
||||
list.add(getStockByInStockinDetail(mydoJobDetail, job, "1"));
|
||||
}
|
||||
//修改货位状态
|
||||
basCargoSpace.setStatus("2");
|
||||
basCargoSpace.setTrayCode(job.getTrayCode());
|
||||
basCargoSpace.setCargoSpaceId(job.getCargoSpaceId());
|
||||
basCargoSpaceService.updateBasCargoSpace(basCargoSpace);
|
||||
//插入库存信息
|
||||
basStockService.insertBasStockList(list);
|
||||
//结束任务
|
||||
mydoJob.setStatus("4");
|
||||
updateMydoJob(mydoJob);
|
||||
// 插入任务历史表 删除任务
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
return AjaxResult.warn("子任务不存在");
|
||||
}
|
||||
} else if ("2".equals(job.getInOrOut()) || "3".equals(job.getInOrOut())) {
|
||||
//ctu物料入库 高架库入库
|
||||
//入库作业
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(job.getCargoSpaceId());
|
||||
if (CollUtil.isNotEmpty(mydoJobDetails)) {
|
||||
List<BasStock> list = new ArrayList<>();
|
||||
//查找是否存在异常信息
|
||||
OutExceptionRecord outExceptionRecordParam = new OutExceptionRecord();
|
||||
outExceptionRecordParam.setTrayCode(job.getTrayCode());
|
||||
outExceptionRecordParam.setWarehouseId(job.getWarehouseId());
|
||||
List<OutExceptionRecord> outExceptionRecords = outExceptionRecordService.selectOutExceptionRecordList(outExceptionRecordParam);
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
|
||||
//修改单据实际数量 物料入库 高架库入库
|
||||
String inOrOutDId = mydoJobDetail.getInOrOutDId();
|
||||
InStockinDetail inStockinDetail = inStockinDetailService.selectInStockinDetailByStockinDetailId(inOrOutDId);
|
||||
inStockinDetail.setAssignNum(Convert.toStr(Convert.toBigDecimal(inStockinDetail.getAssignNum()).add(Convert.toBigDecimal(mydoJobDetail.getInQuantity()))));
|
||||
inStockinDetailService.updateInStockinDetail(inStockinDetail);
|
||||
|
||||
Optional<OutExceptionRecord> first = outExceptionRecords.stream().filter(x -> x.getTrayCode().equals(job.getTrayCode()) && x.getProductId().equals(mydoJobDetail.getProductId())).findFirst();
|
||||
if (first.isPresent()) {
|
||||
//生成异常库存
|
||||
BasStock stockByInStockinDetail = getStockByInStockinDetail(mydoJobDetail, job, "3");
|
||||
list.add(stockByInStockinDetail);
|
||||
//修改异常记录中的库存id
|
||||
OutExceptionRecord outExceptionRecord = first.get();
|
||||
outExceptionRecord.setStockId(stockByInStockinDetail.getStockId());
|
||||
outExceptionRecordService.updateOutExceptionRecord(outExceptionRecord);
|
||||
} else {
|
||||
//正常库存
|
||||
list.add(getStockByInStockinDetail(mydoJobDetail, job, "1"));
|
||||
}
|
||||
}
|
||||
//删除异常库存记录
|
||||
List<Long> collect = outExceptionRecords.stream().map(OutExceptionRecord::getOutGuid).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(collect)) {
|
||||
for (Long id : collect) {
|
||||
outExceptionRecordService.deleteOutExceptionRecordByOutGuid(id);
|
||||
}
|
||||
|
||||
}
|
||||
//修改货位状态
|
||||
basCargoSpace.setStatus("2");
|
||||
basCargoSpace.setTrayCode(job.getTrayCode());
|
||||
basCargoSpace.setCargoSpaceId(job.getCargoSpaceId());
|
||||
basCargoSpaceService.updateBasCargoSpace(basCargoSpace);
|
||||
|
||||
//插入库存信息
|
||||
basStockService.insertBasStockList(list);
|
||||
|
||||
//结束任务
|
||||
mydoJob.setStatus("4");
|
||||
updateMydoJob(mydoJob);
|
||||
// 插入任务历史表 删除任务
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
return AjaxResult.warn("子任务不存在");
|
||||
}
|
||||
} else if ("5".equals(job.getInOrOut()) || "6".equals(job.getInOrOut())) {
|
||||
//盘点 ctu入库 高架库入库
|
||||
//入库作业
|
||||
MydoJobDetail param = new MydoJobDetail();
|
||||
param.setJobId(jobId);
|
||||
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(param);
|
||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByCargoSpaceId(job.getCargoSpaceId());
|
||||
if (CollUtil.isNotEmpty(mydoJobDetails)) {
|
||||
List<BasStock> list = new ArrayList<>();
|
||||
|
||||
|
||||
if ("5".equals(job.getInOrOut()) || "6".equals(job.getInOrOut())) {
|
||||
//查询盘点信息中的异常信息
|
||||
CheckDifferenceRecord checkDifferenceRecordParam = new CheckDifferenceRecord();
|
||||
checkDifferenceRecordParam.setTrayCode(job.getTrayCode());
|
||||
checkDifferenceRecordParam.setWarehouseId(job.getWarehouseId());
|
||||
List<CheckDifferenceRecord> checkDifferenceRecords = checkDifferenceRecordService.selectCheckDifferenceRecordList(checkDifferenceRecordParam);
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
//修改单据实际数量
|
||||
String inOrOutDId = mydoJobDetail.getInOrOutDId();
|
||||
InStockinDetail inStockinDetail = inStockinDetailService.selectInStockinDetailByStockinDetailId(inOrOutDId);
|
||||
inStockinDetail.setAssignNum(Convert.toStr(Convert.toBigDecimal(inStockinDetail.getAssignNum()).add(Convert.toBigDecimal(mydoJobDetail.getInQuantity()))));
|
||||
inStockinDetailService.updateInStockinDetail(inStockinDetail);
|
||||
//如果存在盘点异常信息 根据托盘条码和物料id 筛选异常信息
|
||||
Optional<CheckDifferenceRecord> first = checkDifferenceRecords.stream().filter(x -> x.getTrayCode().equals(job.getTrayCode()) && x.getProductId().equals(mydoJobDetail.getProductId())).findFirst();
|
||||
if (first.isPresent()) {
|
||||
@@ -226,61 +348,32 @@ public class MydoJobServiceImpl implements IMydoJobService {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//修改货位状态
|
||||
basCargoSpace.setStatus("2");
|
||||
basCargoSpace.setTrayCode(job.getTrayCode());
|
||||
basCargoSpace.setCargoSpaceId(job.getCargoSpaceId());
|
||||
basCargoSpaceService.updateBasCargoSpace(basCargoSpace);
|
||||
|
||||
//插入库存信息
|
||||
basStockService.insertBasStockList(list);
|
||||
|
||||
//结束任务
|
||||
mydoJob.setStatus("4");
|
||||
updateMydoJob(mydoJob);
|
||||
// 插入任务历史表 删除任务
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
//查找是否存在异常信息
|
||||
OutExceptionRecord outExceptionRecordParam = new OutExceptionRecord();
|
||||
outExceptionRecordParam.setTrayCode(job.getTrayCode());
|
||||
outExceptionRecordParam.setWarehouseId(job.getWarehouseId());
|
||||
List<OutExceptionRecord> outExceptionRecords = outExceptionRecordService.selectOutExceptionRecordList(outExceptionRecordParam);
|
||||
for (MydoJobDetail mydoJobDetail : mydoJobDetails) {
|
||||
Optional<OutExceptionRecord> first = outExceptionRecords.stream().filter(x -> x.getTrayCode().equals(job.getTrayCode()) && x.getProductId().equals(mydoJobDetail.getProductId())).findFirst();
|
||||
if (first.isPresent()){
|
||||
//生成异常库存
|
||||
BasStock stockByInStockinDetail = getStockByInStockinDetail(mydoJobDetail, job, "3");
|
||||
list.add(stockByInStockinDetail);
|
||||
//修改异常记录中的库存id
|
||||
OutExceptionRecord outExceptionRecord = first.get();
|
||||
outExceptionRecord.setStockId(stockByInStockinDetail.getStockId());
|
||||
outExceptionRecordService.updateOutExceptionRecord(outExceptionRecord);
|
||||
}else {
|
||||
//正常库存
|
||||
list.add(getStockByInStockinDetail(mydoJobDetail, job, "1"));
|
||||
}
|
||||
}
|
||||
//删除异常库存记录
|
||||
List<Long> collect = outExceptionRecords.stream().map(OutExceptionRecord::getOutGuid).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty( collect)){
|
||||
for (Long id : collect) {
|
||||
outExceptionRecordService.deleteOutExceptionRecordByOutGuid(id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return AjaxResult.warn("子任务不存在");
|
||||
}
|
||||
|
||||
|
||||
//修改货位状态
|
||||
basCargoSpace.setStatus("2");
|
||||
basCargoSpace.setTrayCode(job.getTrayCode());
|
||||
basCargoSpace.setCargoSpaceId(job.getCargoSpaceId());
|
||||
basCargoSpaceService.updateBasCargoSpace(basCargoSpace);
|
||||
|
||||
//插入库存信息
|
||||
basStockService.insertBasStockList(list);
|
||||
|
||||
//结束任务
|
||||
mydoJob.setStatus("4");
|
||||
updateMydoJob(mydoJob);
|
||||
// 插入任务历史表 删除任务
|
||||
insertHistory(mydoJob.getJobId());
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
return AjaxResult.warn("子任务不存在");
|
||||
return AjaxResult.warn("暂不支持的任务类型");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private BasStock getStockByInStockinDetail(MydoJobDetail mydoJobDetail, MydoJob mydoJob,String productStatus) {
|
||||
private BasStock getStockByInStockinDetail(MydoJobDetail mydoJobDetail, MydoJob mydoJob, String productStatus) {
|
||||
BasStock stock = new BasStock();
|
||||
stock.setStockId(basJobIdService.getJobId("KC"));
|
||||
stock.setCargoSpaceId(mydoJob.getCargoSpaceId());
|
||||
@@ -360,16 +453,16 @@ public class MydoJobServiceImpl implements IMydoJobService {
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
String msg = "";
|
||||
String Stringbuilder = "";
|
||||
for(String stockId:stockIds){
|
||||
map.put("stockId",stockId);
|
||||
for (String stockId : stockIds) {
|
||||
map.put("stockId", stockId);
|
||||
mydoJobMapper.pointOut(map);
|
||||
String result = map.get("result").toString();
|
||||
if("10".equals(result)){
|
||||
msg="操作成功!";
|
||||
}else{
|
||||
msg=map.get("v_resultmsg").toString();
|
||||
if ("10".equals(result)) {
|
||||
msg = "操作成功!";
|
||||
} else {
|
||||
msg = map.get("v_resultmsg").toString();
|
||||
}
|
||||
Stringbuilder+=stockId+msg+"<br/>";
|
||||
Stringbuilder += stockId + msg + "<br/>";
|
||||
}
|
||||
|
||||
return AjaxResult.success(Stringbuilder.toString());
|
||||
|
||||
Reference in New Issue
Block a user