Browse Source

PDA计划出库与入库、报废出库记录开发

master
赵雪冰 2 years ago
parent
commit
d0a35fa719
  1. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/scrapRecord/ScrapRecordMainController.java
  2. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/scrapRecord/vo/ScrapRecordMainCreateReqVO.java
  3. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java
  4. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferreceiptRequest/vo/TransferreceiptRequestMainBaseVO.java
  5. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/unplannedissueRecord/vo/UnplannedissueRecordMainCreateReqVO.java
  6. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/unplannedreceiptRecord/vo/UnplannedreceiptRecordMainCreateReqVO.java
  7. 9
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordDetailService.java
  8. 19
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordDetailServiceImpl.java
  9. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordMainService.java
  10. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordMainServiceImpl.java
  11. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestDetailService.java
  12. 41
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestDetailServiceImpl.java
  13. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestMainService.java
  14. 63
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestMainServiceImpl.java
  15. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java
  16. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferreceiptJob/TransferreceiptJobMainServiceImpl.java
  17. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferreceiptRequest/TransferreceiptRequestMainServiceImpl.java
  18. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueJob/UnplannedissueJobMainServiceImpl.java
  19. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRecord/UnplannedissueRecordDetailServiceImpl.java
  20. 97
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRecord/UnplannedissueRecordMainServiceImpl.java
  21. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRequest/UnplannedissueRequestDetailServiceImpl.java
  22. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRequest/UnplannedissueRequestMainServiceImpl.java
  23. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptJob/UnplannedreceiptJobMainServiceImpl.java
  24. 111
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRecord/UnplannedreceiptRecordMainServiceImpl.java
  25. 36
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRequest/UnplannedreceiptRequestDetailServiceImpl.java
  26. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRequest/UnplannedreceiptRequestMainServiceImpl.java

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/scrapRecord/ScrapRecordMainController.java

