Java项目:springboot家政服务系统(计算机毕业设计)

作者主页:Java毕设网

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

一、项目介绍

本项目为后管系统,包含管理员、家政人员、消费人员三种角色,主要功能包括:
1. 用户的注册、登录、退出系统
2. 用户的搜索功能
3. 家政人员上传资料、身份认证和资格认证 
4. 消费者发布预约、查看预约、确认预约、评价订单、删除订单、修改个人资料 
5. 家政人员修改个人资料、申请预约、接受订单、取消订单、完成订单 

6. 管理员对用户管理、认证管理和系统的量化查看

二、环境需要

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.数据库:MySql 8.0版本;

6.是否maven项目:是;

三、技术栈

前端
1. UI界面:Bootstrap
2. 弹窗:Sweetalert
3. Js事件:jQuery/ajax
4. 可视化报表:ECharts
5. 下拉框:Bootstrap-Select

后端
1. 服务层:SpringBoot
2. 持久层:Mybatis
3. 分页:Pagehelper
4. 连接池:c3p0

5. 实体类:Lombok

四、使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入http://localhost:8081/ 登录

五、运行截图

前台界面

后台界面


六、相关代码

预约管理控制器

@Controller()
@RequestMapping("/app")
public class AppointmentController extends BaseController{

    @Autowired
    private AppointmentService appService;

    /**
     * 跳转我的预约页面
     * @return 我的预约页面
     */
    @GetMapping("/toCmApp")
    public String toCmApp() {
        return "cm_app";
    }

    /**
     * 跳转预约列表页面
     * @return 预约列表页面
     */
    @GetMapping("/toHkApp")
    public String toHkApp() {
        return "hk_app";
    }

    @PostMapping("/mkApp")
    @ResponseBody
    public ResponseResult<Void> makeAppoint(
            HttpSession session,
            @RequestParam("app_type") String appType,
            @RequestParam("app_address_city") String appAddressCity,
            @RequestParam("app_address_area") String appAddressArea,
            @RequestParam("app_address_detail") String appAddressDetail,
            @RequestParam("app_phone") String appPhone,
            @RequestParam("app_time") String appTime
    ) {
        ResponseResult<Void> response = new ResponseResult<Void>();
        String username = new String();
        String key = "username";
        if (session.getAttribute(key) == null) {
            response.setState(406);
            response.setMessage("用户未登录");
        } else {
            username = session.getAttribute(key).toString();
        }
        String appAddress = appAddressCity + "-" + appAddressArea + "-" + appAddressDetail;
        Appointment appointment = new Appointment();
        appointment.setAppAddress(appAddress);
        appointment.setAppType(appType);
        appointment.setAppPhone(appPhone);
        appointment.setAppBeginTime(FormatDate.StrToDate(appTime));

        System.out.println("预约地点:" + appAddress + "预约类型:" + appType + "预约电话:" + appPhone);

        appService.insertAppointment(appointment, username);

        return new ResponseResult<Void>();
    }

    @PostMapping("/getVaildApp")
    @ResponseBody
    public ResponseResult<PageInfo<Appointment>> getVaildApp (
            HttpSession session,
            @RequestParam(required = false,defaultValue = "1",value = "pageNum")Integer currentPage
    ) {
        ResponseResult<PageInfo<Appointment>> result = new ResponseResult<>();
        if (session == null) {
            throw new UserNoLoginException("用户未登录");
        } else {
            PageInfo<Appointment> list = appService.getStatusApp(session, 1,currentPage);
            result.setData(list);
        }

        return result;
    }

    @PostMapping("/getAllApp")
    @ResponseBody
    public ResponseResult<PageInfo<Appointment>> getAllApp (
            HttpSession session,
            @RequestParam(required = false,defaultValue = "1",value = "pageNum")Integer currentPage
    ) {
        ResponseResult<PageInfo<Appointment>> result = new ResponseResult<>();
        if (session == null) {
            throw new UserNoLoginException("用户未登录");
        } else {
            PageInfo<Appointment> list = appService.getAllApp(session,currentPage);
            result.setData(list);
        }
        return result;
    }

    @PostMapping("/getAppCustomer")
    @ResponseBody
    public ResponseResult<PageInfo<Appointment>> getAppCustomer (
            HttpSession session,
            @RequestParam(required = false,defaultValue = "1",value = "pageNum")Integer currentPage
    ) {
        ResponseResult<PageInfo<Appointment>> result = new ResponseResult<>();
        if (session == null) {
            throw new UserNoLoginException("用户未登录");
        } else {
            PageInfo<Appointment> list = appService.getAllAppCustomer(session,currentPage);
            result.setData(list);
        }

        return result;
    }

    @PostMapping("/apply")
    @ResponseBody
    public ResponseResult<Void> apply (
            HttpSession session,
            Integer id
    ) {
        appService.insertApplyList(session, id);
        return new ResponseResult<Void>();
    }

    @PostMapping("/getSingleApp")
    @ResponseBody
    public ResponseResult<Appointment> getSingleApp (
            @RequestParam("id") Integer id
    ) {
        ResponseResult<Appointment> result = new ResponseResult<>();
        Appointment app = appService.selectAppointByID(id);
        result.setData(app);
        return result;
    }

    @PostMapping("/updateAppStatus")
    @ResponseBody
    public ResponseResult<Void> updateAppStatus (
            @RequestParam("id") Integer id
    ) {
        appService.updateAppointStatus(0, id);
        return new ResponseResult<Void>();
    }

    @PostMapping("/deleteApp")
    @ResponseBody
    public ResponseResult<Void> deleteAppointByID (
            @RequestParam("id") Integer id
    ) {
        appService.deleteAppointByID(id);
        return new ResponseResult<Void>();
    }

    @PostMapping("/confirmHK")
    @ResponseBody
    public ResponseResult<Void> confirmHK (
            HttpSession session,
            @RequestParam("id") Integer id,
            @RequestParam("hkID") Integer hkID
    ) {
        String username = session.getAttribute("username").toString();
        appService.insertConfirmHKID(username, id, hkID);
        return new ResponseResult<>();
    }
}

订单管理控制器

@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<>();
    }

}

七、如果也想学习本系统,下面领取。关注并回复:074sb

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值