Skip to content

Commit 6b70e57

Browse files
committed
1
1 parent fe1de18 commit 6b70e57

File tree

21 files changed

+504
-167
lines changed

21 files changed

+504
-167
lines changed

.eslintrc.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
module.exports = {
22
root: true,
33
env: {
4-
node: true
4+
node: true,
5+
es6: true,
56
},
67
extends: ['plugin:vue/essential', '@vue/prettier'],
78
rules: {

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ vue-eden 是一个美观的后台管理系统模板,简称 Eden(伊甸园)
6363
│   ├── main.js        入口文件
6464
│   ├── mock           MOCK 数据
6565
│   ├── router         路由
66-
│   │ ├── asyncRouterMap.js 右侧菜单数据
66+
│   │ ├── asyncRouterMap.js 右侧菜单数据
6767
│   ├── store Store
6868
│   ├── svg           svg 存放目录
6969
│   ├── theme          主题色 css

package.json

-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
"echarts": "^4.2.0-rc.2",
2222
"element-ui": "^2.4.11",
2323
"js-cookie": "^2.2.0",
24-
"mockjs": "^1.0.1-beta3",
2524
"normalize.css": "^8.0.1",
2625
"nprogress": "^0.2.0",
2726
"query-string": "^6.2.0",

src/api/login.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ export function getUserInfo(username) {
2323
return http({
2424
url: '/user/info',
2525
method: 'get',
26-
params: { username }
26+
params: {
27+
username
28+
}
2729
})
2830
}

src/api/manage.js

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
import axios from 'axios'
2+
3+
let base = ''
4+
5+
export const getUserList = params => {
6+
return axios.get(`${base}/user/list`, {
7+
params: params
8+
})
9+
}
10+
11+
export const getUserListPage = params => {
12+
return axios.get(`${base}/user/listpage`, {
13+
params: params
14+
})
15+
}
16+
17+
export const removeUser = params => {
18+
return axios.get(`${base}/user/remove`, {
19+
params: params
20+
})
21+
}
22+
23+
export const batchRemoveUser = params => {
24+
return axios.get(`${base}/user/batchremove`, {
25+
params: params
26+
})
27+
}
28+
29+
export const editUser = params => {
30+
return axios.get(`${base}/user/edit`, {
31+
params: params
32+
})
33+
}
34+
35+
export const addUser = params => {
36+
return axios.get(`${base}/user/add`, {
37+
params: params
38+
})
39+
}

src/assets/images/avatar.jpg

118 KB
Loading

src/lang/en.js

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export default {
4646
},
4747
sidebarDropDown: {
4848
profile: 'Profile',
49+
change_password: 'Change Password',
4950
lock: 'Lock',
5051
logout: 'Logout'
5152
},

src/lang/zh.js

+10-2
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,11 @@ export default {
2424
unlock: '解锁'
2525
},
2626
login: {
27-
edenPart1: '伊甸',
28-
edenPart2: '',
27+
edenPart1: '智能考勤',
28+
edenPart2: '系统',
2929
title: '系统登录',
3030
btn: '登录',
31+
register: '注册',
3132
radioEN: '英语',
3233
radioZH: '中文',
3334
forgetpwd: '忘记密码',
@@ -49,6 +50,7 @@ export default {
4950
},
5051
sidebarDropDown: {
5152
profile: '个人中心',
53+
change_password: '修改密码',
5254
lock: '锁定系统',
5355
logout: '退出登录'
5456
},
@@ -66,5 +68,11 @@ export default {
6668
locked: '系统已被锁定!',
6769
unlock: '系统已解锁成功!',
6870
topImg: '图片展示区域'
71+
},
72+
user: {
73+
username: '昵称',
74+
token: '用户名',
75+
introduction: '个性签名',
76+
avatar: '头像地址'
6977
}
7078
}

src/main.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import scroll from 'vue-seamless-scroll'
44
import Icon from 'vue-svg-icon/Icon.vue'
55
import '@/theme/element-#41B883/index.css'
66
import '@/assets/styl/index'
7-
import '@/mock'
87

98
import App from '@/App'
109
import { router } from '@/router'
@@ -21,7 +20,7 @@ Vue.use(Element, {
2120
i18n: (key, value) => i18n.t(key, value)
2221
})
2322

24-
Vue.config.productionTip = false
23+
Vue.config.productionTip = true
2524

2625
new Vue({
2726
el: '#app',

src/mock/index.js

-12
This file was deleted.

src/mock/login.js

-57
This file was deleted.

src/router/routerControl.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import { getToken } from '@/utils/auth'
66
import * as tools from '@/utils/tools'
77

88
const hasPermission = (roles, permissionRoles) => {
9-
if (roles.indexOf('admin') !== -1) return true
9+
if (roles === -1) return true
1010
if (!permissionRoles) return true
11-
return roles.some(role => permissionRoles.indexOf(role) !== -1)
11+
return true
1212
}
1313

1414
const whiteList = ['/login']

src/store/modules/user.js

+24-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import { loginbyUser, logout, getUserInfo } from '@/api/login'
21
import { setToken, removeToken } from '@/utils/auth'
32
import Cookies from 'js-cookie'
43
import * as types from '../mutaion-types'
4+
import http from '@/utils/http'
55

66
const user = {
77
state: {
@@ -32,7 +32,15 @@ const user = {
3232
loginbyUser({ commit }, { username, password }) {
3333
return new Promise(async (resolve, reject) => {
3434
try {
35-
const response = await loginbyUser(username, password)
35+
const data = {
36+
username,
37+
password
38+
}
39+
const response = await http({
40+
url: '/login/login',
41+
method: 'post',
42+
data
43+
})
3644
if (response.data) {
3745
commit(types.SET_TOKEN, response.data.token)
3846
setToken(response.data.token)
@@ -44,10 +52,10 @@ const user = {
4452
}
4553
})
4654
},
47-
logout({ commit, state }) {
55+
logout({ commit }) {
4856
return new Promise(async (resolve, reject) => {
4957
try {
50-
await logout(state.token)
58+
await http({ url: '/login/logout', method: 'post' })
5159
commit(types.SET_ROLES, '')
5260
commit(types.SET_ROLES, [])
5361
Cookies.remove('user')
@@ -68,8 +76,18 @@ const user = {
6876
getUserInfo({ commit }) {
6977
return new Promise(async (resolve, reject) => {
7078
try {
71-
const response = await getUserInfo(Cookies.get('user'))
72-
const { roles, name, avatar, introduction } = response.data
79+
const username = Cookies.get('user')
80+
const response = await http({
81+
url: '/user/info',
82+
method: 'get',
83+
params: {
84+
username
85+
}
86+
})
87+
const roles = response.data.type + ''
88+
const name = response.data.name
89+
const avatar = response.data.avatar
90+
const introduction = response.data.introduction
7391

7492
commit(types.SET_ROLES, roles)
7593
commit(types.SET_NAME, name)

src/views/attendance/index.vue

+62-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,72 @@
11
<template>
22
<div>
3-
attendance page
3+
<h1>请假申请</h1>
4+
<el-form ref="form" :model="form" label-width="80px">
5+
<el-form-item label="申请人">
6+
<el-input v-model="form.name" disabled></el-input>
7+
</el-form-item>
8+
<el-form-item label="班级">
9+
<el-select v-model="form.speciality" placeholder="请选择班级">
10+
<el-option label="请选择..." value="null"></el-option>
11+
</el-select>
12+
</el-form-item>
13+
<el-form-item label="请假类型">
14+
<el-select v-model="form.type" placeholder="请选择类型">
15+
<el-option label="病假" value="病假"></el-option>
16+
<el-option label="事假" value="事假"></el-option>
17+
<el-option label="其他" value="其他"></el-option>
18+
</el-select>
19+
</el-form-item>
20+
<el-form-item label="请假时间">
21+
<el-col :span="11">
22+
<el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 100%;"></el-date-picker>
23+
</el-col>
24+
<el-col class="line" :span="2">-</el-col>
25+
<el-col :span="11">
26+
<el-time-picker type="fixed-time" placeholder="第几节课" v-model="form.class1" style="width: 100%;"></el-time-picker>
27+
</el-col>
28+
<el-col class="line" :span="2">~</el-col>
29+
<el-col :span="11">
30+
<el-date-picker type="date" placeholder="选择日期" v-model="form.date2" style="width: 100%;"></el-date-picker>
31+
</el-col>
32+
<el-col class="line" :span="2">-</el-col>
33+
<el-col :span="11">
34+
<el-time-picker type="fixed-time" placeholder="第几节课" v-model="form.class2" style="width: 100%;"></el-time-picker>
35+
</el-col>
36+
</el-form-item>
37+
<el-form-item label="请假原因">
38+
<el-input type="textarea" v-model="form.reason"></el-input>
39+
</el-form-item>
40+
<el-form-item>
41+
<el-button type="primary" @click="onSubmit">立即创建</el-button>
42+
<el-button>取消</el-button>
43+
</el-form-item>
44+
</el-form>
445
</div>
546
</template>
647

748
<script>
849
export default {
9-
name: 'attendancepage'
50+
name: 'attendancepage',
51+
data: function() {
52+
return {
53+
form: {
54+
name: '',
55+
speciality: '',
56+
date1: '',
57+
class1: '',
58+
date2: '',
59+
class2: '',
60+
reason: ''
61+
}
62+
}
63+
},
64+
mounted: {},
65+
methods: {
66+
// 提交请假
67+
onSubmit: function() {}
68+
}
1069
}
1170
</script>
1271

13-
<style lang="stylus" scoped>
14-
15-
</style>
72+
<style lang="stylus" scoped></style>

src/views/datatable/index.vue

-15
This file was deleted.

0 commit comments

Comments
 (0)