工位库存,上货,拆零等相关修改

dev_no_inv
yewj 9 months ago
parent 82b6b1ddf9
commit 38dcaae1e2

@ -161,7 +161,7 @@ public class IoCollectOrderController extends BaseController {
request.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); request.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
request.setBusType(collectOrderRequest.getBusType()); request.setBusType(collectOrderRequest.getBusType());
//根据更改用户查询单据 防止两个用户分配同一单据 //根据更改用户查询单据 防止两个用户分配同一单据
request.setUpdateUser(getUserId()); // request.setUpdateUser(getUserId());
request.setTagStatus(2); request.setTagStatus(2);
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request); List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
if (CollUtil.isNotEmpty(orderResponses)) if (CollUtil.isNotEmpty(orderResponses))

@ -134,13 +134,14 @@ public class IoSplitController extends BaseController {
return ResultVOUtils.error(500, "未找到单据"); return ResultVOUtils.error(500, "未找到单据");
} }
if (collectOrder.getTagStatus() == 2){ if (collectOrder.getTagStatus() == 2) {
return ResultVOUtils.error(501,"当前单据正在处理中,请重新选择单据"); return ResultVOUtils.error(501, "当前单据正在处理中,请重新选择单据");
} }
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByWorkplaceCode(collectOrder.getWorkPlaceCode(), collectOrder.getBusType()); SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByWorkplaceCode(collectOrder.getWorkPlaceCode(), collectOrder.getBusType());
if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1) { if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1) {
collectOrder.setWorkPlaceCode(addTagCodeReqeust.getWorkPlaceCode());
splitCodeService.preAutoTagCode(collectOrder); splitCodeService.preAutoTagCode(collectOrder);
// //未拆零 // //未拆零
// if (IntUtil.value(collectOrder.getSplitStatus()) != 2) { // if (IntUtil.value(collectOrder.getSplitStatus()) != 2) {

@ -71,14 +71,14 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
return null; return null;
} }
public void splitRemove(IoCollectOrderBiz collectOrderBiz, IoCollectOrder collectOrder) { public void splitRemove(IoCollectOrderBiz collectOrderBiz, IoCollectOrder collectOrder, Long putWorkPlaceCode) {
//1.按照先进先出原则查询拆零表获取拆零表ID //1.按照先进先出原则查询拆零表获取拆零表ID
List<IoSplitCodeEntity> ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); List<IoSplitCodeEntity> ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode);
//2.如果拆零表为空,则自动从预出库队列中获拉取数据 //2.如果拆零表为空,则自动从预出库队列中获拉取数据
if (CollUtil.isEmpty(ioSplitCodeEntities)) { if (CollUtil.isEmpty(ioSplitCodeEntities)) {
addFifoCode(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), IntUtil.value(collectOrderBiz.getCount())); addFifoCode(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), IntUtil.value(collectOrderBiz.getCount()));
ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode);
} }
//3.如果拆零表不为空,则开始扣除数量 //3.如果拆零表不为空,则开始扣除数量
int count = 0; int count = 0;
@ -126,7 +126,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
// throw new JsonException(500, "提交失败,工位库存数量不足!"); // throw new JsonException(500, "提交失败,工位库存数量不足!");
} else { } else {
//再次执行赋码 //再次执行赋码
ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode);
for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) { for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) {
count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount; count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount;
collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder() collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder()
@ -314,7 +314,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
} }
//.如果拆零,拆零表扣除 //.如果拆零,拆零表扣除
if (remainder > 0) { if (remainder > 0) {
splitRemove(collectOrderBiz, collectOrder); splitRemove(collectOrderBiz, collectOrder, putWorkPlaceCode);
} }
} }
ArrayList<IoCollectOrderBizBackup> ioCollectOrderBizBackups = new ArrayList<>(); ArrayList<IoCollectOrderBizBackup> ioCollectOrderBizBackups = new ArrayList<>();
@ -368,7 +368,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
.sum(); .sum();
collectOrderBiz.setTempWorkPlaceCount(total); collectOrderBiz.setTempWorkPlaceCount(total);
List<IoSplitCodeEntity> splitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId() List<IoSplitCodeEntity> splitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId()
, collectOrderBiz.getBatchNo(), sysWorkplacePutRel.getWorkPlaceCode()); , collectOrderBiz.getBatchNo(), putWorkPlaceCode);
int splitTotal = splitCodeEntities.stream() int splitTotal = splitCodeEntities.stream()
.mapToInt(IoSplitCodeEntity::getRemainCount) .mapToInt(IoSplitCodeEntity::getRemainCount)
.sum(); .sum();
@ -422,16 +422,9 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
for (IoSplitFifoCodeEntity splitFifoCodeEntity : splitFifoCodeEntities) { for (IoSplitFifoCodeEntity splitFifoCodeEntity : splitFifoCodeEntities) {
IoSplitCodeEntity splitCodeEntity = new IoSplitCodeEntity(); IoSplitCodeEntity splitCodeEntity = new IoSplitCodeEntity();
BeanUtils.copyProperties(splitFifoCodeEntity, splitCodeEntity); BeanUtils.copyProperties(splitFifoCodeEntity, splitCodeEntity);
if (IntUtil.value(splitFifoCodeEntity.getFifoSplit()) == 1) {
//拆零
count = IntUtil.value(splitFifoCodeEntity.getTotalCount()) + count;
splitCodeEntity.setRemainCount(splitCodeEntity.getTotalCount());
} else {
//整取
count = IntUtil.value(splitFifoCodeEntity.getScanCount()) + count;
splitCodeEntity.setRemainCount(splitCodeEntity.getScanCount());
}
count = IntUtil.value(splitFifoCodeEntity.getTotalCount()) + count;
splitCodeEntity.setRemainCount(splitCodeEntity.getTotalCount());
splitCodeEntity.setStatus(1); splitCodeEntity.setStatus(1);
splitCodeEntity.setFifoSplit(splitFifoCodeEntity.getFifoSplit()); splitCodeEntity.setFifoSplit(splitFifoCodeEntity.getFifoSplit());

Loading…
Cancel
Save