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); 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.framework.common.pojo.CustomConditions;
import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO; 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 com.win.module.wms.controller.supplierinvoiceRequest.vo.*;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; 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 导入结果 * @return 导入结果
*/ */
public List<PurchaseclaimRequestImportErrorVO> importPurchaseclaimRequestList(List<PurchaseclaimRequestMainCreateReqVO> datas, Integer mode, boolean updatePart); 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; package com.win.module.wms.service.purchaseclaimRequest;
import cn.hutool.core.collection.CollUtil; 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.CustomConditions;
import com.win.framework.common.pojo.PageResult; import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.util.validation.ValidationUtils; 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.system.enums.serialNumber.RuleCodeEnum;
import com.win.module.wms.controller.purchaseclaimRequest.vo.*; 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.PurchaseclaimRequestDetailConvert;
import com.win.module.wms.convert.purchaseclaimRequest.PurchaseclaimRequestMainConvert; 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.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; 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.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.PurchaseclaimRequestDetailDO;
import com.win.module.wms.dal.dataobject.purchaseclaimRequest.PurchaseclaimRequestMainDO; 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.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.dataobject.supplierdeliverRecord.SupplierdeliverRecordDetailDO; 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.PurchaseclaimRequestDetailMapper;
import com.win.module.wms.dal.mysql.purchaseclaimRequest.PurchaseclaimRequestMainMapper; import com.win.module.wms.dal.mysql.purchaseclaimRequest.PurchaseclaimRequestMainMapper;
import com.win.module.wms.enums.DictTypeConstants; 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.supplier.SupplierService;
import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService; import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService;
import com.win.module.wms.util.JobUtils; import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -37,6 +53,7 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Validator; import javax.validation.Validator;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception;
@ -54,7 +71,8 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
@Resource @Resource
private PurchaseclaimRequestMainMapper purchaseclaimRequestMainMapper; private PurchaseclaimRequestMainMapper purchaseclaimRequestMainMapper;
@Resource
private PurchaseclaimRecordDetailMapper purchaseclaimRecordDetailMapper;
@Resource @Resource
private PurchaseclaimRequestDetailMapper purchaseclaimRequestDetailMapper; private PurchaseclaimRequestDetailMapper purchaseclaimRequestDetailMapper;
@ -74,40 +92,39 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
@Resource @Resource
private Validator validator; private Validator validator;
@Resource @Resource
private JobUtils jobUtils; private JobUtils jobUtils;
@Resource @Resource
private RequestsettingService requestsettingService; private RequestsettingService requestsettingService;
@Resource @Resource
private TrendsApi trendsApi; private TrendsApi trendsApi;
@Resource
private PurchaseclaimRecordMainMapper purchaseclaimRecordMainMapper;
@Override @Override
@Transactional @Transactional
public Long createPurchaseclaimRequestMain(PurchaseclaimRequestMainCreateReqVO createReqVO) { public Long createPurchaseclaimRequestMain(PurchaseclaimRequestMainCreateReqVO createReqVO) {
// 插入主表 // 插入主表
RequestsettingDO requestsettingDO = requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest"); BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("SupplierDeliverRequest");
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToCreate(createReqVO, requestsettingDO); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
//调用自动执行方法 createReqVO.setBusinessType(businesstypeDO.getCode());
if (RequestStatusEnum.HANDLING.getCode().equals(purchaseclaimRequestMainDO.getStatus())) { String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
createReqVO.setNumber(number);
} createReqVO.setCreateTime(LocalDateTime.now());
trendsApi.createTrends(requestsettingDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE); PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToCreate(createReqVO);
trendsApi.createTrends(purchaseclaimRequestMainDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE);
return purchaseclaimRequestMainDO.getId(); return purchaseclaimRequestMainDO.getId();
} }
@Override @Override
@Transactional @Transactional
public Long updatePurchaseclaimRequestMain(PurchaseclaimRequestMainUpdateReqVO updateReqVO) { public Long updatePurchaseclaimRequestMain(PurchaseclaimRequestMainUpdateReqVO updateReqVO) {
RequestsettingDO requestsettingDO = requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
// 校验存在,如子表需要也再此校验 // 校验存在,如子表需要也再此校验
validatorPurchaseclaimRequestMainExists(updateReqVO.getId()); validatorPurchaseclaimRequestMainExists(updateReqVO.getId());
// 更新主表 // 更新主表
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToUpdate(updateReqVO, requestsettingDO); PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorToUpdate(updateReqVO);
if (RequestStatusEnum.HANDLING.getCode().equals(purchaseclaimRequestMainDO.getStatus())) { trendsApi.createTrends(purchaseclaimRequestMainDO.getId(), "PurchaseclaimRequest", "修改了采购索赔申请", TrendsTypeEnum.UPDATE);
}
trendsApi.createTrends(requestsettingDO.getId(), "PurchaseclaimRequest", "增加了采购索赔申请", TrendsTypeEnum.CREATE);
return purchaseclaimRequestMainDO.getId(); return purchaseclaimRequestMainDO.getId();
} }
@ -124,11 +141,12 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
return purchaseclaimRequestMainMapper.deleteById(id); return purchaseclaimRequestMainMapper.deleteById(id);
} }
private void validatorPurchaseclaimRequestMainExists(Long id) { private PurchaseclaimRequestMainDO validatorPurchaseclaimRequestMainExists(Long id) {
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = purchaseclaimRequestMainMapper.selectById(id); PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = purchaseclaimRequestMainMapper.selectById(id);
if (purchaseclaimRequestMainDO == null) { if (purchaseclaimRequestMainDO == null) {
throw exception(PURCHASECLAIM_REQUEST_MAIN_EXISTS); throw exception(PURCHASECLAIM_REQUEST_MAIN_EXISTS);
} }
return purchaseclaimRequestMainDO;
} }
@Override @Override
@ -183,6 +201,8 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
} }
//写入数据 //写入数据
if (flag) { if (flag) {
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
mainDo.setBusinessType(businesstypeDO.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
mainDo.setNumber(number); mainDo.setNumber(number);
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增")); mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增"));
@ -202,10 +222,6 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
supplierService.selectSupplier(SupplierCode); 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) { private ItembasicDO validatorItembasic(String itemCode) {
return itembasicService.selectItembasic(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(); BusinesstypeDO businesstypeDO = new BusinesstypeDO();
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(createReqVO, businesstypeDO, requestsettingDO); PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(createReqVO, businesstypeDO);
//子表校验 //子表校验
List<PurchaseclaimRequestDetailCreateReqVO> subList = createReqVO.getSubList(); List<PurchaseclaimRequestDetailCreateReqVO> subList = createReqVO.getSubList();
List<PurchaseclaimRequestDetailDO> subDOList = PurchaseclaimRequestDetailConvert.INSTANCE.convertList03(subList); 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()); String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_CLAIM_RECORD.getCode());
purchaseclaimRequestMainDO.setNumber(number); purchaseclaimRequestMainDO.setNumber(number);
purchaseclaimRequestMainMapper.insert(purchaseclaimRequestMainDO); 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); purchaseclaimRequestDetailMapper.insertBatch(subDOList);
return purchaseclaimRequestMainDO; return purchaseclaimRequestMainDO;
} }
//修改校验 //修改校验
private PurchaseclaimRequestMainDO validatorToUpdate(PurchaseclaimRequestMainUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO) { private PurchaseclaimRequestMainDO validatorToUpdate(PurchaseclaimRequestMainUpdateReqVO updateReqVO) {
BusinesstypeDO businesstypeDO = new BusinesstypeDO(); BusinesstypeDO businesstypeDO = new BusinesstypeDO();
PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(updateReqVO, businesstypeDO, requestsettingDO); PurchaseclaimRequestMainDO purchaseclaimRequestMainDO = validatorMainMethod(updateReqVO, businesstypeDO);
//子表校验 //子表校验
List<PurchaseclaimRequestDetailUpdateReqVO> subList = updateReqVO.getSubList(); List<PurchaseclaimRequestDetailUpdateReqVO> subList = updateReqVO.getSubList();
List<PurchaseclaimRequestDetailDO> subDOList = PurchaseclaimRequestDetailConvert.INSTANCE.convertList05(subList); 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); PurchaseclaimRequestMainDO mainDo = PurchaseclaimRequestMainConvert.INSTANCE.convert(baseVO);
this.validatorSupplier(mainDo.getSupplierCode()); this.validatorSupplier(mainDo.getSupplierCode());
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增")); mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "新增"));
requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest"); RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("PurchaseclaimRequest");
mainDo.setAutoAgree(requestsettingDO.getAutoAgree()); mainDo.setAutoAgree(requestsettingDO.getAutoAgree());
mainDo.setAutoCommit(requestsettingDO.getAutoCommit()); mainDo.setAutoCommit(requestsettingDO.getAutoCommit());
mainDo.setAutoExecute(requestsettingDO.getAutoExecute()); mainDo.setAutoExecute(requestsettingDO.getAutoExecute());
mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord()); mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest"); businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseclaimRequest");
mainDo.setBusinessType(businesstypeDO.getCode()); mainDo.setBusinessType(businesstypeDO.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
mainDo.setNumber(number);
return mainDo; return mainDo;
} }
@ -279,8 +307,6 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
validatorSupplierdeliverRecordMainDO(mainDo.getSupplierCode(), mainDo.getAsnNumber(), detailDo.getItemCode(), detailDo.getPoNumber(), detailDo.getPoLine()); validatorSupplierdeliverRecordMainDO(mainDo.getSupplierCode(), mainDo.getAsnNumber(), detailDo.getItemCode(), detailDo.getPoNumber(), detailDo.getPoLine());
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode()); ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode());
this.selectUomExist(itembasicDO.getUom(), detailDo.getUom()); 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) { } catch (Exception ex) {
message.append(ex.getMessage()).append(","); 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 { try {
ValidationUtils.validate(validator, detailDo); ValidationUtils.validate(validator, detailDo);
} catch (Exception ex) { } catch (Exception ex) {
@ -362,4 +378,130 @@ public class PurchaseclaimRequestMainServiceImpl implements PurchaseclaimRequest
} }
return message.toString(); 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