添加注释

ui1
yujialong 4 years ago
parent b3af5d1dbc
commit 8c46c6e254
  1. 6
      src/layouts/header/index.vue
  2. 8
      src/layouts/home/index.vue
  3. 1
      src/layouts/navbar/index.vue
  4. 2
      src/libs/auth/generateBtnPermission.js
  5. 4
      src/libs/route/addRoutes.js
  6. 64
      src/pages/data/list/index.vue
  7. 11
      src/pages/index/list/index.vue
  8. 6
      src/pages/role/list/index.vue
  9. 3
      src/pages/setting/person/download.vue
  10. 2
      src/pages/setting/person/index.vue
  11. 1
      src/pages/setting/person/info.vue
  12. 4
      src/pages/stat/list/index.vue
  13. 8
      src/pages/user/list/index.vue
  14. 2
      src/plugins/auth/index.js
  15. 1
      src/plugins/requests/index.js
  16. 8
      src/setting.js
  17. 1
      src/store/modules/user.js

@ -113,10 +113,13 @@ export default {
} }
}, },
mounted(){ mounted(){
// ,store,,
if(this.customer){ if(this.customer){
let customer = atob(decodeURI(this.customer)) == 'false' ? false : true let customer = atob(decodeURI(this.customer)) == 'false' ? false : true
this.setCustomer(customer) this.setCustomer(customer)
} }
// ,
this.token && this.getUserInfo() this.token && this.getUserInfo()
}, },
methods: { methods: {
@ -130,6 +133,7 @@ export default {
let isManager = userAccount.roleId != '0' let isManager = userAccount.roleId != '0'
this.isUser = isManager this.isUser = isManager
let mg = this.$route.query.mg let mg = this.$route.query.mg
//
if(mg && atob(decodeURI(mg)) === 'true'){ if(mg && atob(decodeURI(mg)) === 'true'){
this.showSetting = false this.showSetting = false
} }
@ -161,6 +165,7 @@ export default {
title: '登录' title: '登录'
}) })
}, },
//
toManager(){ toManager(){
let routes = this.routes let routes = this.routes
if(routes.length){ if(routes.length){
@ -174,6 +179,7 @@ export default {
}) })
window.open(route.href) window.open(route.href)
}else{ }else{
// ,,
util.warningMsg('该角色未开放模块,请联系管理员') util.warningMsg('该角色未开放模块,请联系管理员')
} }
}, },

@ -18,13 +18,11 @@
<script> <script>
import vHead from '../header' import vHead from '../header'
import vFooter from '../footer' import vFooter from '../footer'
import bus from '@/libs/bus'
import Setting from '@/setting' import Setting from '@/setting'
export default { export default {
data() { data() {
return { return {
tagsList: [], tagsList: [],
hideNavList: Setting.layout.hideNavList
}; };
}, },
components: { components: {
@ -32,11 +30,7 @@ export default {
vFooter vFooter
}, },
computed: { computed: {
hideNavbar() {
let route = this.$route.name
if(this.hideNavList.includes(route)) return false
return true
}
}, },
created() { created() {

@ -86,6 +86,7 @@ export default {
this.menus = this.defaultMenus this.menus = this.defaultMenus
} }
}else{ }else{
// ,
this.menus = [...this.defaultMenus,...this.dataMenu] this.menus = [...this.defaultMenus,...this.dataMenu]
} }
}, },

