Browse Source

制品返修后端代码提交

master
赵雪冰 2 years ago
parent
commit
a07434622d
  1. 18
      win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java
  2. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailBaseVO.java
  3. 62
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/ProductrepairRequestMainController.java
  4. 17
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestBomRespVO.java
  5. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaBaseVO.java
  6. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaCreateReqVO.java
  7. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaExportReqVO.java
  8. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaPageReqVO.java
  9. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestMainCreateReqVO.java
  10. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/TransferissueRecordMainController.java
  11. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainCreateReqVO.java
  12. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRecord/ConsumeRecordDetailbConvert.java
  13. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRequest/ProductrepairRequestDetailaConvert.java
  14. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRequest/ProductrepairRequestMainConvert.java
  15. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestDetailaDO.java
  16. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestDetailbDO.java
  17. 9
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestMainDO.java
  18. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRequest/ProductrepairRequestDetailaMapper.java
  19. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRequest/ProductrepairRequestDetailbMapper.java
  20. 54
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainService.java
  21. 437
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java
  22. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainService.java
  23. 55
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java
  24. 30
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRequest/TransferissueRequestMainServiceImpl.java

18
win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java

@ -689,20 +689,26 @@ public interface ErrorCodeConstants {
//制品拆解记录子ErrorCode //制品拆解记录子ErrorCode
ErrorCode PRODUCTDISMANTLE_RECORD_DETAILA_NOT_EXISTS = new ErrorCode(1_001_107_002, "制品拆解记录子不存在"); ErrorCode PRODUCTDISMANTLE_RECORD_DETAILA_NOT_EXISTS = new ErrorCode(1_001_107_002, "制品拆解记录子不存在");
//制品返修申请主ErrorCode //制品返修申请主ErrorCode
ErrorCode PRODUCTREPAIR_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_108_000, "制品返修申请主不存在"); ErrorCode PRODUCTREPAIR_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_108_000, "制品返修申请主不存在");
ErrorCode PRODUCTREPAIR_REQUEST_MAIN_TEAM_NOT_INVALID = new ErrorCode(1_000_108_001, "班组【team】无效");
ErrorCode PRODUCTREPAIR_REQUEST_MAIN_SHIFT_NOT_INVALID = new ErrorCode(1_001_108_002, "班次【shift】无效");
ErrorCode PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR = new ErrorCode(1_001_102_003, "制品返修申请状态错误");
//制品返修申请子ErrorCode //制品返修申请子ErrorCode
ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_NOT_EXISTS = new ErrorCode(1_001_108_001, "制品返修申请子不存在"); ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_NOT_EXISTS = new ErrorCode(1_001_108_101, "制品返修申请子不存在");
ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_UOM_ERROR = new ErrorCode(1_000_108_102, "记量单位【{}】错误,应该是【{}】");
ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_BALANCE_ERROR = new ErrorCode(1_000_108_102, "余额校验异常");
ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_QTY_ERROR = new ErrorCode(1_000_108_102, "返修数量【{}】不能大于库存数量【{}】");
//制品返修申请子ErrorCode //制品返修申请子ErrorCode
ErrorCode CONSUMERE_REQUEST_DETAILB_NOT_EXISTS = new ErrorCode(1_001_108_001, "制品返修申请子不存在"); ErrorCode CONSUMERE_REQUEST_DETAILB_NOT_EXISTS = new ErrorCode(1_001_108_201, "制品返修申请子不存在");
//制品返修记录主ErrorCode //制品返修记录主ErrorCode
ErrorCode PRODUCTREPAIR_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_109_000, "制品返修记录主不存在"); ErrorCode PRODUCTREPAIR_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_109_000, "制品返修记录主不存在");
//制品返修申请子ErrorCode //制品返修申请子ErrorCode
ErrorCode PRODUCTREPAIR_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_001_109_001, "制品返修记录子不存在"); ErrorCode PRODUCTREPAIR_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_001_109_101, "制品返修记录子不存在");
//制品返修申请子ErrorCode //制品返修申请子ErrorCode
ErrorCode CONSUME_RECORD_DETAILB_NOT_EXISTS = new ErrorCode(1_001_109_002, "制品返修记录子不存在"); ErrorCode CONSUME_RECORD_DETAILB_NOT_EXISTS = new ErrorCode(1_001_109_202, "制品返修记录子不存在");
//制品报废申请主ErrorCode //制品报废申请主ErrorCode
ErrorCode PRODUCTSCRAP_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_110_000, "制品报废申请主不存在"); ErrorCode PRODUCTSCRAP_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_110_000, "制品报废申请主不存在");

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailBaseVO.java

@ -106,4 +106,7 @@ public class ProductrepairRecordDetailBaseVO {
@Schema(description = "任务明细ID") @Schema(description = "任务明细ID")
private String jobDetailId; private String jobDetailId;
@Schema(description = "主表ID")
private String masterId;
} }

62
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/ProductrepairRequestMainController.java

@ -121,4 +121,66 @@ public class ProductrepairRequestMainController {
return success(result); return success(result);
} }
@PutMapping("/close")
@Operation(summary = "关闭")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:close')")
public CommonResult<Boolean> closeProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.closeProductrepairRequestMain(id);
return success(count > 0);
}
@PutMapping("/reAdd")
@Operation(summary = "重新添加")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:reAdd')")
public CommonResult<Boolean> reAddeProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.reAddeProductrepairRequestMain(id);
return success(count > 0);
}
@PutMapping("/submit")
@Operation(summary = "提交审批")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:submit')")
public CommonResult<Boolean> submitProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.submitProductrepairRequestMain(id);
return success(count > 0);
}
@PutMapping("/refused")
@Operation(summary = "驳回")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:refused')")
public CommonResult<Boolean> refusedProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.refusedProductrepairRequestMain(id);
return success(count > 0);
}
@PutMapping("/agree")
@Operation(summary = "审批通过")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:agree')")
public CommonResult<Boolean> agreeProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.agreeProductrepairRequestMain(id);
return success(count > 0);
}
@PutMapping("/handle")
@Operation(summary = "处理")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:handle')")
public CommonResult<Boolean> handleProductrepairRequestMain(@RequestParam("id") Long id) {
Integer count = productrepairRequestMainService.handleProductrepairRequestMain(id);
return success(count > 0);
}
@GetMapping("/bomPage")
@Operation(summary = "获取BOM接口")
@PreAuthorize("@ss.hasPermission('wms:productrepair-request-main:query')")
public CommonResult<PageResult<ProductrepairRequestBomRespVO>> getBomInfoPage(ProductrepairRequestDetailaPageReqVO pageVO) {
PageResult<ProductrepairRequestBomRespVO> pageResult = productrepairRequestMainService.getBomInfoPage(pageVO);
return success(pageResult);
}
} }

17
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestBomRespVO.java

