Browse Source

报废出库bug修复

master
赵雪冰 2 years ago
parent
commit
56bc9bc64a
  1. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/scrapRequest/ScrapRequestMainMapper.java
  2. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/container/ContainerDetailServiceImpl.java
  3. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapJob/ScrapJobMainServiceImpl.java
  4. 32
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapRequest/ScrapRequestMainServiceImpl.java

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/scrapRequest/ScrapRequestMainMapper.java

@ -73,4 +73,7 @@ public interface ScrapRequestMainMapper extends BaseMapperX<ScrapRequestMainDO>
return selectList(QueryWrapperUtils.structure(conditions));
}
default ScrapRequestMainDO queryByNumber(String requestNumber){
return selectOne(new LambdaQueryWrapperX<ScrapRequestMainDO>().eq(ScrapRequestMainDO::getNumber,requestNumber));
}
}

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/container/ContainerDetailServiceImpl.java

@ -69,6 +69,7 @@ public class ContainerDetailServiceImpl implements ContainerDetailService {
ContainerDetailDO containerDetail = ContainerDetailConvert.INSTANCE.convert(createReqVO);
ContainerDetailDO containerDetailDO = containerDetailMapper.queryByMasterIdAndContentNumber(containerDetail.getMasterId(),containerDetail.getContentNumber());
if(containerDetailDO == null){
containerDetail.setId(null);
containerDetailMapper.insert(containerDetail);
// 添加器具绑定记录
createContainerBindRecord(containerDetail);

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/scrapJob/ScrapJobMainServiceImpl.java

@ -19,12 +19,15 @@ 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.scrapRecord.ScrapRecordDetailDO;
import com.win.module.wms.dal.dataobject.scrapRecord.ScrapRecordMainDO;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
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.ScrapRecordMainMapper;
import com.win.module.wms.dal.mysql.scrapRequest.ScrapRequestMainMapper;
import com.win.module.wms.enums.job.JobStatusEnum;
import com.win.module.wms.enums.job.JobStatusState;
import com.win.module.wms.enums.request.RequestStatusEnum;
import com.win.module.wms.service.expectin.ExpectinService;
import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.service.recordsetting.RecordsettingService;
@ -78,6 +81,8 @@ public class ScrapJobMainServiceImpl implements ScrapJobMainService {
private TransactionService transactionService;
@Resource
private ExpectinService expectinService;
@Resource
private ScrapRequestMainMapper scrapRequestMainMapper;
@Override
@ -299,6 +304,7 @@ public class ScrapJobMainServiceImpl implements ScrapJobMainService {
transactionCreateReqVO.setBatch(scrapJobDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(scrapJobMainDO.getFromWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
}
@ -310,6 +316,12 @@ public class ScrapJobMainServiceImpl implements ScrapJobMainService {
transactionService.createTransaction(transactionCreateReqVOList);
//移除预计入
expectinService.deleteExpectinByJobNumber(scrapJobMainDO.getNumber());
// 更新申请状态
String requestNumber = scrapJobMainDO.getRequestNumber();
ScrapRequestMainDO scrapRequestMainDO = scrapRequestMainMapper.queryByNumber(requestNumber);
scrapRequestMainDO.setStatus(RequestStatusEnum.COMPLETED.getCode());
scrapRequestMainMapper.updateById(scrapRequestMainDO);
//变更记录
trendsApi.createTrends(scrapJobMainDO.getId(), "ScrapJob", "执行报废出库任务", TrendsTypeEnum.UPDATE);
return number;

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

@ -15,6 +15,7 @@ import com.win.module.wms.controller.expectout.vo.ExpectoutCreateReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordDetailCreateReqVO;
import com.win.module.wms.controller.scrapRecord.vo.ScrapRecordMainCreateReqVO;
import com.win.module.wms.controller.scrapRequest.vo.*;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.scrapJob.ScrapJobDetailConvert;
import com.win.module.wms.convert.scrapJob.ScrapJobMainConvert;
import com.win.module.wms.convert.scrapRecord.ScrapRecordDetailConvert;
@ -33,6 +34,7 @@ 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.scrapRequest.ScrapRequestDetailDO;
import com.win.module.wms.dal.dataobject.scrapRequest.ScrapRequestMainDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
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.scrapRecord.ScrapRecordDetailMapper;
@ -49,6 +51,7 @@ import com.win.module.wms.service.jobsetting.JobsettingService;
import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.service.recordsetting.RecordsettingService;
import com.win.module.wms.service.requestsetting.RequestsettingService;
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;
@ -56,6 +59,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
@ -107,6 +111,9 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
private ScrapJobDetailMapper scrapJobDetailMapper;
@Resource
private ExpectoutService expectoutService;
@Resource
private TransactionService transactionService;
@Transactional
@Override
@ -151,6 +158,7 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
ScrapRecordMainDO scrapRecordMainDO = ScrapRecordMainConvert.INSTANCE.convert(scrapRecordMainCreateReqVO);
scrapRecordMainMapper.insert(scrapRecordMainDO);
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
for(ScrapRequestDetailDO scrapRequestDetailDO : detailDOList) {
ScrapRecordDetailCreateReqVO scrapRecordDetailCreateReqVO = new ScrapRecordDetailCreateReqVO();
BeanUtils.copyProperties(scrapRequestDetailDO, scrapRecordDetailCreateReqVO);
@ -161,7 +169,31 @@ public class ScrapRequestMainServiceImpl implements ScrapRequestMainService {
scrapRecordDetailCreateReqVO.setFromAreaCode(scrapRequestDetailDO.getFromLocationCode());
ScrapRecordDetailDO scrapRecordDetailDO = ScrapRecordDetailConvert.INSTANCE.convert(scrapRecordDetailCreateReqVO);
scrapRecordDetailMapper.insert(scrapRecordDetailDO);
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(scrapRecordDetailDO, transactionCreateReqVO);
//增加业务类型
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getOutTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(scrapRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(scrapRecordDetailDO.getFromLocationCode());
transactionCreateReqVO.setOwnerCode(scrapRecordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setPackingNumber(scrapRecordDetailDO.getPackingNumber());
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setBatch(scrapRecordDetailDO.getBatch());
transactionCreateReqVO.setWarehouseCode(scrapRecordMainDO.getFromWarehouseCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
mainDO.setStatus(RequestStatusEnum.COMPLETED.getCode());
scrapRequestMainMapper.updateById(mainDO);
return;
}
// 任务 主表数据创建

Loading…
Cancel
Save