Browse Source

完善采购收货任务执行。

master
刘忱 2 years ago
parent
commit
664e13d719
  1. 40
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java
  2. 13
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java
  3. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java
  4. 9
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java
  5. 166
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java
  6. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java

40
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java

@ -58,7 +58,7 @@ public class PurchasereceiptJobMainController {
public CommonResult<PageResult<PurchasereceiptJobMainRespVO>> getPurchasereceiptJobMainPage(@Valid PurchasereceiptJobMainPageReqVO pageVO) {
PageResult<PurchasereceiptJobMainDO> pageResult = purchasereceiptJobMainService.getPurchasereceiptJobMainPage(pageVO);
PageResult<PurchasereceiptJobMainRespVO> pageResult1 = PurchasereceiptJobMainConvert.INSTANCE.convertPage(pageResult);
for(PurchasereceiptJobMainRespVO vo : pageResult1.getList()) {
for (PurchasereceiptJobMainRespVO vo : pageResult1.getList()) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
@ -72,7 +72,7 @@ public class PurchasereceiptJobMainController {
public CommonResult<PageResult<PurchasereceiptJobMainRespVO>> getPurchasereceiptJobMainSenior(@Valid @RequestBody CustomConditions conditions) {
PageResult<PurchasereceiptJobMainDO> pageResult = purchasereceiptJobMainService.getPurchasereceiptJobMainSenior(conditions);
PageResult<PurchasereceiptJobMainRespVO> result = PurchasereceiptJobMainConvert.INSTANCE.convertPage(pageResult);
for(PurchasereceiptJobMainRespVO vo : result.getList()) {
for (PurchasereceiptJobMainRespVO vo : result.getList()) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
@ -130,9 +130,9 @@ public class PurchasereceiptJobMainController {
mapDropDown.put(62, uom);
List<PurchasereceiptJobMainExcelVO> resultList = new ArrayList<>();
// 导出
for(PurchasereceiptJobMainDO mainDO : list) {
for (PurchasereceiptJobMainDO mainDO : list) {
List<PurchasereceiptJobDetailDO> subList = purchasereceiptJobDetailService.selectList(mainDO.getId());
for(PurchasereceiptJobDetailDO detailDO : subList) {
for (PurchasereceiptJobDetailDO detailDO : subList) {
PurchasereceiptJobMainExcelVO vo = PurchasereceiptJobMainConvert.INSTANCE.convert(mainDO, detailDO);
resultList.add(vo);
}
@ -147,9 +147,9 @@ public class PurchasereceiptJobMainController {
public CommonResult<PurchasereceiptJobMainRespVO> getPurchasereceiptJobyId(@RequestParam("id") Long id) {
PurchasereceiptJobMainDO purchasereceiptJobMain = purchasereceiptJobMainService.getPurchasereceiptJobMain(id);
PurchasereceiptJobMainRespVO result = PurchasereceiptJobMainConvert.INSTANCE.convert(purchasereceiptJobMain);
if(result==null) {
if (result == null) {
return success(result);
};
}
List<PurchasereceiptJobDetailDO> purchasereceiptJobDetailList = purchasereceiptJobDetailService.selectList(result.getId());
List<PurchasereceiptJobDetailExcelVO> purchasereceiptJobDetailExcelVOS = PurchasereceiptJobDetailConvert.INSTANCE.convertList02(purchasereceiptJobDetailList);
result.setSubList(purchasereceiptJobDetailExcelVOS);
@ -160,30 +160,38 @@ public class PurchasereceiptJobMainController {
@Operation(summary = "APP获得采购收货任务数量根据任务状态")
@Parameter(name = "types", description = "类型数组", required = false, example = "\"types\":[\"1\",\"2\"]")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:query')")
public CommonResult<Map<String,Integer>> getCountByStatus(@RequestBody Map<String, List<String>> map) {
public CommonResult<Map<String, Integer>> getCountByStatus(@RequestBody Map<String, List<String>> map) {
List<String> list = new ArrayList<>();
if(map==null||map.get("types")==null|| StringUtil.isEmpty(map.get("types").toString())){
if (map == null || map.get("types") == null || StringUtil.isEmpty(map.get("types").toString())) {
list.add("1");//默认不传为执行中的
}else{
} else {
list = map.get("types");
}
Map<String, Integer> countByStatus = purchasereceiptJobMainService.getCountByStatus(list);
return success(countByStatus);
}
@GetMapping(value = "/accept")
@Operation(summary = "承接任务")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:accept')")
@PostMapping(value = "/accept/{id}")
public CommonResult<Boolean> acceptPurchasereceiptJobMain(@PathVariable("id") Long id) {
public CommonResult<Boolean> acceptPurchasereceiptJobMain(@RequestParam("id") Long id) {
int result = purchasereceiptJobMainService.acceptPurchasereceiptJobMain(id);
return success(result > 0);
}
@Operation(summary = "取消承接任务")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:cancel-accept')")
@PostMapping(value = "/cancelAccept/{id}")
public CommonResult<Boolean> cancelAcceptPurchasereceiptJobMain(@PathVariable("id") Long id) {
int result = purchasereceiptJobMainService.cancelAcceptPurchasereceiptJobMain(id);
@GetMapping(value = "/abandon")
@Operation(summary = "放弃任务")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:abandon')")
public CommonResult<Boolean> abandonPurchasereceiptJobMain(@RequestParam("id") Long id) {
int result = purchasereceiptJobMainService.abandonPurchasereceiptJobMain(id);
return success(result > 0);
}
@GetMapping(value = "/close")
@Operation(summary = "关闭任务")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:close')")
public CommonResult<Boolean> closePurchasereceiptJobMain(@RequestParam("id") Long id) {
int result = purchasereceiptJobMainService.closePurchasereceiptJobMain(id);
return success(result > 0);
}

13
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java

@ -59,6 +59,19 @@ public class JobStatusState {
}
}
/**
* 关闭
* @return
*/
public boolean close() {
if(this.jobStatusEnum.getCode().equals(JobStatusEnum.PENDING.getCode())) {
this.jobStatusEnum = JobStatusEnum.CLOSED;
return Boolean.TRUE;
} else {
return Boolean.FALSE;
}
}
/**
* 执行
* @return

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java

@ -384,6 +384,9 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
ExpectoutCreateReqVO expectoutCreateReqVO = new ExpectoutCreateReqVO();
BeanUtils.copyProperties(inspectJobDetailDO, expectoutCreateReqVO);
expectoutCreateReqVO.setJobNumber(number);
expectoutCreateReqVO.setBusinessType(inspectJobMainDO.getBusinessType());
expectoutCreateReqVO.setLocationCode(inspectJobDetailDO.getFromLocationCode());
expectoutCreateReqVO.setOwnerCode(mainDO.getOwnerCode());
expectoutCreateReqVOList.add(expectoutCreateReqVO);
}
inspectJobDetailMapper.insertBatch(inspectJobDetailDOList);

9
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java

@ -99,7 +99,14 @@ public interface PurchasereceiptJobMainService {
* @param id
* @return
*/
Integer cancelAcceptPurchasereceiptJobMain(Long id);
Integer abandonPurchasereceiptJobMain(Long id);
/**
* 关闭任务
* @param id
* @return
*/
Integer closePurchasereceiptJobMain(Long id);
/**
* 执行任务

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

@ -41,6 +41,7 @@ import com.win.module.wms.enums.request.RequestStatusEnum;
import com.win.module.wms.service.documentSwitch.SwitchService;
import com.win.module.wms.service.expectin.ExpectinService;
import com.win.module.wms.service.inspectRequest.InspectRequestMainService;
import com.win.module.wms.service.purchase.PurchaseMainService;
import com.win.module.wms.service.rule.RuleService;
import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService;
import com.win.module.wms.service.transaction.TransactionService;
@ -99,6 +100,8 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
private RuleService ruleService;
@Resource
private ExpectinService expectinService;
@Resource
private PurchaseMainService purchaseMainService;
@Override
public PageResult<PurchasereceiptJobMainDO> getPurchasereceiptJobMainSenior(CustomConditions conditions) {
@ -185,7 +188,7 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
@Override
@Transactional
public Integer cancelAcceptPurchasereceiptJobMain(Long id) {
public Integer abandonPurchasereceiptJobMain(Long id) {
PurchasereceiptJobMainDO purchasereceiptJobMainDO = this.validatePurchasereceiptJobMainExists(id);
JobStatusState jobStatusState = new JobStatusState(purchasereceiptJobMainDO.getStatus());
if(!jobStatusState.cancelAccept()) {
@ -199,6 +202,19 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
return purchasereceiptJobMainMapper.updateById(purchasereceiptJobMainDO);
}
@Override
@Transactional
public Integer closePurchasereceiptJobMain(Long id) {
PurchasereceiptJobMainDO purchasereceiptJobMainDO = this.validatePurchasereceiptJobMainExists(id);
JobStatusState jobStatusState = new JobStatusState(purchasereceiptJobMainDO.getStatus());
if(!jobStatusState.close()) {
throw exception(PURCHASERECEIPT_JOB_MAIN_STATUS_ERROR);
}
purchasereceiptJobMainDO.setStatus(jobStatusState.getState().getCode());
trendsApi.createTrends(id, "purchasereceiptJob", "关闭了采购收货任务", TrendsTypeEnum.UPDATE);
return purchasereceiptJobMainMapper.updateById(purchasereceiptJobMainDO);
}
@Override
@Transactional
public Integer executePurchasereceiptJobMain(PurchasereceiptJobMainUpdateReqVO purchasereceiptJobMainUpdateReqVO) {
@ -226,16 +242,14 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchasereceiptRecordMainDO.setNumber(number);
purchasereceiptRecordMainDO.setJobNumber(purchasereceiptJobMainDO.getNumber());
purchasereceiptRecordMainDO.setId(null);
purchasereceiptRecordMainDO.setCreator(null);
purchasereceiptRecordMainDO.setCreateTime(null);
purchasereceiptRecordMainDO.setUpdater(null);
purchasereceiptRecordMainDO.setUpdateTime(null);
purchasereceiptRecordMainMapper.insert(purchasereceiptRecordMainDO);
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
List<PurchasereceiptJobDetailUpdateReqVO> purchasereceiptJobDetailUpdateReqVOList = purchasereceiptJobMainUpdateReqVO.getSubList();
//收货记录子
List<PurchasereceiptRecordDetailDO> purchasereceiptRecordDetailDOList = new ArrayList<>();
//缺货记录
List<PurchaseshortageDetailDO> purchaseshortageDetailDOList = new ArrayList<>();
//库存事务
List<TransactionCreateReqVO> transactionCreateReqVOList = new ArrayList<>();
for(PurchasereceiptJobDetailDO purchasereceiptJobDetailDO : subList) {
boolean isExists = false;
PurchasereceiptJobDetailUpdateReqVO purchasereceiptJobDetailUpdateReqVOTemp = null;
@ -258,11 +272,9 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchasereceiptRecordDetailDO.setToPackingNumber(purchasereceiptJobDetailUpdateReqVOTemp.getToPackingNumber());
purchasereceiptRecordDetailDO.setQty(purchasereceiptJobDetailUpdateReqVOTemp.getHandleQty());
purchasereceiptRecordDetailDO.setId(null);
purchasereceiptRecordDetailDO.setCreator(null);
purchasereceiptRecordDetailDO.setCreateTime(null);
purchasereceiptRecordDetailDO.setUpdater(null);
purchasereceiptRecordDetailDO.setUpdateTime(null);
purchasereceiptRecordDetailDOList.add(purchasereceiptRecordDetailDO);
//更新采购订单明细的收货数量
purchaseMainService.updateOrderPurchaseReceivedQty(purchasereceiptRecordDetailDO.getPoNumber(), purchasereceiptRecordDetailDO.getPoLine(), purchasereceiptRecordDetailDO.getItemCode(), purchasereceiptRecordDetailDO.getQty());
//添加库存事务list
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordDetailDO, transactionCreateReqVO);
@ -272,9 +284,11 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setBusinessType(purchasereceiptRecordMainDO.getBusinessType());
transactionCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getFromLocationCode());
transactionCreateReqVO.setOwnerCode(purchasereceiptRecordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setId(null);
//待确定库存事务信息
transactionCreateReqVOList.add(transactionCreateReqVO);
} else {//生成缺货记录
PurchaseshortageDetailDO purchaseshortageDetailDO = new PurchaseshortageDetailDO();
@ -283,10 +297,6 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchaseshortageDetailDO.setNumber(number);
purchaseshortageDetailDO.setJobDetailId(String.valueOf(purchasereceiptJobDetailDO.getId()));
purchaseshortageDetailDO.setId(null);
purchaseshortageDetailDO.setCreator(null);
purchaseshortageDetailDO.setCreateTime(null);
purchaseshortageDetailDO.setUpdater(null);
purchaseshortageDetailDO.setUpdateTime(null);
purchaseshortageDetailDOList.add(purchaseshortageDetailDO);
}
}
@ -309,66 +319,78 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
purchasereceiptRequestMainDO.setStatus(RequestStatusEnum.PARTIAL.getCode());
purchasereceiptRequestMainMapper.updateById(purchasereceiptRequestMainDO);
}
SwitchDO switchDO = switchService.selectSwitchExist("CreateInspectRequestAfterPurchaseReceiptRecordCreated");
//需要增加到货检验申请
if(switchDO.getEffectiveSetValue().equals("TRUE")) {
RuleRespVO ruleRespVO = ruleService.inspect(purchasereceiptRecordMainDO.getSupplierCode(), null);
JSONObject jsonObject = JSONUtil.parseObj(ruleRespVO.getConfiguration());
//生成到货检验申请
if(!"EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) {
//按零件号和批次分组
Map<String, List<PurchasereceiptRecordDetailDO>> listMap = new HashMap<>();
for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList) {
String key = purchasereceiptRecordDetailDO.getItemCode() + "_" + purchasereceiptRecordDetailDO.getFromBatch();
List<PurchasereceiptRecordDetailDO> list = listMap.get(key);
if(list == null) {
list = new ArrayList<>();
}
list.add(purchasereceiptRecordDetailDO);
listMap.put(key, list);
RuleRespVO ruleRespVO = ruleService.inspect(purchasereceiptRecordMainDO.getSupplierCode(), null);
//上架申请子
List<InspectRequestDetailCreateReqVO> inspectRequestDetailCreateReqVOList = new ArrayList<>();
JSONObject jsonObject = JSONUtil.parseObj(ruleRespVO.getConfiguration());
SwitchDO switchDO1 = switchService.selectSwitchExist("CreateInspectRequestAfterPurchaseReceiptRecordCreated");
SwitchDO switchDO2 = switchService.selectSwitchExist("ExemptItemCreatePutawayRequestAfterPurchaseReceiptRecordCreated");
//采购收货记录 生成后 创建 到货检验申请
if(switchDO1.getEffectiveSetValue().equals("TRUE") && !"EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) {
//按零件号和批次分组
Map<String, List<PurchasereceiptRecordDetailDO>> listMap = new HashMap<>();
for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList) {
//采购收货记录 生成后免检物品 创建 上架申请
if(switchDO2.getEffectiveSetValue().equals("TRUE")) {
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordDetailDO, inspectRequestDetailCreateReqVO);
inspectRequestDetailCreateReqVO.setId(null);
inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO);
}
//组装到货检验数据
for(String mapKey : listMap.keySet()) {
List<PurchasereceiptRecordDetailDO> purchasereceiptRecordDetailDOList1 = listMap.get(mapKey);
//创建主表信息
PurchasereceiptRecordDetailDO recordDetailDO = purchasereceiptRecordDetailDOList1.get(0);
InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO();
String inspectRecordNumber = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_RECORD.getCode());
inspectRequestMainCreateReqVO.setNumber(inspectRecordNumber);
inspectRequestMainCreateReqVO.setPurchaseReceiptRecordNumber(number);
inspectRequestMainCreateReqVO.setSupplierCode(purchasereceiptRecordMainDO.getSupplierCode());
inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode());
inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch());
inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber());
inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine());
inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom());
inspectRequestMainCreateReqVO.setReceiveQty(recordDetailDO.getQty());
List<InspectRequestDetailCreateReqVO> inspectRequestDetailCreateReqVOList = new ArrayList<>();
//创建子表信息
for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) {
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
inspectRequestDetailCreateReqVO.setPackingNumber(purchasereceiptRecordDetailDO.getFromPackingNumber());
inspectRequestDetailCreateReqVO.setContainerNumber(purchasereceiptRecordDetailDO.getFromContainerNumber());
inspectRequestDetailCreateReqVO.setInventoryStatus(purchasereceiptRecordDetailDO.getInventoryStatus());
inspectRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getFromLocationCode());
inspectRequestDetailCreateReqVO.setItemCode(purchasereceiptRecordDetailDO.getItemCode());
inspectRequestDetailCreateReqVO.setItemName(purchasereceiptRecordDetailDO.getItemName());
inspectRequestDetailCreateReqVO.setItemDesc1(purchasereceiptRecordDetailDO.getItemDesc1());
inspectRequestDetailCreateReqVO.setItemDesc2(purchasereceiptRecordDetailDO.getItemDesc2());
inspectRequestDetailCreateReqVO.setProjectCode(purchasereceiptRecordDetailDO.getProjectCode());
inspectRequestDetailCreateReqVO.setQty(purchasereceiptRecordDetailDO.getQty());
inspectRequestDetailCreateReqVO.setUom(purchasereceiptRecordDetailDO.getUom());
//合计数量
inspectRequestMainCreateReqVO.setReceiveQty(inspectRequestMainCreateReqVO.getReceiveQty().add(inspectRequestDetailCreateReqVO.getQty()));
inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO);
}
inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList);
inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO);
String key = purchasereceiptRecordDetailDO.getItemCode() + "_" + purchasereceiptRecordDetailDO.getFromBatch();
List<PurchasereceiptRecordDetailDO> list = listMap.get(key);
if(list == null) {
list = new ArrayList<>();
}
} else {//免检,生成上架申请
list.add(purchasereceiptRecordDetailDO);
listMap.put(key, list);
}
//组装到货检验数据
for(String mapKey : listMap.keySet()) {
List<PurchasereceiptRecordDetailDO> purchasereceiptRecordDetailDOList1 = listMap.get(mapKey);
//创建主表信息
PurchasereceiptRecordDetailDO recordDetailDO = purchasereceiptRecordDetailDOList1.get(0);
InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO();
String inspectRecordNumber = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_RECORD.getCode());
inspectRequestMainCreateReqVO.setNumber(inspectRecordNumber);
inspectRequestMainCreateReqVO.setPurchaseReceiptRecordNumber(number);
inspectRequestMainCreateReqVO.setSupplierCode(purchasereceiptRecordMainDO.getSupplierCode());
inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode());
inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch());
inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber());
inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine());
inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom());
inspectRequestMainCreateReqVO.setReceiveQty(recordDetailDO.getQty());
//创建子表信息
for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) {
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
inspectRequestDetailCreateReqVO.setPackingNumber(purchasereceiptRecordDetailDO.getFromPackingNumber());
inspectRequestDetailCreateReqVO.setContainerNumber(purchasereceiptRecordDetailDO.getFromContainerNumber());
inspectRequestDetailCreateReqVO.setInventoryStatus(purchasereceiptRecordDetailDO.getInventoryStatus());
inspectRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getFromLocationCode());
inspectRequestDetailCreateReqVO.setItemCode(purchasereceiptRecordDetailDO.getItemCode());
inspectRequestDetailCreateReqVO.setItemName(purchasereceiptRecordDetailDO.getItemName());
inspectRequestDetailCreateReqVO.setItemDesc1(purchasereceiptRecordDetailDO.getItemDesc1());
inspectRequestDetailCreateReqVO.setItemDesc2(purchasereceiptRecordDetailDO.getItemDesc2());
inspectRequestDetailCreateReqVO.setProjectCode(purchasereceiptRecordDetailDO.getProjectCode());
inspectRequestDetailCreateReqVO.setQty(purchasereceiptRecordDetailDO.getQty());
inspectRequestDetailCreateReqVO.setUom(purchasereceiptRecordDetailDO.getUom());
//合计数量
inspectRequestMainCreateReqVO.setReceiveQty(inspectRequestMainCreateReqVO.getReceiveQty().add(inspectRequestDetailCreateReqVO.getQty()));
inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO);
}
inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList);
inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO);
}
}
//采购收货记录 生成后免检物品 创建 上架申请
if(switchDO2.getEffectiveSetValue().equals("TRUE") && "EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) {
InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordMainDO, inspectRequestMainCreateReqVO);
inspectRequestMainCreateReqVO.setId(null);
inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList);
inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO);
}
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
//移除预计入

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java

@ -526,6 +526,7 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq
purchasereceiptJobMainDO.setStatus(JobStatusEnum.PENDING.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_JOB.getCode());
purchasereceiptJobMainDO.setNumber(number);
purchasereceiptJobMainDO.setId(null);
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReceiptJob");
purchasereceiptJobMainDO.setBusinessType(businesstypeDO.getCode());
@ -535,11 +536,15 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq
PurchasereceiptJobDetailDO purchasereceiptJobDetailDO = PurchasereceiptJobDetailConvert.INSTANCE.convert(purchasereceiptJobDetailCreateReqVO);
purchasereceiptJobDetailDO.setNumber(number);
purchasereceiptJobDetailDO.setMasterId(purchasereceiptJobMainDO.getId());
purchasereceiptJobDetailDO.setId(null);
purchasereceiptJobDetailDOList.add(purchasereceiptJobDetailDO);
//预计入
ExpectinCreateReqVO expectinCreateReqVO = new ExpectinCreateReqVO();
BeanUtils.copyProperties(purchasereceiptJobDetailDO, expectinCreateReqVO);
expectinCreateReqVO.setJobNumber(number);
expectinCreateReqVO.setBusinessType(purchasereceiptJobMainDO.getBusinessType());
expectinCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getFromLocationCode());
expectinCreateReqVO.setOwnerCode(purchasereceiptJobDetailDO.getFromOwnerCode());
expectinCreateReqVOList.add(expectinCreateReqVO);
}
purchasereceiptJobDetailMapper.insertBatch(purchasereceiptJobDetailDOList);

Loading…
Cancel
Save