@ -0,0 +1,17 @@
package com.win.module.wms.controller.productrepairRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@Schema(description = "管理后台 - 制品返修二级子表主 Response VO")
@Data
@ToString(callSuper = true)
public class ProductrepairRequestBomRespVO {
private String itemCode;
private String uom;
private String qty;
private String version;
}

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaBaseVO.java

@ -26,7 +26,7 @@ public class ProductrepairRequestDetailaBaseVO {
@Schema(description = "生产线代码", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "生产线代码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "生产线代码不能为空") @NotNull(message = "生产线代码不能为空")
private String productionlineCode; private String productionLineCode;
@Schema(description = "工位代码") @Schema(description = "工位代码")
private String workStationCode; private String workStationCode;

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaCreateReqVO.java

@ -1,12 +1,18 @@
package com.win.module.wms.controller.productrepairRequest.vo; package com.win.module.wms.controller.productrepairRequest.vo;
import com.win.framework.excel.core.annotations.SubObject;
import lombok.*; import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
@Schema(description = "管理后台 - 制品返修申请子创建 Request VO") @Schema(description = "管理后台 - 制品返修申请子创建 Request VO")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class ProductrepairRequestDetailaCreateReqVO extends ProductrepairRequestDetailaBaseVO { public class ProductrepairRequestDetailaCreateReqVO extends ProductrepairRequestDetailaBaseVO {
@SubObject
@Schema(description = "二级子表数据")
private List<ProductrepairRequestDetailbCreateReqVO> childList;
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaExportReqVO.java

@ -19,7 +19,7 @@ public class ProductrepairRequestDetailaExportReqVO {
private String fromOwnerCode; private String fromOwnerCode;
@Schema(description = "生产线代码") @Schema(description = "生产线代码")
private String productionlineCode; private String productionLineCode;
@Schema(description = "工位代码") @Schema(description = "工位代码")
private String workStationCode; private String workStationCode;

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestDetailaPageReqVO.java

@ -21,7 +21,7 @@ public class ProductrepairRequestDetailaPageReqVO extends PageParam {
private String fromOwnerCode; private String fromOwnerCode;
@Schema(description = "生产线代码") @Schema(description = "生产线代码")
private String productionlineCode; private String productionLineCode;
@Schema(description = "工位代码") @Schema(description = "工位代码")
private String workStationCode; private String workStationCode;

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRequest/vo/ProductrepairRequestMainCreateReqVO.java

@ -1,12 +1,19 @@
package com.win.module.wms.controller.productrepairRequest.vo; package com.win.module.wms.controller.productrepairRequest.vo;
import com.win.framework.excel.core.annotations.SubObject;
import com.win.module.wms.controller.productreceiptRequest.vo.ProductreceiptRequestDetailCreateReqVO;
import lombok.*; import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
@Schema(description = "管理后台 - 制品返修申请主创建 Request VO") @Schema(description = "管理后台 - 制品返修申请主创建 Request VO")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class ProductrepairRequestMainCreateReqVO extends ProductrepairRequestMainBaseVO { public class ProductrepairRequestMainCreateReqVO extends ProductrepairRequestMainBaseVO {
@SubObject
@Schema(description = "一级子表数据")
private List<ProductrepairRequestDetailaCreateReqVO> subList;
} }

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/TransferissueRecordMainController.java

@ -118,4 +118,12 @@ public class TransferissueRecordMainController {
ExcelUtils.write(response, "调拨出库记录主.xls", "数据", TransferissueRecordMainExcelVO.class, datas); ExcelUtils.write(response, "调拨出库记录主.xls", "数据", TransferissueRecordMainExcelVO.class, datas);
} }
@PostMapping("/pdaCreate")
@Operation(summary = "PDA创建调拨出库记录")
@PreAuthorize("@ss.hasPermission('wms:transferissue-record-main:create')")
public CommonResult<Long> pdaCreateTransferissueRecord(@Valid @RequestBody TransferissueRecordMainCreateReqVO createReqVO) {
Long id = transferissueRecordMainService.pdaCreateTransferissueRecord(createReqVO);
return success(id);
}
} }

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainCreateReqVO.java

@ -1,12 +1,19 @@
package com.win.module.wms.controller.transferissueRecord.vo; package com.win.module.wms.controller.transferissueRecord.vo;
import com.win.framework.excel.core.annotations.SubObject;
import lombok.*; import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
@Schema(description = "管理后台 - 调拨出库记录主创建 Request VO") @Schema(description = "管理后台 - 调拨出库记录主创建 Request VO")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class TransferissueRecordMainCreateReqVO extends TransferissueRecordMainBaseVO { public class TransferissueRecordMainCreateReqVO extends TransferissueRecordMainBaseVO {
@SubObject
@Schema(description = "子表数据")
private List<TransferissueRecordDetailCreateReqVO> subList;
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRecord/ConsumeRecordDetailbConvert.java

@ -6,6 +6,7 @@ import com.win.module.wms.controller.productrepairRecord.vo.ConsumeRecordDetailb
import com.win.module.wms.controller.productrepairRecord.vo.ConsumeRecordDetailbRespVO; import com.win.module.wms.controller.productrepairRecord.vo.ConsumeRecordDetailbRespVO;
import com.win.module.wms.controller.productrepairRecord.vo.ConsumeRecordDetailbUpdateReqVO; import com.win.module.wms.controller.productrepairRecord.vo.ConsumeRecordDetailbUpdateReqVO;
import com.win.module.wms.dal.dataobject.productrepairRecord.ConsumeRecordDetailbDO; import com.win.module.wms.dal.dataobject.productrepairRecord.ConsumeRecordDetailbDO;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestDetailbDO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
@ -33,4 +34,5 @@ public interface ConsumeRecordDetailbConvert {
List<ConsumeRecordDetailbExcelVO> convertList02(List<ConsumeRecordDetailbDO> list); List<ConsumeRecordDetailbExcelVO> convertList02(List<ConsumeRecordDetailbDO> list);
ConsumeRecordDetailbDO convert(ProductrepairRequestDetailbDO productrepairRequestDetailbDO);
} }

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRequest/ProductrepairRequestDetailaConvert.java

@ -34,4 +34,5 @@ public interface ProductrepairRequestDetailaConvert {
List<ProductrepairRequestDetailaExcelVO> convertList02(List<ProductrepairRequestDetailaDO> list); List<ProductrepairRequestDetailaExcelVO> convertList02(List<ProductrepairRequestDetailaDO> list);
List<ProductrepairRequestDetailaDO> convertDOList(List<ProductrepairRequestDetailaCreateReqVO> subList);
} }

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/productrepairRequest/ProductrepairRequestMainConvert.java

@ -4,10 +4,7 @@ import java.util.*;
import com.win.framework.common.pojo.PageResult; import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainCreateReqVO; import com.win.module.wms.controller.productrepairRequest.vo.*;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainExcelVO;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainRespVO;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainUpdateReqVO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO; import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO;
@ -34,4 +31,5 @@ public interface ProductrepairRequestMainConvert {
List<ProductrepairRequestMainExcelVO> convertList02(List<ProductrepairRequestMainDO> list); List<ProductrepairRequestMainExcelVO> convertList02(List<ProductrepairRequestMainDO> list);
ProductrepairRequestMainDO convert(ProductrepairRequestMainBaseVO baseVO);
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestDetailaDO.java

@ -34,7 +34,7 @@ public class ProductrepairRequestDetailaDO extends BaseDO {
/** /**
* 生产线代码 * 生产线代码
*/ */
private String productionlineCode; private String productionLineCode;
/** /**
* 工位代码 * 工位代码
*/ */

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestDetailbDO.java

@ -12,7 +12,7 @@ import lombok.*;
* *
* @author 超级管理员 * @author 超级管理员
*/ */
@TableName("request_consumere_detailb") @TableName("request_consume_detailb")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)

9
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/productrepairRequest/ProductrepairRequestMainDO.java

@ -125,4 +125,13 @@ public class ProductrepairRequestMainDO extends BaseDO {
*/ */
private String directCreateRecord; private String directCreateRecord;
/**
* 入库库存状态范围
*/
private String inInventoryStatuses;
/**
* 出库库存状态范围
*/
private String outInventoryStatuses;
} }

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRequest/ProductrepairRequestDetailaMapper.java

@ -23,7 +23,7 @@ public interface ProductrepairRequestDetailaMapper extends BaseMapperX<Productre
default PageResult<ProductrepairRequestDetailaDO> selectPage(ProductrepairRequestDetailaPageReqVO reqVO) { default PageResult<ProductrepairRequestDetailaDO> selectPage(ProductrepairRequestDetailaPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<ProductrepairRequestDetailaDO>() return selectPage(reqVO, new LambdaQueryWrapperX<ProductrepairRequestDetailaDO>()
.eqIfPresent(ProductrepairRequestDetailaDO::getFromOwnerCode, reqVO.getFromOwnerCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getFromOwnerCode, reqVO.getFromOwnerCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getProductionlineCode, reqVO.getProductionlineCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getProductionLineCode, reqVO.getProductionLineCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getWorkStationCode, reqVO.getWorkStationCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getWorkStationCode, reqVO.getWorkStationCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getProcessCode, reqVO.getProcessCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getProcessCode, reqVO.getProcessCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getPackingNumber, reqVO.getPackingNumber()) .eqIfPresent(ProductrepairRequestDetailaDO::getPackingNumber, reqVO.getPackingNumber())
@ -53,7 +53,7 @@ public interface ProductrepairRequestDetailaMapper extends BaseMapperX<Productre
default List<ProductrepairRequestDetailaDO> selectList(ProductrepairRequestDetailaExportReqVO reqVO) { default List<ProductrepairRequestDetailaDO> selectList(ProductrepairRequestDetailaExportReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<ProductrepairRequestDetailaDO>() return selectList(new LambdaQueryWrapperX<ProductrepairRequestDetailaDO>()
.eqIfPresent(ProductrepairRequestDetailaDO::getFromOwnerCode, reqVO.getFromOwnerCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getFromOwnerCode, reqVO.getFromOwnerCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getProductionlineCode, reqVO.getProductionlineCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getProductionLineCode, reqVO.getProductionLineCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getWorkStationCode, reqVO.getWorkStationCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getWorkStationCode, reqVO.getWorkStationCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getProcessCode, reqVO.getProcessCode()) .eqIfPresent(ProductrepairRequestDetailaDO::getProcessCode, reqVO.getProcessCode())
.eqIfPresent(ProductrepairRequestDetailaDO::getPackingNumber, reqVO.getPackingNumber()) .eqIfPresent(ProductrepairRequestDetailaDO::getPackingNumber, reqVO.getPackingNumber())
@ -77,4 +77,8 @@ public interface ProductrepairRequestDetailaMapper extends BaseMapperX<Productre
.orderByDesc(ProductrepairRequestDetailaDO::getId)); .orderByDesc(ProductrepairRequestDetailaDO::getId));
} }
default List<ProductrepairRequestDetailaDO> selectList(Long masterId){
return selectList(new LambdaQueryWrapperX<ProductrepairRequestDetailaDO>()
.eqIfPresent(ProductrepairRequestDetailaDO::getMasterId,masterId));
}
} }

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRequest/ProductrepairRequestDetailbMapper.java

@ -64,4 +64,8 @@ public interface ProductrepairRequestDetailbMapper extends BaseMapperX<Productre
.orderByDesc(ProductrepairRequestDetailbDO::getId)); .orderByDesc(ProductrepairRequestDetailbDO::getId));
} }
default List<ProductrepairRequestDetailbDO> selectList(Long masterId){
return selectList(new LambdaQueryWrapperX<ProductrepairRequestDetailbDO>()
.eqIfPresent(ProductrepairRequestDetailbDO::getMasterId,masterId));
}
} }

