SSM+微信小程序实现物业管理系统

简介: ssm微信小程序物业管理系统,有网站后台管理系统项目描述微信小程序物业管理系统,微信小程序端包括以下几个模块:社区公告、报修、信息采集、生活缴费、二手置换微信小程序后台管理界面可以增删改查社区公告、问卷、问卷问题、问题选项等在微信小程序前端,用户提交信息后,可在我的界面查看提交的信息,管理员可以在微信小程序后台管理界面查看所有用户提交的信息。

 作者主页:编程指南针

简介:Java领域优质创作者、CSDN博客专家  Java项目、简历模板、学习资料、面试题库、技术互助

文末获取源码

项目编号:BS-XCX-003

ssm微信小程序物业管理系统,有网站后台管理系统

项目描述

微信小程序物业管理系统,微信小程序端包括以下几个模块:

社区公告、报修、信息采集、生活缴费、二手置换

微信小程序后台管理界面可以增删改查社区公告、问卷、问卷问题、问题选项等

在微信小程序前端,用户提交信息后,可在我的界面查看提交的信息,管理员可以在微信小程序后台管理界面查看所有用户提交的信息。

运行环境

jdk8+tomcat8+mysql5.7+IntelliJ IDEA+maven

项目技术(必填)

spring+spring mvc+mybatis+layui

下面展示一下系统的功能:

物业管理后台地址

http://localhost:8080/SheQu/

登录账号admin   123

image.gif编辑

社区公告管理

image.gif编辑

商品管理

image.gif编辑

在线调查问卷管理

image.gif编辑

题目管理

image.gif编辑

选项管理

image.gif编辑

小程序端产生的数据查询

image.gif编辑

维修查询

image.gif编辑

商品订单查询

image.gif编辑

小程序端页面功能展示

image.gif编辑

公告管理

image.gif编辑

报修管理

image.gif编辑

调查问卷

image.gif编辑

生活缴费

image.gif编辑

在线购物

image.gif编辑

我的

image.gif编辑

项目核心代码:

package com.shequ.controller;
import com.alibaba.fastjson.JSON;
import com.shequ.pojo.Admin;
import com.shequ.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;
@Controller
public class AdminController {
    @Autowired
    AdminService adminService;
    @ResponseBody
    @RequestMapping("/login")
    public String findOneAdmin(String account, String pwd, HttpServletRequest request ){
        HttpSession session = request.getSession(true);//新建session对象
        Admin admin = adminService.findOneAdmin(account,pwd);
        session.setAttribute("admin",admin);
        if(admin!=null){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/findAllAccount",produces="application/json;charset=UTF-8")
    public String findAllAccount(){
        List<Admin> accounts = adminService.findAllAccount();
        String result = JSON.toJSONString(accounts);
        System.out.println(result);
        return result;
    }
    @ResponseBody
    @RequestMapping(value = "/updateAdminPwd" )
    public String updateAdminPwd(@RequestBody Map map, HttpServletRequest request){
        HttpSession session = request.getSession(true);//新建session对象
        Admin admin = (Admin) session.getAttribute("admin");  //将对应数据存入session中
        String account = admin.getAccount();
        System.out.println(map);
        String pwd = map.get("pwd").toString();
        System.out.println("pwd:"+pwd);
        int n = adminService.updateAdminPwd(pwd,account);
        if(n>0){
            return "success";
        }
        return "failure";
    }
}

image.gif

package com.shequ.controller;
import com.alibaba.fastjson.JSON;
import com.shequ.mapper.ChoiceMapper;
import com.shequ.pojo.Choice;
import com.shequ.pojo.Pay;
import com.shequ.pojo.Sur_Que;
import com.shequ.service.ChoiceService;
import com.shequ.service.Sur_QueService;
import com.shequ.util.Layui;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Controller
public class ChoiceController {
   @Autowired
   ChoiceService choiceService;
    @ResponseBody
    @RequestMapping(value = "/findAllChoiceByPage",produces="application/json;charset=UTF-8")
    public String findAllChoiceByPage(@RequestParam("limit") String limit, @RequestParam("page") String page) {
        int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
        int pageSize = Integer.parseInt(limit);
        List<Choice> choices = choiceService.findAllChoiceByPage(start,pageSize);
        List<Choice> choicesAll = choiceService.findAllChoice();
        Layui l = Layui.data(choicesAll.size(), choices);
        String result = JSON.toJSONString(l);
        return result;
    }
    @ResponseBody
    @RequestMapping(value = "/deleteChoiceById")
    public String deleteChoiceById(@RequestParam("id")String id) {
        int n = choiceService.deleteChoiceById(Integer.parseInt(id));
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/insertChoice")
    public String insertChoice(@RequestBody Map map) {
        int n = choiceService.insertChoice(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/updateChoiceById")
    public String updateChoiceById(@RequestBody Map map) {
        int n = choiceService.updateChoiceById(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/findAllUserSurQueAndOptByPage",produces="application/json;charset=UTF-8")
    public String findAllUserSurQueAndOptByPage(@RequestParam("limit") String limit, @RequestParam("page") String page) {
        int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
        int pageSize = Integer.parseInt(limit);
        List<Choice> choices = choiceService.findAllUserSurQueAndOptByPage(start,pageSize);
        List<Choice> choiceAll = choiceService.findAllChoice();
        Layui l = Layui.data(choiceAll.size(), choices);
        String result = JSON.toJSONString(l);
        return result;
    }
}

image.gif

package com.shequ.controller;
import com.shequ.util.MyTool;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@Controller
public class CommonController {
    private final Logger log =  LoggerFactory.getLogger(CommonController.class);
    @RequestMapping("/{pageName}")
    public String pathAll(@PathVariable(value="pageName") String pageName){
        return pageName;
    }
    @RequestMapping("/loginOut")
    public String loginOut(HttpSession httpSession) {
        httpSession.removeAttribute("user");
        return "redirect:/";
    }
    @RequestMapping(value = "/uploadAvatar", method = RequestMethod.POST)
    public @ResponseBody Object uploadAvatar(@RequestParam("photo") MultipartFile file, HttpServletRequest request)
            throws IllegalStateException, IOException {
        Map<String, Object> map = new HashMap<String, Object>();
        String name = file.getOriginalFilename();
        String imgAbsolutePath = MyTool.SaveImg(file, MyTool.getImg(), name);
        map.put("code", 0);
        map.put("message", "上传成功");
        map.put("data", name);
        return map;
    }
    @RequestMapping(value = "/uploadImg", method = RequestMethod.POST)
    public @ResponseBody Object uploadImg(@RequestParam("photo") MultipartFile file, HttpServletRequest request)
            throws IllegalStateException, IOException {
        Map<String, Object> map = new HashMap<String, Object>();
        String name = file.getOriginalFilename();
        String imgAbsolutePath = MyTool.SaveImg(file, MyTool.getImg(), name);
        map.put("code", 0);
        map.put("message", "上传成功");
        map.put("data", name);
        return map;
    }
    @RequestMapping(value = "/uploadContent", method = RequestMethod.POST)
    public @ResponseBody Object uploadContent(@RequestParam("file") MultipartFile file, HttpServletRequest request)
            throws IllegalStateException, IOException {
        Map<String, Object> map = new HashMap<String, Object>();
        String name = file.getOriginalFilename();
        String imgAbsolutePath = MyTool.SaveImg(file, MyTool.getXmlFile(), name);
        map.put("code", 0);
        map.put("message", "上传成功");
        map.put("data", name);
        return map;
    }
}

image.gif

package com.shequ.controller;
import com.alibaba.fastjson.JSON;
import com.shequ.pojo.Message;
import com.shequ.service.MessageService;
import com.shequ.util.Layui;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Controller
public class MessageController {
    @Autowired
    MessageService messageService;
    @ResponseBody
    @RequestMapping(value = "/findAllMessageByPage",produces="application/json;charset=UTF-8")
    public String findAllMessageByPage(@RequestParam("limit") String limit, @RequestParam("page") String page){
        int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
        int pageSize = Integer.parseInt(limit);
        List<Message> message = messageService.findAllMessageByPage(start,pageSize);
        List<Message> messageAll = messageService.findAllMessage();
        Layui l = Layui.data(messageAll.size(), message);
        String result = JSON.toJSONString(l);
        return result;
    }
    @ResponseBody
    @RequestMapping(value = "/insertMessage")
    public String insertMessage(@RequestBody Map map){
        Date date = new Date();
        map.put("time",date);
        System.out.println("map:"+map.toString());
        int n = messageService.insertMessage(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/deleteNotices")
    public String deleteNotices(@RequestParam("id") int id){
        int n = messageService.deleteNotices(id);
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/updateMessage")
    public String updateMessage(@RequestBody Map map){
        Date date = new Date();
        map.put("time",date);
        System.out.println("map:"+map.toString());
        int n = messageService.updateMessage(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
}

image.gif

package com.shequ.controller;
import com.alibaba.fastjson.JSON;
import com.shequ.pojo.Message;
import com.shequ.pojo.Survey;
import com.shequ.service.SurveyService;
import com.shequ.util.Layui;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
import java.util.Map;
@Controller
public class SurveyController {
   @Autowired
   SurveyService surveyService;
    @ResponseBody
    @RequestMapping(value = "/findAllSurveyByPage",produces="application/json;charset=UTF-8")
    public String findAllSurveyByPage(@RequestParam("limit") String limit, @RequestParam("page") String page) {
        int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
        int pageSize = Integer.parseInt(limit);
        List<Survey> surveys = surveyService.findAllSurveyByPage(start,pageSize);
        List<Survey> surveyAll = surveyService.findAllSurvey();
        Layui l = Layui.data(surveyAll.size(), surveys);
        String result = JSON.toJSONString(l);
        return result;
    }
    @ResponseBody
    @RequestMapping(value = "/findAllSurvey",produces="application/json;charset=UTF-8")
    public String findAllSurvey() {
        List<Survey> surveys = surveyService.findAllSurvey();
        String result = JSON.toJSONString(surveys);
        return result;
    }
    @ResponseBody
    @RequestMapping(value = "/insertSurvey")
    public String insertSurvey(@RequestBody Map map) {
        int n = surveyService.insertSurvey(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/deleteSurveyById")
    public String deleteSurveyById(@RequestParam("id")String id) {
        int n = surveyService.deleteSurveyById(Integer.parseInt(id));
        if(n>0){
            return "success";
        }
        return "failure";
    }
    @ResponseBody
    @RequestMapping(value = "/updateSurveyById")
    public String updateSurveyById(@RequestBody Map map) {
        int n = surveyService.updateSurveyById(map);
        if(n>0){
            return "success";
        }
        return "failure";
    }
}

image.gif


相关文章
|
6天前
|
存储 Java 关系型数据库
ssm026校园美食交流系统(文档+源码)_kaic
本文介绍了基于Java语言和MySQL数据库的校园美食交流系统的设计与实现。该系统采用B/S架构和SSM框架,旨在提高校园美食信息管理的效率与便捷性。主要内容包括:系统的开发背景、目的及内容;对Java技术、MySQL数据库、B/S结构和SSM框架的介绍;系统分析部分涵盖可行性分析、性能分析和功能需求分析;最后详细描述了系统各功能模块的具体实现,如登录、管理员功能(美食分类管理、用户管理等)和前台首页功能。通过此系统,管理员可以高效管理美食信息,用户也能方便地获取和分享美食资讯,从而提升校园美食交流的管理水平和用户体验。
|
27天前
|
小程序 前端开发 关系型数据库
基于Uniapp+php校园小程序,校园圈子论坛系统功能,校园跑腿二手交流功能设计
校园圈子论坛及综合服务平台集成了校园跑腿、兼职信息、外卖团购、闲置交换、租赁服务、表白墙等多功能模块,提供一站式校园生活解决方案。系统采用uniapp前端和PHP后端开发,支持多城市、多学校切换,配备分站式后台管理,确保稳定性和安全性。通过融云IM SDK实现即时通讯功能,增强用户互动与粘性。适用于大学校园、城市及社区圈子,满足多样化需求,提升便捷体验。
|
27天前
|
存储 小程序 搜索推荐
打造无缝社交体验:多平台适配,开启线上线下陪玩系统小程序社交新时代
通过实施以上策略和行动计划,可以打造出一个无缝社交体验的多平台陪玩社交系统,为用户提供更加便捷、高效、有趣的社交体验,开启线上线下陪玩系统源码社交的新时代。
54 11
|
26天前
|
小程序 前端开发 关系型数据库
uniapp跨平台框架,陪玩系统并发性能测试,小程序源码搭建开发解析
多功能一体游戏陪练、语音陪玩系统的开发涉及前期准备、技术选型、系统设计与开发及测试优化。首先,通过目标用户分析和竞品分析明确功能需求,如注册登录、预约匹配、实时语音等。技术选型上,前端采用Uni-app支持多端开发,后端选用PHP框架确保稳定性能,数据库使用MySQL保证数据一致性。系统设计阶段注重UI/UX设计和前后端开发,集成WebSocket实现语音聊天。最后,通过功能、性能和用户体验测试,确保系统的稳定性和用户满意度。
|
30天前
|
移动开发 小程序
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
27 0
|
1月前
|
移动开发 小程序 前端开发
超详细攻略!uniapp陪玩系统,打包陪玩小程序、H5需要注意什么?
陪玩系统的打包过程涵盖APP、小程序和H5平台。APP打包需使用uni-app开发工具,配置项目信息并选择云打包;小程序打包需在微信公众平台注册账号并提交审核;H5打包则直接通过uni-app生成文件并上传至服务器。各平台需注意权限配置、代码规范及充分测试,确保应用稳定性和兼容性。
|
3月前
|
小程序 前端开发 JavaScript
在线课堂+工具组件小程序uniapp移动端源码
在线课堂+工具组件小程序uniapp移动端源码
82 0
在线课堂+工具组件小程序uniapp移动端源码
|
4月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
567 3
|
4月前
|
小程序 API
微信小程序更新提醒uniapp
在小程序开发中,版本更新至关重要。本方案利用 `uni-app` 的 `uni.getUpdateManager()` API 在启动时检测版本更新,提示用户并提供立即更新选项,自动下载更新内容,并在更新完成后重启小程序以应用新版本。适用于微信小程序,确保用户始终使用最新版本。以下是实现步骤: ### 实现步骤 1. **创建更新方法**:在 `App.vue` 中创建 `updateApp` 方法用于检查小程序是否有新版本。 2. **测试**:添加编译模式并选择成功状态进行模拟测试。
96 0
微信小程序更新提醒uniapp
|
6月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
155 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目

热门文章

最新文章