@ -8,7 +8,7 @@ export default function(data){
data.map(e => { data.map(e => {
if(e.select){ if(e.select){
e.children.map(n => { e.children.map(n => {
if(n.select){ if(n.select){ // select为true,则表示拥有该权限
if(n.children.length){ if(n.children.length){
result.push(`${e.name}:${n.name}`) result.push(`${e.name}:${n.name}`)
n.children.map(j => { n.children.map(j => {

@ -11,7 +11,7 @@ function createMeta(item){
function createRoute(data){ function createRoute(data){
data.map(e => { data.map(e => {
if(e.select && e.path){ if(e.select && e.path){ // select为true,则表示拥有该权限,同时path不为空,才生成路由集合
let meta = createMeta(e) let meta = createMeta(e)
newRoutes.push({ newRoutes.push({
name: e.path, name: e.path,
@ -20,6 +20,7 @@ function createRoute(data){
meta meta
}) })
} }
// 递归生成路由集合
e.children && e.children.length && createRoute(e.children) e.children && e.children.length && createRoute(e.children)
}) })
} }
@ -28,5 +29,4 @@ export default function(data,path){
generateBtnPermission(data) generateBtnPermission(data)
createRoute(data) createRoute(data)
store.dispatch('auth/addRoutes',newRoutes) store.dispatch('auth/addRoutes',newRoutes)
// router.addRoutes(routes)
} }

@ -241,6 +241,7 @@ export default {
// }) // })
this.getType() this.getType()
// ,
if(this.$route.query.download){ if(this.$route.query.download){
this.download({ this.download({
id: this.$route.query.id, id: this.$route.query.id,
@ -330,6 +331,7 @@ export default {
this.$post(`${this.api.getIdQueryTable}?categoryId=${this.defaultType}&showName=${this.keyword}&pageNum=${this.page}&pageSize=${this.pageSize}&updateTime=`).then(res => { this.$post(`${this.api.getIdQueryTable}?categoryId=${this.defaultType}&showName=${this.keyword}&pageNum=${this.page}&pageSize=${this.pageSize}&updateTime=`).then(res => {
this.listData = res.pageList.records this.listData = res.pageList.records
this.total = res.pageList.total this.total = res.pageList.total
//
this.listData.length && this.preview(this.listData[0],1) this.listData.length && this.preview(this.listData[0],1)
}).catch(res => {}) }).catch(res => {})
}, },
@ -423,6 +425,7 @@ export default {
}, },
preview(row,isDefault){ preview(row,isDefault){
this.$get(`${this.api.previewData}?tableName=${row.name}&tableId=${row.id}`).then(res => { this.$get(`${this.api.previewData}?tableName=${row.name}&tableId=${row.id}`).then(res => {
// +1
this.$post(this.api.saveRecord,{ this.$post(this.api.saveRecord,{
tableId: row.id, tableId: row.id,
type: 2, type: 2,
@ -431,6 +434,7 @@ export default {
let comment = res.comment let comment = res.comment
let previewHead = [] let previewHead = []
comment.map(n => { comment.map(n => {
// id
n.field != 'id' && n.field != 'operation_time' && previewHead.push(n) n.field != 'id' && n.field != 'operation_time' && previewHead.push(n)
}) })
this.previewHead = previewHead this.previewHead = previewHead
@ -438,10 +442,12 @@ export default {
let data = res.data let data = res.data
data.map(n => { data.map(n => {
for(let i in n){ for(let i in n){
// +0000,,
if(typeof n[i] == 'string' && n[i].endsWith('+0000')) n[i] = util.formatDate('yyyy-MM-dd hh:mm:ss',new Date(n[i])) if(typeof n[i] == 'string' && n[i].endsWith('+0000')) n[i] = util.formatDate('yyyy-MM-dd hh:mm:ss',new Date(n[i]))
} }
}) })
this.previewData = data this.previewData = data
// ,
isDefault || this.$nextTick(() => { isDefault || this.$nextTick(() => {
document.querySelector('#previewTable').scrollIntoView() document.querySelector('#previewTable').scrollIntoView()
}) })
@ -452,6 +458,7 @@ export default {
this.fields = val ? this.fieldsList.map(n => n.comment) : [] this.fields = val ? this.fieldsList.map(n => n.comment) : []
}, },
download(row){ download(row){
// ,
this.$get(`${this.api.isDownload}`,{ this.$get(`${this.api.isDownload}`,{
tableId: row.id, tableId: row.id,
schoolId: this.schoolId, schoolId: this.schoolId,
@ -459,6 +466,7 @@ export default {
this.curRow = row this.curRow = row
this.downloadVisible = true this.downloadVisible = true
// ,,
this.$get(`${this.api.getTableTime}`,{ this.$get(`${this.api.getTableTime}`,{
tableId: row.id tableId: row.id
}).then(res => { }).then(res => {
@ -466,12 +474,14 @@ export default {
if(list.startTime){ if(list.startTime){
startTimeLimit = new Date(list.startTime).getTime() startTimeLimit = new Date(list.startTime).getTime()
}else{ }else{
// ,
this.startTimeDisabled = true this.startTimeDisabled = true
} }
if(list.endTime){ if(list.endTime){
endTimeLimit = new Date(list.endTime).getTime() endTimeLimit = new Date(list.endTime).getTime()
this.timeDefault = list.endTime this.timeDefault = list.endTime
}else{ }else{
// ,
this.endTimeDisabled = true this.endTimeDisabled = true
} }
}).catch(res => {}) }).catch(res => {})
@ -501,32 +511,35 @@ export default {
if(!this.endTime) return util.warningMsg('请选择结束时间') if(!this.endTime) return util.warningMsg('请选择结束时间')
if(!this.frequency) return util.warningMsg('请选择数据频率') if(!this.frequency) return util.warningMsg('请选择数据频率')
let invalid = false let invalid = false
if(this.startTime && this.endTime){
let startTime = new Date(this.startTime) let startTime = new Date(this.startTime)
let endTime = new Date(this.endTime) let endTime = new Date(this.endTime)
let frequency = this.frequency let frequency = this.frequency
if(frequency == 2){ // ,
let week = [] // ,,1~5,
while(startTime <= endTime){ // ,,30;
let weekNum = startTime.getDay() if(frequency == 2){
if(weekNum == 0) weekNum = 7 let week = []
week.push(weekNum) while(startTime <= endTime){
startTime.setTime(startTime.getTime() + 86400000) let weekNum = startTime.getDay()
} if(weekNum == 0) weekNum = 7
for(let i = 1;i <= 5;i++){ week.push(weekNum)
if(!week.includes(i)){ startTime.setTime(startTime.getTime() + 86400000)
invalid = true }
break // 1~5,,
} for(let i = 1;i <= 5;i++){
if(!week.includes(i)){
invalid = true
break
} }
}else if(frequency == 3){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 30) invalid = true
}else if(frequency == 4){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 90) invalid = true
}else if(frequency == 5){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 365) invalid = true
} }
}else if(frequency == 3){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 30) invalid = true
}else if(frequency == 4){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 90) invalid = true
}else if(frequency == 5){
if((endTime.getTime() - startTime.getTime()) / 86400000 < 365) invalid = true
} }
if(invalid) return util.warningMsg('请选择完整区间') if(invalid) return util.warningMsg('请选择完整区间')
@ -550,10 +563,13 @@ export default {
}).then((res) => { }).then((res) => {
msgObj.close() msgObj.close()
if(res.data.type != 'multipart/form-data') return util.warningMsg('数据总数为零!') if(res.data.type != 'multipart/form-data') return util.warningMsg('数据总数为零!')
// excel
util.downloadFileDirect(`${this.curRow.showName}.xls`,new Blob([res.data])) util.downloadFileDirect(`${this.curRow.showName}.xls`,new Blob([res.data]))
//
this.$get(`${this.api.downloadRecord}?tableId=${this.curRow.id}&fields=${newFields.join()}` + (startTime ? `&startTime=${startTime}` : '') + (endTime ? `&endTime=${endTime}` : '') + `&frequency=${frequency}`).then(res => {}).catch(res => {}) this.$get(`${this.api.downloadRecord}?tableId=${this.curRow.id}&fields=${newFields.join()}` + (startTime ? `&startTime=${startTime}` : '') + (endTime ? `&endTime=${endTime}` : '') + `&frequency=${frequency}`).then(res => {}).catch(res => {})
// +1
this.$post(this.api.saveRecord,{ this.$post(this.api.saveRecord,{
tableId: this.curRow.id, tableId: this.curRow.id,
type: 1, type: 1,

@ -89,15 +89,16 @@ export default {
this.total = res.totalCount this.total = res.totalCount
}).catch(res => {}) }).catch(res => {})
}, },
//
getHot(){ getHot(){
this.$get(this.api.queryDatabaseInfo).then(res => { this.$get(this.api.queryDatabaseInfo).then(res => {
let list = JSON.parse(res.databaseInfo) let list = JSON.parse(res.databaseInfo)
list.map(n => { list.map(n => n.download)
n.download //
})
list.sort((a,b) => { list.sort((a,b) => {
return b.download - a.download return b.download - a.download
}) })
//
this.hotData = list.slice(0,3) this.hotData = list.slice(0,3)
}).catch(res => {}) }).catch(res => {})
}, },
@ -111,11 +112,14 @@ export default {
this.getData() this.getData()
}, },
download(row){ download(row){
// ,
if(this.token){ if(this.token){
//
this.$get(`${this.api.isDownload}`,{ this.$get(`${this.api.isDownload}`,{
tableId: row.id, tableId: row.id,
schoolId: this.schoolId, schoolId: this.schoolId,
}).then(res => { }).then(res => {
//
this.$router.push(`/data?download=true&id=${row.id}&name=${row.name}&showName=${row.showName}`) this.$router.push(`/data?download=true&id=${row.id}&name=${row.name}&showName=${row.showName}`)
}).catch(res => {}) }).catch(res => {})
}else{ }else{
@ -126,6 +130,7 @@ export default {
} }
}, },
toData(row){ toData(row){
// ,
if(this.token){ if(this.token){
this.$router.push(`/data?typeId=${row.categoryTwoId}`) this.$router.push(`/data?typeId=${row.categoryTwoId}`)
}else{ }else{

@ -144,6 +144,7 @@ export default {
this.$refs.table.clearSelection() this.$refs.table.clearSelection()
this.getData() this.getData()
}, },
//
getPer(){ getPer(){
if(!this.permissions.length){ if(!this.permissions.length){
this.$get(this.api.queryPermissionMenu).then(res => { this.$get(this.api.queryPermissionMenu).then(res => {
@ -158,11 +159,13 @@ export default {
this.permissions.length && this.$refs.per.setCheckedNodes([]) this.permissions.length && this.$refs.per.setCheckedNodes([])
this.roleVisible = true this.roleVisible = true
}, },
//
handleRolePer(data,permissions){ handleRolePer(data,permissions){
let result = data let result = data
if(permissions.length){ if(permissions.length){
permissions.map(e => { permissions.map(e => {
if(result.includes(e.id) && e.children.length){ if(result.includes(e.id) && e.children.length){
// ,idid,,,
e.children.every(n => result.includes(n)) || result.splice(result.indexOf(e.id),1) e.children.every(n => result.includes(n)) || result.splice(result.indexOf(e.id),1)
} }
e.children.length && this.handleRolePer(data,e.children) e.children.length && this.handleRolePer(data,e.children)
@ -206,6 +209,7 @@ export default {
isPort: 2 isPort: 2
} }
this.$post(this.api.saveOrUpdate,data).then(res => { this.$post(this.api.saveOrUpdate,data).then(res => {
// ,(),
let permissionId = [...this.$refs.per.getHalfCheckedKeys(),...this.$refs.per.getCheckedKeys()] let permissionId = [...this.$refs.per.getHalfCheckedKeys(),...this.$refs.per.getCheckedKeys()]
let perData = { let perData = {
roleId: res.roleId, roleId: res.roleId,
@ -220,6 +224,7 @@ export default {
}).catch(res => {}) }).catch(res => {})
}, },
handleDelete(row) { handleDelete(row) {
// ,,
this.$post(this.api.getUserList,{ this.$post(this.api.getUserList,{
createTime: '', createTime: '',
isEnable: '', isEnable: '',
@ -231,6 +236,7 @@ export default {
roleId: row.id roleId: row.id
}).then(res => { }).then(res => {
let msg = '' let msg = ''
//
if(res.pageList.total){ if(res.pageList.total){
msg = '该角色已被引用,删除后拥有该角色的账号将失去相应权限,是否删除?' msg = '该角色已被引用,删除后拥有该角色的账号将失去相应权限,是否删除?'
}else{ }else{

@ -86,6 +86,7 @@ export default {
this.getData() this.getData()
}, },
download(row){ download(row){
//
this.$get(`${this.api.isDownload}`,{ this.$get(`${this.api.isDownload}`,{
tableId: row.tableId, tableId: row.tableId,
schoolId: this.schoolId, schoolId: this.schoolId,
@ -101,8 +102,10 @@ export default {
}).then(res => { }).then(res => {
msgObj.close() msgObj.close()
if(res.data.type != 'multipart/form-data') return util.warningMsg('数据总数为零!') if(res.data.type != 'multipart/form-data') return util.warningMsg('数据总数为零!')
// excel
util.downloadFileDirect(`${row.databaseName}.xls`,new Blob([res.data])) util.downloadFileDirect(`${row.databaseName}.xls`,new Blob([res.data]))
// +1
this.$post(this.api.saveRecord,{ this.$post(this.api.saveRecord,{
tableId: row.tableId, tableId: row.tableId,
type: 1, type: 1,

@ -52,6 +52,7 @@ export default {
'avatar' 'avatar'
]), ]),
}, },
// ,
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
if(this.edited){ if(this.edited){
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', {
@ -77,6 +78,7 @@ export default {
this.setAvatar(res.message) this.setAvatar(res.message)
}, },
selectType(key){ selectType(key){
// ,
if(key == 2 && this.edited){ if(key == 2 && this.edited){
this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', { this.$confirm(`您所更改的内容未更新,是否更新?`, '提示', {
type: 'warning' type: 'warning'

@ -350,6 +350,7 @@ export default {
}; };
}, },
watch: { watch: {
// ,
form: { form: {
handler(val, oldVal){ handler(val, oldVal){
this.updateTime++ this.updateTime++

@ -180,6 +180,7 @@ export default {
} }
}, },
mounted() { mounted() {
// ,schoolId,,urlschoolId
if(!this.schoolId){ if(!this.schoolId){
let schoolId = this.$route.query.schoolId let schoolId = this.$route.query.schoolId
if(schoolId) schoolId = atob(decodeURI(schoolId)) if(schoolId) schoolId = atob(decodeURI(schoolId))
@ -241,10 +242,12 @@ export default {
getDatabase(){ getDatabase(){
this.$get(`${this.api.queryDatabaseInfo}?schoolId=${this.schoolId}&startTime=${this.startTime}&endTime=${this.endTime}`).then(res => { this.$get(`${this.api.queryDatabaseInfo}?schoolId=${this.schoolId}&startTime=${this.startTime}&endTime=${this.endTime}`).then(res => {
let list = JSON.parse(res.databaseInfo) let list = JSON.parse(res.databaseInfo)
//
this.listData = list.slice(0,10) this.listData = list.slice(0,10)
this.listDataAll = list this.listDataAll = list
}).catch(res => {}) }).catch(res => {})
}, },
// redis,,
searchData(){ searchData(){
let list = this.listDataAll let list = this.listDataAll
let result = [] let result = []
@ -305,6 +308,7 @@ export default {
}, },
exportDatabaseByMonth(){ exportDatabaseByMonth(){
let data = [] let data = []
// ,,,
if(this.multipleSelection1.length){ if(this.multipleSelection1.length){
data = this.multipleSelection1.map(n => `yearList=${n.year}`) data = this.multipleSelection1.map(n => `yearList=${n.year}`)
}else{ }else{

@ -371,7 +371,6 @@ export default {
userName: data.userName, userName: data.userName,
roleId: data.roleId, roleId: data.roleId,
phone: data.phone ? data.phone : '暂未绑定', phone: data.phone ? data.phone : '暂未绑定',
// uniqueIdentification: data.uniqueIdentification,
workNumber: data.workNumber, workNumber: data.workNumber,
email: data.email, email: data.email,
schoolId: data.schoolId, schoolId: data.schoolId,
@ -393,17 +392,22 @@ export default {
console.log(11,val) console.log(11,val)
}, },
confirm(){ confirm(){
// return console.log(11,this.form.roleId)
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
if(this.accountRepeat) return util.errorMsg('该账号已存在!') if(this.accountRepeat) return util.errorMsg('该账号已存在!')
if(this.workNumberRepeat) return util.errorMsg('该学号/工号已存在!') if(this.workNumberRepeat) return util.errorMsg('该学号/工号已存在!')
let data = this.form let data = this.form
// ,schoolId
data.schoolId = data.schoolId ? data.schoolId : this.schoolId data.schoolId = data.schoolId ? data.schoolId : this.schoolId
// ,
if(!data.userId) data.uniqueIdentification = new Date().getTime() if(!data.userId) data.uniqueIdentification = new Date().getTime()
// ,"",,""roleId0,
// ,"",roleId0
if(data.roleId.length == 1){ if(data.roleId.length == 1){
data.roleId = '0' data.roleId = '0'
}else{ }else{
// ,1id
data.roleId = data.roleId[1] data.roleId = data.roleId[1]
} }
if(this.form.userId){ if(this.form.userId){

@ -8,6 +8,7 @@ import store from '@/store'
export default { export default {
inserted (el, binding, vnode) { inserted (el, binding, vnode) {
let btnText = '' let btnText = ''
// 如果有传值,就取传的值,否则,就取页面路由和按钮名字拼接起来
if(binding.value){ if(binding.value){
btnText = binding.value btnText = binding.value
}else{ }else{
@ -17,6 +18,7 @@ export default {
if (btnText && btnPermissions && btnPermissions.length) { if (btnText && btnPermissions && btnPermissions.length) {
const isPermission = btnPermissions.includes(btnText) const isPermission = btnPermissions.includes(btnText)
// 如果按钮集合里没有该权限,就把该按钮给去除
if (!isPermission) { if (!isPermission) {
el.parentNode && el.parentNode.removeChild(el) el.parentNode && el.parentNode.removeChild(el)
} }

@ -18,6 +18,7 @@ service.interceptors.request.use(config => {
let storeSchoolId = store.state.user.schoolId let storeSchoolId = store.state.user.schoolId
let routeSchoolId = router.app._route.query.schoolId let routeSchoolId = router.app._route.query.schoolId
if(routeSchoolId) routeSchoolId = atob(decodeURI(routeSchoolId)) if(routeSchoolId) routeSchoolId = atob(decodeURI(routeSchoolId))
// 如果store里没有schoolId,则取url里的schoolId,从用户跳转到后台的时候因为加载顺序的问题会出现这个情况,所以要做这个处理
if(storeSchoolId || routeSchoolId) config.headers.schoolId = storeSchoolId ? storeSchoolId : routeSchoolId if(storeSchoolId || routeSchoolId) config.headers.schoolId = storeSchoolId ? storeSchoolId : routeSchoolId
return config return config
},err => { },err => {

@ -25,17 +25,13 @@ const Setting = {
// Cookies 默认保存时间,单位:天 // Cookies 默认保存时间,单位:天
cookiesExpires: 1, cookiesExpires: 1,
/** /**
* token的key * localStorage里保存的token的key
*/ */
tokenKey: 'data_token', tokenKey: 'data_token',
/** /**
* sessionStorage里state的key * localStorage里保存的vuex的key
*/ */
storeKey: 'data_store', storeKey: 'data_store',
/**
* sessionStorage里username的key
*/
usernameKey: 'data_username',
/** /**
* 默认密码 * 默认密码
*/ */

@ -47,6 +47,7 @@ export default {
util.local.set(Setting.tokenKey,res.data.token,43200000) util.local.set(Setting.tokenKey,res.data.token,43200000)
util.successMsg('登录成功') util.successMsg('登录成功')
setTimeout(() => { setTimeout(() => {
// 登录次数+1
post(api.saveRecord,{ post(api.saveRecord,{
type: 3, type: 3,
}).then(res => {}).catch(res => {}) }).then(res => {}).catch(res => {})

Loading…
Cancel
Save