CRM权限控制笔记

简介: 此CRM包括三个方面 客户管理系统:客户的信息 预约 生日提醒 进销存系统:进货 入库 销售 OA管理系统:比如日程安排 **********************************************************...

此CRM包括三个方面

客户管理系统:客户的信息 预约 生日提醒

进销存系统:进货 入库 销售

OA管理系统:比如日程安排

****************************************************************************************************************************************

约定大约配置!!!!!!!!!!!!!!!!!!!!!!得好好看看 
ruby的纯面向对象 比如 取绝对值 负数也是一个对象


////////权限控制分为两部分:粗粒度的权限控制和细粒度的权限控制
****************************************************************************************************************************************
粗粒度的权限控制(过滤器实现):

注意点一:
要注意哪些页面不可以被拦截,比如index.jsp不能被拦截 login.jsp不能被拦截,image.jsp(用于显示验证码)不能被拦截
将不拦截的这些页面写到一个配置文件里面 side.properties;然后在拦截器里面将此属性文件读入即可。
注意点二:
用户正确登录后保存用户的信息到session中,然后转发到main.jsp。中间需要一个过滤器来控制!!!!当登录的时候要经过过滤器——判断用户信息
是否存放在session中,是的话放行,不是的话重定向到登录页面
注意要在web.xml里面配置过滤器


////////细粒度的权限控制(重点是写了一个BaseAction,其余的Action都是继承自BaseAction)

第一张重要的表:操作表。
这张表列出了所有模块的所有操作。
主要字段:模块名称  操作名称(比如增加,删除,修改)   排序   标题    提示    备注

第二张重要的表:User表
这张表主要用于描述了用户信息
主要字段:ID 用户名 private SysRole sysRole(权限组)   private SysUserGroup sysUserGroup(所属部门)


第三种重要的表:操作权限表
这张表主要用来描述每个权限组对模块的方法的操作。即说明了每个权限组对哪些模块里的方法具有哪些操作
主要字段:权限组编号  功能模块名称   功能模块的操作(比如增加,删除)。用这三个字段作为联合字段,确保了唯一性。
即看到这张表就知道了此权限组对哪些模块的哪些方法具有哪些操作。
注意:由系统管理员给每个权限组设置权限
****************************************************************************************************************************************
代码实现:
自定义一个BaseAction extends DispatchAction,让其余的Action类继承自此BaseAction再结合注解来解决问题。

核心重点一:
自定义注解其生命周期为@Retention(RetentionPolicy.RUNTIME),该注解有两个属性——模块名称和权限(比如,增加,删除,修改)
然后给Action里的方法加上次自定义注解,表示此方法属于哪个模块和此方法是干什么用的

核心重点二:
就是重写了DispatchAction里面的execute()方法。
第一步:从Session里面取出User,重点是得到其权限组编号。
第二步:然后经过反射得到想要执行的方法。
第三步:得到此方法后,利用method.getAnnotation(MyAnnotation.class)得到此方法上的注解。
           得到了注解当然也就得到了其属性——模块名称和权限(比如,增加,删除,修改)
第四步:利用此权限组号从操作权限表查出其所具有的所有权限,返回值为一个list
          遍历此list(里面的每一个对象都有权限组编号,模块名称,权限)的每一个成员,将此成员与我们得到的权限组编号,模块名称,权限 (比如,增加,删除,修改)匹配。 

        成功的话表示有此权限,否则失败

