DASEWO

简介

一个基于SpringBoot+Vue前后端分离的台账系统

使用技术
后端框架 springboot、mybatis
连接池 Alibaba Druid
前端框架 Vue

进度

基本模块 已完成
差旅层次显示 待完成
对输入前端约束 后端校验 待完成
权限模块 待完成
token登录 待完成

API

本项目遵循RESTful规范 目前还在揣摩表的构造 暂不加外键约束

后端主路由:/ecnuwo/api

学生表API

请求方式 从路由 参数 说明
GET /student { params: params } 获取学生列表
POST /student { data: params } 创建学生
PUT /student { data: params } 更新学生信息
DELETE /student { data: { data: params }} 删除学生
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
create table student (
uid int not null auto_increment comment '唯一标识',
stu_number int not null comment '学号',
passwd char(32) comment '密码',
role_type int default 0 not null comment '权限类型',
stu_name varchar(30) comment '姓名',
sex tinyint(1) comment '性别',
identity int default 0 not null comment '培养类别',
enroll_year year comment '入学时间',
phone_num char(11) comment '手机号码',
email varchar(30) comment '邮箱',
primary key(uid)
)
权限类型 0 1 2
培养类别 0本科 1专硕 2学硕 3直博 4博士 5其他

学生设备管理表API

请求方式 从路由 参数 说明
GET /stu_equipment { params: params } 获取学生设备列表
POST /stu_equipment { data: params } 创建学生设备
PUT /stu_equipment { data: params } 更新学生设备信息
DELETE /stu_equipment { data: { data: params }} 删除学生设备
1
2
3
4
5
6
7
8
9
create table stu_equipment (
eid int not null auto_increment comment '唯一标识',
stu_equipment_id varchar(30) comment '设备编号',
stu_equipment_name varchar(30) comment '设备名称',
create_time timestamp comment '购置时间',
is_broken tinyint(1) comment '是否报废',
memo varchar(30) comment '备注',
primary key(eid)
)

学生资料管理表API

请求方式 从路由 参数 说明
GET /stu_supply { params: params } 获取学生设备列表
POST /stu_supply { data: params } 创建学生设备
PUT /stu_supply { data: params } 更新学生设备信息
DELETE /stu_supply { data: { data: params }} 删除学生设备
1
2
3
4
5
6
7
8
9
10
create table stu_supply (
sid int not null auto_increment comment '唯一标识',
stu_number int not null comment '学号',
cost_type int comment '费用类型',
money decimal comment '支出金额',
create_time timestamp comment '支出时间',
memo varchar(30) comment '备注',
primary key(sid)
)
费用类型 0图书费 1打印纸 2其他

学生出版文献表API

请求方式 从路由 参数 说明
GET /stu_publish { params: params } 获取学生出版文献列表
POST /stu_publish { data: params } 创建学生出版文献
PUT /stu_publish { data: params } 更新学生出版文献信息
DELETE /stu_publish { data: { data: params }} 删除学生出版文献信息
1
2
3
4
5
6
7
8
9
10
11
create table stu_publish (
pid int not null auto_increment comment '唯一标识',
stu_number int not null comment '学号',
publish_type int comment '费用类型',
money decimal comment '费用金额',
create_time timestamp comment '支出时间',
memo varchar(30) comment '备注',
primary key(pid)
)

费用类型 0版面费 1审稿费 2专利费 3软件著作权 4其他

学生津贴管理表API

请求方式 从路由 参数 说明
GET /stu_subsidy { params: params } 获取学生津贴列表
POST /stu_subsidy { data: params } 创建学生津贴信息
PUT /stu_subsidy { data: params } 更新学生津贴信息
DELETE /stu_subsidy { data: { data: params }} 删除学生津贴信息
1
2
3
4
5
6
7
8
9
10
create table stu_subsidy (
sid int not null auto_increment comment '唯一标识',
stu_number int not null comment '学号',
subsidy_type int comment '津贴类型',
money decimal comment '津贴金额',
create_time timestamp comment '支出时间',
memo varchar(30) comment '备注',
primary key(sid)
)
费用类型 0奖学金 1助学金 2助教金 3助管金 4其他

学生差旅管理表API

请求方式 从路由 参数 说明
GET /stu_travel { params: params } 获取学生差旅列表
POST /stu_travel { data: params } 创建学生差旅信息
PUT /stu_travel { data: params } 更新学生差旅信息
DELETE /stu_travel { data: { data: params }} 删除学生差旅信息
1
2
3
4
5
6
7
8
9
10
11
create table stu_travel (
travel_id int comment '票据id',
travel_type int comment '费用类型',
people varchar(30) comment '所有学生数组',
money decimal comment '费用金额',
is_main tinyint(1) comment '是否主票据',
start_time timestamp not null default '0000-00-00 00:00:00' comment '出差时间',
end_time timestamp not null default '0000-00-00 00:00:00' comment '返程时间',
memo varchar(30) comment '备注',
primary key(travel_id)
)

