Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2f4ff08e21 |
49
README.md
@@ -1,23 +1,4 @@
|
||||
<p></p>
|
||||
<p></p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://www.mindskip.net" target="_blank">
|
||||
<img src="doc/image/logo/1.png" height="80"/>
|
||||
<a/>
|
||||
</p>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://gitee.com/mindskip/xzs-mysql)
|
||||
[](https://gitee.com/mindskip/xzs-mysql)
|
||||
[](https://github.com/mindskip/xzs-mysql)
|
||||
[](https://github.com/mindskip/xzs-mysql)
|
||||
[](https://gitee.com/mindskip/xzs-mysql/blob/master/LICENSE)
|
||||
|
||||
</div>
|
||||
|
||||
# 学之思在线考试系统 - Mysql版
|
||||
# 学之思在线考试系统
|
||||
|
||||
## 项目介绍
|
||||
|
||||
@@ -31,11 +12,11 @@
|
||||
|
||||
### 演示地址
|
||||
|
||||
* 官网:[https://www.mindskip.net](https://www.mindskip.net)
|
||||
* 学之思考试系统:[https://www.mindskip.net/xzs.html](https://www.mindskip.net/xzs.html)
|
||||
* 思多多智能考试平台:[https://www.mindskip.net/sdd.html](https://www.mindskip.net/sdd.html)
|
||||
* 维多多培训考试系统:[https://www.mindskip.net/wdd.html](https://www.mindskip.net/wdd.html)
|
||||
* 学多多考试系统:[https://www.mindskip.net/xdd.html](https://www.mindskip.net/xdd.html)
|
||||
* 官网:[http://www.mindskip.net](http://www.mindskip.net)
|
||||
* 学之思考试系统:[http://www.mindskip.net/xzs.html](http://www.mindskip.net/xzs.html)
|
||||
* 思多多智能考试平台:[http://www.mindskip.net/sdd.html](http://www.mindskip.net/sdd.html)
|
||||
* 维多多培训考试系统:[http://www.mindskip.net/wdd.html](http://www.mindskip.net/wdd.html)
|
||||
* 学多多考试系统:[http://www.mindskip.net/xdd.html](http://www.mindskip.net/xdd.html)
|
||||
|
||||
### 学之思仓库版本地址
|
||||
|
||||
@@ -46,13 +27,13 @@
|
||||
|
||||
### 学之思交流群(加群获取数据库脚本)
|
||||
|
||||
* QQ交流群七:`873533715`
|
||||
* 交流六群:`593529956`
|
||||
* QQ:`2693073475`
|
||||
* 微信:`alvis-u`
|
||||
|
||||
### 开发部署教程
|
||||
|
||||
* [https://mindskip.gitee.io/xzs-mysql](https://mindskip.gitee.io/xzs-mysql)
|
||||
* [http://mindskip.gitee.io/uexam/](http://mindskip.gitee.io/uexam/)
|
||||
|
||||
### 学生系统功能
|
||||
|
||||
@@ -69,11 +50,11 @@
|
||||
|
||||
* 登录: 账号为: admin/123456
|
||||
* 主页: 包含了试卷、题目、做卷数、做题数、用户活跃度的统计功能,活跃度和做题数是按月统计
|
||||
* 用户管理: 对不同角色 学生、管理员 的增删改查管理功能
|
||||
* 用户管理: 对不同角色 学生、教师、管理员 的增删改查管理功能
|
||||
* 卷题管理:
|
||||
1. 试卷列表:试卷的增删改查,新增包含选择学科、试卷类型、试卷名称、考试时间,试卷内容包含添加大标题,然后添加题目到此试卷中,组成一套完整的试卷
|
||||
2. 题目列表:题目的增删改查,目前题型包含单选题、多选题、判断题、填空题、简单题,支持图片、公式等。
|
||||
* 任务管理:对任务进行修改
|
||||
* 任务管理:对任务进行修改
|
||||
* 教育管理:对不同年级的学科进行增删改查
|
||||
* 消息中心:可以对多个用户进行消息发送
|
||||
* 日志中心:用户的基本操作进行日志记录,了解用户使用过情况
|
||||
@@ -82,9 +63,13 @@
|
||||
|
||||
* 用户登录登出功能,登录会自动绑定微信账号,登出会解绑
|
||||
* 首页包含任务中心、固定试卷、时段试卷,和web端保持一致
|
||||
* 试卷模块:固定试卷和时段试卷的分页查询,下拉加载更多、上拉刷新当前数据
|
||||
* 记录模块:考试结果的分页,包含了试卷基本信息
|
||||
* 我的模块:包含个人资料的修改、个人动态、消息中心模块
|
||||
* 试卷模块,固定试卷和时段试卷的分页查询,下拉加载更多,上拉刷新当前数据
|
||||
* 记录模块,考试结果的分页,包含了试卷基本信息
|
||||
* 我的模块,包含个人资料的修改,个人动态,消息中心模块
|
||||
|
||||
### 软件架构图
|
||||
|
||||

|
||||
|
||||
### 系统展示
|
||||
|
||||
|
||||
BIN
doc/frame/架构图.png
Normal file
|
After Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 551 KiB |
BIN
doc/image/frame/2.png
Normal file
|
After Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 36 KiB |
@@ -10,10 +10,14 @@
|
||||
|
||||
禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负
|
||||
|
||||
## 学之思仓库地址
|
||||
## 学之思仓库版本地址
|
||||
|
||||
gitee - postgresql :[https://gitee.com/mindskip/uexam](https://gitee.com/mindskip/uexam)
|
||||
|
||||
gitee - mysql :[https://gitee.com/mindskip/xzs-mysql](https://gitee.com/mindskip/xzs-mysql)
|
||||
|
||||
github - postgresql :[https://github.com/mindskip/xzs](https://github.com/mindskip/xzs)
|
||||
|
||||
github - mysql :[https://github.com/mindskip/xzs-mysql](https://github.com/mindskip/xzs-mysql)
|
||||
|
||||
## 运行环境
|
||||
@@ -23,45 +27,41 @@ github - mysql :[https://github.com/mindskip/xzs-mysql](https://github.com/min
|
||||
| 操作系统 | Windows / Linux |
|
||||
| Jdk | 8 |
|
||||
| Redis | 6.0 |
|
||||
| Mysql | 8.0 |
|
||||
| PostgreSql / Mysql | 12.0 / 8.0 |
|
||||
|
||||
## 技术栈列表
|
||||
|
||||
### 后台系统
|
||||
|
||||
* spring-boot 2.1.6.RELEASE
|
||||
* spring-boot-security 用户登录验证
|
||||
* undertow web容器
|
||||
* mysql 最流行的开源数据库
|
||||
* spring-boot-security 用户登录验证
|
||||
* undertow web容器
|
||||
* postgresql/mysql 优秀的开源数据库
|
||||
* redis 缓存,提升系统性能
|
||||
* mybatis 数据库中间件
|
||||
* hikari 速度最快的数据库连接池
|
||||
* 七牛云存储 分布式文件存储中心
|
||||
* 七牛云存储 目前10G内免费
|
||||
|
||||
### 前台系统
|
||||
|
||||
* vue 采用新版,使用了vue-cli4搭建的系统,减少大量配置文件
|
||||
* element-ui 最流行的vue UI框架
|
||||
* vue-element-admin 深度定制版
|
||||
* Vue.js 采用新版,使用了vue-cli3搭建的系统,减少大量配置文件
|
||||
* element-ui 最流行的vue组件,采用的最新版
|
||||
* vue-element-admin 优化和扩展版本
|
||||
* echarts 图表统计
|
||||
* ueditor 深度定制版
|
||||
* ueditor 优化版
|
||||
|
||||
### 微信小程序
|
||||
|
||||
* iView 主题样式
|
||||
|
||||
## 架构图
|
||||
|
||||

|
||||
|
||||
## 项目开发
|
||||
|
||||
### 开发说明
|
||||
|
||||
* redis 安装
|
||||
* 进群获取到数据库脚本,创建表初始化数据,数据库名称为xzs
|
||||
* 代码分为 mysql版本,配合相应的数据库使用
|
||||
* 安装mysql ,导入xzs-mysql.sql脚本。
|
||||
* 代码分为 mysql / postgresql 2个版本,配合响应的数据库使用
|
||||
* 安装mysql / postgresql ,数据库二选一即可 ,导入sql脚本。mysql导入xzs-mysql.sql脚本。postgresql导入xzx-postgresql.sql脚本
|
||||
* 学生端默认账号:student / 123456
|
||||
* 管理端默认账号:admin / 123456
|
||||
|
||||
@@ -69,10 +69,9 @@ github - mysql :[https://github.com/mindskip/xzs-mysql](https://github.com/min
|
||||
|
||||
* /uexam/source/xzs为后台代码,建议使用IntelliJ IDEA打开
|
||||
* 打开application-dev.yml文件中,配置好postgesql/mysql、redis的服务地址
|
||||
* 去七牛云官网申请好云存储账号,修改application.yml中的qn相关的配置
|
||||
* 启动后台程序,默认端口为8000。
|
||||
* 学生系统地址:<http://ip:8000/student>
|
||||
* 管理端地址:<http://ip:8000/admin>
|
||||
* 学生系统地址:<http://localhost:8000/student>
|
||||
* 管理端地址:<http://localhost:8000/admin>
|
||||
|
||||
### 前端开发
|
||||
|
||||
@@ -122,7 +121,7 @@ npm run build
|
||||
* 执行下列命令,运行程序
|
||||
|
||||
```java
|
||||
nohup java -Duser.timezone=Asia/Shanghai -jar -Dspring.profiles.active=prod xzs-3.1.0.jar > start1.log 2>&1 &
|
||||
nohup java -Duser.timezone=Asia/Shanghai -jar -Dspring.profiles.active=prod xzs-3.0.7.jar > start1.log 2>&1 &
|
||||
```
|
||||
|
||||
### 前后端分离部署
|
||||
@@ -143,7 +142,7 @@ server {
|
||||
index index.html;
|
||||
}
|
||||
location /api/ {
|
||||
proxy_pass http://localhost:8000;
|
||||
proxy_pass https://localhost:8000;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
BIN
docs/favicon.ico
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
docs/favicon.png
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,41 +1,36 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>学之思开发部署教程</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta name="description" content="Description">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<link rel="stylesheet" href="//unpkg.com/docsify/lib/themes/vue.css">
|
||||
<link rel="stylesheet" href="xzs.css">
|
||||
<link rel="shortcut icon" href="favicon.png">
|
||||
<meta charset="UTF-8">
|
||||
<title>学之思开发部署教程</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta name="description" content="Description">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<link rel="stylesheet" href="//unpkg.com/docsify/lib/themes/vue.css">
|
||||
<link rel="stylesheet" href="xzs.css">
|
||||
<link rel="shortcut icon" href="favicon.ico">
|
||||
</head>
|
||||
|
||||
<body style="min-width: 1024px;">
|
||||
<nav class="head">
|
||||
<div class="head-logo">
|
||||
<a href="https://www.mindskip.net" target="_blank">
|
||||
<img src="logo.png" />
|
||||
</a>
|
||||
</div>
|
||||
<div class="head-link">
|
||||
<a href="https://www.mindskip.net/" target="_blank">官网</a>
|
||||
<a href="https://www.mindskip.net/sdd.html" target="_blank">思多多</a>
|
||||
<a href="https://www.mindskip.net/wdd.html" target="_blank">维多多</a>
|
||||
<a href="https://www.mindskip.net/xdd.html" target="_blank">学多多</a>
|
||||
<a href="https://www.mindskip.net/xzs.html" target="_blank">学之思</a>
|
||||
<a href="https://www.mindskip.net/buy.html" target="_blank">商业购买</a>
|
||||
</div>
|
||||
</nav>
|
||||
<div id="app"></div>
|
||||
<script>
|
||||
window.$docsify = {
|
||||
name: '学之思开发部署教程',
|
||||
coverpage: false
|
||||
}
|
||||
</script>
|
||||
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
|
||||
<nav class="head">
|
||||
<div class="head-logo">
|
||||
<img src="http://www.mindskip.net/images/icon/logo-white.png"/>
|
||||
</div>
|
||||
<div class="head-link">
|
||||
<a href="https:www.mindskip.net" target="_blank">官网</a>
|
||||
<a href="https:www.mindskip.net/sdd.html" target="_blank">思多多</a>
|
||||
<a href="https:www.mindskip.net/wdd.html" target="_blank">维多多</a>
|
||||
<a href="https:www.mindskip.net/xdd.html" target="_blank">学多多</a>
|
||||
<a href="https:www.mindskip.net/xzs.html" target="_blank">学之思</a>
|
||||
<a href="https:www.mindskip.net/buy.html" target="_blank">商业购买</a>
|
||||
</div>
|
||||
</nav>
|
||||
<div id="app"></div>
|
||||
<script>
|
||||
window.$docsify = {
|
||||
name: '学之思开发部署教程',
|
||||
coverpage: false
|
||||
}
|
||||
</script>
|
||||
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
|
||||
BIN
docs/logo.png
|
Before Width: | Height: | Size: 5.0 KiB |
44
docs/xzs.css
@@ -1,39 +1,37 @@
|
||||
table th {
|
||||
min-width: 200px;
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
table td {
|
||||
text-align: center;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.head {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
margin: 0px !important;
|
||||
line-height: 58px;
|
||||
padding: 10px 20px;
|
||||
background-color: #f8f8f8;
|
||||
flex-wrap: wrap;
|
||||
position: fixed !important;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
width: calc(100% - 300px);
|
||||
margin: 0px !important;
|
||||
line-height: 58px;
|
||||
padding: 10px 20px;
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
|
||||
.head-logo {
|
||||
height: 58px;
|
||||
width: 182px;
|
||||
line-height: 78px;
|
||||
.head-logo{
|
||||
height: 58px;
|
||||
width: 182px;
|
||||
}
|
||||
|
||||
.head-link {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
flex-wrap: wrap;
|
||||
.head-link{
|
||||
flex: 1;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.head-link a {
|
||||
margin-left: 25px;
|
||||
.head-link a{
|
||||
margin-left: 25px;
|
||||
}
|
||||
|
||||
.content {
|
||||
padding-top: 80px !important;
|
||||
.content{
|
||||
padding-top: 80px !important;
|
||||
}
|
||||
1682
source/vue/xzs-admin/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "xzs-admin",
|
||||
"version": "3.2.0",
|
||||
"version": "3.0.8",
|
||||
"author": "武汉思维跳跃科技有限公司",
|
||||
"description": "学之思管理系统",
|
||||
"license": "AGPL-3.0",
|
||||
@@ -16,22 +16,22 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "^0.19.0",
|
||||
"core-js": "^3.8.3",
|
||||
"element-ui": "^2.15.0",
|
||||
"core-js": "^3.7.0",
|
||||
"element-ui": "^2.14.1",
|
||||
"js-cookie": "2.2.0",
|
||||
"normalize.css": "8.0.1",
|
||||
"nprogress": "0.2.0",
|
||||
"vue": "^2.6.10",
|
||||
"vue-count-to": "^1.0.13",
|
||||
"vue-router": "^3.4.9",
|
||||
"vuex": "^3.6.0"
|
||||
"vuex": "^3.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "^4.5.10",
|
||||
"@vue/cli-plugin-eslint": "^4.5.10",
|
||||
"@vue/cli-plugin-router": "^4.5.10",
|
||||
"@vue/cli-plugin-vuex": "^4.5.10",
|
||||
"@vue/cli-service": "^4.5.10",
|
||||
"@vue/cli-plugin-babel": "^4.5.9",
|
||||
"@vue/cli-plugin-eslint": "^4.5.9",
|
||||
"@vue/cli-plugin-router": "^4.5.9",
|
||||
"@vue/cli-plugin-vuex": "^4.5.9",
|
||||
"@vue/cli-service": "^4.5.9",
|
||||
"@vue/eslint-config-standard": "^4.0.0",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"eslint": "^5.16.0",
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</div>
|
||||
<app-main />
|
||||
<div class="foot-copyright">
|
||||
<span>Copyright © 2021 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
<span>Copyright © 2020 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
</div>
|
||||
<back-to-top :visibility-height="100" :back-position="0" transition-name="fade" ref="backTop"/>
|
||||
</div>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
**/
|
||||
|
||||
/* theme color */
|
||||
$--color-primary: #13C2C2;
|
||||
$--color-primary: #1890ff;
|
||||
$--color-success: #13ce66;
|
||||
$--color-warning: #FFBA00;
|
||||
$--color-danger: #ff4949;
|
||||
|
||||
@@ -66,12 +66,6 @@ export default {
|
||||
},
|
||||
resetForm () {
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
name: '',
|
||||
level: 1,
|
||||
levelName: ''
|
||||
}
|
||||
},
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
},
|
||||
|
||||
@@ -239,16 +239,6 @@ export default {
|
||||
},
|
||||
resetForm () {
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
level: null,
|
||||
subjectId: null,
|
||||
paperType: 1,
|
||||
limitDateTime: [],
|
||||
name: '',
|
||||
suggestTime: null,
|
||||
titleItems: []
|
||||
}
|
||||
},
|
||||
...mapActions('exam', { initSubject: 'initSubject' }),
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
|
||||
@@ -208,22 +208,7 @@ export default {
|
||||
this.questionShow.question = this.form
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
questionType: 4,
|
||||
gradeLevel: null,
|
||||
subjectId: null,
|
||||
title: '',
|
||||
items: [
|
||||
],
|
||||
analyze: '',
|
||||
correct: '',
|
||||
score: '',
|
||||
difficult: 0
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
...mapActions('exam', { initSubject: 'initSubject' }),
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
|
||||
@@ -195,27 +195,7 @@ export default {
|
||||
this.questionShow.question = this.form
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
questionType: 2,
|
||||
gradeLevel: null,
|
||||
subjectId: null,
|
||||
title: '',
|
||||
items: [
|
||||
{ id: null, prefix: 'A', content: '' },
|
||||
{ id: null, prefix: 'B', content: '' },
|
||||
{ id: null, prefix: 'C', content: '' },
|
||||
{ id: null, prefix: 'D', content: '' }
|
||||
],
|
||||
analyze: '',
|
||||
correct: '',
|
||||
correctArray: [],
|
||||
score: '',
|
||||
difficult: 0
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
...mapActions('exam', { initSubject: 'initSubject' }),
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
|
||||
@@ -161,21 +161,7 @@ export default {
|
||||
})
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
questionType: 5,
|
||||
gradeLevel: null,
|
||||
subjectId: null,
|
||||
title: '',
|
||||
items: [],
|
||||
analyze: '',
|
||||
correct: '',
|
||||
score: '',
|
||||
difficult: 0
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
levelChange () {
|
||||
this.form.subjectId = null
|
||||
|
||||
@@ -185,26 +185,7 @@ export default {
|
||||
})
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
questionType: 1,
|
||||
gradeLevel: null,
|
||||
subjectId: null,
|
||||
title: '',
|
||||
items: [
|
||||
{ prefix: 'A', content: '' },
|
||||
{ prefix: 'B', content: '' },
|
||||
{ prefix: 'C', content: '' },
|
||||
{ prefix: 'D', content: '' }
|
||||
],
|
||||
analyze: '',
|
||||
correct: '',
|
||||
score: '',
|
||||
difficult: 0
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
levelChange () {
|
||||
this.form.subjectId = null
|
||||
|
||||
@@ -173,21 +173,6 @@ export default {
|
||||
},
|
||||
resetForm () {
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
questionType: 3,
|
||||
gradeLevel: null,
|
||||
subjectId: null,
|
||||
title: '',
|
||||
items: [
|
||||
{ id: null, prefix: 'A', content: '是' },
|
||||
{ id: null, prefix: 'B', content: '否' }
|
||||
],
|
||||
analyze: '',
|
||||
correct: '',
|
||||
score: '',
|
||||
difficult: 0
|
||||
}
|
||||
},
|
||||
levelChange () {
|
||||
this.form.subjectId = null
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
</el-form>
|
||||
|
||||
<div class="account-foot-copyright">
|
||||
<span>Copyright © 2021 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
<span>Copyright © 2020 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -90,11 +90,8 @@ export default {
|
||||
},
|
||||
resetForm () {
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
title: '',
|
||||
content: '',
|
||||
receiveUserIds: []
|
||||
}
|
||||
this.options = []
|
||||
this.form.receiveUserIds = []
|
||||
},
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
}
|
||||
|
||||
@@ -175,7 +175,6 @@ export default {
|
||||
})
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
@@ -183,7 +182,6 @@ export default {
|
||||
title: '',
|
||||
paperItems: []
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
subjectFormatter (row, column, cellValue, index) {
|
||||
return this.subjectEnumFormat(cellValue)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出生日期:">
|
||||
<el-date-picker v-model="form.birthDay" value-format="yyyy-MM-dd" type="date" placeholder="选择日期"/>
|
||||
<el-date-picker v-model="form.birthDay" type="date" placeholder="选择日期"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机:">
|
||||
<el-input v-model="form.phone"></el-input>
|
||||
@@ -104,7 +104,6 @@ export default {
|
||||
})
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
@@ -118,7 +117,6 @@ export default {
|
||||
birthDay: null,
|
||||
phone: null
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
},
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出生日期:">
|
||||
<el-date-picker v-model="form.birthDay" type="date" value-format="yyyy-MM-dd" placeholder="选择日期" />
|
||||
<el-date-picker v-model="form.birthDay" type="date" placeholder="选择日期" />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机:">
|
||||
<el-input v-model="form.phone"></el-input>
|
||||
@@ -113,7 +113,6 @@ export default {
|
||||
})
|
||||
},
|
||||
resetForm () {
|
||||
let lastId = this.form.id
|
||||
this.$refs['form'].resetFields()
|
||||
this.form = {
|
||||
id: null,
|
||||
@@ -128,7 +127,6 @@ export default {
|
||||
phone: null,
|
||||
userLevel: null
|
||||
}
|
||||
this.form.id = lastId
|
||||
},
|
||||
...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
|
||||
},
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出生日期:">
|
||||
<el-date-picker v-model="form.birthDay" value-format="yyyy-MM-dd" type="date" placeholder="选择日期" />
|
||||
<el-date-picker v-model="form.birthDay" type="date" placeholder="选择日期" />
|
||||
</el-form-item>
|
||||
<el-form-item label="手机:">
|
||||
<el-input v-model="form.phone"></el-input>
|
||||
|
||||
1690
source/vue/xzs-student/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "xzs-student",
|
||||
"version": "3.2.0",
|
||||
"version": "3.0.8",
|
||||
"author": "武汉思维跳跃科技有限公司",
|
||||
"description": "学之思考试系统",
|
||||
"license": "AGPL-3.0",
|
||||
@@ -16,21 +16,21 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "^0.19.0",
|
||||
"core-js": "^3.8.3",
|
||||
"element-ui": "^2.15.0",
|
||||
"core-js": "^3.7.0",
|
||||
"element-ui": "^2.14.1",
|
||||
"js-cookie": "2.2.0",
|
||||
"normalize.css": "8.0.1",
|
||||
"nprogress": "0.2.0",
|
||||
"vue": "^2.6.10",
|
||||
"vue-router": "^3.4.9",
|
||||
"vuex": "^3.6.0"
|
||||
"vuex": "^3.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "^4.5.10",
|
||||
"@vue/cli-plugin-eslint": "^4.5.10",
|
||||
"@vue/cli-plugin-router": "^4.5.10",
|
||||
"@vue/cli-plugin-vuex": "^4.5.10",
|
||||
"@vue/cli-service": "^4.5.10",
|
||||
"@vue/cli-plugin-babel": "^4.5.9",
|
||||
"@vue/cli-plugin-eslint": "^4.5.9",
|
||||
"@vue/cli-plugin-router": "^4.5.9",
|
||||
"@vue/cli-plugin-vuex": "^4.5.9",
|
||||
"@vue/cli-service": "^4.5.9",
|
||||
"@vue/eslint-config-standard": "^4.0.0",
|
||||
"babel-eslint": "^10.0.3",
|
||||
"eslint": "^5.16.0",
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
</div>
|
||||
</el-footer>
|
||||
<div class="foot-copyright">
|
||||
<span>Copyright © 2021 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
<span>Copyright © 2020 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
</div>
|
||||
</el-container>
|
||||
</template>
|
||||
|
||||
@@ -89,7 +89,7 @@ html {
|
||||
.footer-main {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
margin-right: 70px;
|
||||
margin-right: 110px;
|
||||
|
||||
.footer-main-link {
|
||||
display: block;
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="account-foot-copyright">
|
||||
<span>Copyright © 2021 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
<span>Copyright © 2020 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="account-foot-copyright">
|
||||
<span>Copyright © 2021 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
<span>Copyright © 2020 武汉思维跳跃科技有限公司 版权所有</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出生日期:">
|
||||
<el-date-picker v-model="form.birthDay" value-format="yyyy-MM-dd" type="date" placeholder="选择日期"/>
|
||||
<el-date-picker v-model="form.birthDay" type="date" placeholder="选择日期"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机:">
|
||||
<el-input v-model="form.phone"></el-input>
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
|
||||
<groupId>com.mindskip</groupId>
|
||||
<artifactId>xzs</artifactId>
|
||||
<version>3.2.0</version>
|
||||
<version>3.0.8</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>xzs</name>
|
||||
<description>学之思考试系统 - 武汉思维跳跃科技有限公司</description>
|
||||
<description>学之思考试系统 - 武汉思维跳跃科技有限公司</description>
|
||||
|
||||
|
||||
<properties>
|
||||
@@ -118,6 +118,13 @@
|
||||
<version>2.3.3</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<version>1.18.8</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
|
||||
@@ -1,29 +1,15 @@
|
||||
package com.mindskip.xzs.base;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BasePage {
|
||||
|
||||
private Integer pageIndex;
|
||||
|
||||
private Integer pageSize;
|
||||
|
||||
public Integer getPageIndex() {
|
||||
return pageIndex;
|
||||
}
|
||||
|
||||
public void setPageIndex(Integer pageIndex) {
|
||||
this.pageIndex = pageIndex;
|
||||
}
|
||||
|
||||
public Integer getPageSize() {
|
||||
return pageSize;
|
||||
}
|
||||
|
||||
public void setPageSize(Integer pageSize) {
|
||||
this.pageSize = pageSize;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,25 +1,9 @@
|
||||
package com.mindskip.xzs.configuration.property;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class PasswordKeyConfig {
|
||||
private String publicKey;
|
||||
|
||||
private String privateKey;
|
||||
|
||||
public String getPublicKey() {
|
||||
return publicKey;
|
||||
}
|
||||
|
||||
public void setPublicKey(String publicKey) {
|
||||
this.publicKey = publicKey;
|
||||
}
|
||||
|
||||
public String getPrivateKey() {
|
||||
return privateKey;
|
||||
}
|
||||
|
||||
public void setPrivateKey(String privateKey) {
|
||||
this.privateKey = privateKey;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,46 +1,14 @@
|
||||
package com.mindskip.xzs.configuration.property;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class QnConfig {
|
||||
|
||||
private String url;
|
||||
private String bucket;
|
||||
private String accessKey;
|
||||
private String secretKey;
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public String getBucket() {
|
||||
return bucket;
|
||||
}
|
||||
|
||||
public void setBucket(String bucket) {
|
||||
this.bucket = bucket;
|
||||
}
|
||||
|
||||
public String getAccessKey() {
|
||||
return accessKey;
|
||||
}
|
||||
|
||||
public void setAccessKey(String accessKey) {
|
||||
this.accessKey = accessKey;
|
||||
}
|
||||
|
||||
public String getSecretKey() {
|
||||
return secretKey;
|
||||
}
|
||||
|
||||
public void setSecretKey(String secretKey) {
|
||||
this.secretKey = secretKey;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.mindskip.xzs.configuration.property;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
import java.util.List;
|
||||
@@ -9,43 +10,10 @@ import java.util.List;
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
@ConfigurationProperties(prefix = "system")
|
||||
@Data
|
||||
public class SystemConfig {
|
||||
|
||||
private PasswordKeyConfig pwdKey;
|
||||
private List<String> securityIgnoreUrls;
|
||||
private WxConfig wx;
|
||||
private QnConfig qn;
|
||||
|
||||
public PasswordKeyConfig getPwdKey() {
|
||||
return pwdKey;
|
||||
}
|
||||
|
||||
public void setPwdKey(PasswordKeyConfig pwdKey) {
|
||||
this.pwdKey = pwdKey;
|
||||
}
|
||||
|
||||
public List<String> getSecurityIgnoreUrls() {
|
||||
return securityIgnoreUrls;
|
||||
}
|
||||
|
||||
public void setSecurityIgnoreUrls(List<String> securityIgnoreUrls) {
|
||||
this.securityIgnoreUrls = securityIgnoreUrls;
|
||||
}
|
||||
|
||||
public WxConfig getWx() {
|
||||
return wx;
|
||||
}
|
||||
|
||||
public void setWx(WxConfig wx) {
|
||||
this.wx = wx;
|
||||
}
|
||||
|
||||
public QnConfig getQn() {
|
||||
return qn;
|
||||
}
|
||||
|
||||
public void setQn(QnConfig qn) {
|
||||
this.qn = qn;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,47 +1,14 @@
|
||||
package com.mindskip.xzs.configuration.property;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class WxConfig {
|
||||
|
||||
|
||||
private String appid;
|
||||
private String secret;
|
||||
private Duration tokenToLive;
|
||||
private List<String> securityIgnoreUrls;
|
||||
|
||||
public String getAppid() {
|
||||
return appid;
|
||||
}
|
||||
|
||||
public void setAppid(String appid) {
|
||||
this.appid = appid;
|
||||
}
|
||||
|
||||
public String getSecret() {
|
||||
return secret;
|
||||
}
|
||||
|
||||
public void setSecret(String secret) {
|
||||
this.secret = secret;
|
||||
}
|
||||
|
||||
public Duration getTokenToLive() {
|
||||
return tokenToLive;
|
||||
}
|
||||
|
||||
public void setTokenToLive(Duration tokenToLive) {
|
||||
this.tokenToLive = tokenToLive;
|
||||
}
|
||||
|
||||
public List<String> getSecurityIgnoreUrls() {
|
||||
return securityIgnoreUrls;
|
||||
}
|
||||
|
||||
public void setSecurityIgnoreUrls(List<String> securityIgnoreUrls) {
|
||||
this.securityIgnoreUrls = securityIgnoreUrls;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.mindskip.xzs.configuration.spring.mvc;
|
||||
|
||||
import com.mindskip.xzs.configuration.property.SystemConfig;
|
||||
import com.mindskip.xzs.configuration.spring.wx.TokenHandlerInterceptor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.web.servlet.config.annotation.*;
|
||||
|
||||
@@ -14,17 +14,12 @@ import java.util.List;
|
||||
*/
|
||||
|
||||
@Configuration
|
||||
@AllArgsConstructor
|
||||
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
|
||||
|
||||
private final TokenHandlerInterceptor tokenHandlerInterceptor;
|
||||
private final SystemConfig systemConfig;
|
||||
|
||||
@Autowired
|
||||
public WebMvcConfiguration(TokenHandlerInterceptor tokenHandlerInterceptor, SystemConfig systemConfig) {
|
||||
this.tokenHandlerInterceptor = tokenHandlerInterceptor;
|
||||
this.systemConfig = systemConfig;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addViewControllers(ViewControllerRegistry registry) {
|
||||
registry.addRedirectViewController("/", "/student/index.html");
|
||||
|
||||
@@ -1,37 +1,14 @@
|
||||
package com.mindskip.xzs.configuration.spring.security;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class AuthenticationBean {
|
||||
private String userName;
|
||||
private String password;
|
||||
private boolean remember;
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public void setUserName(String userName) {
|
||||
this.userName = userName;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
return password;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public boolean isRemember() {
|
||||
return remember;
|
||||
}
|
||||
|
||||
public void setRemember(boolean remember) {
|
||||
this.remember = remember;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import com.mindskip.xzs.base.SystemCode;
|
||||
import com.mindskip.xzs.domain.UserEventLog;
|
||||
import com.mindskip.xzs.event.UserEvent;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.userdetails.User;
|
||||
@@ -23,17 +23,12 @@ import java.util.Date;
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class RestAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
|
||||
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public RestAuthenticationSuccessHandler(ApplicationEventPublisher eventPublisher, UserService userService) {
|
||||
this.eventPublisher = eventPublisher;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
|
||||
User springUser = (User) authentication.getPrincipal();
|
||||
|
||||
@@ -5,7 +5,7 @@ import com.mindskip.xzs.domain.User;
|
||||
import com.mindskip.xzs.domain.UserEventLog;
|
||||
import com.mindskip.xzs.event.UserEvent;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.web.authentication.logout.SimpleUrlLogoutSuccessHandler;
|
||||
@@ -21,17 +21,12 @@ import java.util.Date;
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class RestLogoutSuccessHandler extends SimpleUrlLogoutSuccessHandler {
|
||||
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public RestLogoutSuccessHandler(ApplicationEventPublisher eventPublisher, UserService userService) {
|
||||
this.eventPublisher = eventPublisher;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) {
|
||||
org.springframework.security.core.userdetails.User springUser = (org.springframework.security.core.userdetails.User) authentication.getPrincipal();
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.mindskip.xzs.configuration.spring.security;
|
||||
import com.mindskip.xzs.configuration.property.CookieConfig;
|
||||
import com.mindskip.xzs.configuration.property.SystemConfig;
|
||||
import com.mindskip.xzs.domain.enums.RoleEnum;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
@@ -27,6 +27,7 @@ import java.util.List;
|
||||
public class SecurityConfigurer {
|
||||
|
||||
@Configuration
|
||||
@AllArgsConstructor
|
||||
public static class FormLoginWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdapter {
|
||||
|
||||
private final SystemConfig systemConfig;
|
||||
@@ -38,18 +39,6 @@ public class SecurityConfigurer {
|
||||
private final RestLogoutSuccessHandler restLogoutSuccessHandler;
|
||||
private final RestAccessDeniedHandler restAccessDeniedHandler;
|
||||
|
||||
@Autowired
|
||||
public FormLoginWebSecurityConfigurerAdapter(SystemConfig systemConfig, LoginAuthenticationEntryPoint restAuthenticationEntryPoint, RestAuthenticationProvider restAuthenticationProvider, RestDetailsServiceImpl formDetailsService, RestAuthenticationSuccessHandler restAuthenticationSuccessHandler, RestAuthenticationFailureHandler restAuthenticationFailureHandler, RestLogoutSuccessHandler restLogoutSuccessHandler, RestAccessDeniedHandler restAccessDeniedHandler) {
|
||||
this.systemConfig = systemConfig;
|
||||
this.restAuthenticationEntryPoint = restAuthenticationEntryPoint;
|
||||
this.restAuthenticationProvider = restAuthenticationProvider;
|
||||
this.formDetailsService = formDetailsService;
|
||||
this.restAuthenticationSuccessHandler = restAuthenticationSuccessHandler;
|
||||
this.restAuthenticationFailureHandler = restAuthenticationFailureHandler;
|
||||
this.restLogoutSuccessHandler = restLogoutSuccessHandler;
|
||||
this.restAccessDeniedHandler = restAccessDeniedHandler;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param http http
|
||||
* @throws Exception exception
|
||||
|
||||
@@ -2,22 +2,18 @@ package com.mindskip.xzs.context;
|
||||
|
||||
import com.mindskip.xzs.domain.User;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.context.request.RequestAttributes;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class WebContext {
|
||||
private static final String USER_ATTRIBUTES = "USER_ATTRIBUTES";
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public WebContext(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
|
||||
public void setCurrentUser(User user) {
|
||||
RequestContextHolder.currentRequestAttributes().setAttribute(USER_ATTRIBUTES, user, RequestAttributes.SCOPE_REQUEST);
|
||||
|
||||
@@ -5,7 +5,8 @@ import com.mindskip.xzs.base.RestResponse;
|
||||
import com.mindskip.xzs.service.*;
|
||||
import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.viewmodel.admin.dashboard.IndexVM;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.mindskip.xzs.service.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@@ -14,23 +15,16 @@ import java.util.List;
|
||||
|
||||
@RestController("AdminDashboardController")
|
||||
@RequestMapping(value = "/api/admin/dashboard")
|
||||
@AllArgsConstructor
|
||||
public class DashboardController extends BaseApiController {
|
||||
|
||||
|
||||
private final ExamPaperService examPaperService;
|
||||
private final QuestionService questionService;
|
||||
private final ExamPaperAnswerService examPaperAnswerService;
|
||||
private final ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService;
|
||||
private final UserEventLogService userEventLogService;
|
||||
|
||||
@Autowired
|
||||
public DashboardController(ExamPaperService examPaperService, QuestionService questionService, ExamPaperAnswerService examPaperAnswerService, ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService, UserEventLogService userEventLogService) {
|
||||
this.examPaperService = examPaperService;
|
||||
this.questionService = questionService;
|
||||
this.examPaperAnswerService = examPaperAnswerService;
|
||||
this.examPaperQuestionCustomerAnswerService = examPaperQuestionCustomerAnswerService;
|
||||
this.userEventLogService = userEventLogService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/index", method = RequestMethod.POST)
|
||||
public RestResponse<IndexVM> Index() {
|
||||
IndexVM vm = new IndexVM();
|
||||
|
||||
@@ -10,7 +10,7 @@ import com.mindskip.xzs.viewmodel.admin.education.SubjectEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.education.SubjectPageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.education.SubjectResponseVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
@@ -18,15 +18,11 @@ import java.util.List;
|
||||
|
||||
@RestController("AdminEducationController")
|
||||
@RequestMapping(value = "/api/admin/education")
|
||||
@AllArgsConstructor
|
||||
public class EducationController extends BaseApiController {
|
||||
|
||||
private final SubjectService subjectService;
|
||||
|
||||
@Autowired
|
||||
public EducationController(SubjectService subjectService) {
|
||||
this.subjectService = subjectService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/subject/list", method = RequestMethod.POST)
|
||||
public RestResponse<List<Subject>> list() {
|
||||
List<Subject> subjects = subjectService.allSubject();
|
||||
|
||||
@@ -10,22 +10,18 @@ import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperPageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.exam.ExamResponseVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
@RestController("AdminExamPaperController")
|
||||
@RequestMapping(value = "/api/admin/exam/paper")
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperController extends BaseApiController {
|
||||
|
||||
private final ExamPaperService examPaperService;
|
||||
|
||||
@Autowired
|
||||
public ExamPaperController(ExamPaperService examPaperService) {
|
||||
this.examPaperService = examPaperService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/page", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<ExamResponseVM>> pageList(@RequestBody ExamPaperPageRequestVM model) {
|
||||
PageInfo<ExamPaper> pageInfo = examPaperService.page(model);
|
||||
|
||||
@@ -14,7 +14,7 @@ import com.mindskip.xzs.viewmodel.admin.message.MessagePageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.message.MessageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.message.MessageSendVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
@@ -27,17 +27,12 @@ import java.util.stream.Collectors;
|
||||
|
||||
@RestController("AdminMessageController")
|
||||
@RequestMapping(value = "/api/admin/message")
|
||||
@AllArgsConstructor
|
||||
public class MessageController extends BaseApiController {
|
||||
|
||||
private final MessageService messageService;
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public MessageController(MessageService messageService, UserService userService) {
|
||||
this.messageService = messageService;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/page", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<MessageResponseVM>> pageList(@RequestBody MessagePageRequestVM model) {
|
||||
PageInfo<Message> pageInfo = messageService.page(model);
|
||||
|
||||
@@ -14,25 +14,21 @@ import com.mindskip.xzs.viewmodel.admin.question.QuestionEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.question.QuestionPageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.question.QuestionResponseVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.mindskip.xzs.utility.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
@RestController("AdminQuestionController")
|
||||
@RequestMapping(value = "/api/admin/question")
|
||||
@AllArgsConstructor
|
||||
public class QuestionController extends BaseApiController {
|
||||
|
||||
private final QuestionService questionService;
|
||||
private final TextContentService textContentService;
|
||||
|
||||
@Autowired
|
||||
public QuestionController(QuestionService questionService, TextContentService textContentService) {
|
||||
this.questionService = questionService;
|
||||
this.textContentService = textContentService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/page", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<QuestionResponseVM>> pageList(@RequestBody QuestionPageRequestVM model) {
|
||||
PageInfo<Question> pageInfo = questionService.page(model);
|
||||
|
||||
@@ -11,22 +11,18 @@ import com.mindskip.xzs.viewmodel.admin.task.TaskPageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.task.TaskPageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.task.TaskRequestVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
@RestController("AdminTaskController")
|
||||
@RequestMapping(value = "/api/admin/task")
|
||||
@AllArgsConstructor
|
||||
public class TaskController extends BaseApiController {
|
||||
|
||||
private final TaskExamService taskExamService;
|
||||
|
||||
@Autowired
|
||||
public TaskController(TaskExamService taskExamService) {
|
||||
this.taskExamService = taskExamService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/page", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<TaskPageResponseVM>> pageList(@RequestBody TaskPageRequestVM model) {
|
||||
PageInfo<TaskExam> pageInfo = taskExamService.page(model);
|
||||
|
||||
@@ -8,9 +8,10 @@ import com.mindskip.xzs.service.FileUpload;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import com.mindskip.xzs.viewmodel.admin.file.UeditorConfigVM;
|
||||
import com.mindskip.xzs.viewmodel.admin.file.UploadResultVM;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
@@ -22,6 +23,8 @@ import java.io.InputStream;
|
||||
import java.util.Arrays;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/api/admin/upload")
|
||||
@RestController("AdminUploadController")
|
||||
public class UploadController extends BaseApiController {
|
||||
@@ -33,13 +36,6 @@ public class UploadController extends BaseApiController {
|
||||
private static final String IMAGE_UPLOAD_FILE = "upFile";
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public UploadController(FileUpload fileUpload, SystemConfig systemConfig, UserService userService) {
|
||||
this.fileUpload = fileUpload;
|
||||
this.systemConfig = systemConfig;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@RequestMapping("/configAndUpload")
|
||||
public Object upload(HttpServletRequest request, HttpServletResponse response) {
|
||||
|
||||
@@ -13,9 +13,10 @@ import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.viewmodel.admin.user.*;
|
||||
import com.mindskip.xzs.utility.PageInfoHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.mindskip.xzs.viewmodel.admin.user.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
@@ -29,19 +30,13 @@ import java.util.UUID;
|
||||
*/
|
||||
@RestController("AdminUserController")
|
||||
@RequestMapping(value = "/api/admin/user")
|
||||
@AllArgsConstructor
|
||||
public class UserController extends BaseApiController {
|
||||
|
||||
private final UserService userService;
|
||||
private final UserEventLogService userEventLogService;
|
||||
private final AuthenticationService authenticationService;
|
||||
|
||||
@Autowired
|
||||
public UserController(UserService userService, UserEventLogService userEventLogService, AuthenticationService authenticationService) {
|
||||
this.userService = userService;
|
||||
this.userEventLogService = userEventLogService;
|
||||
this.authenticationService = authenticationService;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/page/list", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<UserResponseVM>> pageList(@RequestBody UserPageRequestVM model) {
|
||||
|
||||
@@ -13,7 +13,9 @@ import com.mindskip.xzs.service.*;
|
||||
import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.utility.JsonUtil;
|
||||
import com.mindskip.xzs.viewmodel.student.dashboard.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.mindskip.xzs.service.*;
|
||||
import com.mindskip.xzs.viewmodel.student.dashboard.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@@ -25,6 +27,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
@RestController("StudentDashboardController")
|
||||
@RequestMapping(value = "/api/student/dashboard")
|
||||
@AllArgsConstructor
|
||||
public class DashboardController extends BaseApiController {
|
||||
|
||||
private final UserService userService;
|
||||
@@ -34,16 +37,6 @@ public class DashboardController extends BaseApiController {
|
||||
private final TaskExamCustomerAnswerService taskExamCustomerAnswerService;
|
||||
private final TextContentService textContentService;
|
||||
|
||||
@Autowired
|
||||
public DashboardController(UserService userService, ExamPaperService examPaperService, QuestionService questionService, TaskExamService taskExamService, TaskExamCustomerAnswerService taskExamCustomerAnswerService, TextContentService textContentService) {
|
||||
this.userService = userService;
|
||||
this.examPaperService = examPaperService;
|
||||
this.questionService = questionService;
|
||||
this.taskExamService = taskExamService;
|
||||
this.taskExamCustomerAnswerService = taskExamCustomerAnswerService;
|
||||
this.textContentService = textContentService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/index", method = RequestMethod.POST)
|
||||
public RestResponse<IndexVM> index() {
|
||||
IndexVM indexVM = new IndexVM();
|
||||
|
||||
@@ -8,7 +8,7 @@ import com.mindskip.xzs.domain.User;
|
||||
import com.mindskip.xzs.service.SubjectService;
|
||||
import com.mindskip.xzs.viewmodel.student.education.SubjectEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.education.SubjectVM;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@@ -16,15 +16,11 @@ import java.util.stream.Collectors;
|
||||
|
||||
@RestController("StudentEducationController")
|
||||
@RequestMapping(value = "/api/student/education")
|
||||
@AllArgsConstructor
|
||||
public class EducationController extends BaseApiController {
|
||||
|
||||
private final SubjectService subjectService;
|
||||
|
||||
@Autowired
|
||||
public EducationController(SubjectService subjectService) {
|
||||
this.subjectService = subjectService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/subject/list", method = RequestMethod.POST)
|
||||
public RestResponse<List<SubjectVM>> list() {
|
||||
User user = getCurrentUser();
|
||||
|
||||
@@ -18,7 +18,8 @@ import com.mindskip.xzs.viewmodel.student.exam.ExamPaperSubmitVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exampaper.ExamPaperAnswerPageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exampaper.ExamPaperAnswerPageVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.mindskip.xzs.domain.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -27,6 +28,7 @@ import java.util.Date;
|
||||
|
||||
@RestController("StudentExamPaperAnswerController")
|
||||
@RequestMapping(value = "/api/student/exampaper/answer")
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperAnswerController extends BaseApiController {
|
||||
|
||||
private final ExamPaperAnswerService examPaperAnswerService;
|
||||
@@ -34,14 +36,6 @@ public class ExamPaperAnswerController extends BaseApiController {
|
||||
private final SubjectService subjectService;
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
|
||||
@Autowired
|
||||
public ExamPaperAnswerController(ExamPaperAnswerService examPaperAnswerService, ExamPaperService examPaperService, SubjectService subjectService, ApplicationEventPublisher eventPublisher) {
|
||||
this.examPaperAnswerService = examPaperAnswerService;
|
||||
this.examPaperService = examPaperService;
|
||||
this.subjectService = subjectService;
|
||||
this.eventPublisher = eventPublisher;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/pageList", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<ExamPaperAnswerPageResponseVM>> pageList(@RequestBody @Valid ExamPaperAnswerPageVM model) {
|
||||
|
||||
@@ -11,7 +11,7 @@ import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperPageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperPageVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -19,19 +19,13 @@ import javax.validation.Valid;
|
||||
|
||||
@RestController("StudentExamPaperController")
|
||||
@RequestMapping(value = "/api/student/exam/paper")
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperController extends BaseApiController {
|
||||
|
||||
private final ExamPaperService examPaperService;
|
||||
private final ExamPaperAnswerService examPaperAnswerService;
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
|
||||
@Autowired
|
||||
public ExamPaperController(ExamPaperService examPaperService, ExamPaperAnswerService examPaperAnswerService, ApplicationEventPublisher eventPublisher) {
|
||||
this.examPaperService = examPaperService;
|
||||
this.examPaperAnswerService = examPaperAnswerService;
|
||||
this.eventPublisher = eventPublisher;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/select/{id}", method = RequestMethod.POST)
|
||||
public RestResponse<ExamPaperEditRequestVM> select(@PathVariable Integer id) {
|
||||
|
||||
@@ -20,11 +20,12 @@ import com.mindskip.xzs.viewmodel.student.question.answer.QuestionAnswerVM;
|
||||
import com.mindskip.xzs.viewmodel.student.question.answer.QuestionPageStudentRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.question.answer.QuestionPageStudentResponseVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController("StudentQuestionAnswerController")
|
||||
@RequestMapping(value = "/api/student/question/answer")
|
||||
@AllArgsConstructor
|
||||
public class QuestionAnswerController extends BaseApiController {
|
||||
|
||||
private final ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService;
|
||||
@@ -32,14 +33,6 @@ public class QuestionAnswerController extends BaseApiController {
|
||||
private final TextContentService textContentService;
|
||||
private final SubjectService subjectService;
|
||||
|
||||
@Autowired
|
||||
public QuestionAnswerController(ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService, QuestionService questionService, TextContentService textContentService, SubjectService subjectService) {
|
||||
this.examPaperQuestionCustomerAnswerService = examPaperQuestionCustomerAnswerService;
|
||||
this.questionService = questionService;
|
||||
this.textContentService = textContentService;
|
||||
this.subjectService = subjectService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/page", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<QuestionPageStudentResponseVM>> pageList(@RequestBody QuestionPageStudentRequestVM model) {
|
||||
model.setCreateUser(getCurrentUser().getId());
|
||||
|
||||
@@ -2,17 +2,15 @@ package com.mindskip.xzs.controller.student;
|
||||
|
||||
import com.mindskip.xzs.base.BaseApiController;
|
||||
import com.mindskip.xzs.service.QuestionService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController("StudentQuestionController")
|
||||
@RequestMapping(value = "/api/student/question")
|
||||
@AllArgsConstructor
|
||||
public class QuestionController extends BaseApiController {
|
||||
|
||||
private final QuestionService questionService;
|
||||
|
||||
@Autowired
|
||||
public QuestionController(QuestionService questionService) {
|
||||
this.questionService = questionService;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -5,7 +5,8 @@ import com.mindskip.xzs.base.BaseApiController;
|
||||
import com.mindskip.xzs.base.RestResponse;
|
||||
import com.mindskip.xzs.service.FileUpload;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@@ -17,6 +18,8 @@ import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/api/student/upload")
|
||||
@RestController("StudentUploadController")
|
||||
public class UploadController extends BaseApiController {
|
||||
@@ -24,12 +27,6 @@ public class UploadController extends BaseApiController {
|
||||
private final FileUpload fileUpload;
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public UploadController(FileUpload fileUpload, UserService userService) {
|
||||
this.fileUpload = fileUpload;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping("/image")
|
||||
@ResponseBody
|
||||
|
||||
@@ -17,8 +17,9 @@ import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.utility.PageInfoHelper;
|
||||
import com.mindskip.xzs.viewmodel.student.user.*;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.mindskip.xzs.viewmodel.student.user.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -34,6 +35,7 @@ import java.util.stream.Collectors;
|
||||
*/
|
||||
@RestController("StudentUserController")
|
||||
@RequestMapping(value = "/api/student/user")
|
||||
@AllArgsConstructor
|
||||
public class UserController extends BaseApiController {
|
||||
|
||||
private final UserService userService;
|
||||
@@ -42,15 +44,6 @@ public class UserController extends BaseApiController {
|
||||
private final AuthenticationService authenticationService;
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
|
||||
@Autowired
|
||||
public UserController(UserService userService, UserEventLogService userEventLogService, MessageService messageService, AuthenticationService authenticationService, ApplicationEventPublisher eventPublisher) {
|
||||
this.userService = userService;
|
||||
this.userEventLogService = userEventLogService;
|
||||
this.messageService = messageService;
|
||||
this.authenticationService = authenticationService;
|
||||
this.eventPublisher = eventPublisher;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/current", method = RequestMethod.POST)
|
||||
public RestResponse<UserResponseVM> current() {
|
||||
User user = getCurrentUser();
|
||||
|
||||
@@ -11,7 +11,7 @@ import com.mindskip.xzs.service.UserTokenService;
|
||||
import com.mindskip.xzs.utility.WxUtil;
|
||||
import com.mindskip.xzs.viewmodel.wx.student.user.BindInfo;
|
||||
import com.mindskip.xzs.domain.User;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -21,6 +21,7 @@ import javax.validation.constraints.NotBlank;
|
||||
|
||||
@Controller("WXStudentAuthController")
|
||||
@RequestMapping(value = "/api/wx/student/auth")
|
||||
@AllArgsConstructor
|
||||
@ResponseBody
|
||||
public class AuthController extends BaseWXApiController {
|
||||
|
||||
@@ -29,14 +30,6 @@ public class AuthController extends BaseWXApiController {
|
||||
private final UserService userService;
|
||||
private final UserTokenService userTokenService;
|
||||
|
||||
@Autowired
|
||||
public AuthController(SystemConfig systemConfig, AuthenticationService authenticationService, UserService userService, UserTokenService userTokenService) {
|
||||
this.systemConfig = systemConfig;
|
||||
this.authenticationService = authenticationService;
|
||||
this.userService = userService;
|
||||
this.userTokenService = userTokenService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/bind", method = RequestMethod.POST)
|
||||
public RestResponse bind(@Valid BindInfo model) {
|
||||
User user = userService.getUserByUserName(model.getUserName());
|
||||
|
||||
@@ -16,7 +16,8 @@ import com.mindskip.xzs.service.TextContentService;
|
||||
import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.utility.JsonUtil;
|
||||
import com.mindskip.xzs.viewmodel.student.dashboard.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.mindskip.xzs.viewmodel.student.dashboard.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
@@ -30,6 +31,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
@Controller("WXStudentDashboardController")
|
||||
@RequestMapping(value = "/api/wx/student/dashboard")
|
||||
@AllArgsConstructor
|
||||
@ResponseBody
|
||||
public class DashboardController extends BaseWXApiController {
|
||||
|
||||
@@ -38,14 +40,6 @@ public class DashboardController extends BaseWXApiController {
|
||||
private final TaskExamService taskExamService;
|
||||
private final TaskExamCustomerAnswerService taskExamCustomerAnswerService;
|
||||
|
||||
@Autowired
|
||||
public DashboardController(ExamPaperService examPaperService, TextContentService textContentService, TaskExamService taskExamService, TaskExamCustomerAnswerService taskExamCustomerAnswerService) {
|
||||
this.examPaperService = examPaperService;
|
||||
this.textContentService = textContentService;
|
||||
this.taskExamService = taskExamService;
|
||||
this.taskExamCustomerAnswerService = taskExamCustomerAnswerService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/index", method = RequestMethod.POST)
|
||||
public RestResponse<IndexVM> index() {
|
||||
IndexVM indexVM = new IndexVM();
|
||||
|
||||
@@ -13,13 +13,15 @@ import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.utility.ExamUtil;
|
||||
import com.mindskip.xzs.utility.PageInfoHelper;
|
||||
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.*;
|
||||
import com.mindskip.xzs.viewmodel.student.exampaper.ExamPaperAnswerPageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exampaper.ExamPaperAnswerPageVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.mindskip.xzs.domain.*;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperReadVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperSubmitItemVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperSubmitVM;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -32,6 +34,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
@Controller("WXStudentExamPaperAnswerController")
|
||||
@RequestMapping(value = "/api/wx/student/exampaper/answer")
|
||||
@AllArgsConstructor
|
||||
@ResponseBody
|
||||
public class ExamPaperAnswerController extends BaseWXApiController {
|
||||
|
||||
@@ -40,14 +43,6 @@ public class ExamPaperAnswerController extends BaseWXApiController {
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
private final ExamPaperService examPaperService;
|
||||
|
||||
@Autowired
|
||||
public ExamPaperAnswerController(ExamPaperAnswerService examPaperAnswerService, SubjectService subjectService, ApplicationEventPublisher eventPublisher, ExamPaperService examPaperService) {
|
||||
this.examPaperAnswerService = examPaperAnswerService;
|
||||
this.subjectService = subjectService;
|
||||
this.eventPublisher = eventPublisher;
|
||||
this.examPaperService = examPaperService;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/pageList", method = RequestMethod.POST)
|
||||
public RestResponse<PageInfo<ExamPaperAnswerPageResponseVM>> pageList(@Valid ExamPaperAnswerPageVM model) {
|
||||
model.setCreateUser(getCurrentUser().getId());
|
||||
|
||||
@@ -12,7 +12,7 @@ import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperPageResponseVM;
|
||||
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperPageVM;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -21,18 +21,13 @@ import javax.validation.Valid;
|
||||
|
||||
@Controller("WXStudentExamController")
|
||||
@RequestMapping(value = "/api/wx/student/exampaper")
|
||||
@AllArgsConstructor
|
||||
@ResponseBody
|
||||
public class ExamPaperController extends BaseWXApiController {
|
||||
|
||||
private final ExamPaperService examPaperService;
|
||||
private final SubjectService subjectService;
|
||||
|
||||
@Autowired
|
||||
public ExamPaperController(ExamPaperService examPaperService, SubjectService subjectService) {
|
||||
this.examPaperService = examPaperService;
|
||||
this.subjectService = subjectService;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/select/{id}", method = RequestMethod.POST)
|
||||
public RestResponse<ExamPaperEditRequestVM> select(@PathVariable Integer id) {
|
||||
|
||||
@@ -17,8 +17,9 @@ import com.mindskip.xzs.utility.DateTimeUtil;
|
||||
import com.mindskip.xzs.utility.PageInfoHelper;
|
||||
import com.mindskip.xzs.viewmodel.student.user.*;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.mindskip.xzs.viewmodel.student.user.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.ApplicationEventPublisher;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -35,6 +36,7 @@ import java.util.stream.Collectors;
|
||||
*/
|
||||
@Controller("WXStudentUserController")
|
||||
@RequestMapping(value = "/api/wx/student/user")
|
||||
@AllArgsConstructor
|
||||
@ResponseBody
|
||||
public class UserController extends BaseWXApiController {
|
||||
|
||||
@@ -44,15 +46,6 @@ public class UserController extends BaseWXApiController {
|
||||
private final AuthenticationService authenticationService;
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
|
||||
@Autowired
|
||||
public UserController(UserService userService, UserEventLogService userEventLogService, MessageService messageService, AuthenticationService authenticationService, ApplicationEventPublisher eventPublisher) {
|
||||
this.userService = userService;
|
||||
this.userEventLogService = userEventLogService;
|
||||
this.messageService = messageService;
|
||||
this.authenticationService = authenticationService;
|
||||
this.eventPublisher = eventPublisher;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/current", method = RequestMethod.POST)
|
||||
public RestResponse<UserResponseVM> current() {
|
||||
User user = getCurrentUser();
|
||||
|
||||
@@ -1,34 +1,12 @@
|
||||
package com.mindskip.xzs.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ExamPaperAnswerInfo {
|
||||
public ExamPaper examPaper;
|
||||
public ExamPaperAnswer examPaperAnswer;
|
||||
public List<ExamPaperQuestionCustomerAnswer> examPaperQuestionCustomerAnswers;
|
||||
|
||||
public ExamPaper getExamPaper() {
|
||||
return examPaper;
|
||||
}
|
||||
|
||||
public void setExamPaper(ExamPaper examPaper) {
|
||||
this.examPaper = examPaper;
|
||||
}
|
||||
|
||||
public ExamPaperAnswer getExamPaperAnswer() {
|
||||
return examPaperAnswer;
|
||||
}
|
||||
|
||||
public void setExamPaperAnswer(ExamPaperAnswer examPaperAnswer) {
|
||||
this.examPaperAnswer = examPaperAnswer;
|
||||
}
|
||||
|
||||
public List<ExamPaperQuestionCustomerAnswer> getExamPaperQuestionCustomerAnswers() {
|
||||
return examPaperQuestionCustomerAnswers;
|
||||
}
|
||||
|
||||
public void setExamPaperQuestionCustomerAnswers(List<ExamPaperQuestionCustomerAnswer> examPaperQuestionCustomerAnswers) {
|
||||
this.examPaperQuestionCustomerAnswers = examPaperQuestionCustomerAnswers;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,9 @@
|
||||
package com.mindskip.xzs.domain.exam;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ExamPaperQuestionItemObject {
|
||||
private Integer id;
|
||||
private Integer itemOrder;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Integer getItemOrder() {
|
||||
return itemOrder;
|
||||
}
|
||||
|
||||
public void setItemOrder(Integer itemOrder) {
|
||||
this.itemOrder = itemOrder;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,13 @@
|
||||
package com.mindskip.xzs.domain.exam;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ExamPaperTitleItemObject {
|
||||
|
||||
private String name;
|
||||
|
||||
private List<ExamPaperQuestionItemObject> questionItems;
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public List<ExamPaperQuestionItemObject> getQuestionItems() {
|
||||
return questionItems;
|
||||
}
|
||||
|
||||
public void setQuestionItems(List<ExamPaperQuestionItemObject> questionItems) {
|
||||
this.questionItems = questionItems;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,32 +1,10 @@
|
||||
package com.mindskip.xzs.domain.other;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ExamPaperAnswerUpdate {
|
||||
private Integer id;
|
||||
private Integer customerScore;
|
||||
private Boolean doRight;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Integer getCustomerScore() {
|
||||
return customerScore;
|
||||
}
|
||||
|
||||
public void setCustomerScore(Integer customerScore) {
|
||||
this.customerScore = customerScore;
|
||||
}
|
||||
|
||||
public Boolean getDoRight() {
|
||||
return doRight;
|
||||
}
|
||||
|
||||
public void setDoRight(Boolean doRight) {
|
||||
this.doRight = doRight;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,11 @@
|
||||
package com.mindskip.xzs.domain.other;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class KeyValue {
|
||||
|
||||
private String name;
|
||||
private Integer value;
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(Integer value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.mindskip.xzs.domain.question;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class QuestionItemObject {
|
||||
|
||||
private String prefix;
|
||||
@@ -8,28 +10,4 @@ public class QuestionItemObject {
|
||||
private String content;
|
||||
|
||||
private Integer score;
|
||||
|
||||
public String getPrefix() {
|
||||
return prefix;
|
||||
}
|
||||
|
||||
public void setPrefix(String prefix) {
|
||||
this.prefix = prefix;
|
||||
}
|
||||
|
||||
public String getContent() {
|
||||
return content;
|
||||
}
|
||||
|
||||
public void setContent(String content) {
|
||||
this.content = content;
|
||||
}
|
||||
|
||||
public Integer getScore() {
|
||||
return score;
|
||||
}
|
||||
|
||||
public void setScore(Integer score) {
|
||||
this.score = score;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.mindskip.xzs.domain.question;
|
||||
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class QuestionObject {
|
||||
|
||||
private String titleContent;
|
||||
@@ -13,36 +15,4 @@ public class QuestionObject {
|
||||
private List<QuestionItemObject> questionItemObjects;
|
||||
|
||||
private String correct;
|
||||
|
||||
public String getTitleContent() {
|
||||
return titleContent;
|
||||
}
|
||||
|
||||
public void setTitleContent(String titleContent) {
|
||||
this.titleContent = titleContent;
|
||||
}
|
||||
|
||||
public String getAnalyze() {
|
||||
return analyze;
|
||||
}
|
||||
|
||||
public void setAnalyze(String analyze) {
|
||||
this.analyze = analyze;
|
||||
}
|
||||
|
||||
public List<QuestionItemObject> getQuestionItemObjects() {
|
||||
return questionItemObjects;
|
||||
}
|
||||
|
||||
public void setQuestionItemObjects(List<QuestionItemObject> questionItemObjects) {
|
||||
this.questionItemObjects = questionItemObjects;
|
||||
}
|
||||
|
||||
public String getCorrect() {
|
||||
return correct;
|
||||
}
|
||||
|
||||
public void setCorrect(String correct) {
|
||||
this.correct = correct;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.mindskip.xzs.domain.task;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TaskItemAnswerObject {
|
||||
private Integer examPaperId;
|
||||
private Integer examPaperAnswerId;
|
||||
@@ -15,28 +17,4 @@ public class TaskItemAnswerObject {
|
||||
this.examPaperAnswerId = examPaperAnswerId;
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public Integer getExamPaperId() {
|
||||
return examPaperId;
|
||||
}
|
||||
|
||||
public void setExamPaperId(Integer examPaperId) {
|
||||
this.examPaperId = examPaperId;
|
||||
}
|
||||
|
||||
public Integer getExamPaperAnswerId() {
|
||||
return examPaperAnswerId;
|
||||
}
|
||||
|
||||
public void setExamPaperAnswerId(Integer examPaperAnswerId) {
|
||||
this.examPaperAnswerId = examPaperAnswerId;
|
||||
}
|
||||
|
||||
public Integer getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus(Integer status) {
|
||||
this.status = status;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,32 +1,10 @@
|
||||
package com.mindskip.xzs.domain.task;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TaskItemObject {
|
||||
private Integer examPaperId;
|
||||
private String examPaperName;
|
||||
private Integer itemOrder;
|
||||
|
||||
public Integer getExamPaperId() {
|
||||
return examPaperId;
|
||||
}
|
||||
|
||||
public void setExamPaperId(Integer examPaperId) {
|
||||
this.examPaperId = examPaperId;
|
||||
}
|
||||
|
||||
public String getExamPaperName() {
|
||||
return examPaperName;
|
||||
}
|
||||
|
||||
public void setExamPaperName(String examPaperName) {
|
||||
this.examPaperName = examPaperName;
|
||||
}
|
||||
|
||||
public Integer getItemOrder() {
|
||||
return itemOrder;
|
||||
}
|
||||
|
||||
public void setItemOrder(Integer itemOrder) {
|
||||
this.itemOrder = itemOrder;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.mindskip.xzs.listener;
|
||||
|
||||
import com.mindskip.xzs.domain.*;
|
||||
import com.mindskip.xzs.domain.*;
|
||||
import com.mindskip.xzs.domain.enums.ExamPaperTypeEnum;
|
||||
import com.mindskip.xzs.domain.enums.QuestionTypeEnum;
|
||||
@@ -8,7 +9,7 @@ import com.mindskip.xzs.service.ExamPaperAnswerService;
|
||||
import com.mindskip.xzs.service.ExamPaperQuestionCustomerAnswerService;
|
||||
import com.mindskip.xzs.service.TaskExamCustomerAnswerService;
|
||||
import com.mindskip.xzs.service.TextContentService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -21,21 +22,15 @@ import java.util.List;
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CalculateExamPaperAnswerListener implements ApplicationListener<CalculateExamPaperAnswerCompleteEvent> {
|
||||
|
||||
|
||||
private final ExamPaperAnswerService examPaperAnswerService;
|
||||
private final ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService;
|
||||
private final TextContentService textContentService;
|
||||
private final TaskExamCustomerAnswerService examCustomerAnswerService;
|
||||
|
||||
@Autowired
|
||||
public CalculateExamPaperAnswerListener(ExamPaperAnswerService examPaperAnswerService, ExamPaperQuestionCustomerAnswerService examPaperQuestionCustomerAnswerService, TextContentService textContentService, TaskExamCustomerAnswerService examCustomerAnswerService) {
|
||||
this.examPaperAnswerService = examPaperAnswerService;
|
||||
this.examPaperQuestionCustomerAnswerService = examPaperQuestionCustomerAnswerService;
|
||||
this.textContentService = textContentService;
|
||||
this.examCustomerAnswerService = examCustomerAnswerService;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void onApplicationEvent(CalculateExamPaperAnswerCompleteEvent calculateExamPaperAnswerCompleteEvent) {
|
||||
|
||||
@@ -2,19 +2,15 @@ package com.mindskip.xzs.listener;
|
||||
|
||||
import com.mindskip.xzs.event.UserEvent;
|
||||
import com.mindskip.xzs.service.UserEventLogService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.context.ApplicationListener;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class UserLogListener implements ApplicationListener<UserEvent> {
|
||||
|
||||
private final UserEventLogService userEventLogService;
|
||||
|
||||
@Autowired
|
||||
public UserLogListener(UserEventLogService userEventLogService) {
|
||||
this.userEventLogService = userEventLogService;
|
||||
}
|
||||
private UserEventLogService userEventLogService;
|
||||
|
||||
@Override
|
||||
public void onApplicationEvent(UserEvent userEvent) {
|
||||
|
||||
@@ -5,24 +5,20 @@ import com.mindskip.xzs.domain.User;
|
||||
import com.mindskip.xzs.service.AuthenticationService;
|
||||
import com.mindskip.xzs.service.UserService;
|
||||
import com.mindskip.xzs.utility.RsaUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class AuthenticationServiceImpl implements AuthenticationService {
|
||||
|
||||
|
||||
private final UserService userService;
|
||||
private final SystemConfig systemConfig;
|
||||
|
||||
@Autowired
|
||||
public AuthenticationServiceImpl(UserService userService, SystemConfig systemConfig) {
|
||||
this.userService = userService;
|
||||
this.systemConfig = systemConfig;
|
||||
}
|
||||
private final SystemConfig systemConfig;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,14 +2,12 @@ package com.mindskip.xzs.service.impl;
|
||||
|
||||
import com.mindskip.xzs.repository.BaseMapper;
|
||||
import com.mindskip.xzs.service.BaseService;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
@AllArgsConstructor
|
||||
public abstract class BaseServiceImpl<T> implements BaseService<T> {
|
||||
|
||||
private final BaseMapper<T> baseMapper;
|
||||
|
||||
public BaseServiceImpl(BaseMapper<T> baseMapper) {
|
||||
this.baseMapper = baseMapper;
|
||||
}
|
||||
BaseMapper<T> baseMapper;
|
||||
|
||||
@Override
|
||||
public int deleteById(Integer id) {
|
||||
|
||||
@@ -11,24 +11,19 @@ import com.qiniu.storage.Region;
|
||||
import com.qiniu.storage.UploadManager;
|
||||
import com.qiniu.storage.model.DefaultPutRet;
|
||||
import com.qiniu.util.Auth;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.InputStream;
|
||||
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class FileUploadImpl implements FileUpload {
|
||||
private final Logger logger = LoggerFactory.getLogger(FileUpload.class);
|
||||
private final SystemConfig systemConfig;
|
||||
|
||||
|
||||
@Autowired
|
||||
public FileUploadImpl(SystemConfig systemConfig) {
|
||||
this.systemConfig = systemConfig;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String uploadFile(InputStream inputStream, long size, String extName) {
|
||||
QnConfig qnConfig = systemConfig.getQn();
|
||||
|
||||
@@ -9,7 +9,7 @@ import com.mindskip.xzs.viewmodel.admin.message.MessagePageRequestVM;
|
||||
import com.mindskip.xzs.viewmodel.student.user.MessageRequestVM;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -17,17 +17,12 @@ import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class MessageServiceImpl implements MessageService {
|
||||
|
||||
private final MessageMapper messageMapper;
|
||||
private final MessageUserMapper messageUserMapper;
|
||||
|
||||
@Autowired
|
||||
public MessageServiceImpl(MessageMapper messageMapper, MessageUserMapper messageUserMapper) {
|
||||
this.messageMapper = messageMapper;
|
||||
this.messageUserMapper = messageUserMapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Message> selectMessageByIds(List<Integer> ids) {
|
||||
return messageMapper.selectByIds(ids);
|
||||
|
||||
@@ -16,7 +16,7 @@ import java.util.List;
|
||||
@Service
|
||||
public class SubjectServiceImpl extends BaseServiceImpl<Subject> implements SubjectService {
|
||||
|
||||
private final static String CACHE_NAME = "xzs:subject";
|
||||
private final static String CACHE_NAME = "Subject";
|
||||
private final SubjectMapper subjectMapper;
|
||||
|
||||
@Autowired
|
||||
|
||||
@@ -17,7 +17,7 @@ import java.util.stream.Collectors;
|
||||
@Service
|
||||
public class TextContentServiceImpl extends BaseServiceImpl<TextContent> implements TextContentService {
|
||||
|
||||
private final static String CACHE_NAME = "xzs:textcontent";
|
||||
private final static String CACHE_NAME = "TextContent";
|
||||
private final TextContentMapper textContentMapper;
|
||||
|
||||
@Autowired
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.util.Map;
|
||||
@Service
|
||||
public class UserServiceImpl extends BaseServiceImpl<User> implements UserService {
|
||||
|
||||
private final static String CACHE_NAME = "xzs:user";
|
||||
private final static String CACHE_NAME = "User";
|
||||
private final UserMapper userMapper;
|
||||
private final ApplicationEventPublisher eventPublisher;
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ import java.util.UUID;
|
||||
@Service
|
||||
public class UserTokenServiceImpl extends BaseServiceImpl<UserToken> implements UserTokenService {
|
||||
|
||||
private final static String CACHE_NAME = "xzs:token";
|
||||
private final static String CACHE_NAME = "Token";
|
||||
private final UserTokenMapper userTokenMapper;
|
||||
private final UserService userService;
|
||||
private final SystemConfig systemConfig;
|
||||
|
||||
@@ -1,30 +1,12 @@
|
||||
package com.mindskip.xzs.utility;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class WxResponse implements Serializable {
|
||||
private static final long serialVersionUID = -8496869159673561976L;
|
||||
private String session_key;
|
||||
private String openid;
|
||||
|
||||
public static long getSerialVersionUID() {
|
||||
return serialVersionUID;
|
||||
}
|
||||
|
||||
public String getSession_key() {
|
||||
return session_key;
|
||||
}
|
||||
|
||||
public void setSession_key(String session_key) {
|
||||
this.session_key = session_key;
|
||||
}
|
||||
|
||||
public String getOpenid() {
|
||||
return openid;
|
||||
}
|
||||
|
||||
public void setOpenid(String openid) {
|
||||
this.openid = openid;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,16 @@
|
||||
package com.mindskip.xzs.viewmodel;
|
||||
|
||||
import com.mindskip.xzs.utility.ModelMapperSingle;
|
||||
import lombok.Data;
|
||||
import org.modelmapper.ModelMapper;
|
||||
|
||||
/**
|
||||
* @author 武汉思维跳跃科技有限公司
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class BaseVM {
|
||||
protected static ModelMapper modelMapper = ModelMapperSingle.Instance();
|
||||
|
||||
|
||||
public static ModelMapper getModelMapper() {
|
||||
return modelMapper;
|
||||
}
|
||||
|
||||
public static void setModelMapper(ModelMapper modelMapper) {
|
||||
BaseVM.modelMapper = modelMapper;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.dashboard;
|
||||
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
public class IndexVM {
|
||||
private Integer examPaperCount;
|
||||
private Integer questionCount;
|
||||
@@ -13,60 +13,4 @@ public class IndexVM {
|
||||
private List<Integer> mothDayUserActionValue;
|
||||
private List<Integer> mothDayDoExamQuestionValue;
|
||||
private List<String> mothDayText;
|
||||
|
||||
public Integer getExamPaperCount() {
|
||||
return examPaperCount;
|
||||
}
|
||||
|
||||
public void setExamPaperCount(Integer examPaperCount) {
|
||||
this.examPaperCount = examPaperCount;
|
||||
}
|
||||
|
||||
public Integer getQuestionCount() {
|
||||
return questionCount;
|
||||
}
|
||||
|
||||
public void setQuestionCount(Integer questionCount) {
|
||||
this.questionCount = questionCount;
|
||||
}
|
||||
|
||||
public Integer getDoExamPaperCount() {
|
||||
return doExamPaperCount;
|
||||
}
|
||||
|
||||
public void setDoExamPaperCount(Integer doExamPaperCount) {
|
||||
this.doExamPaperCount = doExamPaperCount;
|
||||
}
|
||||
|
||||
public Integer getDoQuestionCount() {
|
||||
return doQuestionCount;
|
||||
}
|
||||
|
||||
public void setDoQuestionCount(Integer doQuestionCount) {
|
||||
this.doQuestionCount = doQuestionCount;
|
||||
}
|
||||
|
||||
public List<Integer> getMothDayUserActionValue() {
|
||||
return mothDayUserActionValue;
|
||||
}
|
||||
|
||||
public void setMothDayUserActionValue(List<Integer> mothDayUserActionValue) {
|
||||
this.mothDayUserActionValue = mothDayUserActionValue;
|
||||
}
|
||||
|
||||
public List<Integer> getMothDayDoExamQuestionValue() {
|
||||
return mothDayDoExamQuestionValue;
|
||||
}
|
||||
|
||||
public void setMothDayDoExamQuestionValue(List<Integer> mothDayDoExamQuestionValue) {
|
||||
this.mothDayDoExamQuestionValue = mothDayDoExamQuestionValue;
|
||||
}
|
||||
|
||||
public List<String> getMothDayText() {
|
||||
return mothDayText;
|
||||
}
|
||||
|
||||
public void setMothDayText(List<String> mothDayText) {
|
||||
this.mothDayText = mothDayText;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.education;
|
||||
|
||||
import com.mindskip.xzs.viewmodel.BaseVM;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
|
||||
@Data
|
||||
public class SubjectEditRequestVM extends BaseVM {
|
||||
|
||||
private Integer id;
|
||||
@@ -20,35 +20,4 @@ public class SubjectEditRequestVM extends BaseVM {
|
||||
@NotBlank
|
||||
private String levelName;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(Integer level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public String getLevelName() {
|
||||
return levelName;
|
||||
}
|
||||
|
||||
public void setLevelName(String levelName) {
|
||||
this.levelName = levelName;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,26 +1,10 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.education;
|
||||
|
||||
import com.mindskip.xzs.base.BasePage;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
@Data
|
||||
public class SubjectPageRequestVM extends BasePage {
|
||||
private Integer id;
|
||||
private Integer level;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Integer getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(Integer level) {
|
||||
this.level = level;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.education;
|
||||
|
||||
import com.mindskip.xzs.viewmodel.BaseVM;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
@Data
|
||||
public class SubjectResponseVM extends BaseVM {
|
||||
private Integer id;
|
||||
|
||||
@@ -12,36 +12,4 @@ public class SubjectResponseVM extends BaseVM {
|
||||
private Integer level;
|
||||
|
||||
private String levelName;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(Integer level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public String getLevelName() {
|
||||
return levelName;
|
||||
}
|
||||
|
||||
public void setLevelName(String levelName) {
|
||||
this.levelName = levelName;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.exam;
|
||||
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
@@ -8,7 +8,7 @@ import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
public class ExamPaperEditRequestVM {
|
||||
private Integer id;
|
||||
@NotNull
|
||||
@@ -30,75 +30,4 @@ public class ExamPaperEditRequestVM {
|
||||
|
||||
private String score;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Integer getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(Integer level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public Integer getSubjectId() {
|
||||
return subjectId;
|
||||
}
|
||||
|
||||
public void setSubjectId(Integer subjectId) {
|
||||
this.subjectId = subjectId;
|
||||
}
|
||||
|
||||
public Integer getPaperType() {
|
||||
return paperType;
|
||||
}
|
||||
|
||||
public void setPaperType(Integer paperType) {
|
||||
this.paperType = paperType;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getSuggestTime() {
|
||||
return suggestTime;
|
||||
}
|
||||
|
||||
public void setSuggestTime(Integer suggestTime) {
|
||||
this.suggestTime = suggestTime;
|
||||
}
|
||||
|
||||
public List<String> getLimitDateTime() {
|
||||
return limitDateTime;
|
||||
}
|
||||
|
||||
public void setLimitDateTime(List<String> limitDateTime) {
|
||||
this.limitDateTime = limitDateTime;
|
||||
}
|
||||
|
||||
public List<ExamPaperTitleItemVM> getTitleItems() {
|
||||
return titleItems;
|
||||
}
|
||||
|
||||
public void setTitleItems(List<ExamPaperTitleItemVM> titleItems) {
|
||||
this.titleItems = titleItems;
|
||||
}
|
||||
|
||||
public String getScore() {
|
||||
return score;
|
||||
}
|
||||
|
||||
public void setScore(String score) {
|
||||
this.score = score;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.exam;
|
||||
|
||||
import com.mindskip.xzs.base.BasePage;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
@Data
|
||||
public class ExamPaperPageRequestVM extends BasePage {
|
||||
|
||||
private Integer id;
|
||||
@@ -11,44 +11,4 @@ public class ExamPaperPageRequestVM extends BasePage {
|
||||
private Integer level;
|
||||
private Integer paperType;
|
||||
private Integer taskExamId;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Integer getSubjectId() {
|
||||
return subjectId;
|
||||
}
|
||||
|
||||
public void setSubjectId(Integer subjectId) {
|
||||
this.subjectId = subjectId;
|
||||
}
|
||||
|
||||
public Integer getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(Integer level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public Integer getPaperType() {
|
||||
return paperType;
|
||||
}
|
||||
|
||||
public void setPaperType(Integer paperType) {
|
||||
this.paperType = paperType;
|
||||
}
|
||||
|
||||
public Integer getTaskExamId() {
|
||||
return taskExamId;
|
||||
}
|
||||
|
||||
public void setTaskExamId(Integer taskExamId) {
|
||||
this.taskExamId = taskExamId;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.exam;
|
||||
|
||||
import com.mindskip.xzs.viewmodel.admin.question.QuestionEditRequestVM;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
public class ExamPaperTitleItemVM {
|
||||
|
||||
@NotBlank(message = "标题内容不能为空")
|
||||
@@ -17,20 +17,4 @@ public class ExamPaperTitleItemVM {
|
||||
@Size(min = 1,message = "请添加题目")
|
||||
@Valid
|
||||
private List<QuestionEditRequestVM> questionItems;
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public List<QuestionEditRequestVM> getQuestionItems() {
|
||||
return questionItems;
|
||||
}
|
||||
|
||||
public void setQuestionItems(List<QuestionEditRequestVM> questionItems) {
|
||||
this.questionItems = questionItems;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.exam;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
@Data
|
||||
public class ExamResponseVM {
|
||||
private Integer id;
|
||||
|
||||
@@ -21,76 +21,4 @@ public class ExamResponseVM {
|
||||
private Integer paperType;
|
||||
|
||||
private Integer frameTextContentId;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getQuestionCount() {
|
||||
return questionCount;
|
||||
}
|
||||
|
||||
public void setQuestionCount(Integer questionCount) {
|
||||
this.questionCount = questionCount;
|
||||
}
|
||||
|
||||
public Integer getScore() {
|
||||
return score;
|
||||
}
|
||||
|
||||
public void setScore(Integer score) {
|
||||
this.score = score;
|
||||
}
|
||||
|
||||
public String getCreateTime() {
|
||||
return createTime;
|
||||
}
|
||||
|
||||
public void setCreateTime(String createTime) {
|
||||
this.createTime = createTime;
|
||||
}
|
||||
|
||||
public Integer getCreateUser() {
|
||||
return createUser;
|
||||
}
|
||||
|
||||
public void setCreateUser(Integer createUser) {
|
||||
this.createUser = createUser;
|
||||
}
|
||||
|
||||
public Integer getSubjectId() {
|
||||
return subjectId;
|
||||
}
|
||||
|
||||
public void setSubjectId(Integer subjectId) {
|
||||
this.subjectId = subjectId;
|
||||
}
|
||||
|
||||
public Integer getPaperType() {
|
||||
return paperType;
|
||||
}
|
||||
|
||||
public void setPaperType(Integer paperType) {
|
||||
this.paperType = paperType;
|
||||
}
|
||||
|
||||
public Integer getFrameTextContentId() {
|
||||
return frameTextContentId;
|
||||
}
|
||||
|
||||
public void setFrameTextContentId(Integer frameTextContentId) {
|
||||
this.frameTextContentId = frameTextContentId;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.mindskip.xzs.viewmodel.admin.file;
|
||||
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
public class UeditorConfigVM {
|
||||
private String imageActionName;
|
||||
private String imageFieldName;
|
||||
@@ -15,76 +15,4 @@ public class UeditorConfigVM {
|
||||
private String imageInsertAlign;
|
||||
private String imageUrlPrefix;
|
||||
private String imagePathFormat;
|
||||
|
||||
public String getImageActionName() {
|
||||
return imageActionName;
|
||||
}
|
||||
|
||||
public void setImageActionName(String imageActionName) {
|
||||
this.imageActionName = imageActionName;
|
||||
}
|
||||
|
||||
public String getImageFieldName() {
|
||||
return imageFieldName;
|
||||
}
|
||||
|
||||
public void setImageFieldName(String imageFieldName) {
|
||||
this.imageFieldName = imageFieldName;
|
||||
}
|
||||
|
||||
public Long getImageMaxSize() {
|
||||
return imageMaxSize;
|
||||
}
|
||||
|
||||
public void setImageMaxSize(Long imageMaxSize) {
|
||||
this.imageMaxSize = imageMaxSize;
|
||||
}
|
||||
|
||||
public List<String> getImageAllowFiles() {
|
||||
return imageAllowFiles;
|
||||
}
|
||||
|
||||
public void setImageAllowFiles(List<String> imageAllowFiles) {
|
||||
this.imageAllowFiles = imageAllowFiles;
|
||||
}
|
||||
|
||||
public boolean isImageCompressEnable() {
|
||||
return imageCompressEnable;
|
||||
}
|
||||
|
||||
public void setImageCompressEnable(boolean imageCompressEnable) {
|
||||
this.imageCompressEnable = imageCompressEnable;
|
||||
}
|
||||
|
||||
public Integer getImageCompressBorder() {
|
||||
return imageCompressBorder;
|
||||
}
|
||||
|
||||
public void setImageCompressBorder(Integer imageCompressBorder) {
|
||||
this.imageCompressBorder = imageCompressBorder;
|
||||
}
|
||||
|
||||
public String getImageInsertAlign() {
|
||||
return imageInsertAlign;
|
||||
}
|
||||
|
||||
public void setImageInsertAlign(String imageInsertAlign) {
|
||||
this.imageInsertAlign = imageInsertAlign;
|
||||
}
|
||||
|
||||
public String getImageUrlPrefix() {
|
||||
return imageUrlPrefix;
|
||||
}
|
||||
|
||||
public void setImageUrlPrefix(String imageUrlPrefix) {
|
||||
this.imageUrlPrefix = imageUrlPrefix;
|
||||
}
|
||||
|
||||
public String getImagePathFormat() {
|
||||
return imagePathFormat;
|
||||
}
|
||||
|
||||
public void setImagePathFormat(String imagePathFormat) {
|
||||
this.imagePathFormat = imagePathFormat;
|
||||
}
|
||||
}
|
||||
|
||||