|
|
@@ -139,14 +139,14 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
throw new ManagerException("调拨申请接收仓库不存在"); |
|
|
|
} |
|
|
|
int updateCount = 0; |
|
|
|
long checkCount = 0; |
|
|
|
int checkCount = 0; |
|
|
|
for (InvwTransferApplyDetails details : applyDetails) { |
|
|
|
InvwTransferApplyDetailsModel detail = new InvwTransferApplyDetailsModel(); |
|
|
|
detail.setStartId(details.getStartId()); |
|
|
|
detail.setEndId(details.getEndId()); |
|
|
|
// 校验库存 |
|
|
|
checkCount += toCheck(detail, transferApply.getInventoryType(), transferApply.getSendStoreCode()); |
|
|
|
//修改卡签库存 |
|
|
|
// 修改卡签库存 |
|
|
|
if(transferApply.getInventoryType() == InventoryType.CARD){ |
|
|
|
updateCount += cardDetailsRepo.updateStoreCodeByStoreCode(transferApply.getReceiveStoreCode(), |
|
|
|
receiveWarehouse.getAgencyId(), receiveWarehouse.getChannelId(), |
|
|
@@ -159,7 +159,7 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(updateCount!=checkCount){ |
|
|
|
if (updateCount != checkCount) { |
|
|
|
throw new ManagerException("库存更新失败"); |
|
|
|
} |
|
|
|
|
|
|
@@ -212,9 +212,6 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
transferApply.setApplyStatus(InvApplyStatus.NEW); |
|
|
|
transferApply.setInsertTime(now); |
|
|
|
|
|
|
|
//设置申请单信息 |
|
|
|
setupTransfer(transferApply, transferApplyModel); |
|
|
|
|
|
|
|
//查询发货仓库信息 |
|
|
|
InvwWarehouse sendAgency = warehouseRepo.findByCode(transferApplyModel.getSendStoreCode()); |
|
|
|
if(sendAgency == null) { |
|
|
@@ -229,13 +226,18 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
//处理仓库信息 |
|
|
|
setupTransferApplyDetails(transferApply, transferApplyModel); |
|
|
|
|
|
|
|
//计算申请总数 |
|
|
|
int applyCount = 0; |
|
|
|
//添加调拨申请详情 |
|
|
|
for (InvwTransferApplyDetailsModel detailsModel : detailsModels) { |
|
|
|
//校验库存 |
|
|
|
toCheck(detailsModel, transferApplyModel.getInventoryType(), transferApplyModel.getSendStoreCode()); |
|
|
|
applyCount += toCheck(detailsModel, transferApplyModel.getInventoryType(), transferApplyModel.getSendStoreCode()); |
|
|
|
//添加调拨明细 |
|
|
|
addTransferDetail(transferApplyDetails, applyNo, detailsModel, now); |
|
|
|
} |
|
|
|
|
|
|
|
//设置申请单信息 |
|
|
|
setupTransfer(transferApply, transferApplyModel,applyCount); |
|
|
|
} |
|
|
|
|
|
|
|
//处理修改 |
|
|
@@ -247,8 +249,7 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
} |
|
|
|
|
|
|
|
transferApply.setOpenId(findOpenIdByToken(editReq.getAccessToken())); |
|
|
|
//设置申请单信息 |
|
|
|
setupTransfer(transferApply, transferApplyModel); |
|
|
|
|
|
|
|
//处理仓库信息 |
|
|
|
setupTransferApplyDetails(transferApply, transferApplyModel); |
|
|
|
|
|
|
@@ -258,23 +259,27 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
transferDetailsRepo.deleteAll(transferApplyDetails); |
|
|
|
transferApplyDetails.clear(); |
|
|
|
|
|
|
|
//计算申请总数 |
|
|
|
int applyCount = 0; |
|
|
|
//处理新明细单 |
|
|
|
for (InvwTransferApplyDetailsModel detailsModel : transferModelDetails) { |
|
|
|
//校验库存 |
|
|
|
toCheck(detailsModel, transferApplyModel.getInventoryType(), transferApplyModel.getSendStoreCode()); |
|
|
|
applyCount += toCheck(detailsModel, transferApplyModel.getInventoryType(), transferApplyModel.getSendStoreCode()); |
|
|
|
//添加调拨明细 |
|
|
|
addTransferDetail(transferApplyDetails, transferApply.getApplyNo(), detailsModel, LocalDateTime.now()); |
|
|
|
} |
|
|
|
//设置申请单信息 |
|
|
|
setupTransfer(transferApply, transferApplyModel,applyCount); |
|
|
|
} |
|
|
|
|
|
|
|
//设置调拨单 |
|
|
|
private void setupTransfer(InvwTransferApply transferApply, InvwTransferApplyCommModel transferApplyModel) { |
|
|
|
private void setupTransfer(InvwTransferApply transferApply, InvwTransferApplyCommModel transferApplyModel,int applyCount) { |
|
|
|
transferApply.setSendStoreCode(transferApplyModel.getSendStoreCode()); |
|
|
|
transferApply.setReceiveStoreCode(transferApplyModel.getReceiveStoreCode()); |
|
|
|
transferApply.setInventoryType(transferApplyModel.getInventoryType()); |
|
|
|
transferApply.setBrand(transferApplyModel.getBrand()); |
|
|
|
transferApply.setVersion(transferApplyModel.getVersion()); |
|
|
|
transferApply.setApplyCount(transferApplyModel.getApplyCount()); |
|
|
|
transferApply.setApplyCount(applyCount); |
|
|
|
transferApply.setFilePath(transferApplyModel.getFilePath()); |
|
|
|
transferApply.setOwnType(transferApplyModel.getOwnType()); |
|
|
|
} |
|
|
@@ -321,7 +326,7 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
} |
|
|
|
|
|
|
|
//校验库存 |
|
|
|
public long toCheck(InvwTransferApplyDetailsModel details, InventoryType inventoryType, String sendStoreCode) throws ManagerException { |
|
|
|
public int toCheck(InvwTransferApplyDetailsModel details, InventoryType inventoryType, String sendStoreCode) throws ManagerException { |
|
|
|
if (details == null) { |
|
|
|
throw new ManagerException("调拨申请失败,请检查调拨明细是否正确"); |
|
|
|
} |
|
|
@@ -352,7 +357,7 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements |
|
|
|
throw new ManagerException("库存校验失败,该仓库[" + start + "-" + end + "]号段在库设备量为:" + count); |
|
|
|
} |
|
|
|
|
|
|
|
return total.longValueExact(); // 使用 longValueExact 确保可以安全转换为 long |
|
|
|
return total.intValue(); |
|
|
|
} |
|
|
|
|
|
|
|
public static void main(String[] args) { |