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

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.setBusType(collectOrderRequest.getBusType());
//根据更改用户查询单据 防止两个用户分配同一单据
request.setUpdateUser(getUserId());
// request.setUpdateUser(getUserId());
request.setTagStatus(2);
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
if (CollUtil.isNotEmpty(orderResponses))

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

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

Loading…
Cancel
Save