Browse Source

盘点任务执行。

master
刘忱 2 years ago
parent
commit
a48f289643
  1. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailUpdateReqVO.java
  2. 9
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainUpdateReqVO.java
  3. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailBaseVO.java
  4. 38
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailBaseVO.java
  5. 40
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailExcelVO.java
  6. 34
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailExportReqVO.java
  7. 37
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailPageReqVO.java
  8. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainBaseVO.java
  9. 14
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainExcelVO.java
  10. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainExportReqVO.java
  11. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainPageReqVO.java
  12. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRecord/CountRecordDetailDO.java
  13. 43
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestDetailDO.java
  14. 19
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countadjustRequest/CountadjustRequestMainDO.java
  15. 58
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countadjustRequest/CountadjustRequestDetailMapper.java
  16. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countadjustRequest/CountadjustRequestMainMapper.java
  17. 133
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countJob/CountJobMainServiceImpl.java
  18. 47
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainServiceImpl.java
  19. 34
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countRequest/CountRequestMainServiceImpl.java
  20. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java
  21. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailUpdateReqVO.java

@ -3,10 +3,14 @@ package com.win.module.wms.controller.countJob.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;
@Schema(description = "管理后台 - 盘点任务子更新 Request VO") @Schema(description = "管理后台 - 盘点任务子更新 Request VO")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class CountJobDetailUpdateReqVO extends CountJobDetailBaseVO { public class CountJobDetailUpdateReqVO extends CountJobDetailBaseVO {
@Schema(description = "盘点数量")
private BigDecimal countQty;
} }

9
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainUpdateReqVO.java

@ -1,7 +1,12 @@
package com.win.module.wms.controller.countJob.vo; package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import javax.validation.Valid;
import java.util.List;
@Schema(description = "管理后台 - 盘点任务主更新 Request VO") @Schema(description = "管理后台 - 盘点任务主更新 Request VO")
@Data @Data
@ -9,4 +14,6 @@ import lombok.*;
@ToString(callSuper = true) @ToString(callSuper = true)
public class CountJobMainUpdateReqVO extends CountJobMainBaseVO { public class CountJobMainUpdateReqVO extends CountJobMainBaseVO {
@Schema(description = "子表数据")
private List<@Valid CountJobDetailUpdateReqVO> subList;
} }

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailBaseVO.java

@ -1,14 +1,12 @@
package com.win.module.wms.controller.countRecord.vo; package com.win.module.wms.controller.countRecord.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.math.BigDecimal;
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;

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

