Commit 2e27ff21 authored by 裴文涛's avatar 裴文涛

解决WebStorm控制台报错问题

parent fc547f83
...@@ -43,7 +43,7 @@ export function updateBusStudentInfo(data) { ...@@ -43,7 +43,7 @@ export function updateBusStudentInfo(data) {
const businessId = data.businessId const businessId = data.businessId
data = Qs.stringify(data) data = Qs.stringify(data)
return request({ return request({
url: '/busstudentinfo/update/' + businessId , url: '/busstudentinfo/update/' + businessId,
method: 'put', method: 'put',
data data
}) })
......
...@@ -155,4 +155,3 @@ export function transformDept(data) { ...@@ -155,4 +155,3 @@ export function transformDept(data) {
}) })
} }
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
<i slot="suffix" class="el-icon-search el-input__icon" /> <i slot="suffix" class="el-icon-search el-input__icon" />
</el-input> </el-input>
<div class="icon-list"> <div class="icon-list">
<div class="icon__single" v-for="(item, index) in iconList" :key="index" @click="selectedIcon(item)"> <div v-for="(item, index) in iconList" :key="index" class="icon__single" @click="selectedIcon(item)">
<svg-icon :icon-class="item" style="height: 30px;width: 16px;display: block;margin-right: 5px" /> <svg-icon :icon-class="item" style="height: 30px;width: 16px;display: block;margin-right: 5px" />
<div :title="item" class="icon__single__text" style="width: calc(100% - 30px)">{{item}}</div> <div :title="item" class="icon__single__text" style="width: calc(100% - 30px)">{{ item }}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -23,6 +23,8 @@ export default { ...@@ -23,6 +23,8 @@ export default {
iconList: icons iconList: icons
} }
}, },
mounted() {
},
methods: { methods: {
filterIcons() { filterIcons() {
this.iconList = icons this.iconList = icons
...@@ -38,8 +40,6 @@ export default { ...@@ -38,8 +40,6 @@ export default {
this.name = '' this.name = ''
this.iconList = icons this.iconList = icons
} }
},
mounted() {
} }
} }
</script> </script>
......
...@@ -43,6 +43,7 @@ ...@@ -43,6 +43,7 @@
* */ * */
import VerifySlide from './Verify/VerifySlide' import VerifySlide from './Verify/VerifySlide'
import VerifyPoints from './Verify/VerifyPoints' import VerifyPoints from './Verify/VerifyPoints'
import { NULL } from 'node-sass'
export default { export default {
name: 'Vue2Verify', name: 'Vue2Verify',
...@@ -68,23 +69,28 @@ export default { ...@@ -68,23 +69,28 @@ export default {
}, },
captchaType: { captchaType: {
type: String, type: String,
required: true required: true,
default: NULL
}, },
figure: { figure: {
type: Number type: Number,
default: NULL
}, },
arith: { arith: {
type: Number type: Number,
default: NULL
}, },
mode: { mode: {
type: String, type: String,
default: 'pop' default: 'pop'
}, },
vSpace: { vSpace: {
type: Number type: Number,
default: NULL
}, },
explain: { explain: {
type: String type: String,
default: NULL
}, },
imgSize: { imgSize: {
type: Object, type: Object,
...@@ -96,10 +102,12 @@ export default { ...@@ -96,10 +102,12 @@ export default {
} }
}, },
blockSize: { blockSize: {
type: Object type: Object,
default: NULL
}, },
barSize: { barSize: {
type: Object type: Object,
default: NULL
} }
}, },
data() { data() {
......
...@@ -187,7 +187,7 @@ export default { ...@@ -187,7 +187,7 @@ export default {
showRefresh: true, showRefresh: true,
transitionLeft: '', transitionLeft: '',
transitionWidth: '', transitionWidth: '',
isFlag: false, isFlag: false
} }
}, },
computed: { computed: {
......
...@@ -3,9 +3,9 @@ import CryptoJS from 'crypto-js' ...@@ -3,9 +3,9 @@ import CryptoJS from 'crypto-js'
* @word 要加密的内容 * @word 要加密的内容
* @keyWord String 服务器随机返回的关键字 * @keyWord String 服务器随机返回的关键字
* */ * */
export function aesEncrypt(word, keyWord = "XwKsGlMcdPMEhR1B") { export function aesEncrypt(word, keyWord = 'XwKsGlMcdPMEhR1B') {
var key = CryptoJS.enc.Utf8.parse(keyWord); var key = CryptoJS.enc.Utf8.parse(keyWord)
var srcs = CryptoJS.enc.Utf8.parse(word); var srcs = CryptoJS.enc.Utf8.parse(word)
var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }); var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 })
return encrypted.toString(); return encrypted.toString()
} }
export function resetSize(vm) { export function resetSize(vm) {
var img_width, img_height, bar_width, bar_height; //图片的宽度、高度,移动条的宽度、高度 var img_width, img_height, bar_width, bar_height // 图片的宽度、高度,移动条的宽度、高度
var parentWidth = vm.$el.parentNode.offsetWidth || window.offsetWidth var parentWidth = vm.$el.parentNode.offsetWidth || window.offsetWidth
var parentHeight = vm.$el.parentNode.offsetHeight || window.offsetHeight var parentHeight = vm.$el.parentNode.offsetHeight || window.offsetHeight
if (vm.imgSize.width.indexOf('%') != -1) { if (vm.imgSize.width.indexOf('%') !== -1) {
img_width = parseInt(this.imgSize.width) / 100 * parentWidth + 'px' img_width = parseInt(this.imgSize.width) / 100 * parentWidth + 'px'
} else { } else {
img_width = this.imgSize.width; img_width = this.imgSize.width
} }
if (vm.imgSize.height.indexOf('%') != -1) { if (vm.imgSize.height.indexOf('%') !== -1) {
img_height = parseInt(this.imgSize.height) / 100 * parentHeight + 'px' img_height = parseInt(this.imgSize.height) / 100 * parentHeight + 'px'
} else { } else {
img_height = this.imgSize.height img_height = this.imgSize.height
} }
if (vm.barSize.width.indexOf('%') != -1) { if (vm.barSize.width.indexOf('%') !== -1) {
bar_width = parseInt(this.barSize.width) / 100 * parentWidth + 'px' bar_width = parseInt(this.barSize.width) / 100 * parentWidth + 'px'
} else { } else {
bar_width = this.barSize.width bar_width = this.barSize.width
} }
if (vm.barSize.height.indexOf('%') != -1) { if (vm.barSize.height.indexOf('%') !== -1) {
bar_height = parseInt(this.barSize.height) / 100 * parentHeight + 'px' bar_height = parseInt(this.barSize.height) / 100 * parentHeight + 'px'
} else { } else {
bar_height = this.barSize.height bar_height = this.barSize.height
} }
return { imgWidth: img_width, imgHeight: img_height, barWidth: bar_width, barHeight: bar_height } return { imgWidth: img_width, imgHeight: img_height, barWidth: bar_width, barHeight: bar_height }
} }
export const _code_chars = [1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] export const _code_chars = [1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
export const _code_color1 = ['#fffff0', '#f0ffff', '#f0fff0', '#fff0f0'] export const _code_color1 = ['#fffff0', '#f0ffff', '#f0fff0', '#fff0f0']
export const _code_color2 = ['#FF0033', '#006699', '#993366', '#FF9900', '#66CC66', '#FF33CC'] export const _code_color2 = ['#FF0033', '#006699', '#993366', '#FF9900', '#66CC66', '#FF33CC']
\ No newline at end of file
...@@ -63,7 +63,7 @@ export default { ...@@ -63,7 +63,7 @@ export default {
deleteCommentAuthorOnly: true, deleteCommentAuthorOnly: true,
editCommentAuthorOnly: true, editCommentAuthorOnly: true,
protect: true, protect: true,
review: option.isEdit, review: option.isEdit
} }
}, },
......
...@@ -7,13 +7,13 @@ ...@@ -7,13 +7,13 @@
class="sidebar-logo-link" class="sidebar-logo-link"
to="/" to="/"
> >
<img :src="logo" class="sidebar-logo" /> <img :src="logo" class="sidebar-logo">
<!-- <div class="sidebar-title">{{ title }} </div>--> <!-- <div class="sidebar-title">{{ title }} </div>-->
</router-link> </router-link>
<router-link v-else key="expand" class="sidebar-logo-link" to="/"> <router-link v-else key="expand" class="sidebar-logo-link" to="/">
<div class="sidebar-logoTitle"> <div class="sidebar-logoTitle">
<div class="sidebar-logoRow"> <div class="sidebar-logoRow">
<img :src="logo" class="sidebar-logo" /> <img :src="logo" class="sidebar-logo">
</div> </div>
<div class="sidebar-title">{{ title }}</div> <div class="sidebar-title">{{ title }}</div>
</div> </div>
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
</template> </template>
<script> <script>
import { isExternal } from '@/utils/validate'
export default { export default {
name: 'SidebarLogo', name: 'SidebarLogo',
......
...@@ -151,7 +151,7 @@ export default { ...@@ -151,7 +151,7 @@ export default {
}, },
closeSelectedTag(view) { closeSelectedTag(view) {
// 关闭标签页清除存储的筛选条件数据 // 关闭标签页清除存储的筛选条件数据
this.$store.dispatch('searchSave/clearOneParams',this.$route.path) this.$store.dispatch('searchSave/clearOneParams', this.$route.path)
this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => { this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
if (this.isActive(view)) { if (this.isActive(view)) {
this.toLastView(visitedViews, view) this.toLastView(visitedViews, view)
......
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
<div <div
v-if=" v-if="
currentPath === '' || currentPath === '' ||
currentPath === null || currentPath === null ||
currentPath === 'R' || currentPath === 'R' ||
currentPath === 'G' currentPath === 'G'
" "
:class="classObj" :class="classObj"
class="app-wrapper" class="app-wrapper"
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
</div> </div>
<div class="nav-container-two"> <div class="nav-container-two">
<div class="placeholder" /> <div class="placeholder" />
<tags-view v-if="themeType && themeType !== '8'" /> <tags-view v-if="themeType && themeType !== '8'" />
<navbar v-if="themeType && themeType !== '8'" /> <navbar v-if="themeType && themeType !== '8'" />
</div> </div>
<el-card v-if="themeType && themeType === '8'" style="margin:.75rem"> <el-card v-if="themeType && themeType === '8'" style="margin:.75rem">
...@@ -44,7 +44,6 @@ import RightPanel from '@/components/RightPanel' ...@@ -44,7 +44,6 @@ import RightPanel from '@/components/RightPanel'
import settings from '@/layout/components/Settings/index.vue' import settings from '@/layout/components/Settings/index.vue'
import { Navbar, Sidebar, AppMain, TagsView, Header } from './components' import { Navbar, Sidebar, AppMain, TagsView, Header } from './components'
import ResizeMixin from './mixin/ResizeHandler' import ResizeMixin from './mixin/ResizeHandler'
import { Card } from 'element-ui'
export default { export default {
name: 'Layout', name: 'Layout',
......
...@@ -59,11 +59,21 @@ import '@/permission' // permission control ...@@ -59,11 +59,21 @@ import '@/permission' // permission control
import { includePermission } from '@/utils/common' import { includePermission } from '@/utils/common'
import { getDict } from '@/api/system/dict/data' import { getDict } from '@/api/system/dict/data'
import { getConfigKey } from '@/api/system/config' import { getConfigKey } from '@/api/system/config'
import { parseTime, resetForm, addDateRange, selectDictLabel, download, handleTree, addDateRangeMothon, addDateLoginMothon } from '@/utils/common' import {
parseTime,
resetForm,
addDateRange,
selectDictLabel,
download,
handleTree,
addDateRangeMothon,
addDateLoginMothon
} from '@/utils/common'
import Pagination from '@/components/Pagination' import Pagination from '@/components/Pagination'
import { uploadPublic } from '@/api/fileUploadPublic' import { uploadPublic } from '@/api/fileUploadPublic'
import Viewer from 'v-viewer' import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css' import 'viewerjs/dist/viewer.css'
Vue.use(Viewer) Vue.use(Viewer)
Viewer.setDefaults({ Viewer.setDefaults({
Options: { Options: {
......
This diff is collapsed.
export function getFileType(fileType) { export function getFileType(fileType) {
let docType = '' let docType = ''
let fileTypesDoc = [ const fileTypesDoc = [
'doc', 'docm', 'docx', 'dot', 'dotm', 'dotx', 'epub', 'fodt', 'htm', 'html', 'mht', 'odt', 'ott', 'pdf', 'rtf', 'txt', 'djvu', 'xps', 'doc', 'docm', 'docx', 'dot', 'dotm', 'dotx', 'epub', 'fodt', 'htm', 'html', 'mht', 'odt', 'ott', 'pdf', 'rtf', 'txt', 'djvu', 'xps'
] ]
let fileTypesCsv = [ const fileTypesCsv = [
'csv', 'fods', 'ods', 'ots', 'xls', 'xlsm', 'xlsx', 'xlt', 'xltm', 'xltx', 'csv', 'fods', 'ods', 'ots', 'xls', 'xlsm', 'xlsx', 'xlt', 'xltm', 'xltx'
] ]
let fileTypesPPt = [ const fileTypesPPt = [
'fodp', 'odp', 'otp', 'pot', 'potm', 'potx', 'pps', 'ppsm', 'ppsx', 'ppt', 'pptm', 'pptx', 'fodp', 'odp', 'otp', 'pot', 'potm', 'potx', 'pps', 'ppsm', 'ppsx', 'ppt', 'pptm', 'pptx'
] ]
if (fileTypesDoc.includes(fileType)) { if (fileTypesDoc.includes(fileType)) {
docType = 'text' docType = 'text'
......
...@@ -2,91 +2,95 @@ ...@@ -2,91 +2,95 @@
<div class="app-container"> <div class="app-container">
<div v-if="themeType == '8'" class="tableTitle">班级管理列表</div> <div v-if="themeType == '8'" class="tableTitle">班级管理列表</div>
<div class="search"> <div class="search">
<el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true"> <el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="编号" prop="classesCode"> <el-form-item label="编号" prop="classesCode">
<el-input <el-input
v-model="queryParams.classesCode" v-model="queryParams.classesCode"
placeholder="请输入编号" placeholder="请输入编号"
clearable clearable
:maxlength="32" :maxlength="32"
size="small" size="small"
style="width: 150px" style="width: 150px"
/>
</el-form-item>
<el-form-item label="班级名称" prop="classesName">
<el-input
v-model="queryParams.classesName"
placeholder="请输入班级名称"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="班级负责人" prop="classesTeaUser">
<el-input
v-model="queryParams.classesTeaUser"
placeholder="请输入班级负责人"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="负责人联系方式" prop="classesTeaPhone">
<el-input
v-model="queryParams.classesTeaPhone"
placeholder="请输入负责人联系方式"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="状态" prop="flag">
<el-select v-model="queryParams.flag" placeholder="请选择状态" clearable size="small">
<el-option
v-for="dict in statusOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/> />
</el-select>
</el-form-item>
<div style="float: right">
<el-form-item>
<el-button
:class="commonField.queryClass"
:type="commonField.typePrimary"
:icon="commonField.queryIcon"
:size="commonField.smallSize"
@click="handleQuery">查询</el-button>
<el-button
:class="commonField.resetClass"
:icon="commonField.resetIcon"
:size="commonField.smallSize"
@click="resetQuery">重置</el-button>
</el-form-item>
<el-form-item>
<el-button
:class="commonField.addClass"
:type="commonField.typePrimary"
:icon="commonField.addIcon"
:size="commonField.smallSize"
@click="handleAdd">新增</el-button>
<el-button
:class="commonField.exportClass"
:type="commonField.typeSuccess"
:icon="commonField.exportIcon"
:size="commonField.smallSize"
@click="handleExport">导出</el-button>
</el-form-item> </el-form-item>
</div> <el-form-item label="班级名称" prop="classesName">
</el-form> <el-input
</div> v-model="queryParams.classesName"
placeholder="请输入班级名称"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="班级负责人" prop="classesTeaUser">
<el-input
v-model="queryParams.classesTeaUser"
placeholder="请输入班级负责人"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="负责人联系方式" prop="classesTeaPhone">
<el-input
v-model="queryParams.classesTeaPhone"
placeholder="请输入负责人联系方式"
clearable
:maxlength="32"
size="small"
style="width: 150px"
/>
</el-form-item>
<el-form-item label="状态" prop="flag">
<el-select v-model="queryParams.flag" placeholder="请选择状态" clearable size="small">
<el-option
v-for="dict in statusOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
<div style="float: right">
<el-form-item>
<el-button
:class="commonField.queryClass"
:type="commonField.typePrimary"
:icon="commonField.queryIcon"
:size="commonField.smallSize"
@click="handleQuery"
>查询</el-button>
<el-button
:class="commonField.resetClass"
:icon="commonField.resetIcon"
:size="commonField.smallSize"
@click="resetQuery"
>重置</el-button>
</el-form-item>
<el-form-item>
<el-button
:class="commonField.addClass"
:type="commonField.typePrimary"
:icon="commonField.addIcon"
:size="commonField.smallSize"
@click="handleAdd"
>新增</el-button>
<el-button
:class="commonField.exportClass"
:type="commonField.typeSuccess"
:icon="commonField.exportIcon"
:size="commonField.smallSize"
@click="handleExport"
>导出</el-button>
</el-form-item>
</div>
</el-form>
</div>
<div style="padding:5px 10px"> <div style="padding:5px 10px">
<div v-if="themeType !== '8'" class="tableTitle">班级管理列表</div> <div v-if="themeType !== '8'" class="tableTitle">班级管理列表</div>
<el-table v-loading="loading" border :data="busClassesInfoList" > <el-table v-loading="loading" border :data="busClassesInfoList">
<el-table-column type="index" label="序号" width="55" align="center" /> <el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="编号" prop="classesCode" :show-overflow-tooltip="true"> <el-table-column label="编号" prop="classesCode" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -148,11 +152,11 @@ ...@@ -148,11 +152,11 @@
</el-table> </el-table>
</div> </div>
<pagination <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
:page.sync="queryParams.page" :page.sync="queryParams.page"
:limit.sync="queryParams.rows" :limit.sync="queryParams.rows"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改班级信息配置对话框 --> <!-- 添加或修改班级信息配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
...@@ -169,12 +173,12 @@ ...@@ -169,12 +173,12 @@
<el-form-item label="负责人联系方式" prop="classesTeaPhone"> <el-form-item label="负责人联系方式" prop="classesTeaPhone">
<el-input v-model.trim="form.classesTeaPhone" show-word-limit :maxlength="11" placeholder="请输入负责人联系方式" /> <el-input v-model.trim="form.classesTeaPhone" show-word-limit :maxlength="11" placeholder="请输入负责人联系方式" />
</el-form-item> </el-form-item>
<el-form-item label="状态"> <el-form-item label="状态">
<el-radio-group v-model="form.flag"> <el-radio-group v-model="form.flag">
<el-radio label="1">启用</el-radio> <el-radio label="1">启用</el-radio>
<el-radio label="0">停用</el-radio> <el-radio label="0">停用</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remarks"> <el-form-item label="备注" prop="remarks">
<el-input v-model.trim="form.remarks" maxlength="250" show-word-limit type="textarea" placeholder="请输入内容" /> <el-input v-model.trim="form.remarks" maxlength="250" show-word-limit type="textarea" placeholder="请输入内容" />
</el-form-item> </el-form-item>
...@@ -236,11 +240,11 @@ export default { ...@@ -236,11 +240,11 @@ export default {
form: {}, form: {},
// 表单校验 // 表单校验
rules: { rules: {
classesCode:[{type: 'string',required: true,message: "班级编号必填", trigger: 'blur'}], classesCode: [{ type: 'string', required: true, message: '班级编号必填', trigger: 'blur' }],
classesName:[{type: 'string',required: true,message: "班级名称必填", trigger: 'blur'}], classesName: [{ type: 'string', required: true, message: '班级名称必填', trigger: 'blur' }],
classesTeaUser:[{type: 'string',required: true,message: "负责人名称必填", trigger: 'blur'}], classesTeaUser: [{ type: 'string', required: true, message: '负责人名称必填', trigger: 'blur' }],
classesTeaPhone:[{type: 'string',required: true,message: "负责人联系方式必填", trigger: 'blur'}] classesTeaPhone: [{ type: 'string', required: true, message: '负责人联系方式必填', trigger: 'blur' }]
}, }
} }
}, },
computed: { computed: {
...@@ -251,8 +255,8 @@ export default { ...@@ -251,8 +255,8 @@ export default {
return commonField return commonField
} }
}, },
/** 路由离开前存储筛选条件*/ /** 路由离开前存储筛选条件*/
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
setDataCache(this.$route.path, this.queryParams) setDataCache(this.$route.path, this.queryParams)
next() next()
}, },
...@@ -265,11 +269,11 @@ export default { ...@@ -265,11 +269,11 @@ export default {
getList() { getList() {
this.loading = true this.loading = true
listBusClassesInfo(this.queryParams).then( listBusClassesInfo(this.queryParams).then(
response => { response => {
this.busClassesInfoList = response.rows this.busClassesInfoList = response.rows
this.total = response.total this.total = response.total
this.loading = false this.loading = false
} }
) )
}, },
// 取消按钮 // 取消按钮
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class="app-container"> <div class="app-container">
<div v-if="themeType !== '8'" class="tableTitle">学生信息列表</div> <div v-if="themeType !== '8'" class="tableTitle">学生信息列表</div>
<div class="search"> <div class="search">
<el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true" > <el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="学号" prop="userCode"> <el-form-item label="学号" prop="userCode">
<el-input <el-input
v-model="queryParams.userCode" v-model="queryParams.userCode"
...@@ -53,41 +53,45 @@ ...@@ -53,41 +53,45 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<div style="float: right"> <div style="float: right">
<el-form-item> <el-form-item>
<el-button <el-button
:class="commonField.queryClass" :class="commonField.queryClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.queryIcon" :icon="commonField.queryIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleQuery">查询</el-button> @click="handleQuery"
<el-button >查询</el-button>
:class="commonField.resetClass" <el-button
:type="commonField.typePrimary" :class="commonField.resetClass"
:icon="commonField.resetIcon" :type="commonField.typePrimary"
:size="commonField.smallSize" :icon="commonField.resetIcon"
@click="resetQuery">重置</el-button> :size="commonField.smallSize"
</el-form-item> @click="resetQuery"
>重置</el-button>
</el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button
:class="commonField.addClass" :class="commonField.addClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.addIcon" :icon="commonField.addIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleAdd">新增</el-button> @click="handleAdd"
>新增</el-button>
<el-button <el-button
:class="commonField.exportClass" :class="commonField.exportClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.exportIcon" :icon="commonField.exportIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleExport">导出</el-button> @click="handleExport"
>导出</el-button>
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
</div> </div>
<div style="padding:5px 10px"> <div style="padding:5px 10px">
<el-table v-loading="loading" border :data="busStudentInfoList" > <el-table v-loading="loading" border :data="busStudentInfoList">
<el-table-column type="index" label="序号" width="55" align="center" /> <el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="学号" prop="userCode" :show-overflow-tooltip="true"> <el-table-column label="学号" prop="userCode" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -149,11 +153,11 @@ ...@@ -149,11 +153,11 @@
</el-table> </el-table>
</div> </div>
<pagination <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
:page.sync="queryParams.page" :page.sync="queryParams.page"
:limit.sync="queryParams.rows" :limit.sync="queryParams.rows"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改学生信息配置对话框 --> <!-- 添加或修改学生信息配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
...@@ -186,12 +190,12 @@ ...@@ -186,12 +190,12 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="状态"> <el-form-item label="状态">
<el-radio-group v-model="form.flag"> <el-radio-group v-model="form.flag">
<el-radio label="1">启用</el-radio> <el-radio label="1">启用</el-radio>
<el-radio label="0">停用</el-radio> <el-radio label="0">停用</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remarks"> <el-form-item label="备注" prop="remarks">
<el-input v-model.trim="form.remarks" maxlength="200" show-word-limit type="textarea" placeholder="请输入内容" /> <el-input v-model.trim="form.remarks" maxlength="200" show-word-limit type="textarea" placeholder="请输入内容" />
</el-form-item> </el-form-item>
...@@ -212,9 +216,8 @@ import { ...@@ -212,9 +216,8 @@ import {
addBusStudentInfo, addBusStudentInfo,
updateBusStudentInfo, updateBusStudentInfo,
exportBusStudentInfo } from '@/api/busStudentInfo' exportBusStudentInfo } from '@/api/busStudentInfo'
import {listBusClassesInfo} from '@/api/busClassesInfo' import { listBusClassesInfo } from '@/api/busClassesInfo'
import commonField from '@/utils/commonField' import commonField from '@/utils/commonField'
import { get } from 'js-cookie';
export default { export default {
name: 'BusStudentInfo', name: 'BusStudentInfo',
data() { data() {
...@@ -300,7 +303,7 @@ export default { ...@@ -300,7 +303,7 @@ export default {
this.getClassList()// 班级列表 this.getClassList()// 班级列表
}, },
methods: { methods: {
//查询班级列表 // 查询班级列表
getClassList() { getClassList() {
listBusClassesInfo().then( listBusClassesInfo().then(
response => { response => {
......
...@@ -53,41 +53,45 @@ ...@@ -53,41 +53,45 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<div style="float: right"> <div style="float: right">
<el-form-item> <el-form-item>
<el-button <el-button
:class="commonField.queryClass" :class="commonField.queryClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.queryIcon" :icon="commonField.queryIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleQuery">查询</el-button> @click="handleQuery"
<el-button >查询</el-button>
:class="commonField.resetClass" <el-button
:type="commonField.typePrimary" :class="commonField.resetClass"
:icon="commonField.resetIcon" :type="commonField.typePrimary"
:size="commonField.smallSize" :icon="commonField.resetIcon"
@click="resetQuery">重置</el-button> :size="commonField.smallSize"
</el-form-item> @click="resetQuery"
>重置</el-button>
</el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button
:class="commonField.addClass" :class="commonField.addClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.addIcon" :icon="commonField.addIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleAdd">新增</el-button> @click="handleAdd"
>新增</el-button>
<el-button <el-button
:class="commonField.exportClass" :class="commonField.exportClass"
:type="commonField.typeSuccess" :type="commonField.typeSuccess"
:icon="commonField.exportIcon" :icon="commonField.exportIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleExport">导出</el-button> @click="handleExport"
>导出</el-button>
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
</div> </div>
<div style="padding:5px 10px"> <div style="padding:5px 10px">
<el-table v-loading="loading" border :data="busTeacherInfoList" > <el-table v-loading="loading" border :data="busTeacherInfoList">
<el-table-column type="index" label="序号" width="55" align="center" /> <el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column label="工号" prop="userCode" :show-overflow-tooltip="true"> <el-table-column label="工号" prop="userCode" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div class="login"> <div class="login">
<!-- v-loading="vLoading"--> <!-- v-loading="vLoading"-->
<div v-if="themeType && themeType === '7'" class="loginTitle"> <div v-if="themeType && themeType === '7'" class="loginTitle">
<img class="login-logo" src="../../assets/themeGImage/login_logo.png" /> <img class="login-logo" src="../../assets/themeGImage/login_logo.png">
<span class="loginTitle_text">Square</span> <span class="loginTitle_text">Square</span>
</div> </div>
<el-form <el-form
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<div v-if="themeType && themeType === '8'" class="sub_title"> <div v-if="themeType && themeType === '8'" class="sub_title">
欢迎登录 欢迎登录
</div> </div>
信息化 <br v-if="themeType && themeType === '8'" /> 信息化 <br v-if="themeType && themeType === '8'">
管理系统 管理系统
</div> </div>
</div> </div>
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
</el-input> </el-input>
</el-form-item> </el-form-item>
<div class="login-code"> <div class="login-code">
<img class="login-codeImg" :src="codeUrl" @click="getCode" /> <img class="login-codeImg" :src="codeUrl" @click="getCode">
</div> </div>
</div> </div>
<el-form-item <el-form-item
...@@ -149,11 +149,12 @@ ...@@ -149,11 +149,12 @@
v-if="themeType && themeType === '8'" v-if="themeType && themeType === '8'"
v-model="loginForm.rememberMe" v-model="loginForm.rememberMe"
class="rem-code" class="rem-code"
>保持登录</el-checkbox >保持登录</el-checkbox>
> <el-checkbox
<el-checkbox v-else v-model="loginForm.rememberMe" class="rem-code" v-else
>记住密码</el-checkbox v-model="loginForm.rememberMe"
> class="rem-code"
>记住密码</el-checkbox>
<!-- <el-link--> <!-- <el-link-->
<!-- :underline="false"--> <!-- :underline="false"-->
...@@ -170,7 +171,7 @@ ...@@ -170,7 +171,7 @@
</template> </template>
<script> <script>
import { getCodeImg, captchaImage, getBwCaptcha } from '@/api/login' import { captchaImage} from '@/api/login'
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
import { passwordEncrypt, passwordDecrypt } from '@/utils/jsencrypt' import { passwordEncrypt, passwordDecrypt } from '@/utils/jsencrypt'
import Verify from '@/components/Verifition/Verify' import Verify from '@/components/Verifition/Verify'
......
<template> <template>
<router-view></router-view> <router-view />
</template> </template>
<script> <script>
export default { export default {
......
<template> <template>
<section class="forget-pwd-content"> <section class="forget-pwd-content">
<!-- <page-divider />--> <!-- <page-divider />-->
<div class="title">修改密码</div> <div class="title">修改密码</div>
<el-form <el-form
ref="pwdForm" ref="pwdForm"
......
This diff is collapsed.
...@@ -36,19 +36,19 @@ ...@@ -36,19 +36,19 @@
<div style="float: right"> <div style="float: right">
<el-form-item> <el-form-item>
<el-button <el-button
:class="commonField.queryClass" :class="commonField.queryClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.queryIcon" :icon="commonField.queryIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="handleQuery" @click="handleQuery"
>查询</el-button> >查询</el-button>
<el-button <el-button
:class="commonField.resetClass" :class="commonField.resetClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.resetIcon" :icon="commonField.resetIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
@click="resetQuery" @click="resetQuery"
>重置</el-button> >重置</el-button>
<el-button <el-button
:class="commonField.addClass" :class="commonField.addClass"
:type="commonField.typePrimary" :type="commonField.typePrimary"
...@@ -541,7 +541,7 @@ export default { ...@@ -541,7 +541,7 @@ export default {
this.$message.error(res.message) this.$message.error(res.message)
this.importLoading = false this.importLoading = false
} }
}).catch(err => { }).catch(() => {
// this.$message.error(err.message) // this.$message.error(err.message)
that.importLoading = false that.importLoading = false
}) })
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class="search"> <div class="search">
<el-form v-show="showSearch" ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true"> <el-form v-show="showSearch" ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="字典名称" prop="dictType"> <el-form-item label="字典名称" prop="dictType">
<el-select disabled v-model="queryParams.dictType" placeholder="请选择字典名称" clearable size="small"> <el-select v-model="queryParams.dictType" disabled placeholder="请选择字典名称" clearable size="small">
<el-option <el-option
v-for="item in typeOptions" v-for="item in typeOptions"
:key="item.businessId" :key="item.businessId"
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
<el-button class="resetBtn" type="primary" icon="el-icon-refresh" size="small" @click="resetQuery">重置</el-button> <el-button class="resetBtn" type="primary" icon="el-icon-refresh" size="small" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
<div style="padding-bottom: 15px" class="dictBtnRow"> <div style="padding-bottom: 15px" class="dictBtnRow">
<coolbutton :class-name="commonField.addClass" :type="commonField.typePrimary" :name="commonField.addName" :icon="commonField.addIcon" :size="commonField.size" :haspermi="hasDataAddPerm" @btn-click="handleAdd" /> <coolbutton :class-name="commonField.addClass" :type="commonField.typePrimary" :name="commonField.addName" :icon="commonField.addIcon" :size="commonField.size" :haspermi="hasDataAddPerm" @btn-click="handleAdd" />
<el-button <el-button
class="importBtn" class="importBtn"
type="warning" type="warning"
...@@ -175,7 +175,7 @@ ...@@ -175,7 +175,7 @@
</el-upload> </el-upload>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="upload.open = false">取 消</el-button> <el-button @click="upload.open = false">取 消</el-button>
<el-button :loading="importLoading" type="primary" @click.one="submitFileForm">确 定</el-button> <el-button :loading="importLoading" type="primary" @click="submitFileForm">确 定</el-button>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
...@@ -184,7 +184,6 @@ ...@@ -184,7 +184,6 @@
<script> <script>
import { listData, getData, delData, addData, updateData, exportData, importExcel, importTemplate } from '@/api/system/dict/data' import { listData, getData, delData, addData, updateData, exportData, importExcel, importTemplate } from '@/api/system/dict/data'
import { listType, getType } from '@/api/system/dict/type' import { listType, getType } from '@/api/system/dict/type'
import dictCons from '@/utils/dictCons'
import Coolbutton from '@/components/coolbutton' import Coolbutton from '@/components/coolbutton'
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import { uploadFalseFile } from '@/api/system/user' import { uploadFalseFile } from '@/api/system/user'
......
...@@ -72,10 +72,11 @@ ...@@ -72,10 +72,11 @@
>{{ commonField.resetName }}</el-button> >{{ commonField.resetName }}</el-button>
</el-form-item> </el-form-item>
<div style="padding-bottom: 15px" class="dictBtnRow"> <div style="padding-bottom: 15px" class="dictBtnRow">
<!-- //新增按钮--> <!-- //新增按钮-->
<el-button <el-button
v-hasPermi="hasDictAddPerm" v-hasPermi="hasDictAddPerm"
:class="commonField.addClass"FR :class="commonField.addClass"
f-r
:type="commonField.typePrimary" :type="commonField.typePrimary"
:icon="commonField.addIcon" :icon="commonField.addIcon"
:size="commonField.smallSize" :size="commonField.smallSize"
...@@ -222,12 +223,10 @@ import { listType, ...@@ -222,12 +223,10 @@ import { listType,
clearCache, clearCache,
selectDictType selectDictType
} from '@/api/system/dict/type' } from '@/api/system/dict/type'
import Coolbutton from '@/components/coolbutton'
import { getDataCache, setDataCache } from '@/assets/js/filterData' import { getDataCache, setDataCache } from '@/assets/js/filterData'
import commonField from '@/utils/commonField' import commonField from '@/utils/commonField'
export default { export default {
name: 'Dict', name: 'Dict',
components: { Coolbutton },
data() { data() {
return { return {
options: [], options: [],
......
This diff is collapsed.
...@@ -157,7 +157,7 @@ ...@@ -157,7 +157,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24" v-if="form.menuType === 'C'"> <el-col v-if="form.menuType === 'C'" :span="24">
<el-form-item label="跳转类型" prop="jumpType"> <el-form-item label="跳转类型" prop="jumpType">
<el-radio-group v-model="form.jumpType"> <el-radio-group v-model="form.jumpType">
<el-radio label="R">正常路由跳转</el-radio> <el-radio label="R">正常路由跳转</el-radio>
...@@ -252,7 +252,7 @@ ...@@ -252,7 +252,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col style="width: 100%;" v-if="form.menuType === 'C'" :span="12"> <el-col v-if="form.menuType === 'C'" style="width: 100%;" :span="12">
<el-form-item label="组件路径" prop="component"> <el-form-item label="组件路径" prop="component">
<el-input v-model.trim="form.component" style="width: 95%" show-word-limit maxlength="100" placeholder="请输入组件路径" /> <el-input v-model.trim="form.component" style="width: 95%" show-word-limit maxlength="100" placeholder="请输入组件路径" />
</el-form-item> </el-form-item>
...@@ -272,12 +272,11 @@ import { addMenu, delMenu, getMenu, listMenu, statusChange, updateMenu } from '@ ...@@ -272,12 +272,11 @@ import { addMenu, delMenu, getMenu, listMenu, statusChange, updateMenu } from '@
import TreeSelect from '@riophae/vue-treeselect' import TreeSelect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css' import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import IconSelect from '@/components/IconSelect' import IconSelect from '@/components/IconSelect'
import Coolbutton from '@/components/coolbutton'
import { getDataCache, setDataCache } from '@/assets/js/filterData' import { getDataCache, setDataCache } from '@/assets/js/filterData'
import commonField from '@/utils/commonField' import commonField from '@/utils/commonField'
export default { export default {
name: 'Menu', name: 'Menu',
components: { TreeSelect, IconSelect, Coolbutton }, components: { TreeSelect, IconSelect },
data() { data() {
const trueGroupName = (rule, value, callback) => { const trueGroupName = (rule, value, callback) => {
if (!value.trim()) { if (!value.trim()) {
......
...@@ -113,8 +113,7 @@ ...@@ -113,8 +113,7 @@
inactive-value="0" inactive-value="0"
active-value="1" active-value="1"
@click.native="handleStatusChange(scope.row)" @click.native="handleStatusChange(scope.row)"
> />
</el-switch>
</template> </template>
<!-- <template slot-scope="scope">--> <!-- <template slot-scope="scope">-->
<!-- {{ scope.row.flag || '-' }}--> <!-- {{ scope.row.flag || '-' }}-->
...@@ -227,64 +226,63 @@ import '@riophae/vue-treeselect/dist/vue-treeselect.css' ...@@ -227,64 +226,63 @@ import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import dictCons from '@/utils/dictCons' import dictCons from '@/utils/dictCons'
import { listDept } from '@/api/system/dept' import { listDept } from '@/api/system/dept'
import { listRole } from '@/api/system/role' import { listRole } from '@/api/system/role'
import {updateType} from "@/api/system/dict/type";
import { getDataCache, setDataCache } from '@/assets/js/filterData' import { getDataCache, setDataCache } from '@/assets/js/filterData'
export default { export default {
name: 'Post', name: 'Post',
components: { Treeselect }, components: { Treeselect },
data() { data() {
const verifyIDProp = (rule, value, callback) => { // const verifyIDProp = (rule, value, callback) => {
if (value === '' || value === undefined || value === null) { // if (value === '' || value === undefined || value === null) {
callback() // callback()
} else if (!this.form.postCodeOne || this.form.postCodeOne !== this.form.postCode) { // } else if (!this.form.postCodeOne || this.form.postCodeOne !== this.form.postCode) {
// 验证编码是否重复 // // 验证编码是否重复
checkpostIdUnique(this.form.postCode).then( // checkpostIdUnique(this.form.postCode).then(
(res) => { // (res) => {
if (res.code === 200) { // if (res.code === 200) {
if (res.msg === '0') { // if (res.msg === '0') {
callback() // callback()
} else if (res.msg === '1') { // } else if (res.msg === '1') {
callback(new Error('职务编码已存在')) // callback(new Error('职务编码已存在'))
} else { // } else {
callback() // callback()
} // }
} else { // } else {
callback() // callback()
} // }
} // }
).catch(err => { // ).catch(err => {
callback() // callback()
}) // })
} else { // } else {
callback() // callback()
} // }
} // }
const verifyNameProp = (rule, value, callback) => { // const verifyNameProp = (rule, value, callback) => {
if (value === '' || value === undefined || value === null) { // if (value === '' || value === undefined || value === null) {
callback() // callback()
} else if (!this.form.postNameOne || this.form.postNameOne !== this.form.postName) { // } else if (!this.form.postNameOne || this.form.postNameOne !== this.form.postName) {
// 验证编码是否重复 // // 验证编码是否重复
checkpostNameUnique(this.form.postName).then( // checkpostNameUnique(this.form.postName).then(
(res) => { // (res) => {
if (res.code === 200) { // if (res.code === 200) {
if (res.msg === '0') { // if (res.msg === '0') {
callback() // callback()
} else if (res.msg === '1') { // } else if (res.msg === '1') {
callback(new Error('职务名称已存在')) // callback(new Error('职务名称已存在'))
} else { // } else {
callback() // callback()
} // }
} else { // } else {
callback() // callback()
} // }
} // }
).catch(err => { // ).catch(err => {
callback() // callback()
}) // })
} else { // } else {
callback() // callback()
} // }
} // }
return { return {
// 选中数组 // 选中数组
ids: [], ids: [],
......
<template> <template>
<div class="container"> <div class="container">
<div class="header"> <div class="header">
<div v-if="themeType == '8'" class="tableTitle">系统设置信息</div> <div v-if="themeType == '8'" class="tableTitle">系统设置信息</div>
</div> </div>
<el-main class="main-content"> <el-main class="main-content">
<div class="input-field"> <div class="input-field">
<div class="system-name"> <div class="system-name">
...@@ -15,11 +15,12 @@ ...@@ -15,11 +15,12 @@
clearable clearable
:maxlength="32" :maxlength="32"
size="middle" size="middle"
@blur="validateSystemName"/> @blur="validateSystemName"
/>
</div> </div>
</div> </div>
<div class="input-field" > <div class="input-field">
<div class="system-background-image" > <div class="system-background-image">
<label for="systemBg" class="input-label">系统背景图:</label> <label for="systemBg" class="input-label">系统背景图:</label>
<el-upload <el-upload
ref="upload" ref="upload"
...@@ -33,9 +34,10 @@ ...@@ -33,9 +34,10 @@
:file-list="fileList" :file-list="fileList"
:before-upload="handleBefore" :before-upload="handleBefore"
accept="image/png" accept="image/png"
:on-remove="handleFileRemove"> :on-remove="handleFileRemove"
>
<i v-if="!sysSettingsList.systemBg" class="el-icon-plus" /> <i v-if="!sysSettingsList.systemBg" class="el-icon-plus" />
</el-upload> </el-upload>
</div> </div>
</div> </div>
<hr style="border: #889ba9 solid 5px"> <hr style="border: #889ba9 solid 5px">
...@@ -48,7 +50,8 @@ ...@@ -48,7 +50,8 @@
clearable clearable
:maxlength="50" :maxlength="50"
size="middle" size="middle"
readonly/> readonly
/>
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
...@@ -60,12 +63,13 @@ ...@@ -60,12 +63,13 @@
clearable clearable
:maxlength="32" :maxlength="32"
size="middle" size="middle"
readonly/> readonly
/>
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
<div class="expiration-date"> <div class="expiration-date">
<label for="systemExpire"class="input-label">过期时间:</label> <label for="systemExpire" class="input-label">过期时间:</label>
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
size="middle" size="middle"
...@@ -73,7 +77,8 @@ ...@@ -73,7 +77,8 @@
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
type="dateRange" type="dateRange"
placeholder="2025-08-01" placeholder="2025-08-01"
readonly/> readonly
/>
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
...@@ -85,7 +90,8 @@ ...@@ -85,7 +90,8 @@
clearable clearable
:maxlength="50" :maxlength="50"
size="middle" size="middle"
readonly/> readonly
/>
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
...@@ -97,7 +103,8 @@ ...@@ -97,7 +103,8 @@
clearable clearable
:maxlength="50" :maxlength="50"
size="middle" size="middle"
readonly/> readonly
/>
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
...@@ -113,7 +120,7 @@ ...@@ -113,7 +120,7 @@
</div> </div>
</div> </div>
<div class="input-field"> <div class="input-field">
<div style="width: 500px"> <div style="width: 500px">
<label for="systemLicense" class="input-label">系统license:</label> <label for="systemLicense" class="input-label">系统license:</label>
<el-input <el-input
v-model="sysSettingsList.systemLicense" v-model="sysSettingsList.systemLicense"
...@@ -121,7 +128,7 @@ ...@@ -121,7 +128,7 @@
clearable clearable
:maxlength="50" :maxlength="50"
:rows="5" :rows="5"
/> />
</div> </div>
</div> </div>
</el-main> </el-main>
...@@ -130,17 +137,18 @@ ...@@ -130,17 +137,18 @@
<script lang="ts"> <script lang="ts">
import { import {
getSysSettings, getSysSettings,
updateSysSettings, updateSysSettings
} from '@/api/sysSettings' } from '@/api/sysSettings'
import commonField from '@/utils/commonField' import commonField from '@/utils/commonField'
import {getDataCache, setDataCache} from "@/assets/js/filterData"; import { getDataCache, setDataCache } from '@/assets/js/filterData'
import { uploadPublic } from '@/api/system/ossInfo'
export default { export default {
name: 'SysSettings', name: 'SysSettings',
data() { data() {
return { return {
sysSettingsList: { sysSettingsList: {
systemBg: '', // 存储系统背景图的 URL systemBg: '' // 存储系统背景图的 URL
}, },
fileList: [], // 文件列表 fileList: [], // 文件列表
oss: true, // 控制图标显示 oss: true, // 控制图标显示
...@@ -150,7 +158,6 @@ export default { ...@@ -150,7 +158,6 @@ export default {
// 总条数 // 总条数
total: 0, total: 0,
// 系统设置表格数据 // 系统设置表格数据
sysSettingsList: [],
// 弹出层标题 // 弹出层标题
title: '', title: '',
// 是否显示弹出层 // 是否显示弹出层
...@@ -187,7 +194,7 @@ export default { ...@@ -187,7 +194,7 @@ export default {
form: {}, form: {},
// 表单校验 // 表单校验
rules: { rules: {
systemName: [{type: 'string', required: true, message: "系统名称必填", trigger: 'blur'}], systemName: [{ type: 'string', required: true, message: '系统名称必填', trigger: 'blur' }]
} }
} }
}, },
...@@ -207,7 +214,7 @@ export default { ...@@ -207,7 +214,7 @@ export default {
created() { created() {
this.sysSettingsList = JSON.parse(getDataCache(this.$route.path)) // 获取存储的筛选项 this.sysSettingsList = JSON.parse(getDataCache(this.$route.path)) // 获取存储的筛选项
this.getList() // 列表查询 this.getList() // 列表查询
this.loadCachedImage(); this.loadCachedImage()
}, },
methods: { methods: {
/** /**
...@@ -226,13 +233,13 @@ export default { ...@@ -226,13 +233,13 @@ export default {
}) })
}, },
loadCachedImage() { loadCachedImage() {
const cachedUrl = localStorage.getItem('systemBg'); const cachedUrl = localStorage.getItem('systemBg')
if (cachedUrl) { if (cachedUrl) {
this.sysSettingsList.systemBg = cachedUrl; this.sysSettingsList.systemBg = cachedUrl
} }
}, },
saveImageToCache(url) { saveImageToCache(url) {
localStorage.setItem('systemBg', url); localStorage.setItem('systemBg', url)
}, },
handleFileRemove(file, fileList) { handleFileRemove(file, fileList) {
// 从 fileList 中移除已删除的文件 // 从 fileList 中移除已删除的文件
...@@ -251,8 +258,10 @@ export default { ...@@ -251,8 +258,10 @@ export default {
} }
}, },
/** 查询系统设置列表 */ /** 查询系统设置列表 */
// 无listSysSettings接口,尚不清楚其逻辑,暂置
getList() { getList() {
this.loading = true this.loading = true
// eslint-disable-next-line no-undef
listSysSettings(this.addDateRange(this.queryParams, this.dateRange)).then( listSysSettings(this.addDateRange(this.queryParams, this.dateRange)).then(
response => { response => {
this.sysSettingsList = response.rows[3] this.sysSettingsList = response.rows[3]
...@@ -321,19 +330,19 @@ export default { ...@@ -321,19 +330,19 @@ export default {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(function () { }).then(function() {
return updateSysSettings(row) return updateSysSettings(row)
}).then(() => { }).then(() => {
this.$message({ this.$message({
message: text + '成功', message: text + '成功',
type: 'success' type: 'success'
}) })
}).catch(function () { }).catch(function() {
row.flag = row.flag === '0' ? '1' : '0' row.flag = row.flag === '0' ? '1' : '0'
}) })
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm: function () { submitForm: function() {
this.$refs['form'].validate(valid => { this.$refs['form'].validate(valid => {
if (valid) { if (valid) {
if (this.form.businessId !== undefined) { if (this.form.businessId !== undefined) {
...@@ -343,6 +352,8 @@ export default { ...@@ -343,6 +352,8 @@ export default {
this.getList() this.getList()
}) })
} else { } else {
// 无addSysSettings接口,尚不清楚其逻辑,暂置
// eslint-disable-next-line no-undef
addSysSettings(this.form).then(response => { addSysSettings(this.form).then(response => {
this.msgSuccess('新增成功') this.msgSuccess('新增成功')
this.open = false this.open = false
...@@ -359,7 +370,8 @@ export default { ...@@ -359,7 +370,8 @@ export default {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(function () { }).then(function() {
// eslint-disable-next-line no-undef
return delSysSettings(id) return delSysSettings(id)
}).then(() => { }).then(() => {
this.getList() this.getList()
...@@ -367,7 +379,7 @@ export default { ...@@ -367,7 +379,7 @@ export default {
message: '删除成功', message: '删除成功',
type: 'success' type: 'success'
}) })
}).catch(function () { }).catch(function() {
}) })
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
...@@ -377,7 +389,8 @@ export default { ...@@ -377,7 +389,8 @@ export default {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(function () { }).then(function() {
// eslint-disable-next-line no-undef
return exportSysSettings(queryParams).then(response => { return exportSysSettings(queryParams).then(response => {
const blob = new Blob([response]) const blob = new Blob([response])
const downloadElement = document.createElement('a') const downloadElement = document.createElement('a')
...@@ -427,8 +440,6 @@ export default { ...@@ -427,8 +440,6 @@ export default {
flex-shrink: 0; flex-shrink: 0;
} }
.container{ .container{
flex-direction: column; flex-direction: column;
height: 100%; height: 100%;
...@@ -442,7 +453,6 @@ export default { ...@@ -442,7 +453,6 @@ export default {
justify-content: center; justify-content: center;
} }
.system-name { .system-name {
display: flex; display: flex;
align-items: center; align-items: center;
...@@ -464,7 +474,6 @@ export default { ...@@ -464,7 +474,6 @@ export default {
align-items: center; align-items: center;
} }
.expiration-date { .expiration-date {
display: flex; display: flex;
align-items: center; align-items: center;
...@@ -480,7 +489,6 @@ export default { ...@@ -480,7 +489,6 @@ export default {
align-items: center; align-items: center;
} }
.system-auth-host { .system-auth-host {
display: flex; display: flex;
align-items: center; align-items: center;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment