基于Java+SpringBoot制作一个宿舍报修小程序

news2024/11/26 12:31:52

制作一个宿舍报修小程序,让学生实现快速报修,将流程进行精简, 便于管理部门有效响应。
微信小程序实战开发专栏

  • 一、小程序
    • 1.1 项目创建
    • 1.2 首页
      • iconfont图标引入
    • 1.3 报修管理
      • 报修提交
      • 报修记录
      • 报修溯源
    • 1.4 来访登记
    • 1.5 公告通知
  • 二、API
    • 2.1 SpringBoot框架搭建
    • 2.2 实体映射创建Mapper
    • 3.3 接口封装
  • 三、管理端
    • 3.1 项目创建
    • 3.2 页面设计
    • 3.3 接口调用

一、小程序

1.1 项目创建

小程序账号申请及项目创建可参考该专栏其他文章步骤内容,这里不再重复赘述
微信小程序实战开发专栏

1.2 首页

首页展示搜索框、轮播图、跑马灯公告、快捷入口、维修员推荐等。

在这里插入图片描述

iconfont图标引入

快捷入口图片配置可使用iconfont引入图标
阿里巴巴矢量图标图点此跳转

在这里插入图片描述

将图片添加至购物车、添加至项目,并下载项目进行解压,添加iconfont.css的引用即可

在这里插入图片描述

1.3 报修管理

报修提交

报修提交页由表单控件组成,用于提供给用户输入所需的各项信息

在这里插入图片描述

报修记录

报修记录展示用户提交的报修记录,管理员在后台对记录进行操作后,同步显示

在这里插入图片描述

报修溯源

基于zxing生成二维码,可将其贴在宿舍物品上,用户可通过个人中心扫一扫查看物品操作历史

在这里插入图片描述

import java.io.File;
import java.util.Hashtable;  
 
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;  
public class QRCodeEvents {  
  public static void main(String []args)throws Exception{
    String text = "物品名称";
    int width = 100;
    int height = 100;
    String format = "png";
    Hashtable hints= new Hashtable();
    hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
     BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, width, height,hints);
     File outputFile = new File("new.png");
     MatrixToImageWriter.writeToFile(bitMatrix, format, outputFile);  
  }
}

1.4 来访登记

外来访校人员可通过小程序对信息进行登记

在这里插入图片描述

管理员可通过后台发布公告信息在小程序进行展示

在这里插入图片描述

1.5 公告通知

二、API

2.1 SpringBoot框架搭建

1.创建maven project,先创建一个名为SpringBootDemo的项目,选择【New Project】

在这里插入图片描述

然后在弹出的下图窗口中,选择左侧菜单的【New Project】

在这里插入图片描述
在这里插入图片描述

在project下创建module,点击右键选择【new】—【Module…】

在这里插入图片描述

左侧选择【Spring initializr】,通过idea中集成的Spring initializr工具进行spring boot项目的快速创建。窗口右侧:name可根据自己喜好设置,group和artifact和上面一样的规则,其他选项保持默认值即可,【next】

在这里插入图片描述

Developer Tools模块勾选【Spring Boot DevTools】,web模块勾选【Spring Web】,此时,一个Springboot项目已经搭建完成,可开发后续功能

在这里插入图片描述

2.2 实体映射创建Mapper

创建一个entity实体类文件夹,并在该文件夹下创建项目用到的实体类

这里是引用

package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

@Data
public class User {
    @TableId(type = IdType.AUTO)
    private Long id;

    private String account;

    private String pwd;

    private String userDesc;

    private String userHead;

    private LocalDateTime createTime;

    private Long role;

    private String nickname;

    private String email;

    private String tags;
}

3.3 接口封装

由于我们使用mybatis-plus,所以简单的增删改查不用自己写,框架自带了,只需要实现或者继承他的Mapper、Service

在这里插入图片描述

创建控制器Controller

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据库连接、mybatis-plus的分页插件、以及跨域配置

在这里插入图片描述

三、管理端

3.1 项目创建

可通过vsCode / Hbulider等开发工具进行项目创建,根据个人的开发习惯选择项目类型

在这里插入图片描述

3.2 页面设计

页面主要分为左侧菜单导航及右侧内容,通过iframe实现点击展示的效果

