Browse Source

feat:政策申请校验和拦截

opt: spu编码和名称唯一拦截
checkBack
Yen 1 year ago
parent
commit
5759e5d2d9
  1. 2
      src/main/java/com/qs/serve/modules/goods/controller/GoodsSkuController.java
  2. 9
      src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java
  3. 6
      src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java
  4. 7
      src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java
  5. 8
      src/main/java/com/qs/serve/modules/seeyon/service/SeeYonRequestService.java
  6. 14
      src/main/java/com/qs/serve/modules/seeyon/service/impl/SeeYonRequestServiceImpl.java
  7. 1
      src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java
  8. 3
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyPart1ServiceImpl.java
  9. 7
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

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

@ -350,7 +350,7 @@ public class GoodsSkuController {
}else if (SAVE.equals(opt)){
//保存
if(sku!=null){
skuItem.setErrMsg(skuItem.getErrMsg()==null?"已保存,新增失败;":skuItem.getErrMsg()+"\n已保存,新增失败;");
skuItem.setErrMsg(skuItem.getErrMsg()==null?"编码重复,新增失败;":skuItem.getErrMsg()+"\n编码重复,新增失败;");
throwEx = true;
continue;
}

9
src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java

@ -643,7 +643,14 @@ public class GoodsSpuController {
isError = true;
item.setErrMsg("SKU编码不存在");
}
long count = goodsSpuService.count(new LambdaQueryWrapper<GoodsSpu>()
.eq(GoodsSpu::getName,item.getName())
.ne(GoodsSpu::getSpuCode,spuCode)
);
if(count>0){
isError = true;
item.setErrMsg("SKU名称已存在");
}
}
if(isError){

6
src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java

@ -274,8 +274,12 @@ public class GoodsSkuServiceImpl extends ServiceImpl<GoodsSkuMapper,GoodsSku> im
}
//code必须唯一
Long goodsSkuId = null;
if(dbGoodSku!=null){
goodsSkuId = dbGoodSku.getId();
}
Long countCode = super.getBaseMapper().selectCount(new LambdaQueryWrapper<GoodsSku>()
.ne(GoodsSku::getId,dbGoodSku.getId())
.ne(GoodsSku::getId,goodsSkuId)
.eq(GoodsSku::getSkuCode,goodSkuVo.getSkuCode())
);
if(countCode>0L){

7
src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java

@ -178,6 +178,13 @@ public class GoodsSpuServiceImpl extends ServiceImpl<GoodsSpuMapper,GoodsSpu> im
if(count>0){
Assert.throwEx("编码不可重复");
}
Long count2 = super.baseMapper.selectCount(new LambdaQueryWrapper<GoodsSpu>()
.ne(param.getId()!=null,GoodsSpu::getId,param.getId())
.eq(GoodsSpu::getName,param.getName())
);
if(count2>0){
Assert.throwEx("名称不可重复");
}
this.saveOrUpdate(spu);
insertSpuSpec(spu.getId());
return spu;

8
src/main/java/com/qs/serve/modules/seeyon/service/SeeYonRequestService.java

@ -84,6 +84,14 @@ public interface SeeYonRequestService {
*/
SyAffairStateResult checkAffairState(String targetId,String templateCode);
/**
* 检验协议类编码是否存在
* @param templateCode
* @return
*/
Boolean checkConstCodeExist(String templateCode);
/**
* 校验OA节点状态用于调整校验
* @param key

14
src/main/java/com/qs/serve/modules/seeyon/service/impl/SeeYonRequestServiceImpl.java

@ -25,6 +25,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.qs.serve.modules.tbs.common.TbsSeeYonConst.API_PROCESS_GET_CONST;
/**
* @author YenHex
* @since 2022/11/30
@ -164,6 +166,18 @@ public class SeeYonRequestServiceImpl implements SeeYonRequestService {
return getSyAffairStateResult(title, param);
}
@Override
public Boolean checkConstCodeExist(String templateCode) {
R<String> result = seeYonRequestBaseService.getBase(API_PROCESS_GET_CONST+"?costCode="+templateCode,"API_PROCESS_GET_CONST");
if(result.getStatus()==200){
String resultString = result.getData();
if(resultString.contains("ok")){
return true;
}
}
return false;
}
@Override
public SyAffairStateResult checkAffairState(String key, String memberId, String templateCode) {
String title = "【校验OA节点状态】";

1
src/main/java/com/qs/serve/modules/tbs/common/TbsSeeYonConst.java

@ -68,6 +68,7 @@ public interface TbsSeeYonConst {
String API_TEST = "/testConnection";
String API_PROCESS_CREATE = "/process/create";
String API_PROCESS_GET_CONST = "/process/getConst";
String API_PROCESS_CREATE_NEW = "/process/newCreate";
String API_PROCESS_CREATE_CALLBACK = "/process/createCallback";
String API_PROCESS_COMMIT = "/process/commit";

3
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyPart1ServiceImpl.java

@ -111,6 +111,9 @@ public class TbsCostApplyPart1ServiceImpl implements TbsCostApplyPart1Service {
if(orgCost.getCancelFlag().equals(1)){
Assert.throwEx("该记录的费用已异动");
}
if(orgCost.getContractFlag().equals(1)){
Assert.throwEx("协议类不支持异动");
}
boolean isExtUser = orgCost.getExtUserId()!=null&&userId.equals(orgCost.getExtUserId());
if(!userId.equals(orgCost.getUserId())&&!isExtUser){
Assert.throwEx("拒绝访问");

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

@ -539,6 +539,12 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
List<TbsActivityPayCondition> payConditions = null;
if(tbsCostApply.getContractFlag()!=null&&tbsCostApply.getContractFlag().equals(1)){
//排查OA是否已提交数据
String costCode = tbsCostApply.getCode();
boolean checkExist = seeYonService.checkConstCodeExist(costCode);
if(!checkExist){
Assert.throwEx("流程错误,请联系IT部门");
}
LambdaQueryWrapper<TbsCostContract> contractLambdaQueryWrapper = new LambdaQueryWrapper<>();
contractLambdaQueryWrapper.eq(TbsCostContract::getCostApplyId,id);
List<TbsCostContract> contractList = costContractMapper.selectList(contractLambdaQueryWrapper);
@ -679,6 +685,7 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
}
if(flowIdResult==null||flowIdResult.getStatus()!=200){
assert flowIdResult != null;
Assert.throwEx("远程服务调用失败:"+flowIdResult.getMsg());
}
String flowId = flowIdResult.getData();

Loading…
Cancel
Save