|
|
@ -2,6 +2,8 @@ package com.win.module.wms.service.transferissueRecord; |
|
|
|
|
|
|
|
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.user.AdminUserApi; |
|
|
|
import com.win.module.system.enums.serialNumber.RuleCodeEnum; |
|
|
@ -20,7 +22,6 @@ 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; |
|
|
@ -56,14 +57,61 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa |
|
|
|
private AdminUserApi userApi; |
|
|
|
@Resource |
|
|
|
private TransactionService transactionService; |
|
|
|
@Resource |
|
|
|
private TrendsApi trendsApi; |
|
|
|
|
|
|
|
@Override |
|
|
|
public Long createTransferissueRecordMain(TransferissueRecordMainCreateReqVO createReqVO) { |
|
|
|
// 插入
|
|
|
|
TransferissueRecordMainDO transferissueRecordMain = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO); |
|
|
|
transferissueRecordMainMapper.insert(transferissueRecordMain); |
|
|
|
// 返回
|
|
|
|
return transferissueRecordMain.getId(); |
|
|
|
TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO); |
|
|
|
String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_DELIVER_RECORD.getCode()); |
|
|
|
transferissueRecordMainDO.setNumber(number); |
|
|
|
//增加业务类型
|
|
|
|
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("TransferDeliverRecord"); |
|
|
|
transferissueRecordMainDO.setBusinessType(businesstypeDO.getCode()); |
|
|
|
transferissueRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType()); |
|
|
|
transferissueRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType()); |
|
|
|
String interFaceType = recordsettingService.selectRecordsettingExist("TransferDeliverRecord").getInterfaceType(); |
|
|
|
transferissueRecordMainDO.setInterfaceType(interFaceType); |
|
|
|
transferissueRecordMainDO.setExecuteTime(LocalDateTime.now()); |
|
|
|
transferissueRecordMainDO.setActiveDate(LocalDateTime.now()); |
|
|
|
transferissueRecordMainDO.setAvailable("TRUE"); |
|
|
|
transferissueRecordMainDO.setDueTime(null); |
|
|
|
transferissueRecordMainDO.setId(null); |
|
|
|
transferissueRecordMainDO.setCreator(null); |
|
|
|
transferissueRecordMainDO.setCreateTime(LocalDateTime.now()); |
|
|
|
transferissueRecordMainMapper.insert(transferissueRecordMainDO); |
|
|
|
//库存事务
|
|
|
|
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>(); |
|
|
|
List<TransferissueRecordDetailCreateReqVO> subList = createReqVO.getSubList(); |
|
|
|
for(TransferissueRecordDetailCreateReqVO transferissueRecordDetailCreateReqVO : subList) { |
|
|
|
TransferissueRecordDetailDO recordDetailDO = TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO); |
|
|
|
recordDetailDO.setNumber(number); |
|
|
|
recordDetailDO.setMasterId(transferissueRecordMainDO.getId()); |
|
|
|
transferissueRecordDetailMapper.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(transferissueRecordMainDO.getBusinessType()); |
|
|
|
transactionCreateReqVO.setLocationCode(recordDetailDO.getToLocationCode()); |
|
|
|
transactionCreateReqVO.setOwnerCode(recordDetailDO.getFromOwnerCode()); |
|
|
|
transactionCreateReqVO.setPackingNumber(recordDetailDO.getFromPackingNumber()); |
|
|
|
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId())); |
|
|
|
transactionCreateReqVO.setBatch(recordDetailDO.getFromBatch()); |
|
|
|
transactionCreateReqVO.setWarehouseCode(transferissueRecordMainDO.getToWarehouseCode()); |
|
|
|
transactionCreateReqVO.setRecordNumber(number); |
|
|
|
transactionCreateReqVO.setId(null); |
|
|
|
transactionCreateReqVOList.add(transactionCreateReqVO); |
|
|
|
} |
|
|
|
//增加库存事务
|
|
|
|
transactionService.createTransaction(transactionCreateReqVOList); |
|
|
|
trendsApi.createTrends(transferissueRecordMainDO.getId(), "TransferDeliverRecord", "增加了调拨出库申请记录", TrendsTypeEnum.CREATE); |
|
|
|
return transferissueRecordMainDO.getId(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
@ -114,61 +162,6 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa |
|
|
|
return transferissueRecordMainMapper.selectList(exportReqVO); |
|
|
|
} |
|
|
|
|
|
|
|
@Transactional |
|
|
|
@Override |
|
|
|
public Long pdaCreateTransferissueRecord(TransferissueRecordMainCreateReqVO createReqVO) { |
|
|
|
TransferissueRecordMainDO transferissueRecordMainDO = TransferissueRecordMainConvert.INSTANCE.convert(createReqVO); |
|
|
|
String number = serialNumberApi.generateCode(RuleCodeEnum.TRANSFER_DELIVER_RECORD.getCode()); |
|
|
|
transferissueRecordMainDO.setNumber(number); |
|
|
|
//增加业务类型
|
|
|
|
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("TransferDeliverRecord"); |
|
|
|
transferissueRecordMainDO.setBusinessType(businesstypeDO.getCode()); |
|
|
|
transferissueRecordMainDO.setOutTransactionType(businesstypeDO.getOutTransactionType()); |
|
|
|
transferissueRecordMainDO.setInTransactionType(businesstypeDO.getInTransactionType()); |
|
|
|
String interFaceType = recordsettingService.selectRecordsettingExist("TransferDeliverRecord").getInterfaceType(); |
|
|
|
transferissueRecordMainDO.setInterfaceType(interFaceType); |
|
|
|
transferissueRecordMainDO.setExecuteTime(LocalDateTime.now()); |
|
|
|
transferissueRecordMainDO.setActiveDate(LocalDateTime.now()); |
|
|
|
transferissueRecordMainDO.setAvailable("TRUE"); |
|
|
|
transferissueRecordMainDO.setDueTime(null); |
|
|
|
transferissueRecordMainDO.setId(null); |
|
|
|
transferissueRecordMainDO.setCreator(null); |
|
|
|
transferissueRecordMainDO.setCreateTime(null); |
|
|
|
transferissueRecordMainMapper.insert(transferissueRecordMainDO); |
|
|
|
|
|
|
|
//库存事务
|
|
|
|
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>(); |
|
|
|
|
|
|
|
List<TransferissueRecordDetailCreateReqVO> subList = createReqVO.getSubList(); |
|
|
|
for(TransferissueRecordDetailCreateReqVO transferissueRecordDetailCreateReqVO : subList) { |
|
|
|
TransferissueRecordDetailDO recordDetailDO = TransferissueRecordDetailConvert.INSTANCE.convert(transferissueRecordDetailCreateReqVO); |
|
|
|
recordDetailDO.setNumber(number); |
|
|
|
recordDetailDO.setMasterId(transferissueRecordMainDO.getId()); |
|
|
|
transferissueRecordDetailMapper.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(transferissueRecordMainDO.getBusinessType()); |
|
|
|
transactionCreateReqVO.setLocationCode(recordDetailDO.getToLocationCode()); |
|
|
|
transactionCreateReqVO.setOwnerCode(recordDetailDO.getFromOwnerCode()); |
|
|
|
transactionCreateReqVO.setPackingNumber(recordDetailDO.getFromPackingNumber()); |
|
|
|
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId())); |
|
|
|
transactionCreateReqVO.setBatch(recordDetailDO.getFromBatch()); |
|
|
|
transactionCreateReqVO.setWarehouseCode(transferissueRecordMainDO.getToWarehouseCode()); |
|
|
|
transactionCreateReqVO.setRecordNumber(number); |
|
|
|
transactionCreateReqVO.setId(null); |
|
|
|
transactionCreateReqVOList.add(transactionCreateReqVO); |
|
|
|
} |
|
|
|
//增加库存事务
|
|
|
|
transactionService.createTransaction(transactionCreateReqVOList); |
|
|
|
return transferissueRecordMainDO.getId(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public TransferissueRecordMainRespVO getDetailInfoById(Long id) { |
|
|
|