|
@@ -570,23 +570,19 @@ public class AwaitSendController {
|
|
|
return rj;
|
|
|
}
|
|
|
salesOrder.setSalesDeliver(2);
|
|
|
- Integer flag = salesOrderService.updateDeliver(salesOrder);
|
|
|
- if(flag < 1){
|
|
|
- rj.setResultMsg("出货失败,请检查该物流单号("+postNum+")和订单状态,产品库存是否充足。");
|
|
|
- return rj;
|
|
|
+ if(updateInventory(salesOrder.getSalesId())){
|
|
|
+ Integer flag = salesOrderService.updateDeliver(salesOrder);
|
|
|
+ if(flag < 1){
|
|
|
+ rj.setResultMsg("出货失败,请检查该物流单号("+postNum+")和订单状态,产品库存是否充足。");
|
|
|
+ return rj;
|
|
|
+ }
|
|
|
}
|
|
|
//查询出库的产品项
|
|
|
List<SalesOrderItem> itemList = salesOrderService.selectSalesOrderItemList(salesOrder.getSalesId());
|
|
|
- //修改库存信息
|
|
|
- if(updateInventory(salesOrder.getSalesId())){
|
|
|
- rj = ResponseJson.getSUCCESS();
|
|
|
- rj.setResultMsg("物流单号("+ postNum +")出库成功。");
|
|
|
- rj.addResponseKeyValue("itemList",itemList);
|
|
|
- return rj;
|
|
|
- }else{
|
|
|
- rj.setResultMsg("出货失败,请检查该物流单号("+postNum+")和订单状态是否为已发货,产品库存是否充足。");
|
|
|
- return rj;
|
|
|
- }
|
|
|
+ rj = ResponseJson.getSUCCESS();
|
|
|
+ rj.setResultMsg("物流单号("+ postNum +")出库成功。");
|
|
|
+ rj.addResponseKeyValue("itemList",itemList);
|
|
|
+ return rj;
|
|
|
}
|
|
|
|
|
|
public boolean updateInventory(Integer salesId){
|
|
@@ -596,23 +592,27 @@ public class AwaitSendController {
|
|
|
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
for(SalesOrderItem item : listOrderitem){
|
|
|
InventoryInfo info = inventoryService.getByInventoryByBar(item.getItemColorBar());
|
|
|
- if(info.getInventoryDefectiveProductNum() >= item.getItemNum()){
|
|
|
- info.setInventoryDefectiveProductNum(info.getInventoryDefectiveProductNum() - item.getItemNum());
|
|
|
- info.setInventoryRecentRecord(sdf.format(new Date())+"出库:"+item.getItemNum()+"件");
|
|
|
- inventoryService.updateById(info);
|
|
|
- //添加日志
|
|
|
- InventoryLog inventoryLog = new InventoryLog();
|
|
|
- inventoryLog.setLogProductName(info.getInventoryProductName());
|
|
|
- inventoryLog.setLogProductBar(info.getInventoryProductBar());
|
|
|
- inventoryLog.setLogRemainingNum(item.getItemNum());
|
|
|
- inventoryLog.setLogType(2);
|
|
|
- inventoryLog.setLogOperationType(2);
|
|
|
- inventoryLog.setLogDesc(sdf.format(new Date())+"手动出库:"+item.getItemNum()+"件");
|
|
|
- inventoryLog.setLogQualityType(1);
|
|
|
- inventoryLogService.insert(inventoryLog);
|
|
|
- }else{
|
|
|
- return false;
|
|
|
+ if(info != null){
|
|
|
+ if(info.getInventoryGoodProductNum() >= item.getItemNum()){
|
|
|
+ info.setInventoryGoodProductNum(info.getInventoryGoodProductNum() - item.getItemNum());
|
|
|
+ info.setInventoryRecentRecord(sdf.format(new Date())+"出库:"+item.getItemNum()+"件");
|
|
|
+ inventoryService.updateById(info);
|
|
|
+ //添加日志
|
|
|
+ InventoryLog inventoryLog = new InventoryLog();
|
|
|
+ inventoryLog.setLogProductName(info.getInventoryProductName());
|
|
|
+ inventoryLog.setLogProductBar(info.getInventoryProductBar());
|
|
|
+ inventoryLog.setLogRemainingNum(item.getItemNum());
|
|
|
+ inventoryLog.setLogType(2);
|
|
|
+ inventoryLog.setLogOperationType(2);
|
|
|
+ inventoryLog.setLogDesc(sdf.format(new Date())+"手动出库:"+item.getItemNum()+"件");
|
|
|
+ inventoryLog.setLogQualityType(1);
|
|
|
+ inventoryLog.setLogWarehouseId(1);
|
|
|
+ inventoryLogService.insert(inventoryLog);
|
|
|
+ }else{
|
|
|
+ return false;
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
return true;
|
|
|
}
|