Browse Source

Merge remote-tracking branch 'origin/master'

master
赵雪冰 2 years ago
parent
commit
a8377754b4
  1. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainBaseVO.java
  2. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailBaseVO.java
  3. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainBaseVO.java
  4. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailBaseVO.java
  5. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java
  6. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailBaseVO.java
  7. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainBaseVO.java
  8. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainBaseVO.java
  9. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectRequest/vo/InspectRequestDetailBaseVO.java
  10. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectRequest/vo/InspectRequestMainBaseVO.java
  11. 16
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/InventorymoveJobMainController.java
  12. 21
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/vo/InventorymoveJobDetailUpdateReqVO.java
  13. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/vo/InventorymoveJobMainPageReqVO.java
  14. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveRecord/vo/InventorymoveRecordMainPageReqVO.java
  15. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveRequest/vo/InventorymoveRequestMainImportVO.java
  16. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/packageMassage/vo/PackageBaseVO.java
  17. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainBaseVO.java
  18. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRequest/vo/PurchasereceiptRequestDetailBaseVO.java
  19. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRequest/vo/PurchasereceiptRequestMainBaseVO.java
  20. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnJob/vo/PurchasereturnJobMainBaseVO.java
  21. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnRequest/vo/PurchasereturnRequestDetailBaseVO.java
  22. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnRequest/vo/PurchasereturnRequestMainBaseVO.java
  23. 13
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/putawayRequest/vo/PutawayRequestDetailBaseVO.java
  24. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/putawayRequest/vo/PutawayRequestMainBaseVO.java
  25. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countJob/CountJobMainDO.java
  26. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanDetailDO.java
  27. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanMainDO.java
  28. 13
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestDetailDO.java
  29. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java
  30. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestDetailDO.java
  31. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestMainDO.java
  32. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectJob/InspectJobMainDO.java
  33. 13
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectRequest/InspectRequestDetailDO.java
  34. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectRequest/InspectRequestMainDO.java
  35. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptJob/PurchasereceiptJobMainDO.java
  36. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptRequest/PurchasereceiptRequestDetailDO.java
  37. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptRequest/PurchasereceiptRequestMainDO.java
  38. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnJob/PurchasereturnJobMainDO.java
  39. 13
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnRequest/PurchasereturnRequestDetailDO.java
  40. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnRequest/PurchasereturnRequestMainDO.java
  41. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayJob/PutawayJobMainDO.java
  42. 14
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayRequest/PutawayRequestDetailDO.java
  43. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayRequest/PutawayRequestMainDO.java
  44. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/recordsetting/RecordsettingDO.java
  45. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/inventorymoveJob/InventorymoveJobMainMapper.java
  46. 19
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/inventorymoveRecord/InventorymoveRecordMainMapper.java
  47. 18
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/balance/BalanceServiceImpl.java
  48. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java
  49. 149
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRequest/CustomerreturnRequestMainServiceImpl.java
  50. 33
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customersettleRequest/CustomersettleRequestMainServiceImpl.java
  51. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverRequest/DeliverRequestMainServiceImpl.java
  52. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java
  53. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java
  54. 177
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveJob/InventorymoveJobMainServiceImpl.java
  55. 26
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRecord/InventorymoveRecordMainServiceImpl.java
  56. 234
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRequest/InventorymoveRequestMainServiceImpl.java
  57. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java
  58. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java
  59. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java
  60. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java
  61. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainBaseVO.java

