基于springboot實(shí)現(xiàn)車險(xiǎn)理賠信息管理系統(tǒng)
作者主頁:
作者簡(jiǎn)介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者、CSDN博客專家 、掘金特邀作者、多年架構(gòu)師設(shè)計(jì)經(jīng)驗(yàn)、騰訊課堂常駐講師
主要內(nèi)容:Java項(xiàng)目、畢業(yè)設(shè)計(jì)、簡(jiǎn)歷模板、學(xué)習(xí)資料、面試題庫、技術(shù)互助
文末獲取源碼?
一,項(xiàng)目簡(jiǎn)介
? ? ? 本系統(tǒng)基于Springboot開發(fā)實(shí)現(xiàn)了一個(gè)為用戶車險(xiǎn)進(jìn)行理賠信息管理的一個(gè)信息化管理系統(tǒng),核心的業(yè)務(wù)主要是用戶申請(qǐng)保險(xiǎn)理賠,管理員審核進(jìn)入理賠程序,事故調(diào)查員對(duì)事故進(jìn)行調(diào)查和現(xiàn)場(chǎng)勘察,這其中共涉及到三類用戶,購買保險(xiǎn)的客戶,事故調(diào)查員和系統(tǒng)管理員。
客戶的主要功能:個(gè)人資料管理,購買的保險(xiǎn)信息管理,理賠的申請(qǐng)
事故調(diào)查員功能:個(gè)人資料管理,事故調(diào)查管理,現(xiàn)場(chǎng)勘察管理
管理員功能:個(gè)人資料管理,用戶管理,理賠審請(qǐng)審核,賠償金發(fā)放管理
二,環(huán)境介紹
語言環(huán)境:Java:? jdk1.8
數(shù)據(jù)庫:Mysql: mysql5.7
應(yīng)用服務(wù)器:Tomcat:? tomcat8.5.31
開發(fā)工具:IDEA或eclipse
開發(fā)技術(shù):后臺(tái)springboot+springmvvc+mybatis
????????? 前臺(tái):layui+jquery+jsp
三,系統(tǒng)展示
用戶登陸:

用戶注冊(cè)

個(gè)人資料管理

車險(xiǎn)管理

理賠記錄管理

管理員管理功能:
? 用戶管理

理賠審核

賠償金發(fā)放

事故調(diào)查員功能
?? 事故調(diào)查


現(xiàn)場(chǎng)勘察管理


