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开始讲的是权限管理 粗粒度的权限控制(过滤器实现): 判断用户是否登录。
1069 0
|
1月前
|
人工智能 自然语言处理 搜索推荐
本土化与创新:中国CRM市场的领军企业及未来走向
在数字化时代,客户关系管理(CRM)系统成为中国企业的关键工具。本文探讨中国CRM市场的现状、领先的定制开发厂商,如销售易、Zoho、纷享销客等,以及未来的发展趋势。定制化CRM通过个性化服务、集成性、本地化支持和强大的数据分析能力,助力企业提升竞争力。未来,AI和大数据将进一步推动CRM系统的智能化和自动化。
|
11天前
|
机器学习/深度学习 存储 人工智能
CRM系统:企业数字化转型的智能引擎
在数字化时代,CRM系统成为企业转型的关键工具,通过集中管理客户信息,提供深度数据分析,助力企业理解客户需求,预测市场趋势,制定有效策略,提升客户满意度。同时,CRM系统支持自动化营销,增强客户互动,提高忠诚度。面对数据安全和跨部门协作的挑战,CRM系统正借助AI技术,迈向智能化,为企业的数字化转型提供强大支持。
|
10天前
|
搜索推荐 数据挖掘
精准获客攻略:企业借助CRM系统提升营销精准度
在数字化时代,CRM系统成为企业获取和维护客户资源的重要工具。通过精准获客、数据驱动策略、个性化营销、跨渠道一致性和持续优化,企业能有效提高营销效率和客户满意度,实现业务增长。CRM系统帮助企业收集、分析和应用客户数据,识别目标客户,制定个性化营销策略,保持跨渠道客户体验的一致性,实现更高投资回报率。
|
10天前
|
自然语言处理 搜索推荐 小程序
深入剖析:销售易与神州云动CRM系统的功能对比及企业适配性
在企业数字化转型中,CRM系统成为提升客户管理和优化销售流程的关键工具。本文对比分析了国内两大CRM提供商——销售易和神州云动的产品功能及适用企业类型。销售易以全渠道营销、智能化销售流程和行业解决方案见长,适合大型企业;神州云动则凭借高度定制化、系统集成能力和移动办公支持,更受中小企业欢迎。两者各具特色,为企业提供了多样化的选择。
|
12天前
|
人工智能 自然语言处理 搜索推荐
CRM系统:企业数字化转型的加速器
在数字化时代,CRM系统成为企业提升竞争力的关键工具,通过数据驱动的客户洞察、个性化体验、全渠道管理、强大的自动化功能、数据安全保护、销售流程优化、团队协作、数据分析预测及移动端能力,全面提升销售效率,助力企业数字化转型。
|
10天前
|
安全 项目管理
销售易对决红圈:CRM系统全方位比较与企业选择指南
本文对比分析了销售易和红圈两大国内领先的CRM解决方案。销售易以全球领先的产品能力和全面的营销销售流程管理著称,深受500强企业信赖;红圈则以其专业的客户服务和丰富的项目管理经验见长,特别适合工程项目管理。两者各具优势,企业可根据自身需求选择最合适的CRM系统。
|
10天前
|
搜索推荐 数据挖掘
提升营销效能:企业如何通过CRM系统实现精准获客
在数字化时代,CRM系统成为企业提升客户管理与营销效率的重要工具。通过精准获客、数据驱动策略、个性化营销及跨渠道一致性,CRM助力企业有效识别目标客户,提高转化率和客户满意度,实现业务增长。持续优化与反馈机制进一步增强了CRM的应用效果,使其成为企业竞争优势的关键。
|
11天前
|
人工智能 数据处理 数据安全/隐私保护
销售易CRM:深耕大中型企业市场的标杆
在中国企业级CRM市场,销售易凭借对中国企业数字化转型需求的深刻理解、技术创新能力、丰富的行业经验和卓越的实施服务能力,赢得了三一、柳工、锦江酒店等大型企业的青睐。其本土化服务和持续创新,使其成为企业数字化转型的可靠伙伴。
下一篇
DataWorks