54
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainService.java

@ -2,10 +2,7 @@ package com.win.module.wms.service.productrepairRequest;
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.wms.controller.productrepairRequest.vo.ProductrepairRequestMainCreateReqVO; import com.win.module.wms.controller.productrepairRequest.vo.*;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainExportReqVO;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainPageReqVO;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainUpdateReqVO;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO; import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO;
import javax.validation.Valid; import javax.validation.Valid;
@ -80,4 +77,53 @@ public interface ProductrepairRequestMainService {
* @return 分页列表 * @return 分页列表
*/ */
PageResult<ProductrepairRequestMainDO> getProductrepairRequestMainSenior(CustomConditions conditions); PageResult<ProductrepairRequestMainDO> getProductrepairRequestMainSenior(CustomConditions conditions);
/**
* 关闭
* @param id 主键ID
* @return 更新数量
*/
Integer closeProductrepairRequestMain(Long id);
/**
* 重新添加
* @param id 主键ID
* @return 更新数量
*/
Integer reAddeProductrepairRequestMain(Long id);
/**
* 提交审批
* @param id 主键ID
* @return 更新数量
*/
Integer submitProductrepairRequestMain(Long id);
/**
* 驳回
* @param id 主键ID
* @return 更新数量
*/
Integer refusedProductrepairRequestMain(Long id);
/**
* 审批通过
* @param id 主键ID
* @return 更新数量
*/
Integer agreeProductrepairRequestMain(Long id);
/**
* 处理
* @param id 主键ID
* @return 更新数量
*/
Integer handleProductrepairRequestMain(Long id);
/**
* 分页返回数据
* @param pageVO
* @return
*/
PageResult<ProductrepairRequestBomRespVO> getBomInfoPage(ProductrepairRequestDetailaPageReqVO pageVO);
} }