四,核心代碼展示
package com.controller;import org.apache.commons.lang3.StringUtils;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.InitializingBean;import com.entity.Insurance;import com.service.InsuranceService;import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;import java.util.List;import com.entity.Result;import com.utils.ResultUtil;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.HashMap;import java.util.Map;import com.entity.User;import java.util.Date;import com.github.pagehelper.PageHelper;import org.springframework.web.bind.annotation.RequestParam;import com.github.pagehelper.PageInfo;/**
* ZNZ
*/public class AdminInsuranceController extends BaseController { ? ?
? ?private InsuranceService insuranceService; ? ?
? ?public String add(HttpServletRequest request, Insurance model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/insurance-add";
? ?} ? ?
? ?public String edit(HttpServletRequest request, String id) { ? ? ? ?Insurance model = insuranceService.getModel(id);
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/insurance-add";
? ?} ? ?
? ?
? ?public Result save(HttpServletRequest request, Insurance model) { ? ? ? ?User user = (User) request.getSession().getAttribute("user"); ? ? ? ?int i = 0; ? ? ? ?if (StringUtils.isBlank(model.getId())) {
? ? ? ? ? ?model.preInsert();
? ? ? ? ? ?model.setCreateDate(new Date());
? ? ? ? ? ?model.setUserId(user.getId());
? ? ? ? ? ?i = insuranceService.insertModel(model);
? ? ? ?} else {
? ? ? ? ? ?i = insuranceService.updateModel(model);
? ? ? ?} ? ? ? ?if (i == 0) { ? ? ? ? ? ?return ResultUtil.error("失敗");
? ? ? ?} else { ? ? ? ? ? ?return ResultUtil.success(null);
? ? ? ?}
? ?} ? ?//刪除批量刪除
? ?
? ?
? ?public Result delete(HttpServletRequest request, String id) { ? ? ? ?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("未選中刪除項(xiàng)!");
? ? ? ?}
? ?} ? ?
? ?public String list(HttpServletRequest request, Insurance model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/insurance-list";
? ?} ? ?//獲取列表數(shù)據(jù)
? ?
? ?
? ?public Result list(HttpServletRequest request, Insurance model, { ? ? ? ? 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());
? ?}
}
package com.controller;import com.entity.*;import com.service.InsuranceService;import com.service.OrdersService;import com.utils.MapUtil;import org.apache.commons.lang3.StringUtils;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.InitializingBean;import com.service.InvestigationService;import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;import java.util.List;import com.utils.ResultUtil;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.HashMap;import java.util.Map;import java.util.Date;import com.github.pagehelper.PageHelper;import org.springframework.web.bind.annotation.RequestParam;import com.github.pagehelper.PageInfo;public class AdminInvestigationController extends BaseController { ? ?
? ?private InvestigationService investigationService; ? ?
? ?private OrdersService ordersService; ? ?
? ?private InsuranceService insuranceService;
?
?
? ?
? ?public String add(HttpServletRequest request,Investigation model){
? ? ? ?request.setAttribute("model",model); ? ? ? ?return "/admin/investigation-add";
? ?} ? ?
? ?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";
? ?} ?
? ?
? ?public String edit(HttpServletRequest request,String id){ ? ? ? Investigation model = investigationService.getModel(id);
? ? ? request.setAttribute("model",model); ? ? ? ?return "/admin/investigation-add";
? ?} ?
? ?
? ?
? ?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); ? ? ? ? ? ?//更新保單狀態(tài)
? ? ? ? ? ?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);
? ? ? ?}
? ? ?
? ?} ?
?
?//刪除批量刪除
? ?
? ?
? ?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("未選中刪除項(xiàng)!");
? ? ? ?}
? ? ? ?
? ?} ?
?
?
? ?public String list(HttpServletRequest request,Investigation model){
? ? ?
? ? ? ?request.setAttribute("model",model); ? ? ? ?return "/admin/investigation-list";
? ?} ?
? ?//獲取列表數(shù)據(jù)
? ?
? ?
? ?public Result list(HttpServletRequest request,User model, {
? ? ? ?PageHelper.startPage(page,limit);
? ? ? ?List<Investigation> list = investigationService.getModelList(putEntityInMap(model));
? ? ? ?PageInfo<Investigation> pageInfo = Integer page,Integer limit)new PageInfo<>(list); ? ? ? ?return ?ResultUtil.success(list,pageInfo.getTotal());
? ?}
?
}
package com.controller;import com.entity.Insurance;import com.service.InsuranceService;import com.service.UserService;import com.utils.MapUtil;import org.apache.commons.lang3.StringUtils;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.InitializingBean;import com.entity.Orders;import com.service.OrdersService;import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;import java.math.BigDecimal;import java.util.List;import com.entity.Result;import com.utils.ResultUtil;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.HashMap;import java.util.Map;import com.entity.User;import java.util.Date;import com.github.pagehelper.PageHelper;import org.springframework.web.bind.annotation.RequestParam;import com.github.pagehelper.PageInfo;public class AdminOrdersController extends BaseController { ? ?
? ?private OrdersService ordersService; ? ?
? ?private InsuranceService insuranceService; ? ?
? ?private UserService userService; ? ?
? ?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";
? ?} ? ?
? ?public String edit(HttpServletRequest request, String id) { ? ? ? ?Orders model = ordersService.getModel(id);
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-add";
? ?} ? ?
? ?
? ?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) { ? ? ? ? ? ?return ResultUtil.error("失敗");
? ? ? ?} else { ? ? ? ? ? ?return ResultUtil.success(null);
? ? ? ?}
? ?} ? ?
? ?
? ?public Result approved(String id,Integer state){ ? ? ? ?Orders model = ordersService.getModel(id);
? ? ? ?model.setState(state); ? ? ? ?if (state == 5){
? ? ? ? ? ?getMoney(id);
? ? ? ?} ? ? ? ?int i = ordersService.updateModel(model); ? ? ? ?if (i == 0) { ? ? ? ? ? ?return ResultUtil.error("失敗");
? ? ? ?} else { ? ? ? ? ? ?return ResultUtil.success(null);
? ? ? ?}
? ?} ? ?/**
? ? * 發(fā)放賠償金
? ? */
? ?public void getMoney(String orderId){ ? ? ? ?Orders orders = ordersService.getModel(orderId);//獲取保單
? ? ? ?User user = userService.getModel(orders.getUserId());//獲取用戶
? ? ? ?BigDecimal price = orders.getPrice();//保單申請(qǐng)金額
? ? ? ?user.setMoney(user.getMoney().add(price));//用戶賬戶余額增加保費(fèi)
? ? ? ?userService.updateModel(user);
? ?} ? ?//刪除批量刪除
? ?
? ?
? ?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("未選中刪除項(xiàng)!");
? ? ? ?}
? ?} ? ?
? ?public String list(HttpServletRequest request, Orders model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-list";
? ?} ? ?/**
? ? * 用戶提交的申請(qǐng)理賠
? ? * @param request
? ? * @param model
? ? * @return
? ? */
? ?
? ?public String approve(HttpServletRequest request, Orders model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-approve";
? ?} ? ?/**
? ? * 已經(jīng)有調(diào)查勘察記錄的申請(qǐng)單,確認(rèn)是否發(fā)放賠償金
? ? * @param request
? ? * @param model
? ? * @return
? ? */
? ?
? ?public String moneyGive(HttpServletRequest request, Orders model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-money";
? ?} ? ?/**
? ? * 用戶提交的需要調(diào)查的
? ? * @param request
? ? * @param model
? ? * @return
? ? */
? ?
? ?public String investigation(HttpServletRequest request, Orders model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-investigation";
? ?} ? ?/**
? ? * 用戶提交的需要調(diào)查的
? ? * @param request
? ? * @param model
? ? * @return
? ? */
? ?
? ?public String responsibility(HttpServletRequest request, Orders model) {
? ? ? ?request.setAttribute("model", model); ? ? ? ?return "/admin/orders-responsibility";
? ?} ? ?//獲取列表數(shù)據(jù)
? ?
? ?
? ?public Result list(HttpServletRequest request, Orders model, {
? ? ? ?PageHelper.startPage(page, limit);
? ? ? ?List<Orders> list = ordersService.getModelList(putEntityInMap(model));
? ? ? ?PageInfo<Orders> pageInfo = Integer page, Integer limit)new PageInfo<>(list); ? ? ? ?return ResultUtil.success(list, pageInfo.getTotal());
? ?}
}
五,項(xiàng)目總結(jié)
? ? 本項(xiàng)目基本上實(shí)現(xiàn)了車險(xiǎn)理陪的主要核心業(yè)務(wù),角色功能相對(duì)完整,適合做畢業(yè)設(shè)計(jì)或課程設(shè)計(jì)使用。