|
@@ -29,12 +29,11 @@ import java.util.stream.Collectors;
|
|
|
@Transactional
|
|
|
public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements SysRoleService {
|
|
|
|
|
|
- public static String[] employeeModules = {"工时报告","项目报告审核", "专业审核","部门审核","费用报销","待办任务", "项目管理", "请假管理", "导入日报审核"};
|
|
|
- public static String[] pmModules = {"工时报告","项目报告审核", "专业审核","部门审核","费用报销","待办任务", "项目管理", "请假管理", "导入日报审核"};
|
|
|
- public static String[] financeModules = {"工时成本统计", "财务核算成本", "费用报销", "组织架构", "请假管理"};
|
|
|
- public static String[] pmoModules = {"工时报告","项目报告审核","查看全部任务", "费用报销", "待办任务", "项目管理", "客户管理", "工程专业管理","请假管理"};
|
|
|
- public static String[] corpLeaderModules = {"工时报告","查看全部任务","工时成本统计","自定义数值统计","财务核算成本","项目报表服务",
|
|
|
- "费用报销","待办任务","项目管理","请假管理","查看全部报销单", "查看全部请假单"};
|
|
|
+ public static String[] employeeModules = {"商机","线索", "客户","联系人","任务", "销售订单","产品管理"};
|
|
|
+ public static String[] pmModules = {"商机","线索", "客户","联系人","任务","报表服务", "销售订单","产品管理"};
|
|
|
+ public static String[] financeModules = {"商机","线索", "客户","联系人","任务","报表服务", "销售订单","产品管理"};
|
|
|
+ public static String[] pmoModules = {"商机","线索", "客户","联系人","任务","报表服务", "销售订单","产品管理"};
|
|
|
+ public static String[] corpLeaderModules = {"商机","线索", "客户","联系人","任务","报表服务","数据分析", "销售订单","产品管理","组织架构","系统设置"};
|
|
|
|
|
|
public static final HashMap<String, String[]> moduleMaps = new HashMap();
|
|
|
static {
|
|
@@ -45,14 +44,46 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
|
|
moduleMaps.put("公司领导", corpLeaderModules);
|
|
|
}
|
|
|
//
|
|
|
- public static String[] employeeFunctions = {"查看相关人员工时","请假填报","费用填报"};
|
|
|
- public static String[] pmFunctions = {"新增项目", "查看相关人员工时","请假填报","费用填报","代填日报"};
|
|
|
- public static String[] financeFunctions = {"人员成本管理", "添加人员", "导出人员", "导入人员", "请假填报","费用填报", "查看全部请假单"};
|
|
|
- public static String[] pmoFunctions = {"新增项目","查看全部项目","管理全部项目","分类管理","导入项目","代填日报", "请假填报","费用填报",
|
|
|
- "导出项目","查看资源分配", "基线成本项管理","查看成本基线","校正成本基线","查看合同金额"};
|
|
|
- public static String[] corpLeaderFunctions = {"查看全公司工时","查看全部项目","导出项目","查看资源分配",
|
|
|
- "查看成本基线","查看合同金额", "请假填报","费用填报", "查看全部请假单","项目任务报表","项目成本报表","项目收支平衡表","客户项目利润表",
|
|
|
- "项目阶段工时表", "加班情况统计表"};
|
|
|
+ public static String[] employeeFunctions = {"新增\\编辑商机","导入","导出","编辑","新增"};
|
|
|
+ public static String[] pmFunctions = {"编辑","新增","导入","导出","删除","回收站",
|
|
|
+ "查看负责部门商机","新增\\编辑商机",
|
|
|
+ "查看负责部门线索",
|
|
|
+ "查看负责部门客户",
|
|
|
+ "查看负责部门联系人", "查看负责部门任务",
|
|
|
+ "负责部门线索数据","负责部门商机数据",
|
|
|
+ "负责部门销售数据","负责部门任务数据",
|
|
|
+ "查看负责部门产品数据",
|
|
|
+ "查看负责部门订单"
|
|
|
+ };
|
|
|
+ public static String[] financeFunctions = {
|
|
|
+ "查看全部商机",
|
|
|
+ "查看全部线索",
|
|
|
+ "查看全部客户",
|
|
|
+ "查看全部联系人", "查看全部任务",
|
|
|
+ "全部线索数据","全部商机数据",
|
|
|
+ "全部销售数据","全部任务数据",
|
|
|
+ "查看全部产品数据",
|
|
|
+ "查看全部订单",
|
|
|
+ "角色权限","系统字典","自定义表单"};
|
|
|
+ public static String[] pmoFunctions = {"编辑","新增","导入","导出","删除","回收站",
|
|
|
+ "查看负责部门商机","新增\\编辑商机",
|
|
|
+ "查看负责部门线索",
|
|
|
+ "查看负责部门客户",
|
|
|
+ "查看负责部门联系人", "查看负责部门任务",
|
|
|
+ "负责部门线索数据","负责部门商机数据",
|
|
|
+ "负责部门销售数据","负责部门任务数据",
|
|
|
+ "查看负责部门产品数据",
|
|
|
+ "查看负责部门订单"};
|
|
|
+ public static String[] corpLeaderFunctions = {"编辑","新增","导入","导出","删除","回收站",
|
|
|
+ "查看负责部门商机", "查看全部商机","新增\\编辑商机",
|
|
|
+ "查看负责部门线索","查看全部线索",
|
|
|
+ "查看负责部门客户","查看全部客户",
|
|
|
+ "查看负责部门联系人","查看全部联系人", "查看负责部门任务","查看全部任务",
|
|
|
+ "负责部门线索数据","全部线索数据","负责部门商机数据","全部商机数据",
|
|
|
+ "负责部门销售数据","全部销售数据","负责部门任务数据","全部任务数据",
|
|
|
+ "查看全部产品数据","查看负责部门产品数据",
|
|
|
+ "查看负责部门订单","查看全部订单"
|
|
|
+ };
|
|
|
public static final HashMap<String, String[]> functionMaps = new HashMap();
|
|
|
static {
|
|
|
functionMaps.put("普通员工", employeeFunctions);
|
|
@@ -184,9 +215,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
|
|
generateRole(str, company, modules, functions);
|
|
|
} else {
|
|
|
//其他角色按照过滤的来生成
|
|
|
- List<SysModule> filteredModules = modules.stream().filter(
|
|
|
- m->Arrays.stream(moduleMaps.get(str)).anyMatch(curModule->curModule.equals(m.getName()))
|
|
|
- ).collect(Collectors.toList());
|
|
|
+ String[] mocules = moduleMaps.get(str);
|
|
|
+ List<SysModule> filteredModules = modules.stream().
|
|
|
+ filter(m->Arrays.stream(mocules).anyMatch(curModule->curModule.equals(m.getName()))).collect(Collectors.toList());
|
|
|
List<SysFunction> filteredFunctions = functions.stream().filter(
|
|
|
m->Arrays.stream(functionMaps.get(str)).anyMatch(curModule->curModule.equals(m.getName()))
|
|
|
).collect(Collectors.toList());
|