源码获取:俺的博客首页 "资源" 里下载!
项目介绍
基于SpringBoot Vue的家政服务管理平台
角色:管理员、用户、服务人员
管理员:管理员登录系统后,可以对首页、个人中心、用户管理、服务人员管理、服务信息管理、服务类型管理、服务预约管理、服务取消管理、服务分配管理、服务进度管理、评价信息管理、留言反馈、系统管理等功能进行相应的操作管理
用户:用户登录系统后,可以对首页、个人中心、服务预约管理、服务分配管理、服务取消管理、服务进度管理、评价信息管理、留言反馈、我的收藏管理等功能
服务人员:服务人员登录系统后,可以对首页、个人中心、服务分配管理、服务进度管理、评价信息管理等功能
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7/8.0版本均可;
5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybatis
前端:Vue+Vue Router+ELementUI+Axios
使用说明
项目运行:
1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
文档介绍(课题背景与意义、系统实现功能、课题研究现状、系统相关技术、java技术、B/S架构、Mysql介绍、Mysql环境配置、Springboot框架、系统需求分析、系统功能、可行性研究、经济可行性、技术可行性、运行可行性、事件可行性、系统业务过程分析、系统业务过程分析、系统用例图、系统设计、数据库设计、系统整体设计、系统设计思想、系统流程图、系统详情设计、系统功能模块、系统功能模块、管理员功能模块):
服务信息展示页面:
服务信息详情:
留言反馈展示:
培训信息展示:
家政服务管理平台登录:
后台功能管理:
服务人员管理:
服务预约管理:
用户管理控制层:
@Controller
@RequestMapping("/user")
public class UserController extends BaseController{
@Autowired
private UserService userService;
/**
* 跳转注册页面
* @return 注册页面
*/
@GetMapping("/toRegister")
public String toRegister() {
return "register";
}
/**
* 显示登录页面
* @return 登录页面
*/
@GetMapping("/toLogin")
public String toLogin() {
return "login";
}
/**
* 用户注册功能
* @param username 用户名
* @param password 密码
* @param role 角色
* @param session session对象
* @return
*/
@PostMapping("/register")
@ResponseBody
public ResponseResult<Void> userRegister(
@RequestParam("username") String username,
@RequestParam("password") String password,
@RequestParam("role") int role,
HttpSession session
) {
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.setRole(role);
user.setStatus(1);
userService.insert(user);
session.setAttribute("username", username);
return new ResponseResult<Void>();
}
/**
* 用户登录
* @return
*/
@PostMapping("/login")
@ResponseBody
public ResponseResult<Integer> userLogin(
@RequestParam("username") String username,
@RequestParam("password") String password,
@RequestParam("vertifyCode") String vertifyCode,
HttpSession session
) {
System.out.println("前台输入验证码:" + vertifyCode);
ResponseResult<Integer> response = new ResponseResult<>();
// 从session中获取之前保存的验证码跟前台传来的验证码进行匹配
Object kaptcha = session.getAttribute(RANDOMCODEKEY);
if(!vertifyCode.equals(kaptcha)){
response.setState(502);
}
Boolean result = userService.login(username, password);
if (result) {
System.out.println("用户存在,登录成功");
response.setData(userService.getLoginRole(username));
}
session.setAttribute("username", username);
return response;
}
/**
* 退出登录
* @param session
* @return
*/
@GetMapping("/logout")
public String userLogout (HttpSession session) {
session.removeAttribute("username");
session.invalidate();
return "login";
}
/**
* 登录成功
* @param session
* @return
* @throws UserNoLoginException
*/
@PostMapping("/loginSuccess")
@ResponseBody
public ResponseResult<Void> loginSuccess (
HttpSession session
) throws UserNoLoginException {
String username = (String) session.getAttribute("username");
ResponseResult<Void> result = new ResponseResult<>();
if (StringUtils.isEmpty(username)) {
throw new UserNoLoginException("用户未登录");
} else {
if (session.getAttribute("username").toString() != null) {
result.setState(200);
}
}
return result;
}
}
订单管理控制层:
@Controller
@RequestMapping("/order")
public class OrderController extends BaseController {
@Autowired
private OrderService orderService;
@Autowired
private CommentService commentService;
/**
* 跳转至我的订单页面
* @return 我的订单页面
*/
@GetMapping("/toOrder")
public String toOrder() {
return "order";
}
/**
* 跳转至商家订单页面
* @return 商家订单页面
*/
@GetMapping("/toHkOrder")
public String toHkOrder() {
return "hk_order";
}
@PostMapping("/getAllOrder")
@ResponseBody
public ResponseResult<PageInfo<Order>> getAllOrder (
HttpSession session,
@RequestParam(required = false,defaultValue = "1",value = "pageNum")Integer currentPage
) {
ResponseResult<PageInfo<Order>> result = new ResponseResult<>();
if (session == null) {
throw new UserNoLoginException("用户未登录");
} else {
PageInfo<Order> list = orderService.getAllOrder(session, currentPage);
result.setData(list);
}
return result;
}
@PostMapping("/getOrderByID")
@ResponseBody
public ResponseResult<Order> getOrderByID (
@RequestParam("orderID") int id
) {
ResponseResult<Order> result = new ResponseResult<>();
Order order = orderService.getOrderByID(id);
result.setData(order);
return result;
}
@PostMapping("/deleteOrderByID")
@ResponseBody
public ResponseResult<Void> deleteOrderByID (
@RequestParam("orderID") int id
) {
orderService.deleteOrderByID(id);
return new ResponseResult<>();
}
@PostMapping("/getOrderListByHKID")
@ResponseBody
public ResponseResult<List<Order>> getOrderListByHKID (
HttpSession session
) {
ResponseResult<List<Order>> result = new ResponseResult<>();
List<Order> list = orderService.getOrderListByHKID(session);
result.setData(list);
return result;
}
@PostMapping("/acceptOrder")
@ResponseBody
public ResponseResult<Void> acceptOrder (
@RequestParam("id") int id
) {
orderService.updateOrderStatusByID(id, 1);
return new ResponseResult<>();
}
@PostMapping("/finishOrder")
@ResponseBody
public ResponseResult<Void> finishOrder (
@RequestParam("id") int id
) {
orderService.updateOrderStatusByID(id, 0);
return new ResponseResult<>();
}
@PostMapping("/cancelOrder")
@ResponseBody
public ResponseResult<Void> cancelOrder (
@RequestParam("id") int id
) {
orderService.cancelOrder(id);
return new ResponseResult<>();
}
@PostMapping("/assessOrder")
@ResponseBody
public ResponseResult<Void> assessOrder (
@RequestParam("orderID") int orderID,
@RequestParam("commentStar") int commentStar,
@RequestParam("commentContent") String commentContent
) {
Comment comment = new Comment();
comment.setOrderID(orderID);
comment.setCommentStar(commentStar);
comment.setCommentContent(commentContent);
Date now = new Date();
comment.setCommentTime(now);
commentService.insertComment(comment);
return new ResponseResult<>();
}
}
后台管理员控制层:
@Controller
@RequestMapping("/admin")
public class AdminController extends BaseController{
@Autowired
private AdminService adminService;
/**
* 跳转管理员页面
* @return
*/
@GetMapping("/toAdminIndex")
public String toAdminIndex() {
return "admin-index";
}
@PostMapping("/getCurrentUsername")
@ResponseBody
public ResponseResult<String> getCurrentUsername (
HttpSession session
) {
ResponseResult<String> result = new ResponseResult<>();
String username = (String)session.getAttribute("username");
if (StringUtils.isEmpty(username)) {
throw new UserNoLoginException();
} else {
result.setData(username);
}
return result;
}
@PostMapping("/selectAllLogin")
@ResponseBody
public ResponseResult<List<User>> selectAllLogin () {
ResponseResult<List<User>> response = new ResponseResult<>();
List<User> list = adminService.selectAllLogin();
response.setData(list);
return response;
}
@PostMapping("/selectAllCustomer")
@ResponseBody
public ResponseResult<List<Customer>> selectAllCustomer () {
ResponseResult<List<Customer>> response = new ResponseResult<>();
List<Customer> list = adminService.selectAllCustomer();
response.setData(list);
return response;
}
@PostMapping("/insertCustomer")
@ResponseBody
public ResponseResult<Void> insertCustomer (
@RequestParam("nickname") String nickname,
@RequestParam("name") String name,
@RequestParam("gender") String gender,
@RequestParam("phone") String phone,
@RequestParam("email") String email,
@RequestParam("password") String password,
@RequestParam("address") String address
) {
ResponseResult<Void> response = new ResponseResult<>();
Customer customer = new Customer();
customer.setCmNickname(nickname);
customer.setCmName(name);
customer.setCmSex(gender);
customer.setCmPhone(phone);
customer.setCmEmail(email);
customer.setCmPassword(password);
customer.setCmAddress(address);
adminService.insertCustomer(customer);
return response;
}
@PostMapping("/insertAdmin")
@ResponseBody
public ResponseResult<Void> insertAdmin (
@RequestParam("name") String name,
@RequestParam("gender") String gender,
@RequestParam("phone") String phone,
@RequestParam("password") String password
) {
ResponseResult<Void> response = new ResponseResult<>();
Admin admin = new Admin();
admin.setAdName(name);
admin.setAdPassword(password);
admin.setAdPhone(phone);
admin.setAdSex(gender);
adminService.insertAdmin(admin);
return response;
}
@PostMapping("/updateLoginStatus")
@ResponseBody
public ResponseResult<Void> updateLoginStatus (
@RequestParam("") String username
) {
ResponseResult<Void> response = new ResponseResult<>();
adminService.updateLoginStatus(username);
return response;
}
@PostMapping("/getOrderData")
@ResponseBody
public ResponseResult<List<EchartsData>> getOrderData(){
ResponseResult<List<EchartsData>> response = new ResponseResult<>();
List<EchartsData> echartsData = adminService.getOrderData();
response.setData(echartsData);
return response;
}
@PostMapping("/getAppoimentData")
@ResponseBody
public ResponseResult<List<EchartsData>> getAppoimentData(){
ResponseResult<List<EchartsData>> response = new ResponseResult<>();
List<EchartsData> echartsData = adminService.getAppoimentData();
response.setData(echartsData);
return response;
}
@PostMapping("/updateUserInfo")
@ResponseBody
public ResponseResult<Void> updateUserInfo (
@RequestParam("id") String id,
@RequestParam("password") String password,
@RequestParam("role") String role,
@RequestParam("status") String status
) {
adminService.updateUserInfo(Integer.parseInt(id), password, Integer.parseInt(role), Integer.parseInt(status));
return new ResponseResult<>();
}
@PostMapping("/getAllCustomerCertify")
@ResponseBody
public ResponseResult<List<Customer>> getAllCustomerCertify () {
ResponseResult<List<Customer>> result = new ResponseResult<>();
List<Customer> list = adminService.getAllCustomerCertify();
result.setData(list);
return result;
}
@PostMapping("/getAllHousekeeperCertify")
@ResponseBody
public ResponseResult<List<HouseKeeper>> getAllHousekeeperCertify () {
ResponseResult<List<HouseKeeper>> result = new ResponseResult<>();
List<HouseKeeper> list = adminService.getAllHousekeeperCertify();
result.setData(list);
return result;
}
@PostMapping("/getAllCompanyCertify")
@ResponseBody
public ResponseResult<List<Company>> getAllCompanyCertify () {
ResponseResult<List<Company>> result = new ResponseResult<>();
List<Company> list = adminService.getAllCompanyCertify();
result.setData(list);
return result;
}
@PostMapping("/getCustomerByID")
@ResponseBody
public ResponseResult<Customer> getCustomerByID (
@RequestParam("id") String id
) {
ResponseResult<Customer> result = new ResponseResult<>();
Customer customer = adminService.getCustomerByID(Integer.parseInt(id));
result.setData(customer);
return result;
}
@PostMapping("/getHousekeeperByID")
@ResponseBody
public ResponseResult<HouseKeeper> getHousekeeperByID (
@RequestParam("id") String id
) {
ResponseResult<HouseKeeper> result = new ResponseResult<>();
HouseKeeper houseKeeper = adminService.getHousekeeperByID(Integer.parseInt(id));
result.setData(houseKeeper);
return result;
}
@PostMapping("/getCompanyByID")
@ResponseBody
public ResponseResult<Company> getCompanyByID (
@RequestParam("id") String id
) {
ResponseResult<Company> result = new ResponseResult<>();
Company company = adminService.getCompanyByID(Integer.parseInt(id));
result.setData(company);
return result;
}
@PostMapping("/cancelCustomerByID")
@ResponseBody
public ResponseResult<Void> cancelCustomerByID (
@RequestParam("id") String id
) {
adminService.updateCustomerStatusByID(Integer.parseInt(id), 2);
return new ResponseResult<>();
}
@PostMapping("/certifyCustomerByID")
@ResponseBody
public ResponseResult<Void> certifyCustomerByID (
@RequestParam("id") String id
) {
adminService.updateCustomerStatusByID(Integer.parseInt(id), 1);
return new ResponseResult<>();
}
@PostMapping("/cancelHousekeeperByID")
@ResponseBody
public ResponseResult<Void> cancelHousekeeperByID (
@RequestParam("id") String id
) {
adminService.updateHousekeeperStatusByID(Integer.parseInt(id), 2);
return new ResponseResult<>();
}
@PostMapping("/certifyHousekeeperByID")
@ResponseBody
public ResponseResult<Void> certifyHousekeeperByID (
@RequestParam("id") String id
) {
adminService.updateHousekeeperStatusByID(Integer.parseInt(id), 1);
return new ResponseResult<>();
}
@PostMapping("/cancelCompanyByID")
@ResponseBody
public ResponseResult<Void> cancelCompanyByID (
@RequestParam("id") String id
) {
adminService.updateCompanyStatusByID(Integer.parseInt(id), 2);
return new ResponseResult<>();
}
@PostMapping("/certifyCompanyByID")
@ResponseBody
public ResponseResult<Void> certifyCompanyByID (
@RequestParam("id") String id
) {
adminService.updateCompanyStatusByID(Integer.parseInt(id), 1);
return new ResponseResult<>();
}
@PostMapping("/getUserByPhone")
@ResponseBody
public ResponseResult<List<User>> getUserByPhone (
@RequestParam("phone") String phone
) {
ResponseResult<List<User>> result = new ResponseResult<>();
List<User> list = adminService.getUserByPhone(phone);
result.setData(list);
return result;
}
@PostMapping("/updatePassword")
@ResponseBody
public ResponseResult<Void> updatePassword (
HttpSession session,
@RequestParam("oldPassword") String oldPassword,
@RequestParam("newPassword") String newPassword
) {
adminService.updatePassword(session, oldPassword, newPassword);
return new ResponseResult<Void>();
}
}
源码获取:俺的博客首页 "资源" 里下载!