兰州彩票网站制作,杭州索象营销策划有限公司,系统开发生命周期一般划分为哪几个阶段?,现代企业网站建设特点基于JavaSpringBootVueElement的OA系统的设计和实现 源码传送入口前言主要技术系统设计功能截图数据库设计代码论文目录订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 源码传送入口
前言
在Internet高速发展的今天#xff0c;我们生活的各个领域都涉及到计算机的… 基于JavaSpringBootVueElement的OA系统的设计和实现 源码传送入口前言主要技术系统设计功能截图数据库设计代码论文目录订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 源码传送入口
前言
在Internet高速发展的今天我们生活的各个领域都涉及到计算机的应用其中包括小型OA系统设计与实现的网络应用在国外小型OA系统设计与实现已经是很普遍的方式不过国内的小型OA系统设计与实现可能还处于起步阶段。小型OA系统设计与实现具有部门公告、通知中心等功能。小型OA系统设计与实现采用Java语言Springboot框架基于mysql开发实现了部门、用户、部门公告、通知中心、代办消息、个人日程、完成代办等内容进行管理本系统具有良好的兼容性和适应性为用户提供更多的信息也提供了良好的平台从而提高系统的核心竞争力。 本文首先介绍了设计的背景与研究目的其次介绍系统相关技术重点叙述了系统功能分析以及详细设计最后总结了系统的开发心得。 关键词小型OA系统设计与实现Springboot框架 Java语言mysql数据库。
主要技术
2.1 Java语言简介 Java语言是一个完全的面向对象的程序设计语言。面向对象编程语言的思想是把客观存在的事物看成是具有状态和行为的一类对象然后通过抽象的方法找出相同一类对象的共同状态和行为从而构成模型——类。类是Java程序设计语言的核心是Java语言的基本抽象单元。世间上的各种事物都是对象都可以把它抽象成具有状态和行为的类。Java语言的主要特点有 Java语言是典型的面向对象的。它提供了类类又提供了对象的模型通过使用继承和多态的方法可以实现代码的重用。 Java语言是安全的。当代网络环境要解决的最大的问题就是安全问题。Java具有内部的安全措施可以确保程序的安全与完整。 Java语言的操作无关平台。Java程序可以在任何的系统中运行只要安装了Java的运行系统。 Java语言是多线程的。 Java语言具有内存管理。Java可以自动地对内存进行管理很好地利用了系统的资源减少浪费。 2.2 mysql数据库介绍 利用MYSQL的数据独立性、安全性等特点在软件项目中对数据进行操作可以保证数据准确无误并降低了程序员的应用开发时间。 MYSQL的特点是支持多线程能方便的对系统资源充分利用有效提高速度还提供多种方式途径来对数据库进行连接MYSQL的功能相对弱小、规模也小但本系统要求不高MYSQL完全可以满足本网站使用。 利用MYSQL建立系统数据库不仅有利于数据处理业务的早期整合还能利于发展后两种数据扩展的操作。 2.3 MySQL环境配置 1本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录如果下载的是非安装的MySQL压缩包直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码注这不是MySQL里的用户、密码随便填不必在意确定之后右下角任务的启动栏会出现一个红绿灯的图标红灯亮代表服务停止绿灯亮代表服务正常左击这个图标-winnt-install the service 安装此服务再左击这个图标-winnt-start the service 启动MySQL服务。 2修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令: cd C:\Program Files\MySQL\bin MySQLadmin -u root -p password 123 回车出现Enter password: 这是要输入原密码. 刚安装时密码为空,所以直接回车此时MySQL 中账号 root 的密码被改为 123 安装完毕。
2.4 B/S架构 B/S的系统是通过能上网的电脑就可以使用它最大的优点是不需要安装专门的软件首先浏览器向服务器发出请求然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据只要负责显示数据来降低要求如果说客户端像个“瘦子”而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比最大的不同是B/S体系的应用软件使用网络浏览器作为与用户交互的平台而C/S则需要开发专用的应用程序。 当前MIS系统结构目前存在两种较为流行的结构:C/S和B/S两种。 C/S结构的系统C/S结构就是客户机服务器结构它可以法派任务到Client端和Server端来进行充分利用两端硬件环境的优势来降低系统的通讯的花费。客户端主要作用是处理人机交互执行客户端应用程序收集数据以及向服务器发送任务请求。服务器基本作用是执行后台程序它主要对客户机的请求申请进行反馈除此之外它的作用还包括数据服务预约储系统的共享管理、通讯管理、文件管理等等。 B/S结构的系统这种网络结构简化了客户端并把系统功能实现的中心集中到服务器上在这种模式中只需要一个浏览器就可以了。这种结构将很多的工作交于WEB服务器只通过浏览器请求WEB服务随后根据请求返回信息。 通常在企业网内部使用采用C/S。而使用不仅限于内网的情况下使用B/S。考虑到本管理系统的一系列需求所以该系统开发使用B/S结构开发。
2.5 Springboot框架 本技术是Java平台的开源应用框架其目的是简化Sping的初始搭建和开发过程。默认配置了很多框架的使用方式自动加载Jar包为了让读者尽可能快的跑起来spring应用程序。 SpinrgBoot的主要优点有 1、为所有spring开发提供了一个更快、更广泛的入门体验 2、零配置 3、集成了大量常用的第三方库的配置 4、提供准备好的特性。当今Java领域的开发者机会都在使用SpinrgBoot,在开发领域逐渐成为领导者。
系统设计 功能截图
5.1管理员功能模块 管理员登录系统管理员登录页面通过输入用户名、密码选择角色并点击登录进行系统登录操作如图5-1所示。
图5-1管理员登录界面图
管理员登录系统后可以对首页、个人中心、部门管理、用户管理、部门公告管理、通知中心管理、代办消息管理、个人日程管理、完成代办管理等功能模块进行相应操作如图5-2所示。
图5-2管理员功能界面图
部门管理在部门管理页面可以对部门、部门领导、部门电话、部门邮箱等内容进行详情、修改或删除如图5-3所示。
图5-3部门管理界面图
用户管理在用户管理页面可以对用户账号、用户姓名、手机号码、头像、性别、邮箱、部门、职位、审核回复、审核状态、审核等内容进行详情、修改或删除等操作如图5-4所示。
图5-4用户管理界面图
5.2用户功能模块 用户注册在注册页面填写用户账号、用户姓名、密码、确认密码、手机号码、邮箱等详细信息进行注册如图5-5所示。
图5-5用户注册界面图
用户登录用户在登录页面通过填写账号、密码、选择角色信息完成登录如图5-6所示。
图5-6用户登录界面图
用户登录进入系统后可以对首页、个人中心、部门公告管理、通知中心管理、代办消息管理、个人日程管理、完成代办管理等功能模块进行相应操作如图5-7所示。
图5-7用户功能界面图
部门公告管理在部门公告管理页面可以对公告名称、发布时间、部门、部门领导等内容进行详情操作如图5-8所示。
图5-8部门公告管理界面图
通知中心管理在通知中心管理页面可以对文件编号、文件标题、文件、上传时间等内容进行详情操作如图5-9所示。
图5-9通知中心管理界面图
代办消息管理在代办消息管理页面可以对用户账号、用户姓名、部门、职位、部门领导、文件、发放时间、消息备注等内容进行详情、完成代办操作如图5-10所示。
图5-10代办消息管理界面图
完成代办管理在完成代办管理页面可以对用户账号、用户姓名、职位、部门、部门领导、完成文件、消息备注、发放时间、提交时间、审核回复、审核状态、等内容进行详情操作如图5-11所示。
图5-11完成代办管理界面图 5.3部门销售部门功能模块
部门登录部门在登录页面通过填写账号、密码、选择角色信息完成登录如图5-12所示。
图5-12部门登录界面图
部门登录进入系统后可以对首页、个人中心、用户管理、部门公告管理、通知中心管理、代办消息管理、个人日程管理、完成代办管理等功能模块进行相应操作如图5-13所示。
图5-13部门功能界面图
用户管理在用户管理页面可以对用户账号、用户姓名、手机号码、头像、性别、邮箱、部门、职位、审核回复、审核状态、审核等内容进行详情、发送代办消息等操作如图5-14所示。
图5-14用户管理界面图
部门公告管理在部门公告管理页面可以对公告名称、发布时间、部门、部门领导等内容进行详情、修改、删除操作如图5-15所示。
图5-15部门公告管理界面图
通知中心管理在通知中心管理页面可以对用户账号、用户姓名、部门、职位、通知人、通知时间等内容进行详情操作如图5-16所示。
图5-16通知中心管理界面图
代办消息管理在代办消息管理页面可以对用户账号、用户姓名、部门、职位、部门领导、文件、发放时间、消息备注等内容进行详情操作如图5-17所示。
图5-17代办消息管理界面图 个人日程管理在个人日程管理页面可以对用户账号、部门、用户姓名、职位、编辑时间、审核回复、审核状态等内容进行详情操作如图5-18所示。
图5-18个人日程管理界面图
数据库设计
部门信息实体图如图4-1所示
图4-1部门信息实体图
部门公告信息实体图如图4-2所示
图4-2部门公告信息实体图
通知中心信息实体图如图4-3所示
图4-3通知中心信息实体图
代办消息实体图如图4-4所示
图4-4代办消息实体图
DROP TABLE IF EXISTS bumengonggao;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE bumengonggao (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,gonggaomingcheng varchar(200) DEFAULT NULL COMMENT 公告名称,gonggaoneirong longtext COMMENT 公告内容,fabushijian datetime DEFAULT NULL COMMENT 发布时间,bumen varchar(200) DEFAULT NULL COMMENT 部门,bumenlingdao varchar(200) DEFAULT NULL COMMENT 部门领导,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT1646011296520 DEFAULT CHARSETutf8 COMMENT部门公告;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table bumengonggao
--LOCK TABLES bumengonggao WRITE;
/*!40000 ALTER TABLE bumengonggao DISABLE KEYS */;
INSERT INTO bumengonggao VALUES (31,2022-02-28 01:08:14,公告名称1,公告内容1,2022-02-28 09:08:14,部门1,部门领导1),(32,2022-02-28 01:08:14,公告名称2,公告内容2,2022-02-28 09:08:14,部门2,部门领导2),(33,2022-02-28 01:08:14,公告名称3,公告内容3,2022-02-28 09:08:14,部门3,部门领导3),(34,2022-02-28 01:08:14,公告名称4,公告内容4,2022-02-28 09:08:14,部门4,部门领导4),(35,2022-02-28 01:08:14,公告名称5,公告内容5,2022-02-28 09:08:14,部门5,部门领导5),(36,2022-02-28 01:08:14,公告名称6,公告内容6,2022-02-28 09:08:14,部门6,部门领导6),(1646011296519,2022-02-28 01:21:35,销售部门公告,p阿道夫噶啥发啥的法撒旦法撒旦发是的img src\http://localhost:8080/springbootm2yt0/upload/1646011295157.jpg\/p,2022-02-28 09:21:14,销售部门,王五);
/*!40000 ALTER TABLE bumengonggao ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table config
--DROP TABLE IF EXISTS config;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE config (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,name varchar(100) NOT NULL COMMENT 配置参数名称,value varchar(100) DEFAULT NULL COMMENT 配置参数值,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT配置文件;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table config
--LOCK TABLES config WRITE;
/*!40000 ALTER TABLE config DISABLE KEYS */;
INSERT INTO config VALUES (1,picture1,upload/picture1.jpg),(2,picture2,upload/picture2.jpg),(3,picture3,upload/picture3.jpg);
/*!40000 ALTER TABLE config ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table daibanxiaoxi
--DROP TABLE IF EXISTS daibanxiaoxi;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE daibanxiaoxi (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,yonghuzhanghao varchar(200) DEFAULT NULL COMMENT 用户账号,yonghuxingming varchar(200) DEFAULT NULL COMMENT 用户姓名,zhiwei varchar(200) DEFAULT NULL COMMENT 职位,bumen varchar(200) DEFAULT NULL COMMENT 部门,bumenlingdao varchar(200) DEFAULT NULL COMMENT 部门领导,wenjian varchar(200) DEFAULT NULL COMMENT 文件,fafangshijian datetime DEFAULT NULL COMMENT 发放时间,xiaoxibeizhu varchar(200) DEFAULT NULL COMMENT 消息备注,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT1646011271144 DEFAULT CHARSETutf8 COMMENT代办消息;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table daibanxiaoxi
--LOCK TABLES daibanxiaoxi WRITE;
/*!40000 ALTER TABLE daibanxiaoxi DISABLE KEYS */;
INSERT INTO daibanxiaoxi VALUES (51,2022-02-28 01:08:14,用户账号1,用户姓名1,职位1,部门1,部门领导1,,2022-02-28 09:08:14,消息备注1),(52,2022-02-28 01:08:14,用户账号2,用户姓名2,职位2,部门2,部门领导2,,2022-02-28 09:08:14,消息备注2),(53,2022-02-28 01:08:14,用户账号3,用户姓名3,职位3,部门3,部门领导3,,2022-02-28 09:08:14,消息备注3),(54,2022-02-28 01:08:14,用户账号4,用户姓名4,职位4,部门4,部门领导4,,2022-02-28 09:08:14,消息备注4),(55,2022-02-28 01:08:14,用户账号5,用户姓名5,职位5,部门5,部门领导5,,2022-02-28 09:08:14,消息备注5),(56,2022-02-28 01:08:14,用户账号6,用户姓名6,职位6,部门6,部门领导6,,2022-02-28 09:08:14,消息备注6),(1646011271143,2022-02-28 01:21:10,001,张三,普通员工,销售部门,王五,upload/1646011267811.doc,2022-02-28 09:20:47,分公司发给水电费干啥地方噶水电费嘎是);
/*!40000 ALTER TABLE daibanxiaoxi ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table gerenricheng
--DROP TABLE IF EXISTS gerenricheng;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE gerenricheng (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,yonghuzhanghao varchar(200) DEFAULT NULL COMMENT 用户账号,bumen varchar(200) DEFAULT NULL COMMENT 部门,yonghuxingming varchar(200) DEFAULT NULL COMMENT 用户姓名,zhiwei varchar(200) DEFAULT NULL COMMENT 职位,richengneirong longtext COMMENT 日程内容,bianjishijian datetime DEFAULT NULL COMMENT 编辑时间,sfsh varchar(200) DEFAULT 否 COMMENT 是否审核,shhf longtext COMMENT 审核回复,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT1646011224706 DEFAULT CHARSETutf8 COMMENT个人日程;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table gerenricheng
--LOCK TABLES gerenricheng WRITE;
/*!40000 ALTER TABLE gerenricheng DISABLE KEYS */;
INSERT INTO gerenricheng VALUES (61,2022-02-28 01:08:14,用户账号1,部门1,用户姓名1,职位1,日程内容1,2022-02-28 09:08:14,是,),(62,2022-02-28 01:08:14,用户账号2,部门2,用户姓名2,职位2,日程内容2,2022-02-28 09:08:14,是,),(63,2022-02-28 01:08:14,用户账号3,部门3,用户姓名3,职位3,日程内容3,2022-02-28 09:08:14,是,),(64,2022-02-28 01:08:14,用户账号4,部门4,用户姓名4,职位4,日程内容4,2022-02-28 09:08:14,是,),(65,2022-02-28 01:08:14,用户账号5,部门5,用户姓名5,职位5,日程内容5,2022-02-28 09:08:14,是,),(66,2022-02-28 01:08:14,用户账号6,部门6,用户姓名6,职位6,日程内容6,2022-02-28 09:08:14,是,),(1646011224705,2022-02-28 01:20:23,001,销售部门,张三,普通员工,p是地方高等师范公司的公司地方高等师范个第三方感受到分公司的分公司答复img src\http://localhost:8080/springbootm2yt0/upload/1646011223221.jpg\/p,2022-02-28 09:20:14,是,工作不错);
/*!40000 ALTER TABLE gerenricheng ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table token
--DROP TABLE IF EXISTS token;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE token (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,userid bigint(20) NOT NULL COMMENT 用户id,username varchar(100) NOT NULL COMMENT 用户名,tablename varchar(100) DEFAULT NULL COMMENT 表名,role varchar(100) DEFAULT NULL COMMENT 角色,token varchar(200) NOT NULL COMMENT 密码,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 新增时间,expiratedtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 过期时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT5 DEFAULT CHARSETutf8 COMMENTtoken表;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table token
--LOCK TABLES token WRITE;
/*!40000 ALTER TABLE token DISABLE KEYS */;
INSERT INTO token VALUES (1,1,abo,users,管理员,3z9l9yidcrzjprbg5fnhi09atsyz7b3x,2022-02-28 01:16:32,2022-02-28 02:22:41),(2,1646011055525,销售部门,bumen,部门,osxmvl37fu9vtx644y2mn1xfyrz679wh,2022-02-28 01:19:25,2022-02-28 02:25:11),(3,1646011110727,001,yonghu,用户,1lohudgzsr0ghxewfva9129876a44yq3,2022-02-28 01:19:41,2022-02-28 02:25:57),(4,22,用户账号2,yonghu,用户,msf4hwhhw9j44sg6wvotcwe6mi303scl,2022-02-28 01:22:58,2022-02-28 02:22:58);
/*!40000 ALTER TABLE token ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table tongzhizhongxin
--DROP TABLE IF EXISTS tongzhizhongxin;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE tongzhizhongxin (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,yonghuzhanghao varchar(200) DEFAULT NULL COMMENT 用户账号,yonghuxingming varchar(200) DEFAULT NULL COMMENT 用户姓名,bumen varchar(200) DEFAULT NULL COMMENT 部门,zhiwei varchar(200) DEFAULT NULL COMMENT 职位,tongzhineirong longtext COMMENT 通知内容,tongzhiren varchar(200) DEFAULT NULL COMMENT 通知人,tongzhishijian datetime DEFAULT NULL COMMENT 通知时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT1646011415831 DEFAULT CHARSETutf8 COMMENT通知中心;
/*!40101 SET character_set_client saved_cs_client */;--
-- Dumping data for table tongzhizhongxin
--LOCK TABLES tongzhizhongxin WRITE;
/*!40000 ALTER TABLE tongzhizhongxin DISABLE KEYS */;
INSERT INTO tongzhizhongxin VALUES (41,2022-02-28 01:08:14,用户账号1,用户姓名1,部门1,职位1,通知内容1,通知人1,2022-02-28 09:08:14),(42,2022-02-28 01:08:14,用户账号2,用户姓名2,部门2,职位2,通知内容2,通知人2,2022-02-28 09:08:14),(43,2022-02-28 01:08:14,用户账号3,用户姓名3,部门3,职位3,通知内容3,通知人3,2022-02-28 09:08:14),(44,2022-02-28 01:08:14,用户账号4,用户姓名4,部门4,职位4,通知内容4,通知人4,2022-02-28 09:08:14),(45,2022-02-28 01:08:14,用户账号5,用户姓名5,部门5,职位5,通知内容5,通知人5,2022-02-28 09:08:14),(46,2022-02-28 01:08:14,用户账号6,用户姓名6,部门6,职位6,通知内容6,通知人6,2022-02-28 09:08:14),(1646011208932,2022-02-28 01:20:08,用户账号2,用户姓名2,部门2,职位2,p宿管宿管的分公司答复干撒地方感受得分gimg src\http://localhost:8080/springbootm2yt0/upload/1646011207853.jpg\/p,张三,2022-02-28 09:19:52),(1646011326259,2022-02-28 01:22:06,001,张三,销售部门,普通员工,p法撒旦法撒旦发啥的法撒旦法撒旦发img src\http://localhost:8080/springbootm2yt0/upload/1646011325057.jpg\/p,王五 部门经理asd,2022-02-28 09:21:44),(1646011415830,2022-02-28 01:23:35,001,张三,销售部门,普通员工,p色任务而台湾儿童为儿童为儿童沃尔img src\http://localhost:8080/springbootm2yt0/upload/1646011412811.jpg\/p,用户姓名2,2022-02-28 09:23:07);
/*!40000 ALTER TABLE tongzhizhongxin ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table users
--DROP TABLE IF EXISTS users;
/*!40101 SET saved_cs_client character_set_client */;
/*!40101 SET character_set_client utf8 */;
CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,username varchar(100) NOT NULL COMMENT 用户名,password varchar(100) NOT NULL COMMENT 密码,role varchar(100) DEFAULT 管理员 COMMENT 角色,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 新增时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8 COMMENT用户表;
/*!40101 SET character_set_client saved_cs_client */;代码 package com.controller;import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
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 org.springframework.web.bind.annotation.RestController;import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;/*** 登录相关*/
RequestMapping(users)
RestController
public class UserController{Autowiredprivate UserService userService;Autowiredprivate TokenService tokenService;/*** 登录*/IgnoreAuthPostMapping(value /login)public R login(String username, String password, String captcha, HttpServletRequest request) {UserEntity user userService.selectOne(new EntityWrapperUserEntity().eq(username, username));if(usernull || !user.getPassword().equals(password)) {return R.error(账号或密码不正确);}String token tokenService.generateToken(user.getId(),username, users, user.getRole());return R.ok().put(token, token);}/*** 注册*/IgnoreAuthPostMapping(value /register)public R register(RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapperUserEntity().eq(username, user.getUsername())) !null) {return R.error(用户已存在);}userService.insert(user);return R.ok();}/*** 退出*/GetMapping(value logout)public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok(退出成功);}/*** 密码重置*/IgnoreAuthRequestMapping(value /resetPass)public R resetPass(String username, HttpServletRequest request){UserEntity user userService.selectOne(new EntityWrapperUserEntity().eq(username, username));if(usernull) {return R.error(账号不存在);}user.setPassword(123456);userService.update(user,null);return R.ok(密码已重置为123456);}/*** 列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,UserEntity user){EntityWrapperUserEntity ew new EntityWrapperUserEntity();PageUtils page userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/list)public R list( UserEntity user){EntityWrapperUserEntity ew new EntityWrapperUserEntity();ew.allEq(MPUtil.allEQMapPre( user, user)); return R.ok().put(data, userService.selectListView(ew));}/*** 信息*/RequestMapping(/info/{id})public R info(PathVariable(id) String id){UserEntity user userService.selectById(id);return R.ok().put(data, user);}/*** 获取用户的session用户信息*/RequestMapping(/session)public R getCurrUser(HttpServletRequest request){Long id (Long)request.getSession().getAttribute(userId);UserEntity user userService.selectById(id);return R.ok().put(data, user);}/*** 保存*/PostMapping(/save)public R save(RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapperUserEntity().eq(username, user.getUsername())) !null) {return R.error(用户已存在);}userService.insert(user);return R.ok();}/*** 修改*/RequestMapping(/update)public R update(RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);UserEntity u userService.selectOne(new EntityWrapperUserEntity().eq(username, user.getUsername()));if(u!null u.getId()!user.getId() u.getUsername().equals(user.getUsername())) {return R.error(用户名已存在。);}userService.updateById(user);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}
论文目录
1 绪 论 1 1.1 课题背景 2 1.2 课题研究的意义 3 1.3 系统实现的功能 4 1.4 课题研究现状 5 2系统相关技术 6 2.1 Java语言简介 7 2.2 mysql数据库介绍 8 2.3 MySQL环境配置 9 2.4 B/S架构 10 2.5 Springboot框架 11 3系统需求分析 12 3.1系统功能 13 3.2可行性研究 14 3.2.1 经济可行性 15 3.2.2 技术可行性 16 3.2.3 运行可行性 17 3.2.4 时间可行性 18 3.3系统业务过程分析 19 3.4系统用例图 20 4系统设计 21 4.1数据库设计 22 4.2系统整体设计 23 4.2.1 系统设计思想 24 4.2.2系统流程图 25 5系统详细设计 26 5.1管理员功能模块 27 5.2用户功能模块 29 5.3部门销售部门功能模块 29 6系统测试 30 7总结与心得体会 31 7.1 总结 32 7.2 心得体会 33 参考文献 34 致谢 35
订阅经典源码专栏 Java项目精品实战案例《500套》 源码获取
欢迎大家点赞、收藏、关注、评论啦 、查看获取联系方式