收藏关注不迷路,源码文章末
前言
本基于HTML5的CRM系统是根据当前客户关系相关的内容实际情况开发的,在系统语言选择上我们使用的Java语言,数据库是小巧灵活的MySQL数据库,本系统的开发可以极大的提高基于HTML5的CRM系统的管理效率。
本基于HTML5的CRM系统采用Java语言来进行开发,从角色上分为管理员,和用户2个部分,主要实现了客户信息管理,公告信息管理,公告信息管理,商机管理,客户拜访管理,产品信息管理,产品报价管理,客户订单管理,收款管理,客户流失管理,售后服务管理,线索管理,获利分析管理,市场分析管理,策略分析管理,行销活动管理等功能,通过这些功能基本可以满足客户关系管理的需求。
关键词:CRM,客户关系,MySQL,HTML
一、项目介绍
目前国内很多企业对客户关系的管理还是人工管理的方式,过程监控难度大,统计各类数据易出错,效率也不高。随着企业对客户关系的重视程度和支持力度的提升,大客户关系管理已经成为当前评定一个企业好坏的重要标准。
基于HTML5的CRM系统的开发目的是使企业客户关系的管理模式从手工方式转变成信息管理,为管理人员提供方便条件。对企业的客户关系的实际情况进行调研之后,进行详细的需求分析,对现有的管理模式进行改进,开发出一套新型的管理系统,从中领悟系统开发的思想,掌握系统开发的流程和方法。随着企业信息系统的不断完善,企业的管理将越来越依赖于信息化的管理。所以系统开发将围绕企业客户关系的实际情况,使之能迅速适应企业自动办公的需要。
二、开发环境
开发语言:Java
框架:ssm
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————
三、功能介绍
基于HTML5的CRM系统主要实现了以下用户和管理员和用户两个部分其相应功能。
1.基础模块
包含系统基本的用户登录,退出,密码修改等基本操作。
2.系统管理
系统管理包含用户管理,以及权限管理模块,用户管理可以实时查看用户的相关信息,权限管理是基于角色的一种权限控制,实现基于角色的权限控制,通过不同角色的用户登录该系统后展示系统不同的操作功能,从而达到对不同角色完成不同操作功能。
3.客户管理
完整记录客户信息来源的数据、企业与客户交往、客户订单查询等信息录入功能,方便企业与客户进行相应的信息交流与后续合作,在客户管理中,要将客户的等级,客户地区和指派给的经理展示出来,并可以通过各种方式来查询。每位客户都有详细信息资料界面。每一位客户的历史订单记录和与该公司的联系人详细信息都可以记录、修改与储存。在客户流失管 理中要记录到每一位流失的客户,并且记录流失的原因。
4.服务管理
服务管理是针对客户而开发的功能,针对客户要求,提高企业对于客户的服务质量,服务管理中要有服务的创建、分配、处理、反馈和归档。公司的管理者可通过分配的方式将任意一位客户经理安排给任意一家客户去处理服务信息。已分配的服务将交给客户经理去处理,处理得到客户反馈后可以评定客户经理的业务等级并记录,每次服务结束后归档并可以通过名字或时间或客户经理去查询。
5.统计报表
统计报表中可以对客户进行查询分析,可以看到客户的年订单总额、服务数量或者客户星级。每位客户统计信息一览无余。
本基于HTML5的CRM系统采用Java语言来进行开发,从角色上分为管理员,和用户2个部分,主要实现了客户信息管理,公告信息管理,公告信息管理,商机管理,客户拜访管理,产品信息管理,产品报价管理,客户订单管理,收款管理,客户流失管理,售后服务管理,线索管理,获利分析管理,市场分析管理,策略分析管理,行销活动管理等功能,通过这些功能基本可以满足客户关系管理的需求。具体如下图4-1所示
图4-2 基于HTML5的CRM系统网站功能结构图
四、核心代码
部分代码:
package com.example.controller;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {
@Resource
private CaiwuService caiwuService;
@PostMapping
public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
caiwuService.add(caiwu);
return Result.success(caiwu);
}
@PostMapping("/deleteList")
public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
caiwuService.deleteList(caiwu.getList());
return Result.success();
}
@DeleteMapping("/{id}")
public Result delete(@PathVariable Long id) {
caiwuService.delete(id);
return Result.success();
}
@PutMapping
public Result update(@RequestBody CaiwuVo caiwu) {
caiwuService.update(caiwu);
return Result.success();
}
@GetMapping("/{id}")
public Result<Caiwu> detail(@PathVariable Integer id) {
Caiwu caiwu = caiwuService.findById(id);
return Result.success(caiwu);
}
@GetMapping
public Result<List<Caiwu>> all() {
return Result.success(caiwuService.list());
}
@PostMapping("/page")
public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
return Result.success(caiwuService.findPage(caiwuVo));
}
@PostMapping("/login")
public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
throw new CustomException(ResultCode.PARAM_LOST_ERROR);
}
Caiwu login = caiwuService.login(caiwu);
// if(!login.getStatus()){
// return Result.error("1001","状态限制,无法登录系统");
// }
if(login != null) {
HashMap hashMap = new HashMap();
hashMap.put("user", login);
Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
String token = JwtUtil.creatToken(map);
hashMap.put("token", token);
return Result.success(hashMap);
}else {
return Result.error();
}
}
@PutMapping("/updatePassword")
public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
Caiwu caiwu = caiwuService.findById(info.getId());
String oldPassword = SecureUtil.md5(info.getMima());
if (!oldPassword.equals(caiwu.getMima())) {
return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
}
info.setMima(SecureUtil.md5(info.getNewPassword()));
Caiwu caiwu1 = new Caiwu();
BeanUtils.copyProperties(info, caiwu1);
caiwuService.update(caiwu1);
return Result.success();
}
}
五、效果图
六、文章目录
目 录
第1章 绪论 4
1.1研究背景和意义 4
1.2研究动态 4
1.3研究内容和论文结构 4
第2章 关键技术介绍 6
2.1 Java语言介绍 6
2.2 SSM介绍 6
2.3 数据库技术 6
第3章 系统分析 8
3.1可行性分析 8
3.1.1 经济可行性 8
3.1.2 技术可行性 8
3.1.3 法律可行性 8
3.1.4 社会可行性 8
3.1.5 可行性结论 8
3.2 需求分析 9
第4章 系统设计 10
4.1 基于HTML5的CRM系统网站功能结构设计 10
4.2 基于HTML5的CRM系统网站数据库设计 10
第五章 系统详细设计 18
5.1登录模块的实现 18
5.2用户管理 18
5.3客户信息管理 20
5.4客户订单管理 22
5.5客户拜访管理 23
5.6商机管理 25
5.7售后服务管理 27
5.8产品信息管理 29
第六章 系统测试 32
6.1 基于HTML5的CRM系统网站的测试目的 32
6.2 基于HTML5的CRM系统网站的测试方法 32
6.3 基于HTML5的CRM系统网站的测试用例 32
总结 36
致谢语 37
参考文献: 39