当前位置: 首页 > article >正文

基于SpringBoot+Vue的家政平台

基于SpringBoot+Vue的家政平台

✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌

🍅文末获取项目下载方式🍅


一、项目背景介绍:

根据⼏年前中国家政协会数据显⽰,中国家庭⽣活服务市场空间巨⼤,在开放⼆胎和⽼龄化加重的社会背景下,⽽80、90后⼈群逐渐成为消费主⼒⼈群,家政服务业在未来的5-10年内必然有更加快速的市场增长。综合⽹络资料粗略统计,传统市场份额约占整个市场的半数,但其每年却下降迅速。究其原因,是因为现代化的家政发展迅速,家政⾏业新模式将是未来的趋势。⾏业前景:随着经济的发展,和相关政策的推动,家政⾏业将会在未来⼏年发展迅速,新模式的家政⾏业讯头正猛

二、项目技术简介:

  1. JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
  2. Vue:Vue (发音为 /vjuː/,类似 view) 是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助开发者高效地开发用户界面。
    Vue是一个独立的社区驱动的项目,它是由尤雨溪在2014年作为其个人项目创建, 是一个成熟的、经历了无数实战考验的框架,它是目前生产环境中使用最广泛的JavaScript框架之一,可以轻松处理大多数web应用的场景,并且几乎不需要手动优化,并且Vue完全有能力处理大规模的应用。
  3. Element-UI:Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。
  4. SpringBoot:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

三、系统功能模块介绍:

功能模块图

四、数据库设计:

1:‘轮播图表’(banner)

字段名类型默认值列注释
idbigintNULL轮播图编号
banner_urlvarcharNULL轮播图地址
create_timedatetimeNULL创建时间
statusintNULL状态[0:启用,1:禁用]

2:‘收藏表’(collect)

字段名类型默认值列注释
idbigintNULL收藏编号
project_idbigintNULL项目编号
user_idbigintNULL用户编号
create_timedatetimeNULL创建时间

3:‘管理员表’(manage)

字段名类型默认值列注释
idbigintNULL管理员编号
user_namevarcharNULL用户名
pass_wordvarcharNULL密码
photo_imgvarcharNULL图片
namevarcharNULL名称

4:‘公告信息表’(notice)

字段名类型默认值列注释
idbigintNULL公告编号
banner_imgvarcharNULL公告图片
contenttextNULL公告内容
infovarcharNULL公告简介
create_timedatetimeNULL创建时间
titlevarcharNULL公告标题

5:‘订单管理’(orders)

字段名类型默认值列注释
idbigintNULL订单编号
user_idbigintNULL用户编号
project_idbigintNULL项目编号
create_timedatetimeNULL创建时间
moneyvarcharNULL金额
server_idvarcharNULL服务人员ID
statusintNULL订单状态[0:已支付,1:待服务,2:服务完成,3:已取消]
remarktextNULL备注

6:‘家政项目管理’(projects)

字段名类型默认值列注释
idbigintNULL项目编号
titlevarcharNULL项目标题
infovarcharNULL简介
telvarcharNULL联系方式
namevarcharNULL联系人名称
contenttextNULL服务内容
banner_imgvarcharNULL介绍图片
create_timedatetimeNULL创建时间
type_idbigintNULL所属分类
moneyvarcharNULL价格

7:‘家政人员信息表’(server_user)

字段名类型默认值列注释
idbigintNULL服务人员编号
server_namevarcharNULL服务人员姓名
server_telvarcharNULL联系方式
server_ageintNULL年龄
sexintNULL性别[0:男,1:女]
infovarcharNULL简介
id_cardvarcharNULL身份证号
create_timedatetimeNULL创建时间
header_imgvarcharNULL照片

8:‘预约表’(subscribes)

字段名类型默认值列注释
idbigintNULL预约编号
project_idbigintNULL项目编号
create_timedatetimeNULL创建时间
subscribe_timedatetimeNULL预约时间
user_idbigintNULL用户编号
remarktextNULL备注
statusintNULL状态[0:审核中,1:审核通过,2:拒绝]
causetextNULL拒绝原因

9:‘项目分类管理’(types)

字段名类型默认值列注释
idbigintNULL分类编号
type_namevarcharNULL分类名称
create_timedatetimeNULL创建时间

10:‘用户信息表’(users)

字段名类型默认值列注释
idbigintNULL用户编号
usernamevarcharNULL用户名
passwordvarcharNULL密码
nick_namevarcharNULL用户姓名
telvarcharNULL联系方式
ageintNULL年龄
sexintNULL性别[0:男,1:女]
id_cardvarcharNULL身份证号
create_timedatetimeNULL创建时间
header_imgvarcharNULL照片

五、功能模块:

  1. 首页:用户端首页会展示资讯信息轮播图以及不同的家政分类和不同的分类项目

    首页

  2. 资讯:对后台添加的一些家政类的资讯信息进行一个展示

    资讯

  3. 个人中心:用户登录注册之后可以查看自己的家政预约情况 家政收藏情况

    个人中心

  4. 后台管理:后台管理主要是对用户端以及系统数据的一个综合性管理操作

    后台管理

六、代码示例:

首页
init() {
      let bannerParam = {status: 0}
      getBannerList(bannerParam).then(res => {
        this.bannerList = res.data
      })
      let userRecommendParam = {}
      findUserRecommend(userRecommendParam).then(res => {
        this.projectList = res.data
      })
    },
资讯
  btnCLick (item) {
      this.listQueryParam.title = item
      this.listQueryParam.current = 1
      this.getNoticePage()
    },
    init () {
      this.getNoticePage()
    },
    getNoticePage () {
      getNoticeList(this.listQueryParam).then((res) => {
        this.total = res.data.total
        this.noticeList = res.data.records
      })
    }
个人中心
 menuClick(item, index) {
      console.log(index)
      this.currentMenuIndex = index
      this.currentMenuName = item.name
    },
    delMessage(row) {
      delMessageById(row.id).then(res => {
        this.getMessage({userId: this.userInfo.id})
        Message.success('删除成功')
      })
    },
    delSub(row) {
      delSubscribesById(row.id).then(res => {
        this.getSub({userId: this.userInfo.id})
        Message.success('删除成功')
      })
    },
    getMessage(param) {
      findListByUrl('collect', param).then(res => {
        console.log(res.data)
        this.messageData = res.data
      })
    },
    getOrder(param) {
      findListByUrl('orders', param).then(res => {
        console.log(res.data)
        this.orderData = res.data
      })
    },
    getSub(param) {
      findListByUrl('subscribes', param).then(res => {
        console.log(res.data)
        this.subscribesData = res.data
      })
    },
后台管理
@PostMapping
    public ReturnMsg manageLogin(@RequestBody Map<String, String> param) {
        if (StrUtil.isEmpty(param.get("username")) || StrUtil.isEmpty(param.get("password"))) {
            return ReturnMsg.error("用户名或密码错误!");
        }
        ManageDTO manageDTO = new ManageDTO();
        manageDTO.setUserName(param.get("username"));
        manageDTO.setPassWord(param.get("password"));
        QueryWrapper<ManageDTO> manageDTOQueryWrapper = new QueryWrapper<>(manageDTO);
        manageDTOQueryWrapper.last("limit 1");
        ManageDTO adminDTOS = manageService.getOne(manageDTOQueryWrapper);
        if (adminDTOS == null) return ReturnMsg.error("用户名或密码错误!");
        Map<String, Object> map = new HashMap<>();
        map.put("avatar", StrUtil.isNotBlank(adminDTOS.getPhotoImg()) ? adminDTOS.getPhotoImg() : "https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif");
        map.put("introduction", adminDTOS.getName() + ",你好!");
        map.put("name", adminDTOS.getName());
        map.put("roles", Arrays.asList("admin"));
        Map<String, String> returnMap = new HashMap<>();
        String uuid = UUID.randomUUID().toString();
        returnMap.put("token", uuid);
        userInfoMap.put(uuid, JSON.toJSONString(map));
        return ReturnMsg.ok(returnMap);
    }

七、项目总结:

经过近期对Java 面向对象程序设计、前端知识以及Java框架的掌握和学习,以及这段时间本教育教学系统的开发,让我更加了解到 Java 学习的重要性。在开发这个系统时,我不仅进行了多次的试验,而且也对系统的功能进行了测试。在论文的实现过程当中,我从Java的认识到熟练运用注入了非常多的努力,到后面可以进行相关技术的运用也感到非常的开心。在这过程当中,我发现Java其实有非常之多的功能可以进行探索。Java同时具有封装性、抽象性、多态性以及继承性。可以对代码进行重复使用以及扩充使用,大幅度提高开发软件时的整体速度和效率。我作为教育技术学的学生,学好Java语言不管对我以后的就业还是现在的知识面的扩增都有着很重要的意义。我学习程序设计的主要目的就是提高自己实际问题的程序解决方案的关键技能和技术, Java 面向对象程序设计是一科实践性相对来说非常比较强的语言了、Springboot、SpringMVC框架的MVC三层架构模式、和框架中遇到的设计模式将数据访问和逻辑操作都集中到组件里面去了 , 增强了系统的复用性和扩展性。使系统的扩展性大大增强。以及前端VUE 、element、jQuery样式的掌握让我对网页的布局、样式调整、字体等让网页效果实现的更加精准。

八、源码获取:

大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取联系方式👇🏻👇🏻👇🏻

链接点击直达:下载链接


http://www.kler.cn/a/8118.html

相关文章:

  • STM32串口第一次接收数据时第一个字节丢失的问题
  • 如何在centos系统上挂载U盘
  • 中国农业科学院深圳农业基因组研究所合成生物学研究中心-随笔06
  • Java文字识别OCR API-手写文字识别-生僻字识别-应用场景
  • 24/12/24 力扣每日一题 # LeetCode 524. 通过删除字母匹配到字典里最长单词 全网最详细解释
  • 为什么要用云电脑玩游戏?5大好处揭秘,ToDesk云机性能强又易用
  • 命名空间和程序集
  • Mysql 的B+树索引 和HASH索引
  • 160. 相交链表 ——【Leetcode每日一题】
  • CSS基础知识,必须掌握!!!
  • Android:启动流程
  • 城乡供水一体化管控平台-农村供水监管平台-乡村振兴
  • C++实现多线程
  • 聚类问题的算法总结
  • Nuxt中使用vuex管理组件信息通讯
  • 图像分割技术及经典实例分割网络Mask R-CNN(含基于Keras Python源码定义)
  • 一文看懂多模态大型语言模型GPT-4
  • 设计模式之监听模式
  • 第二章 SpringBoot整合ES7
  • 签订合同Signing a Contract
  • TenserRT(一)模型部署简介
  • 人人都能看懂的Spring源码解析,Spring如何解决循环依赖
  • Leetcode653. 两数之和 IV - 输入二叉搜索树
  • JavaScript 解析Json字符串的性能比较分析代码
  • WeakTr阅读笔记
  • Spring销毁的几种实现