相关文章
|
数据安全/隐私保护 JavaScript Ruby
CRM笔记(杂乱无章.无参考价值)
此CRM包括三个方面 客户管理系统:客户的信息 预约 生日提醒 进销存系统:进货,入库,销售 OA管理系统:比如日程安排 day46 第三个视频一开始有个小总结 约定大约配置!!!!!!!!!!!!!!!!!!!!!!得好好看看  ruby的纯面向对象 比如 取绝对值 负数也是一个对象 树形目录用的是jquery 插件 图片都在一个image包里面放着 day50开始讲的是权限管理 粗粒度的权限控制(过滤器实现): 判断用户是否登录。
1104 0
|
4月前
|
缓存 监控 安全
通义大模型与现有企业系统集成实战《CRM案例分析与安全最佳实践》
本文档详细介绍了基于通义大模型的CRM系统集成架构设计与优化实践。涵盖混合部署架构演进(新增向量缓存、双通道同步)、性能基准测试对比、客户意图分析模块、商机预测系统等核心功能实现。同时,深入探讨了安全防护体系、三级缓存架构、请求批处理优化及故障处理机制,并展示了实时客户画像生成和动态提示词工程。通过实施,显著提升客服响应速度(425%)、商机识别准确率(37%)及客户满意度(15%)。最后,规划了技术演进路线图,从单点集成迈向自主优化阶段,推动业务效率与价值持续增长。
156 7
|
5月前
|
机器学习/深度学习 人工智能 BI
500人规模的企业CRM必备的5大关键能力
文章介绍了适配大中型企业CRM系统的五大关键功能:精细化销售管理、全渠道营销、PaaS定制化、AI应用及生态连接能力。以纷享销客为例,详细解析了其在销售线索管理、行为与流程精细化管理、全渠道获客、灵活定制开发、AI赋能及生态协同等方面的优势。文章指出,在数字经济浪潮下,CRM已成为企业数字化转型的核心工具,通过重构客户运营体系,助力企业提升效率、优化决策并实现可持续增长。
|
17天前
|
人工智能 物联网 BI
诊断设备企业必看!垂直医疗行业的CRM软件有哪些?
2025年,诊断设备企业竞争核心转向精细化服务。传统CRM难堪重任,垂直医疗CRM成破局关键。本文深度解析八骏医疗云等五大解决方案,揭秘如何通过设备全周期管理、代理商管控、智能耗材预警与私有化部署,构建以客户为中心的服务体系,抢占增长制高点。
61 0
|
7月前
|
安全 搜索推荐
销售易CRM:实施与服务全程护航,确保企业价值落地
销售易CRM深知实施与服务对企业部署客户关系管理系统的重要性。通过专业实施团队提供定制化部署方案,确保系统与企业业务无缝对接;全程培训帮助企业培养内部专家,推动CRM应用水平提升;7×24小时技术支持及时解决用户问题,保障系统稳定运行;持续迭代优化适应企业成长需求。销售易CRM以全方位服务助力企业数字化转型。
|
7月前
|
数据可视化 搜索推荐 安全
点晴CRM:助力企业高效管理客户关系
在当今竞争激烈的商业环境中,客户关系管理(CRM)已成为企业制胜的关键。点晴CRM,作为一款专为企业打造的客户关系管理解决方案,致力于帮助企业高效管理客户关系,提升销售业绩,实现可持续增长。
78 0
|
3月前
|
人工智能 监控 安全
MCP与企业数据集成:ERP、CRM、数据仓库的统一接入
作为一名深耕企业级系统集成领域多年的技术博主"摘星",我深刻认识到现代企业面临的数据孤岛问题日益严重。随着企业数字化转型的深入推进,各类业务系统如ERP(Enterprise Resource Planning,企业资源规划)、CRM(Customer Relationship Management,客户关系管理)、数据仓库等系统的数据互联互通需求愈发迫切。传统的点对点集成方式不仅开发成本高昂,维护复杂度也呈指数级增长,更重要的是难以满足实时性和一致性要求。Anthropic推出的MCP(Model Context Protocol,模型上下文协议)为这一痛点提供了革命性的解决方案。MCP通过
182 0
|
4月前
|
存储 数据可视化 BI
中小企业如何通过点晴CRM实现低成本高效运营?
在竞争激烈的市场环境中,中小企业往往面临资源有限、客户管理混乱、销售效率低下等挑战。如何在不增加高昂成本的前提下,提升运营效率、优化客户管理,成为企业持续增长的关键。
66 1
|
4月前
|
人工智能 安全 搜索推荐
集团化企业如何构建高效的CRM系统
在数字化时代,集团化企业面临信息孤立与协同低效等挑战,CRM系统成为其精细化管理和增长的关键。然而,构建高效CRM需战略规划与执行支持。本文分析了集团化企业在CRM建设中的核心需求、风险及解决方案,并以纷享销客为例,展示其通过智能型CRM助力企业平衡管控与赋能、挖掘协同潜力,实现数字化转型与持续增长的价值。