Browse Source

采购索赔用例上传

master
叶佳兴 2 years ago
parent
commit
c27668d3ba
  1. 53
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchaseclaimRequest/PurchaseclaimRequestMainController.java
  2. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierinvoiceRequest/SupplierinvoiceRequestMainController.java
  3. 46
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchaseclaimRequest/PurchaseclaimRequestMainService.java
  4. 218
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchaseclaimRequest/PurchaseclaimRequestMainServiceImpl.java

53
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchaseclaimRequest/PurchaseclaimRequestMainController.java

@ -174,4 +174,57 @@ public class PurchaseclaimRequestMainController {
return success(returnMap);
}
@PostMapping("/close")
@Operation(summary = "关闭采购索赔申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchaseclaim-request-main:close')")
public CommonResult<Boolean> closePurchaseclaimRequestMain(@RequestParam("id") Long id) {
Integer count = purchaseclaimRequestMainService.closePurchaseclaimRequestMain(id);
return success(count > 0);
}
@PostMapping("/open")
@Operation(summary = "打开采购索赔申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchaseclaim-request-main:open')")
public CommonResult<Boolean> openPurchaseclaimRequestMain(@RequestParam("id") Long id) {
Integer count = purchaseclaimRequestMainService.openPurchaseclaimRequestMain(id);
return success(count > 0);
}
@PostMapping("/sub")
@Operation(summary = "提交采购索赔申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchaseclaim-request-main:sub')")
public CommonResult<Boolean> subPurchaseclaimRequestMain(@RequestParam("id") Long id) {
Integer count = purchaseclaimRequestMainService.subPurchaseclaimRequestMain(id);
return success(count > 0);
}
@PostMapping("/app")
@Operation(summary = "审批通过采购索赔申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchaseclaim-request-main:app')")
public CommonResult<Boolean> witPurchaseclaimRequestMain(@RequestParam("id") Long id) {
Integer count = purchaseclaimRequestMainService.witPurchaseclaimRequestMain(id);
return success(count > 0);
}
@PostMapping("/rej")
@Operation(summary = "驳回采购索赔申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:purchase-main:rej')")
public CommonResult<Boolean> rejPurchaseclaimRequestMain(@RequestParam("id") Long id) {
Integer count = purchaseclaimRequestMainService.rejPurchaseclaimRequestMain(id);
return success(count > 0);
}
@PostMapping("/genRecords")
@Operation(summary = "处理操作")
@Parameter(name = "id", description = "编号", required = true)
public CommonResult<Boolean> genRecords(@RequestParam("id") String id) {
Integer count = purchaseclaimRequestMainService.genRecords(id);
return success(count > 0);
}
}

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/supplierinvoiceRequest/SupplierinvoiceRequestMainController.java

@ -3,6 +3,7 @@ package com.win.module.wms.controller.supplierinvoiceRequest;
import com.win.framework.common.pojo.CustomConditions;
import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO;
import com.win.module.wms.controller.supplierdeliverRequest.vo.SupplierdeliverRequestMainImportVO;
import com.win.module.wms.controller.supplierinvoiceRequest.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;

46
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchaseclaimRequest/PurchaseclaimRequestMainService.java

@ -87,4 +87,50 @@ public interface PurchaseclaimRequestMainService {
* @return 导入结果
*/
public List<PurchaseclaimRequestImportErrorVO> importPurchaseclaimRequestList(List<PurchaseclaimRequestMainCreateReqVO> datas, Integer mode, boolean updatePart);
/**
* 关闭采购索赔申请
*
* @param id 采购索赔申请ID
* @return 更新数量
*/
Integer closePurchaseclaimRequestMain(Long id);
/**
* 打开采购索赔申请
*
* @param id 采购索赔申请ID
* @return 更新数量
*/
Integer openPurchaseclaimRequestMain(Long id);
/**
* 提交采购索赔申请
*
* @param id 采购索赔申请ID
* @return 更新数量
*/
Integer subPurchaseclaimRequestMain(Long id);
/**
* 审批通过采购索赔申请
*
* @param id 采购索赔申请ID
* @return 更新数量
*/
Integer witPurchaseclaimRequestMain(Long id);
/**
* 驳回采购索赔申请
* @param id 采购索赔申请ID
* @return 更新数量
*/
Integer rejPurchaseclaimRequestMain(Long id);
/**
* 处理采购索赔申请
* @param id 采采购订单申请主ID
* @return 更新数量
*/
Integer genRecords(String id);
}