在这里插入图片描述

   // 滚动条
    const ps = new PerfectScrollbar('.lyear-layout-sidebar-scroll', {
		swipeEasing: false,
		suppressScrollX: true
	});
    
    // 侧边栏
    $(document).on('click', '.lyear-aside-toggler', function() {
        $('.lyear-layout-sidebar').toggleClass('lyear-aside-open');
        $("body").toggleClass('lyear-layout-sidebar-close');
        
        if ($('.lyear-mask-modal').length == 0) {
            $('<div class="lyear-mask-modal"></div>').prependTo('body');
        } else {
            $( '.lyear-mask-modal' ).remove();
        }
    });
  
    // 遮罩层
    $(document).on('click', '.lyear-mask-modal', function() {
        $( this ).remove();
    	$('.lyear-layout-sidebar').toggleClass('lyear-aside-open');
        $('body').toggleClass('lyear-layout-sidebar-close');
    });

3.3 接口调用

前端框架使用layui渲染数据,通过url请求在控制器定义的接口

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/423969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows日志捕获工具-DebugView使用教程

debugview 是一款捕获windows桌面系统程序中由TRACE(debug版本)和OutputDebugString输出的信息。 1、双击打开DebugView.exe工具&#xff0c;看到如下界面&#xff1a; 其中这里 Include代表过滤想要的关键字&#xff0c;一般不会找自己想要的关键字日志就设置成星号*&#xf…

GDOUCTF WEB

web hate eat snake 游戏题找js&#xff0c;将判断语句删掉即可 ezweb 看源码找到/src路由&#xff0c;找到源码 import flaskapp flask.Flask(__name__)app.route(/, methods[GET]) def index():return flask.send_file(index.html)app.route(/src, methods[GET]) def so…

如何快速开发软件?这篇文章说明白了

随着经济迅速发展&#xff0c;传统软件开发模式存在研发周期长、需求转化困难、投入成本高等问题&#xff0c;无法适应当前业务发展速度,市场需要快速开发工具。快速开发软件可分为代码生成类、少代码类、零代码功能配置类。代码生成类相对灵活&#xff0c;但对用户要求高&…

MySQL group_concat设置group_concat_max_len

GROUP_CONCAT函数用于将多个字符串连接成一个字符串&#xff0c;在拼接成字符串时就会存在拼接长度的问题&#xff0c;mysql 默认的拼接最大长度为1024 个字节&#xff0c;由于1024个字节会出现不够用的情况&#xff0c;所以有时需要去根据情况进行修改&#xff0c;方式如下。 …

nginx启动、配置、测试(全网最全)

目录 一、要求 1.配置不同IP访问 2.配置不同端口访问 3.配置域名访问 二、前期准备 1.安装gcc g的依赖库 2.安装 pcre的依赖库 3.安装zlib的依赖库 4.安装openssl的依赖库 5.解压nginx的安装包 6.进入到解压的nginx安装目录里面 7.将nginx安装到/usr/local/下 8.编译 9.进入到…

从 Python 中的字典列表中删除重复项

要从字典列表中删除重复项&#xff1a; 使用字典推导来遍历列表。使用每个 id 属性的值作为键&#xff0c;使用字典作为值。使用 dict.values() 方法只获取唯一的字典。使用 list() 类将结果转换为列表。 list_of_dictionaries [{id: 1, site: jiyik.com},{id: 2, site: goo…

5G NR调制阶数与EVM关系以及对系统SNR要求分析

移动通信技术对数据传输速率要求越来越高。一种提高传输速率的思路是使用更高阶的QAM 调制方式&#xff0c;例如5G NR 的256QAM PDSCH&#xff0c;微波的1024QAM&#xff0c;2048QAM和4096QAM 调制。更高阶的QAM 调制方式对系统也提出了更高的要求。例如某个系统的EVM 测试结果…

微服务+springcloud+springcloud alibaba学习笔记【Hystrix(豪猪哥)的使用】(6/9)

Hystrix&#xff08;豪猪哥&#xff09;的使用 6/91、Hystrix熔断器概述2、HyStrix重要概念3、hystrix案例3.1 新建模块 Cloud-provider-hystrix-payment80013.2 创建带降级的order模块 Cloud-comsumer-feign-hystrix-order803.3 配置服务降级:3.3.1 服务降级 Cloud-provider-h…

企业做体系认证要警惕的8大问题,别再被不良认证机构忽悠啦!

企业资质认证要警惕这八大问题 企业资质真的很管用。我们都知道从事任何一个行业都需要准入证明&#xff0c;尤其是招投标企业&#xff0c;企业资质更是投标的准入门槛&#xff0c;并且在投标中还可以为企业加分。 有些资质如ISO三体系是企业必备的资质之一&#xff0c;也是常…

麻了,不要再动不动就BeanUtil.copyProperties

