fix(任务转交): 80381

This commit is contained in:
yjz
2024-01-18 14:44:53 +08:00
parent c2ac24c7e4
commit ba0c69a4e5
4 changed files with 63 additions and 5 deletions
@@ -1,5 +1,6 @@
package com.jero.modules.laws.tasktransfer.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -45,4 +46,8 @@ public class LawsProcessDB {
/**状态*/
@ApiModelProperty(value="状态: true:可转交,false:不可转交")
private boolean state;
/**ids 查询用*/
@ApiModelProperty(value = "ids 查询用")
@TableField(exist = false)
private String ids;
}
@@ -26,7 +26,7 @@ public interface LawsTaskTransferMapper {
IPage<LawsBaseDB> queryBaseDB(@Param(Constants.WRAPPER) QueryWrapper<LawsBaseDB> queryWrapper, IPage<LawsBaseDB> page);
/**
* 任务转交-基础库信息分页查询
* 任务转交-基础库信息列表查询
* @param queryWrapper
* @return
*/
@@ -40,4 +40,11 @@ public interface LawsTaskTransferMapper {
* @return
*/
IPage<LawsProcessDB> queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper<LawsProcessDB> queryWrapper, IPage<LawsProcessDB> page);
/**
* 任务转交-流程信息列表查询
* @param queryWrapper
* @return
*/
List<LawsProcessDB> queryProcessDB(@Param(Constants.WRAPPER) QueryWrapper<LawsProcessDB> queryWrapper);
}
@@ -51,6 +51,13 @@ public interface ILawsTaskTransferService {
*/
IPage<LawsProcessDB> queryProcessDB(LawsProcessDB lawsProcessDb, Integer pageNo, Integer pageSize);
/**
* 任务转交-流程信息列表查询
* @param lawsProcessDb
* @return
*/
List<LawsProcessDB> queryProcessDB(LawsProcessDB lawsProcessDb);
/**
* 任务转交-流程信息转交
* @param lawsProcessDB
@@ -64,8 +71,14 @@ public interface ILawsTaskTransferService {
void processDBTransferBatch(List<LawsProcessDB> lawsProcessDBList);
/**
* 任务转交-是否水平越权
* 任务转交-是否水平越权(基础库信息)
* @param ids
*/
void isHorizontalOverstep(String ids);
void isHorizontalOverstepByBaseDB(String ids);
/**
* 任务转交-是否水平越权(流程信息)
* @param ids
*/
void isHorizontalOverstepByProcessDB(String ids);
}
@@ -111,6 +111,12 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
@Override
public IPage<LawsProcessDB> queryProcessDB(LawsProcessDB lawsProcessDb, Integer pageNo, Integer pageSize) {
QueryWrapper<LawsProcessDB> queryWrapper = getLawsProcessDBQueryWrapper(lawsProcessDb);
return lawsTaskTransferMapper.queryProcessDB(queryWrapper, new Page<>(pageNo, pageSize));
}
@NotNull
private static QueryWrapper<LawsProcessDB> getLawsProcessDBQueryWrapper(LawsProcessDB lawsProcessDb) {
QueryWrapper<LawsProcessDB> queryWrapper = new QueryWrapper<>();
queryWrapper.like(StringUtils.isNotBlank(lawsProcessDb.getUser()), "u.realname", lawsProcessDb.getUser());
queryWrapper.like(StringUtils.isNotBlank(lawsProcessDb.getPrcNum()), "prc_num", lawsProcessDb.getPrcNum());
@@ -126,7 +132,13 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
if (!roleIds.contains("admin")){
queryWrapper.eq("par.user_id", loginUser.getId());
}
return lawsTaskTransferMapper.queryProcessDB(queryWrapper, new Page<>(pageNo, pageSize));
return queryWrapper;
}
@Override
public List<LawsProcessDB> queryProcessDB(LawsProcessDB lawsProcessDb) {
QueryWrapper<LawsProcessDB> queryWrapper = getLawsProcessDBQueryWrapper(lawsProcessDb);
return lawsTaskTransferMapper.queryProcessDB(queryWrapper);
}
@Override
@@ -138,6 +150,10 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
@Override
public void processDBTransferBatch(List<LawsProcessDB> lawsProcessDBList) {
// 水平越权
List<String> idlist = lawsProcessDBList.stream().map(LawsProcessDB::getId).collect(Collectors.toList());
isHorizontalOverstepByProcessDB(String.join(",", idlist));
for (LawsProcessDB lawsProcessDb : lawsProcessDBList) {
String taskId = lawsProcessDb.getTaskId();
String toUserId = lawsProcessDb.getTransferUser();
@@ -151,7 +167,7 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
}
@Override
public void isHorizontalOverstep(String ids) {
public void isHorizontalOverstepByBaseDB(String ids) {
LawsBaseDB lawsBaseDB = new LawsBaseDB();
lawsBaseDB.setIds(ids);
List<LawsBaseDB> lawsBaseDBList = queryBaseDB(lawsBaseDB);
@@ -164,6 +180,20 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
}
}
@Override
public void isHorizontalOverstepByProcessDB(String ids) {
LawsProcessDB lawsProcessDB = new LawsProcessDB();
lawsProcessDB.setIds(ids);
List<LawsProcessDB> lawsProcessDBList = queryProcessDB(lawsProcessDB);
if (Objects.isNull(lawsProcessDBList) || lawsProcessDBList.size() != ids.split(",").length) {
if(LanguageEnum.CN.equals(MessageUtils.getLanguage())) {
throw new JeroBootException("无权限!");
}else{
throw new JeroBootException("No access!");
}
}
}
@Override
public void baseDBTransfer(LawsBaseDB lawsBaseDB) {
List<LawsBaseDB> lawsBaseDBList = new ArrayList<>();
@@ -173,6 +203,9 @@ public class LawsTaskTransferServiceImpl implements ILawsTaskTransferService {
@Override
public void baseDBTransferBatch(List<LawsBaseDB> lawsBaseDBList) {
// 水平越权
List<String> idlist = lawsBaseDBList.stream().map(LawsBaseDB::getId).collect(Collectors.toList());
isHorizontalOverstepByBaseDB(String.join(",", idlist));
// 企标计划
standardPlan(lawsBaseDBList);
// 标准拆分