Browse Source

opt: 规则导入调整

checkBack
Yen 1 year ago
parent
commit
0612db4995
  1. 2
      src/main/java/com/qs/serve/modules/goods/controller/GoodsRuleController.java
  2. 6
      src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsRuleBo.java
  3. 3
      src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java
  4. 77
      src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java
  5. 4
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

2
src/main/java/com/qs/serve/modules/goods/controller/GoodsRuleController.java

@ -74,7 +74,7 @@ public class GoodsRuleController {
public R<?> importData(@RequestBody @Valid GoodsRuleImportBo param){ public R<?> importData(@RequestBody @Valid GoodsRuleImportBo param){
// 转换成GoodsRuleBo // 转换成GoodsRuleBo
GoodsRuleBo ruleBo = goodsRuleService.tranGoodsRuleBo(param); GoodsRuleBo ruleBo = goodsRuleService.tranGoodsRuleBo(param);
if(param.getCheckOkFlag()!=null&&param.getCheckOkFlag()){ if(param.getCheckOkFlag()!=null&&!param.getCheckOkFlag()){
return R.errorImport(param); return R.errorImport(param);
} }
goodsRuleService.modify(ruleBo); goodsRuleService.modify(ruleBo);

6
src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsRuleBo.java

@ -3,6 +3,7 @@ package com.qs.serve.modules.goods.entity.bo;
import com.qs.serve.modules.goods.entity.dto.GoodsRuleBaseDTO; import com.qs.serve.modules.goods.entity.dto.GoodsRuleBaseDTO;
import lombok.Data; import lombok.Data;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -30,4 +31,9 @@ public class GoodsRuleBo extends GoodsRuleBaseDTO {
/** 不能选的SPU */ /** 不能选的SPU */
private List<String> notInSpuIds; private List<String> notInSpuIds;
/**
* 用于区分导入时excel未传入数据导致删除
*/
private List<Integer> selectTargetTypes = new ArrayList<>();
} }

3
src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java

@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.Assert;
import com.qs.serve.common.util.CopierUtil;
import com.qs.serve.common.util.PageUtil; import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.StringUtils; import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.bms.entity.BmsRegion; import com.qs.serve.modules.bms.entity.BmsRegion;
@ -61,7 +62,7 @@ public class GoodsAccreditServiceImpl extends ServiceImpl<GoodsAccreditMapper,Go
@Override @Override
public GoodsAccreditBo tranGoodsAccreditBo(GoodsAccreditImportBo importBo) { public GoodsAccreditBo tranGoodsAccreditBo(GoodsAccreditImportBo importBo) {
importBo.setSuccessFlag(true); importBo.setSuccessFlag(true);
GoodsAccreditBo accreditBo = new GoodsAccreditBo(); GoodsAccreditBo accreditBo = CopierUtil.copy(importBo,new GoodsAccreditBo());
List<String> onlySaleRegionCodes = importBo.getOnlySaleRegionCodes(); List<String> onlySaleRegionCodes = importBo.getOnlySaleRegionCodes();
if(CollUtil.isNotEmpty(onlySaleRegionCodes)){ if(CollUtil.isNotEmpty(onlySaleRegionCodes)){

77
src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qs.serve.common.model.dto.SimpleKeyValue; import com.qs.serve.common.model.dto.SimpleKeyValue;
import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.Assert;
import com.qs.serve.common.util.CopierUtil;
import com.qs.serve.common.util.StringUtils; import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.bms.entity.BmsRegion; import com.qs.serve.modules.bms.entity.BmsRegion;
import com.qs.serve.modules.bms.entity.BmsRegion2; import com.qs.serve.modules.bms.entity.BmsRegion2;
@ -60,86 +61,94 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule>
@Override @Override
public GoodsRuleBo tranGoodsRuleBo(GoodsRuleImportBo ruleImportBo) { public GoodsRuleBo tranGoodsRuleBo(GoodsRuleImportBo ruleImportBo) {
GoodsRuleBo goodsRuleBo = new GoodsRuleBo(); GoodsRuleBo goodsRuleBo = CopierUtil.copy(ruleImportBo,new GoodsRuleBo());
boolean checkOkFlag = true; boolean checkOkFlag = true;
if(CollUtil.isNotEmpty(ruleImportBo.getOnlyCategoryCodes())){ if(CollUtil.isNotEmpty(ruleImportBo.getOnlyCategoryCodes())){
List<GoodsCategory> categoryList = categoryMapper List<GoodsCategory> categoryList = categoryMapper
.selectList(new LambdaQueryWrapper<GoodsCategory>() .selectList(new LambdaQueryWrapper<GoodsCategory>()
.in(GoodsCategory::getCode,ruleImportBo.getOnlyCategoryCodes())); .in(GoodsCategory::getCode,ruleImportBo.getOnlyCategoryCodes()));
List<String> errCodes = new ArrayList<>();
for (String code : ruleImportBo.getOnlyCategoryCodes()) { for (String code : ruleImportBo.getOnlyCategoryCodes()) {
boolean mch = categoryList.stream().anyMatch(a->a.getCode().equals(code)); boolean mch = categoryList.stream().anyMatch(a->a.getCode().equals(code));
if(!mch){ if(!mch){
checkOkFlag = false;
List<String> errCodes = new ArrayList<>();
errCodes.add(code); errCodes.add(code);
if(ruleImportBo.getErrOnlyCategoryCodes()!=null){
errCodes.addAll(ruleImportBo.getErrNotInCategoryCodes());
}
ruleImportBo.setErrOnlyCategoryCodes(errCodes);
} }
} }
List<String> ids = categoryList.stream().map(a->a.getId().toString()).collect(Collectors.toList()); if(errCodes.size()>0){
goodsRuleBo.setOnlyCategoryIds(ids); checkOkFlag = false;
ruleImportBo.setErrOnlyCategoryCodes(errCodes);
}else {
List<String> ids = categoryList.stream().map(a->a.getId().toString()).collect(Collectors.toList());
goodsRuleBo.setOnlyCategoryIds(ids);
//1只能选的分类
goodsRuleBo.getSelectTargetTypes().add(1);
}
} }
if(CollUtil.isNotEmpty(ruleImportBo.getNotInCategoryCodes())){ if(CollUtil.isNotEmpty(ruleImportBo.getNotInCategoryCodes())){
List<GoodsCategory> categoryList = categoryMapper List<GoodsCategory> categoryList = categoryMapper
.selectList(new LambdaQueryWrapper<GoodsCategory>() .selectList(new LambdaQueryWrapper<GoodsCategory>()
.in(GoodsCategory::getCode,ruleImportBo.getNotInCategoryCodes())); .in(GoodsCategory::getCode,ruleImportBo.getNotInCategoryCodes()));
List<String> errCodes = new ArrayList<>();
for (String code : ruleImportBo.getNotInCategoryCodes()) { for (String code : ruleImportBo.getNotInCategoryCodes()) {
boolean mch = categoryList.stream().anyMatch(a->a.getCode().equals(code)); boolean mch = categoryList.stream().anyMatch(a->a.getCode().equals(code));
if(!mch){ if(!mch){
checkOkFlag = false;
List<String> errCodes = new ArrayList<>();
errCodes.add(code); errCodes.add(code);
if(ruleImportBo.getErrNotInCategoryCodes()!=null){
errCodes.addAll(ruleImportBo.getErrNotInCategoryCodes());
}
ruleImportBo.setErrNotInCategoryCodes(errCodes);
} }
} }
List<String> ids = categoryList.stream().map(a->a.getId().toString()).collect(Collectors.toList()); if(errCodes.size()>0){
goodsRuleBo.setNotInCategoryIds(ids); checkOkFlag = false;
ruleImportBo.setErrNotInCategoryCodes(errCodes);
}else {
List<String> ids = categoryList.stream().map(a->a.getId().toString()).collect(Collectors.toList());
goodsRuleBo.setNotInCategoryIds(ids);
//2不能选的分类
goodsRuleBo.getSelectTargetTypes().add(2);
}
} }
if(CollUtil.isNotEmpty(ruleImportBo.getOnlySpuCodes())){ if(CollUtil.isNotEmpty(ruleImportBo.getOnlySpuCodes())){
List<GoodsSpu> spuList = spuMapper List<GoodsSpu> spuList = spuMapper
.selectList(new LambdaQueryWrapper<GoodsSpu>() .selectList(new LambdaQueryWrapper<GoodsSpu>()
.in(GoodsSpu::getSpuCode,ruleImportBo.getOnlySpuCodes())); .in(GoodsSpu::getSpuCode,ruleImportBo.getOnlySpuCodes()));
List<String> errCodes = new ArrayList<>();
for (String code : ruleImportBo.getOnlySpuCodes()) { for (String code : ruleImportBo.getOnlySpuCodes()) {
boolean mch = spuList.stream().anyMatch(a->a.getSpuCode().equals(code)); boolean mch = spuList.stream().anyMatch(a->a.getSpuCode().equals(code));
if(!mch){ if(!mch){
checkOkFlag = false; checkOkFlag = false;
List<String> errCodes = new ArrayList<>();
errCodes.add(code); errCodes.add(code);
if(ruleImportBo.getErrOnlySpuCodes()!=null){
errCodes.addAll(ruleImportBo.getErrOnlySpuCodes());
}
ruleImportBo.setErrOnlySpuCodes(errCodes);
} }
} }
List<String> ids = spuList.stream().map(a->a.getId().toString()).collect(Collectors.toList()); if(errCodes.size()>0){
goodsRuleBo.setOnlySpuIds(ids); ruleImportBo.setErrOnlySpuCodes(errCodes);
}else {
List<String> ids = spuList.stream().map(a->a.getId().toString()).collect(Collectors.toList());
goodsRuleBo.setOnlySpuIds(ids);
//3只能选的SPU
goodsRuleBo.getSelectTargetTypes().add(3);
}
} }
if(CollUtil.isNotEmpty(ruleImportBo.getNotInSpuCodes())){ if(CollUtil.isNotEmpty(ruleImportBo.getNotInSpuCodes())){
List<GoodsSpu> spuList = spuMapper List<GoodsSpu> spuList = spuMapper
.selectList(new LambdaQueryWrapper<GoodsSpu>() .selectList(new LambdaQueryWrapper<GoodsSpu>()
.in(GoodsSpu::getSpuCode,ruleImportBo.getNotInSpuCodes())); .in(GoodsSpu::getSpuCode,ruleImportBo.getNotInSpuCodes()));
List<String> errCodes = new ArrayList<>();
for (String code : ruleImportBo.getNotInSpuCodes()) { for (String code : ruleImportBo.getNotInSpuCodes()) {
boolean mch = spuList.stream().anyMatch(a->a.getSpuCode().equals(code)); boolean mch = spuList.stream().anyMatch(a->a.getSpuCode().equals(code));
if(!mch){ if(!mch){
checkOkFlag = false;
List<String> errCodes = new ArrayList<>();
errCodes.add(code); errCodes.add(code);
if(ruleImportBo.getErrOnlySpuCodes()!=null){
errCodes.addAll(ruleImportBo.getErrNotInSpuCodes());
}
ruleImportBo.setErrNotInSpuCodes(errCodes);
} }
} }
List<String> ids = spuList.stream().map(a->a.getId().toString()).collect(Collectors.toList()); if(CollUtil.isNotEmpty(errCodes)){
goodsRuleBo.setNotInSpuIds(ids); checkOkFlag = false;
ruleImportBo.setErrNotInSpuCodes(errCodes);
}else {
List<String> ids = spuList.stream().map(a->a.getId().toString()).collect(Collectors.toList());
goodsRuleBo.setNotInSpuIds(ids);
//4不能选的SPU
goodsRuleBo.getSelectTargetTypes().add(4);
}
} }
ruleImportBo.setCheckOkFlag(checkOkFlag); ruleImportBo.setCheckOkFlag(checkOkFlag);
return goodsRuleBo; return goodsRuleBo;
@ -167,6 +176,10 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule>
//清空操作 //清空操作
LambdaQueryWrapper<GoodsRuleItem> rmItem = new LambdaQueryWrapper<>(); LambdaQueryWrapper<GoodsRuleItem> rmItem = new LambdaQueryWrapper<>();
rmItem.eq(GoodsRuleItem::getRuleId,goodsRule.getId()); rmItem.eq(GoodsRuleItem::getRuleId,goodsRule.getId());
//用于区分导入时,excel未传入数据,导致删除
if(CollUtil.isNotEmpty(param.getSelectTargetTypes())){
rmItem.eq(GoodsRuleItem::getTargetType,param.getSelectTargetTypes());
}
goodsRuleItemService.remove(rmItem); goodsRuleItemService.remove(rmItem);
if(!b1 && !b2 && !b3 && !b4){ if(!b1 && !b2 && !b3 && !b4){

4
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

@ -673,9 +673,7 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
?TbsSeeYonConst.CostApplyContractConf.Code() ?TbsSeeYonConst.CostApplyContractConf.Code()
:TbsSeeYonConst.CostApplyConf.Code(); :TbsSeeYonConst.CostApplyConf.Code();
R<String> flowIdResult = null; R<String> flowIdResult = null;
//启用新方法开关 if(tbsCostApply.getContractFlag().equals(1)){
boolean newWay = true;
if(newWay && tbsCostApply.getContractFlag().equals(1)){
List<OaUploadFile> uploadFileList = new ArrayList<>(); List<OaUploadFile> uploadFileList = new ArrayList<>();
if(CollectionUtil.isNotEmpty(oaAttachmentsIdList)){ if(CollectionUtil.isNotEmpty(oaAttachmentsIdList)){
List<SysAttach> attachList = sysAttachService.listByIds(oaAttachmentsIdList); List<SysAttach> attachList = sysAttachService.listByIds(oaAttachmentsIdList);

Loading…
Cancel
Save