@ -43,7 +43,7 @@ public class ScrapRecordMainController {
@PostMapping("/create") @PostMapping("/create")
@Operation(summary = "创建报废出库记录主") @Operation(summary = "创建报废出库记录主")
@PreAuthorize("@ss.hasPermission('wms:scrap-record-main:create')") @PreAuthorize("@ss.hasPermission('wms:scrap-record-main:create')")
public CommonResult<String> createScrapRecordMain(@Valid @RequestBody ScrapRecordMainCreateReqVO createReqVO) { public CommonResult<Long> createScrapRecordMain(@Valid @RequestBody ScrapRecordMainCreateReqVO createReqVO) {
return success(scrapRecordMainService.createScrapRecordMain(createReqVO)); return success(scrapRecordMainService.createScrapRecordMain(createReqVO));
} }

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/scrapRecord/vo/ScrapRecordMainCreateReqVO.java

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

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java

@ -48,7 +48,6 @@ public class TransferissueRecordMainBaseVO {
private String toWarehouseCode; private String toWarehouseCode;
@Schema(description = "代码", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "代码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "代码不能为空")
private String code; private String code;
@Schema(description = "接口类型", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "接口类型", requiredMode = Schema.RequiredMode.REQUIRED)

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferreceiptRequest/vo/TransferreceiptRequestMainBaseVO.java

@ -43,7 +43,6 @@ public class TransferreceiptRequestMainBaseVO {
private String remark; private String remark;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "创建时间不能为空")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime; private LocalDateTime createTime;
@ -59,7 +58,6 @@ public class TransferreceiptRequestMainBaseVO {
private LocalDateTime dueTime; private LocalDateTime dueTime;
@Schema(description = "部门", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "部门", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "部门不能为空")
private String departmentCode; private String departmentCode;
@Schema(description = "状态") @Schema(description = "状态")

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/unplannedissueRecord/vo/UnplannedissueRecordMainCreateReqVO.java

@ -1,12 +1,20 @@
package com.win.module.wms.controller.unplannedissueRecord.vo; package com.win.module.wms.controller.unplannedissueRecord.vo;
import com.win.framework.excel.core.annotations.SubObject;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordDetailCreateReqVO;
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 UnplannedissueRecordMainCreateReqVO extends UnplannedissueRecordMainBaseVO { public class UnplannedissueRecordMainCreateReqVO extends UnplannedissueRecordMainBaseVO {
@SubObject
@Schema(description = "子表数据")
private List<UnplannedissueRecordDetailCreateReqVO> subList;
} }

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/unplannedreceiptRecord/vo/UnplannedreceiptRecordMainCreateReqVO.java

@ -1,12 +1,19 @@
package com.win.module.wms.controller.unplannedreceiptRecord.vo; package com.win.module.wms.controller.unplannedreceiptRecord.vo;
import com.win.framework.excel.core.annotations.SubObject;
import com.win.module.wms.controller.unplannedissueRecord.vo.UnplannedissueRecordDetailCreateReqVO;
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 UnplannedreceiptRecordMainCreateReqVO extends UnplannedreceiptRecordMainBaseVO { public class UnplannedreceiptRecordMainCreateReqVO extends UnplannedreceiptRecordMainBaseVO {
@SubObject
@Schema(description = "子表数据")
private List<UnplannedreceiptRecordDetailCreateReqVO> subList;
} }

9
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordDetailService.java

@ -1,15 +1,16 @@
package com.win.module.wms.service.scrapRecord; package com.win.module.wms.service.scrapRecord;
import java.util.*;
import javax.validation.*;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailExportReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailExportReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailPageReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailPageReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailUpdateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailUpdateReqVO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO; import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO;
import com.win.framework.common.pojo.PageResult;
import javax.validation.Valid;
import java.util.Collection;
import java.util.List;
/** /**
* 报废出库记录子 Service 接口 * 报废出库记录子 Service 接口

19
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordDetailServiceImpl.java

@ -1,24 +1,23 @@
package com.win.module.wms.service.scrapRecord; package com.win.module.wms.service.scrapRecord;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailExportReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailExportReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailPageReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailPageReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailUpdateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailUpdateReqVO;
import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordDetailMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import java.util.*; import javax.annotation.Resource;
import java.util.Collection;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO; import java.util.List;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordDetailMapper;
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.*; import static com.win.module.wms.enums.ErrorCodeConstants.SCRAP_RECORD_DETAIL_NOT_EXISTS;
/** /**
* 报废出库记录子 Service 实现类 * 报废出库记录子 Service 实现类
@ -57,10 +56,12 @@ public class ScrapRecordDetailServiceImpl implements ScrapRecordDetailService {
// 删除 // 删除
scrapRecordDetailMapper.deleteById(id); scrapRecordDetailMapper.deleteById(id);
} }
@Override @Override
public PageResult<ScrapRecordDetailDO> getScrapRecordDetailSenior(CustomConditions conditions) { public PageResult<ScrapRecordDetailDO> getScrapRecordDetailSenior(CustomConditions conditions) {
return scrapRecordDetailMapper.selectSenior(conditions); return scrapRecordDetailMapper.selectSenior(conditions);
} }
private void validateScrapRecordDetailExists(Long id) { private void validateScrapRecordDetailExists(Long id) {
if (scrapRecordDetailMapper.selectById(id) == null) { if (scrapRecordDetailMapper.selectById(id) == null) {
throw exception(SCRAP_RECORD_DETAIL_NOT_EXISTS); throw exception(SCRAP_RECORD_DETAIL_NOT_EXISTS);

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordMainService.java

@ -24,7 +24,7 @@ public interface ScrapRecordMainService {
* @param createReqVO 创建信息 * @param createReqVO 创建信息
* @return 编号 * @return 编号
*/ */
String createScrapRecordMain(@Valid ScrapRecordMainCreateReqVO createReqVO); Long createScrapRecordMain(@Valid ScrapRecordMainCreateReqVO createReqVO);
/** /**
* 获得用高级搜索报废出库记录主分页列表 * 获得用高级搜索报废出库记录主分页列表
* *

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRecord/ScrapRecordMainServiceImpl.java

@ -2,21 +2,42 @@ package com.win.module.wms.service.scrapRecord;
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.scrapRecord.vo.ScrapRecordMainCreateReqVO; import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainExportReqVO; import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainPageReqVO; import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainUpdateReqVO; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.scrapRecord.vo.*;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.controller.unplannedissueRecord.vo.UnplannedissueRecordDetailCreateReqVO;
import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert;
import com.win.module.wms.convert.scrapRecord.ScrapRecordMainConvert; import com.win.module.wms.convert.scrapRecord.ScrapRecordMainConvert;
import com.win.module.wms.convert.unplannedissueRecord.UnplannedissueRecordDetailConvert;
import com.win.module.wms.convert.unplannedissueRecord.UnplannedissueRecordMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordMainDO; import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordMainDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.unplannedissueRecord.UnplannedissueRecordDetailDO;
import com.win.module.wms.dal.dataobject.unplannedissueRecord.UnplannedissueRecordMainDO;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordDetailMapper;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordMainMapper; import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordMainMapper;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils;
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.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.win.module.wms.enums.ErrorCodeConstants.SCRAP_RECORD_MAIN_NOT_EXISTS; import static com.win.module.wms.enums.ErrorCodeConstants.SCRAP_RECORD_MAIN_NOT_EXISTS;
/** /**
@ -30,14 +51,75 @@ public class ScrapRecordMainServiceImpl implements ScrapRecordMainService {
@Resource @Resource
private ScrapRecordMainMapper scrapRecordMainMapper; private ScrapRecordMainMapper scrapRecordMainMapper;
@Resource
private ScrapRecordDetailMapper scrapRecordDetailMapper;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private JobUtils jobUtils;
@Resource
private RecordsettingService recordsettingService;
@Resource
private AdminUserApi userApi;
@Resource
private TransactionService transactionService;
@Resource
private TrendsApi trendsApi;
@Transactional
@Override @Override
public String createScrapRecordMain(ScrapRecordMainCreateReqVO createReqVO) { public Long createScrapRecordMain(ScrapRecordMainCreateReqVO createReqVO) {
// 插入 ScrapRecordMainDO scrapRecordMainDO = ScrapRecordMainConvert.INSTANCE.convert(createReqVO);
ScrapRecordMainDO scrapRecordMain = ScrapRecordMainConvert.INSTANCE.convert(createReqVO); String number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_RECORD.getCode());
scrapRecordMainMapper.insert(scrapRecordMain); scrapRecordMainDO.setNumber(number);
// 返回 //增加业务类型
return String.valueOf(scrapRecordMain.getId()); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRecord");
scrapRecordMainDO.setBusinessType(businesstypeDO.getCode());
scrapRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType());
scrapRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType());
String interFaceType = recordsettingService.selectRecordsettingExist("ScrapRecord").getInterfaceType();
scrapRecordMainDO.setInterfaceType(interFaceType);
scrapRecordMainDO.setExecuteTime(LocalDateTime.now());
scrapRecordMainDO.setActiveDate(LocalDateTime.now());
scrapRecordMainDO.setAvailable("TRUE");
scrapRecordMainDO.setDueTime(null);
scrapRecordMainDO.setId(null);
scrapRecordMainDO.setCreator(null);
scrapRecordMainDO.setCreateTime(LocalDateTime.now());
scrapRecordMainMapper.insert(scrapRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
List<ScrapRecordDetailCreateReqVO> subList = createReqVO.getSubList();
for(ScrapRecordDetailCreateReqVO scrapRecordDetailCreateReqVO : subList) {
ScrapRecordDetailDO recordDetailDO = ScrapRecordDetailConvert.INSTANCE.convert(scrapRecordDetailCreateReqVO);
recordDetailDO.setNumber(number);
recordDetailDO.setMasterId(scrapRecordMainDO.getId());
recordDetailDO.setId(null);
scrapRecordDetailMapper.insert(recordDetailDO);
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(recordDetailDO, transactionCreateReqVO);
//增加业务类型
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(scrapRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(recordDetailDO.getFromLocationCode());
transactionCreateReqVO.setOwnerCode(recordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setPackingNumber(recordDetailDO.getPackingNumber());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setBatch(recordDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(scrapRecordMainDO.getFromWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
trendsApi.createTrends(scrapRecordMainDO.getId(), "ScrapRecord", "增加了报废出库记录", TrendsTypeEnum.CREATE);
return scrapRecordMainDO.getId();
} }
@Override @Override

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestDetailService.java

@ -1,14 +1,16 @@
package com.win.module.wms.service.scrapRequest; package com.win.module.wms.service.scrapRequest;
import java.util.*;
import javax.validation.*;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailCreateReqVO; import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailCreateReqVO;
import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailExportReqVO; import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailExportReqVO;
import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailPageReqVO; import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailPageReqVO;
import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailUpdateReqVO; import com.win.module.wms.controller.scrapRequest.vo.ScrapRequestDetailUpdateReqVO;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO; import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.dal.dataobject.unplannedreceiptRequest.UnplannedreceiptRequestDetailDO; import javax.validation.Valid;
import java.util.Collection;
import java.util.List;
/** /**
* 报废出库申请子 Service 接口 * 报废出库申请子 Service 接口

41
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestDetailServiceImpl.java

@ -1,31 +1,35 @@
package com.win.module.wms.service.scrapRequest; package com.win.module.wms.service.scrapRequest;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum; import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.scrapRequest.vo.*; import com.win.module.wms.controller.scrapRequest.vo.*;
import com.win.module.wms.convert.scrapRequest.ScrapRequestMainConvert; import com.win.module.wms.convert.scrapRequest.ScrapRequestDetailConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO; import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; 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.itembasic.ItembasicDO;
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.scrapRequest.ScrapRequestMainDO; import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptRequest.UnplannedreceiptRequestDetailDO; import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestDetailMapper;
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.service.location.LocationService;
import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import java.util.*;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO; import javax.annotation.Resource;
import com.win.framework.common.pojo.PageResult; import java.util.Arrays;
import com.win.module.wms.convert.scrapRequest.ScrapRequestDetailConvert; import java.util.Collection;
import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestDetailMapper; import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.module.wms.enums.ErrorCodeConstants.*; import static com.win.module.wms.enums.ErrorCodeConstants.SCRAP_REQUEST_DETAIL_NOT_EXISTS;
/** /**
* 报废出库申请子 Service 实现类 * 报废出库申请子 Service 实现类
@ -38,31 +42,31 @@ public class ScrapRequestDetailServiceImpl implements ScrapRequestDetailService
@Resource @Resource
private ScrapRequestDetailMapper scrapRequestDetailMapper; private ScrapRequestDetailMapper scrapRequestDetailMapper;
@Resource @Resource
private RequestsettingService requestsettingService; private RequestsettingService requestsettingService;
@Resource @Resource
private LocationService locationService; private LocationService locationService;
@Resource @Resource
private SerialNumberApi serialNumberApi; private SerialNumberApi serialNumberApi;
@Resource @Resource
private JobUtils jobUtils; private JobUtils jobUtils;
@Resource @Resource
private ItembasicService itembasicService; private ItembasicService itembasicService;
@Resource
private TrendsApi trendsApi;
@Override @Override
public Long createScrapRequestDetail(ScrapRequestDetailCreateReqVO createReqVO) { public Long createScrapRequestDetail(ScrapRequestDetailCreateReqVO createReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("ScrapRequest"); RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("ScrapRequest");
// 插入 // 插入
ScrapRequestDetailDO scrapRequestDetail = validatorToCreate(createReqVO,requestsettingDO); ScrapRequestDetailDO scrapRequestDetail = validatorToCreate(createReqVO,requestsettingDO);
trendsApi.createTrends(scrapRequestDetail.getId(), "ScrapRequest", "增加了报废出库申请", TrendsTypeEnum.CREATE);
return scrapRequestDetail.getId(); return scrapRequestDetail.getId();
} }
private ScrapRequestDetailDO validatorToCreate(ScrapRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) { private ScrapRequestDetailDO validatorToCreate(ScrapRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest");
ScrapRequestDetailDO scrapRequestDetailDO = validateDetailMethod(createReqVO, businesstypeDO, requestsettingDO); ScrapRequestDetailDO scrapRequestDetailDO = validateDetailMethod(createReqVO, businesstypeDO);
String number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.SCRAP_REQUEST.getCode());
scrapRequestDetailDO.setNumber(number); scrapRequestDetailDO.setNumber(number);
scrapRequestDetailDO.setMasterId(createReqVO.getMasterId()); scrapRequestDetailDO.setMasterId(createReqVO.getMasterId());
@ -78,7 +82,7 @@ public class ScrapRequestDetailServiceImpl implements ScrapRequestDetailService
} }
private ScrapRequestDetailDO validateDetailMethod(ScrapRequestDetailBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO) { private ScrapRequestDetailDO validateDetailMethod(ScrapRequestDetailBaseVO baseVO, BusinesstypeDO businesstypeDO) {
ScrapRequestDetailDO detailDo = ScrapRequestDetailConvert.INSTANCE.convert(baseVO); ScrapRequestDetailDO detailDo = ScrapRequestDetailConvert.INSTANCE.convert(baseVO);
ItembasicDO itembasic = validatorItembasic(detailDo.getItemCode()); ItembasicDO itembasic = validatorItembasic(detailDo.getItemCode());
detailDo.setItemDesc1(itembasic.getDesc1()); detailDo.setItemDesc1(itembasic.getDesc1());
@ -95,15 +99,16 @@ public class ScrapRequestDetailServiceImpl implements ScrapRequestDetailService
return detailDo; return detailDo;
} }
@Transactional
@Override @Override
public void updateScrapRequestDetail(ScrapRequestDetailUpdateReqVO updateReqVO) { public void updateScrapRequestDetail(ScrapRequestDetailUpdateReqVO updateReqVO) {
// 校验存在 // 校验存在
validateScrapRequestDetailExists(updateReqVO.getId()); validateScrapRequestDetailExists(updateReqVO.getId());
// 更新 // 更新
ScrapRequestDetailDO updateObj = ScrapRequestDetailConvert.INSTANCE.convert(updateReqVO); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest");
ScrapRequestDetailDO updateObj = validateDetailMethod(updateReqVO, businesstypeDO);
scrapRequestDetailMapper.updateById(updateObj); scrapRequestDetailMapper.updateById(updateObj);
trendsApi.createTrends(updateObj.getId(), "ScrapRequest", "增加了报废出库申请", TrendsTypeEnum.UPDATE);
} }
@Override @Override

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestMainService.java

@ -4,6 +4,7 @@ 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.scrapRequest.vo.*; import com.win.module.wms.controller.scrapRequest.vo.*;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO; import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;

63
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestMainServiceImpl.java

@ -3,6 +3,7 @@ package com.win.module.wms.service.scrapRequest;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.win.framework.common.exception.ServiceException; import com.win.framework.common.exception.ServiceException;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.infra.api.trends.TrendsApi; import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.infra.enums.TrendsTypeEnum; import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.api.serialnumber.SerialNumberApi;
@ -10,50 +11,33 @@ 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.productscrapRequest.vo.*;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainCreateReqVO; import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainCreateReqVO;
import com.win.module.wms.controller.scrapRequest.vo.*; import com.win.module.wms.controller.scrapRequest.vo.*;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordDetailCreateReqVO;
import com.win.module.wms.controller.transferissueRecord.vo.TransferissueRecordMainCreateReqVO;
import com.win.module.wms.controller.transferreceiptRequest.vo.TransferreceiptRequestDetailCreateReqVO;
import com.win.module.wms.controller.transferreceiptRequest.vo.TransferreceiptRequestMainCreateReqVO;
import com.win.module.wms.convert.productscrapRequest.ProductscrapRequestDetailConvert;
import com.win.module.wms.convert.productscrapRequest.ProductscrapRequestMainConvert;
import com.win.module.wms.convert.scrapJob.ScrapJobDetailConvert; import com.win.module.wms.convert.scrapJob.ScrapJobDetailConvert;
import com.win.module.wms.convert.scrapJob.ScrapJobMainConvert; import com.win.module.wms.convert.scrapJob.ScrapJobMainConvert;
import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert; import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert;
import com.win.module.wms.convert.scrapRecord.ScrapRecordMainConvert; import com.win.module.wms.convert.scrapRecord.ScrapRecordMainConvert;
import com.win.module.wms.convert.scrapRequest.ScrapRequestDetailConvert; import com.win.module.wms.convert.scrapRequest.ScrapRequestDetailConvert;
import com.win.module.wms.convert.transferissueJob.TransferissueJobDetailConvert; import com.win.module.wms.convert.scrapRequest.ScrapRequestMainConvert;
import com.win.module.wms.convert.transferissueJob.TransferissueJobMainConvert;
import com.win.module.wms.convert.transferissueRecord.TransferissueRecordDetailConvert;
import com.win.module.wms.convert.transferissueRecord.TransferissueRecordMainConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO; import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; 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.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.productscrapRequest.ProductscrapRequestDetailDO;
import com.win.module.wms.dal.dataobject.productscrapRequest.ProductscrapRequestMainDO;
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.scrapJob.ScrapJobDetailDO; import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobDetailDO;
import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobMainDO; import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobMainDO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO; import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordDetailDO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordMainDO; import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordMainDO;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO; import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestDetailDO;
import com.win.module.wms.dal.dataobject.transferissueJob.TransferissueJobDetailDO; import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO;
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.transferissueRequest.TransferissueRequestDetailDO;
import com.win.module.wms.dal.dataobject.transferissueRequest.TransferissueRequestMainDO;
import com.win.module.wms.dal.dataobject.unplannedissueRequest.UnplannedissueRequestDetailDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptRequest.UnplannedreceiptRequestMainDO;
import com.win.module.wms.dal.mysql.scrapJob.ScrapJobDetailMapper; import com.win.module.wms.dal.mysql.scrapJob.ScrapJobDetailMapper;
import com.win.module.wms.dal.mysql.scrapJob.ScrapJobMainMapper; import com.win.module.wms.dal.mysql.scrapJob.ScrapJobMainMapper;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordDetailMapper; import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordDetailMapper;
import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordMainMapper; import com.win.module.wms.dal.mysql.scrapRecord.ScrapRecordMainMapper;
import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestDetailMapper; import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestDetailMapper;
import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestMainMapper;
import com.win.module.wms.enums.job.JobStatusEnum; 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;
@ -66,17 +50,15 @@ import com.win.module.wms.service.requestsetting.RequestsettingService;
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;
import javax.annotation.Resource; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.ArrayList;
import java.util.Arrays;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO; import java.util.Collection;
import com.win.framework.common.pojo.PageResult; import java.util.List;
import com.win.module.wms.convert.scrapRequest.ScrapRequestMainConvert;
import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestMainMapper;
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;
@ -124,7 +106,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
@Resource @Resource
private ExpectinService expectinService; private ExpectinService expectinService;
@Transactional
@Override @Override
public Long createScrapRequestMain(ScrapRequestMainCreateReqVO createReqVO) { public Long createScrapRequestMain(ScrapRequestMainCreateReqVO createReqVO) {
// Setting——>QReqS("ScrapRequest") // Setting——>QReqS("ScrapRequest")
@ -267,7 +249,6 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainDO; return scrapRequestMainDO;
} }
private void validateDetailMethod(ScrapRequestDetailDO detailDo, BusinesstypeDO businesstypeDO, ScrapRequestMainDO mainDo) { private void validateDetailMethod(ScrapRequestDetailDO detailDo, BusinesstypeDO businesstypeDO, ScrapRequestMainDO mainDo) {
// BQ——>QL // BQ——>QL
LocationDO locationDO = validatorLocation(detailDo.getFromLocationCode()); LocationDO locationDO = validatorLocation(detailDo.getFromLocationCode());
@ -316,6 +297,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
mainDo.setFromAreaCodes(businesstypeDO.getOutAreaCodes()); mainDo.setFromAreaCodes(businesstypeDO.getOutAreaCodes());
return mainDo; return mainDo;
} }
private ScrapRequestMainDO validatorToUpdate(ScrapRequestMainUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO) { private ScrapRequestMainDO validatorToUpdate(ScrapRequestMainUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest");
ScrapRequestMainDO scrapRequestMainDO = validateMainMethod(updateReqVO,businesstypeDO,requestsettingDO); ScrapRequestMainDO scrapRequestMainDO = validateMainMethod(updateReqVO,businesstypeDO,requestsettingDO);
@ -346,10 +328,12 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
} }
trendsApi.createTrends(requestsettingDO.getId(), "ScrapRequest", "增加了报废出库申请", TrendsTypeEnum.CREATE); trendsApi.createTrends(requestsettingDO.getId(), "ScrapRequest", "增加了报废出库申请", TrendsTypeEnum.CREATE);
} }
@Override @Override
public PageResult<ScrapRequestMainDO> getScrapRequestMainSenior(CustomConditions conditions) { public PageResult<ScrapRequestMainDO> getScrapRequestMainSenior(CustomConditions conditions) {
return scrapRequestMainMapper.selectSenior(conditions); return scrapRequestMainMapper.selectSenior(conditions);
} }
@Override @Override
public void deleteScrapRequestMain(Long id) { public void deleteScrapRequestMain(Long id) {
// 校验存在 // 校验存在
@ -380,16 +364,17 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
public PageResult<ScrapRequestMainDO> getScrapRequestMainPage(ScrapRequestMainPageReqVO pageReqVO) { public PageResult<ScrapRequestMainDO> getScrapRequestMainPage(ScrapRequestMainPageReqVO pageReqVO) {
return scrapRequestMainMapper.selectPage(pageReqVO); return scrapRequestMainMapper.selectPage(pageReqVO);
} }
private void validatetime(LocalDateTime durtime){ private void validatetime(LocalDateTime durtime){
if(LocalDateTime.now().isAfter(durtime)){ if(LocalDateTime.now().isAfter(durtime)){
throw exception(TIME_AFTER,LocalDateTime.now(),durtime); throw exception(TIME_AFTER,LocalDateTime.now(),durtime);
} }
} }
private LocationDO validatorLocation(String Location){ private LocationDO validatorLocation(String Location){
return locationService.selectLocation(Location); return locationService.selectLocation(Location);
} }
@Override @Override
public List<ScrapRequestMainDO> getScrapRequestMainList(ScrapRequestMainExportReqVO exportReqVO) { public List<ScrapRequestMainDO> getScrapRequestMainList(ScrapRequestMainExportReqVO exportReqVO) {
return scrapRequestMainMapper.selectList(exportReqVO); return scrapRequestMainMapper.selectList(exportReqVO);
@ -468,14 +453,13 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return message.toString(); return message.toString();
} }
public List<ScrapRequestImportErrorVO> importscrapRequestList(List<ScrapRequestMainCreateReqVO> datas, Integer mode, boolean updatePart) {
public List<ScrapRequestImportErrorVO> importscrapRequestList(List<ScrapRequestMainCreateReqVO> datas, Integer mode, boolean updatePart){
if (CollUtil.isEmpty(datas)) { if (CollUtil.isEmpty(datas)) {
throw exception(SCRAP_REQUEST_MAIN_NOT_EXISTS); throw exception(SCRAP_REQUEST_MAIN_NOT_EXISTS);
} }
List<ScrapRequestImportErrorVO> errorList = new ArrayList<>(); List<ScrapRequestImportErrorVO> errorList = new ArrayList<>();
datas.forEach(createReqVO -> { datas.forEach(createReqVO -> {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ScrapRequest");
ScrapRequestMainDO mainDo = ScrapRequestMainConvert.INSTANCE.convert(createReqVO); ScrapRequestMainDO mainDo = ScrapRequestMainConvert.INSTANCE.convert(createReqVO);
String messageMain = validateScrapRequestMainImport(mainDo, businesstypeDO); String messageMain = validateScrapRequestMainImport(mainDo, businesstypeDO);
List<ScrapRequestDetailCreateReqVO> subList = createReqVO.getSubList(); List<ScrapRequestDetailCreateReqVO> subList = createReqVO.getSubList();
@ -484,7 +468,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
boolean flag = true; boolean flag = true;
for (ScrapRequestDetailDO detailDO : subDOList) { for (ScrapRequestDetailDO detailDO : subDOList) {
String messageDetail = validateScrapvRequestDetailImport(detailDO, mainDo, businesstypeDO); String messageDetail = validateScrapvRequestDetailImport(detailDO, mainDo, businesstypeDO);
if (!"".equals(messageMain) ||!"".equals(messageDetail) ) { if (!"".equals(messageMain) || !"".equals(messageDetail)) {
ScrapRequestImportErrorVO importErrorVO = ScrapRequestMainConvert.INSTANCE.convert(createReqVO, detailDO); ScrapRequestImportErrorVO importErrorVO = ScrapRequestMainConvert.INSTANCE.convert(createReqVO, detailDO);
importErrorVO.setImportStatus("失败"); importErrorVO.setImportStatus("失败");
messageMain = messageMain + messageDetail; messageMain = messageMain + messageDetail;
@ -510,12 +494,13 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
}); });
return errorList; return errorList;
} }
public List<ScrapRequestMainDO> getScrapRequestMainList1(CustomConditions conditions) { public List<ScrapRequestMainDO> getScrapRequestMainList1(CustomConditions conditions) {
return scrapRequestMainMapper.selectSeniorList(conditions); return scrapRequestMainMapper.selectSeniorList(conditions);
} }
@Transactional
@Override @Override
public Integer closeScrapRequestMain(Long id) { public Integer closeScrapRequestMain(Long id) {
// 校验存在存在下级单据 // 校验存在存在下级单据
@ -534,6 +519,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
@Transactional
@Override @Override
public Integer reAddScrapRequestMain(Long id) { public Integer reAddScrapRequestMain(Long id) {
// 校验存在存在下级单据 // 校验存在存在下级单据
@ -552,6 +538,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
@Transactional
@Override @Override
public Integer submitScrapRequestMain(Long id) { public Integer submitScrapRequestMain(Long id) {
ScrapRequestMainDO mainDO = this.validateScrapRequestMainExists(id); ScrapRequestMainDO mainDO = this.validateScrapRequestMainExists(id);
@ -570,6 +557,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
@Transactional
@Override @Override
public Integer abortScrapRequestMain(Long id) { public Integer abortScrapRequestMain(Long id) {
// 校验存在 // 校验存在
@ -584,6 +572,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
@Transactional
@Override @Override
public Integer agreeScrapRequestMain(Long id) { public Integer agreeScrapRequestMain(Long id) {
// 校验存在 // 校验存在
@ -603,6 +592,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
@Transactional
@Override @Override
public Integer handleScrapRequestMain(Long id) { public Integer handleScrapRequestMain(Long id) {
// 校验存在 // 校验存在
@ -620,5 +610,4 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
return scrapRequestMainMapper.updateById(mainDO); return scrapRequestMainMapper.updateById(mainDO);
} }
} }

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

@ -22,6 +22,7 @@ import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
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;
@ -60,6 +61,7 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa
@Resource @Resource
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Transactional
@Override @Override
public Long createTransferissueRecordMain(TransferissueRecordMainCreateReqVO createReqVO) { public Long createTransferissueRecordMain(TransferissueRecordMainCreateReqVO createReqVO) {
TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO); TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO);
@ -87,6 +89,7 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa
TransferissueRecordDetailDO recordDetailDO = TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO); TransferissueRecordDetailDO recordDetailDO = TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO);
recordDetailDO.setNumber(number); recordDetailDO.setNumber(number);
recordDetailDO.setMasterId(transferissueRecordMainDO.getId()); recordDetailDO.setMasterId(transferissueRecordMainDO.getId());
recordDetailDO.setId(null);
transferissueRecordDetailMapper.insert(recordDetailDO); transferissueRecordDetailMapper.insert(recordDetailDO);
//添加库存事务list //添加库存事务list

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferreceiptJob/TransferreceiptJobMainServiceImpl.java

@ -134,6 +134,7 @@ public class TransferreceiptJobMainServiceImpl implements TransferreceiptJobMain
public List<TransferreceiptJobMainDO> getTransferreceiptJobMainList(TransferreceiptJobMainExportReqVO exportReqVO) { public List<TransferreceiptJobMainDO> getTransferreceiptJobMainList(TransferreceiptJobMainExportReqVO exportReqVO) {
return transferreceiptJobMainMapper.selectList(exportReqVO); return transferreceiptJobMainMapper.selectList(exportReqVO);
} }
@Override @Override
public TransferreceiptJobMainDO transferreceiptJobMainDoStatusRight(String pnumber, String pstatus) { public TransferreceiptJobMainDO transferreceiptJobMainDoStatusRight(String pnumber, String pstatus) {
QueryWrapper queryWrapper = new QueryWrapper(); QueryWrapper queryWrapper = new QueryWrapper();

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferreceiptRequest/TransferreceiptRequestMainServiceImpl.java

@ -102,7 +102,7 @@ public class TransferreceiptRequestMainServiceImpl implements TransferreceiptReq
@Resource @Resource
private TransferreceiptRequestDetailService transferreceiptRequestDetailService; private TransferreceiptRequestDetailService transferreceiptRequestDetailService;
@Transactional
@Override @Override
public Long createTransferreceiptRequestMain(TransferreceiptRequestMainCreateReqVO createReqVO) { public Long createTransferreceiptRequestMain(TransferreceiptRequestMainCreateReqVO createReqVO) {
// Setting-----QReqs // Setting-----QReqs
@ -318,7 +318,6 @@ public class TransferreceiptRequestMainServiceImpl implements TransferreceiptReq
return transferissueRequestMainDO; return transferissueRequestMainDO;
} }
@Override @Override
public void deleteTransferreceiptRequestMain(Long id) { public void deleteTransferreceiptRequestMain(Long id) {
// 校验存在 // 校验存在

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueJob/UnplannedissueJobMainServiceImpl.java

@ -94,10 +94,12 @@ public class UnplannedissueJobMainServiceImpl implements UnplannedissueJobMainSe
UnplannedissueJobMainDO updateObj = UnplannedissueJobMainConvert.INSTANCE.convert(updateReqVO); UnplannedissueJobMainDO updateObj = UnplannedissueJobMainConvert.INSTANCE.convert(updateReqVO);
unplannedissueJobMainMapper.updateById(updateObj); unplannedissueJobMainMapper.updateById(updateObj);
} }
@Override @Override
public PageResult<UnplannedissueJobMainDO> getUnplannedissueJobMainSenior(CustomConditions conditions) { public PageResult<UnplannedissueJobMainDO> getUnplannedissueJobMainSenior(CustomConditions conditions) {
return unplannedissueJobMainMapper.selectSenior(conditions); return unplannedissueJobMainMapper.selectSenior(conditions);
} }
@Override @Override
public void deleteUnplannedissueJobMain(Long id) { public void deleteUnplannedissueJobMain(Long id) {
// 校验存在 // 校验存在
@ -133,6 +135,7 @@ public class UnplannedissueJobMainServiceImpl implements UnplannedissueJobMainSe
public List<UnplannedissueJobMainDO> getUnplannedissueJobMainList(UnplannedissueJobMainExportReqVO exportReqVO) { public List<UnplannedissueJobMainDO> getUnplannedissueJobMainList(UnplannedissueJobMainExportReqVO exportReqVO) {
return unplannedissueJobMainMapper.selectList(exportReqVO); return unplannedissueJobMainMapper.selectList(exportReqVO);
} }
@Override @Override
public UnplannedissueJobMainDO unplannedissueJobMainDoStatusRight(String pnumber, String pstatus) { public UnplannedissueJobMainDO unplannedissueJobMainDoStatusRight(String pnumber, String pstatus) {
QueryWrapper queryWrapper = new QueryWrapper(); QueryWrapper queryWrapper = new QueryWrapper();

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRecord/UnplannedissueRecordDetailServiceImpl.java

@ -56,6 +56,7 @@ public class UnplannedissueRecordDetailServiceImpl implements UnplannedissueReco
// 删除 // 删除
unplannedissueRecordDetailMapper.deleteById(id); unplannedissueRecordDetailMapper.deleteById(id);
} }
@Override @Override
public PageResult<UnplannedissueRecordDetailDO> getUnplannedissueRecordDetailSenior(CustomConditions conditions) { public PageResult<UnplannedissueRecordDetailDO> getUnplannedissueRecordDetailSenior(CustomConditions conditions) {
return unplannedissueRecordDetailMapper.selectSenior(conditions); return unplannedissueRecordDetailMapper.selectSenior(conditions);

97
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRecord/UnplannedissueRecordMainServiceImpl.java

@ -2,21 +2,37 @@ package com.win.module.wms.service.unplannedissueRecord;
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.unplannedissueRecord.vo.UnplannedissueRecordMainCreateReqVO; import com.win.module.infra.api.trends.TrendsApi;
import com.win.module.wms.controller.unplannedissueRecord.vo.UnplannedissueRecordMainExportReqVO; import com.win.module.infra.enums.TrendsTypeEnum;
import com.win.module.wms.controller.unplannedissueRecord.vo.UnplannedissueRecordMainPageReqVO; import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.wms.controller.unplannedissueRecord.vo.UnplannedissueRecordMainUpdateReqVO; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.controller.unplannedissueRecord.vo.*;
import com.win.module.wms.convert.unplannedissueRecord.UnplannedissueRecordDetailConvert;
import com.win.module.wms.convert.unplannedissueRecord.UnplannedissueRecordMainConvert; import com.win.module.wms.convert.unplannedissueRecord.UnplannedissueRecordMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.unplannedissueRecord.UnplannedissueRecordDetailDO;
import com.win.module.wms.dal.dataobject.unplannedissueRecord.UnplannedissueRecordMainDO; import com.win.module.wms.dal.dataobject.unplannedissueRecord.UnplannedissueRecordMainDO;
import com.win.module.wms.dal.mysql.unplannedissueRecord.UnplannedissueRecordDetailMapper;
import com.win.module.wms.dal.mysql.unplannedissueRecord.UnplannedissueRecordMainMapper; import com.win.module.wms.dal.mysql.unplannedissueRecord.UnplannedissueRecordMainMapper;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils;
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.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.win.module.wms.enums.ErrorCodeConstants.UNPLANNEDISSUE_RECORD_MAIN_NOT_EXISTS; import static com.win.module.wms.enums.ErrorCodeConstants.UNPLANNEDISSUE_RECORD_MAIN_NOT_EXISTS;
/** /**
@ -30,14 +46,75 @@ public class UnplannedissueRecordMainServiceImpl implements UnplannedissueRecord
@Resource @Resource
private UnplannedissueRecordMainMapper unplannedissueRecordMainMapper; private UnplannedissueRecordMainMapper unplannedissueRecordMainMapper;
@Resource
private UnplannedissueRecordDetailMapper unplannedissueRecordDetailMapper;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private JobUtils jobUtils;
@Resource
private RecordsettingService recordsettingService;
@Resource
private AdminUserApi userApi;
@Resource
private TransactionService transactionService;
@Resource
private TrendsApi trendsApi;
@Transactional
@Override @Override
public Long createUnplannedissueRecordMain(UnplannedissueRecordMainCreateReqVO createReqVO) { public Long createUnplannedissueRecordMain(UnplannedissueRecordMainCreateReqVO createReqVO) {
// 插入 UnplannedissueRecordMainDO unplannedissueRecordMainDO = UnplannedissueRecordMainConvert.INSTANCE.convert(createReqVO);
UnplannedissueRecordMainDO unplannedissueRecordMain = UnplannedissueRecordMainConvert.INSTANCE.convert(createReqVO); String number = serialNumberApi.generateCode(RuleCodeEnum.UNPLANNED_DELIVER_RECORD.getCode());
unplannedissueRecordMainMapper.insert(unplannedissueRecordMain); unplannedissueRecordMainDO.setNumber(number);
// 返回 //增加业务类型
return unplannedissueRecordMain.getId(); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedDeliverRecord");
unplannedissueRecordMainDO.setBusinessType(businesstypeDO.getCode());
unplannedissueRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType());
unplannedissueRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType());
String interFaceType = recordsettingService.selectRecordsettingExist("UnplannedDeliverRecord").getInterfaceType();
unplannedissueRecordMainDO.setInterfaceType(interFaceType);
unplannedissueRecordMainDO.setExecuteTime(LocalDateTime.now());
unplannedissueRecordMainDO.setActiveDate(LocalDateTime.now());
unplannedissueRecordMainDO.setAvailable("TRUE");
unplannedissueRecordMainDO.setDueTime(null);
unplannedissueRecordMainDO.setId(null);
unplannedissueRecordMainDO.setCreator(null);
unplannedissueRecordMainDO.setCreateTime(LocalDateTime.now());
unplannedissueRecordMainMapper.insert(unplannedissueRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
List<UnplannedissueRecordDetailCreateReqVO> subList = createReqVO.getSubList();
for(UnplannedissueRecordDetailCreateReqVO unplannedissueRecordDetailCreateReqVO : subList) {
UnplannedissueRecordDetailDO recordDetailDO = UnplannedissueRecordDetailConvert.INSTANCE.convert(unplannedissueRecordDetailCreateReqVO);
recordDetailDO.setNumber(number);
recordDetailDO.setMasterId(unplannedissueRecordMainDO.getId());
recordDetailDO.setId(null);
unplannedissueRecordDetailMapper.insert(recordDetailDO);
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(recordDetailDO, transactionCreateReqVO);
//增加业务类型
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(unplannedissueRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(recordDetailDO.getFromLocationCode());
transactionCreateReqVO.setOwnerCode(recordDetailDO.getOwnerCode());
transactionCreateReqVO.setPackingNumber(recordDetailDO.getPackingNumber());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setBatch(recordDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(unplannedissueRecordMainDO.getFromWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
trendsApi.createTrends(unplannedissueRecordMainDO.getId(), "UnplannedDeliverRecord", "增加了计划外出库申请记录", TrendsTypeEnum.CREATE);
return unplannedissueRecordMainDO.getId();
} }
@Override @Override
@ -77,10 +154,12 @@ public class UnplannedissueRecordMainServiceImpl implements UnplannedissueRecord
public PageResult<UnplannedissueRecordMainDO> getUnplannedissueRecordMainPage(UnplannedissueRecordMainPageReqVO pageReqVO) { public PageResult<UnplannedissueRecordMainDO> getUnplannedissueRecordMainPage(UnplannedissueRecordMainPageReqVO pageReqVO) {
return unplannedissueRecordMainMapper.selectPage(pageReqVO); return unplannedissueRecordMainMapper.selectPage(pageReqVO);
} }
@Override @Override
public PageResult<UnplannedissueRecordMainDO> getUnplannedissueRecordMainSenior(CustomConditions conditions) { public PageResult<UnplannedissueRecordMainDO> getUnplannedissueRecordMainSenior(CustomConditions conditions) {
return unplannedissueRecordMainMapper.selectSenior(conditions); return unplannedissueRecordMainMapper.selectSenior(conditions);
} }
@Override @Override
public List<UnplannedissueRecordMainDO> getUnplannedissueRecordMainList(UnplannedissueRecordMainExportReqVO exportReqVO) { public List<UnplannedissueRecordMainDO> getUnplannedissueRecordMainList(UnplannedissueRecordMainExportReqVO exportReqVO) {
return unplannedissueRecordMainMapper.selectList(exportReqVO); return unplannedissueRecordMainMapper.selectList(exportReqVO);

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRequest/UnplannedissueRequestDetailServiceImpl.java

@ -8,11 +8,9 @@ import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum; import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.unplannedissueRequest.vo.*; import com.win.module.wms.controller.unplannedissueRequest.vo.*;
import com.win.module.wms.convert.unplannedissueRequest.UnplannedissueRequestDetailConvert; import com.win.module.wms.convert.unplannedissueRequest.UnplannedissueRequestDetailConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.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.dataobject.location.LocationDO;
import com.win.module.wms.dal.dataobject.productionreturnRequest.ProductionreturnRequestDetailDO;
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.unplannedissueRequest.UnplannedissueRequestDetailDO; import com.win.module.wms.dal.dataobject.unplannedissueRequest.UnplannedissueRequestDetailDO;
import com.win.module.wms.dal.mysql.unplannedissueRequest.UnplannedissueRequestDetailMapper; import com.win.module.wms.dal.mysql.unplannedissueRequest.UnplannedissueRequestDetailMapper;
@ -21,6 +19,7 @@ import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.util.JobUtils; 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;
@ -42,38 +41,32 @@ public class UnplannedissueRequestDetailServiceImpl implements UnplannedissueReq
@Resource @Resource
private UnplannedissueRequestDetailMapper unplannedissueRequestDetailMapper; private UnplannedissueRequestDetailMapper unplannedissueRequestDetailMapper;
@Resource @Resource
private RequestsettingService requestsettingService; private RequestsettingService requestsettingService;
@Resource @Resource
private JobUtils jobUtils; private JobUtils jobUtils;
@Resource @Resource
private SerialNumberApi serialNumberApi; private SerialNumberApi serialNumberApi;
@Resource @Resource
private ItembasicService itembasicService; private ItembasicService itembasicService;
@Resource @Resource
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Resource @Resource
private LocationService locationService; private LocationService locationService;
@Transactional
@Override @Override
public Long createUnplannedissueRequestDetail(UnplannedissueRequestDetailCreateReqVO createReqVO) { public Long createUnplannedissueRequestDetail(UnplannedissueRequestDetailCreateReqVO createReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("UnplannedDeliverRequest"); RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("UnplannedDeliverRequest");
// 插入 // 插入
UnplannedissueRequestDetailDO unplannedissueRequestDetail =validatorToCreate(createReqVO,requestsettingDO); UnplannedissueRequestDetailDO unplannedissueRequestDetail =validatorToCreate(createReqVO,requestsettingDO);
trendsApi.createTrends(requestsettingDO.getId(), "UnplannedDeliverRequest", "增加了计划外出库申请", TrendsTypeEnum.CREATE); trendsApi.createTrends(requestsettingDO.getId(), "UnplannedDeliverRequest", "增加了计划外出库申请", TrendsTypeEnum.CREATE);
return unplannedissueRequestDetail.getId(); return unplannedissueRequestDetail.getId();
} }
private UnplannedissueRequestDetailDO validatorToCreate(UnplannedissueRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) { private UnplannedissueRequestDetailDO validatorToCreate(UnplannedissueRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedDeliverRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedDeliverRequest");
UnplannedissueRequestDetailDO unplannedissueRequestDetailDO = validateDetailMethod(createReqVO,businesstypeDO,requestsettingDO); UnplannedissueRequestDetailDO unplannedissueRequestDetailDO = validateDetailMethod(createReqVO,businesstypeDO);
unplannedissueRequestDetailDO.setMasterId(createReqVO.getMasterId()); unplannedissueRequestDetailDO.setMasterId(createReqVO.getMasterId());
String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_REQUEST.getCode());
unplannedissueRequestDetailDO.setNumber(number); unplannedissueRequestDetailDO.setNumber(number);
@ -81,7 +74,7 @@ public class UnplannedissueRequestDetailServiceImpl implements UnplannedissueReq
return unplannedissueRequestDetailDO; return unplannedissueRequestDetailDO;
} }
private UnplannedissueRequestDetailDO validateDetailMethod(UnplannedissueRequestDetailBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO){ private UnplannedissueRequestDetailDO validateDetailMethod(UnplannedissueRequestDetailBaseVO baseVO, BusinesstypeDO businesstypeDO){
UnplannedissueRequestDetailDO detailDo = UnplannedissueRequestDetailConvert.INSTANCE.convert(baseVO); UnplannedissueRequestDetailDO detailDo = UnplannedissueRequestDetailConvert.INSTANCE.convert(baseVO);
validatorLocation(detailDo.getFromLocationCode()); validatorLocation(detailDo.getFromLocationCode());
ItembasicDO itembasicDO = itembasicService.selectItembasic(detailDo.getItemCode()); ItembasicDO itembasicDO = itembasicService.selectItembasic(detailDo.getItemCode());
@ -95,7 +88,7 @@ public class UnplannedissueRequestDetailServiceImpl implements UnplannedissueReq
String INVENTORY = detailDo.getInventoryStatus(); String INVENTORY = detailDo.getInventoryStatus();
String[] inventory = INVENTORY.split(","); String[] inventory = INVENTORY.split(",");
List<String> inventorystatus = Arrays.asList(inventory); List<String> inventorystatus = Arrays.asList(inventory);
List<BalanceDO> balanceDO = jobUtils.selectlocationReturnManagementAccuracy(detailDo.getItemCode(),detailDo.getPackingNumber(),detailDo.getBatch(), detailDo.getFromLocationCode(),inventorystatus); jobUtils.selectlocationReturnManagementAccuracy(detailDo.getItemCode(),detailDo.getPackingNumber(),detailDo.getBatch(), detailDo.getFromLocationCode(),inventorystatus);
return detailDo; return detailDo;
} }
@ -103,18 +96,22 @@ public class UnplannedissueRequestDetailServiceImpl implements UnplannedissueReq
return locationService.selectLocation(Location); return locationService.selectLocation(Location);
} }
@Transactional
@Override @Override
public void updateUnplannedissueRequestDetail(UnplannedissueRequestDetailUpdateReqVO updateReqVO) { public void updateUnplannedissueRequestDetail(UnplannedissueRequestDetailUpdateReqVO updateReqVO) {
// 校验存在 // 校验存在
validateUnplannedissueRequestDetailExists(updateReqVO.getId()); validateUnplannedissueRequestDetailExists(updateReqVO.getId());
// 更新 // 更新
UnplannedissueRequestDetailDO updateObj = UnplannedissueRequestDetailConvert.INSTANCE.convert(updateReqVO); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedDeliverRequest");
UnplannedissueRequestDetailDO updateObj = validateDetailMethod(updateReqVO,businesstypeDO);
unplannedissueRequestDetailMapper.updateById(updateObj); unplannedissueRequestDetailMapper.updateById(updateObj);
} }
@Override @Override
public PageResult<UnplannedissueRequestDetailDO> getUnplannedissueRequestDetailSenior(CustomConditions conditions) { public PageResult<UnplannedissueRequestDetailDO> getUnplannedissueRequestDetailSenior(CustomConditions conditions) {
return unplannedissueRequestDetailMapper.selectSenior(conditions); return unplannedissueRequestDetailMapper.selectSenior(conditions);
} }
@Override @Override
public void deleteUnplannedissueRequestDetail(Long id) { public void deleteUnplannedissueRequestDetail(Long id) {
// 校验存在 // 校验存在
@ -149,5 +146,4 @@ public class UnplannedissueRequestDetailServiceImpl implements UnplannedissueReq
return unplannedissueRequestDetailMapper.selectList(exportReqVO); return unplannedissueRequestDetailMapper.selectList(exportReqVO);
} }
} }

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedissueRequest/UnplannedissueRequestMainServiceImpl.java

@ -632,7 +632,6 @@ public class UnplannedissueRequestMainServiceImpl implements UnplannedissueReque
return errorList; return errorList;
} }
@Override @Override
public List<UnplannedissueRequestDetailDO> selectList(Long masterId) { public List<UnplannedissueRequestDetailDO> selectList(Long masterId) {
return unplannedissueRequestDetailMapper.selectList(masterId); return unplannedissueRequestDetailMapper.selectList(masterId);

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptJob/UnplannedreceiptJobMainServiceImpl.java

@ -11,15 +11,11 @@ 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.transaction.vo.TransactionCreateReqVO; import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.controller.unplannedissueJob.vo.UnplannedissueJobDetailUpdateReqVO;
import com.win.module.wms.controller.unplannedissueJob.vo.UnplannedissueJobMainUpdateReqVO;
import com.win.module.wms.controller.unplannedreceiptJob.vo.*; import com.win.module.wms.controller.unplannedreceiptJob.vo.*;
import com.win.module.wms.convert.unplannedreceiptJob.UnplannedreceiptJobMainConvert; import com.win.module.wms.convert.unplannedreceiptJob.UnplannedreceiptJobMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.location.LocationDO; import com.win.module.wms.dal.dataobject.location.LocationDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO; import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.unplannedissueJob.UnplannedissueJobDetailDO;
import com.win.module.wms.dal.dataobject.unplannedissueJob.UnplannedissueJobMainDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptJob.UnplannedreceiptJobDetailDO; import com.win.module.wms.dal.dataobject.unplannedreceiptJob.UnplannedreceiptJobDetailDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptJob.UnplannedreceiptJobMainDO; import com.win.module.wms.dal.dataobject.unplannedreceiptJob.UnplannedreceiptJobMainDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptRecord.UnplannedreceiptRecordDetailDO; import com.win.module.wms.dal.dataobject.unplannedreceiptRecord.UnplannedreceiptRecordDetailDO;
@ -139,6 +135,7 @@ public class UnplannedreceiptJobMainServiceImpl implements UnplannedreceiptJobMa
public List<UnplannedreceiptJobMainDO> getUnplannedreceiptJobMainList(UnplannedreceiptJobMainExportReqVO exportReqVO) { public List<UnplannedreceiptJobMainDO> getUnplannedreceiptJobMainList(UnplannedreceiptJobMainExportReqVO exportReqVO) {
return unplannedreceiptJobMainMapper.selectList(exportReqVO); return unplannedreceiptJobMainMapper.selectList(exportReqVO);
} }
@Override @Override
public UnplannedreceiptJobMainDO unplannedreceiptJobMainDoStatusRight(String pnumber, String pstatus) { public UnplannedreceiptJobMainDO unplannedreceiptJobMainDoStatusRight(String pnumber, String pstatus) {
QueryWrapper queryWrapper = new QueryWrapper(); QueryWrapper queryWrapper = new QueryWrapper();
@ -312,7 +309,6 @@ public class UnplannedreceiptJobMainServiceImpl implements UnplannedreceiptJobMa
//变更记录 //变更记录
trendsApi.createTrends(unplannedreceiptJobMainDO.getId(), "UnplannedReceiptJob", "执行计划外入库任务", TrendsTypeEnum.UPDATE); trendsApi.createTrends(unplannedreceiptJobMainDO.getId(), "UnplannedReceiptJob", "执行计划外入库任务", TrendsTypeEnum.UPDATE);
return number; return number;
} }
} }

111
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRecord/UnplannedreceiptRecordMainServiceImpl.java

@ -1,20 +1,39 @@
package com.win.module.wms.service.unplannedreceiptRecord; package com.win.module.wms.service.unplannedreceiptRecord;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.module.wms.controller.unplannedreceiptRecord.vo.UnplannedreceiptRecordMainCreateReqVO;
import com.win.module.wms.controller.unplannedreceiptRecord.vo.UnplannedreceiptRecordMainExportReqVO;
import com.win.module.wms.controller.unplannedreceiptRecord.vo.UnplannedreceiptRecordMainPageReqVO;
import com.win.module.wms.controller.unplannedreceiptRecord.vo.UnplannedreceiptRecordMainUpdateReqVO;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import com.win.module.wms.dal.dataobject.unplannedreceiptRecord.UnplannedreceiptRecordMainDO;
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.enums.TrendsTypeEnum;
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.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.controller.unplannedreceiptRecord.vo.*;
import com.win.module.wms.convert.unplannedreceiptRecord.UnplannedreceiptRecordDetailConvert;
import com.win.module.wms.convert.unplannedreceiptRecord.UnplannedreceiptRecordMainConvert; import com.win.module.wms.convert.unplannedreceiptRecord.UnplannedreceiptRecordMainConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptRecord.UnplannedreceiptRecordDetailDO;
import com.win.module.wms.dal.dataobject.unplannedreceiptRecord.UnplannedreceiptRecordMainDO;
import com.win.module.wms.dal.mysql.unplannedreceiptRecord.UnplannedreceiptRecordDetailMapper;
import com.win.module.wms.dal.mysql.unplannedreceiptRecord.UnplannedreceiptRecordMainMapper; import com.win.module.wms.dal.mysql.unplannedreceiptRecord.UnplannedreceiptRecordMainMapper;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.win.module.wms.enums.ErrorCodeConstants.*; import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.win.module.wms.enums.ErrorCodeConstants.UNPLANNEDRECEIPT_RECORD_MAIN_NOT_EXISTS;
/** /**
* 计划外入库记录主 Service 实现类 * 计划外入库记录主 Service 实现类
@ -27,20 +46,80 @@ public class UnplannedreceiptRecordMainServiceImpl implements UnplannedreceiptRe
@Resource @Resource
private UnplannedreceiptRecordMainMapper unplannedreceiptRecordMainMapper; private UnplannedreceiptRecordMainMapper unplannedreceiptRecordMainMapper;
@Resource
private UnplannedreceiptRecordDetailMapper unplannedreceiptRecordDetailMapper;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private JobUtils jobUtils;
@Resource
private RecordsettingService recordsettingService;
@Resource
private AdminUserApi userApi;
@Resource
private TransactionService transactionService;
@Resource
private TrendsApi trendsApi;
@Override @Override
public PageResult<UnplannedreceiptRecordMainDO> getUnplannedreceiptRecordMainSenior(CustomConditions conditions) { public PageResult<UnplannedreceiptRecordMainDO> getUnplannedreceiptRecordMainSenior(CustomConditions conditions) {
return unplannedreceiptRecordMainMapper.selectSenior(conditions); return unplannedreceiptRecordMainMapper.selectSenior(conditions);
} }
@Transactional
@Override @Override
public Long createUnplannedreceiptRecordMain(UnplannedreceiptRecordMainCreateReqVO createReqVO) { public Long createUnplannedreceiptRecordMain(UnplannedreceiptRecordMainCreateReqVO createReqVO) {
// 插入 UnplannedreceiptRecordMainDO unplannedreceiptRecordMainDO = UnplannedreceiptRecordMainConvert.INSTANCE.convert(createReqVO);
UnplannedreceiptRecordMainDO unplannedreceiptRecordMain = UnplannedreceiptRecordMainConvert.INSTANCE.convert(createReqVO); String number = serialNumberApi.generateCode(RuleCodeEnum.UNPLANNED_RECEIPT_RECORD.getCode());
unplannedreceiptRecordMainMapper.insert(unplannedreceiptRecordMain); unplannedreceiptRecordMainDO.setNumber(number);
// 返回 //增加业务类型
return unplannedreceiptRecordMain.getId(); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedReceiptRecord");
unplannedreceiptRecordMainDO.setBusinessType(businesstypeDO.getCode());
unplannedreceiptRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType());
unplannedreceiptRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType());
String interFaceType = recordsettingService.selectRecordsettingExist("UnplannedReceiptRecord").getInterfaceType();
unplannedreceiptRecordMainDO.setInterfaceType(interFaceType);
unplannedreceiptRecordMainDO.setExecuteTime(LocalDateTime.now());
unplannedreceiptRecordMainDO.setActiveDate(LocalDateTime.now());
unplannedreceiptRecordMainDO.setAvailable("TRUE");
unplannedreceiptRecordMainDO.setDueTime(null);
unplannedreceiptRecordMainDO.setId(null);
unplannedreceiptRecordMainDO.setCreator(null);
unplannedreceiptRecordMainDO.setCreateTime(LocalDateTime.now());
unplannedreceiptRecordMainMapper.insert(unplannedreceiptRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
List<UnplannedreceiptRecordDetailCreateReqVO> subList = createReqVO.getSubList();
for(UnplannedreceiptRecordDetailCreateReqVO unplannedreceiptRecordDetailCreateReqVO : subList) {
UnplannedreceiptRecordDetailDO recordDetailDO = UnplannedreceiptRecordDetailConvert.INSTANCE.convert(unplannedreceiptRecordDetailCreateReqVO);
recordDetailDO.setNumber(number);
recordDetailDO.setMasterId(unplannedreceiptRecordMainDO.getId());
recordDetailDO.setId(null);
unplannedreceiptRecordDetailMapper.insert(recordDetailDO);
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(recordDetailDO, transactionCreateReqVO);
//增加业务类型
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(unplannedreceiptRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(recordDetailDO.getToLocationCode());
transactionCreateReqVO.setOwnerCode(recordDetailDO.getOwnerCode());
transactionCreateReqVO.setPackingNumber(recordDetailDO.getPackingNumber());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setBatch(recordDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(unplannedreceiptRecordMainDO.getToWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
trendsApi.createTrends(unplannedreceiptRecordMainDO.getId(), "UnplannedReceiptRecord", "增加了计划外入库申请记录", TrendsTypeEnum.CREATE);
return unplannedreceiptRecordMainDO.getId();
} }
@Override @Override

36
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRequest/UnplannedreceiptRequestDetailServiceImpl.java

@ -1,34 +1,30 @@
package com.win.module.wms.service.unplannedreceiptRequest; package com.win.module.wms.service.unplannedreceiptRequest;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
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.wms.controller.unplannedreceiptRequest.vo.*; import com.win.module.wms.controller.unplannedreceiptRequest.vo.*;
import com.win.module.wms.convert.unplannedreceiptRequest.UnplannedreceiptRequestMainConvert; import com.win.module.wms.convert.unplannedreceiptRequest.UnplannedreceiptRequestDetailConvert;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.purchasereceiptRequest.PurchasereceiptRequestDetailDO;
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.unplannedreceiptRequest.UnplannedreceiptRequestMainDO; import com.win.module.wms.dal.dataobject.unplannedreceiptRequest.UnplannedreceiptRequestDetailDO;
import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.dal.mysql.unplannedreceiptRequest.UnplannedreceiptRequestDetailMapper;
import com.win.module.wms.service.itembasic.ItembasicService; import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.Collection;
import java.util.List;
import com.win.module.wms.dal.dataobject.unplannedreceiptRequest.UnplannedreceiptRequestDetailDO;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.convert.unplannedreceiptRequest.UnplannedreceiptRequestDetailConvert;
import com.win.module.wms.dal.mysql.unplannedreceiptRequest.UnplannedreceiptRequestDetailMapper;
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.*; import static com.win.module.wms.enums.ErrorCodeConstants.UNPLANNEDRECEIPT_REQUEST_DETAIL_NOT_EXISTS;
/** /**
* 计划外入库申请子 Service 实现类 * 计划外入库申请子 Service 实现类
@ -41,29 +37,26 @@ public class UnplannedreceiptRequestDetailServiceImpl implements Unplannedreceip
@Resource @Resource
private UnplannedreceiptRequestDetailMapper unplannedreceiptRequestDetailMapper; private UnplannedreceiptRequestDetailMapper unplannedreceiptRequestDetailMapper;
@Resource @Resource
private RequestsettingService requestsettingService; private RequestsettingService requestsettingService;
@Resource @Resource
private ItembasicService itembasicService; private ItembasicService itembasicService;
@Resource @Resource
private JobUtils jobUtils; private JobUtils jobUtils;
@Resource @Resource
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Transactional
@Override @Override
public Long createUnplannedreceiptRequestDetail(UnplannedreceiptRequestDetailCreateReqVO createReqVO) { public Long createUnplannedreceiptRequestDetail(UnplannedreceiptRequestDetailCreateReqVO createReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("UnplannedReceiptRequest"); RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("UnplannedReceiptRequest");
// 插入 // 插入
UnplannedreceiptRequestDetailDO unplannedreceiptRequestDetail = validatorToCreate(createReqVO,requestsettingDO); UnplannedreceiptRequestDetailDO unplannedreceiptRequestDetail = validatorToCreate(createReqVO,requestsettingDO);
trendsApi.createTrends(unplannedreceiptRequestDetail.getId(), "UnplannedReceiptRequest", "增加了计划外入库申请", TrendsTypeEnum.CREATE);
return unplannedreceiptRequestDetail.getId(); return unplannedreceiptRequestDetail.getId();
} }
public UnplannedreceiptRequestDetailDO validatorToCreate(UnplannedreceiptRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
private UnplannedreceiptRequestDetailDO validatorToCreate(UnplannedreceiptRequestDetailCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedReceiptRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedReceiptRequest");
UnplannedreceiptRequestDetailDO unplannedreceiptRequestDetailDO = validateDetailMethod(createReqVO,businesstypeDO); UnplannedreceiptRequestDetailDO unplannedreceiptRequestDetailDO = validateDetailMethod(createReqVO,businesstypeDO);
unplannedreceiptRequestDetailMapper.insert(unplannedreceiptRequestDetailDO); unplannedreceiptRequestDetailMapper.insert(unplannedreceiptRequestDetailDO);
@ -86,13 +79,16 @@ public class UnplannedreceiptRequestDetailServiceImpl implements Unplannedreceip
return detailDo; return detailDo;
} }
@Transactional
@Override @Override
public void updateUnplannedreceiptRequestDetail(UnplannedreceiptRequestDetailUpdateReqVO updateReqVO) { public void updateUnplannedreceiptRequestDetail(UnplannedreceiptRequestDetailUpdateReqVO updateReqVO) {
// 校验存在 // 校验存在
validateUnplannedreceiptRequestDetailExists(updateReqVO.getId()); validateUnplannedreceiptRequestDetailExists(updateReqVO.getId());
// 更新 // 更新
UnplannedreceiptRequestDetailDO updateObj = UnplannedreceiptRequestDetailConvert.INSTANCE.convert(updateReqVO); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("UnplannedReceiptRequest");
UnplannedreceiptRequestDetailDO updateObj = validateDetailMethod(updateReqVO,businesstypeDO);
unplannedreceiptRequestDetailMapper.updateById(updateObj); unplannedreceiptRequestDetailMapper.updateById(updateObj);
trendsApi.createTrends(updateObj.getId(), "UnplannedReceiptRequest", "更新了计划外入库申请", TrendsTypeEnum.UPDATE);
} }
@Override @Override

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/unplannedreceiptRequest/UnplannedreceiptRequestMainServiceImpl.java

@ -269,7 +269,6 @@ public class UnplannedreceiptRequestMainServiceImpl implements UnplannedreceiptR
detailDo.setCreateTime(LocalDateTime.now()); detailDo.setCreateTime(LocalDateTime.now());
} }
private UnplannedreceiptRequestMainDO validateMainMethod(UnplannedreceiptRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO){ private UnplannedreceiptRequestMainDO validateMainMethod(UnplannedreceiptRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO){
UnplannedreceiptRequestMainDO unplannedreceiptRequestMainDO = UnplannedreceiptRequestMainConvert.INSTANCE.convert(baseVO); UnplannedreceiptRequestMainDO unplannedreceiptRequestMainDO = UnplannedreceiptRequestMainConvert.INSTANCE.convert(baseVO);
unplannedreceiptRequestMainDO.setRequestTime(LocalDateTime.now()); unplannedreceiptRequestMainDO.setRequestTime(LocalDateTime.now());
@ -426,7 +425,7 @@ public class UnplannedreceiptRequestMainServiceImpl implements UnplannedreceiptR
return message.toString(); return message.toString();
} }
public List<UnplannedreceiptRequestMainDO> getUnplannedreceiptRequestMainList1(CustomConditions conditions) { public List<UnplannedreceiptRequestMainDO> getUnplannedreceiptRequestMainList1(CustomConditions conditions) {
return unplannedreceiptRequestMainMapper.selectSeniorList(conditions); return unplannedreceiptRequestMainMapper.selectSeniorList(conditions);
} }

Loading…
Cancel
Save