悟空CRM:CRM客户管理系统
简介:此次小组项目开发的是一个CRM客户在线crm系统,此次项目总耗时十天,时间非常有限,所做的功能也是非常的有限。小组里大家也都是尽了最大的努力在着有限的时间里完成了各自的功能模块,其中有些许小细节和小bug没来得及处理
负责模块:
此次项目我负责的模块是角色权限模块以及菜单模块
前期使用逆向工程代码生成创建mapper,domain文件
service 的创建,创建service的时候抽取了一个公共service,所有的service都继承这个接口,减少代码的冗余度,高级分页也在service的实现类中完成,同样的也是公共类,供其他实现类继承
service层完成后就是controller层的代码了,controller层就是注入service后调用service层的方法了,基础代码比较简单,这里就不贴图了。
角色与权限模块
角色与权限之间的逻辑一定要先思考清楚,此处角色与权限是一个多对多的关系,所以需要在数据库创建一个中间表,这里的查询因为使用的是pagehelper的原因,导致后面查询在页面上的数据会计算同行所有列,然后分页,展示的数据就不对,所以在mapper映射文件里使用的应该是嵌套查询。前台的角色添加是用的左右选择添加 的方式来往角色里边添加权限的方式
角色的权限修改也是在这个界面
菜单模块
菜单模块的逻辑需要仔细考虑,因为此处是一个动态显示的菜单,根据登录用户来显示用户拥有的权限菜单,没有权限的菜单不展示。一级菜单和二级菜单的分级也需要仔细考虑
心得总结:
此次项目遇到的最多的问题就是mybatis的关联查询,多对多、一对多、多对一,什么时候用嵌套结果,什么时候用嵌套查询这是遇到的问题比较多的,然后是sql语句,稍不注意就会查错,字段表名,别名什么的。在处理菜单的一级二级菜单分级的时候遇到了问题,当时以为是需要在映射文件中写一个自关联查询,在反复测试之后发现达不到我需要的效果,在网上搜索一番以后还是不能很好的解决。最后在询问小组成员时,告诉我在service层写逻辑,把二级菜单放入子集合chidren,把一级菜单放入父集合parent让我豁然开朗,最后获得了想要的效果,问题得到了解决。
此次项目中收获最大的就是对spring+SpringMVC+mabatis的学习以及svn的使用,由于第一次使用svn,所以过程中的各种冲突也是层出不穷。同时也提高了自己解决问题的能力,在没人引导的情况下,自己根据需求写出代码。
悟空CRM永久免费且不限制使用人数,悟空CRM公司的软件使用者包括腾讯、央视网、携程网、OPPO、中兴等国内著名公司。悟空CRM为企业提供智能化的CRM客户管理系统、HRM人力资源管理系统、财务管理系统,卓有成效显著提升企业运营效率,使办公简单轻松。请立刻免费使用悟空CRM。https://www.72crm.com/
悟空CRM产品更多介绍:www.72crm.com