437
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java

@ -1,24 +1,75 @@
package com.win.module.wms.service.productrepairRequest; package com.win.module.wms.service.productrepairRequest;
import com.baomidou.mybatisplus.core.metadata.IPage;
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.wms.controller.productrepairRequest.vo.ProductrepairRequestMainCreateReqVO; import com.win.framework.mybatis.core.util.MyBatisUtils;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainExportReqVO; import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainPageReqVO; import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.wms.controller.productrepairRequest.vo.ProductrepairRequestMainUpdateReqVO; 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.wms.controller.bom.vo.BomExportReqVO;
import com.win.module.wms.controller.productrepairRecord.vo.ProductrepairRecordDetailCreateReqVO;
import com.win.module.wms.controller.productrepairRecord.vo.ProductrepairRecordMainCreateReqVO;
import com.win.module.wms.controller.productrepairRequest.vo.*;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.productrepairRecord.ConsumeRecordDetailbConvert;
import com.win.module.wms.convert.productrepairRecord.ProductrepairRecordDetailConvert;
import com.win.module.wms.convert.productrepairRecord.ProductrepairRecordMainConvert;
import com.win.module.wms.convert.productrepairRequest.ProductrepairRequestDetailaConvert;
import com.win.module.wms.convert.productrepairRequest.ProductrepairRequestDetailbConvert;
import com.win.module.wms.convert.productrepairRequest.ProductrepairRequestMainConvert; import com.win.module.wms.convert.productrepairRequest.ProductrepairRequestMainConvert;
import com.win.module.wms.dal.dataobject.accountcalendar.AccountcalendarDO; import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.bom.BomDO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.productionline.ProductionlineDO;
import com.win.module.wms.dal.dataobject.productreceiptRequest.ProductreceiptRequestMainDO;
import com.win.module.wms.dal.dataobject.productrepairRecord.ConsumeRecordDetailbDO;
import com.win.module.wms.dal.dataobject.productrepairRecord.ProductrepairRecordDetailDO;
import com.win.module.wms.dal.dataobject.productrepairRecord.ProductrepairRecordMainDO;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestDetailaDO;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestDetailbDO;
import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO; import com.win.module.wms.dal.dataobject.productrepairRequest.ProductrepairRequestMainDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.shift.ShiftDO;
import com.win.module.wms.dal.dataobject.team.TeamDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.workstation.WorkstationDO;
import com.win.module.wms.dal.mysql.productrepairRecord.ConsumeRecordDetailbMapper;
import com.win.module.wms.dal.mysql.productrepairRecord.ProductrepairRecordDetailMapper;
import com.win.module.wms.dal.mysql.productrepairRecord.ProductrepairRecordMainMapper;
import com.win.module.wms.dal.mysql.productrepairRequest.ProductrepairRequestDetailaMapper;
import com.win.module.wms.dal.mysql.productrepairRequest.ProductrepairRequestDetailbMapper;
import com.win.module.wms.dal.mysql.productrepairRequest.ProductrepairRequestMainMapper; import com.win.module.wms.dal.mysql.productrepairRequest.ProductrepairRequestMainMapper;
import com.win.module.wms.enums.request.RequestStatusEnum;
import com.win.module.wms.enums.request.RequestStatusState;
import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.productionline.ProductionlineService;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.service.shift.ShiftService;
import com.win.module.wms.service.team.TeamService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.service.workshop.WorkshopService;
import com.win.module.wms.service.workstation.WorkstationService;
import com.win.module.wms.util.JobUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
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.util.Collection; import java.math.BigDecimal;
import java.util.List; import java.time.LocalDateTime;
import java.util.*;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.module.wms.enums.ErrorCodeConstants.PRODUCTREPAIR_REQUEST_MAIN_NOT_EXISTS; import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.win.module.wms.enums.ErrorCodeConstants.*;
/** /**
* 制品返修申请主 Service 实现类 * 制品返修申请主 Service 实现类
@ -31,23 +82,258 @@ public class ProductrepairRequestMainServiceImpl implements ProductrepairRequest
@Resource @Resource
private ProductrepairRequestMainMapper productrepairRequestMainMapper; private ProductrepairRequestMainMapper productrepairRequestMainMapper;
@Resource
private RequestsettingService requestsettingService;
@Resource
private JobUtils jobUtils;
@Resource
private WorkshopService workshopService;
@Resource
private TeamService teamService;
@Resource
private ShiftService shiftService;
@Resource
private ProductionlineService productionlineService;
@Resource
private ItembasicService itembasicService;
@Resource
private WorkstationService workstationService;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private AdminUserApi userApi;
@Resource
private ProductrepairRequestDetailaMapper productrepairRequestDetailaMapper;
@Resource
private ProductrepairRequestDetailbMapper productrepairRequestDetailbMapper;
@Resource
private RecordsettingService recordsettingService;
@Resource
private ProductrepairRecordMainMapper productrepairRecordMainMapper;
@Resource
private ProductrepairRecordDetailMapper productrepairRecordDetailMapper;
@Resource
private ConsumeRecordDetailbMapper consumeRecordDetailbMapper;
@Resource
private TrendsApi trendsApi;
@Resource
private TransactionService transactionService;
@Override @Override
public Long createProductrepairRequestMain(ProductrepairRequestMainCreateReqVO createReqVO) { public Long createProductrepairRequestMain(ProductrepairRequestMainCreateReqVO createReqVO) {
// 插入 RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("ProductRepairRequest");
ProductrepairRequestMainDO productrepairRequestMain = ProductrepairRequestMainConvert.INSTANCE.convert(createReqVO); ProductrepairRequestMainDO productrepairRequestMainDO = validatorToCreate(createReqVO,requestsettingDO);
productrepairRequestMainMapper.insert(productrepairRequestMain); if(RequestStatusEnum.HANDLING.getCode().equals(productrepairRequestMainDO.getStatus())) {
// 返回 List<ProductrepairRequestDetailaDO> detailaDOList = productrepairRequestDetailaMapper.selectList(productrepairRequestMainDO.getId());
return productrepairRequestMain.getId(); this.generateJob(productrepairRequestMainDO, detailaDOList);
}
trendsApi.createTrends(productrepairRequestMainDO.getId(), "ProductRepairRequest", "增加了制品返修申请", TrendsTypeEnum.CREATE);
return productrepairRequestMainDO.getId();
}
private void generateJob(ProductrepairRequestMainDO mainDO, List<ProductrepairRequestDetailaDO> detailaDOList) {
//跳过任务直接生成记录
if("TRUE".equals(mainDO.getDirectCreateRecord())) {
ProductrepairRecordMainCreateReqVO productrepairRecordMainCreateReqVO = new ProductrepairRecordMainCreateReqVO();
BeanUtils.copyProperties(mainDO, productrepairRecordMainCreateReqVO);
productrepairRecordMainCreateReqVO.setRequestNumber(mainDO.getNumber());
String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_RECEIPT_RECORD.getCode());
productrepairRecordMainCreateReqVO.setNumber(number);
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ProductRepairRecord");
productrepairRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
productrepairRecordMainCreateReqVO.setOutTransactionType(businesstypeDO.getOutTransactionType());
productrepairRecordMainCreateReqVO.setInTransactionType(businesstypeDO.getInTransactionType());
String interFaceType = recordsettingService.selectRecordsettingExist("ProductRepairRecord").getInterfaceType();
productrepairRecordMainCreateReqVO.setInterfaceType(interFaceType);
productrepairRecordMainCreateReqVO.setExecuteTime(LocalDateTime.now());
productrepairRecordMainCreateReqVO.setActiveDate(LocalDateTime.now());
productrepairRecordMainCreateReqVO.setAvailable("TRUE");
productrepairRecordMainCreateReqVO.setDueTime(mainDO.getDueTime());
productrepairRecordMainCreateReqVO.setId(null);
productrepairRecordMainCreateReqVO.setCreator(null);
productrepairRecordMainCreateReqVO.setCreateTime(null);
ProductrepairRecordMainDO productrepairRecordMainDO = ProductrepairRecordMainConvert.INSTANCE.convert(productrepairRecordMainCreateReqVO);
productrepairRecordMainMapper.insert(productrepairRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
for(ProductrepairRequestDetailaDO productrepairRequestDetailaDO : detailaDOList) {
ProductrepairRecordDetailCreateReqVO productrepairRecordDetailCreateReqVO = new ProductrepairRecordDetailCreateReqVO();
BeanUtils.copyProperties(productrepairRequestDetailaDO, productrepairRecordDetailCreateReqVO);
productrepairRecordDetailCreateReqVO.setNumber(number);
productrepairRecordDetailCreateReqVO.setMasterId(String.valueOf(productrepairRecordMainDO.getId()));
productrepairRecordDetailCreateReqVO.setInventoryStatus(productrepairRequestDetailaDO.getInventoryStatus());
ProductrepairRecordDetailDO productrepairRecordDetailDO = ProductrepairRecordDetailConvert.INSTANCE.convert(productrepairRecordDetailCreateReqVO);
productrepairRecordDetailMapper.insert(productrepairRecordDetailDO);
// 查询二级子表数据
List<ProductrepairRequestDetailbDO> productrepairRequestDetailbDOList = productrepairRequestDetailbMapper.selectList(productrepairRequestDetailaDO.getId());
for(ProductrepairRequestDetailbDO productrepairRequestDetailbDO:productrepairRequestDetailbDOList){
ConsumeRecordDetailbDO consumeRecordDetailbDO = ConsumeRecordDetailbConvert.INSTANCE.convert(productrepairRequestDetailbDO);
consumeRecordDetailbDO.setMasterId(String.valueOf(productrepairRecordDetailDO.getId()));
consumeRecordDetailbMapper.insert(consumeRecordDetailbDO);
}
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(productrepairRecordDetailDO, 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(productrepairRecordMainDO.getBusinessType());
transactionCreateReqVO.setOwnerCode(productrepairRecordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVO.setPackingNumber(productrepairRecordDetailDO.getPackingNumber());
transactionCreateReqVO.setBatch(productrepairRecordDetailDO.getBatch());
transactionCreateReqVO.setContainerNumber(productrepairRecordDetailDO.getContainerNumber());
transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setWarehouseCode(productrepairRecordMainDO.getFromWarehouseCode());
transactionCreateReqVO.setLocationCode(productrepairRecordDetailDO.getToLocationCode());
transactionCreateReqVOList.add(transactionCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
}
}
private ProductrepairRequestMainDO validatorToCreate(ProductrepairRequestMainCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
// DBT——>DBT3("ProductRepairRequest")
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ProductRepairRequest");
ProductrepairRequestMainDO productrepairRequestMainDO = validateMainMethod(createReqVO,businesstypeDO,requestsettingDO);
// 子表处理逻辑 ProductrepairRequestDetailaDO
List<ProductrepairRequestDetailaCreateReqVO> subList = createReqVO.getSubList();
for(ProductrepairRequestDetailaCreateReqVO productrepairRequestDetailaCreateReqVO:subList){
validateDetailMethod(productrepairRequestMainDO, productrepairRequestDetailaCreateReqVO,businesstypeDO);
}
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_CLAIM_RECORD.getCode());
productrepairRequestMainDO.setNumber(number);
productrepairRequestMainDO.setDepartmentCode(userApi.getUser(getLoginUserId()).getDeptId().toString());
productrepairRequestMainMapper.insert(productrepairRequestMainDO);
for(ProductrepairRequestDetailaCreateReqVO productrepairRequestDetailaCreateReqVO:subList){
ProductrepairRequestDetailaDO productrepairRequestDetailaDO = ProductrepairRequestDetailaConvert.INSTANCE.convert(productrepairRequestDetailaCreateReqVO);
productrepairRequestDetailaDO.setMasterId(productrepairRequestMainDO.getId());
productrepairRequestDetailaDO.setNumber(productrepairRequestMainDO.getNumber());
productrepairRequestDetailaDO.setInventoryStatus(businesstypeDO.getOutInventoryStatuses());
productrepairRequestDetailaMapper.insert(productrepairRequestDetailaDO);
List<ProductrepairRequestDetailbCreateReqVO> consumereDetailbList = productrepairRequestDetailaCreateReqVO.getChildList();
List<ProductrepairRequestDetailbDO> childList = new ArrayList<>();
for(ProductrepairRequestDetailbCreateReqVO productrepairRequestDetailbCreateReqVO:consumereDetailbList){
ProductrepairRequestDetailbDO productrepairRequestDetailbDO = ProductrepairRequestDetailbConvert.INSTANCE.convert(productrepairRequestDetailbCreateReqVO);
productrepairRequestDetailbDO.setMasterId(productrepairRequestDetailaDO.getId());
childList.add(productrepairRequestDetailbDO);
}
productrepairRequestDetailbMapper.insertBatch(childList);
}
return productrepairRequestMainDO;
}
private void validateDetailMethod(ProductrepairRequestMainDO mainDO, ProductrepairRequestDetailaBaseVO detailDo,BusinesstypeDO businesstypeDO) {
// 校验--生产线基本信息
ProductionlineDO productionlineDO = productionlineService.productionLineCodeExist(detailDo.getProductionLineCode());
detailDo.setFromLocationCode(productionlineDO.getRawLocationCode());
// 校验--物品基本信息
ItembasicDO itembasicDO = itembasicService.selectItembasic(detailDo.getItemCode());
// 赋值物品Item相关信息
detailDo.setItemDesc1(itembasicDO.getDesc1());
detailDo.setItemDesc2(itembasicDO.getDesc2());
detailDo.setItemName(itembasicDO.getName());
detailDo.setProjectCode(itembasicDO.getProject());
if (!itembasicDO.getUom().equals(detailDo.getUom())) {
// 提示:记量单位【uom】错误,应该是【item.uom】
throw exception(PRODUCTREPAIR_REQUEST_DETAILA_UOM_ERROR,detailDo.getUom(),itembasicDO.getUom());
}
// 校验--工位基础信息
if(StringUtils.isNotEmpty(detailDo.getWorkStationCode())){
WorkstationDO workstationDO = workstationService.selectWorkstationExist(detailDo.getWorkStationCode(), mainDO.getWorkshopCode(), detailDo.getProductionLineCode());
detailDo.setFromLocationCode(workstationDO.getRawLocationCode());
}
// 校验--库存余额 TB——>TB1
validateBalance(detailDo);
// 校验--物品类型 DBT——>DBT2——>IT
jobUtils.selectItembasicExist(itembasicDO.getType(),businesstypeDO);
// 校验--来源库位 DBT——>DBT2——>LO
jobUtils.ifInToLocationType(detailDo.getFromLocationCode(), businesstypeDO);
// 校验--库存状态 DBT——>DBT2——>ISO
jobUtils.ifOutInventoryStatuses(detailDo.getInventoryStatus(),businesstypeDO);
}
private void validateBalance(ProductrepairRequestDetailaBaseVO detailDo) {
String inventoryStatus = detailDo.getInventoryStatus();
String[] inventoryArray = inventoryStatus.split(",");
List<String> inventorystatus = Arrays.asList(inventoryArray);
List<BalanceDO> list = jobUtils.selectlocationReturnManagementAccuracy(detailDo.getItemCode(), detailDo.getPackingNumber(), detailDo.getBatch(), detailDo.getFromLocationCode(),inventorystatus);
if(list != null && list.size() > 0){
BalanceDO balanceDO = list.get(0);
if(balanceDO.getQty().compareTo(detailDo.getQty()) < 0){
// 返修数量【qty】不能大于库存数量【banlance.qty】
throw exception(PRODUCTREPAIR_REQUEST_DETAILA_QTY_ERROR,detailDo.getQty(),balanceDO.getQty());
}
}else {
// 余额校验异常
throw exception(PRODUCTREPAIR_REQUEST_DETAILA_BALANCE_ERROR);
}
}
private ProductrepairRequestMainDO validateMainMethod(ProductrepairRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO) {
ProductrepairRequestMainDO productrepairRequestMainDO = ProductrepairRequestMainConvert.INSTANCE.convert(baseVO);
// 校验--车间
workshopService.selectWorkshopExist(productrepairRequestMainDO.getWorkshopCode());
// 校验--班组
if(StringUtils.isNotEmpty(productrepairRequestMainDO.getTeam())){
TeamDO teamDO = teamService.selectTeamExist(productrepairRequestMainDO.getTeam());
if(teamDO == null){
// 提示:班组【team】无效
throw exception(PRODUCTREPAIR_REQUEST_MAIN_TEAM_NOT_INVALID);
}
}
// 校验--班次
if(StringUtils.isNotEmpty(productrepairRequestMainDO.getShift())){
ShiftDO shiftDO = shiftService.selectShiftExist(productrepairRequestMainDO.getShift());
if(shiftDO == null){
// 提示:班次【shift】无效
throw exception(PRODUCTREPAIR_REQUEST_MAIN_SHIFT_NOT_INVALID);
}
}
// 校验--截止时间
validordurtime(productrepairRequestMainDO.getDueTime());
// 赋值逻辑
RequestStatusState requestStatusState = new RequestStatusState();
requestStatusState.newObject(productrepairRequestMainDO.getAutoCommit(), productrepairRequestMainDO.getAutoAgree(), productrepairRequestMainDO.getAutoExecute());
productrepairRequestMainDO.setStatus(requestStatusState.getState().getCode());
productrepairRequestMainDO.setRequestTime(LocalDateTime.now());
productrepairRequestMainDO.setCreateTime(LocalDateTime.now());
productrepairRequestMainDO.setAutoAgree(requestsettingDO.getAutoAgree());
productrepairRequestMainDO.setAutoCommit(requestsettingDO.getAutoCommit());
productrepairRequestMainDO.setAutoExecute(requestsettingDO.getAutoExecute());
productrepairRequestMainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
productrepairRequestMainDO.setBusinessType(businesstypeDO.getCode());
productrepairRequestMainDO.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
productrepairRequestMainDO.setFromAreaCodes(businesstypeDO.getOutAreaCodes());
productrepairRequestMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());//入库库存状态范围
productrepairRequestMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());//出库库存状态范围
return productrepairRequestMainDO;
} }
private void validordurtime(LocalDateTime durtime){
if(!durtime.isAfter(LocalDateTime.now())){
throw exception(TIME_AFTER,LocalDateTime.now(),durtime);
}
}
@Transactional
@Override @Override
public void updateProductrepairRequestMain(ProductrepairRequestMainUpdateReqVO updateReqVO) { public void updateProductrepairRequestMain(ProductrepairRequestMainUpdateReqVO updateReqVO) {
// 校验存在 // 校验存在
validateProductrepairRequestMainExists(updateReqVO.getId()); validateProductrepairRequestMainExists(updateReqVO.getId());
// 更新 // 更新
ProductrepairRequestMainDO updateObj = ProductrepairRequestMainConvert.INSTANCE.convert(updateReqVO); ProductrepairRequestMainDO updateObj = ProductrepairRequestMainConvert.INSTANCE.convert(updateReqVO);
if(RequestStatusEnum.HANDLING.getCode().equals(updateObj.getStatus())) {
List<ProductrepairRequestDetailaDO> detailaDOList = productrepairRequestDetailaMapper.selectList(updateObj.getId());
this.generateJob(updateObj, detailaDOList);
}
productrepairRequestMainMapper.updateById(updateObj); productrepairRequestMainMapper.updateById(updateObj);
trendsApi.createTrends(updateObj.getId(), "ProductRepairRequest", "更新了制品返修申请", TrendsTypeEnum.UPDATE);
} }
@Override @Override
@ -58,10 +344,12 @@ public class ProductrepairRequestMainServiceImpl implements ProductrepairRequest
productrepairRequestMainMapper.deleteById(id); productrepairRequestMainMapper.deleteById(id);
} }
private void validateProductrepairRequestMainExists(Long id) { private ProductrepairRequestMainDO validateProductrepairRequestMainExists(Long id) {
if (productrepairRequestMainMapper.selectById(id) == null) { ProductrepairRequestMainDO productrepairRequestMainDO = productrepairRequestMainMapper.selectById(id);
if (productrepairRequestMainDO == null) {
throw exception(PRODUCTREPAIR_REQUEST_MAIN_NOT_EXISTS); throw exception(PRODUCTREPAIR_REQUEST_MAIN_NOT_EXISTS);
} }
return productrepairRequestMainDO;
} }
@Override @Override
@ -88,4 +376,123 @@ public class ProductrepairRequestMainServiceImpl implements ProductrepairRequest
public PageResult<ProductrepairRequestMainDO> getProductrepairRequestMainSenior(CustomConditions conditions) { public PageResult<ProductrepairRequestMainDO> getProductrepairRequestMainSenior(CustomConditions conditions) {
return productrepairRequestMainMapper.selectSenior(conditions); return productrepairRequestMainMapper.selectSenior(conditions);
} }
@Transactional
@Override
public Integer closeProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.close();
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());
//增加操作记录
trendsApi.createTrends(id, "ProductRepairRequest", "关闭了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Transactional
@Override
public Integer reAddeProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.reAdd();
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录
trendsApi.createTrends(id, "ProductRepairRequest", "打开了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Transactional
@Override
public Integer submitProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.submit(mainDO.getAutoAgree(), mainDO.getAutoExecute());
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());
//调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
List<ProductrepairRequestDetailaDO> detailaDOList = productrepairRequestDetailaMapper.selectList(mainDO.getId());
this.generateJob(mainDO, detailaDOList);
}
trendsApi.createTrends(id, "ProductRepairRequest", "提交了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Transactional
@Override
public Integer refusedProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.refused();
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());
trendsApi.createTrends(id, "ProductRepairRequest", "驳回了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Transactional
@Override
public Integer agreeProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.agree(mainDO.getAutoAgree());
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());
//调用自动执行方法
if(RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
List<ProductrepairRequestDetailaDO> detailaDOList = productrepairRequestDetailaMapper.selectList(mainDO.getId());
this.generateJob(mainDO, detailaDOList);
}
trendsApi.createTrends(id, "ProductRepairRequest", "审批通过了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Transactional
@Override
public Integer handleProductrepairRequestMain(Long id) {
ProductrepairRequestMainDO mainDO = validateProductrepairRequestMainExists(id);
RequestStatusState requestStatusState = new RequestStatusState(mainDO.getStatus());
boolean flag = requestStatusState.handle();
if(!flag) {
throw new ServiceException(PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR);
}
mainDO.setStatus(requestStatusState.getState().getCode());
//调用执行方法
List<ProductrepairRequestDetailaDO> detailaDOList = productrepairRequestDetailaMapper.selectList(mainDO.getId());
this.generateJob(mainDO, detailaDOList);
trendsApi.createTrends(id, "ProductRepairRequest", "执行了制品返修申请", TrendsTypeEnum.UPDATE);
return productrepairRequestMainMapper.updateById(mainDO);
}
@Override
public PageResult<ProductrepairRequestBomRespVO> getBomInfoPage(ProductrepairRequestDetailaPageReqVO pageVO) {
IPage<ProductrepairRequestBomRespVO> myPage = MyBatisUtils.buildPage(pageVO);
List<Map<String,Object>> list = jobUtils.bomDismantleList(pageVO.getItemCode(),"");
List<ProductrepairRequestBomRespVO> resultList = new ArrayList<>();
for(Map<String,Object> map:list){
ProductrepairRequestBomRespVO productrepairRequestBomRespVO = new ProductrepairRequestBomRespVO();
productrepairRequestBomRespVO.setItemCode(map.get("itemCode") != null?map.get("itemCode").toString():"");
productrepairRequestBomRespVO.setUom(map.get("uom") != null?map.get("uom").toString():"");
productrepairRequestBomRespVO.setQty(map.get("qty") != null?map.get("qty").toString():"");
productrepairRequestBomRespVO.setVersion(map.get("version") != null?map.get("version").toString():"");
resultList.add(productrepairRequestBomRespVO);
}
myPage.setRecords(resultList);
myPage.setTotal(resultList.size());
PageResult<ProductrepairRequestBomRespVO> pageResult = new PageResult(myPage.getRecords(),myPage.getTotal());
return pageResult;
}
} }

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainService.java

@ -80,4 +80,10 @@ public interface TransferissueRecordMainService {
*/ */
List<TransferissueRecordMainDO> getTransferissueRecordMainList(TransferissueRecordMainExportReqVO exportReqVO); List<TransferissueRecordMainDO> getTransferissueRecordMainList(TransferissueRecordMainExportReqVO exportReqVO);
/**
* PDA创建记录
* @param createReqVO 记录请参数
* @return 主表ID
*/
Long pdaCreateTransferissueRecord(TransferissueRecordMainCreateReqVO createReqVO);
} }