@ -145,4 +145,7 @@ public class CountJobMainBaseVO {
@Schema(description = "出库库存状态范围") @Schema(description = "出库库存状态范围")
private String outInventoryStatuses; private String outInventoryStatuses;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailBaseVO.java

@ -1,7 +1,5 @@
package com.win.module.wms.controller.countPlan.vo; package com.win.module.wms.controller.countPlan.vo;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.module.wms.enums.DictTypeConstants;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@ -46,4 +44,7 @@ public class CountPlanDetailBaseVO {
@Schema(description = "最后更新者用户名") @Schema(description = "最后更新者用户名")
private String updater; private String updater;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainBaseVO.java

@ -92,4 +92,7 @@ public class CountPlanMainBaseVO {
@Schema(description = "是否可用") @Schema(description = "是否可用")
private String available; private String available;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailBaseVO.java

@ -81,4 +81,7 @@ public class CountRequestDetailBaseVO {
@Schema(description = "从器具号") @Schema(description = "从器具号")
private String containerNumber; private String containerNumber;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java

@ -93,4 +93,8 @@ public class CountRequestMainBaseVO {
@Schema(description = "生成盘点调整状态") @Schema(description = "生成盘点调整状态")
private String countAdjustStatus; private String countAdjustStatus;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailBaseVO.java

@ -99,4 +99,7 @@ public class CountadjustRequestDetailBaseVO {
@Schema(description = "物品代码") @Schema(description = "物品代码")
private String itemCode; private String itemCode;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainBaseVO.java

@ -83,4 +83,7 @@ public class CountadjustRequestMainBaseVO {
@NotNull(message = "直接生成记录不能为空") @NotNull(message = "直接生成记录不能为空")
private String directCreateRecord; private String directCreateRecord;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectJob/vo/InspectJobMainBaseVO.java

@ -183,4 +183,7 @@ public class InspectJobMainBaseVO {
@Schema(description = "出库库存状态范围") @Schema(description = "出库库存状态范围")
private String outInventoryStatuses; private String outInventoryStatuses;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectRequest/vo/InspectRequestDetailBaseVO.java

@ -68,4 +68,7 @@ public class InspectRequestDetailBaseVO {
@Schema(description = "计量单位") @Schema(description = "计量单位")
private String uom; private String uom;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inspectRequest/vo/InspectRequestMainBaseVO.java

@ -127,4 +127,7 @@ public class InspectRequestMainBaseVO {
@Schema(description = "直接生成记录", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "直接生成记录", requiredMode = Schema.RequiredMode.REQUIRED)
private String directCreateRecord; private String directCreateRecord;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

16
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/InventorymoveJobMainController.java

@ -5,9 +5,13 @@ import com.win.framework.dict.core.util.DictFrameworkUtils;
import com.win.module.system.api.dept.DeptApi; import com.win.module.system.api.dept.DeptApi;
import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO; import com.win.module.system.api.user.dto.AdminUserRespDTO;
import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainRespVO;
import com.win.module.wms.controller.inventorymoveRequest.vo.InventorymoveRequestMainExcelVO; import com.win.module.wms.controller.inventorymoveRequest.vo.InventorymoveRequestMainExcelVO;
import com.win.module.wms.convert.deliverJob.DeliverJobMainConvert;
import com.win.module.wms.convert.inventorymoveJob.InventorymoveJobDetailConvert; import com.win.module.wms.convert.inventorymoveJob.InventorymoveJobDetailConvert;
import com.win.module.wms.convert.inventorymoveRequest.InventorymoveRequestMainConvert; import com.win.module.wms.convert.inventorymoveRequest.InventorymoveRequestMainConvert;
import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobDetailDO;
import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobMainDO;
import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobDetailDO; import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobDetailDO;
import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestDetailDO; import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestDetailDO;
import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestMainDO; import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestMainDO;
@ -196,11 +200,13 @@ public class InventorymoveJobMainController {
if(result==null) { if(result==null) {
return success(result); return success(result);
}; };
InventorymoveJobDetailExportReqVO exportReqVO = new InventorymoveJobDetailExportReqVO(); // InventorymoveJobDetailExportReqVO exportReqVO = new InventorymoveJobDetailExportReqVO();
exportReqVO.setMasterId(result.getId()); // exportReqVO.setMasterId(result.getId());
List<InventorymoveJobDetailDO> inventorymoveJobDetailList = inventorymoveJobDetailService.getInventorymoveJobDetailList(exportReqVO); // List<InventorymoveJobDetailDO> inventorymoveJobDetailList = inventorymoveJobDetailService.getInventorymoveJobDetailList(exportReqVO);
List<InventorymoveJobDetailExcelVO> inventorymoveJobDetailExcelVOS = InventorymoveJobDetailConvert.INSTANCE.convertList02(inventorymoveJobDetailList); // List<InventorymoveJobDetailExcelVO> inventorymoveJobDetailExcelVOS = InventorymoveJobDetailConvert.INSTANCE.convertList02(inventorymoveJobDetailList);
result.setSubList(inventorymoveJobDetailExcelVOS); // result.setSubList(inventorymoveJobDetailExcelVOS);
List<InventorymoveJobDetailDO> subList = inventorymoveJobDetailService.selectList(id);
result.setSubList(subList);
return success(result); return success(result);
} }

21
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/vo/InventorymoveJobDetailUpdateReqVO.java

@ -3,6 +3,7 @@ package com.win.module.wms.controller.inventorymoveJob.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.*;
import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -11,6 +12,22 @@ import java.util.Map;
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class InventorymoveJobDetailUpdateReqVO extends InventorymoveJobDetailBaseVO { public class InventorymoveJobDetailUpdateReqVO extends InventorymoveJobDetailBaseVO {
@Schema(description = "子表记录数据")
private List<Map<String,String>> recordList; @Schema(description = "实际收货数量")
private BigDecimal handleQty;
@Schema(description = "到包装")
private String toPackingNumber;
@Schema(description = "到器具")
private String toContainerNumber;
@Schema(description = "到批次")
private String toBatch;
@Schema(description = "到库存状态")
private String toInventoryStatus;
@Schema(description = "到库位")
private String toLocationCode;
} }

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveJob/vo/InventorymoveJobMainPageReqVO.java

@ -136,4 +136,9 @@ public class InventorymoveJobMainPageReqVO extends PageParam {
@Schema(description = "允许修改箱码") @Schema(description = "允许修改箱码")
private String allowModifyPackingNumber; private String allowModifyPackingNumber;
@Schema(description = "从库存状态")
private String fromInventoryStatus;
@Schema(description = "到库存状态")
private String toInventoryStatus;
} }

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveRecord/vo/InventorymoveRecordMainPageReqVO.java

@ -95,4 +95,9 @@ public class InventorymoveRecordMainPageReqVO extends PageParam {
@Schema(description = "主表id") @Schema(description = "主表id")
private String masterId; private String masterId;
@Schema(description = "从库存状态")
private String fromInventoryStatus;
@Schema(description = "到库存状态")
private String toInventoryStatus;
} }

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/inventorymoveRequest/vo/InventorymoveRequestMainImportVO.java

@ -46,6 +46,10 @@ public class InventorymoveRequestMainImportVO {
@DictFormat(DictTypeConstants.INVENTORY_STATUS) @DictFormat(DictTypeConstants.INVENTORY_STATUS)
private String fromInventoryStatus; private String fromInventoryStatus;
@ExcelProperty(value = "到库存状态", converter = DictConvert.class)
@DictFormat(DictTypeConstants.INVENTORY_STATUS)
private String toInventoryStatus;
@ExcelProperty("从库位代码") @ExcelProperty("从库位代码")
private String fromLocationCode; private String fromLocationCode;

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/packageMassage/vo/PackageBaseVO.java

@ -29,7 +29,6 @@ public class PackageBaseVO {
private String itemCode; private String itemCode;
@Schema(description = "物品名称", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "物品名称", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "物品名称不能为空")
private String itemName; private String itemName;
@Schema(description = "物品描述1") @Schema(description = "物品描述1")

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainBaseVO.java

@ -1,7 +1,5 @@
package com.win.module.wms.controller.purchasereceiptJob.vo; package com.win.module.wms.controller.purchasereceiptJob.vo;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@ -171,4 +169,7 @@ public class PurchasereceiptJobMainBaseVO {
@Schema(description = "出库库存状态范围") @Schema(description = "出库库存状态范围")
private String outInventoryStatuses; private String outInventoryStatuses;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRequest/vo/PurchasereceiptRequestDetailBaseVO.java

@ -129,4 +129,7 @@ public class PurchasereceiptRequestDetailBaseVO {
@Schema(description = "创建者用户名") @Schema(description = "创建者用户名")
private String creator; private String creator;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRequest/vo/PurchasereceiptRequestMainBaseVO.java

@ -111,4 +111,7 @@ public class PurchasereceiptRequestMainBaseVO {
@Schema(description = "车牌号") @Schema(description = "车牌号")
private String vehiclePlateNumber; private String vehiclePlateNumber;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnJob/vo/PurchasereturnJobMainBaseVO.java

@ -175,4 +175,7 @@ public class PurchasereturnJobMainBaseVO {
@Schema(description = "出库库存状态范围") @Schema(description = "出库库存状态范围")
private String outInventoryStatuses; private String outInventoryStatuses;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnRequest/vo/PurchasereturnRequestDetailBaseVO.java

@ -1,12 +1,13 @@
package com.win.module.wms.controller.purchasereturnRequest.vo; package com.win.module.wms.controller.purchasereturnRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/** /**
@ -102,4 +103,7 @@ public class PurchasereturnRequestDetailBaseVO {
@Schema(description = "到货主代码") @Schema(description = "到货主代码")
private String toOwnerCode; private String toOwnerCode;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereturnRequest/vo/PurchasereturnRequestMainBaseVO.java

@ -114,4 +114,7 @@ public class PurchasereturnRequestMainBaseVO {
@Schema(description = "直接生成记录") @Schema(description = "直接生成记录")
private String directCreateRecord; private String directCreateRecord;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

13
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/putawayRequest/vo/PutawayRequestDetailBaseVO.java

@ -1,13 +1,12 @@
package com.win.module.wms.controller.putawayRequest.vo; package com.win.module.wms.controller.putawayRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import java.util.*; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@ -94,4 +93,8 @@ public class PutawayRequestDetailBaseVO {
@Schema(description = "主表id") @Schema(description = "主表id")
private Long masterId; private Long masterId;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/putawayRequest/vo/PutawayRequestMainBaseVO.java

@ -94,4 +94,7 @@ public class PutawayRequestMainBaseVO {
@Schema(description = "直接生成记录", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "直接生成记录", requiredMode = Schema.RequiredMode.REQUIRED)
private String directCreateRecord; private String directCreateRecord;
@Schema(description = "乐观锁")
private Integer concurrencyStamp;
} }

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countJob/CountJobMainDO.java

@ -1,9 +1,6 @@
package com.win.module.wms.dal.dataobject.countJob; package com.win.module.wms.dal.dataobject.countJob;
import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -76,7 +73,8 @@ public class CountJobMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 状态 * 状态
* *

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanDetailDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.countPlan;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -46,6 +47,7 @@ public class CountPlanDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
} }

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.countPlan;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -93,7 +94,8 @@ public class CountPlanMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

13
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestDetailDO.java

@ -1,13 +1,13 @@
package com.win.module.wms.dal.dataobject.countRequest; package com.win.module.wms.dal.dataobject.countRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 盘点申请子 DO * 盘点申请子 DO
@ -95,7 +95,8 @@ public class CountRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 物品代码 * 物品代码
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRequest/CountRequestMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.countRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -84,7 +85,8 @@ public class CountRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestDetailDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.countadjustRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -114,7 +115,8 @@ public class CountadjustRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 物品代码 * 物品代码
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.countadjustRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -76,7 +77,8 @@ public class CountadjustRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectJob/InspectJobMainDO.java

@ -1,9 +1,6 @@
package com.win.module.wms.dal.dataobject.inspectJob; package com.win.module.wms.dal.dataobject.inspectJob;
import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -75,7 +72,8 @@ public class InspectJobMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 状态 * 状态
* *

13
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectRequest/InspectRequestDetailDO.java

@ -1,11 +1,13 @@
package com.win.module.wms.dal.dataobject.inspectRequest; package com.win.module.wms.dal.dataobject.inspectRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 检验申请子 DO * 检验申请子 DO
@ -51,7 +53,8 @@ public class InspectRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 主表ID * 主表ID
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/inspectRequest/InspectRequestMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.inspectRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -91,7 +92,8 @@ public class InspectRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptJob/PurchasereceiptJobMainDO.java

@ -1,9 +1,6 @@
package com.win.module.wms.dal.dataobject.purchasereceiptJob; package com.win.module.wms.dal.dataobject.purchasereceiptJob;
import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -94,7 +91,8 @@ public class PurchasereceiptJobMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 优先级 * 优先级
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptRequest/PurchasereceiptRequestDetailDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.purchasereceiptRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -151,7 +152,8 @@ public class PurchasereceiptRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 从货主代码 * 从货主代码
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereceiptRequest/PurchasereceiptRequestMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.purchasereceiptRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -116,7 +117,8 @@ public class PurchasereceiptRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 工作流流水号 * 工作流流水号
*/ */

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnJob/PurchasereturnJobMainDO.java

@ -95,7 +95,8 @@ public class PurchasereturnJobMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 状态 * 状态
* *

13
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnRequest/PurchasereturnRequestDetailDO.java

@ -1,13 +1,13 @@
package com.win.module.wms.dal.dataobject.purchasereturnRequest; package com.win.module.wms.dal.dataobject.purchasereturnRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 采购退货申请子 DO * 采购退货申请子 DO
@ -121,7 +121,8 @@ public class PurchasereturnRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 从货主代码 * 从货主代码
*/ */

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/purchasereturnRequest/PurchasereturnRequestMainDO.java

@ -2,6 +2,7 @@ package com.win.module.wms.dal.dataobject.purchasereturnRequest;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -108,7 +109,8 @@ public class PurchasereturnRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayJob/PutawayJobMainDO.java

@ -1,9 +1,6 @@
package com.win.module.wms.dal.dataobject.putawayJob; package com.win.module.wms.dal.dataobject.putawayJob;
import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO; import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
@ -62,7 +59,8 @@ public class PutawayJobMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 状态 * 状态
* *

14
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayRequest/PutawayRequestDetailDO.java

@ -1,12 +1,13 @@
package com.win.module.wms.dal.dataobject.putawayRequest; package com.win.module.wms.dal.dataobject.putawayRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 上架申请子 DO * 上架申请子 DO
@ -106,7 +107,8 @@ public class PutawayRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 从货主代码 * 从货主代码
*/ */

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/putawayRequest/PutawayRequestMainDO.java

@ -1,13 +1,13 @@
package com.win.module.wms.dal.dataobject.putawayRequest; package com.win.module.wms.dal.dataobject.putawayRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 上架申请主 DO * 上架申请主 DO
@ -87,7 +87,8 @@ public class PutawayRequestMainDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencyStamp; @Version
private Integer concurrencyStamp;
/** /**
* 权限所属人员id * 权限所属人员id
*/ */

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/recordsetting/RecordsettingDO.java

@ -1,11 +1,7 @@
package com.win.module.wms.dal.dataobject.recordsetting; package com.win.module.wms.dal.dataobject.recordsetting;
import com.sun.xml.bind.v2.TODO;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO; import com.win.framework.mybatis.core.dataobject.BaseDO;

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/inventorymoveJob/InventorymoveJobMainMapper.java

@ -10,6 +10,7 @@ import com.win.framework.mybatis.core.util.QueryWrapperUtils;
import com.win.module.wms.controller.inventorymoveJob.vo.InventorymoveJobMainExportReqVO; import com.win.module.wms.controller.inventorymoveJob.vo.InventorymoveJobMainExportReqVO;
import com.win.module.wms.controller.inventorymoveJob.vo.InventorymoveJobMainPageReqVO; import com.win.module.wms.controller.inventorymoveJob.vo.InventorymoveJobMainPageReqVO;
import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobMainDO; import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobMainDO;
import com.win.module.wms.dal.dataobject.inventorymoveRecord.InventorymoveRecordMainDO;
import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestMainDO; import com.win.module.wms.dal.dataobject.inventorymoveRequest.InventorymoveRequestMainDO;
import com.win.module.wms.dal.dataobject.productdismantleJob.ProductdismantleJobMainDO; import com.win.module.wms.dal.dataobject.productdismantleJob.ProductdismantleJobMainDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -23,8 +24,8 @@ import org.apache.ibatis.annotations.Mapper;
public interface InventorymoveJobMainMapper extends BaseMapperX<InventorymoveJobMainDO> { public interface InventorymoveJobMainMapper extends BaseMapperX<InventorymoveJobMainDO> {
default PageResult<InventorymoveJobMainDO> selectPage(InventorymoveJobMainPageReqVO reqVO) { default PageResult<InventorymoveJobMainDO> selectPage(InventorymoveJobMainPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<InventorymoveJobMainDO>() LambdaQueryWrapperX<InventorymoveJobMainDO> lambdaQueryWrapperX = new LambdaQueryWrapperX<>();
.eqIfPresent(InventorymoveJobMainDO::getRequestNumber, reqVO.getRequestNumber()) lambdaQueryWrapperX.eqIfPresent(InventorymoveJobMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(InventorymoveJobMainDO::getUseOnTheWayLocation, reqVO.getUseOnTheWayLocation()) .eqIfPresent(InventorymoveJobMainDO::getUseOnTheWayLocation, reqVO.getUseOnTheWayLocation())
.eqIfPresent(InventorymoveJobMainDO::getFromWarehouseCode, reqVO.getFromWarehouseCode()) .eqIfPresent(InventorymoveJobMainDO::getFromWarehouseCode, reqVO.getFromWarehouseCode())
.betweenIfPresent(InventorymoveJobMainDO::getRequestTime, reqVO.getRequestTime()) .betweenIfPresent(InventorymoveJobMainDO::getRequestTime, reqVO.getRequestTime())
@ -62,11 +63,25 @@ public interface InventorymoveJobMainMapper extends BaseMapperX<InventorymoveJob
.eqIfPresent(InventorymoveJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete()) .eqIfPresent(InventorymoveJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete())
.eqIfPresent(InventorymoveJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch()) .eqIfPresent(InventorymoveJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch())
.eqIfPresent(InventorymoveJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber()) .eqIfPresent(InventorymoveJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber())
.orderByDesc(InventorymoveJobMainDO::getId)); .orderByDesc(InventorymoveJobMainDO::getId);
if("OK".equals(reqVO.getFromInventoryStatus()) && "HOLD".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveJobMainDO::getBusinessType,"OkToHoldJob");
} else if("HOLD".equals(reqVO.getFromInventoryStatus()) && "OK".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveJobMainDO::getBusinessType,"HoldToOkJob");
} else if("HOLD".equals(reqVO.getFromInventoryStatus()) && "SCRAP".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveJobMainDO::getBusinessType,"HoldToScrapJob");
} else if("OK".equals(reqVO.getFromInventoryStatus()) && "SCRAP".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveJobMainDO::getBusinessType,"OkToScrapJob");
} else if("SCRAP".equals(reqVO.getFromInventoryStatus()) && "HOLD".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveJobMainDO::getBusinessType,"ScrapToHoldJob");
}
return selectPage(reqVO, lambdaQueryWrapperX);
} }
default PageResult<InventorymoveJobMainDO> selectSenior(CustomConditions conditions) { default PageResult<InventorymoveJobMainDO> selectSenior(CustomConditions conditions) {
return selectPage(conditions, QueryWrapperUtils.structure(conditions)); return selectPage(conditions, QueryWrapperUtils.structure(conditions));
} }
default List<InventorymoveJobMainDO> selectList(InventorymoveJobMainExportReqVO reqVO) { default List<InventorymoveJobMainDO> selectList(InventorymoveJobMainExportReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<InventorymoveJobMainDO>() return selectList(new LambdaQueryWrapperX<InventorymoveJobMainDO>()
.eqIfPresent(InventorymoveJobMainDO::getRequestNumber, reqVO.getRequestNumber()) .eqIfPresent(InventorymoveJobMainDO::getRequestNumber, reqVO.getRequestNumber())
@ -111,7 +126,8 @@ public interface InventorymoveJobMainMapper extends BaseMapperX<InventorymoveJob
} }
/** /**
*根据类型数组查询任务数量 * 根据类型数组查询任务数量
*
* @param types * @param types
* @return * @return
*/ */

19
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/inventorymoveRecord/InventorymoveRecordMainMapper.java

@ -9,6 +9,7 @@ import com.win.framework.mybatis.core.mapper.BaseMapperX;
import com.win.framework.mybatis.core.util.QueryWrapperUtils; import com.win.framework.mybatis.core.util.QueryWrapperUtils;
import com.win.module.wms.controller.inventorymoveRecord.vo.InventorymoveRecordMainExportReqVO; import com.win.module.wms.controller.inventorymoveRecord.vo.InventorymoveRecordMainExportReqVO;
import com.win.module.wms.controller.inventorymoveRecord.vo.InventorymoveRecordMainPageReqVO; import com.win.module.wms.controller.inventorymoveRecord.vo.InventorymoveRecordMainPageReqVO;
import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobMainDO;
import com.win.module.wms.dal.dataobject.inventorymoveRecord.InventorymoveRecordMainDO; import com.win.module.wms.dal.dataobject.inventorymoveRecord.InventorymoveRecordMainDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -21,8 +22,8 @@ import org.apache.ibatis.annotations.Mapper;
public interface InventorymoveRecordMainMapper extends BaseMapperX<InventorymoveRecordMainDO> { public interface InventorymoveRecordMainMapper extends BaseMapperX<InventorymoveRecordMainDO> {
default PageResult<InventorymoveRecordMainDO> selectPage(InventorymoveRecordMainPageReqVO reqVO) { default PageResult<InventorymoveRecordMainDO> selectPage(InventorymoveRecordMainPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<InventorymoveRecordMainDO>() LambdaQueryWrapperX<InventorymoveRecordMainDO> lambdaQueryWrapperX = new LambdaQueryWrapperX<>();
.eqIfPresent(InventorymoveRecordMainDO::getRequestNumber, reqVO.getRequestNumber()) lambdaQueryWrapperX.eqIfPresent(InventorymoveRecordMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(InventorymoveRecordMainDO::getJobNumber, reqVO.getJobNumber()) .eqIfPresent(InventorymoveRecordMainDO::getJobNumber, reqVO.getJobNumber())
.eqIfPresent(InventorymoveRecordMainDO::getUseOnTheWayLocation, reqVO.getUseOnTheWayLocation()) .eqIfPresent(InventorymoveRecordMainDO::getUseOnTheWayLocation, reqVO.getUseOnTheWayLocation())
.eqIfPresent(InventorymoveRecordMainDO::getOutTransactionType, reqVO.getOutTransactionType()) .eqIfPresent(InventorymoveRecordMainDO::getOutTransactionType, reqVO.getOutTransactionType())
@ -46,7 +47,19 @@ public interface InventorymoveRecordMainMapper extends BaseMapperX<Inventorymove
.eqIfPresent(InventorymoveRecordMainDO::getToLocationTypes, reqVO.getToLocationTypes()) .eqIfPresent(InventorymoveRecordMainDO::getToLocationTypes, reqVO.getToLocationTypes())
.eqIfPresent(InventorymoveRecordMainDO::getToAreaCodes, reqVO.getToAreaCodes()) .eqIfPresent(InventorymoveRecordMainDO::getToAreaCodes, reqVO.getToAreaCodes())
.eqIfPresent(InventorymoveRecordMainDO::getAvailable, reqVO.getAvailable()) .eqIfPresent(InventorymoveRecordMainDO::getAvailable, reqVO.getAvailable())
.orderByDesc(InventorymoveRecordMainDO::getId)); .orderByDesc(InventorymoveRecordMainDO::getId);
if("OK".equals(reqVO.getFromInventoryStatus()) && "HOLD".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveRecordMainDO::getBusinessType,"OkToHoldRecord");
} else if("HOLD".equals(reqVO.getFromInventoryStatus()) && "OK".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveRecordMainDO::getBusinessType,"HoldToOkRecord");
} else if("HOLD".equals(reqVO.getFromInventoryStatus()) && "SCRAP".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveRecordMainDO::getBusinessType,"HoldToScrapRecord");
} else if("OK".equals(reqVO.getFromInventoryStatus()) && "SCRAP".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveRecordMainDO::getBusinessType,"OkToScrapRecord");
} else if("SCRAP".equals(reqVO.getFromInventoryStatus()) && "HOLD".equals(reqVO.getToInventoryStatus())) {
lambdaQueryWrapperX.eq(InventorymoveRecordMainDO::getBusinessType,"ScrapToHoldRecord");
}
return selectPage(reqVO, lambdaQueryWrapperX);
} }
default PageResult<InventorymoveRecordMainDO> selectSenior(CustomConditions conditions) { default PageResult<InventorymoveRecordMainDO> selectSenior(CustomConditions conditions) {
return selectPage(conditions, QueryWrapperUtils.structure(conditions)); return selectPage(conditions, QueryWrapperUtils.structure(conditions));

18
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/balance/BalanceServiceImpl.java

@ -10,11 +10,14 @@ import com.win.module.system.api.user.AdminUserApi;
import com.win.module.wms.controller.balance.vo.BalanceExportReqVO; import com.win.module.wms.controller.balance.vo.BalanceExportReqVO;
import com.win.module.wms.controller.balance.vo.BalancePageReqVO; import com.win.module.wms.controller.balance.vo.BalancePageReqVO;
import com.win.module.wms.controller.balance.vo.BalanceUpdateReqVO; import com.win.module.wms.controller.balance.vo.BalanceUpdateReqVO;
import com.win.module.wms.controller.packageMassage.vo.PackageUpdateReqVO;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO; import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.balance.BalanceConvert; import com.win.module.wms.convert.balance.BalanceConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO; import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO; import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper; import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.packageMassage.PackageMapper;
import com.win.module.wms.service.packageMassage.PackageService;
import com.win.module.wms.service.transaction.TransactionService; import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -39,6 +42,10 @@ import static com.win.module.wms.enums.ErrorCodeConstants.UNPLANNEDISSUE_REQUEST
@Validated @Validated
public class BalanceServiceImpl implements BalanceService { public class BalanceServiceImpl implements BalanceService {
@Resource
private PackageService packageService;
@Resource
private PackageMapper packageMapper;
@Resource @Resource
private TransactionService transactionService; private TransactionService transactionService;
@Resource @Resource
@ -229,6 +236,17 @@ public class BalanceServiceImpl implements BalanceService {
transactionCreateReqVOOut.setQty(balanceDO.getQty()); transactionCreateReqVOOut.setQty(balanceDO.getQty());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate()); transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOList.add(transactionCreateReqVOOut); transactionCreateReqVOList.add(transactionCreateReqVOOut);
// 更新包装信息
PackageUpdateReqVO packageUpdateReqVO = new PackageUpdateReqVO();
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("number",balanceDO.getPackingNumber());
packageUpdateReqVO.setId(packageMapper.selectOne(queryWrapper).getId());
packageUpdateReqVO.setNumber(balanceDO.getPackingNumber());
packageUpdateReqVO.setItemCode(balanceDO.getItemCode());
packageUpdateReqVO.setBatch(updateBalanceDO.getBatch());
packageUpdateReqVO.setQty(updateBalanceDO.getQty());
packageUpdateReqVO.setExpireDate(updateBalanceDO.getExpireDate());
packageService.updatePackage(packageUpdateReqVO);
//增加库存事务 //增加库存事务
transactionService.createTransaction(transactionCreateReqVOList); transactionService.createTransaction(transactionCreateReqVOList);
} }

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java

@ -419,6 +419,7 @@ public class CountRequestMainServiceImpl implements CountRequestMainService {
countJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses()); countJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
countJobMainDO.setStatus(JobStatusEnum.PENDING.getCode()); countJobMainDO.setStatus(JobStatusEnum.PENDING.getCode());
countJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); countJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
countJobMainDO.setConcurrencyStamp(1);
String number = serialNumberApi.generateCode(RuleCodeEnum.COUNT_JOB.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.COUNT_JOB.getCode());
countJobMainDO.setNumber(number); countJobMainDO.setNumber(number);
countJobMainMapper.insert(countJobMainDO); countJobMainMapper.insert(countJobMainDO);
@ -460,6 +461,7 @@ public class CountRequestMainServiceImpl implements CountRequestMainService {
//调整数量的绝对值 //调整数量的绝对值
countadjustRequestDetailDO.setQty(countadjustRequestDetailDO.getAdjustQty().abs()); countadjustRequestDetailDO.setQty(countadjustRequestDetailDO.getAdjustQty().abs());
countadjustRequestDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); countadjustRequestDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
countadjustRequestDetailDO.setConcurrencyStamp(1);
countadjustRequestDetailDOList.add(countadjustRequestDetailDO); countadjustRequestDetailDOList.add(countadjustRequestDetailDO);
} }
int result = 0; int result = 0;
@ -479,6 +481,7 @@ public class CountRequestMainServiceImpl implements CountRequestMainService {
countadjustRequestMainDO.setCountRequestNumber(countRequestMainDO.getNumber()); countadjustRequestMainDO.setCountRequestNumber(countRequestMainDO.getNumber());
countadjustRequestMainDO.setStatus(RequestStatusEnum.NEW.getCode()); countadjustRequestMainDO.setStatus(RequestStatusEnum.NEW.getCode());
countadjustRequestMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); countadjustRequestMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
countadjustRequestMainDO.setConcurrencyStamp(1);
result = countadjustRequestMainMapper.insert(countadjustRequestMainDO); result = countadjustRequestMainMapper.insert(countadjustRequestMainDO);
for(CountadjustRequestDetailDO countadjustRequestDetailDO : countadjustRequestDetailDOList) { for(CountadjustRequestDetailDO countadjustRequestDetailDO : countadjustRequestDetailDOList) {
countadjustRequestDetailDO.setMasterId(countadjustRequestMainDO.getId()); countadjustRequestDetailDO.setMasterId(countadjustRequestMainDO.getId());

149
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRequest/CustomerreturnRequestMainServiceImpl.java

@ -2,6 +2,7 @@ package com.win.module.wms.service.customerreturnRequest;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.exceptions.UtilException; import cn.hutool.core.exceptions.UtilException;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.exception.ServiceException; import com.win.framework.common.exception.ServiceException;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult; import com.win.framework.common.pojo.PageResult;
@ -65,6 +66,7 @@ import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap;
import java.util.List; import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
@ -147,7 +149,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
this.validateCustomerreturnRequestMainCreate(mainDO); this.validateCustomerreturnRequestMainCreate(mainDO);
List<CustomerreturnRequestDetailDO> subDOList = CustomerreturnRequestMainConvert.INSTANCE.convertList03(createReqVO.getSubList()); List<CustomerreturnRequestDetailDO> subDOList = CustomerreturnRequestMainConvert.INSTANCE.convertList03(createReqVO.getSubList());
for (CustomerreturnRequestDetailDO detailDO : subDOList) { for (CustomerreturnRequestDetailDO detailDO : subDOList) {
this.validateCustomerreturnRequestDetailCreate(mainDO,detailDO); this.validateCustomerreturnRequestDetailCreate(mainDO, detailDO);
} }
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_REJECT_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_REJECT_REQUEST.getCode());
mainDO.setNumber(number); mainDO.setNumber(number);
@ -155,11 +157,12 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
requestStatusState.newObject(mainDO.getAutoCommit(), mainDO.getAutoAgree(), mainDO.getAutoExecute()); requestStatusState.newObject(mainDO.getAutoCommit(), mainDO.getAutoAgree(), mainDO.getAutoExecute());
mainDO.setStatus(requestStatusState.getState().getCode()); mainDO.setStatus(requestStatusState.getState().getCode());
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
this.generateJob(mainDO, subDOList); this.generateJob(mainDO, subDOList);
} }
customerreturnRequestMainMapper.insert(mainDO); customerreturnRequestMainMapper.insert(mainDO);
for (CustomerreturnRequestDetailDO detailDO : subDOList) { for (CustomerreturnRequestDetailDO detailDO : subDOList) {
detailDO.setId(null);
detailDO.setMasterId(mainDO.getId()); detailDO.setMasterId(mainDO.getId());
detailDO.setNumber(number); detailDO.setNumber(number);
} }
@ -177,7 +180,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
CustomerreturnRequestMainDO updateObj = CustomerreturnRequestMainConvert.INSTANCE.convert(updateReqVO); CustomerreturnRequestMainDO updateObj = CustomerreturnRequestMainConvert.INSTANCE.convert(updateReqVO);
this.validateCustomerreturnRequestMainCreate(updateObj); this.validateCustomerreturnRequestMainCreate(updateObj);
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(updateObj.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(updateObj.getStatus())) {
this.generateJob(updateObj, customerreturnRequestDetailMapper.selectList(updateReqVO.getId())); this.generateJob(updateObj, customerreturnRequestDetailMapper.selectList(updateReqVO.getId()));
} }
customerreturnRequestMainMapper.updateById(updateObj); customerreturnRequestMainMapper.updateById(updateObj);
@ -262,7 +265,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
mainDo.setStatus(PlanStatusEnum.NEW.getCode()); mainDo.setStatus(PlanStatusEnum.NEW.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_REJECT_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_REJECT_REQUEST.getCode());
DeliverRecordMainDO deliverRecordMainDO = deliverRecordMainService.selectsMainRecordExist(mainDo.getDeliverRecordNumber()); DeliverRecordMainDO deliverRecordMainDO = deliverRecordMainService.selectsMainRecordExist(mainDo.getDeliverRecordNumber());
if(deliverRecordMainDO != null){ if (deliverRecordMainDO != null) {
mainDo.setFromWarehouseCode(deliverRecordMainDO.getToWarehouseCode()); mainDo.setFromWarehouseCode(deliverRecordMainDO.getToWarehouseCode());
mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode()); mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode());
} }
@ -274,7 +277,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
detailDO.setMasterId(mainDo.getId()); detailDO.setMasterId(mainDo.getId());
} }
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDo.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(mainDo.getStatus())) {
this.generateJob(mainDo, subDOList); this.generateJob(mainDo, subDOList);
} }
customerreturnRequestDetailMapper.insertBatch(subDOList); customerreturnRequestDetailMapper.insertBatch(subDOList);
@ -285,7 +288,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
private void generateJob(CustomerreturnRequestMainDO mainDO, List<CustomerreturnRequestDetailDO> detailDOList) { private void generateJob(CustomerreturnRequestMainDO mainDO, List<CustomerreturnRequestDetailDO> detailDOList) {
//跳过任务直接生成记录 //跳过任务直接生成记录
if("TRUE".equals(mainDO.getDirectCreateRecord())) { if ("TRUE".equals(mainDO.getDirectCreateRecord())) {
//如果直接生成记录 修改申请状态为已完成 //如果直接生成记录 修改申请状态为已完成
mainDO.setStatus("8"); mainDO.setStatus("8");
customerreturnRequestMainMapper.updateById(mainDO); customerreturnRequestMainMapper.updateById(mainDO);
@ -305,7 +308,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
customerreturnRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode()); customerreturnRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
CustomerreturnRecordMainDO recordMainDO = CustomerreturnRecordMainConvert.INSTANCE.convert(customerreturnRecordMainCreateReqVO); CustomerreturnRecordMainDO recordMainDO = CustomerreturnRecordMainConvert.INSTANCE.convert(customerreturnRecordMainCreateReqVO);
customerreturnRecordMainMapper.insert(recordMainDO); customerreturnRecordMainMapper.insert(recordMainDO);
for(CustomerreturnRequestDetailDO customerreturnRequestDetailDO : detailDOList) { for (CustomerreturnRequestDetailDO customerreturnRequestDetailDO : detailDOList) {
//记录子表数据 同名属性同名赋值 //记录子表数据 同名属性同名赋值
CustomerreturnRecordDetailCreateReqVO customerreturnRecordDetailCreateReqVO = new CustomerreturnRecordDetailCreateReqVO(); CustomerreturnRecordDetailCreateReqVO customerreturnRecordDetailCreateReqVO = new CustomerreturnRecordDetailCreateReqVO();
CustomerreturnRecordDetailDO recordDetailDO = CustomerreturnRecordDetailConvert.INSTANCE.convert(customerreturnRecordDetailCreateReqVO); CustomerreturnRecordDetailDO recordDetailDO = CustomerreturnRecordDetailConvert.INSTANCE.convert(customerreturnRecordDetailCreateReqVO);
@ -356,7 +359,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
customerreturnJobMainMapper.insert(customerreturnJobMainDO); customerreturnJobMainMapper.insert(customerreturnJobMainDO);
List<ExpectinCreateReqVO> expectinCreateReqVOList = new ArrayList<>(); List<ExpectinCreateReqVO> expectinCreateReqVOList = new ArrayList<>();
List<CustomerreturnJobDetailDO> customerreturnJobDetailDOList = new ArrayList<>(); List<CustomerreturnJobDetailDO> customerreturnJobDetailDOList = new ArrayList<>();
for(CustomerreturnRequestDetailDO customerreturnRequestDetailDO : detailDOList) { for (CustomerreturnRequestDetailDO customerreturnRequestDetailDO : detailDOList) {
//任务子表数据 同名属性同名赋值 //任务子表数据 同名属性同名赋值
CustomerreturnJobDetailDO customerreturnJobDetailDO = CustomerreturnJobDetailConvert.INSTANCE.convert(customerreturnRequestDetailDO); CustomerreturnJobDetailDO customerreturnJobDetailDO = CustomerreturnJobDetailConvert.INSTANCE.convert(customerreturnRequestDetailDO);
BeanUtils.copyProperties(customerreturnRequestDetailDO, customerreturnJobDetailDO); BeanUtils.copyProperties(customerreturnRequestDetailDO, customerreturnJobDetailDO);
@ -387,6 +390,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 主表校验导入并赋值一些参数 * 主表校验导入并赋值一些参数
*
* @param mainDo * @param mainDo
* @return * @return
*/ */
@ -417,41 +421,41 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 子表校验导入并赋值一些参数 * 子表校验导入并赋值一些参数
*
* @param detailDo * @param detailDo
* @return * @return
*/ */
private String validateCustomerreturnRequestDetailImport(CustomerreturnRequestDetailDO detailDo, CustomerreturnRequestMainDO mainDo, BusinesstypeDO businesstypeDO) { private String validateCustomerreturnRequestDetailImport(CustomerreturnRequestDetailDO detailDo, CustomerreturnRequestMainDO mainDo, BusinesstypeDO businesstypeDO) {
String messageDetail = ""; String messageDetail = "";
// 校验物品基础信息
try { try {
validateDeliverRecordDetail(mainDo,detailDo); validateDeliverRecordDetail(mainDo, detailDo);
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += ex.getMessage() + ","; messageDetail += ex.getMessage() + ",";
} }
try { try {
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode()); ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
if ( !detailDo.getUom().equals(itembasicDO.getUom())) { if (!detailDo.getUom().equals(itembasicDO.getUom())) {
messageDetail += "计量单位" + itembasicDO.getUom() + "错误,应该是" + detailDo.getUom() + ","; messageDetail += "计量单位" + itembasicDO.getUom() + "错误,应该是" + detailDo.getUom() + ",";
} }
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += ex.getMessage() + ","; messageDetail += ex.getMessage() + ",";
} }
try { try {
if(!"".equals(detailDo.getFromLocationCode())){ if (!"".equals(detailDo.getFromLocationCode())) {
validatorIfInToLocationType(detailDo.getFromLocationCode(),businesstypeDO); validatorIfInToLocationType(detailDo.getFromLocationCode(), businesstypeDO);
} }
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += ex.getMessage() + ","; messageDetail += ex.getMessage() + ",";
} }
try { try {
validatorIfInFromLocationType(detailDo.getToLocationCode(),businesstypeDO); validatorIfInFromLocationType(detailDo.getToLocationCode(), businesstypeDO);
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += "从" + ex.getMessage() + ","; messageDetail += "从" + ex.getMessage() + ",";
} }
try { try {
validatorIfInventoryStatuses(detailDo.getInventoryStatus(),businesstypeDO); validatorIfInventoryStatuses(detailDo.getInventoryStatus(), businesstypeDO);
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += "到" + ex.getMessage() + ","; messageDetail += "到" + ex.getMessage() + ",";
} }
try { try {
validatorBalance(detailDo); validatorBalance(detailDo);
@ -461,7 +465,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
try { try {
ValidationUtils.validate(validator, mainDo); ValidationUtils.validate(validator, mainDo);
} catch (Exception ex) { } catch (Exception ex) {
messageDetail+= ex.getMessage() + (","); messageDetail += ex.getMessage() + (",");
} }
return messageDetail; return messageDetail;
} }
@ -472,12 +476,12 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
// 校验存在存在下级单据 // 校验存在存在下级单据
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
Long count = customerreturnJobMainMapper.selectByRequestNumber(mainDO.getNumber()); Long count = customerreturnJobMainMapper.selectByRequestNumber(mainDO.getNumber());
if(count > 0) { if (count > 0) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_JOB_EXISTS); throw new ServiceException(CUSTOMERRETURN_REQUEST_JOB_EXISTS);
} }
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.close(); boolean flag = requestStatusState.close();
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_CLOSE); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_CLOSE);
} }
mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录 mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录
@ -491,12 +495,12 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
// 校验存在存在下级单据 // 校验存在存在下级单据
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
Long count = customerreturnJobMainMapper.selectByRequestNumber(mainDO.getNumber()); Long count = customerreturnJobMainMapper.selectByRequestNumber(mainDO.getNumber());
if(count > 0) { if (count > 0) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_JOB_EXISTS); throw new ServiceException(CUSTOMERRETURN_REQUEST_JOB_EXISTS);
} }
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.reAdd(); boolean flag = requestStatusState.reAdd();
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_RE_ADD); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_RE_ADD);
} }
mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录 mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录
@ -510,12 +514,12 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.submit(mainDO.getAutoAgree(), mainDO.getAutoExecute()); boolean flag = requestStatusState.submit(mainDO.getAutoAgree(), mainDO.getAutoExecute());
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_SUBMIT); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_SUBMIT);
} }
mainDO.setStatus(requestStatusState.getState().getCode()); mainDO.setStatus(requestStatusState.getState().getCode());
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
this.generateJob(mainDO, customerreturnRequestDetailMapper.selectList(mainDO.getId())); this.generateJob(mainDO, customerreturnRequestDetailMapper.selectList(mainDO.getId()));
} }
trendsApi.createTrends(id, "CustomerRejectRequest", "提交了客户退货申请", TrendsTypeEnum.UPDATE); trendsApi.createTrends(id, "CustomerRejectRequest", "提交了客户退货申请", TrendsTypeEnum.UPDATE);
@ -529,12 +533,12 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.agree(mainDO.getAutoAgree()); boolean flag = requestStatusState.agree(mainDO.getAutoAgree());
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_AGREE); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_AGREE);
} }
mainDO.setStatus(requestStatusState.getState().getCode()); mainDO.setStatus(requestStatusState.getState().getCode());
//调用自动执行方法 //调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
this.generateJob(mainDO, customerreturnRequestDetailMapper.selectList(mainDO.getId())); this.generateJob(mainDO, customerreturnRequestDetailMapper.selectList(mainDO.getId()));
} }
trendsApi.createTrends(id, "CustomerRejectRequest", "审批同意了客户退货申请", TrendsTypeEnum.UPDATE); trendsApi.createTrends(id, "CustomerRejectRequest", "审批同意了客户退货申请", TrendsTypeEnum.UPDATE);
@ -548,7 +552,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.handle(); boolean flag = requestStatusState.handle();
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_HANDLE); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_HANDLE);
} }
mainDO.setStatus(requestStatusState.getState().getCode()); mainDO.setStatus(requestStatusState.getState().getCode());
@ -565,7 +569,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id); CustomerreturnRequestMainDO mainDO = validateCustomerreturnRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus()); RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.refused(); boolean flag = requestStatusState.refused();
if(!flag) { if (!flag) {
throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_ABORT); throw new ServiceException(CUSTOMERRETURN_REQUEST_CANNOT_ABORT);
} }
mainDO.setStatus(requestStatusState.getState().getCode()); mainDO.setStatus(requestStatusState.getState().getCode());
@ -575,6 +579,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 新增主表校验 * 新增主表校验
*
* @param mainDo * @param mainDo
* @return * @return
*/ */
@ -589,40 +594,41 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 新增子表校验 * 新增子表校验
*
* @param detailDo * @param detailDo
* @return * @return
*/ */
private void validateCustomerreturnRequestDetailCreate(CustomerreturnRequestMainDO mainDo, CustomerreturnRequestDetailDO detailDo) { private void validateCustomerreturnRequestDetailCreate(CustomerreturnRequestMainDO mainDo, CustomerreturnRequestDetailDO detailDo) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRequest");
//校验成品发货记录子表并赋值
validateDeliverRecordDetail(mainDo,detailDo);
//校验物品基础信息并赋值 //校验物品基础信息并赋值
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode()); ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
if(detailDo.getUom() != null){ if (detailDo.getUom() != null) {
if (!detailDo.getUom().equals(itembasicDO.getUom())) { if (!detailDo.getUom().equals(itembasicDO.getUom())) {
//注意转换字段数值 //注意转换字段数值
throw exception(UOM_EXCEPTION,"计量单位" + itembasicDO.getUom() + "错误,应该是" + detailDo.getUom() + ","); throw exception(UOM_EXCEPTION, "计量单位" + itembasicDO.getUom() + "错误,应该是" + detailDo.getUom() + ",");
} }
} }
//校验来源库位 //校验来源库位
if(!"".equals(detailDo.getFromLocationCode())){ if (!"".equals(detailDo.getFromLocationCode())) {
validatorIfInToLocationType(detailDo.getFromLocationCode(),businesstypeDO); validatorIfInToLocationType(detailDo.getFromLocationCode(), businesstypeDO);
} }
//校验到库位 //校验到库位
// customerdockService. // customerdockService.
validatorIfInFromLocationType(detailDo.getToLocationCode(),businesstypeDO); validatorIfInFromLocationType(detailDo.getToLocationCode(), businesstypeDO);
//校验库存状态 //校验库存状态
validatorIfInventoryStatuses(detailDo.getInventoryStatus(),businesstypeDO); validatorIfInventoryStatuses(detailDo.getInventoryStatus(), businesstypeDO);
//校验库存余额 //校验库存余额
validatorBalance(detailDo); validatorBalance(detailDo);
validateDeliverRecordQtyDetail(mainDo, detailDo);
} }
/** /**
* 校验发货记录并赋值 * 校验发货记录并赋值
*
* @param mainDo * @param mainDo
*/ */
private CustomerreturnRequestMainDO validateDeliverRecord(CustomerreturnRequestMainDO mainDo) { private CustomerreturnRequestMainDO validateDeliverRecord(CustomerreturnRequestMainDO mainDo) {
DeliverRecordMainDO deliverRecordMainDO = deliverRecordMainService.selectsMainRecordExist(mainDo.getDeliverRecordNumber()); DeliverRecordMainDO deliverRecordMainDO = deliverRecordMainService.selectsMainRecordExist(mainDo.getDeliverRecordNumber());
mainDo.setDeliverPlanNumber(deliverRecordMainDO.getDeliverPlanNumber()); mainDo.setDeliverPlanNumber(deliverRecordMainDO.getDeliverPlanNumber());
mainDo.setCustomerCode(deliverRecordMainDO.getCustomerCode()); mainDo.setCustomerCode(deliverRecordMainDO.getCustomerCode());
mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode()); mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode());
@ -632,9 +638,10 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 校验业务类型和申请设置并赋值 * 校验业务类型和申请设置并赋值
*
* @param mainDo * @param mainDo
*/ */
private void validateRequestsettingAndBusinesstype(CustomerreturnRequestMainDO mainDo){ private void validateRequestsettingAndBusinesstype(CustomerreturnRequestMainDO mainDo) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomerRejectRequest"); RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomerRejectRequest");
if (requestsettingDO != null) { if (requestsettingDO != null) {
mainDo.setAutoAgree(requestsettingDO.getAutoAgree()); mainDo.setAutoAgree(requestsettingDO.getAutoAgree());
@ -643,7 +650,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
} }
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRequest");
if(businesstypeDO != null){ if (businesstypeDO != null) {
mainDo.setBusinessType(businesstypeDO.getCode()); mainDo.setBusinessType(businesstypeDO.getCode());
mainDo.setFromLocationTypes(businesstypeDO.getOutLocationTypes()); mainDo.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
mainDo.setToLocationTypes(businesstypeDO.getInLocationTypes()); mainDo.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -655,14 +662,51 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
} }
private HashMap<Long, BigDecimal> validateDeliverRecordQtyDetail(CustomerreturnRequestMainDO mainDo, CustomerreturnRequestDetailDO detailDO) {
QueryWrapper<CustomerreturnRecordMainDO> customerreturnRecordMainDOQueryWrapper = new QueryWrapper<>();
customerreturnRecordMainDOQueryWrapper.eq("deliver_record_number", mainDo.getDeliverRecordNumber());
HashMap<Long, BigDecimal> hashMap = new HashMap<>();
//查询出已经退货完的记录主表
List<CustomerreturnRecordMainDO> customerreturnRecordMainDOS = customerreturnRecordMainMapper.selectList(customerreturnRecordMainDOQueryWrapper);
//获取发货记录子表每条数据
List<DeliverRecordDetailDO> deliverRecordDetailDO = deliverRecordMainService.selectsDeliverRecordExist(mainDo.getDeliverRecordNumber());
if (deliverRecordDetailDO != null && deliverRecordDetailDO.size() != 0) {
//2条
for (DeliverRecordDetailDO deliver : deliverRecordDetailDO) {
for (CustomerreturnRecordMainDO customerreturnRecordMainDO : customerreturnRecordMainDOS) {
List<CustomerreturnRecordDetailDO> customerreturnRecordDetailDOS = customerreturnRecordDetailMapper.selectList(customerreturnRecordMainDO.getId());
//查询出已经退货完的记录主表下的子表数据
BigDecimal qty = BigDecimal.ZERO;
for (CustomerreturnRecordDetailDO customerreturnRecordDetailDO : customerreturnRecordDetailDOS) {
if (deliver.getItemCode().equals(detailDO.getItemCode()) && deliver.getBatch().equals(detailDO.getBatch())
&& deliver.getPackingNumber().equals(detailDO.getPackingNumber())) {
if (deliver.getItemCode().equals(customerreturnRecordDetailDO.getItemCode()) && deliver.getBatch().equals(customerreturnRecordDetailDO.getFromBatch())
&& deliver.getPackingNumber().equals(customerreturnRecordDetailDO.getFromPackingNumber())) {
hashMap.put(detailDO.getId(), qty = qty.add(customerreturnRecordDetailDO.getQty()));
}
}
}
if (hashMap.get(detailDO.getId()) != null) {
if (deliver.getQty().compareTo((hashMap.get(detailDO.getId())).add(detailDO.getQty())) == -1) {
throw exception(QTY_EXCEPTION, "当前客户退货申请单的" + detailDO.getId() + "的退货数量已超出当前发货记录的发货数量" + (hashMap.get(detailDO.getId())).add(detailDO.getQty()).subtract(deliver.getQty()) + "个");
}
}
}
}
}
return hashMap;
}
/** /**
* 校验成品发货记录子表并赋值 * 校验成品发货记录子表并赋值
*
* @param mainDo * @param mainDo
* @param detailDO * @param detailDO
*/ */
private void validateDeliverRecordDetail(CustomerreturnRequestMainDO mainDo,CustomerreturnRequestDetailDO detailDO){ private void validateDeliverRecordDetail(CustomerreturnRequestMainDO mainDo, CustomerreturnRequestDetailDO detailDO) {
List<DeliverRecordDetailDO> deliverRecordDetailDO = deliverRecordMainService.selectsDeliverRecordExist(mainDo.getDeliverRecordNumber()); List<DeliverRecordDetailDO> deliverRecordDetailDO = deliverRecordMainService.selectsDeliverRecordExist(mainDo.getDeliverRecordNumber());
if(deliverRecordDetailDO != null && deliverRecordDetailDO.size() != 0){ if (deliverRecordDetailDO != null && deliverRecordDetailDO.size() != 0) {
Boolean result = false; Boolean result = false;
for (DeliverRecordDetailDO deliver : deliverRecordDetailDO) { for (DeliverRecordDetailDO deliver : deliverRecordDetailDO) {
if ( if (
@ -670,28 +714,25 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
// deliver.getSoLine().equals(detailDO.getSoLine()) && // deliver.getSoLine().equals(detailDO.getSoLine()) &&
deliver.getItemCode().equals(detailDO.getItemCode()) && deliver.getItemCode().equals(detailDO.getItemCode()) &&
deliver.getBatch().equals(detailDO.getBatch()) && deliver.getBatch().equals(detailDO.getBatch()) &&
deliver.getPackingNumber().equals(detailDO.getPackingNumber())) deliver.getPackingNumber().equals(detailDO.getPackingNumber())) {
{
detailDO.setQty(deliver.getQty());
detailDO.setUom(deliver.getUom());
result = true; result = true;
} }
} }
if(!result){ if (!result) {
throw exception(DELIVER_RECORD_DETAIL_EXCEPTION,"物料代码" + detailDO.getItemCode() + "批次" + detailDO.getBatch() + "箱码" + detailDO.getPackingNumber() + "不在发货记录单" throw exception(DELIVER_RECORD_DETAIL_EXCEPTION, "物料代码" + detailDO.getItemCode() + "批次" + detailDO.getBatch() + "箱码" + detailDO.getPackingNumber() + "不在发货记录单"
+ mainDo.getDeliverRecordNumber() + "中"); + mainDo.getDeliverRecordNumber() + "中");
// throw exception(DELIVER_RECORD_DETAIL_EXCEPTION,"销售订单号" + detailDO.getSoNumber() + "销售订单行" + detailDO.getSoLine() // throw exception(DELIVER_RECORD_DETAIL_EXCEPTION,"销售订单号" + detailDO.getSoNumber() + "销售订单行" + detailDO.getSoLine()
// + "物料代码" + detailDO.getItemCode() + "批次" + detailDO.getBatch() + "箱码" + detailDO.getPackingNumber() + "不在发货记录单" // + "物料代码" + detailDO.getItemCode() + "批次" + detailDO.getBatch() + "箱码" + detailDO.getPackingNumber() + "不在发货记录单"
// + createReqVO.getDeliverRecordNumber() + "中"); // + createReqVO.getDeliverRecordNumber() + "中");
} }
} } else {
else {
throw exception(DELIVER_RECORD_DETAIL_NOT_EXISTS); throw exception(DELIVER_RECORD_DETAIL_NOT_EXISTS);
} }
} }
/** /**
* 校验物品基础信息并赋值 * 校验物品基础信息并赋值
*
* @param itemCode * @param itemCode
*/ */
private ItembasicDO validatorItembasic(String itemCode) { private ItembasicDO validatorItembasic(String itemCode) {
@ -700,6 +741,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 校验出库库位类型是否一致 * 校验出库库位类型是否一致
*
* @param fromLocationCode * @param fromLocationCode
* @param businesstypeDO * @param businesstypeDO
*/ */
@ -709,15 +751,17 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 校验出库库位类型是否一致 * 校验出库库位类型是否一致
*
* @param toLocationCode * @param toLocationCode
* @param businesstypeDO * @param businesstypeDO
*/ */
private void validatorIfInFromLocationType(String toLocationCode, BusinesstypeDO businesstypeDO) { private void validatorIfInFromLocationType(String toLocationCode, BusinesstypeDO businesstypeDO) {
jobUtils.ifInFromLocationType(toLocationCode, businesstypeDO); jobUtils.ifInFromLocationType(toLocationCode, businesstypeDO);
} }
/** /**
* 校验库存状态是否一致 * 校验库存状态是否一致
*
* @param inventoryStatus * @param inventoryStatus
* @param businesstypeDO * @param businesstypeDO
*/ */
@ -727,14 +771,15 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
/** /**
* 校验库存余额 * 校验库存余额
*
* @param * @param
*/ */
private void validatorBalance(CustomerreturnRequestDetailDO detailDO) { private void validatorBalance(CustomerreturnRequestDetailDO detailDO) {
ArrayList<String> list = new ArrayList<>(); ArrayList<String> list = new ArrayList<>();
list.add(detailDO.getInventoryStatus()); list.add(detailDO.getInventoryStatus());
if("CUST".equals(detailDO.getFromLocationCode())){ if ("CUST".equals(detailDO.getFromLocationCode())) {
List<BalanceDO> balance = jobUtils.selectlocationReturnManagementAccuracy(detailDO.getItemCode(),detailDO.getPackingNumber() List<BalanceDO> balance = jobUtils.selectlocationReturnManagementAccuracy(detailDO.getItemCode(), detailDO.getPackingNumber()
,detailDO.getBatch(),detailDO.getFromLocationCode(),list); , detailDO.getBatch(), detailDO.getFromLocationCode(), list);
isqty(detailDO.getQty(), balance.get(0).getQty()); isqty(detailDO.getQty(), balance.get(0).getQty());
} }
} }

33
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customersettleRequest/CustomersettleRequestMainServiceImpl.java

@ -9,21 +9,25 @@ import com.win.framework.common.util.validation.ValidationUtils;
import com.win.module.infra.api.trends.TrendsApi; import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.infra.enums.TrendsTypeEnum; import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum; import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.customersettleRecord.vo.CustomersettleRecordDetailCreateReqVO; import com.win.module.wms.controller.customersettleRecord.vo.CustomersettleRecordDetailCreateReqVO;
import com.win.module.wms.controller.customersettleRecord.vo.CustomersettleRecordMainCreateReqVO; import com.win.module.wms.controller.customersettleRecord.vo.CustomersettleRecordMainCreateReqVO;
import com.win.module.wms.controller.customersettleRequest.vo.*; import com.win.module.wms.controller.customersettleRequest.vo.*;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.customersettleRecord.CustomersettleRecordDetailConvert; import com.win.module.wms.convert.customersettleRecord.CustomersettleRecordDetailConvert;
import com.win.module.wms.convert.customersettleRecord.CustomersettleRecordMainConvert; import com.win.module.wms.convert.customersettleRecord.CustomersettleRecordMainConvert;
import com.win.module.wms.convert.customersettleRequest.CustomersettleRequestDetailConvert; import com.win.module.wms.convert.customersettleRequest.CustomersettleRequestDetailConvert;
import com.win.module.wms.convert.customersettleRequest.CustomersettleRequestMainConvert; import com.win.module.wms.convert.customersettleRequest.CustomersettleRequestMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.customersettleRecord.CustomersettleRecordDetailDO;
import com.win.module.wms.dal.dataobject.customersettleRecord.CustomersettleRecordMainDO; import com.win.module.wms.dal.dataobject.customersettleRecord.CustomersettleRecordMainDO;
import com.win.module.wms.dal.dataobject.customersettleRequest.CustomersettleRequestDetailDO; import com.win.module.wms.dal.dataobject.customersettleRequest.CustomersettleRequestDetailDO;
import com.win.module.wms.dal.dataobject.customersettleRequest.CustomersettleRequestMainDO; import com.win.module.wms.dal.dataobject.customersettleRequest.CustomersettleRequestMainDO;
import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordDetailDO; import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordDetailDO;
import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordMainDO; import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordMainDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO; import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.customersettleRecord.CustomersettleRecordDetailMapper; import com.win.module.wms.dal.mysql.customersettleRecord.CustomersettleRecordDetailMapper;
import com.win.module.wms.dal.mysql.customersettleRecord.CustomersettleRecordMainMapper; import com.win.module.wms.dal.mysql.customersettleRecord.CustomersettleRecordMainMapper;
import com.win.module.wms.dal.mysql.customersettleRequest.CustomersettleRequestDetailMapper; import com.win.module.wms.dal.mysql.customersettleRequest.CustomersettleRequestDetailMapper;
@ -42,12 +46,14 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Validator; import javax.validation.Validator;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.win.module.wms.enums.ErrorCodeConstants.*; import static com.win.module.wms.enums.ErrorCodeConstants.*;
/** /**
@ -84,6 +90,8 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Resource @Resource
private SerialNumberApi serialNumberApi; private SerialNumberApi serialNumberApi;
@Resource
private AdminUserApi userApi;
@Override @Override
public Long createCustomersettleRequestMain(CustomersettleRequestMainCreateReqVO createReqVO) { public Long createCustomersettleRequestMain(CustomersettleRequestMainCreateReqVO createReqVO) {
// 插入 // 插入
@ -270,14 +278,35 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
customersettleRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode()); customersettleRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
CustomersettleRecordMainDO convert = CustomersettleRecordMainConvert.INSTANCE.convert(customersettleRecordMainCreateReqVO); CustomersettleRecordMainDO convert = CustomersettleRecordMainConvert.INSTANCE.convert(customersettleRecordMainCreateReqVO);
customersettleRecordMainMapper.insert(convert); customersettleRecordMainMapper.insert(convert);
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
for (CustomersettleRequestDetailDO customersettleRequestDetailDO : detailDOList) { for (CustomersettleRequestDetailDO customersettleRequestDetailDO : detailDOList) {
CustomersettleRecordDetailCreateReqVO customersettleRecordDetailCreateReqVO = new CustomersettleRecordDetailCreateReqVO(); CustomersettleRecordDetailCreateReqVO customersettleRecordDetailCreateReqVO = new CustomersettleRecordDetailCreateReqVO();
BeanUtils.copyProperties(customersettleRequestDetailDO, customersettleRecordDetailCreateReqVO); BeanUtils.copyProperties(customersettleRequestDetailDO, customersettleRecordDetailCreateReqVO);
customersettleRecordDetailCreateReqVO.setNumber(number); customersettleRecordDetailCreateReqVO.setNumber(number);
customersettleRecordDetailCreateReqVO.setMasterId(convert.getId().toString()); customersettleRecordDetailCreateReqVO.setMasterId(convert.getId().toString());
customersettleRecordDetailMapper.insert(CustomersettleRecordDetailConvert.INSTANCE.convert(customersettleRecordDetailCreateReqVO)); CustomersettleRecordDetailDO recordDetailDO = CustomersettleRecordDetailConvert.INSTANCE.convert(customersettleRecordDetailCreateReqVO);
trendsApi.createTrends(mainDO.getId(), "CustomersettleRecord", "客户结算申请生成客户结算记录", TrendsTypeEnum.CREATE); customersettleRecordDetailMapper.insert(recordDetailDO);
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(recordDetailDO, transactionCreateReqVO);
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(mainDO.getBusinessType());
transactionCreateReqVO.setOwnerCode(recordDetailDO.getOwnerCode());
transactionCreateReqVO.setItemCode(recordDetailDO.getItemCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVO.setPackingNumber(recordDetailDO.getPackingNumber());
transactionCreateReqVO.setBatch(recordDetailDO.getBatch());
transactionCreateReqVO.setContainerNumber(null);
transactionCreateReqVO.setAmount(recordDetailDO.getAmount());
transactionCreateReqVO.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVO.setLocationCode(recordDetailDO.getFromLocationCode());
transactionCreateReqVOList.add(transactionCreateReqVO);
} }
trendsApi.createTrends(mainDO.getId(), "CustomersettleRecord", "客户结算申请生成客户结算记录", TrendsTypeEnum.CREATE);
} }
@Override @Override

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverRequest/DeliverRequestMainServiceImpl.java

@ -614,7 +614,7 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
deliverJobDetailDo.setUpdateTime(null); deliverJobDetailDo.setUpdateTime(null);
deliverJobDetailDo.setUpdater(null); deliverJobDetailDo.setUpdater(null);
if("TRUE".equals(businesstypeDO.getUseOnTheWay())){ if("TRUE".equals(businesstypeDO.getUseOnTheWay())){
deliverJobDetailDo.setToLocationCode("FAC_INTRANS"); deliverJobDetailDo.setToLocationCode("CUST");
}else { }else {
deliverJobDetailDo.setToLocationCode(null); deliverJobDetailDo.setToLocationCode(null);
} }

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java

@ -350,9 +350,11 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
requestMainDO.setSampleMethod("QTY"); requestMainDO.setSampleMethod("QTY");
requestMainDO.setStatus(RequestStatusEnum.NEW.getCode()); requestMainDO.setStatus(RequestStatusEnum.NEW.getCode());
requestMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); requestMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
requestMainDO.setConcurrencyStamp(1);
inspectRequestMainMapper.insert(requestMainDO); inspectRequestMainMapper.insert(requestMainDO);
for(InspectRequestDetailDO inspectRequestDetailDO : requestDetailDOList) { for(InspectRequestDetailDO inspectRequestDetailDO : requestDetailDOList) {
inspectRequestDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); inspectRequestDetailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
inspectRequestDetailDO.setConcurrencyStamp(1);
inspectRequestDetailDO.setMasterId(requestMainDO.getId()); inspectRequestDetailDO.setMasterId(requestMainDO.getId());
inspectRequestDetailDO.setNumber(requestNumber); inspectRequestDetailDO.setNumber(requestNumber);
} }
@ -386,10 +388,12 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
putawayRequestDetailCreateReqVO.setItemName(inspectRecordMainDO.getItemCode()); putawayRequestDetailCreateReqVO.setItemName(inspectRecordMainDO.getItemCode());
putawayRequestDetailCreateReqVO.setInventoryStatus("OK"); putawayRequestDetailCreateReqVO.setInventoryStatus("OK");
putawayRequestDetailCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); putawayRequestDetailCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
putawayRequestDetailCreateReqVO.setConcurrencyStamp(1);
putawayRequestDetailCreateReqVOList.add(putawayRequestDetailCreateReqVO); putawayRequestDetailCreateReqVOList.add(putawayRequestDetailCreateReqVO);
} }
putawayRequestMainCreateReqVO.setToWarehouseCode(inspectRecordMainDO.getFromWarehouseCode()); putawayRequestMainCreateReqVO.setToWarehouseCode(inspectRecordMainDO.getFromWarehouseCode());
putawayRequestMainCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); putawayRequestMainCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
putawayRequestMainCreateReqVO.setConcurrencyStamp(1);
putawayRequestMainCreateReqVO.setSubList(putawayRequestDetailCreateReqVOList); putawayRequestMainCreateReqVO.setSubList(putawayRequestDetailCreateReqVOList);
if(!putawayRequestDetailCreateReqVOList.isEmpty()) { if(!putawayRequestDetailCreateReqVOList.isEmpty()) {
putawayRequestMainService.createPutawayRequestMain(putawayRequestMainCreateReqVO); putawayRequestMainService.createPutawayRequestMain(putawayRequestMainCreateReqVO);

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java

@ -404,6 +404,7 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
inspectJobMainDO.setRequestNumber(mainDO.getNumber()); inspectJobMainDO.setRequestNumber(mainDO.getNumber());
inspectJobMainDO.setWarehouseCode(mainDO.getFromWarehouseCode()); inspectJobMainDO.setWarehouseCode(mainDO.getFromWarehouseCode());
inspectJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); inspectJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
inspectJobMainDO.setConcurrencyStamp(1);
String number = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_JOB.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_JOB.getCode());
inspectJobMainDO.setNumber(number); inspectJobMainDO.setNumber(number);
//增加业务类型 //增加业务类型

177
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveJob/InventorymoveJobMainServiceImpl.java

@ -12,6 +12,7 @@ import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.expectin.vo.ExpectinCreateReqVO; import com.win.module.wms.controller.expectin.vo.ExpectinCreateReqVO;
import com.win.module.wms.controller.expectout.vo.ExpectoutCreateReqVO; import com.win.module.wms.controller.expectout.vo.ExpectoutCreateReqVO;
import com.win.module.wms.controller.inventorymoveJob.vo.*; import com.win.module.wms.controller.inventorymoveJob.vo.*;
import com.win.module.wms.controller.purchasereturnJob.vo.PurchasereturnJobDetailUpdateReqVO;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO; import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobDetailDO; import com.win.module.wms.dal.dataobject.inventorymoveJob.InventorymoveJobDetailDO;
@ -193,7 +194,7 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
inventorymoveJobMainDO.setAcceptUserId(String.valueOf(userId)); inventorymoveJobMainDO.setAcceptUserId(String.valueOf(userId));
inventorymoveJobMainDO.setAcceptUserName(userRespDTO.getNickname()); inventorymoveJobMainDO.setAcceptUserName(userRespDTO.getNickname());
inventorymoveJobMainDO.setAcceptTime(LocalDateTime.now()); inventorymoveJobMainDO.setAcceptTime(LocalDateTime.now());
trendsApi.createTrends(id, "MoveJob", "承接了库存转移任务", TrendsTypeEnum.UPDATE); trendsApi.createTrends(id, "InventoryMoveJob", "承接了库存转移任务", TrendsTypeEnum.UPDATE);
return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO); return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO);
} }
@ -209,7 +210,7 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
inventorymoveJobMainDO.setAcceptUserId(null); inventorymoveJobMainDO.setAcceptUserId(null);
inventorymoveJobMainDO.setAcceptUserName(null); inventorymoveJobMainDO.setAcceptUserName(null);
inventorymoveJobMainDO.setAcceptTime(null); inventorymoveJobMainDO.setAcceptTime(null);
trendsApi.createTrends(id, "MoveJob", "取消了库存转移任务", TrendsTypeEnum.UPDATE); trendsApi.createTrends(id, "InventoryMoveJob", "取消了库存转移任务", TrendsTypeEnum.UPDATE);
return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO); return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO);
} }
@ -222,7 +223,7 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
throw exception(DELIVER_JOB_MAIN_STATUS_ERROR); throw exception(DELIVER_JOB_MAIN_STATUS_ERROR);
} }
inventorymoveJobMainDO.setStatus(jobStatusState.getState().getCode()); inventorymoveJobMainDO.setStatus(jobStatusState.getState().getCode());
trendsApi.createTrends(id, "MoveJob", "关闭了库存转移任务", TrendsTypeEnum.UPDATE); trendsApi.createTrends(id, "InventoryMoveJob", "关闭了库存转移任务", TrendsTypeEnum.UPDATE);
return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO); return inventorymoveJobMainMapper.updateById(inventorymoveJobMainDO);
} }
@ -231,7 +232,7 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
public String executeInventorymoveJobMain(InventorymoveJobMainUpdateReqVO inventorymoveJobMainUpdateReqVO) { public String executeInventorymoveJobMain(InventorymoveJobMainUpdateReqVO inventorymoveJobMainUpdateReqVO) {
RecordsettingDO recordsettingDO = null; RecordsettingDO recordsettingDO = null;
BusinesstypeDO businesstypeDO = null; BusinesstypeDO businesstypeDO = null;
String number = ""; String number = "";
//查询数据 //查询数据
InventorymoveJobMainDO inventorymoveJobMainDO = this.validateInventorymoveJobMainExists(inventorymoveJobMainUpdateReqVO.getId()); InventorymoveJobMainDO inventorymoveJobMainDO = this.validateInventorymoveJobMainExists(inventorymoveJobMainUpdateReqVO.getId());
List<InventorymoveJobDetailDO> subList = inventorymoveJobDetailService.selectList(inventorymoveJobMainDO.getId()); List<InventorymoveJobDetailDO> subList = inventorymoveJobDetailService.selectList(inventorymoveJobMainDO.getId());
@ -259,26 +260,30 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
inventorymoveRecordMainDO.setExecuteTime(LocalDateTime.now()); inventorymoveRecordMainDO.setExecuteTime(LocalDateTime.now());
inventorymoveRecordMainDO.setActiveDate(LocalDateTime.now()); inventorymoveRecordMainDO.setActiveDate(LocalDateTime.now());
inventorymoveRecordMainDO.setDueTime(inventorymoveJobMainDO.getRequestDueTime()); inventorymoveRecordMainDO.setDueTime(inventorymoveJobMainDO.getRequestDueTime());
if("HoldToOkJob".equals(inventorymoveRecordMainDO.getBusinessType())){ if ("HoldToOkJob".equals(inventorymoveRecordMainDO.getBusinessType())) {
number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToOkRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToOkRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToOkRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToOkRecord");
} else if("OkToHoldJob".equals(inventorymoveRecordMainDO.getBusinessType())){ } else if ("OkToHoldJob".equals(inventorymoveRecordMainDO.getBusinessType())) {
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("OkToHoldRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("OkToHoldRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToHoldRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToHoldRecord");
} else if("HoldToScrapJob".equals(inventorymoveRecordMainDO.getBusinessType())){ } else if ("HoldToScrapJob".equals(inventorymoveRecordMainDO.getBusinessType())) {
number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToScrapRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToScrapRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToScrapRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToScrapRecord");
} else if("ScrapToHoldJob".equals(inventorymoveRecordMainDO.getBusinessType())){ } else if ("ScrapToHoldJob".equals(inventorymoveRecordMainDO.getBusinessType())) {
number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("ScrapToHoldRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("ScrapToHoldRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapToHoldRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapToHoldRecord");
} else if("OkToScrapJob".equals(inventorymoveRecordMainDO.getBusinessType())){ } else if ("OkToScrapJob".equals(inventorymoveRecordMainDO.getBusinessType())) {
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("OkToScrapRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("OkToScrapRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord");
}else {
number = serialNumberApi.generateCode(RuleCodeEnum.INVENTORY_MOVE_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("InventoryMoveRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InventoryMoveRecord");
} }
inventorymoveRecordMainDO.setNumber(number); inventorymoveRecordMainDO.setNumber(number);
inventorymoveRecordMainDO.setBusinessType(businesstypeDO.getCode()); inventorymoveRecordMainDO.setBusinessType(businesstypeDO.getCode());
@ -290,84 +295,78 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
List<InventorymoveRecordDetailDO> inventorymoveRecordDetailDOList = new ArrayList<>(); List<InventorymoveRecordDetailDO> inventorymoveRecordDetailDOList = new ArrayList<>();
//库存事务 //库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>(); List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
subList.forEach(subListItem -> { for (InventorymoveJobDetailUpdateReqVO inventorymoveJobDetailUpdateReqVO : inventorymoveJobDetailUpdateReqVOList) {
inventorymoveJobDetailUpdateReqVOList.forEach(DetailUpdateItem -> { InventorymoveRecordDetailDO inventorymoveRecordDetailDO = new InventorymoveRecordDetailDO();
// 匹配任务子表与参数中子表 BeanUtils.copyProperties(inventorymoveJobDetailUpdateReqVO, inventorymoveRecordDetailDO);
if (DetailUpdateItem.getId().equals(subListItem.getId())) { inventorymoveRecordDetailDO.setJobDetailId(inventorymoveJobDetailUpdateReqVO.getId().toString());
List<Map<String,String>> recordList = DetailUpdateItem.getRecordList(); inventorymoveRecordDetailDO.setId(null);
recordList.forEach(recordListItem -> {InventorymoveRecordDetailDO inventorymoveRecordDetailDO = new InventorymoveRecordDetailDO(); inventorymoveRecordDetailDO.setCreator(null);
BeanUtils.copyProperties(DetailUpdateItem, inventorymoveRecordDetailDO); inventorymoveRecordDetailDO.setCreateTime(LocalDateTime.now());
inventorymoveRecordDetailDO.setJobDetailId(DetailUpdateItem.getId().toString()); inventorymoveRecordDetailDO.setUpdater(null);
inventorymoveRecordDetailDO.setId(null); inventorymoveRecordDetailDO.setUpdateTime(null);
inventorymoveRecordDetailDO.setCreator(null); inventorymoveRecordDetailDO.setNumber(inventorymoveRecordMainDO.getNumber());
inventorymoveRecordDetailDO.setCreateTime(LocalDateTime.now()); inventorymoveRecordDetailDO.setInterfaceType(inventorymoveRecordMainDO.getInterfaceType());
inventorymoveRecordDetailDO.setUpdater(null); inventorymoveRecordDetailDO.setMasterId(inventorymoveRecordMainDO.getId().toString());
inventorymoveRecordDetailDO.setUpdateTime(null); inventorymoveRecordDetailDO.setQty(inventorymoveJobDetailUpdateReqVO.getHandleQty());
inventorymoveRecordDetailDO.setNumber(inventorymoveRecordMainDO.getNumber()); inventorymoveRecordDetailDO.setToPackingNumber(inventorymoveJobDetailUpdateReqVO.getToPackingNumber());
inventorymoveRecordDetailDO.setInterfaceType(inventorymoveRecordMainDO.getInterfaceType()); inventorymoveRecordDetailDO.setToContainerNumber(inventorymoveJobDetailUpdateReqVO.getToContainerNumber());
inventorymoveRecordDetailDO.setMasterId(inventorymoveRecordMainDO.getId().toString()); inventorymoveRecordDetailDO.setToBatch(inventorymoveJobDetailUpdateReqVO.getToBatch());
inventorymoveRecordDetailDO.setQty(new BigDecimal(recordListItem.get("handleQty"))); inventorymoveRecordDetailDO.setToLocationCode(inventorymoveJobDetailUpdateReqVO.getToLocationCode());
inventorymoveRecordDetailDO.setToPackingNumber(recordListItem.get("toPackingNumber")==null?"":recordListItem.get("toPackingNumber")); LocationDO toLocationDO = locationService.selectLocation(inventorymoveJobDetailUpdateReqVO.getToLocationCode());
inventorymoveRecordDetailDO.setToContainerNumber(recordListItem.get("toContainerNumber")==null?"":recordListItem.get("toContainerNumber")); inventorymoveRecordDetailDO.setToAreaCode(toLocationDO.getAreaCode());
inventorymoveRecordDetailDO.setToBatch(recordListItem.get("toBatch")==null?"":recordListItem.get("toBatch")); inventorymoveRecordDetailDO.setToLocationGroupCode(toLocationDO.getLocationGroupCode());
inventorymoveRecordDetailDO.setToLocationCode(recordListItem.get("toLocationCode")); LocationDO fromLocationDO = locationService.selectLocation(inventorymoveRecordDetailDO.getFromLocationCode());
LocationDO toLocationDO = locationService.selectLocation(recordListItem.get("toLocationCode")); inventorymoveRecordDetailDO.setFromAreaCode(fromLocationDO.getAreaCode());
inventorymoveRecordDetailDO.setToAreaCode(toLocationDO.getAreaCode()); inventorymoveRecordDetailDO.setFromLocationGroupCode(fromLocationDO.getLocationGroupCode());
inventorymoveRecordDetailDO.setToLocationGroupCode(toLocationDO.getLocationGroupCode()); inventorymoveRecordDetailDO.setToInventoryStatus(inventorymoveJobDetailUpdateReqVO.getToInventoryStatus());
LocationDO fromLocationDO = locationService.selectLocation(inventorymoveRecordDetailDO.getFromLocationCode()); inventorymoveRecordDetailDO.setFromPackingNumber(inventorymoveJobDetailUpdateReqVO.getPackingNumber());
inventorymoveRecordDetailDO.setFromAreaCode(fromLocationDO.getAreaCode()); inventorymoveRecordDetailDO.setFromContainerNumber(inventorymoveJobDetailUpdateReqVO.getContainerNumber());
inventorymoveRecordDetailDO.setFromLocationGroupCode(fromLocationDO.getLocationGroupCode()); inventorymoveRecordDetailDO.setFromAreaCode(inventorymoveJobMainDO.getFromAreaCodes());
inventorymoveRecordDetailDO.setToInventoryStatus(recordListItem.get("toInventoryStatus")); inventorymoveRecordDetailDO.setToAreaCode(inventorymoveJobMainDO.getToAreaCodes());
inventorymoveRecordDetailDO.setFromPackingNumber(DetailUpdateItem.getPackingNumber()); inventorymoveRecordDetailDO.setFromBatch(inventorymoveJobDetailUpdateReqVO.getBatch());
inventorymoveRecordDetailDO.setFromContainerNumber(DetailUpdateItem.getContainerNumber()); inventorymoveRecordDetailDO.setInterfaceType(inventorymoveRecordMainDO.getInterfaceType());
inventorymoveRecordDetailDO.setFromAreaCode(inventorymoveJobMainDO.getFromAreaCodes()); inventorymoveRecordDetailDO.setFromInventoryStatus(inventorymoveJobDetailUpdateReqVO.getInventoryStatus());
inventorymoveRecordDetailDO.setToAreaCode(inventorymoveJobMainDO.getToAreaCodes()); inventorymoveRecordDetailDOList.add(inventorymoveRecordDetailDO);
inventorymoveRecordDetailDO.setFromBatch(DetailUpdateItem.getBatch()); //添加库存事务list
inventorymoveRecordDetailDO.setInterfaceType(inventorymoveRecordMainDO.getInterfaceType()); // 入动作
inventorymoveRecordDetailDO.setFromInventoryStatus(DetailUpdateItem.getInventoryStatus()); TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
inventorymoveRecordDetailDOList.add(inventorymoveRecordDetailDO); BeanUtils.copyProperties(inventorymoveRecordDetailDO, transactionCreateReqVO);
//添加库存事务list TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(inventorymoveRecordMainDO.getInTransactionType());
// 入动作 transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO(); transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
BeanUtils.copyProperties(inventorymoveRecordDetailDO, transactionCreateReqVO); transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(inventorymoveRecordMainDO.getInTransactionType()); transactionCreateReqVO.setBusinessType(inventorymoveJobMainDO.getBusinessType());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId())); transactionCreateReqVO.setOwnerCode(inventorymoveRecordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction()); transactionCreateReqVO.setRecordNumber(inventorymoveRecordMainDO.getNumber());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode()); transactionCreateReqVO.setId(null);
transactionCreateReqVO.setBusinessType(inventorymoveJobMainDO.getBusinessType()); transactionCreateReqVO.setPackingNumber(inventorymoveJobDetailUpdateReqVO.getPackingNumber());
transactionCreateReqVO.setOwnerCode(inventorymoveRecordDetailDO.getFromOwnerCode()); transactionCreateReqVO.setBatch(inventorymoveJobDetailUpdateReqVO.getBatch());
transactionCreateReqVO.setRecordNumber(inventorymoveRecordMainDO.getNumber()); transactionCreateReqVO.setContainerNumber(inventorymoveJobDetailUpdateReqVO.getContainerNumber());
transactionCreateReqVO.setId(null); transactionCreateReqVO.setInventoryStatus(inventorymoveJobDetailUpdateReqVO.getInventoryStatus());
transactionCreateReqVO.setPackingNumber(DetailUpdateItem.getPackingNumber()); transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setBatch(DetailUpdateItem.getBatch()); transactionCreateReqVO.setLocationCode(inventorymoveJobDetailUpdateReqVO.getToLocationCode());
transactionCreateReqVO.setContainerNumber(DetailUpdateItem.getContainerNumber()); transactionCreateReqVOList.add(transactionCreateReqVO);
transactionCreateReqVO.setInventoryStatus(DetailUpdateItem.getInventoryStatus()); // 出动作
transactionCreateReqVO.setAmount(BigDecimal.ZERO); TransactionCreateReqVO transactionCreateReqVOOut = new TransactionCreateReqVO();
transactionCreateReqVO.setLocationCode(recordListItem.get("toLocationCode").toString()); BeanUtils.copyProperties(inventorymoveRecordDetailDO, transactionCreateReqVOOut);
transactionCreateReqVOList.add(transactionCreateReqVO); TransactiontypeDO transactiontypeDOOut = jobUtils.selectDocumentFromTransactionType(inventorymoveRecordMainDO.getOutTransactionType());
// 出动作 transactionCreateReqVOOut.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
TransactionCreateReqVO transactionCreateReqVOOut = new TransactionCreateReqVO(); transactionCreateReqVOOut.setInventoryAction(transactiontypeDOOut.getInventoryAction());
BeanUtils.copyProperties(inventorymoveRecordDetailDO, transactionCreateReqVOOut); transactionCreateReqVOOut.setTransactionType(transactiontypeDOOut.getCode());
TransactiontypeDO transactiontypeDOOut = jobUtils.selectDocumentFromTransactionType(inventorymoveRecordMainDO.getOutTransactionType()); transactionCreateReqVOOut.setBusinessType(inventorymoveJobMainDO.getBusinessType());
transactionCreateReqVOOut.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId())); transactionCreateReqVOOut.setOwnerCode(inventorymoveRecordDetailDO.getFromOwnerCode());
transactionCreateReqVOOut.setInventoryAction(transactiontypeDOOut.getInventoryAction()); transactionCreateReqVOOut.setRecordNumber(inventorymoveRecordMainDO.getNumber());
transactionCreateReqVOOut.setTransactionType(transactiontypeDOOut.getCode()); transactionCreateReqVOOut.setId(null);
transactionCreateReqVOOut.setBusinessType(inventorymoveJobMainDO.getBusinessType()); transactionCreateReqVOOut.setPackingNumber(inventorymoveJobDetailUpdateReqVO.getPackingNumber());
transactionCreateReqVOOut.setOwnerCode(inventorymoveRecordDetailDO.getFromOwnerCode()); transactionCreateReqVOOut.setBatch(inventorymoveJobDetailUpdateReqVO.getBatch());
transactionCreateReqVOOut.setRecordNumber(inventorymoveRecordMainDO.getNumber()); transactionCreateReqVOOut.setContainerNumber(inventorymoveJobDetailUpdateReqVO.getContainerNumber());
transactionCreateReqVOOut.setId(null); transactionCreateReqVOOut.setInventoryStatus(inventorymoveJobDetailUpdateReqVO.getInventoryStatus());
transactionCreateReqVOOut.setPackingNumber(DetailUpdateItem.getPackingNumber()); transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setBatch(DetailUpdateItem.getBatch()); transactionCreateReqVOOut.setLocationCode(inventorymoveJobDetailUpdateReqVO.getFromLocationCode());
transactionCreateReqVOOut.setContainerNumber(DetailUpdateItem.getContainerNumber()); transactionCreateReqVOList.add(transactionCreateReqVOOut);
transactionCreateReqVOOut.setInventoryStatus(DetailUpdateItem.getInventoryStatus()); };
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO); if(!inventorymoveRecordDetailDOList.isEmpty()){
transactionCreateReqVOOut.setLocationCode(subListItem.getFromLocationCode()); inventorymoveRecordDetailMapper.insertBatch(inventorymoveRecordDetailDOList);
transactionCreateReqVOList.add(transactionCreateReqVOOut);});
}
});
});
if(!inventorymoveRecordDetailDOList.isEmpty()) {
inventorymoveRecordDetailMapper.insertBatch(inventorymoveRecordDetailDOList);
} }
//增加库存事务 //增加库存事务
transactionService.createTransaction(transactionCreateReqVOList); transactionService.createTransaction(transactionCreateReqVOList);
@ -376,7 +375,7 @@ public class InventorymoveJobMainServiceImpl implements InventorymoveJobMainServ
//移除预计出 //移除预计出
expectoutService.deleteExpectoutByJobNumber(inventorymoveJobMainDO.getNumber()); expectoutService.deleteExpectoutByJobNumber(inventorymoveJobMainDO.getNumber());
//变更记录 //变更记录
trendsApi.createTrends(inventorymoveJobMainDO.getId(), inventorymoveJobMainDO.getBusinessType(), "执行了库存转移任务", TrendsTypeEnum.UPDATE); trendsApi.createTrends(inventorymoveJobMainDO.getId(),inventorymoveJobMainDO.getBusinessType(),"执行了库存转移任务",TrendsTypeEnum.UPDATE);
return number; return number;
} }
} }

26
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRecord/InventorymoveRecordMainServiceImpl.java

@ -77,33 +77,27 @@ public class InventorymoveRecordMainServiceImpl implements InventorymoveRecordMa
RecordsettingDO recordsettingDO = null; RecordsettingDO recordsettingDO = null;
BusinesstypeDO businesstypeDO = null; BusinesstypeDO businesstypeDO = null;
// 插入 // 插入
InventorymoveRecordMainDO inventorymoveRecordMain = InventorymoveRecordMainConvert.INSTANCE.convert(createReqVO);
inventorymoveRecordMainMapper.insert(inventorymoveRecordMain);
// 插入
InventorymoveRecordMainDO nventorymoveRecordMain = InventorymoveRecordMainConvert.INSTANCE.convert(createReqVO);
inventorymoveRecordMainMapper.insert(nventorymoveRecordMain);
InventorymoveRecordMainDO mainDO = InventorymoveRecordMainConvert.INSTANCE.convert(createReqVO); InventorymoveRecordMainDO mainDO = InventorymoveRecordMainConvert.INSTANCE.convert(createReqVO);
inventorymoveRecordMainMapper.insert(mainDO);
List<InventorymoveRecordDetailDO> subDOList = InventorymoveRecordMainConvert.INSTANCE.convertList03(createReqVO.getSubList()); List<InventorymoveRecordDetailDO> subDOList = InventorymoveRecordMainConvert.INSTANCE.convertList03(createReqVO.getSubList());
if("HoldToOkRequest".equals(mainDO.getBusinessType())){ if("HoldToOkRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToOkRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToOkRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToOkRecord");
} else if("OkToHoldRequest".equals(mainDO.getBusinessType())){ } else if("OkToHoldRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("OkToHoldRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToHoldRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToHoldRecord");
} else if("HoldToScrapRequest".equals(mainDO.getBusinessType())){ } else if("HoldToScrapRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("HoldToScrapRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToScrapRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("HoldToScrapRecord");
} else if("ScrapToHoldRequest".equals(mainDO.getBusinessType())){ } else if("ScrapToHoldRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("ScrapToHoldRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapToHoldRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapToHoldRecord");
} else if("OkToScrapRequest".equals(mainDO.getBusinessType())){ } else if("OkToScrapRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("OkToScrapRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord");
}else if("InventoryMoveRecord".equals(mainDO.getBusinessType())){
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode());
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InventoryMoveRecord");
} }
mainDO.setNumber(number); mainDO.setNumber(number);
mainDO.setBusinessType(businesstypeDO.getCode()); mainDO.setBusinessType(businesstypeDO.getCode());
@ -169,7 +163,7 @@ public class InventorymoveRecordMainServiceImpl implements InventorymoveRecordMa
//增加操作记录 //增加操作记录
trendsApi.createTrends(mainDO.getId(), "inventorymoveRecordMain", "增加了库存转移记录", TrendsTypeEnum.CREATE); trendsApi.createTrends(mainDO.getId(), "inventorymoveRecordMain", "增加了库存转移记录", TrendsTypeEnum.CREATE);
// 返回 // 返回
return inventorymoveRecordMain.getId(); return mainDO.getId();
} }
@Override @Override

234
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRequest/InventorymoveRequestMainServiceImpl.java

@ -150,37 +150,34 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
inventorymoveRequestDetailDO.setCreateTime(LocalDateTime.now()); inventorymoveRequestDetailDO.setCreateTime(LocalDateTime.now());
validatelocation(inventorymoveRequestMainDO, inventorymoveRequestDetailDO); validatelocation(inventorymoveRequestMainDO, inventorymoveRequestDetailDO);
ItembasicDO itembasicDO = validteitembasic(inventorymoveRequestDetailDO); ItembasicDO itembasicDO = validteitembasic(inventorymoveRequestDetailDO);
//校验库存余额是否存在
List<String> inventoryStatus = new ArrayList<>();
//隔离转合格申请 //隔离转合格申请
if ("HOLD".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "OK".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) { if ("HOLD".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "OK".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) {
inventoryStatus.add("HOLD");
String OkToScrapRequest = "HoldToOkRequest"; String OkToScrapRequest = "HoldToOkRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest); CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest);
} }
//合格转隔离申请 //合格转隔离申请
if ("OK".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "HOLD".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) { else if ("OK".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "HOLD".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) {
inventoryStatus.add("OK");
String OkToScrapRequest = "OkToHoldRequest"; String OkToScrapRequest = "OkToHoldRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest); CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest);
} }
//隔离转报废申请 //隔离转报废申请
if ("HOLD".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "SCRAP".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) { else if ("HOLD".equals(inventorymoveRequestDetailDO.getFromInventoryStatus()) && "SCRAP".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) {
inventoryStatus.add("HOLD");
String OkToScrapRequest = "HoldToScrapRequest"; String OkToScrapRequest = "HoldToScrapRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest); CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest);
} }
//报废转隔离申请 //报废转隔离申请
if ("SCRAP".equals(inventorymoveRequestDetailDO.getFromInventoryStatus())&& "HOLD".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) { else if ("SCRAP".equals(inventorymoveRequestDetailDO.getFromInventoryStatus())&& "HOLD".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) {
inventoryStatus.add("SCRAP");
String OkToScrapRequest = "ScrapToHoldRequest"; String OkToScrapRequest = "ScrapToHoldRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest); CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest);
} }
//合格转报废申请 //合格转报废申请
if ("OK".equals(inventorymoveRequestDetailDO.getFromInventoryStatus())&& "SCRAP".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) { else if ("OK".equals(inventorymoveRequestDetailDO.getFromInventoryStatus())&& "SCRAP".equals(inventorymoveRequestDetailDO.getToInventoryStatus())) {
inventoryStatus.add("SCRAP");
String OkToScrapRequest = "OkToScrapRequest"; String OkToScrapRequest = "OkToScrapRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest); CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,OkToScrapRequest);
}//库存转移申请
else {
String InventoryMoveRequest = "InventoryMoveRequest";
CreateBusinessTypeAndRequestSetting(inventorymoveRequestMainDO,inventorymoveRequestDetailDO,itembasicDO,InventoryMoveRequest);
} }
validtebalance(inventorymoveRequestDetailDO); validtebalance(inventorymoveRequestDetailDO);
inventorymoveRequestDetailDO.setToBatch(inventorymoveRequestDetailDO.getFromBatch()); inventorymoveRequestDetailDO.setToBatch(inventorymoveRequestDetailDO.getFromBatch());
@ -224,16 +221,14 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
@Override @Override
public void updateInventorymoveRequestMain(InventorymoveRequestMainUpdateReqVO updateReqVO) { public void updateInventorymoveRequestMain(InventorymoveRequestMainUpdateReqVO updateReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("MoveRequest");
// 校验存在 // 校验存在
validateInventorymoveRequestMainExists(updateReqVO.getId()); validateInventorymoveRequestMainExists(updateReqVO.getId());
// 更新 // 更新
InventorymoveRequestMainDO inventorymoveRequestMainDO = validatorToUpdate(updateReqVO); InventorymoveRequestMainDO inventorymoveRequestMainDO = validatorToUpdate(updateReqVO);
if (RequestStatusEnum.HANDLING.getCode().equals(inventorymoveRequestMainDO.getStatus())) { if (RequestStatusEnum.HANDLING.getCode().equals(inventorymoveRequestMainDO.getStatus())) {
this.generateJob(inventorymoveRequestMainDO, inventorymoveRequestDetailMapper.selectList(inventorymoveRequestMainDO.getId()));
} }
trendsApi.createTrends(requestsettingDO.getId(), "MoveRequest", "增加了库存移动申请", TrendsTypeEnum.CREATE); trendsApi.createTrends(inventorymoveRequestMainDO.getId(), "InventoryMoveRequest", "增加了库存移动申请", TrendsTypeEnum.CREATE);
} }
private InventorymoveRequestMainDO validatorToUpdate(InventorymoveRequestMainUpdateReqVO updateReqVO) { private InventorymoveRequestMainDO validatorToUpdate(InventorymoveRequestMainUpdateReqVO updateReqVO) {
@ -294,73 +289,6 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
return inventorymoveRequestMainMapper.selectList(exportReqVO); return inventorymoveRequestMainMapper.selectList(exportReqVO);
} }
/**
* 主表导入验证
*
* @param mainDo
* @return
*/
private String validateInventorymoveRequestMainImport(InventorymoveRequestMainDO mainDo) {
StringBuilder message = new StringBuilder();
try {
ValidationUtils.validate(validator, mainDo);
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
return message.toString();
}
/**
* 校验来源/目标库位基础信息
*
* @param detailDo
* @return
*/
private void validatelocation(InventorymoveRequestMainDO mainDO, InventorymoveRequestDetailDO detailDo) {
LocationDO fromLocationDO = locationService.selectLocation(detailDo.getFromLocationCode());
if (fromLocationDO != null) {
detailDo.setFromLocationCode(fromLocationDO.getCode());
mainDO.setFromWarehouseCode(fromLocationDO.getWarehouseCode());
mainDO.setFromLocationTypes(fromLocationDO.getType());
mainDO.setFromAreaCodes(fromLocationDO.getAreaCode());
}
LocationDO toLocationDO = locationService.selectLocation(detailDo.getToLocationCode());
if (toLocationDO != null) {
detailDo.setToLocationCode(toLocationDO.getCode());
mainDO.setToWarehouseCode(toLocationDO.getWarehouseCode());
mainDO.setToLocationTypes(fromLocationDO.getType());
mainDO.setToAreaCodes(toLocationDO.getAreaCode());
}
}
/**
* 校验物品基础信息
*
* @param detailDo
* @return
*/
private ItembasicDO validteitembasic(InventorymoveRequestDetailDO detailDo) {
ItembasicDO itembasicDO = itembasicService.selectItembasic(detailDo.getItemCode());
detailDo.setItemDesc1(itembasicDO.getDesc1());
detailDo.setItemDesc2(itembasicDO.getDesc2());
detailDo.setItemName(itembasicDO.getName());
detailDo.setUom(itembasicDO.getUom());
detailDo.setProjectCode(itembasicDO.getProject());
return itembasicDO;
}
/**
* 校验库存余额是否存在
*
* @param detailDo
*/
private void validtebalance(InventorymoveRequestDetailDO detailDo) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add(detailDo.getFromInventoryStatus());
jobUtils.selectlocationReturnManagementAccuracy(detailDo.getItemCode(), detailDo.getFromPackingNumber()
, detailDo.getFromBatch(), detailDo.getFromLocationCode(), inventoryStatus);
}
/** /**
* 导入子表校验 * 导入子表校验
* @param mainDO * @param mainDO
@ -394,9 +322,7 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
// mainDo.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses()); // mainDo.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
// } // }
//隔离转合格申请 //隔离转合格申请
if ("HOLD".equals(detailDo.getFromInventoryStatus())) { if ("HOLD".equals(detailDo.getFromInventoryStatus()) && "OK".equals(detailDo.getToInventoryStatus())) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add("HOLD");
String number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_OK_REQUEST.getCode());
detailDo.setNumber(number); detailDo.setNumber(number);
// 校验业务类型 // 校验业务类型
@ -416,11 +342,8 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
mainDO.setRequestTime(LocalDateTime.now()); mainDO.setRequestTime(LocalDateTime.now());
} }
} }
//合格转隔离申请 //合格转隔离申请
if ("OK".equals(detailDo.getFromInventoryStatus())) { else if ("OK".equals(detailDo.getFromInventoryStatus()) && "HOLD".equals(detailDo.getToInventoryStatus())) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add("OK");
String number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_HOLD_REQUEST.getCode());
mainDO.setNumber(number); mainDO.setNumber(number);
// 校验业务类型 // 校验业务类型
@ -439,11 +362,8 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
} }
} }
//隔离转报废申请 //隔离转报废申请
if ("HOLD".equals(detailDo.getFromInventoryStatus())) { else if ("HOLD".equals(detailDo.getFromInventoryStatus()) && "SCRAP".equals(detailDo.getToInventoryStatus())) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add("HOLD");
String number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.HOLD_TO_SCRAP_REQUEST.getCode());
mainDO.setNumber(number); mainDO.setNumber(number);
// 校验业务类型 // 校验业务类型
@ -462,11 +382,8 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
} }
} }
//报废转隔离申请 //报废转隔离申请
if ("SCRAP".equals(detailDo.getFromInventoryStatus())) { else if ("SCRAP".equals(detailDo.getFromInventoryStatus()) && "HOLD".equals(detailDo.getToInventoryStatus())) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add("SCRAP");
String number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_TO_HOLD_REQUEST.getCode());
mainDO.setNumber(number); mainDO.setNumber(number);
// 校验业务类型 // 校验业务类型
@ -485,9 +402,28 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
} }
} }
//合格转报废 //合格转报废
if ("Ok".equals(detailDo.getFromInventoryStatus())) { else if ("OK".equals(detailDo.getFromInventoryStatus()) && "SCRAP".equals(detailDo.getToInventoryStatus())) {
String number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_REQUEST.getCode());
mainDO.setNumber(number);
// 校验业务类型
try {
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRequest");
mainDO.setBusinessType(businesstypeDO.getCode());
validationBusinesstype(detailDo,businesstypeDO,messageDetail);
} catch (ServiceException ex) {
messageDetail += ex.getMessage() + ",";
}
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("OkToScrapRequest");
if (requestsettingDO != null) {
mainDO.setAutoAgree(requestsettingDO.getAutoAgree());
mainDO.setAutoCommit(requestsettingDO.getAutoCommit());
mainDO.setAutoExecute(requestsettingDO.getAutoExecute());
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
}
}
//合格转报废
else if ("OK".equals(detailDo.getFromInventoryStatus()) && "SCRAP".equals(detailDo.getToInventoryStatus())) {
List<String> inventoryStatus = new ArrayList<>(); List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add("SCRAP"); inventoryStatus.add("SCRAP");
String number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_REQUEST.getCode());
@ -497,7 +433,7 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
try { try {
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRequest"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRequest");
mainDO.setBusinessType(businesstypeDO.getCode()); mainDO.setBusinessType(businesstypeDO.getCode());
validationBusinesstype(detailDo,businesstypeDO,messageDetail); validationBusinesstype(detailDo, businesstypeDO, messageDetail);
} catch (ServiceException ex) { } catch (ServiceException ex) {
messageDetail += ex.getMessage() + ","; messageDetail += ex.getMessage() + ",";
} }
@ -508,7 +444,28 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
mainDO.setAutoExecute(requestsettingDO.getAutoExecute()); mainDO.setAutoExecute(requestsettingDO.getAutoExecute());
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
} }
}//库存转移申请
else {
String number = serialNumberApi.generateCode(RuleCodeEnum.INVENTORY_MOVE_REQUEST.getCode());
mainDO.setNumber(number);
// 校验业务类型
try {
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InventoryMoveRequest");
mainDO.setBusinessType(businesstypeDO.getCode());
validationBusinesstype(detailDo,businesstypeDO,messageDetail);
} catch (ServiceException ex) {
messageDetail += ex.getMessage() + ",";
}
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("InventoryMoveRequest");
if (requestsettingDO != null) {
mainDO.setAutoAgree(requestsettingDO.getAutoAgree());
mainDO.setAutoCommit(requestsettingDO.getAutoCommit());
mainDO.setAutoExecute(requestsettingDO.getAutoExecute());
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
}
} }
try { try {
validtebalance(detailDo); validtebalance(detailDo);
} catch (Exception ex) { } catch (Exception ex) {
@ -643,6 +600,10 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("OkToScrapRecord"); recordsettingDO = recordsettingService.selectRecordsettingExist("OkToScrapRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapRecord");
}else {
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_RECORD.getCode());
recordsettingDO = recordsettingService.selectRecordsettingExist("InventoryMoveRecord");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InventoryMoveRecord");
} }
inventorymoveRecordMainCreateReqVO.setNumber(number); inventorymoveRecordMainCreateReqVO.setNumber(number);
inventorymoveRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode()); inventorymoveRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
@ -699,6 +660,10 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_JOB.getCode()); number = serialNumberApi.generateCode(RuleCodeEnum.OK_TO_SCRAP_JOB.getCode());
jobsettingDO = jobsettingService.selectJobsettingExist("OkToScrapJob"); jobsettingDO = jobsettingService.selectJobsettingExist("OkToScrapJob");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapJob"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("OkToScrapJob");
}else {
number = serialNumberApi.generateCode(RuleCodeEnum.INVENTORY_MOVE_JOB.getCode());
jobsettingDO = jobsettingService.selectJobsettingExist("InventoryMoveJob");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InventoryMoveJob");
} }
inventorymoveJobMainDO.setNumber(number); inventorymoveJobMainDO.setNumber(number);
inventorymoveJobMainDO.setRequestTime(mainDO.getRequestTime()); inventorymoveJobMainDO.setRequestTime(mainDO.getRequestTime());
@ -893,4 +858,73 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
public List<InventorymoveRequestMainDO> getInventorymoveRequestMainList(CustomConditions conditions) { public List<InventorymoveRequestMainDO> getInventorymoveRequestMainList(CustomConditions conditions) {
return inventorymoveRequestMainMapper.selectSeniorList(conditions); return inventorymoveRequestMainMapper.selectSeniorList(conditions);
} }
/**
* 主表导入验证
*
* @param mainDo
* @return
*/
private String validateInventorymoveRequestMainImport(InventorymoveRequestMainDO mainDo) {
StringBuilder message = new StringBuilder();
try {
ValidationUtils.validate(validator, mainDo);
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
return message.toString();
}
/**
* 校验来源/目标库位基础信息
*
* @param detailDo
* @return
*/
private void validatelocation(InventorymoveRequestMainDO mainDO, InventorymoveRequestDetailDO detailDo) {
LocationDO fromLocationDO = locationService.selectLocation(detailDo.getFromLocationCode());
if (fromLocationDO != null) {
detailDo.setFromLocationCode(fromLocationDO.getCode());
mainDO.setFromWarehouseCode(fromLocationDO.getWarehouseCode());
mainDO.setFromLocationTypes(fromLocationDO.getType());
mainDO.setFromAreaCodes(fromLocationDO.getAreaCode());
}
LocationDO toLocationDO = locationService.selectLocation(detailDo.getToLocationCode());
if (toLocationDO != null) {
detailDo.setToLocationCode(toLocationDO.getCode());
mainDO.setToWarehouseCode(toLocationDO.getWarehouseCode());
mainDO.setToLocationTypes(fromLocationDO.getType());
mainDO.setToAreaCodes(toLocationDO.getAreaCode());
}
}
/**
* 校验物品基础信息
*
* @param detailDo
* @return
*/
private ItembasicDO validteitembasic(InventorymoveRequestDetailDO detailDo) {
ItembasicDO itembasicDO = itembasicService.selectItembasic(detailDo.getItemCode());
detailDo.setItemDesc1(itembasicDO.getDesc1());
detailDo.setItemDesc2(itembasicDO.getDesc2());
detailDo.setItemName(itembasicDO.getName());
detailDo.setUom(itembasicDO.getUom());
detailDo.setProjectCode(itembasicDO.getProject());
return itembasicDO;
}
/**
* 校验库存余额是否存在
*
* @param detailDo
*/
private void validtebalance(InventorymoveRequestDetailDO detailDo) {
List<String> inventoryStatus = new ArrayList<>();
inventoryStatus.add(detailDo.getFromInventoryStatus());
jobUtils.selectlocationReturnManagementAccuracy(detailDo.getItemCode(), detailDo.getFromPackingNumber()
, detailDo.getFromBatch(), detailDo.getFromLocationCode(), inventoryStatus);
}
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java

@ -468,9 +468,11 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
putawayRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getToLocationCode()); putawayRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getToLocationCode());
putawayRequestDetailCreateReqVO.setInventoryStatus("OK"); putawayRequestDetailCreateReqVO.setInventoryStatus("OK");
putawayRequestDetailCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); putawayRequestDetailCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
putawayRequestDetailCreateReqVO.setConcurrencyStamp(1);
putawayRequestDetailCreateReqVOList.add(putawayRequestDetailCreateReqVO); putawayRequestDetailCreateReqVOList.add(putawayRequestDetailCreateReqVO);
} }
putawayRequestMainCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); putawayRequestMainCreateReqVO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
putawayRequestMainCreateReqVO.setConcurrencyStamp(1);
putawayRequestMainCreateReqVO.setSubList(putawayRequestDetailCreateReqVOList); putawayRequestMainCreateReqVO.setSubList(putawayRequestDetailCreateReqVOList);
putawayRequestMainService.createPutawayRequestMain(putawayRequestMainCreateReqVO); putawayRequestMainService.createPutawayRequestMain(putawayRequestMainCreateReqVO);
} }

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java

