Browse Source

修改Bug。

master
刘忱 2 years ago
parent
commit
d644198b40
  1. 21
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRecord/PurchasereceiptRecordMainController.java
  2. 14
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainService.java
  3. 182
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainServiceImpl.java

21
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptRecord/PurchasereceiptRecordMainController.java

@ -19,7 +19,6 @@ import com.win.module.wms.enums.DictTypeConstants;
import com.win.module.wms.service.purchasereceiptRecord.PurchasereceiptRecordDetailService;
import com.win.module.wms.service.purchasereceiptRecord.PurchasereceiptRecordMainService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
@ -121,15 +120,15 @@ public class PurchasereceiptRecordMainController {
return resultList;
}
@PutMapping("/generateInspectRequest")
@Operation(summary = "生成检验申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-record-main:generate')")
public CommonResult<Boolean> generateInspectRequest(@RequestParam("id") Long id) {
PurchasereceiptRecordMainDO mainDO = purchasereceiptRecordMainService.getPurchasereceiptRecordMainById(id);
List<PurchasereceiptRecordDetailDO> subList = purchasereceiptRecordDetailService.selectList(id);
int result = purchasereceiptRecordMainService.generateInspectRequest(mainDO, subList);
return success(result > 0);
}
// @PutMapping("/generateInspectRequest")
// @Operation(summary = "生成检验申请主")
// @Parameter(name = "id", description = "编号", required = true)
// @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-record-main:generate')")
// public CommonResult<Boolean> generateInspectRequest(@RequestParam("id") Long id) {
// PurchasereceiptRecordMainDO mainDO = purchasereceiptRecordMainService.getPurchasereceiptRecordMainById(id);
// List<PurchasereceiptRecordDetailDO> subList = purchasereceiptRecordDetailService.selectList(id);
// int result = purchasereceiptRecordMainService.generateInspectRequest(mainDO, subList);
// return success(result > 0);
// }
}

14
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainService.java

@ -68,12 +68,12 @@ public interface PurchasereceiptRecordMainService {
*/
PurchasereceiptRecordDetailDO selectPurchasereceiptExist(String ppoNumber,String psupplierCode, String pNumber,String ppoLine, String pitemCode);
/**
* 生成检验任务
* @param mainDO 采购收货记录主
* @param detailDOList 采购收货记录子
* @return
*/
int generateInspectRequest(PurchasereceiptRecordMainDO mainDO, List<PurchasereceiptRecordDetailDO> detailDOList);
// /**
// * 生成检验申请
// * @param mainDO 采购收货记录主
// * @param detailDOList 采购收货记录子
// * @return
// */
// int generateInspectRequest(PurchasereceiptRecordMainDO mainDO, List<PurchasereceiptRecordDetailDO> detailDOList);
}

182
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRecord/PurchasereceiptRecordMainServiceImpl.java

