在角色里面配置菜单的时候,根据是否开启多级审核,来过滤掉任务相关的菜单

This commit is contained in:
季圣华
2023-03-09 00:29:22 +08:00
parent 29d5da9483
commit 4f5900215f
2 changed files with 31 additions and 4 deletions

View File

@@ -10,6 +10,7 @@ import com.jsh.erp.datasource.mappers.FunctionMapper;
import com.jsh.erp.datasource.mappers.FunctionMapperEx; import com.jsh.erp.datasource.mappers.FunctionMapperEx;
import com.jsh.erp.exception.JshException; import com.jsh.erp.exception.JshException;
import com.jsh.erp.service.log.LogService; import com.jsh.erp.service.log.LogService;
import com.jsh.erp.service.systemConfig.SystemConfigService;
import com.jsh.erp.service.user.UserService; import com.jsh.erp.service.user.UserService;
import com.jsh.erp.utils.StringUtil; import com.jsh.erp.utils.StringUtil;
import org.slf4j.Logger; import org.slf4j.Logger;
@@ -37,6 +38,8 @@ public class FunctionService {
@Resource @Resource
private UserService userService; private UserService userService;
@Resource @Resource
private SystemConfigService systemConfigService;
@Resource
private LogService logService; private LogService logService;
public Function getFunction(long id)throws Exception { public Function getFunction(long id)throws Exception {
@@ -204,12 +207,19 @@ public class FunctionService {
} }
public List<Function> findRoleFunction(String pnumber)throws Exception{ public List<Function> findRoleFunction(String pnumber)throws Exception{
FunctionExample example = new FunctionExample();
example.createCriteria().andEnabledEqualTo(true).andParentNumberEqualTo(pnumber)
.andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
example.setOrderByClause("Sort");
List<Function> list=null; List<Function> list=null;
try{ try{
Boolean multiLevelApprovalFlag = systemConfigService.getMultiLevelApprovalFlag();
FunctionExample example = new FunctionExample();
FunctionExample.Criteria criteria = example.createCriteria();
criteria.andEnabledEqualTo(true).andParentNumberEqualTo(pnumber)
.andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
if("0".equals(pnumber)) {
if(!multiLevelApprovalFlag) {
criteria.andUrlNotEqualTo("/workflow");
}
}
example.setOrderByClause("Sort");
list =functionsMapper.selectByExample(example); list =functionsMapper.selectByExample(example);
}catch(Exception e){ }catch(Exception e){
JshException.readFail(logger, e); JshException.readFail(logger, e);

View File

@@ -216,4 +216,21 @@ public class SystemConfigService {
} }
return amountApprovalFlag; return amountApprovalFlag;
} }
/**
* 获取多级审核开关
* @return
* @throws Exception
*/
public boolean getMultiLevelApprovalFlag() throws Exception {
boolean multiLevelApprovalFlag = false;
List<SystemConfig> list = getSystemConfig();
if(list.size()>0) {
String flag = list.get(0).getMultiLevelApprovalFlag();
if(("1").equals(flag)) {
multiLevelApprovalFlag = true;
}
}
return multiLevelApprovalFlag;
}
} }