|
|
@ -564,6 +564,37 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor |
|
|
|
processWithShippingDeviceId(withShippingDeviceIdList); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 检查所有详情记录的已收货数与本次出货数对比,确定最终状态
|
|
|
|
boolean allReceived = true; |
|
|
|
boolean partiallyReceived = false; |
|
|
|
|
|
|
|
for (SysSalesShippingInformDetail detail : shippingInformDetailList) { |
|
|
|
if (detail.getHasReceivingNum() == 0) { |
|
|
|
allReceived = false; |
|
|
|
} else if (detail.getHasReceivingNum() < detail.getThisShippingNum()) { |
|
|
|
allReceived = false; |
|
|
|
partiallyReceived = true; |
|
|
|
} |
|
|
|
} |
|
|
|
if (allReceived) { |
|
|
|
// 已收货数等于本次出货数
|
|
|
|
sysSalesShippingInform.setWarehouseOutStatus("14");//全部收货
|
|
|
|
} else if (partiallyReceived) { |
|
|
|
// 已收货数大于0小于本次出货数
|
|
|
|
sysSalesShippingInform.setWarehouseOutStatus("13");//部分收货
|
|
|
|
} else { |
|
|
|
// 已收货数等于0
|
|
|
|
sysSalesShippingInform.setWarehouseOutStatus("9");//待收货
|
|
|
|
} |
|
|
|
|
|
|
|
//更新销售出货通知
|
|
|
|
int updateShippingInformResult = sysSalesShippingInformMapper.updateSysSalesShippingInformByOutOrderCode(sysSalesShippingInform); |
|
|
|
if (updateShippingInformResult <= 0){ |
|
|
|
throw new BusinessException("更新销售出货通知单数据失败"); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//更新收货维护设备出库单数据
|
|
|
|
AftersalesOutOrder aftersalesOutOrder = new AftersalesOutOrder(); |
|
|
|
aftersalesOutOrder.setOutOrderCode(sysSalesShippingInform.getOutOrderCode()); |
|
|
|