处方按照队列取货

dev_unify
yewj 7 months ago
parent 6add29cf82
commit 62dec41a67

@ -422,7 +422,7 @@ public class IoCollectOrderController extends BaseController {
/** /**
* *
*/ */
splitCodeService.confirmBizAutiTagCode(confirmOrderBiz); splitCodeService.confirmBizAutiTagCode(confirmOrderBiz, confirmOrderBiz.getQueueCode());
return ResultVOUtils.success("确认成功!"); return ResultVOUtils.success("确认成功!");
} }

@ -1597,6 +1597,7 @@ public class IoCodeTempController extends BaseController {
codeEnttity.setPreInSpaceCode(addOrderRequest.getCheckPreInSpaceCode()); codeEnttity.setPreInSpaceCode(addOrderRequest.getCheckPreInSpaceCode());
codeEnttity.setRelId(addOrderRequest.getRelId()); codeEnttity.setRelId(addOrderRequest.getRelId());
codeEnttity.setFifoSplit(addOrderRequest.getFifoSplit()); codeEnttity.setFifoSplit(addOrderRequest.getFifoSplit());
codeEnttity.setPrice(udiRelevanceResponse.getPrice());
codeEnttity.setProductType(2); codeEnttity.setProductType(2);
codeEnttity.setCount(1); codeEnttity.setCount(1);
RelCodeDetailResponse codeRelEntity = relCodeDetailService.findByCode(code); RelCodeDetailResponse codeRelEntity = relCodeDetailService.findByCode(code);
@ -1721,13 +1722,13 @@ public class IoCodeTempController extends BaseController {
} }
} else { } else {
//判断产品是否已经绑定其他槽位 //判断产品是否已经绑定其他槽位
SysWorkplaceQueue workplaceQueue1 = sysWorkplaceQueueService.getOne(new LambdaQueryWrapper<SysWorkplaceQueue>().eq(SysWorkplaceQueue::getRelId, udiRelevanceResponse.getId())); // SysWorkplaceQueue workplaceQueue1 = sysWorkplaceQueueService.getOne(new LambdaQueryWrapper<SysWorkplaceQueue>().eq(SysWorkplaceQueue::getRelId, udiRelevanceResponse.getId()));
if (workplaceQueue1 != null) { // if (workplaceQueue1 != null) {
if (!orderEntity.getWorkPlaceQueueCode().equals(workplaceQueue1.getCode())) { // if (!orderEntity.getWorkPlaceQueueCode().equals(workplaceQueue1.getCode())) {
// orderService.deleteByBillNo(orderId); //// orderService.deleteByBillNo(orderId);
return ResultVOUtils.error(507, "当前产品已绑定在" + workplaceQueue1.getCode() + "取货槽"); // return ResultVOUtils.error(507, "当前产品已绑定在" + workplaceQueue1.getCode() + "取货槽");
} // }
} // }
} }
} else { } else {
return ResultVOUtils.error(500, "取货槽位不存在!"); return ResultVOUtils.error(500, "取货槽位不存在!");
@ -1765,7 +1766,6 @@ public class IoCodeTempController extends BaseController {
} }
} }
BaseResponse baseResponse = checkDrugRelId(codeEnttity, unitFk); BaseResponse baseResponse = checkDrugRelId(codeEnttity, unitFk);
if (baseResponse != null) { if (baseResponse != null) {
deleteEmptyBillNo(orderEntity); deleteEmptyBillNo(orderEntity);

@ -142,7 +142,8 @@ public class IoSplitController extends BaseController {
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()); collectOrder.setWorkPlaceCode(addTagCodeReqeust.getWorkPlaceCode());
splitCodeService.preAutoTagCode(collectOrder); //todo 后面改
splitCodeService.preAutoTagCode(collectOrder,null);
collectOrderService.updateById(collectOrder); collectOrderService.updateById(collectOrder);
return ResultVOUtils.success("后台已开始赋码,请稍后刷新查看"); return ResultVOUtils.success("后台已开始赋码,请稍后刷新查看");
} else { } else {

@ -301,6 +301,7 @@ public class IoCollectOrderBiz implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private Integer addScanActCount; private Integer addScanActCount;
@TableField(exist = false)
private String queueCode;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }

@ -154,6 +154,9 @@ public class CollectOrderRequest extends ListPageRequest {
*/ */
private Long bizId; private Long bizId;
private String queueCode;
private List<Integer> uploadStatusList; private List<Integer> uploadStatusList;

@ -863,7 +863,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
ioCollectOrderBizBackupService.saveBatch(ioCollectOrderBizBackups); ioCollectOrderBizBackupService.saveBatch(ioCollectOrderBizBackups);
} else { } else {
splitCodeService.finishAutoTagCode(collectOrder, isAuto); splitCodeService.finishAutoTagCode(collectOrder, isAuto, collectOrderRequest.getQueueCode());
} }
//插入备用表 //插入备用表

