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


相关文章
|
7月前
|
小程序 Java 关系型数据库
基于微信小程序的智慧养老服务系统
本系统基于Java、MySQL和Spring Boot技术,构建高效、安全的养老院管理系统,提升信息处理速度与管理规范性,实现数据自动化备份与网络化管理,助力养老机构信息化升级。
|
7月前
|
JavaScript 小程序 Java
基于微信小程序的线上博物馆系统
线上博物馆系统利用互联网与数字技术,实现文化遗产的数字化保护与传播,打破时空限制,推动文化传承与教育创新。结合Java、Vue及Uniapp等技术,构建跨平台、高互动的在线展览平台,提升公众文化体验。
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
4221 7
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
2527 7
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
4856 1
ly~
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
490 6
|
人工智能 自然语言处理 小程序
技术小白如何利用DeepSeek半小时开发微信小程序?
通过通义灵码的“AI程序员”功能,即使没有编程基础也能轻松创建小程序或网页。借助DeepSeek V3和R1满血版模型,用户只需用自然语言描述需求,就能自动生成代码并优化程序。例如,一个文科生仅通过描述需求就成功开发了一款记录日常活动的微信小程序。此外,通义灵码还提供智能问答模式,帮助用户解决开发中的各种问题,极大简化了开发流程,让普通人的开发体验更加顺畅。
3931 11
技术小白如何利用DeepSeek半小时开发微信小程序?
|
小程序 Java 关系型数据库
weixin163基于微信小程序的校园二手交易平台系统设计与开发ssm(文档+源码)_kaic
本文介绍了一款基于微信小程序的校园二手物品交易平台的开发与实现。该平台采用Java语言开发服务端,使用MySQL数据库进行数据存储,前端以微信小程序为载体,支持管理员和学生两种角色操作。管理员可管理用户、商品分类及信息、交易记录等,而学生则能注册登录、发布购买商品、参与交流论坛等。系统设计注重交互性和安全性,通过SSM框架优化开发流程,确保高效稳定运行,满足用户便捷交易的需求,推动校园资源共享与循环利用。
|
小程序 JavaScript 前端开发
微信小程序开发全流程:从注册到上线的完整指南
这篇文章详细记录了微信小程序的完整开发到最终上线的每一个步骤。适合对小程序开发感兴趣的个人开发者或希望了解完整流程的学习者,涵盖了云开发、事件绑定、生命周期管理、组件使用等关键内容。
20706 14