55
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java

@ -2,17 +2,24 @@ package com.win.module.wms.service.transferissueRecord;
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.wms.controller.transferissueRecord.vo.TransferissueRecordMainCreateReqVO; import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainExportReqVO; import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainPageReqVO; import com.win.module.wms.controller.transferissueRecord.vo.*;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainUpdateReqVO; import com.win.module.wms.convert.transferissueRecord.TransferissueRecordDetailConvert;
import com.win.module.wms.convert.transferissueRecord.TransferissueRecordMainConvert; import com.win.module.wms.convert.transferissueRecord.TransferissueRecordMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.transferissueRecord.TransferissueRecordDetailDO;
import com.win.module.wms.dal.dataobject.transferissueRecord.TransferissueRecordMainDO; import com.win.module.wms.dal.dataobject.transferissueRecord.TransferissueRecordMainDO;
import com.win.module.wms.dal.mysql.transferissueRecord.TransferissueRecordDetailMapper;
import com.win.module.wms.dal.mysql.transferissueRecord.TransferissueRecordMainMapper; import com.win.module.wms.dal.mysql.transferissueRecord.TransferissueRecordMainMapper;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.util.JobUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
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.time.LocalDateTime;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
@ -30,6 +37,14 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa
@Resource @Resource
private TransferissueRecordMainMapper transferissueRecordMainMapper; private TransferissueRecordMainMapper transferissueRecordMainMapper;
@Resource
private JobUtils jobUtils;
@Resource
private RecordsettingService recordsettingService;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private TransferissueRecordDetailMapper transferissueRecordDetailMapper;
@Override @Override
public Long createTransferissueRecordMain(TransferissueRecordMainCreateReqVO createReqVO) { public Long createTransferissueRecordMain(TransferissueRecordMainCreateReqVO createReqVO) {
@ -86,4 +101,36 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa
return transferissueRecordMainMapper.selectList(exportReqVO); return transferissueRecordMainMapper.selectList(exportReqVO);
} }
@Transactional
@Override
public Long pdaCreateTransferissueRecord(TransferissueRecordMainCreateReqVO createReqVO) {
TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO);
String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_DELIVER_RECORD.getCode());
transferissueRecordMainDO.setNumber(number);
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("TransferDeliverRecord");
transferissueRecordMainDO.setBusinessType(businesstypeDO.getCode());
transferissueRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType());
transferissueRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType());
String interFaceType = recordsettingService.selectRecordsettingExist("TransferDeliverRecord").getInterfaceType();
transferissueRecordMainDO.setInterfaceType(interFaceType);
transferissueRecordMainDO.setExecuteTime(LocalDateTime.now());
transferissueRecordMainDO.setActiveDate(LocalDateTime.now());
transferissueRecordMainDO.setAvailable("TRUE");
transferissueRecordMainDO.setDueTime(null);
transferissueRecordMainDO.setId(null);
transferissueRecordMainDO.setCreator(null);
transferissueRecordMainDO.setCreateTime(null);
transferissueRecordMainMapper.insert(transferissueRecordMainDO);
List<TransferissueRecordDetailCreateReqVO> subList = createReqVO.getSubList();
for(TransferissueRecordDetailCreateReqVO transferissueRecordDetailCreateReqVO : subList) {
TransferissueRecordDetailDO recordDetailDO = TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO);
recordDetailDO.setNumber(number);
recordDetailDO.setMasterId(String.valueOf(transferissueRecordMainDO.getId()));
transferissueRecordDetailMapper.insert(recordDetailDO);
}
return transferissueRecordMainDO.getId();
}
} }