@ -515,6 +515,7 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_JOB.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_JOB.getCode());
purchasereceiptJobMainDO.setNumber(number); purchasereceiptJobMainDO.setNumber(number);
purchasereceiptJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); purchasereceiptJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
purchasereceiptJobMainDO.setConcurrencyStamp(1);
//增加业务类型 //增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReceiptJob"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReceiptJob");
purchasereceiptJobMainDO.setBusinessType(businesstypeDO.getCode()); purchasereceiptJobMainDO.setBusinessType(businesstypeDO.getCode());

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereturnRequest/PurchasereturnRequestMainServiceImpl.java

@ -121,6 +121,7 @@ public class PurchasereturnRequestMainServiceImpl implements PurchasereturnReque
purchasereturnRequestMainMapper.insert(mainDO); purchasereturnRequestMainMapper.insert(mainDO);
for (PurchasereturnRequestDetailDO detailDO : subDOList) { for (PurchasereturnRequestDetailDO detailDO : subDOList) {
detailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); detailDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
detailDO.setConcurrencyStamp(1);
detailDO.setMasterId(mainDO.getId()); detailDO.setMasterId(mainDO.getId());
detailDO.setNumber(number); detailDO.setNumber(number);
} }
@ -374,6 +375,7 @@ public class PurchasereturnRequestMainServiceImpl implements PurchasereturnReque
purchasereturnJobMainDO.setAllowModifyBatch(jobsettingDO.getAllowModifyBach()); purchasereturnJobMainDO.setAllowModifyBatch(jobsettingDO.getAllowModifyBach());
purchasereturnJobMainDO.setRequestTime(mainDO.getRequestTime()); purchasereturnJobMainDO.setRequestTime(mainDO.getRequestTime());
purchasereturnJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); purchasereturnJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
purchasereturnJobMainDO.setConcurrencyStamp(1);
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReturnRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReturnRequest");
purchasereturnJobMainDO.setBusinessType(businesstypeDO.getCode()); purchasereturnJobMainDO.setBusinessType(businesstypeDO.getCode());
purchasereturnJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses()); purchasereturnJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/putawayRequest/PutawayRequestMainServiceImpl.java