实验室表API

1
2
3
4
5
6
7
create table lab (
lab_id int not null auto_increment comment '唯一标识',
lab_name varchar(30) comment '实验室名',
lab_place varchar(30) comment '地点',
manager varchar(30) comment '负责人',
primary key(lab_id)
)

实验室设备表API

1
2
3
4
5
6
7
8
9
10
create table lab_equipment (
eid int not null auto_increment comment '唯一标识',
lab_equipment_id int comment '设备编号',
lab_id int comment '所属实验室id',
lab_equipment_name varchar(30) comment '设备名称',
create_time timestamp comment '购置时间',
is_broken tinyint(1) comment '是否报废',
memo varchar(30) comment '备注',
primary key(eid)
)

实验室材料管理表API

1
2
3
4
5
6
7
8
create table lab_supply (
sid int not null auto_increment comment '唯一标识',
lab_id bigint(20) comment '实验室id',
cost_type int comment '费用类型',
money decimal comment '支出金额',
create_time timestamp comment '支出时间',
memo varchar(30) comment '备注'
)

项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
SpringBoot
.
├── ecnuwo.iml
├── mvnw
├── mvnw.cmd
├── pom.xml
├── src
│   ├── main
│   │   ├── java
│   │   │   └── cn
│   │   │   └── lightina
│   │   │   └── ecnuwo
│   │   │   ├── EcnuwoApplication.java
│   │   │   ├── controller
│   │   │   │   ├── StuEquipmentController.java
│   │   │   │   ├── StuPublishController.java
│   │   │   │   ├── StuSubsidyController.java
│   │   │   │   ├── StuSupplyController.java
│   │   │   │   └── StudentController.java
│   │   │   ├── dao
│   │   │   │   ├── StuEquipmentMapper.java
│   │   │   │   ├── StuPublishMapper.java
│   │   │   │   ├── StuSubsidyMapper.java
│   │   │   │   ├── StuSupplyMapper.java
│   │   │   │   └── StudentMapper.java
│   │   │   ├── dto
│   │   │   │   ├── StuDto.java
│   │   │   │   ├── StuEquipmentDto.java
│   │   │   │   ├── StuPublishDto.java
│   │   │   │   ├── StuSubsidyDto.java
│   │   │   │   └── StuSupplyDto.java
│   │   │   ├── exception
│   │   │   ├── pojo
│   │   │   │   ├── Lab.java
│   │   │   │   ├── LabEquipment.java
│   │   │   │   ├── LabSupply.java
│   │   │   │   ├── ProcessResult.java
│   │   │   │   ├── StuEquipment.java
│   │   │   │   ├── StuPublish.java
│   │   │   │   ├── StuSubsidy.java
│   │   │   │   ├── StuSupply.java
│   │   │   │   ├── StuTravel.java
│   │   │   │   ├── StuTravelRel.java
│   │   │   │   └── Student.java
│   │   │   └── service
│   │   │   ├── StuEquipmentService.java
│   │   │   ├── StuEquipmentServiceImpl.java
│   │   │   ├── StuPublishService.java
│   │   │   ├── StuPublishServiceImpl.java
│   │   │   ├── StuSubsidyService.java
│   │   │   ├── StuSubsidyServiceImpl.java
│   │   │   ├── StuSupplyService.java
│   │   │   ├── StuSupplyServiceImpl.java
│   │   │   ├── StudentService.java
│   │   │   └── StudentServiceImpl.java
│   │   └── resources
│   │   ├── application.yml
│   │   └── mapper
│   │   ├── student.xml
│   │   ├── stuequipment.xml
│   │   ├── stupublish.xml
│   │   ├── stusubsidy.xml
│   │   └── stusupply.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Vue 深度过大 只显示两层
.
├── LICENSE
├── README.en.md
├── README.md
├── build
├── config
├── index.html
├── log.ico
├── node_modules
├── package-lock.json
├── package.json
├── static
├── src
├── App.vue
├── api
├── assets
├── components
├── config
├── const
├── directive
├── errorLog.js
├── filters
├── global
├── icons
├── lang
├── main.js
├── mock
├── permission.js
├── router
├── store
├── styles
├── utils
├── vendor
└── views