@ -213,7 +213,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
IoCollectOrderBizBackupService ioCollectOrderBizBackupService; IoCollectOrderBizBackupService ioCollectOrderBizBackupService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void finishAutoTagCode(IoCollectOrder collectOrder, Boolean isAuto) { public void finishAutoTagCode(IoCollectOrder collectOrder, Boolean isAuto, String queueCode) {
SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType()); SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType());
Long putWorkPlaceCode = null; Long putWorkPlaceCode = null;
@ -334,7 +334,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
int remainder = collectOrderBiz.getUnTagCount() % IntUtil.value(udiRelevanceResponse.getBhxjsl()); int remainder = collectOrderBiz.getUnTagCount() % IntUtil.value(udiRelevanceResponse.getBhxjsl());
//2.如果整盒,从工位队列扣除 默认最后一个追溯码拆零 //2.如果整盒,从工位队列扣除 默认最后一个追溯码拆零
if (quotient > 0) { if (quotient > 0) {
List<IoSplitFifoCodeEntity> ioSplitFifoCodeEntities = splitFifoCodeService.findByRelId(putWorkPlaceCode, collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo()); List<IoSplitFifoCodeEntity> ioSplitFifoCodeEntities = splitFifoCodeService.findByRelId(putWorkPlaceCode, collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(),queueCode );
if (ioSplitFifoCodeEntities.size() < quotient) { if (ioSplitFifoCodeEntities.size() < quotient) {
if (isAuto) if (isAuto)
throw new JsonException(500, "提交失败,工位库存数量不足!"); throw new JsonException(500, "提交失败,工位库存数量不足!");
@ -388,7 +388,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
IoCollectOrderService collectOrderService; IoCollectOrderService collectOrderService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void confirmBizAutiTagCode(IoCollectOrderBiz collectOrderBiz) { public void confirmBizAutiTagCode(IoCollectOrderBiz collectOrderBiz, String queueCode) {
IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderBiz.getOrderIdFk()); IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderBiz.getOrderIdFk());
SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType()); SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType());
@ -410,7 +410,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
int remainder = collectOrderBiz.getUnTagCount() % IntUtil.value(udiRelevanceResponse.getBhxjsl()); int remainder = collectOrderBiz.getUnTagCount() % IntUtil.value(udiRelevanceResponse.getBhxjsl());
//2.如果整盒,从工位队列扣除 默认最后一个追溯码拆零 //2.如果整盒,从工位队列扣除 默认最后一个追溯码拆零
if (quotient > 0) { if (quotient > 0) {
List<IoSplitFifoCodeEntity> ioSplitFifoCodeEntities = splitFifoCodeService.findByRelId(putWorkPlaceCode, collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo()); List<IoSplitFifoCodeEntity> ioSplitFifoCodeEntities = splitFifoCodeService.findByRelId(putWorkPlaceCode, collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), queueCode);
if (ioSplitFifoCodeEntities.size() < quotient) { if (ioSplitFifoCodeEntities.size() < quotient) {
throw new JsonException(500, "确认失败,工位库存数量不足!"); throw new JsonException(500, "确认失败,工位库存数量不足!");
} }
@ -516,7 +516,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
* *
* @param collectOrder * @param collectOrder
*/ */
public void preAutoTagCode(IoCollectOrder collectOrder) { public void preAutoTagCode(IoCollectOrder collectOrder, String queueCode) {
Long putWorkPlaceCode = null; Long putWorkPlaceCode = null;
//获取上货工位 //获取上货工位
SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType()); SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType());
@ -527,7 +527,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) { for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) {
List<IoSplitFifoCodeEntity> splitFifoCodeEntities = List<IoSplitFifoCodeEntity> splitFifoCodeEntities =
splitFifoCodeService.findByRelId(putWorkPlaceCode, splitFifoCodeService.findByRelId(putWorkPlaceCode,
collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo()); collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), queueCode);
int total = splitFifoCodeEntities.stream() int total = splitFifoCodeEntities.stream()
.mapToInt(IoSplitFifoCodeEntity::getTotalCount) .mapToInt(IoSplitFifoCodeEntity::getTotalCount)
.sum(); .sum();

@ -50,12 +50,13 @@ public class IoSplitFifoCodeService extends ServiceImpl<IoSplitFifoCodeMapper, I
@Resource @Resource
IoCollectOrderBizMapper collectOrderBizMapper; IoCollectOrderBizMapper collectOrderBizMapper;
public List<IoSplitFifoCodeEntity> findByRelId(Long workPlaceCode, Long relId, String batchNo) { public List<IoSplitFifoCodeEntity> findByRelId(Long workPlaceCode, Long relId, String batchNo, String queueCode) {
List<IoSplitFifoCodeEntity> splitFifoCodeEntities = List<IoSplitFifoCodeEntity> splitFifoCodeEntities =
list(new LambdaQueryWrapper<IoSplitFifoCodeEntity>() list(new LambdaQueryWrapper<IoSplitFifoCodeEntity>()
.eq(IoSplitFifoCodeEntity::getWorkPlaceCode, workPlaceCode) .eq(IoSplitFifoCodeEntity::getWorkPlaceCode, workPlaceCode)
.eq(IoSplitFifoCodeEntity::getRelId, relId) .eq(IoSplitFifoCodeEntity::getRelId, relId)
.eq(StrUtil.isNotEmpty(batchNo), IoSplitFifoCodeEntity::getBatchNo, batchNo) .eq(StrUtil.isNotEmpty(batchNo), IoSplitFifoCodeEntity::getBatchNo, batchNo)
.eq(StrUtil.isNotEmpty(queueCode), IoSplitFifoCodeEntity::getWorkPlaceQueueCode, queueCode)
.orderByAsc(IoSplitFifoCodeEntity::getInBactchNo) .orderByAsc(IoSplitFifoCodeEntity::getInBactchNo)
); );

Loading…
Cancel
Save