前言 最近项目上要求升级一个工具包hutool的版本&#xff0c;以解决安全漏洞问题&#xff0c;这不升级还好&#xff0c;一升级反而捅出了更大的篓子&#xff0c;究竟是怎么回事呢&#xff1f; 事件回顾 我们项目原先使用的hutool版本是5.7.2&#xff0c;在代码中&#xff0c…

Hudi集成Flink-写入方式

文章目录一、CDC 入湖1.1、[开启binlog](https://blog.csdn.net/wuxintdrh/article/details/130142601)1.2、创建测试表1.2.1、创建mysql表1.2.2、将 binlog 日志 写入 kafka1、使用 mysql-cdc 监听 binlog2、kafka 作为 sink表3、写入sink 表1.2.3、将 kakfa 数据写入hudi1、k…

ERTEC200P-2 PROFINET设备完全开发手册(4-2)

4.2 XHIF接口实验 4.2.1写入单片机固件 首先按照下图连接设备 用JLINK 20Pin JTAG连接4 Pin SWD可以采用转接板 单片机的参考程序是用ST的CubeIDE生成的&#xff0c;目前的版本是1.7.0。打开安装后的CubeIDE&#xff0c;在菜单中选择“File->Import“ 选择“Existing Proj…

企业信息化建设都包括哪些方面?

随着大数据技术的发展&#xff0c;时代的发展要求企业转变管理模式、建立信息化管理机制&#xff0c;同时也是提高工作、管理效率&#xff0c;促进企业战略性发展的重要保障。 企业信息化是将信息技术应用于企业发展实践中的一个动态过程&#xff0c;即通过挖掘先进的管理理念…

高可靠多层板制造服务再获认可!华秋荣获创想三维优秀质量奖

4月10日&#xff0c;创想三维2023年度战略供应商大会在惠州成功举办&#xff0c;高可靠多层板制造商华秋出席了本次活动并取得了《优秀质量奖》一奖项。 大会现场&#xff0c;创想三维董事长陈春指出公司的持续发展与供应链高质量的交付息息相关。作为创想三维主力PCB供应商&am…

【亲测有效】更新了WIN11之后 右键无 新建WORD,PPT,EXCEL 选项 问题 解决方案

原本正常的正版系统&#xff0c;在昨天4月自动更新安装之后&#xff0c;发现右键找 不到新建文档了&#xff0c;word,ppt,excel都不见了。 看了网上大神的方法 Win11安装了Office右键没有新建Excel选项怎么办&#xff1f; - 知乎 可以解决一部分 官方解决方案&#xff0c;亲…

李宏毅2021春季机器学习课程视频笔记14-Transformer

Transformer Transformer实际上就是变形金刚&#xff0c;其与Bert实际类似。其实际上就是一个Sequence-to-Sequence的模型&#xff0c;其输出的长度并不是由人为指定&#xff0c;而是由机器自行确定。 Transformer的基本结构&#xff0c;如上图所示&#xff0c;主要由一个Encod…

AS01/AS02/AS03 创建定制屏幕字段

本文简介&#xff1a;在sap标准屏幕上&#xff0c;增加客户定制的屏幕字段。 操作步骤&#xff1a; 1、在创建资产卡片AS01时&#xff0c;界面需要输入客户定制的字段&#xff0c;如下图方框所示 2、查看增强点&#xff0c;事务码&#xff1a;SMOD AIST002 3、创建增强项目…

M1 M2上能安装上Autocad 2024 Mac 中文版吗 autocad m1 m2版本有啦 终于支持Ventura 13x了

AutoCAD是一款强大的工具&#xff0c;适合于各种领域的设计和绘图。它具有二维图形和三维建模功能、多种文件格式支持、自定义命令和样式、批处理和脚本等特点&#xff0c;可以帮助用户实现高质量的设计和建模。同时&#xff0c;还支持云端存储和共享&#xff0c;方便用户随时随…

【Linux】-- 进程概念的引入

目录 硬件 冯诺依曼体系结构 冯诺依曼体系结构推导 重点概念 网络数据流向 软件 操作系统(Operator System - OS) 概念 定位 进程内核数据结构PCB&#xff08;task_struct&#xff09; 通过系统调用创建进程-fork初始 fork基本用法 使用if进行分流 查看运行效果 …

Python每日一练(20230417)

目录 1. 最大间距 &#x1f31f;&#x1f31f;&#x1f31f; 2. Z 字形变换 &#x1f31f;&#x1f31f; 3. 买卖股票的最佳时机 II &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练…