218
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchaseclaimRequest/PurchaseclaimRequestMainServiceImpl.java

@ -1,6 +1,7 @@
package com.win.module.wms.service.purchaseclaimRequest;
import cn.hutool.core.collection.CollUtil;
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.framework.common.util.validation.ValidationUtils;
@ -11,15 +12,29 @@ import com.win.module.system.api.serialnumber.SerialNumberApi;
import com.win.module.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.purchaseclaimRequest.vo.*;
import com.win.module.wms.controller.purchasereceiptRequest.vo.PurchasereceiptRequestDetailCreateReqVO;
import com.win.module.wms.controller.purchasereceiptRequest.vo.PurchasereceiptRequestMainCreateReqVO;
import com.win.module.wms.controller.supplierdeliverRecord.vo.SupplierdeliverRecordMainCreateReqVO;
import com.win.module.wms.convert.purchaseclaimRequest.PurchaseclaimRequestDetailConvert;
import com.win.module.wms.convert.purchaseclaimRequest.PurchaseclaimRequestMainConvert;
import com.win.module.wms.convert.supplierdeliverRecord.SupplierdeliverRecordMainConvert;
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.location.LocationDO;
import com.win.module.wms.dal.dataobject.packageMassage.PackageDO;
import com.win.module.wms.dal.dataobject.purchase.PurchaseDetailDO;
import com.win.module.wms.dal.dataobject.purchaseclaimRecord.PurchaseclaimRecordDetailDO;
import com.win.module.wms.dal.dataobject.purchaseclaimRecord.PurchaseclaimRecordMainDO;
import com.win.module.wms.dal.dataobject.purchaseclaimRequest.PurchaseclaimRequestDetailDO;
import com.win.module.wms.dal.dataobject.purchaseclaimRequest.PurchaseclaimRequestMainDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordDetailDO;
import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordMainDO;
import com.win.module.wms.dal.dataobject.supplierdeliverRequest.SupplierdeliverRequestDetailDO;
import com.win.module.wms.dal.dataobject.supplierdeliverRequest.SupplierdeliverRequestMainDO;
import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO;
import com.win.module.wms.dal.mysql.purchaseclaimRecord.PurchaseclaimRecordDetailMapper;
import com.win.module.wms.dal.mysql.purchaseclaimRecord.PurchaseclaimRecordMainMapper;
import com.win.module.wms.dal.mysql.purchaseclaimRequest.PurchaseclaimRequestDetailMapper;
import com.win.module.wms.dal.mysql.purchaseclaimRequest.PurchaseclaimRequestMainMapper;
import com.win.module.wms.enums.DictTypeConstants;
@ -30,6 +45,7 @@ import com.win.module.wms.service.requestsetting.RequestsettingService;
import com.win.module.wms.service.supplier.SupplierService;
import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService;
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;
@ -37,6 +53,7 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import javax.validation.Validator;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
@ -54,7 +71,8 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
@Resource
private PurchaseclaimRequestMainMapper purchaseclaimRequestMainMapper;
@Resource
private PurchaseclaimRecordDetailMapper purchaseclaimRecordDetailMapper;
@Resource
private PurchaseclaimRequestDetailMapper purchaseclaimRequestDetailMapper;
@ -74,40 +92,39 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
@Resource
private Validator validator;
@Resource
private JobUtils jobUtils;
@Resource
private RequestsettingService requestsettingService;
@Resource
private TrendsApi trendsApi;
@Resource
private PurchaseclaimRecordMainMapper purchaseclaimRecordMainMapper;
@Override
@Transactional
public Long createPurchaseclaimRequestMain(PurchaseclaimRequestMainCreateReqVO createReqVO) {
// 插入主表
RequestsettingDO requestsettingDO = requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToCreate(createReqVO, requestsettingDO);
//调用自动执行方法
if (RequestStatusEnum.HANDLING.getCode().equals(purchaseclaimRequestMainDO.getStatus())) {
}
trendsApi.createTrends(requestsettingDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE);
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("SupplierDeliverRequest");
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
createReqVO.setBusinessType(businesstypeDO.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
createReqVO.setNumber(number);
createReqVO.setCreateTime(LocalDateTime.now());
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToCreate(createReqVO);
trendsApi.createTrends(purchaseclaimRequestMainDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE);
return purchaseclaimRequestMainDO.getId();
}
@Override
@Transactional
public Long updatePurchaseclaimRequestMain(PurchaseclaimRequestMainUpdateReqVO updateReqVO) {
RequestsettingDO requestsettingDO = requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
// 校验存在,如子表需要也再此校验
validatorPurchaseclaimRequestMainExists(updateReqVO.getId());
// 更新主表
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToUpdate(updateReqVO, requestsettingDO);
if (RequestStatusEnum.HANDLING.getCode().equals(purchaseclaimRequestMainDO.getStatus())) {
}
trendsApi.createTrends(requestsettingDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE);
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToUpdate(updateReqVO);
trendsApi.createTrends(purchaseclaimRequestMainDO.getId(), "PurchaseclaimRequest", "修改了采购索赔申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainDO.getId();
}
@ -124,11 +141,12 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
return purchaseclaimRequestMainMapper.deleteById(id);
}
private void validatorPurchaseclaimRequestMainExists(Long id) {
private PurchaseclaimRequestMainDO validatorPurchaseclaimRequestMainExists(Long id) {
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = purchaseclaimRequestMainMapper.selectById(id);
if (purchaseclaimRequestMainDO == null) {
throw exception(PURCHASECLAIM_REQUEST_MAIN_EXISTS);
}
return purchaseclaimRequestMainDO;
}
@Override
@ -183,6 +201,8 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
}
//写入数据
if (flag) {
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
mainDo.setBusinessType(businesstypeDO.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
mainDo.setNumber(number);
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增"));
@ -202,10 +222,6 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
supplierService.selectSupplier(SupplierCode);
}
private PurchaseDetailDO validatorPurchaseDetailDo(String pnumber, String psupplierCode, String pitemCode, String poLine) {
return purchaseMainService.selectPurchaseDetailDoExist(pnumber, psupplierCode, pitemCode, poLine);
}
private ItembasicDO validatorItembasic(String itemCode) {
return itembasicService.selectItembasic(itemCode);
}
@ -228,9 +244,9 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
}
//新增校验
private PurchaseclaimRequestMainDO validatorToCreate(PurchaseclaimRequestMainCreateReqVO createReqVO, RequestsettingDO requestsettingDO) {
private PurchaseclaimRequestMainDO validatorToCreate(PurchaseclaimRequestMainCreateReqVO createReqVO) {
BusinesstypeDO businesstypeDO = new BusinesstypeDO();
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(createReqVO, businesstypeDO, requestsettingDO);
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(createReqVO, businesstypeDO);
//子表校验
List<PurchaseclaimRequestDetailCreateReqVO> subList = createReqVO.getSubList();
List<PurchaseclaimRequestDetailDO> subDOList = PurchaseclaimRequestDetailConvert.INSTANCE.convertList03(subList);
@ -240,14 +256,24 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_CLAIM_RECORD.getCode());
purchaseclaimRequestMainDO.setNumber(number);
purchaseclaimRequestMainMapper.insert(purchaseclaimRequestMainDO);
for ( PurchaseclaimRequestDetailDO purchaseclaimRequestDetailDO : subDOList) {
validatorDetailMethod(purchaseclaimRequestDetailDO, purchaseclaimRequestMainDO);
purchaseclaimRequestDetailDO.setMasterId(purchaseclaimRequestMainDO.getId());
purchaseclaimRequestDetailDO.setNumber(purchaseclaimRequestMainDO.getNumber());
purchaseclaimRequestDetailDO.setId(null);
purchaseclaimRequestDetailDO.setCreator(null);
purchaseclaimRequestDetailDO.setCreateTime(null);
purchaseclaimRequestDetailDO.setUpdater(null);
purchaseclaimRequestDetailDO.setUpdateTime(null);
}
purchaseclaimRequestDetailMapper.insertBatch(subDOList);
return purchaseclaimRequestMainDO;
}
//修改校验
private PurchaseclaimRequestMainDO validatorToUpdate(PurchaseclaimRequestMainUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO) {
private PurchaseclaimRequestMainDO validatorToUpdate(PurchaseclaimRequestMainUpdateReqVO updateReqVO) {
BusinesstypeDO businesstypeDO = new BusinesstypeDO();
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(updateReqVO, businesstypeDO, requestsettingDO);
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(updateReqVO, businesstypeDO);
//子表校验
List<PurchaseclaimRequestDetailUpdateReqVO> subList = updateReqVO.getSubList();
List<PurchaseclaimRequestDetailDO> subDOList = PurchaseclaimRequestDetailConvert.INSTANCE.convertList05(subList);
@ -260,17 +286,19 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
}
//校验主表公共方法(适用于新增/修改)
private PurchaseclaimRequestMainDO validatorMainMethod(PurchaseclaimRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO) {
private PurchaseclaimRequestMainDO validatorMainMethod(PurchaseclaimRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO) {
PurchaseclaimRequestMainDO mainDo = PurchaseclaimRequestMainConvert.INSTANCE.convert(baseVO);
this.validatorSupplier(mainDo.getSupplierCode());
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增"));
requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
mainDo.setAutoAgree(requestsettingDO.getAutoAgree());
mainDo.setAutoCommit(requestsettingDO.getAutoCommit());
mainDo.setAutoExecute(requestsettingDO.getAutoExecute());
mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
mainDo.setBusinessType(businesstypeDO.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
mainDo.setNumber(number);
return mainDo;
}
@ -279,8 +307,6 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
validatorSupplierdeliverRecordMainDO(mainDo.getSupplierCode(), mainDo.getAsnNumber(), detailDo.getItemCode(), detailDo.getPoNumber(), detailDo.getPoLine());
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
this.selectUomExist(itembasicDO.getUom(), detailDo.getUom());
PurchaseDetailDO purchaseDetailDO = validatorPurchaseDetailDo(detailDo.getNumber(), mainDo.getSupplierCode(), detailDo.getItemCode(), detailDo.getPoLine());
ifPlanQtyBigThanOrderQty(detailDo.getPoLine(), purchaseDetailDO.getShippedQty(), detailDo.getQty(), purchaseDetailDO.getOrderQty());
}
/**
@ -345,16 +371,6 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
try {
PurchaseDetailDO purchaseDetailDO = validatorPurchaseDetailDo(detailDo.getNumber(), mainDo.getSupplierCode(), detailDo.getItemCode(), detailDo.getPoLine());
try {
ifPlanQtyBigThanOrderQty(detailDo.getPoLine(), purchaseDetailDO.getShippedQty(), detailDo.getQty(), purchaseDetailDO.getOrderQty());
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
} catch (Exception ex) {
message.append(ex.getMessage()).append(",");
}
try {
ValidationUtils.validate(validator, detailDo);
} catch (Exception ex) {
@ -362,4 +378,130 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
}
return message.toString();
}
/**
* 关闭采购索赔申请
*
* @param id 采购订单申请主ID
* @return 更新数量
*/
@Override
@Transactional
public Integer closePurchaseclaimRequestMain(Long id) {
PurchaseclaimRequestMainDO mainDO = validatorPurchaseclaimRequestMainExists(id);
mainDO.setStatus(RequestStatusEnum.CLOSED.getCode());//增加操作记录
trendsApi.createTrends(id, "request_purchaseclaim_main", "关闭采购索赔申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainMapper.updateById(mainDO);
}
/**
* 打开采购索赔申请
*
* @param id 采购订单申请主ID
* @return 更新数量
*/
@Override
@Transactional
public Integer openPurchaseclaimRequestMain(Long id) {
PurchaseclaimRequestMainDO mainDO = validatorPurchaseclaimRequestMainExists(id);
mainDO.setStatus(RequestStatusEnum.NEW.getCode());//增加操作记录
trendsApi.createTrends(id, "request_purchaseclaim_main", "打开了供应商发货申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainMapper.updateById(mainDO);
}
/**
* 提交采购索赔申请
*
* @param id 采购订单申请主ID
* @return 更新数量
*/
@Override
@Transactional
public Integer subPurchaseclaimRequestMain(Long id) {
PurchaseclaimRequestMainDO mainDO = validatorPurchaseclaimRequestMainExists(id);
mainDO.setStatus(RequestStatusEnum.REVIEWING.getCode());//增加操作记录
trendsApi.createTrends(id, "request_purchaseclaim_main", "提交采购索赔申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainMapper.updateById(mainDO);
}
/**
* 审批通过采购索赔申请
*
* @param id 采采购订单申请主ID
* @return 更新数量
*/
@Override
@Transactional
public Integer witPurchaseclaimRequestMain(Long id) {
PurchaseclaimRequestMainDO mainDO = validatorPurchaseclaimRequestMainExists(id);
mainDO.setStatus(RequestStatusEnum.AGREED.getCode());//增加操作记录
trendsApi.createTrends(id, "request_purchaseclaim_main", "审批通过采购索赔申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainMapper.updateById(mainDO);
}
/**
* 驳回采购索赔申请
*
* @param id 采购索赔申请
* @return 更新数量
*/
@Override
@Transactional
public Integer rejPurchaseclaimRequestMain(Long id) {
PurchaseclaimRequestMainDO mainDO = validatorPurchaseclaimRequestMainExists(id);
mainDO.setStatus(RequestStatusEnum.REFUSED.getCode());//增加操作记录
trendsApi.createTrends(id, "request_purchaseclaim_main", "驳回采购索赔申请", TrendsTypeEnum.UPDATE);
return purchaseclaimRequestMainMapper.updateById(mainDO);
}
/**
* 处理操作
*
* @param id 采购索赔申请
* @return 更新数量
*/
@Override
@Transactional
public Integer genRecords(String id) {
Integer result = 0;
//主表
QueryWrapper<PurchaseclaimRequestMainDO> queryWrapper = new QueryWrapper();
queryWrapper.eq("id", id);
PurchaseclaimRequestMainDO mainDO = purchaseclaimRequestMainMapper.selectOne(queryWrapper);
//子表
QueryWrapper<PurchaseclaimRequestDetailDO> purchaseclaimRequestDetailDOQueryWrapper = new QueryWrapper();
purchaseclaimRequestDetailDOQueryWrapper.eq("master_id", id);
List< PurchaseclaimRequestDetailDO> detailDOList = purchaseclaimRequestDetailMapper.selectList(purchaseclaimRequestDetailDOQueryWrapper);
PurchaseclaimRecordMainDO purchaseclaimRecordMainDO=new PurchaseclaimRecordMainDO();
BeanUtils.copyProperties(mainDO, purchaseclaimRecordMainDO);
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_CLAIM_RECORD.getCode());
purchaseclaimRecordMainDO.setNumber(number);
purchaseclaimRecordMainDO.setRequestNumber(mainDO.getNumber());
purchaseclaimRecordMainDO.setId(null);
purchaseclaimRecordMainDO.setCreator(null);
purchaseclaimRecordMainDO.setCreateTime(null);
purchaseclaimRecordMainDO.setUpdater(null);
purchaseclaimRecordMainDO.setUpdateTime(null);
purchaseclaimRecordMainMapper.insert(purchaseclaimRecordMainDO);
for (PurchaseclaimRequestDetailDO purchaseclaimRequestDetailDO : detailDOList) {
PurchaseclaimRecordDetailDO purchaseclaimRecordDetailDO=new PurchaseclaimRecordDetailDO();
BeanUtils.copyProperties(purchaseclaimRequestDetailDO, purchaseclaimRecordDetailDO);
purchaseclaimRecordDetailDO.setNumber(number);
purchaseclaimRecordDetailDO.setId(null);
purchaseclaimRecordDetailDO.setCreator(null);
purchaseclaimRecordDetailDO.setCreateTime(null);
purchaseclaimRecordDetailDO.setUpdater(null);
purchaseclaimRecordDetailDO.setUpdateTime(null);
purchaseclaimRecordDetailMapper.insert(purchaseclaimRecordDetailDO);
}
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = purchaseclaimRequestMainMapper.selectById(id);
purchaseclaimRequestMainDO.setStatus(RequestStatusEnum.COMPLETED.getCode());
purchaseclaimRequestMainMapper.updateById(purchaseclaimRequestMainDO);
trendsApi.createTrends(purchaseclaimRequestMainDO.getId(), "request_purchaseclaim_main", "处理了供应商发货申请", TrendsTypeEnum.CREATE);
return result;
}
}

Loading…
Cancel
Save