|
|
|
@ -159,33 +159,39 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
|
|
|
|
|
//2.如果拆零表为空,则自动从预出库队列中获拉取数据
|
|
|
|
|
if (CollUtil.isEmpty(ioSplitCodeEntities)) {
|
|
|
|
|
addFifoCode(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), IntUtil.value(collectOrderBiz.getCount()));
|
|
|
|
|
}
|
|
|
|
|
ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode());
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//3.如果拆零表不为空,则开始扣除数量
|
|
|
|
|
int count = 0;
|
|
|
|
|
int unCount = 0; //剩余未扣减数量
|
|
|
|
|
unCount = IntUtil.value(collectOrderBiz.getCount());
|
|
|
|
|
unCount = IntUtil.value(collectOrderBiz.getUnTagCount());
|
|
|
|
|
for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) {
|
|
|
|
|
count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount;
|
|
|
|
|
collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder()
|
|
|
|
|
.codeIdFk(ioSplitCodeEntity.getId())
|
|
|
|
|
.udiCode(ioSplitCodeEntity.getCode())
|
|
|
|
|
.orderIdFk(collectOrder.getBillNo())
|
|
|
|
|
.batchNo(collectOrderBiz.getBatchNo())
|
|
|
|
|
.batchNo(ioSplitCodeEntity.getBatchNo())
|
|
|
|
|
.productDate(ioSplitCodeEntity.getProduceDate())
|
|
|
|
|
.expireDate(ioSplitCodeEntity.getExpireDate())
|
|
|
|
|
.serialNo(ioSplitCodeEntity.getExpireDate())
|
|
|
|
|
.relId(collectOrderBiz.getRelId())
|
|
|
|
|
.createTime(new Date())
|
|
|
|
|
.updateTime(new Date())
|
|
|
|
|
.build());
|
|
|
|
|
if (count > 0) {
|
|
|
|
|
ioSplitCodeEntity.setRemainCount(count);
|
|
|
|
|
unCount = 0;
|
|
|
|
|
splitCodeMapper.updateById(ioSplitCodeEntity);
|
|
|
|
|
break;
|
|
|
|
|
} else if (count == 0) {
|
|
|
|
|
ioSplitCodeEntity.setRemainCount(0);
|
|
|
|
|
unCount = 0;
|
|
|
|
|
} else {
|
|
|
|
|
ioSplitCodeEntity.setRemainCount(0);
|
|
|
|
|
unCount = -count;
|
|
|
|
|
}
|
|
|
|
|
splitCodeMapper.updateById(ioSplitCodeEntity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (unCount > 0) {
|
|
|
|
@ -235,7 +241,6 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 从预出库队列里面取出数据,添加至拆零表
|
|
|
|
|
*/
|
|
|
|
@ -254,6 +259,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
|
|
|
|
|
count = IntUtil.value(splitFifoCodeEntity.getTotalCount()) + count;
|
|
|
|
|
IoSplitCodeEntity splitCodeEntity = new IoSplitCodeEntity();
|
|
|
|
|
BeanUtils.copyProperties(splitFifoCodeEntity, splitCodeEntity);
|
|
|
|
|
splitCodeEntity.setRemainCount(splitCodeEntity.getTotalCount());
|
|
|
|
|
splitCodeEntity.setStatus(1);
|
|
|
|
|
splitCodeEntity.setId(null);
|
|
|
|
|
addSplitCodeEntities.add(splitCodeEntity);
|
|
|
|
|