基于javaweb+mysql的ssm+maven车险理赔管理系统(java+ssm+jsp+echarts+jquery+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM+Maven车险理赔管理系统(java+ssm+jsp+echarts+jquery+mysql)
项目介绍
车险理赔管理系统源码,分为三个用户,一个管理员,一个工作人员,一个普通人员 管理员功能:登录、发放赔偿金、赔偿金发放列表、申请理赔列表、申请理赔通过、我的资料、用户列表 工作人员功能:勘察员-待调查事故保单、勘察员-调查事故提交结果、勘察员-现场勘查记录、勘察员-现场勘查记录列表、勘察员-已调查记录 普通人员功能:用户-申请理赔、用户-添加保险、用户-我的保险、用户-我的理赔、用户-我的账户
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 5.7/8.0等版本均可;
技术栈
- 后端:Spring springmvc mybatis 2. 前端:JSP+css+javascript+jQuery+echarts;
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat, 3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置,然后运行; 4. 运行成功后,在浏览器中输入:http://localhost:8081/ 账号 管理员 admin/admin 勘探员 kanchayuan2/123455 普通用户 1/1
request.getSession().setAttribute("user", user1);
return ResultUtil.success(user1);
} else {
return ResultUtil.error("账号或密码错误!");
}
}
@RequestMapping("welcome")
public String welcome(HttpServletRequest request) {
return "/admin/welcome";
}
@RequestMapping("logout")
public String loout(HttpServletRequest request) {
request.getSession().invalidate();
return "/admin/login";
}
@RequestMapping("register")
public String regUser() {
return "/admin/register";
}
@RequestMapping("reg")
@ResponseBody
public Result reguser(HttpServletRequest request, User user, Integer type) {
String username = user.getUsername();
User oneModel = userService.selectOneModel(MapUtil.buildMap("username", username));
if(oneModel != null){
return ResultUtil.error("用户已被占用!");
}
user.preInsert();
int i = userService.insertModel(user);
if (i == 0) {
return ResultUtil.error("失败");
} else {
return ResultUtil.success(null);
}
}
public static void main(String[] args) {
request.setAttribute("model",model);
return "/admin/investigation-add";
}
@RequestMapping("save")
@ResponseBody
public Result save(HttpServletRequest request,Investigation model){
User user = (User) request.getSession().getAttribute("user");
int i = 0;
if (StringUtils.isBlank(model.getId())) {
model.preInsert();
model.setCreateDate(new Date());
i = investigationService.insertModel(model);
//更新保单状态
Orders orders = ordersService.getModel(model.getOrderId());
orders.setState(2);
ordersService.updateModel(orders);
} else {
i = investigationService.updateModel(model);
}
if (i == 0) {
return ResultUtil.error("失败");
} else {
return ResultUtil.success(null);
}
}
//删除批量删除
@RequestMapping("delete")
@ResponseBody
public Result delete(HttpServletRequest request,String id){
if (StringUtils.isNotBlank(id)){
String[] split = id.split(",");
for (int i = 0; i < split.length; i++) {
investigationService.deleteModel(split[i]);
}
return ResultUtil.success();
}else {
return ResultUtil.error("未选中删除项!");
}
}
@Autowired
private AttachmentService attachmentService;
private String rootpath = "d://files/";
@ResponseBody
@RequestMapping("files/upload")
public Result upload(MultipartFile file) throws IOException {
// 原始全名称
String originalFileName = file.getOriginalFilename();
// 后缀名
String suffixName = "";
if (originalFileName.lastIndexOf(".") > -1){
suffixName = originalFileName.substring(originalFileName.lastIndexOf(".") +1);
}
//新文件名
String uuid = IdGen.uuid();
//文件路径
String filepath = "/files/" + new SimpleDateFormat("yyyy/MM/dd/").format(new Date()) + uuid + "." + suffixName;
File newFile = new File(rootpath + filepath);
if (!newFile.getParentFile().exists()){
newFile.getParentFile().mkdirs();
}
Attachment attachment = new Attachment();
try {
//保存附件表
file.transferTo(newFile);
attachment.setId(uuid);
attachment.setName(originalFileName);
attachment.setPath(filepath);
attachment.preInsert();
attachment.setFileSize(file.getSize());
attachment.setSuffix(suffixName);
attachmentService.insertModel(attachment);
} catch (IOException e) {
return ResultUtil.error("上传出错!");
}
return ResultUtil.success( MapUtil.buildMap("id", uuid, "name", originalFileName,"date",attachment.getCreateDate(),"suffix",attachment.getSuffix()));
}
}
if (StringUtils.isNotBlank(id)){
String[] split = id.split(",");
for (int i = 0; i < split.length; i++) {
investigationService.deleteModel(split[i]);
}
return ResultUtil.success();
}else {
return ResultUtil.error("未选中删除项!");
}
}
@RequestMapping("list")
public String list(HttpServletRequest request,Investigation model){
request.setAttribute("model",model);
return "/admin/investigation-list";
}
//获取列表数据
@RequestMapping("list/data")
@ResponseBody
public Result list(HttpServletRequest request,User model, @RequestParam(defaultValue = "1")Integer page,Integer limit){
PageHelper.startPage(page,limit);
List<Investigation> list = investigationService.getModelList(putEntityInMap(model));
PageInfo<Investigation> pageInfo = new PageInfo<>(list);
return ResultUtil.success(list,pageInfo.getTotal());
}
}
//删除批量删除
@RequestMapping("delete")
@ResponseBody
public Result delete(HttpServletRequest request, String id) {
if (StringUtils.isNotBlank(id)) {
String[] split = id.split(",");
for (int i = 0; i < split.length; i++) {
ordersService.deleteModel(split[i]);
}
return ResultUtil.success();
} else {
return ResultUtil.error("未选中删除项!");
}
}
@RequestMapping("list")
public String list(HttpServletRequest request, Orders model) {
request.setAttribute("model", model);
return "/admin/orders-list";
}
/**
* 用户提交的申请理赔
* @param request
* @param model
* @return
*/
@RequestMapping("approve")
public String approve(HttpServletRequest request, Orders model) {
request.setAttribute("model", model);
return "/admin/orders-approve";
}
/**
* 已经有调查勘察记录的申请单,确认是否发放赔偿金
public void video(@PathVariable String id, HttpServletRequest request, HttpServletResponse response) throws Exception {
Attachment attachment = attachmentService.getModel(id);
String path = attachment.getPath();
// 后缀名
String suffixName = path.substring(path.lastIndexOf("."));
response.addHeader("Content-Type","video/mp4;utf-8");
String realPath = rootpath + path;
try {
long downloadedLength = 0L;
//打开本地文件流
InputStream inputStream = new FileInputStream(realPath);
//激活下载操作
OutputStream os = response.getOutputStream();
//循环写入输出流
byte[] b = new byte[2048];
int length;
while ((length = inputStream.read(b)) > 0) {
os.write(b, 0, length);
downloadedLength += b.length;
}
// 这里主要关闭。
os.close();
inputStream.close();
} catch (Exception e) {
throw e;
}
}
}
// 这里主要关闭。
os.close();
inputStream.close();
} catch (Exception e) {
throw e;
}
}
/**
* 图片查看大图
*
* @param id 附件id
*/
@RequestMapping(value = "image/{id}")
public void imageView(@PathVariable String id, HttpServletRequest request, HttpServletResponse response) throws Exception {
if (StringUtils.isBlank(id)){
return;
}
Attachment attachment = attachmentService.getModel(id);
String path = attachment.getPath();
// 后缀名
String suffix = attachment.getSuffix();
String realPath = rootpath + path;
try {
long downloadedLength = 0L;
//打开本地文件流
InputStream inputStream;
if (StringUtils.isNotBlank(suffix) && "pdf".equals(suffix.toLowerCase())){
ClassPathResource classPathResource = new ClassPathResource("static/img/pdf.png");
inputStream = classPathResource.getInputStream();
} else {
inputStream = new FileInputStream(realPath);
}
//激活下载操作
OutputStream os = response.getOutputStream();
//循环写入输出流
byte[] b = new byte[2048];
int length;
while ((length = inputStream.read(b)) > 0) {
os.write(b, 0, length);
downloadedLength += b.length;
}
// 这里主要关闭。
return ResultUtil.success(null);
}
}
public static void main(String[] args) {
}
}
@Controller
public class FileUploadController {
@Autowired
private AttachmentService attachmentService;
private String rootpath = "d://files/";
@ResponseBody
@RequestMapping("files/upload")
public Result upload(MultipartFile file) throws IOException {
// 原始全名称
String originalFileName = file.getOriginalFilename();
// 后缀名
String suffixName = "";
if (originalFileName.lastIndexOf(".") > -1){
suffixName = originalFileName.substring(originalFileName.lastIndexOf(".") +1);
}
* @return
*/
@RequestMapping("money")
public String money(HttpServletRequest request) {
User user = (User) request.getSession().getAttribute("user");
request.setAttribute("model",user);
return "/admin/money";
}
@RequestMapping("edit")
public String edit(HttpServletRequest request, String id) {
User model = userService.getModel(id);
request.setAttribute("model", model);
return "/admin/user-add";
}
@RequestMapping("save")
@ResponseBody
public Result save(HttpServletRequest request, User model) {
User user = (User) request.getSession().getAttribute("user");
int i = 0;
if (StringUtils.isBlank(model.getId())) {
model.preInsert();
i = userService.insertModel(model);
} else {
i = userService.updateModel(model);
}
if (i == 0) {
return ResultUtil.error("失败");
} else {
return ResultUtil.success(null);
}
}
@RequestMapping("delete")
@ResponseBody
public Result delete(HttpServletRequest request, String id) {
if (StringUtils.isNotBlank(id)) {
String[] split = id.split(",");
return "/admin/investigation-list";
}
//获取列表数据
@RequestMapping("list/data")
@ResponseBody
public Result list(HttpServletRequest request,User model, @RequestParam(defaultValue = "1")Integer page,Integer limit){
PageHelper.startPage(page,limit);
List<Investigation> list = investigationService.getModelList(putEntityInMap(model));
PageInfo<Investigation> pageInfo = new PageInfo<>(list);
return ResultUtil.success(list,pageInfo.getTotal());
}
}
@Controller
@RequestMapping(value = "/admin/orders")
public class AdminOrdersController extends BaseController {
@Autowired
private OrdersService ordersService;
@Autowired
private InsuranceService insuranceService;
@Autowired
private UserService userService;
@RequestMapping("add")
public String add(HttpServletRequest request, Orders model) {
User user = (User) request.getSession().getAttribute("user");
List<Insurance> insuranceList = insuranceService.getModelList(MapUtil.buildMap("userId", user.getId()));
request.setAttribute("model", model);
request.setAttribute("insuranceList", insuranceList);
return "/admin/orders-add";
}
@RequestMapping("edit")
public String edit(HttpServletRequest request, String id) {
Orders model = ordersService.getModel(id);
request.setAttribute("model", model);
return "/admin/orders-add";
}
@RequestMapping("save")
@ResponseBody
public Result save(HttpServletRequest request, Orders model) {
User user = (User) request.getSession().getAttribute("user");
int i = 0;
if (StringUtils.isBlank(model.getId())) {
model.preInsert();
model.setCreateDate(new Date());
i = ordersService.insertModel(model);
} else {
i = ordersService.updateModel(model);
}
if (i == 0) {
if (StringUtils.isNotBlank(id)) {
String[] split = id.split(",");
for (int i = 0; i < split.length; i++) {
insuranceService.deleteModel(split[i]);
}
return ResultUtil.success();
} else {
return ResultUtil.error("未选中删除项!");
}
}
@RequestMapping("list")
public String list(HttpServletRequest request, Insurance model) {
request.setAttribute("model", model);
return "/admin/insurance-list";
}
//获取列表数据
@RequestMapping("list/data")
@ResponseBody
public Result list(HttpServletRequest request, Insurance model, @RequestParam(defaultValue = "1") Integer page, Integer limit) {
User user = (User) request.getSession().getAttribute("user");
if (user.getType() == 0){
model.setUserId(user.getId());
}
PageHelper.startPage(page, limit);
List<Insurance> list = insuranceService.getModelList(putEntityInMap(model));
PageInfo<Insurance> pageInfo = new PageInfo<>(list);
return ResultUtil.success(list, pageInfo.getTotal());
}
}
}
return ResultUtil.success();
}else {
return ResultUtil.error("未选中删除项!");
}
}
@RequestMapping("list")
public String list(HttpServletRequest request,Investigation model){
request.setAttribute("model",model);
return "/admin/investigation-list";
}
//获取列表数据
@RequestMapping("list/data")
@ResponseBody
public Result list(HttpServletRequest request,User model, @RequestParam(defaultValue = "1")Integer page,Integer limit){
PageHelper.startPage(page,limit);
List<Investigation> list = investigationService.getModelList(putEntityInMap(model));
PageInfo<Investigation> pageInfo = new PageInfo<>(list);
return ResultUtil.success(list,pageInfo.getTotal());
}
}
User user = (User) request.getSession().getAttribute("user");
request.setAttribute("model",user);
return "/admin/money";
}
@RequestMapping("edit")
public String edit(HttpServletRequest request, String id) {
User model = userService.getModel(id);
request.setAttribute("model", model);
return "/admin/user-add";
}
@RequestMapping("save")
@ResponseBody
public Result save(HttpServletRequest request, User model) {
User user = (User) request.getSession().getAttribute("user");
int i = 0;
if (StringUtils.isBlank(model.getId())) {
model.preInsert();
i = userService.insertModel(model);
} else {
i = userService.updateModel(model);
}
if (i == 0) {
return ResultUtil.error("失败");
} else {
return ResultUtil.success(null);
}
}
@RequestMapping("delete")
@ResponseBody
public Result delete(HttpServletRequest request, String id) {
if (StringUtils.isNotBlank(id)) {
String[] split = id.split(",");
for (int i = 0; i < split.length; i++) {
userService.deleteModel(split[i]);
}
}
@RequestMapping("login")
@ResponseBody
public Result login(User user, HttpServletRequest request, Integer type) {
User user1 = userService.selectOneModel(putEntityInMap(user));
if (user1 != null) {
request.getSession().setAttribute("user", user1);
return ResultUtil.success(user1);
} else {
return ResultUtil.error("账号或密码错误!");
}
}
@RequestMapping("welcome")
public String welcome(HttpServletRequest request) {
return "/admin/welcome";
}
@RequestMapping("logout")
public String loout(HttpServletRequest request) {
request.getSession().invalidate();
return "/admin/login";
}
@RequestMapping("register")
public String regUser() {
return "/admin/register";
}
@RequestMapping("reg")
@ResponseBody
public Result reguser(HttpServletRequest request, User user, Integer type) {
String username = user.getUsername();
User oneModel = userService.selectOneModel(MapUtil.buildMap("username", username));
if(oneModel != null){
return ResultUtil.error("用户已被占用!");
}
user.preInsert();
int i = userService.insertModel(user);
@Autowired
private OrdersService ordersService;
@Autowired
private InsuranceService insuranceService;
@RequestMapping("add")
public String add(HttpServletRequest request,Responsibility model){
request.setAttribute("model",model);
return "/admin/responsibility-add";
}
@RequestMapping("edit")
public String edit(HttpServletRequest request,String id){
Responsibility model = responsibilityService.getModel(id);
request.setAttribute("model",model);
return "/admin/responsibility-add";
}
@RequestMapping("kancha")
public String kancha(HttpServletRequest request,String id){
Orders model = ordersService.getModel(id);
Insurance insurance = insuranceService.getModel(model.getInsuranceId());
request.setAttribute("model",model);
request.setAttribute("insurance",insurance);
Responsibility responsibility = responsibilityService.selectOneModel(MapUtil.buildMap("ordersId", model.getId()));
if (responsibility != null){
request.setAttribute("responsibility",responsibility);
return "/admin/responsibility-view";
}
return "/admin/responsibility-add";
}
@RequestMapping("save")
@ResponseBody
public Result save(HttpServletRequest request,Responsibility model){
User user = (User) request.getSession().getAttribute("user");
int i = 0;
if (StringUtils.isBlank(model.getId())) {
model.preInsert();
model.setCreateDate(new Date());
i = responsibilityService.insertModel(model);
//更新保单状态
@Controller
@RequestMapping(value="/admin/investigation")
public class AdminInvestigationController extends BaseController {
@Autowired
private InvestigationService investigationService;
@Autowired
private OrdersService ordersService;
@Autowired
private InsuranceService insuranceService;
@RequestMapping("add")
public String add(HttpServletRequest request,Investigation model){
request.setAttribute("model",model);
return "/admin/investigation-add";
}
@RequestMapping("diaocha")
public String diaocha(HttpServletRequest request,String id){
Orders model = ordersService.getModel(id);
Insurance insurance = insuranceService.getModel(model.getInsuranceId());
request.setAttribute("model",model);
request.setAttribute("insurance",insurance);
Investigation investigation = investigationService.selectOneModel(MapUtil.buildMap("orderId", model.getId()));
if (investigation != null){
request.setAttribute("investigation",investigation);
return "/admin/investigation-view";
}
return "/admin/investigation-add";
}
@RequestMapping("edit")
public String edit(HttpServletRequest request,String id){
Investigation model = investigationService.getModel(id);
request.setAttribute("model",model);
return "/admin/investigation-add";
}
@RequestMapping("save")
long downloadedLength = 0L;
//打开本地文件流
InputStream inputStream = new FileInputStream(realPath);
//激活下载操作
OutputStream os = response.getOutputStream();
//循环写入输出流
byte[] b = new byte[2048];
int length;
while ((length = inputStream.read(b)) > 0) {
os.write(b, 0, length);
downloadedLength += b.length;
}
// 这里主要关闭。
os.close();
inputStream.close();
} catch (Exception e) {
throw e;
}
}
}