@ -1,38 +1,22 @@
package com.win.module.wms.service.purchasereceiptRecord;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.inspectRequest.vo.InspectRequestDetailCreateReqVO;
import com.win.module.wms.controller.inspectRequest.vo.InspectRequestMainCreateReqVO;
import com.win.module.wms.controller.purchasereceiptRecord.vo.PurchasereceiptRecordMainExportReqVO;
import com.win.module.wms.controller.purchasereceiptRecord.vo.PurchasereceiptRecordMainPageReqVO;
import com.win.module.wms.controller.rule.vo.RuleRespVO;
import com.win.module.wms.dal.dataobject.documentSwitch.SwitchDO;
import com.win.module.wms.dal.dataobject.purchasereceiptRecord.PurchasereceiptRecordDetailDO;
import com.win.module.wms.dal.dataobject.purchasereceiptRecord.PurchasereceiptRecordMainDO;
import com.win.module.wms.dal.mysql.purchasereceiptJob.PurchasereceiptJobMainMapper;
import com.win.module.wms.dal.mysql.purchasereceiptRecord.PurchasereceiptRecordDetailMapper;
import com.win.module.wms.dal.mysql.purchasereceiptRecord.PurchasereceiptRecordMainMapper;
import com.win.module.wms.dal.mysql.purchasereceiptRequest.PurchasereceiptRequestMainMapper;
import com.win.module.wms.service.documentSwitch.SwitchService;
import com.win.module.wms.service.inspectRequest.InspectRequestMainService;
import com.win.module.wms.service.rule.RuleService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 采购收货记录主 Service 实现类
@ -52,14 +36,14 @@ public class PurchasereceiptRecordMainServiceImpl implements PurchasereceiptReco
private PurchasereceiptJobMainMapper purchasereceiptJobMainMapper;
@Resource
private PurchasereceiptRequestMainMapper purchasereceiptRequestMainMapper;
@Resource
private RuleService ruleService;
@Resource
private SwitchService switchService;
@Resource
private SerialNumberApi serialNumberApi;
@Resource
private InspectRequestMainService inspectRequestMainService;
// @Resource
// private RuleService ruleService;
// @Resource
// private SwitchService switchService;
// @Resource
// private SerialNumberApi serialNumberApi;
// @Resource
// private InspectRequestMainService inspectRequestMainService;
@Override
public PurchasereceiptRecordMainDO getPurchasereceiptRecordMainById(Long id) {
@ -104,85 +88,85 @@ public class PurchasereceiptRecordMainServiceImpl implements PurchasereceiptReco
if(purchasereceiptRecordDetailDO != null) {
return purchasereceiptRecordDetailDO;
} else {
throw new UtilException( "采购收货记录明细:订单号" + ppoNumber + "、订单行" + ppoLine + "物品代码、" + pitemCode + "无效");
throw new UtilException("采购收货记录明细:订单号" + ppoNumber + "、订单行" + ppoLine + "物品代码、" + pitemCode + "无效");
}
} else {
throw new UtilException( "采购收货记录无效" + pNumber + "无效");
throw new UtilException("采购收货记录无效" + pNumber + "无效");
}
}
@Override
public int generateInspectRequest(PurchasereceiptRecordMainDO mainDO, List<PurchasereceiptRecordDetailDO> detailDOList) {
int result = 0;
RuleRespVO ruleRespVO = ruleService.inspect(mainDO.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 : detailDOList) {
//采购收货记录 生成后免检物品 创建 上架申请
if(switchDO2.getEffectiveSetValue().equals("TRUE")) {
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordDetailDO, inspectRequestDetailCreateReqVO);
inspectRequestDetailCreateReqVO.setId(null);
inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO);
}
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);
}
//组装到货检验数据
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(mainDO.getNumber());
inspectRequestMainCreateReqVO.setSupplierCode(mainDO.getSupplierCode());
inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode());
inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch());
inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber());
inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine());
inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom());
inspectRequestMainCreateReqVO.setReceiveQty(BigDecimal.ZERO);
inspectRequestMainCreateReqVO.setFromWarehouseCode(mainDO.getToWarehouseCode());
//创建子表信息
for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) {
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
BeanUtils.copyProperties(purchasereceiptRecordDetailDO, 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);
result++;
}
}
return result;
}
// @Override
// public int generateInspectRequest(PurchasereceiptRecordMainDO mainDO, List<PurchasereceiptRecordDetailDO> detailDOList) {
// int result = 0;
// RuleRespVO ruleRespVO = ruleService.inspect(mainDO.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 : detailDOList) {
// //采购收货记录 生成后免检物品 创建 上架申请
// if(switchDO2.getEffectiveSetValue().equals("TRUE")) {
// InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
// BeanUtils.copyProperties(purchasereceiptRecordDetailDO, inspectRequestDetailCreateReqVO);
// inspectRequestDetailCreateReqVO.setId(null);
// inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO);
// }
// 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);
// }
// //组装到货检验数据
// 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(mainDO.getNumber());
// inspectRequestMainCreateReqVO.setSupplierCode(mainDO.getSupplierCode());
// inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode());
// inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch());
// inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber());
// inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine());
// inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom());
// inspectRequestMainCreateReqVO.setReceiveQty(BigDecimal.ZERO);
// inspectRequestMainCreateReqVO.setFromWarehouseCode(mainDO.getToWarehouseCode());
// //创建子表信息
// for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) {
// InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO();
// BeanUtils.copyProperties(purchasereceiptRecordDetailDO, 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);
// result++;
// }
// }
// return result;
// }
}

Loading…
Cancel
Save