@ -1,16 +1,12 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.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.math.BigDecimal;
import java.math.BigDecimal; import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
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;
@ -29,14 +25,14 @@ public class CountadjustRequestDetailBaseVO {
private String countDetailNumber; private String countDetailNumber;
@Schema(description = "货主代码") @Schema(description = "货主代码")
private String ownerlCode; private String ownerCode;
@Schema(description = "包装号", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "包装号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "包装号不能为空") @NotNull(message = "包装号不能为空")
private String packinglNumber; private String packingNumber;
@Schema(description = "器具号") @Schema(description = "器具号")
private String containerlNumber; private String containerNumber;
@Schema(description = "批次", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "批次", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "批次不能为空") @NotNull(message = "批次不能为空")
@ -44,22 +40,22 @@ public class CountadjustRequestDetailBaseVO {
@Schema(description = "库位代码", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "库位代码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "库位代码不能为空") @NotNull(message = "库位代码不能为空")
private String locationlCode; private String locationCode;
@Schema(description = "库存状态") @Schema(description = "库存状态")
private String inventorylStatus; private String inventoryStatus;
@Schema(description = "库存数量", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "库存数量", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "库存数量不能为空") @NotNull(message = "库存数量不能为空")
private BigDecimal inventorylQty; private BigDecimal inventoryQty;
@Schema(description = "盘点数量", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "盘点数量", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "盘点数量不能为空") @NotNull(message = "盘点数量不能为空")
private BigDecimal countlQty; private BigDecimal countQty;
@Schema(description = "调整数量", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "调整数量", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "调整数量不能为空") @NotNull(message = "调整数量不能为空")
private BigDecimal adjustlQty; private BigDecimal adjustQty;
@Schema(description = "单据号") @Schema(description = "单据号")
private String number; private String number;
@ -76,16 +72,16 @@ public class CountadjustRequestDetailBaseVO {
private String creator; private String creator;
@Schema(description = "物品名称") @Schema(description = "物品名称")
private String itemlName; private String itemName;
@Schema(description = "物品描述1") @Schema(description = "物品描述1")
private String itemlDesc1; private String itemDesc1;
@Schema(description = "物品描述2") @Schema(description = "物品描述2")
private String itemlDesc2; private String itemDesc2;
@Schema(description = "项目代码") @Schema(description = "项目代码")
private String projectlCode; private String projectCode;
@Schema(description = "数量") @Schema(description = "数量")
private BigDecimal qty; private BigDecimal qty;
@ -101,6 +97,6 @@ public class CountadjustRequestDetailBaseVO {
private String updater; private String updater;
@Schema(description = "物品代码") @Schema(description = "物品代码")
private String itemlCode; private String itemCode;
} }

40
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailExcelVO.java

@ -1,18 +1,12 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat; import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert; import com.win.framework.excel.core.convert.DictConvert;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/** /**
@ -27,32 +21,32 @@ public class CountadjustRequestDetailExcelVO {
private String countDetailNumber; private String countDetailNumber;
@ExcelProperty("货主代码") @ExcelProperty("货主代码")
private String ownerlCode; private String ownerCode;
@ExcelProperty("包装号") @ExcelProperty("包装号")
private String packinglNumber; private String packingNumber;
@ExcelProperty("器具号") @ExcelProperty("器具号")
private String containerlNumber; private String containerNumber;
@ExcelProperty("批次") @ExcelProperty("批次")
private String batch; private String batch;
@ExcelProperty("库位代码") @ExcelProperty("库位代码")
private String locationlCode; private String locationCode;
@ExcelProperty(value = "库存状态", converter = DictConvert.class) @ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 @DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventorylStatus; private String inventoryStatus;
@ExcelProperty("库存数量") @ExcelProperty("库存数量")
private BigDecimal inventorylQty; private BigDecimal inventoryQty;
@ExcelProperty("盘点数量") @ExcelProperty("盘点数量")
private BigDecimal countlQty; private BigDecimal countQty;
@ExcelProperty("调整数量") @ExcelProperty("调整数量")
private BigDecimal adjustlQty; private BigDecimal adjustQty;
@ExcelProperty("单据号") @ExcelProperty("单据号")
private String number; private String number;
@ -67,16 +61,16 @@ public class CountadjustRequestDetailExcelVO {
private String creator; private String creator;
@ExcelProperty("物品名称") @ExcelProperty("物品名称")
private String itemlName; private String itemName;
@ExcelProperty("物品描述1") @ExcelProperty("物品描述1")
private String itemlDesc1; private String itemDesc1;
@ExcelProperty("物品描述2") @ExcelProperty("物品描述2")
private String itemlDesc2; private String itelDesc2;
@ExcelProperty("项目代码") @ExcelProperty("项目代码")
private String projectlCode; private String projectCode;
@ExcelProperty("数量") @ExcelProperty("数量")
private BigDecimal qty; private BigDecimal qty;
@ -92,6 +86,6 @@ public class CountadjustRequestDetailExcelVO {
private String updater; private String updater;
@ExcelProperty("物品代码") @ExcelProperty("物品代码")
private String itemlCode; private String itemCode;
} }

34
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailExportReqVO.java

@ -1,13 +1,11 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import lombok.*; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime; import java.time.LocalDateTime;
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;
@ -19,31 +17,31 @@ public class CountadjustRequestDetailExportReqVO {
private String countDetailNumber; private String countDetailNumber;
@Schema(description = "货主代码") @Schema(description = "货主代码")
private String ownerlCode; private String ownerCode;
@Schema(description = "包装号") @Schema(description = "包装号")
private String packinglNumber; private String packingNumber;
@Schema(description = "器具号") @Schema(description = "器具号")
private String containerlNumber; private String containerNumber;
@Schema(description = "批次") @Schema(description = "批次")
private String batch; private String batch;
@Schema(description = "库位代码") @Schema(description = "库位代码")
private String locationlCode; private String locationCode;
@Schema(description = "库存状态") @Schema(description = "库存状态")
private String inventorylStatus; private String inventoryStatus;
@Schema(description = "库存数量") @Schema(description = "库存数量")
private BigDecimal inventorylQty; private BigDecimal inventoryQty;
@Schema(description = "盘点数量") @Schema(description = "盘点数量")
private BigDecimal countlQty; private BigDecimal countQty;
@Schema(description = "调整数量") @Schema(description = "调整数量")
private BigDecimal adjustlQty; private BigDecimal adjustQty;
@Schema(description = "单据号") @Schema(description = "单据号")
private String number; private String number;
@ -59,16 +57,16 @@ public class CountadjustRequestDetailExportReqVO {
private String creator; private String creator;
@Schema(description = "物品名称") @Schema(description = "物品名称")
private String itemlName; private String itemName;
@Schema(description = "物品描述1") @Schema(description = "物品描述1")
private String itemlDesc1; private String itemDesc1;
@Schema(description = "物品描述2") @Schema(description = "物品描述2")
private String itemlDesc2; private String itemDesc2;
@Schema(description = "项目代码") @Schema(description = "项目代码")
private String projectlCode; private String projectCode;
@Schema(description = "数量") @Schema(description = "数量")
private BigDecimal qty; private BigDecimal qty;
@ -84,6 +82,6 @@ public class CountadjustRequestDetailExportReqVO {
private String updater; private String updater;
@Schema(description = "物品代码") @Schema(description = "物品代码")
private String itemlCode; private String itemCode;
} }

37
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestDetailPageReqVO.java

@ -1,12 +1,13 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam; import com.win.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDateTime; 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;
@ -21,31 +22,31 @@ public class CountadjustRequestDetailPageReqVO extends PageParam {
private String countDetailNumber; private String countDetailNumber;
@Schema(description = "货主代码") @Schema(description = "货主代码")
private String ownerlCode; private String ownerCode;
@Schema(description = "包装号") @Schema(description = "包装号")
private String packinglNumber; private String packingNumber;
@Schema(description = "器具号") @Schema(description = "器具号")
private String containerlNumber; private String containerNumber;
@Schema(description = "批次") @Schema(description = "批次")
private String batch; private String batch;
@Schema(description = "库位代码") @Schema(description = "库位代码")
private String locationlCode; private String locationCode;
@Schema(description = "库存状态") @Schema(description = "库存状态")
private String inventorylStatus; private String inventoryStatus;
@Schema(description = "库存数量") @Schema(description = "库存数量")
private BigDecimal inventorylQty; private BigDecimal inventoryQty;
@Schema(description = "盘点数量") @Schema(description = "盘点数量")
private BigDecimal countlQty; private BigDecimal countQty;
@Schema(description = "调整数量") @Schema(description = "调整数量")
private BigDecimal adjustlQty; private BigDecimal adjustQty;
@Schema(description = "单据号") @Schema(description = "单据号")
private String number; private String number;
@ -61,16 +62,16 @@ public class CountadjustRequestDetailPageReqVO extends PageParam {
private String creator; private String creator;
@Schema(description = "物品名称") @Schema(description = "物品名称")
private String itemlName; private String itemName;
@Schema(description = "物品描述1") @Schema(description = "物品描述1")
private String itemlDesc1; private String itemDesc1;
@Schema(description = "物品描述2") @Schema(description = "物品描述2")
private String itemlDesc2; private String itemDesc2;
@Schema(description = "项目代码") @Schema(description = "项目代码")
private String projectlCode; private String projectCode;
@Schema(description = "数量") @Schema(description = "数量")
private BigDecimal qty; private BigDecimal qty;
@ -86,6 +87,6 @@ public class CountadjustRequestDetailPageReqVO extends PageParam {
private String updater; private String updater;
@Schema(description = "物品代码") @Schema(description = "物品代码")
private String itemlCode; private String itemCode;
} }

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

@ -1,15 +1,12 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.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 java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
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;
/** /**
@ -22,10 +19,6 @@ public class CountadjustRequestMainBaseVO {
@Schema(description = "id", example = "id") @Schema(description = "id", example = "id")
private Long id; private Long id;
@Schema(description = "申请单号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "申请单号不能为空")
private String requestNumber;
@Schema(description = "盘点记录单号") @Schema(description = "盘点记录单号")
private String countRecordNumber; private String countRecordNumber;

14
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainExcelVO.java

@ -1,16 +1,11 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat; import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert; import com.win.framework.excel.core.convert.DictConvert;
import lombok.Data;
import java.time.LocalDateTime;
/** /**
@ -21,9 +16,6 @@ import com.win.framework.excel.core.convert.DictConvert;
@Data @Data
public class CountadjustRequestMainExcelVO { public class CountadjustRequestMainExcelVO {
@ExcelProperty("申请单号")
private String requestNumber;
@ExcelProperty("盘点记录单号") @ExcelProperty("盘点记录单号")
private String countRecordNumber; private String countRecordNumber;

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainExportReqVO.java

@ -1,21 +1,17 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam; import lombok.Data;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
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;
@Schema(description = "管理后台 - 盘点调整申请主 Excel 导出 Request VO,参数和 CountadjustRequestMainPageReqVO 是一致的") @Schema(description = "管理后台 - 盘点调整申请主 Excel 导出 Request VO,参数和 CountadjustRequestMainPageReqVO 是一致的")
@Data @Data
public class CountadjustRequestMainExportReqVO { public class CountadjustRequestMainExportReqVO {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "盘点记录单号") @Schema(description = "盘点记录单号")
private String countRecordNumber; private String countRecordNumber;

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRequest/vo/CountadjustRequestMainPageReqVO.java

@ -1,10 +1,12 @@
package com.win.module.wms.controller.countadjustRequest.vo; package com.win.module.wms.controller.countadjustRequest.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam; import com.win.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime; 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;
@ -15,9 +17,6 @@ import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY
@ToString(callSuper = true) @ToString(callSuper = true)
public class CountadjustRequestMainPageReqVO extends PageParam { public class CountadjustRequestMainPageReqVO extends PageParam {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "盘点记录单号") @Schema(description = "盘点记录单号")
private String countRecordNumber; private String countRecordNumber;

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countRecord/CountRecordDetailDO.java

@ -1,13 +1,13 @@
package com.win.module.wms.dal.dataobject.countRecord; package com.win.module.wms.dal.dataobject.countRecord;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.win.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 盘点记录子 DO * 盘点记录子 DO
@ -121,7 +121,7 @@ public class CountRecordDetailDO extends BaseDO {
/** /**
* 主表ID * 主表ID
*/ */
private String masterId; private Long masterId;
/** /**
* 单据号 * 单据号
*/ */

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

@ -1,15 +1,12 @@
package com.win.module.wms.dal.dataobject.countadjustRequest; package com.win.module.wms.dal.dataobject.countadjustRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sun.xml.bind.v2.TODO;
import com.win.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
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
@ -37,15 +34,15 @@ public class CountadjustRequestDetailDO extends BaseDO {
/** /**
* 货主代码 * 货主代码
*/ */
private String ownerlCode; private String ownerCode;
/** /**
* 包装号 * 包装号
*/ */
private String packinglNumber; private String packingNumber;
/** /**
* 器具号 * 器具号
*/ */
private String containerlNumber; private String containerNumber;
/** /**
* 批次 * 批次
*/ */
@ -53,25 +50,25 @@ public class CountadjustRequestDetailDO extends BaseDO {
/** /**
* 库位代码 * 库位代码
*/ */
private String locationlCode; private String locationCode;
/** /**
* 库存状态 * 库存状态
* *
* 枚举 {@link TODO inventory_status 对应的类} * 枚举 {@link TODO inventory_status 对应的类}
*/ */
private String inventorylStatus; private String inventoryStatus;
/** /**
* 库存数量 * 库存数量
*/ */
private BigDecimal inventorylQty; private BigDecimal inventoryQty;
/** /**
* 盘点数量 * 盘点数量
*/ */
private BigDecimal countlQty; private BigDecimal countQty;
/** /**
* 调整数量 * 调整数量
*/ */
private BigDecimal adjustlQty; private BigDecimal adjustQty;
/** /**
* 主表ID * 主表ID
*/ */
@ -87,23 +84,23 @@ public class CountadjustRequestDetailDO extends BaseDO {
/** /**
* 地点ID * 地点ID
*/ */
private Long sitelId; private Long siteId;
/** /**
* 物品名称 * 物品名称
*/ */
private String itemlName; private String itemName;
/** /**
* 物品描述1 * 物品描述1
*/ */
private String itemlDesc1; private String itemDesc1;
/** /**
* 物品描述2 * 物品描述2
*/ */
private String itemlDesc2; private String itemDesc2;
/** /**
* 项目代码 * 项目代码
*/ */
private String projectlCode; private String projectCode;
/** /**
* 数量 * 数量
*/ */
@ -117,10 +114,10 @@ public class CountadjustRequestDetailDO extends BaseDO {
/** /**
* 并发乐观锁 * 并发乐观锁
*/ */
private String concurrencylStamp; private String concurrencyStamp;
/** /**
* 物品代码 * 物品代码
*/ */
private String itemlCode; private String itemCode;
} }

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

@ -1,13 +1,12 @@
package com.win.module.wms.dal.dataobject.countadjustRequest; package com.win.module.wms.dal.dataobject.countadjustRequest;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
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
@ -28,10 +27,6 @@ public class CountadjustRequestMainDO extends BaseDO {
*/ */
@TableId @TableId
private Long id; private Long id;
/**
* 申请单号
*/
private String requestNumber;
/** /**
* 盘点记录单号 * 盘点记录单号
*/ */
@ -40,10 +35,6 @@ public class CountadjustRequestMainDO extends BaseDO {
* 仓库代码 * 仓库代码
*/ */
private String warehouseCode; private String warehouseCode;
/**
* details
*/
private String details;
/** /**
* 单据号 * 单据号
*/ */

58
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countadjustRequest/CountadjustRequestDetailMapper.java

@ -1,15 +1,15 @@
package com.win.module.wms.dal.mysql.countadjustRequest; package com.win.module.wms.dal.mysql.countadjustRequest;
import java.util.*;
import com.win.framework.common.pojo.PageResult; import com.win.framework.common.pojo.PageResult;
import com.win.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.win.framework.mybatis.core.mapper.BaseMapperX; import com.win.framework.mybatis.core.mapper.BaseMapperX;
import com.win.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestDetailExportReqVO; import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestDetailExportReqVO;
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestDetailPageReqVO; import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestDetailPageReqVO;
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestDetailDO; import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 盘点调整申请子 Mapper * 盘点调整申请子 Mapper
* *
@ -21,56 +21,56 @@ public interface CountadjustRequestDetailMapper extends BaseMapperX<CountadjustR
default PageResult<CountadjustRequestDetailDO> selectPage(CountadjustRequestDetailPageReqVO reqVO) { default PageResult<CountadjustRequestDetailDO> selectPage(CountadjustRequestDetailPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<CountadjustRequestDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<CountadjustRequestDetailDO>()
.eqIfPresent(CountadjustRequestDetailDO::getCountDetailNumber, reqVO.getCountDetailNumber()) .eqIfPresent(CountadjustRequestDetailDO::getCountDetailNumber, reqVO.getCountDetailNumber())
.eqIfPresent(CountadjustRequestDetailDO::getOwnerlCode, reqVO.getOwnerlCode()) .eqIfPresent(CountadjustRequestDetailDO::getOwnerCode, reqVO.getOwnerCode())
.eqIfPresent(CountadjustRequestDetailDO::getPackinglNumber, reqVO.getPackinglNumber()) .eqIfPresent(CountadjustRequestDetailDO::getPackingNumber, reqVO.getPackingNumber())
.eqIfPresent(CountadjustRequestDetailDO::getContainerlNumber, reqVO.getContainerlNumber()) .eqIfPresent(CountadjustRequestDetailDO::getContainerNumber, reqVO.getContainerNumber())
.eqIfPresent(CountadjustRequestDetailDO::getBatch, reqVO.getBatch()) .eqIfPresent(CountadjustRequestDetailDO::getBatch, reqVO.getBatch())
.eqIfPresent(CountadjustRequestDetailDO::getLocationlCode, reqVO.getLocationlCode()) .eqIfPresent(CountadjustRequestDetailDO::getLocationCode, reqVO.getLocationCode())
.eqIfPresent(CountadjustRequestDetailDO::getInventorylStatus, reqVO.getInventorylStatus()) .eqIfPresent(CountadjustRequestDetailDO::getInventoryStatus, reqVO.getInventoryStatus())
.eqIfPresent(CountadjustRequestDetailDO::getInventorylQty, reqVO.getInventorylQty()) .eqIfPresent(CountadjustRequestDetailDO::getInventoryQty, reqVO.getInventoryQty())
.eqIfPresent(CountadjustRequestDetailDO::getCountlQty, reqVO.getCountlQty()) .eqIfPresent(CountadjustRequestDetailDO::getCountQty, reqVO.getCountQty())
.eqIfPresent(CountadjustRequestDetailDO::getAdjustlQty, reqVO.getAdjustlQty()) .eqIfPresent(CountadjustRequestDetailDO::getAdjustQty, reqVO.getAdjustQty())
.eqIfPresent(CountadjustRequestDetailDO::getNumber, reqVO.getNumber()) .eqIfPresent(CountadjustRequestDetailDO::getNumber, reqVO.getNumber())
.eqIfPresent(CountadjustRequestDetailDO::getRemark, reqVO.getRemark()) .eqIfPresent(CountadjustRequestDetailDO::getRemark, reqVO.getRemark())
.betweenIfPresent(CountadjustRequestDetailDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(CountadjustRequestDetailDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(CountadjustRequestDetailDO::getCreator, reqVO.getCreator()) .eqIfPresent(CountadjustRequestDetailDO::getCreator, reqVO.getCreator())
.likeIfPresent(CountadjustRequestDetailDO::getItemlName, reqVO.getItemlName()) .likeIfPresent(CountadjustRequestDetailDO::getItemName, reqVO.getItemName())
.eqIfPresent(CountadjustRequestDetailDO::getItemlDesc1, reqVO.getItemlDesc1()) .eqIfPresent(CountadjustRequestDetailDO::getItemDesc1, reqVO.getItemDesc1())
.eqIfPresent(CountadjustRequestDetailDO::getItemlDesc2, reqVO.getItemlDesc2()) .eqIfPresent(CountadjustRequestDetailDO::getItemDesc2, reqVO.getItemDesc2())
.eqIfPresent(CountadjustRequestDetailDO::getProjectlCode, reqVO.getProjectlCode()) .eqIfPresent(CountadjustRequestDetailDO::getProjectCode, reqVO.getProjectCode())
.eqIfPresent(CountadjustRequestDetailDO::getQty, reqVO.getQty()) .eqIfPresent(CountadjustRequestDetailDO::getQty, reqVO.getQty())
.eqIfPresent(CountadjustRequestDetailDO::getUom, reqVO.getUom()) .eqIfPresent(CountadjustRequestDetailDO::getUom, reqVO.getUom())
.betweenIfPresent(CountadjustRequestDetailDO::getUpdateTime, reqVO.getUpdateTime()) .betweenIfPresent(CountadjustRequestDetailDO::getUpdateTime, reqVO.getUpdateTime())
.eqIfPresent(CountadjustRequestDetailDO::getUpdater, reqVO.getUpdater()) .eqIfPresent(CountadjustRequestDetailDO::getUpdater, reqVO.getUpdater())
.eqIfPresent(CountadjustRequestDetailDO::getItemlCode, reqVO.getItemlCode()) .eqIfPresent(CountadjustRequestDetailDO::getItemCode, reqVO.getItemCode())
.orderByDesc(CountadjustRequestDetailDO::getId)); .orderByDesc(CountadjustRequestDetailDO::getId));
} }
default List<CountadjustRequestDetailDO> selectList(CountadjustRequestDetailExportReqVO reqVO) { default List<CountadjustRequestDetailDO> selectList(CountadjustRequestDetailExportReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<CountadjustRequestDetailDO>() return selectList(new LambdaQueryWrapperX<CountadjustRequestDetailDO>()
.eqIfPresent(CountadjustRequestDetailDO::getCountDetailNumber, reqVO.getCountDetailNumber()) .eqIfPresent(CountadjustRequestDetailDO::getCountDetailNumber, reqVO.getCountDetailNumber())
.eqIfPresent(CountadjustRequestDetailDO::getOwnerlCode, reqVO.getOwnerlCode()) .eqIfPresent(CountadjustRequestDetailDO::getOwnerCode, reqVO.getOwnerCode())
.eqIfPresent(CountadjustRequestDetailDO::getPackinglNumber, reqVO.getPackinglNumber()) .eqIfPresent(CountadjustRequestDetailDO::getPackingNumber, reqVO.getPackingNumber())
.eqIfPresent(CountadjustRequestDetailDO::getContainerlNumber, reqVO.getContainerlNumber()) .eqIfPresent(CountadjustRequestDetailDO::getContainerNumber, reqVO.getContainerNumber())
.eqIfPresent(CountadjustRequestDetailDO::getBatch, reqVO.getBatch()) .eqIfPresent(CountadjustRequestDetailDO::getBatch, reqVO.getBatch())
.eqIfPresent(CountadjustRequestDetailDO::getLocationlCode, reqVO.getLocationlCode()) .eqIfPresent(CountadjustRequestDetailDO::getLocationCode, reqVO.getLocationCode())
.eqIfPresent(CountadjustRequestDetailDO::getInventorylStatus, reqVO.getInventorylStatus()) .eqIfPresent(CountadjustRequestDetailDO::getInventoryStatus, reqVO.getInventoryStatus())
.eqIfPresent(CountadjustRequestDetailDO::getInventorylQty, reqVO.getInventorylQty()) .eqIfPresent(CountadjustRequestDetailDO::getInventoryQty, reqVO.getInventoryQty())
.eqIfPresent(CountadjustRequestDetailDO::getCountlQty, reqVO.getCountlQty()) .eqIfPresent(CountadjustRequestDetailDO::getCountQty, reqVO.getCountQty())
.eqIfPresent(CountadjustRequestDetailDO::getAdjustlQty, reqVO.getAdjustlQty()) .eqIfPresent(CountadjustRequestDetailDO::getAdjustQty, reqVO.getAdjustQty())
.eqIfPresent(CountadjustRequestDetailDO::getNumber, reqVO.getNumber()) .eqIfPresent(CountadjustRequestDetailDO::getNumber, reqVO.getNumber())
.eqIfPresent(CountadjustRequestDetailDO::getRemark, reqVO.getRemark()) .eqIfPresent(CountadjustRequestDetailDO::getRemark, reqVO.getRemark())
.betweenIfPresent(CountadjustRequestDetailDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(CountadjustRequestDetailDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(CountadjustRequestDetailDO::getCreator, reqVO.getCreator()) .eqIfPresent(CountadjustRequestDetailDO::getCreator, reqVO.getCreator())
.likeIfPresent(CountadjustRequestDetailDO::getItemlName, reqVO.getItemlName()) .likeIfPresent(CountadjustRequestDetailDO::getItemName, reqVO.getItemName())
.eqIfPresent(CountadjustRequestDetailDO::getItemlDesc1, reqVO.getItemlDesc1()) .eqIfPresent(CountadjustRequestDetailDO::getItemDesc1, reqVO.getItemDesc1())
.eqIfPresent(CountadjustRequestDetailDO::getItemlDesc2, reqVO.getItemlDesc2()) .eqIfPresent(CountadjustRequestDetailDO::getItemDesc2, reqVO.getItemDesc2())
.eqIfPresent(CountadjustRequestDetailDO::getProjectlCode, reqVO.getProjectlCode()) .eqIfPresent(CountadjustRequestDetailDO::getProjectCode, reqVO.getProjectCode())
.eqIfPresent(CountadjustRequestDetailDO::getQty, reqVO.getQty()) .eqIfPresent(CountadjustRequestDetailDO::getQty, reqVO.getQty())
.eqIfPresent(CountadjustRequestDetailDO::getUom, reqVO.getUom()) .eqIfPresent(CountadjustRequestDetailDO::getUom, reqVO.getUom())
.betweenIfPresent(CountadjustRequestDetailDO::getUpdateTime, reqVO.getUpdateTime()) .betweenIfPresent(CountadjustRequestDetailDO::getUpdateTime, reqVO.getUpdateTime())
.eqIfPresent(CountadjustRequestDetailDO::getUpdater, reqVO.getUpdater()) .eqIfPresent(CountadjustRequestDetailDO::getUpdater, reqVO.getUpdater())
.eqIfPresent(CountadjustRequestDetailDO::getItemlCode, reqVO.getItemlCode()) .eqIfPresent(CountadjustRequestDetailDO::getItemCode, reqVO.getItemCode())
.orderByDesc(CountadjustRequestDetailDO::getId)); .orderByDesc(CountadjustRequestDetailDO::getId));
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/countadjustRequest/CountadjustRequestMainMapper.java

@ -22,7 +22,6 @@ public interface CountadjustRequestMainMapper extends BaseMapperX<CountadjustReq
default PageResult<CountadjustRequestMainDO> selectPage(CountadjustRequestMainPageReqVO reqVO) { default PageResult<CountadjustRequestMainDO> selectPage(CountadjustRequestMainPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<CountadjustRequestMainDO>() return selectPage(reqVO, new LambdaQueryWrapperX<CountadjustRequestMainDO>()
.eqIfPresent(CountadjustRequestMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(CountadjustRequestMainDO::getCountRecordNumber, reqVO.getCountRecordNumber()) .eqIfPresent(CountadjustRequestMainDO::getCountRecordNumber, reqVO.getCountRecordNumber())
.eqIfPresent(CountadjustRequestMainDO::getWarehouseCode, reqVO.getWarehouseCode()) .eqIfPresent(CountadjustRequestMainDO::getWarehouseCode, reqVO.getWarehouseCode())
.eqIfPresent(CountadjustRequestMainDO::getNumber, reqVO.getNumber()) .eqIfPresent(CountadjustRequestMainDO::getNumber, reqVO.getNumber())
@ -47,7 +46,6 @@ public interface CountadjustRequestMainMapper extends BaseMapperX<CountadjustReq
} }
default List<CountadjustRequestMainDO> selectList(CountadjustRequestMainExportReqVO reqVO) { default List<CountadjustRequestMainDO> selectList(CountadjustRequestMainExportReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<CountadjustRequestMainDO>() return selectList(new LambdaQueryWrapperX<CountadjustRequestMainDO>()
.eqIfPresent(CountadjustRequestMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(CountadjustRequestMainDO::getCountRecordNumber, reqVO.getCountRecordNumber()) .eqIfPresent(CountadjustRequestMainDO::getCountRecordNumber, reqVO.getCountRecordNumber())
.eqIfPresent(CountadjustRequestMainDO::getWarehouseCode, reqVO.getWarehouseCode()) .eqIfPresent(CountadjustRequestMainDO::getWarehouseCode, reqVO.getWarehouseCode())
.eqIfPresent(CountadjustRequestMainDO::getNumber, reqVO.getNumber()) .eqIfPresent(CountadjustRequestMainDO::getNumber, reqVO.getNumber())

133
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countJob/CountJobMainServiceImpl.java

@ -1,27 +1,41 @@
package com.win.module.wms.service.countJob; package com.win.module.wms.service.countJob;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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;
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.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.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.countJob.vo.CountJobDetailUpdateReqVO;
import com.win.module.wms.controller.countJob.vo.CountJobMainExportReqVO; import com.win.module.wms.controller.countJob.vo.CountJobMainExportReqVO;
import com.win.module.wms.controller.countJob.vo.CountJobMainPageReqVO; import com.win.module.wms.controller.countJob.vo.CountJobMainPageReqVO;
import com.win.module.wms.controller.countJob.vo.CountJobMainUpdateReqVO; import com.win.module.wms.controller.countJob.vo.CountJobMainUpdateReqVO;
import com.win.module.wms.dal.dataobject.countJob.CountJobMainDO; import com.win.module.wms.dal.dataobject.countJob.CountJobMainDO;
import com.win.module.wms.dal.dataobject.countRecord.CountRecordDetailDO;
import com.win.module.wms.dal.dataobject.countRecord.CountRecordMainDO;
import com.win.module.wms.dal.dataobject.countRequest.CountRequestMainDO;
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestDetailDO;
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestMainDO;
import com.win.module.wms.dal.mysql.countJob.CountJobMainMapper; import com.win.module.wms.dal.mysql.countJob.CountJobMainMapper;
import com.win.module.wms.dal.mysql.countRecord.CountRecordDetailMapper;
import com.win.module.wms.dal.mysql.countRecord.CountRecordMainMapper;
import com.win.module.wms.dal.mysql.countRequest.CountRequestMainMapper;
import com.win.module.wms.dal.mysql.countadjustRequest.CountadjustRequestDetailMapper;
import com.win.module.wms.dal.mysql.countadjustRequest.CountadjustRequestMainMapper;
import com.win.module.wms.enums.job.JobStatusEnum;
import com.win.module.wms.enums.job.JobStatusState; import com.win.module.wms.enums.job.JobStatusState;
import com.win.module.wms.enums.request.RequestStatusEnum;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Collection; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
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.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
@ -39,9 +53,21 @@ public class CountJobMainServiceImpl implements CountJobMainService {
@Resource @Resource
private CountJobMainMapper countJobMainMapper; private CountJobMainMapper countJobMainMapper;
@Resource @Resource
private CountRecordMainMapper countRecordMainMapper;
@Resource
private CountRecordDetailMapper countRecordDetailMapper;
@Resource
private AdminUserApi userApi; private AdminUserApi userApi;
@Resource @Resource
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private CountRequestMainMapper countRequestMainMapper;
@Resource
private CountadjustRequestMainMapper countadjustRequestMainMapper;
@Resource
private CountadjustRequestDetailMapper countadjustRequestDetailMapper;
@Override @Override
public CountJobMainDO getCountJobMain(Long id) { public CountJobMainDO getCountJobMain(Long id) {
@ -123,7 +149,104 @@ public class CountJobMainServiceImpl implements CountJobMainService {
@Override @Override
public String executeCountJobMain(CountJobMainUpdateReqVO countJobMainUpdateReqVO) { public String executeCountJobMain(CountJobMainUpdateReqVO countJobMainUpdateReqVO) {
return null; //查询数据
CountJobMainDO countJobMainDO = this.validateCountJobMainExists(countJobMainUpdateReqVO.getId());
JobStatusState jobStatusState = new JobStatusState(countJobMainDO.getStatus());
boolean flag = jobStatusState.execute();
if(!flag) {
throw new ServiceException(INSPECT_JOB_MAIN_STATUS_ERROR);
}
//更新完成信息
Long userId = getLoginUserId();
AdminUserRespDTO userRespDTO = userApi.getUser(userId);
countJobMainDO.setStatus(jobStatusState.getState().getCode());
countJobMainDO.setCompleteTime(LocalDateTime.now());
countJobMainDO.setCompleteUserId(String.valueOf(userRespDTO.getId()));
countJobMainDO.setCompleteUserName(userRespDTO.getNickname());
//更新任务表状态
countJobMainMapper.updateById(countJobMainDO);
//创建采购收货记录主表
CountRecordMainDO countRecordMainDO = new CountRecordMainDO();
BeanUtils.copyProperties(countJobMainDO, countRecordMainDO);
String number = serialNumberApi.generateCode(RuleCodeEnum.COUNT_RECORD.getCode());
countRecordMainDO.setNumber(number);
countRecordMainDO.setJobNumber(countJobMainDO.getNumber());
countRecordMainDO.setId(null);
countRecordMainDO.setCreator(null);
countRecordMainDO.setCreateTime(null);
countRecordMainDO.setUpdater(null);
countRecordMainDO.setUpdateTime(null);
countRecordMainMapper.insert(countRecordMainDO);
List<CountJobDetailUpdateReqVO> countJobDetailUpdateReqVOList = countJobMainUpdateReqVO.getSubList();
List<CountadjustRequestDetailDO> countadjustRequestDetailDOList = new ArrayList<>();
List<CountRecordDetailDO> countRecordDetailDOList = new ArrayList<>();
int countDetailNumber = 1;
for(CountJobDetailUpdateReqVO countJobDetailUpdateReqVO : countJobDetailUpdateReqVOList) {
CountRecordDetailDO countRecordDetailDO = new CountRecordDetailDO();
BeanUtils.copyProperties(countJobDetailUpdateReqVO, countRecordDetailDO);
countRecordDetailDO.setMasterId(countRecordMainDO.getId());
countRecordDetailDO.setNumber(number);
countRecordDetailDO.setJobDetailId(String.valueOf(countJobDetailUpdateReqVO.getId()));
countRecordDetailDO.setId(null);
countRecordDetailDO.setCreator(null);
countRecordDetailDO.setCreateTime(null);
countRecordDetailDO.setUpdater(null);
countRecordDetailDO.setUpdateTime(null);
countRecordDetailDOList.add(countRecordDetailDO);
//盘点记录数量不一致时生成盘点调整申请
if(countRecordDetailDO.getCountQty().compareTo(countRecordDetailDO.getQty()) != 0) {
CountadjustRequestDetailDO countadjustRequestDetailDO = new CountadjustRequestDetailDO();
BeanUtils.copyProperties(countRecordDetailDO, countadjustRequestDetailDO);
countadjustRequestDetailDO.setCountDetailNumber(String.valueOf(countDetailNumber));
countadjustRequestDetailDO.setInventoryQty(countRecordDetailDO.getQty());
countadjustRequestDetailDO.setCountQty(countRecordDetailDO.getCountQty());
//库存数量减盘点数量等于调整数量
countadjustRequestDetailDO.setAdjustQty(countRecordDetailDO.getQty().subtract(countRecordDetailDO.getCountQty()));
//调整数量的绝对值
countadjustRequestDetailDO.setQty(countadjustRequestDetailDO.getAdjustQty().abs());
countadjustRequestDetailDO.setId(null);
countadjustRequestDetailDO.setCreator(null);
countadjustRequestDetailDO.setCreateTime(null);
countadjustRequestDetailDO.setUpdater(null);
countadjustRequestDetailDO.setUpdateTime(null);
countadjustRequestDetailDOList.add(countadjustRequestDetailDO);
countDetailNumber++;
}
}
countRecordDetailMapper.insertBatch(countRecordDetailDOList);
//增加库存跳转
if(!countadjustRequestDetailDOList.isEmpty()) {
CountadjustRequestMainDO countadjustRequestMainDO = new CountadjustRequestMainDO();
BeanUtils.copyProperties(countRecordMainDO, countadjustRequestMainDO);
String adjustNumber = serialNumberApi.generateCode(RuleCodeEnum.COUNT_ADJUST_REQUEST.getCode());
countadjustRequestMainDO.setNumber(adjustNumber);
countadjustRequestMainDO.setCountRecordNumber(number);
countadjustRequestMainDO.setId(null);
countadjustRequestMainDO.setCreator(null);
countadjustRequestMainDO.setCreateTime(null);
countadjustRequestMainDO.setUpdater(null);
countadjustRequestMainDO.setUpdateTime(null);
countadjustRequestMainMapper.insert(countadjustRequestMainDO);
for(CountadjustRequestDetailDO countadjustRequestDetailDO : countadjustRequestDetailDOList) {
countadjustRequestDetailDO.setMasterId(countadjustRequestMainDO.getId());
countadjustRequestDetailDO.setNumber(adjustNumber);
}
countadjustRequestDetailMapper.insertBatch(countadjustRequestDetailDOList);
}
List<String> typeList = new ArrayList<>();
typeList.add(JobStatusEnum.PENDING.getCode());
typeList.add(JobStatusEnum.PROCESSING.getCode());
Long count = countJobMainMapper.selectListCount(typeList, countJobMainDO.getRequestNumber());
CountRequestMainDO countRequestMainDO = countRequestMainMapper.selectByNumber(countJobMainDO.getRequestNumber());
//申请单下所有任务全部完成
if(count == 0) {
countRequestMainDO.setStatus(RequestStatusEnum.COMPLETED.getCode());
countRequestMainMapper.updateById(countRequestMainDO);
} else if(countRequestMainDO.getStatus().equals(RequestStatusEnum.HANDLING.getCode())) {//部分完成
countRequestMainDO.setStatus(RequestStatusEnum.PARTIAL.getCode());
countRequestMainMapper.updateById(countRequestMainDO);
}
return number;
} }
private CountJobMainDO validateCountJobMainExists(Long id) { private CountJobMainDO validateCountJobMainExists(Long id) {

47
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainServiceImpl.java

@ -15,6 +15,7 @@ import com.win.module.wms.controller.countPlan.vo.CountPlanMainPageReqVO;
import com.win.module.wms.controller.countPlan.vo.CountPlanMainUpdateReqVO; import com.win.module.wms.controller.countPlan.vo.CountPlanMainUpdateReqVO;
import com.win.module.wms.controller.countRequest.vo.CountRequestDetailCreateReqVO; import com.win.module.wms.controller.countRequest.vo.CountRequestDetailCreateReqVO;
import com.win.module.wms.controller.countRequest.vo.CountRequestMainCreateReqVO; import com.win.module.wms.controller.countRequest.vo.CountRequestMainCreateReqVO;
import com.win.module.wms.controller.location.vo.LocationExportReqVO;
import com.win.module.wms.convert.countPlan.CountPlanDetailConvert; import com.win.module.wms.convert.countPlan.CountPlanDetailConvert;
import com.win.module.wms.convert.countPlan.CountPlanMainConvert; import com.win.module.wms.convert.countPlan.CountPlanMainConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO; import com.win.module.wms.dal.dataobject.balance.BalanceDO;
@ -22,6 +23,7 @@ import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.countPlan.CountPlanDetailDO; import com.win.module.wms.dal.dataobject.countPlan.CountPlanDetailDO;
import com.win.module.wms.dal.dataobject.countPlan.CountPlanMainDO; import com.win.module.wms.dal.dataobject.countPlan.CountPlanMainDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.location.LocationDO;
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.countPlan.CountPlanDetailMapper; import com.win.module.wms.dal.mysql.countPlan.CountPlanDetailMapper;
import com.win.module.wms.dal.mysql.countPlan.CountPlanMainMapper; import com.win.module.wms.dal.mysql.countPlan.CountPlanMainMapper;
@ -29,6 +31,7 @@ import com.win.module.wms.dal.mysql.countRequest.CountRequestMainMapper;
import com.win.module.wms.enums.plan.PlanStatusState; import com.win.module.wms.enums.plan.PlanStatusState;
import com.win.module.wms.service.countRequest.CountRequestMainService; import com.win.module.wms.service.countRequest.CountRequestMainService;
import com.win.module.wms.service.itembasic.ItembasicService; import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -36,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
@ -71,6 +75,8 @@ public class CountPlanMainServiceImpl implements CountPlanMainService {
private ItembasicService itembasicService; private ItembasicService itembasicService;
@Resource @Resource
private CountRequestMainService countRequestMainService; private CountRequestMainService countRequestMainService;
@Resource
private LocationService locationService;
@Override @Override
public Long createCountPlanMain(CountPlanMainCreateReqVO createReqVO) { public Long createCountPlanMain(CountPlanMainCreateReqVO createReqVO) {
@ -293,16 +299,49 @@ public class CountPlanMainServiceImpl implements CountPlanMainService {
countRequestMainCreateReqVO.setRequestTime(LocalDateTime.now()); countRequestMainCreateReqVO.setRequestTime(LocalDateTime.now());
countRequestMainCreateReqVO.setDueTime(LocalDateTime.now()); countRequestMainCreateReqVO.setDueTime(LocalDateTime.now());
List<CountRequestDetailCreateReqVO> subList = new ArrayList<>(); List<CountRequestDetailCreateReqVO> subList = new ArrayList<>();
for (int i = 0; i< balanceDOList.size(); i++) { int countDetailNumber = 1;
BalanceDO balanceDO = balanceDOList.get(i); for (BalanceDO balanceDO : balanceDOList) {
CountRequestDetailCreateReqVO countRequestDetailCreateReqVO = new CountRequestDetailCreateReqVO(); CountRequestDetailCreateReqVO countRequestDetailCreateReqVO = new CountRequestDetailCreateReqVO();
BeanUtils.copyProperties(balanceDO, countRequestDetailCreateReqVO); BeanUtils.copyProperties(balanceDO, countRequestDetailCreateReqVO);
ItembasicDO itembasicDO = itembasicService.selectItembasic(balanceDO.getItemCode()); ItembasicDO itembasicDO = itembasicService.selectItembasic(balanceDO.getItemCode());
countRequestDetailCreateReqVO.setItemName(itembasicDO.getName()); countRequestDetailCreateReqVO.setItemName(itembasicDO.getName());
countRequestDetailCreateReqVO.setItemDesc1(itembasicDO.getDesc1()); countRequestDetailCreateReqVO.setItemDesc1(itembasicDO.getDesc1());
countRequestDetailCreateReqVO.setItemDesc2(itembasicDO.getDesc2()); countRequestDetailCreateReqVO.setItemDesc2(itembasicDO.getDesc2());
countRequestDetailCreateReqVO.setCountDetailNumber(String.valueOf(i + 1)); countRequestDetailCreateReqVO.setCountDetailNumber(String.valueOf(countDetailNumber));
subList.add(countRequestDetailCreateReqVO); if(countRequestDetailCreateReqVO.getQty().compareTo(BigDecimal.ZERO) == 0) {
if ("TRUE".equals(mainDO.getIsCountZeroInventory())) {
subList.add(countRequestDetailCreateReqVO);
}
} else if (countRequestDetailCreateReqVO.getQty().compareTo(BigDecimal.ZERO) < 0) {
if ("TRUE".equals(mainDO.getIsCountNegativeInventory())) {
subList.add(countRequestDetailCreateReqVO);
}
} else {
subList.add(countRequestDetailCreateReqVO);
}
countDetailNumber++;
}
//盘点空库位,补齐空库位,在生成任务时拆分为只有主的盘点任务
if("TRUE".equals(mainDO.getIsCountEmptyLocation())) {
LocationExportReqVO locationExportReqVO = new LocationExportReqVO();
locationExportReqVO.setAvailable("TRUE");
List<LocationDO> locationDOList = locationService.getLocationList(new LocationExportReqVO());
for(LocationDO locationDO : locationDOList) {
boolean flag = false;
for(CountRequestDetailCreateReqVO countRequestDetailCreateReqVO : subList) {
if(countRequestDetailCreateReqVO.getLocationCode().equals(locationDO.getCode())) {
flag = true;
break;
}
}
if(!flag) {
CountRequestDetailCreateReqVO countRequestDetailCreateReqVO = new CountRequestDetailCreateReqVO();
countRequestDetailCreateReqVO.setCountDetailNumber(String.valueOf(countDetailNumber));
countRequestDetailCreateReqVO.setLocationCode(locationDO.getCode());
subList.add(countRequestDetailCreateReqVO);
countDetailNumber++;
}
}
} }
countRequestMainCreateReqVO.setSubList(subList); countRequestMainCreateReqVO.setSubList(subList);
countRequestMainService.createCountRequestMain(countRequestMainCreateReqVO); countRequestMainService.createCountRequestMain(countRequestMainCreateReqVO);

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

@ -37,6 +37,7 @@ import com.win.module.wms.dal.mysql.countRecord.CountRecordDetailMapper;
import com.win.module.wms.dal.mysql.countRecord.CountRecordMainMapper; import com.win.module.wms.dal.mysql.countRecord.CountRecordMainMapper;
import com.win.module.wms.dal.mysql.countRequest.CountRequestDetailMapper; import com.win.module.wms.dal.mysql.countRequest.CountRequestDetailMapper;
import com.win.module.wms.dal.mysql.countRequest.CountRequestMainMapper; import com.win.module.wms.dal.mysql.countRequest.CountRequestMainMapper;
import com.win.module.wms.enums.job.JobStatusEnum;
import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.enums.request.RequestStatusEnum;
import com.win.module.wms.enums.request.RequestStatusState; import com.win.module.wms.enums.request.RequestStatusState;
import com.win.module.wms.service.itembasic.ItembasicService; import com.win.module.wms.service.itembasic.ItembasicService;
@ -371,10 +372,9 @@ public class CountRequestMainServiceImpl implements CountRequestMainService {
list.add(detailDO); list.add(detailDO);
listMap.put(detailDO.getLocationCode(), list); listMap.put(detailDO.getLocationCode(), list);
} }
JobsettingDO jobsettingDO = jobsettingService.selectJobsettingExist("PurchaseReceiptJob"); JobsettingDO jobsettingDO = jobsettingService.selectJobsettingExist("CountJob");
//组装任务数据 //组装任务数据
for(String mapKey : listMap.keySet()) { for(String mapKey : listMap.keySet()) {
List<CountRequestDetailDO> countRequestDetailDOList = listMap.get(mapKey);
CountJobMainDO countJobMainDO = CountJobMainConvert.INSTANCE.convert(mainDO); CountJobMainDO countJobMainDO = CountJobMainConvert.INSTANCE.convert(mainDO);
countJobMainDO.setRequestNumber(mainDO.getNumber()); countJobMainDO.setRequestNumber(mainDO.getNumber());
countJobMainDO.setAutoComplete(jobsettingDO.getAutoComplete()); countJobMainDO.setAutoComplete(jobsettingDO.getAutoComplete());
@ -391,15 +391,33 @@ public class CountRequestMainServiceImpl implements CountRequestMainService {
countJobMainDO.setBusinessType(businesstypeDO.getCode()); countJobMainDO.setBusinessType(businesstypeDO.getCode());
countJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses()); countJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());
countJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses()); countJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
countJobMainDO.setStatus(JobStatusEnum.PENDING.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.COUNT_JOB.getCode());
countJobMainDO.setNumber(number);
countJobMainDO.setId(null);
countJobMainDO.setCreateTime(null);
countJobMainDO.setCreator(null);
countJobMainDO.setUpdateTime(null);
countJobMainDO.setUpdater(null);
countJobMainMapper.insert(countJobMainDO); countJobMainMapper.insert(countJobMainDO);
List<CountJobDetailDO> countJobDetailDOList = new ArrayList<>(); List<CountJobDetailDO> countJobDetailDOList = new ArrayList<>();
for (int i = 0; i< countRequestDetailDOList.size(); i++) { List<CountRequestDetailDO> countRequestDetailDOList = listMap.get(mapKey);
CountRequestDetailDO countRequestDetailDO = countRequestDetailDOList.get(i); int countDetailNumber = 1;
CountJobDetailDO countJobDetailDO = CountJobDetailConvert.INSTANCE.convert(countRequestDetailDO); for (CountRequestDetailDO countRequestDetailDO : countRequestDetailDOList) {
countJobDetailDO.setCountDetailNumber(String.valueOf(i + 1)); //空库位时itemCode为空,不加入子表
countJobDetailDOList.add(countJobDetailDO); if(countRequestDetailDO.getItemCode() != null && !countRequestDetailDO.getItemCode().isEmpty()) {
CountJobDetailDO countJobDetailDO = CountJobDetailConvert.INSTANCE.convert(countRequestDetailDO);
countJobDetailDO.setCountDetailNumber(String.valueOf(countDetailNumber));
countJobDetailDO.setNumber(number);
countJobDetailDO.setMasterId(countJobMainDO.getId());
countJobDetailDOList.add(countJobDetailDO);
countDetailNumber++;
}
}
if(!countJobDetailDOList.isEmpty()) {
countJobDetailMapper.insertBatch(countJobDetailDOList);
} }
countJobDetailMapper.insertBatch(countJobDetailDOList); trendsApi.createTrends(countJobMainDO.getId(), "countJob", "盘点申请生成盘点任务", TrendsTypeEnum.CREATE);
} }
} }

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

@ -190,7 +190,7 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
inspectJobMainDO.setCompleteUserId(String.valueOf(userRespDTO.getId())); inspectJobMainDO.setCompleteUserId(String.valueOf(userRespDTO.getId()));
inspectJobMainDO.setCompleteUserName(userRespDTO.getNickname()); inspectJobMainDO.setCompleteUserName(userRespDTO.getNickname());
//更新任务表状态 //更新任务表状态
int result = inspectJobMainMapper.updateById(inspectJobMainDO); inspectJobMainMapper.updateById(inspectJobMainDO);
//创建采购收货记录主表 //创建采购收货记录主表
InspectRecordMainDO inspectRecordMainDO = new InspectRecordMainDO(); InspectRecordMainDO inspectRecordMainDO = new InspectRecordMainDO();
BeanUtils.copyProperties(inspectJobMainDO, inspectRecordMainDO); BeanUtils.copyProperties(inspectJobMainDO, inspectRecordMainDO);

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

@ -273,6 +273,7 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
List<PurchaseshortageDetailDO> purchaseshortageDetailDOList = new ArrayList<>(); List<PurchaseshortageDetailDO> purchaseshortageDetailDOList = new ArrayList<>();
//库存事务 //库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>(); List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
Map<String, BigDecimal> poQtyMap = new HashMap<>();
for(PurchasereceiptJobDetailDO purchasereceiptJobDetailDO : subList) { for(PurchasereceiptJobDetailDO purchasereceiptJobDetailDO : subList) {
boolean isExists = false; boolean isExists = false;
PurchasereceiptJobDetailUpdateReqVO purchasereceiptJobDetailUpdateReqVOTemp = null; PurchasereceiptJobDetailUpdateReqVO purchasereceiptJobDetailUpdateReqVOTemp = null;
@ -311,8 +312,13 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchasereceiptRecordDetailDO.setUpdateTime(null); purchasereceiptRecordDetailDO.setUpdateTime(null);
purchasereceiptRecordDetailDO.setUpdater(null); purchasereceiptRecordDetailDO.setUpdater(null);
purchasereceiptRecordDetailDOList.add(purchasereceiptRecordDetailDO); purchasereceiptRecordDetailDOList.add(purchasereceiptRecordDetailDO);
//更新采购订单明细的收货数量 BigDecimal poQty = poQtyMap.get(purchasereceiptRecordDetailDO.getPoNumber() + "_" + purchasereceiptRecordDetailDO.getPoLine() + "_" + purchasereceiptRecordDetailDO.getItemCode());
purchaseMainService.updateOrderPurchaseReceivedQty(purchasereceiptRecordDetailDO.getPoNumber(), purchasereceiptRecordDetailDO.getPoLine(), purchasereceiptRecordDetailDO.getItemCode(), purchasereceiptRecordDetailDO.getQty()); if(poQty == null) {
poQty = purchasereceiptRecordDetailDO.getQty();
} else {
poQty = poQty.add(purchasereceiptRecordDetailDO.getQty());
}
poQtyMap.put(purchasereceiptRecordDetailDO.getPoNumber() + "_" + purchasereceiptRecordDetailDO.getPoLine() + "_" + purchasereceiptRecordDetailDO.getItemCode(), poQty);
//添加库存事务list //添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO(); TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordDetailDO, transactionCreateReqVO); BeanUtils.copyProperties(purchasereceiptRecordDetailDO, transactionCreateReqVO);
@ -358,6 +364,11 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchaseshortageDetailDOList.add(purchaseshortageDetailDO); purchaseshortageDetailDOList.add(purchaseshortageDetailDO);
} }
} }
for(String key : poQtyMap.keySet()) {
String[] keys = key.split("_");
//更新采购订单明细的收货数量
purchaseMainService.updateOrderPurchaseReceivedQty(keys[0], keys[1], keys[2], poQtyMap.get(key));
}
if(!purchasereceiptRecordDetailDOList.isEmpty()) { if(!purchasereceiptRecordDetailDOList.isEmpty()) {
purchasereceiptRecordDetailMapper.insertBatch(purchasereceiptRecordDetailDOList); purchasereceiptRecordDetailMapper.insertBatch(purchasereceiptRecordDetailDOList);
} }

Loading…
Cancel
Save