30
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRequest/TransferissueRequestMainServiceImpl.java

@ -12,6 +12,7 @@ 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.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.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordDetailCreateReqVO; import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordDetailCreateReqVO;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainCreateReqVO; import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainCreateReqVO;
import com.win.module.wms.controller.transferissueRequest.vo.*; import com.win.module.wms.controller.transferissueRequest.vo.*;
@ -29,6 +30,7 @@ import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.jobsetting.JobsettingDO; import com.win.module.wms.dal.dataobject.jobsetting.JobsettingDO;
import com.win.module.wms.dal.dataobject.location.LocationDO; import com.win.module.wms.dal.dataobject.location.LocationDO;
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.dataobject.transferissueJob.TransferissueJobDetailDO; import com.win.module.wms.dal.dataobject.transferissueJob.TransferissueJobDetailDO;
import com.win.module.wms.dal.dataobject.transferissueJob.TransferissueJobMainDO; import com.win.module.wms.dal.dataobject.transferissueJob.TransferissueJobMainDO;
import com.win.module.wms.dal.dataobject.transferissueRecord.TransferissueRecordMainDO; import com.win.module.wms.dal.dataobject.transferissueRecord.TransferissueRecordMainDO;
@ -49,6 +51,7 @@ import com.win.module.wms.service.jobsetting.JobsettingService;
import com.win.module.wms.service.location.LocationService; import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.service.recordsetting.RecordsettingService; import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.service.transferreceiptRequest.TransferreceiptRequestMainService; import com.win.module.wms.service.transferreceiptRequest.TransferreceiptRequestMainService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -112,7 +115,8 @@ public class TransferissueRequestMainServiceImpl implements TransferissueRequest
private RecordsettingService recordsettingService; private RecordsettingService recordsettingService;
@Resource @Resource
private TransferreceiptRequestMainService transferreceiptRequestMainService; private TransferreceiptRequestMainService transferreceiptRequestMainService;
@Resource
private TransactionService transactionService;
@Transactional @Transactional
@Override @Override
@ -598,6 +602,9 @@ public class TransferissueRequestMainServiceImpl implements TransferissueRequest
TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(transferissueRecordMainCreateReqVO); TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(transferissueRecordMainCreateReqVO);
transferissueRecordMainMapper.insert(transferissueRecordMainDO); transferissueRecordMainMapper.insert(transferissueRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
List<TransferreceiptRequestDetailCreateReqVO> transferreceiptReqSubList = new ArrayList<>(); List<TransferreceiptRequestDetailCreateReqVO> transferreceiptReqSubList = new ArrayList<>();
for(TransferissueRequestDetailDO transferissueRequestDetailDO : detailDOList) { for(TransferissueRequestDetailDO transferissueRequestDetailDO : detailDOList) {
TransferissueRecordDetailCreateReqVO transferissueRecordDetailCreateReqVO = new TransferissueRecordDetailCreateReqVO(); TransferissueRecordDetailCreateReqVO transferissueRecordDetailCreateReqVO = new TransferissueRecordDetailCreateReqVO();
@ -615,6 +622,25 @@ public class TransferissueRequestMainServiceImpl implements TransferissueRequest
transferissueRecordDetailCreateReqVO.setFromAreaCode(transferissueRequestDetailDO.getFromLocationCode()); transferissueRecordDetailCreateReqVO.setFromAreaCode(transferissueRequestDetailDO.getFromLocationCode());
transferissueRecordDetailMapper.insert(TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO)); transferissueRecordDetailMapper.insert(TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO));
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(transferissueRecordDetailCreateReqVO, transactionCreateReqVO);
//增加业务类型
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(transferissueRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(transferissueRecordDetailCreateReqVO.getToLocationCode());
transactionCreateReqVO.setOwnerCode(transferissueRecordDetailCreateReqVO.getFromOwnerCode());
transactionCreateReqVO.setPackingNumber(transferissueRequestDetailDO.getPackingNumber());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setBatch(transferissueRequestDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(transferissueRecordMainDO.getToWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
// 调拨入库数据拼装 // 调拨入库数据拼装
TransferreceiptRequestDetailCreateReqVO transferreceiptRequestDetailCreateReqVO = new TransferreceiptRequestDetailCreateReqVO(); TransferreceiptRequestDetailCreateReqVO transferreceiptRequestDetailCreateReqVO = new TransferreceiptRequestDetailCreateReqVO();
BeanUtils.copyProperties(transferissueRequestDetailDO,transferreceiptRequestDetailCreateReqVO); BeanUtils.copyProperties(transferissueRequestDetailDO,transferreceiptRequestDetailCreateReqVO);
@ -637,6 +663,8 @@ public class TransferissueRequestMainServiceImpl implements TransferissueRequest
createReqVO.setSubList(transferreceiptReqSubList); createReqVO.setSubList(transferreceiptReqSubList);
log.info("请求参数查看:{}",createReqVO); log.info("请求参数查看:{}",createReqVO);
transferreceiptRequestMainService.createTransferreceiptRequestMain(createReqVO); transferreceiptRequestMainService.createTransferreceiptRequestMain(createReqVO);
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
return; return;
} }
// 任务 主表数据创建 // 任务 主表数据创建

Loading…
Cancel
Save