@ -360,6 +360,7 @@ public class PutawayRequestMainServiceImpl implements PutawayRequestMainService
putawayJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses()); putawayJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());
putawayJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses()); putawayJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
putawayJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null); putawayJobMainDO.setId(null).setCreator(null).setCreateTime(null).setUpdater(null).setUpdateTime(null);
putawayJobMainDO.setConcurrencyStamp(1);
putawayJobMainMapper.insert(putawayJobMainDO); putawayJobMainMapper.insert(putawayJobMainDO);
List<PutawayJobDetailDO> putawayJobDetailDOList = new ArrayList<>(); List<PutawayJobDetailDO> putawayJobDetailDOList = new ArrayList<>();
for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) { for(PutawayRequestDetailDO putawayRequestDetailDO : detailDOList) {

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

@ -372,7 +372,7 @@ public class JobUtils {
if (ifOutLocationType) { if (ifOutLocationType) {
return true; return true;
} else { } else {
throw exception(LOCATION_EXCEPTION, "出库库位" + plocationCode + "的库位类型" + locationDO.getType() + "与业务类型与业务类型" + throw exception(LOCATION_EXCEPTION, "出库库位" + plocationCode + "的库位类型" + locationDO.getType() + "与业务类型" +
businesstypeDO.getName() + "的出库库位类型" + businesstypeDO.getOutLocationTypes() + "不一致"); businesstypeDO.getName() + "的出库库位类型" + businesstypeDO.getOutLocationTypes() + "不一致");
} }
} }

Loading…
Cancel
Save