一、源码特点
SSM 客户管理系统CRM是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
前段主要技术 html.css jquery
后端主要技术 SSM
数据库 mysql
开发工具 eclipse JDK1.8 TOMCAT 8.5
视频链接 https://www.bilibili.com/video/BV1Ru4y1L7bm/
二、功能介绍
本系统模块实现功能如下:
(1)员工管理:对员工信息进行添加、删除、修改和查看
(2)菜单管理:对菜单信息进行添加、删除、修改和查看
(3)菜单权限管理:对菜单权限信息进行添加、删除、修改和查看 动态菜单实现
(4)职位管理:对职位信息进行添加、删除、修改和查看
(5)客户管理:对客户信息进行添加、删除、修改和查看
(6)联系人管理:对联系人信息进行添加、删除、修改和查看
(7)商机管理:对商机信息进行添加、删除、修改和查看
(8)邮件管理:对邮件信息进行添加、删除、修改和查看
(9)任务管理:对任务信息进行添加、删除、修改和查看
(10)产品管理:对产品信息进行添加、删除、修改和查看
(11)个人信息修改、登录
数据库设计
(1)员工信息表如表5.1所示:
表5.1 员工信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | ygid | INTEGER | 11 | 是 | 员工编号 |
2 | yhm | VARCHAR | 40 | 否 | 用户名 |
3 | mm | VARCHAR | 40 | 否 | 密码 |
4 | xm | VARCHAR | 40 | 否 | 姓名 |
5 | qx | VARCHAR | 40 | 否 | 权限 |
6 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
7 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
8 | zw | VARCHAR | 40 | 否 | 职位 |
(2)菜单信息表如表5.2所示:
表5.2 菜单信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | cdid | INTEGER | 11 | 是 | 菜单编号 |
2 | cdmc | VARCHAR | 40 | 否 | 菜单名称 |
(3)菜单权限信息表如表5.3所示:
表5.3 菜单权限信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | cdqxid | INTEGER | 11 | 是 | 菜单权限编号 |
2 | cd | VARCHAR | 40 | 否 | 菜单 |
3 | qx | VARCHAR | 40 | 否 | 权限 |
(4)职位信息表如表5.4所示:
表5.4 职位信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | zwid | INTEGER | 11 | 是 | 职位编号 |
2 | zwmc | VARCHAR | 40 | 否 | 职位名称 |
3 | js | VARCHAR | 40 | 否 | 介绍 |
(5)客户信息表如表5.5所示:
表5.5 客户信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | khid | INTEGER | 11 | 是 | 客户编号 |
2 | khmc | VARCHAR | 40 | 否 | 客户名称 |
3 | jyfw | VARCHAR | 40 | 否 | 经营范围 |
4 | djsj | VARCHAR | 40 | 否 | 登记时间 |
5 | sm | VARCHAR | 40 | 否 | 说明 |
6 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
(6)联系人信息表如表5.6所示:
表5.6 联系人信息表
序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
1 | lxrid | INTEGER | 11 | 是 | 联系人编号 |
2 | kh | VARCHAR | 40 | 否 | 客户 |
3 | lxr | VARCHAR | 40 | 否 | 联系人 |
4 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
5 | sm | VARCHAR | 40 | 否 | 说明 |
控制层设计
- @RequestMapping(value="/add")
- public String add(kehu kehu,HttpServletRequest request){//添加方法
- Map<String,Object> map= new HashMap<String,Object>();//初始化对象
- //String name=(String)request.getParameter("name");
-
- map.put("khid", kehu.getKhid());//客户编号
-
- map.put("khmc", kehu.getKhmc());//客户名称
-
- map.put("jyfw", kehu.getJyfw());//经营范围
-
- map.put("djsj", kehu.getDjsj());//登记时间
-
- map.put("sm", kehu.getSm());//说明
-
- map.put("lxdh", kehu.getLxdh());//联系电话
-
-
-
- String khid=(String)kehu.getKhid();//客户编号
-
- String khmc=(String)kehu.getKhmc();//客户名称
-
- String jyfw=(String)kehu.getJyfw();//经营范围
-
- String djsj=(String)kehu.getDjsj();//登记时间
-
- String sm=(String)kehu.getSm();//说明
-
- String lxdh=(String)kehu.getLxdh();//联系电话
-
- kehudao.save(map);//调用 add方法 保存kehu 数据
-
-
- request.setAttribute("msg", "");
- System.out.println("addok");
- return "kehu/kehuadd";
- }
-
- /**删除 kehu
- *
- */
- @RequestMapping(value="/del")
- public String del(Integer id,HttpServletRequest request,Map<String,Object> map){
- // Map<String,Object> map= new HashMap<String,Object>();//初始化对象
- String a=(String)request.getParameter("keyid");//request 方式获得主键id
- id=Integer.parseInt(a);
- request.setAttribute("msg", "");
- kehudao.del(id);//调用 删除方法
- return selectall(null,map,request);
- }
- /**
- * 修改kehu信息
- */
- @RequestMapping(value="/update")
- public String update(kehu kehu,HttpServletRequest request,Map<String,Object> map1){
- Map<String,Object> map= new HashMap<String,Object>();//初始化对象
- map.put("khid", kehu.getKhid());//客户编号
-
- map.put("khmc", kehu.getKhmc());//客户名称
-
- map.put("jyfw", kehu.getJyfw());//经营范围
-
- map.put("djsj", kehu.getDjsj());//登记时间
-
- map.put("sm", kehu.getSm());//说明
-
- map.put("lxdh", kehu.getLxdh());//联系电话
-
-
-
- String khid=(String)kehu.getKhid();//客户编号
-
- String khmc=(String)kehu.getKhmc();//客户名称
-
- String jyfw=(String)kehu.getJyfw();//经营范围
-
- String djsj=(String)kehu.getDjsj();//登记时间
-
- String sm=(String)kehu.getSm();//说明
-
- String lxdh=(String)kehu.getLxdh();//联系电话
-
- request.setAttribute("msg", "");
- kehudao.update(map);//执行update 方法
- return selectall(null,map1,request);
- }
- /**
- * 查询kehu信息
- */
- @RequestMapping(value="/modify")
- public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){
- String keyid=(String)request.getParameter("keyid");//request 方式获得主键id
- List<Map<String,Object>> list= new ArrayList
- list=kehudao.select(Integer.parseInt(keyid));//根据id返回 kehu对象数据
- request.setAttribute("khid", list.get(0).get("khid"));//客户编号
-
- request.setAttribute("khmc", list.get(0).get("khmc"));//客户名称
-
- request.setAttribute("jyfw", list.get(0).get("jyfw"));//经营范围
-
- request.setAttribute("djsj", list.get(0).get("djsj"));//登记时间
-
- request.setAttribute("sm", list.get(0).get("sm"));//说明
-
- request.setAttribute("lxdh", list.get(0).get("lxdh"));//联系电话
-
-
- return "kehu/kehumodify";
- }
-
- @RequestMapping(value="/detail")
- public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){
- String keyid=(String)request.getParameter("keyid");//request 方式获得主键id
- List<Map<String,Object>> list= new ArrayList
- list=kehudao.select(Integer.parseInt(keyid));//根据id返回 kehu对象数据
- request.setAttribute("khid", String.valueOf(list.get(0).get("khid")));//客户编号
-
- request.setAttribute("khmc", list.get(0).get("khmc"));//客户名称
-
- request.setAttribute("jyfw", list.get(0).get("jyfw"));//经营范围
-
- request.setAttribute("djsj", list.get(0).get("djsj"));//登记时间
-
- request.setAttribute("sm", list.get(0).get("sm"));//说明
-
- request.setAttribute("lxdh", list.get(0).get("lxdh"));//联系电话
-
- return "kehu/kehudetail";
- }
持久层设计
- public void save(Map<String, Object> map) {
- sqlSession.insert("com.chanpin.insertchanpin", map);//执行insert 插入方法
-
- }
- /**
- * 删除aa
- * @param id
- */
- public void del(Integer id) {
- sqlSession.delete("com.chanpin.delchanpin", id);//执行delete 删除方法
- }
-
- /**
- * 修改chanpin信息
- * @param map
- */
- public void update(Map<String, Object> map) {
- sqlSession.update("com.chanpin.updatechanpin", map);//执行update 修改方法
- }
-
- /**
- * 查询chanpin信息
- * @param id
- * @return
- */
- public List<Map<String, Object>> select(Integer id) {
- return sqlSession.selectList("com.chanpin.selectchanpin", id) ; //执行select 查询
- }
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为eclipse开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspssmcrm.sql 系统名称ssmcrm
4、地址:http://127.0.0.1:8080/ssmcrm/login.jsp
四 系统实现
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