fzq #15

Yhdistetty
gtz217 yhdistetty 3 committia lähteestä fzq kohteeseen develop 2022-12-29 13:56:06 +08:00
48 muutettua tiedostoa jossa 766 lisäystä ja 144 poistoa

Näytä tiedosto

@@ -1,3 +1,11 @@
<!--
* @Descripttion:
* @version:
* @Author: fzq
* @Date: 2022-11-25 09:51:46
* @LastEditors: fzq
* @LastEditTime: 2022-12-13 19:44:21
-->
<template> <template>
<transition name="el-fade-in-linear"> <transition name="el-fade-in-linear">
<router-view /> <router-view />
@@ -11,7 +19,7 @@
</style> </style>
<script> <script>
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
import { messages } from '@/i18n' // import { messages } from '@/i18n'
export default { export default {
watch: { watch: {
'$i18n.locale': 'i18nHandle' '$i18n.locale': 'i18nHandle'
@@ -23,7 +31,8 @@ export default {
i18nHandle(val, oldVal) { i18nHandle(val, oldVal) {
Cookies.set('language', val) Cookies.set('language', val)
document.querySelector('html').setAttribute('lang', val) document.querySelector('html').setAttribute('lang', val)
document.title = messages[val].brand.lg // 不注释掉会报错
// document.title = messages[val].brand.lg
// 非登录页面,切换语言刷新页面 // 非登录页面,切换语言刷新页面
if (this.$route.name !== 'login' && oldVal) { if (this.$route.name !== 'login' && oldVal) {
window.location.reload() window.location.reload()

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 32 KiB

After

Leveys:  |  Korkeus:  |  Koko: 32 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 8.5 KiB

After

Leveys:  |  Korkeus:  |  Koko: 8.5 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 50 KiB

After

Leveys:  |  Korkeus:  |  Koko: 50 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 46 KiB

After

Leveys:  |  Korkeus:  |  Koko: 46 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 36 KiB

After

Leveys:  |  Korkeus:  |  Koko: 36 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 9.3 KiB

After

Leveys:  |  Korkeus:  |  Koko: 9.3 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 40 KiB

After

Leveys:  |  Korkeus:  |  Koko: 40 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 44 KiB

After

Leveys:  |  Korkeus:  |  Koko: 44 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 9.1 KiB

After

Leveys:  |  Korkeus:  |  Koko: 9.1 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 8.8 KiB

After

Leveys:  |  Korkeus:  |  Koko: 8.8 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 46 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 32 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 9.1 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 8.5 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 36 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 9.3 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 40 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 8.8 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 50 KiB

Binary file not shown.

After

Leveys:  |  Korkeus:  |  Koko: 44 KiB

Näytä tiedosto

@@ -254,6 +254,9 @@ img {
margin-right: 0; margin-right: 0;
font-size: 18px; font-size: 18px;
} }
&__close {
width: 0px;
}
} }
.aui-content { .aui-content {
&__wrapper { &__wrapper {
@@ -278,7 +281,19 @@ img {
align-items: stretch; align-items: stretch;
height: $navbar--height; height: $navbar--height;
background-color: $--color-primary; background-color: $--color-primary;
box-shadow: 0 1px 0 0 rgba(0, 0, 0, .05); box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.05);
.home {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030;
display: flex;
align-items: stretch;
height: $navbar--height;
background-color: #409EFF;
box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.05);
}
&--colorful { &--colorful {
.aui-navbar__body { .aui-navbar__body {
// navbar body颜色 // navbar body颜色
@@ -396,9 +411,13 @@ img {
.el-menu-item.is-active, .el-menu-item.is-active,
.el-submenu.is-active > .el-submenu__title { .el-submenu.is-active > .el-submenu__title {
color: $--color-text-secondary; color: $--color-text-secondary;
// background-color: rgb(13,43,104);
&:focus, &:focus,
&:hover { &:hover {
// 点击之后图标颜色亮度
color: $--color-text-primary; color: $--color-text-primary;
// color: #fff;
// background-color: rgb(13,43,104);
} }
} }
.el-menu-item { .el-menu-item {
@@ -533,6 +552,10 @@ img {
overflow-y: scroll; overflow-y: scroll;
transition: width .3s; transition: width .3s;
} }
.close {
width: 0px;
margin-left: 0 !important;
}
&__menu { &__menu {
width: $sidebar--width; width: $sidebar--width;
border-right: 0; border-right: 0;
@@ -564,6 +587,7 @@ img {
min-height: calc(100vh - #{$navbar--height}); min-height: calc(100vh - #{$navbar--height});
&__wrapper { &__wrapper {
position: relative; position: relative;
// 注释掉可隐藏侧边栏,但需要在main.vue中加入main-content的限制条件
margin-left: $sidebar--width; margin-left: $sidebar--width;
min-height: calc(100vh - #{$navbar--height}); min-height: calc(100vh - #{$navbar--height});
background-color: $content--background-color; background-color: $content--background-color;

Näytä tiedosto

@@ -1,6 +1,7 @@
.mod-home { .mod-home {
table { table {
width: 100%; width: 100%;
height: 10px;
border: 1px solid $--border-color-lighter; border: 1px solid $--border-color-lighter;
border-collapse: collapse; border-collapse: collapse;
th, th,

Näytä tiedosto

@@ -9,13 +9,15 @@ $navbar--height: 50px;
$sidebar--width: 248px; $sidebar--width: 248px;
$sidebar--width-fold: 64px; $sidebar--width-fold: 64px;
// $sidebar--background-color-dark: #263238; // $sidebar--background-color-dark: #263238;
$sidebar--background-color-dark: #001529; // $sidebar--background-color-dark: #001529;
$sidebar--background-color-dark: #304156;
$sidebar--text-color-dark: #8a979e; $sidebar--text-color-dark: #8a979e;
$sidebar--menu-item-height: 48px; $sidebar--menu-item-height: 48px;
// Content // Content
$content--padding: 15px; $content--padding: 15px;
$content--background-color: #f1f4f5; // $content--background-color: #f1f4f5;
$content--background-color: #fff;
$content--card-header-height: 60px; $content--card-header-height: 60px;
$content--tabs-header-height: 38px; $content--tabs-header-height: 38px;
// Content, 填充整屏高度(非tabs状态) = 整屏高度 - 导航条高度 - aui-content上下内边距高度 // Content, 填充整屏高度(非tabs状态) = 整屏高度 - 导航条高度 - aui-content上下内边距高度

Näytä tiedosto

@@ -1,16 +1,41 @@
<template> <template>
<div class="base-table"> <div class="base-table">
<!-- 花式新增按钮 -->
<div class="setting">
<template v-if="topBtnConfig.length > 0">
<!-- table顶部操作按钮区 -->
<div class="action_btn">
<template v-for="(btn, index) in topBtnConfig">
<span v-if="btn.type === 'add'" :key="index" style="display: inline-block" @click="clickTopButton(btn.type)">
<svg-icon style="width: 14px; height: 14px" class="iconPlus" icon-class="addPage" />
<span class="add">{{ $t('add') }}</span>
</span>
</template>
</div>
</template>
<!-- 设置小齿轮table列的图标 -->
<el-popover placement="bottom-start" width="200" trigger="click">
<div class="setting-box">
<el-checkbox v-for="(item, index) in tableHeadConfigs" :key="'cb' + index" v-model="selectedBox[index]" :label="item.name" />
</div>
<i slot="reference" class="el-icon-s-tools" style="color: #0b58ff" />
</el-popover>
</div>
<!-- border 属性增加边框:header-cell-style="{background:'#FAFAFA',color:'#606266',height: '40px'}" -->
<!-- <el-table :data="data" -->
<el-table <el-table
:data="data" :data="renderData"
style="width: 100%" style="width: 100%"
fit fit
border highlight-current-row
:header-cell-style="{ background: '#FAFAFA', color: '#606266', height: '40px' }" :header-cell-style="{ background: '#FAFAFA', color: '#000', height: '40px' }"
:max-height="maxHeight" :max-height="maxHeight"
:span-method="spanMethod || null" :span-method="spanMethod || null"
> :row-style="{ height: '20px' }"
:cell-style="{ padding: '0px' }">
<!-- 表格头定义 --> <!-- 表格头定义 -->
<template v-for="(head, idx) in tableHeadConfigs"> <!-- in tableHeadConfigs -->
<template v-for="(head, idx) in renderTableHeadList">
<!-- 带type的表头 --> <!-- 带type的表头 -->
<el-table-column <el-table-column
:key="idx" :key="idx"
@@ -20,11 +45,14 @@
:header-align="head.align || 'center'" :header-align="head.align || 'center'"
:align="head.align || 'center'" :align="head.align || 'center'"
:width="head.width || 50" :width="head.width || 50"
:index="head.type === 'index' ? val => { :index="
return val + 1 + (page - 1) * size head.type === 'index'
} : null" ? (val) => {
v-bind="head.more" return val + 1 + (page - 1) * size
></el-table-column> }
: null
"
v-bind="head.more"></el-table-column>
<!-- 普通的表头 --> <!-- 普通的表头 -->
<el-table-column <el-table-column
v-else v-else
@@ -38,9 +66,8 @@
:tooltip-effect="head.tooltipEffect || 'light'" :tooltip-effect="head.tooltipEffect || 'light'"
filter-placement="top" filter-placement="top"
:align="head.align || null" :align="head.align || null"
v-bind="head.more" v-bind="head.more">
> <!-- 子组件 编辑/删除 -->
<!-- 子组件 -->
<template v-if="head.prop" slot-scope="scope"> <template v-if="head.prop" slot-scope="scope">
<component v-if="head.subcomponent" :is="head.subcomponent" :key="idx + 'sub'" :inject-data="{ ...scope.row, head }" @emit-data="handleSubEmitData" /> <component v-if="head.subcomponent" :is="head.subcomponent" :key="idx + 'sub'" :inject-data="{ ...scope.row, head }" @emit-data="handleSubEmitData" />
<!-- 直接展示数据或应用过滤器 --> <!-- 直接展示数据或应用过滤器 -->
@@ -58,13 +85,21 @@
</template> </template>
<script> <script>
import { isObject, isString } from 'lodash'
import TableHead from './components/table-head.vue' import TableHead from './components/table-head.vue'
export default { export default {
name: 'BaseTable', name: 'BaseTable',
filters: {
commonFilter: (source, filterType = (a) => a) => {
return filterType(source)
}
},
props: { props: {
tableHeadConfigs: { tableHeadConfigs: {
type: Array, type: Array,
default: () => [] default: () => []
// required: true,
// validator: val => val.filter(item => !isString(item.prop) || !isString(item.name)).length === 0
}, },
data: { data: {
type: Array, type: Array,
@@ -72,6 +107,7 @@ export default {
}, },
maxHeight: { maxHeight: {
type: Number, type: Number,
// default: window.innerHeight - 325
default: 500 default: 500
}, },
spanMethod: { spanMethod: {
@@ -88,21 +124,92 @@ export default {
size: { size: {
type: Number, type: Number,
default: 10 default: 10
},
// 新增的props
// tableConfig: {
// type: Array,
// required: true,
// validator: (val) => val.filter((item) => !isString(item.prop) || !isString(item.label)).length === 0
// },
topBtnConfig: {
type: Array,
default: () => {
return []
}
} }
}, },
filters: { filters: {
commonFilter: (source, filterType = a => a) => { commonFilter: (source, filterType = (a) => a) => {
return filterType(source) return filterType(source)
} }
}, },
data() { data() {
return {} return {
selectedBox: new Array(100).fill(true)
}
},
computed: {
renderData() {
return this.data.map((item, index) => {
return {
...item,
_pageIndex: (this.page - 1) * this.limit + index + 1
}
})
},
renderTableHeadList() {
return this.tableHeadConfigs.filter((item, index) => {
return this.selectedBox[index]
})
}
},
beforeMount() {
this.selectedBox = new Array(100).fill(true)
if (this.highIndex) {
this.tableRowIndex = 0
}
},
created() {
// console.log(this.selectedBox)
console.log(this.tableHeadConfigs)
}, },
methods: { methods: {
handleSubEmitData(payload) { handleSubEmitData(payload) {
this.$emit('operate-event', payload) this.$emit('operate-event', payload)
},
clickTopButton(val) {
this.$emit('clickTopBtn', val)
} }
}, },
components: { TableHead } components: { TableHead }
} }
</script> </script>
<style lang="scss">
.setting {
text-align: right;
padding: 0px 15px 7px;
.action_btn {
display: inline-block;
margin-right: 15px;
font-size: 14px;
.add {
color: #0b58ff;
}
}
.setting-box {
width: 100px;
}
i {
color: #aaa;
}
}
.el-table .success-row {
background: #eaf1fc;
}
.iconPlus {
color: #0b58ff;
margin-right: 2px;
}
</style>

Näytä tiedosto

@@ -17,6 +17,7 @@ $--color-transition-base: color .2s cubic-bezier(.645,.045,.355,1) !default;
-------------------------- */ -------------------------- */
/// color|1|Brand Color|0 /// color|1|Brand Color|0
// $--color-primary: #409EFF !default; // $--color-primary: #409EFF !default;
// 左上标题背景颜色
$--color-primary: #001529 !default; $--color-primary: #001529 !default;
/// color|1|Background Color|4 /// color|1|Background Color|4
$--color-white: #FFFFFF !default; $--color-white: #FFFFFF !default;
@@ -51,6 +52,7 @@ $--color-danger-lighter: mix($--color-white, $--color-danger, 90%) !default;
$--color-info-lighter: mix($--color-white, $--color-info, 90%) !default; $--color-info-lighter: mix($--color-white, $--color-info, 90%) !default;
/// color|1|Font Color|2 /// color|1|Font Color|2
$--color-text-primary: #303133 !default; $--color-text-primary: #303133 !default;
$--color-text-home: #fff !default;
/// color|1|Font Color|2 /// color|1|Font Color|2
$--color-text-regular: #606266 !default; $--color-text-regular: #606266 !default;
/// color|1|Font Color|2 /// color|1|Font Color|2

Näytä tiedosto

@@ -4,7 +4,7 @@ t.loading = 'Loading...'
t.createTime = 'Create Time' t.createTime = 'Create Time'
t.brand = {} t.brand = {}
t.brand.lg = 'Deep Processing SCADA Platform' t.brand.lg = 'SCADA Platform'
t.brand.mini = 'SCADA' t.brand.mini = 'SCADA'
t.routes = {} t.routes = {}

Näytä tiedosto

@@ -1,3 +1,11 @@
/*
* @Descripttion:
* @version:
* @Author: fzq
* @Date: 2022-11-25 09:51:46
* @LastEditors: fzq
* @LastEditTime: 2022-12-13 19:27:24
*/
import Vue from 'vue' import Vue from 'vue'
import VueI18n from 'vue-i18n' import VueI18n from 'vue-i18n'
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
@@ -43,5 +51,7 @@ export function getLanguage() {
export default new VueI18n({ export default new VueI18n({
// locale: Cookies.get('language') || 'zh-CN', // locale: Cookies.get('language') || 'zh-CN',
locale: getLanguage(), // 先默认中文 locale: getLanguage(), // 先默认中文
messages messages,
//抑制警告
silentFallbackWarn: true,
}) })

File diff suppressed because one or more lines are too long

Näytä tiedosto

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="10px" height="10px" viewBox="0 0 10 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 60 (88103) - https://sketch.com -->
<desc>Created with Sketch.</desc>
<g id="11_系统管理" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="11-1用户管理" transform="translate(-1764.000000, -160.000000)">
<g id="编组-15" transform="translate(1763.000000, 158.000000)">
<g id="编组-18">
<g id="icon/界面内/新增" transform="translate(0.000000, 1.000000)">
<g id="编组">
<rect id="矩形" stroke="#979797" fill="#D8D8D8" opacity="0" x="0.5" y="0.5" width="11" height="11"></rect>
<path d="M10.0813953,6.42885117 L6.37790698,6.42885117 L6.37790698,10.0770235 C6.37790698,10.3108355 6.19069767,10.5 5.95930233,10.5 L5.95930233,10.5 C5.72790698,10.5 5.54069767,10.3108355 5.54069767,10.0770235 L5.54069767,6.42885117 L1.91860465,6.42885117 C1.6872093,6.42885117 1.5,6.23968668 1.5,6.00587467 L1.5,6.00587467 C1.5,5.77206266 1.6872093,5.58289817 1.91860465,5.58289817 L5.54069767,5.58289817 L5.54069767,1.9229765 C5.54069767,1.68916449 5.72790698,1.5 5.95930233,1.5 L5.95930233,1.5 C6.19069767,1.5 6.37790698,1.68916449 6.37790698,1.9229765 L6.37790698,5.58289817 L10.0813953,5.58289817 C10.3127907,5.58289817 10.5,5.77206266 10.5,6.00587467 L10.5,6.00587467 C10.5,6.23968668 10.3127907,6.42885117 10.0813953,6.42885117 L10.0813953,6.42885117 Z" id="Shape" fill="#0B58FF" transform="translate(6.000000, 6.000000) scale(1, -1) translate(-6.000000, -6.000000) "></path>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>

After

Leveys:  |  Korkeus:  |  Koko: 1.8 KiB

Näytä tiedosto

@@ -44,12 +44,12 @@ export const moduleRoutes = {
path: '/', path: '/',
component: () => import('@/views/main'), component: () => import('@/views/main'),
name: 'main', name: 'main',
// redirect: { name: 'home' }, redirect: { name: 'home' },
redirect: { name: 'sys-log-login' }, // redirect: { name: 'sys-log-login' },
meta: { title: '主入口布局' }, meta: { title: '主入口布局' },
children: [ children: [
{ path: '/sys-log-login', component: () => import('@/views/modules/sys/log-login'), name: 'sys-log-login', meta: { title: '首页', isTab: true } } // { path: '/sys-log-login', component: () => import('@/views/modules/sys/log-login'), name: 'sys-log-login', meta: { title: '首页', isTab: true } }
// { path: '/home', component: () => import('@/views/modules/home'), name: 'home', meta: { title: '首页', isTab: true } } { path: '/home', component: () => import('@/views/modules/home'), name: 'home', meta: { title: '首页', isTab: false, hiddenSiderbar: true } }
] ]
} }

Näytä tiedosto

@@ -31,13 +31,13 @@ export default new Vuex.Store({
contentTabs: [ contentTabs: [
{ {
...window.SITE_CONFIG['contentTabDefault'], ...window.SITE_CONFIG['contentTabDefault'],
'name': 'sys-log-login', // 'name': 'sys-log-login',
// 'name': 'home', 'name': 'home',
'title': 'home' 'title': 'home'
} }
], ],
// contentTabsActiveName: 'home' contentTabsActiveName: 'home'
contentTabsActiveName: 'sys-log-login' // contentTabsActiveName: 'sys-log-login'
}, },
modules: { modules: {
user user

Näytä tiedosto

@@ -114,3 +114,8 @@ export function calcMaxHeight(num) {
const finalHeight = clientHeight - num - FIXED_HEIGHT const finalHeight = clientHeight - num - FIXED_HEIGHT
return finalHeight > 0 ? finalHeight : -finalHeight return finalHeight > 0 ? finalHeight : -finalHeight
} }
// tableHeight
export function tableHeight(n) {
return window.innerHeight - n
}

Näytä tiedosto

@@ -1,5 +1,6 @@
<template> <template>
<main :class="['aui-content', { 'aui-content--tabs': $route.meta.isTab }]"> <!-- <main :class="['aui-content', { 'aui-content--tabs': $route.meta.isTab }]"> -->
<main :class="[this.$route.meta.hiddenSiderbar !== true? ['aui-content', { 'aui-content--tabs': $route.meta.isTab }] : 'aui-sidebar.close']">
<!-- tab展示内容 --> <!-- tab展示内容 -->
<template v-if="$route.meta.isTab"> <template v-if="$route.meta.isTab">
<el-dropdown class="aui-content--tabs-tools"> <el-dropdown class="aui-content--tabs-tools">
@@ -89,6 +90,7 @@ export default {
// tabs, 关闭全部 // tabs, 关闭全部
tabsCloseAllHandle() { tabsCloseAllHandle() {
this.$store.state.contentTabs = this.$store.state.contentTabs.filter(item => item.name === 'home') this.$store.state.contentTabs = this.$store.state.contentTabs.filter(item => item.name === 'home')
// this.$router.push({ name: 'sys-log-login' })
this.$router.push({ name: 'home' }) this.$router.push({ name: 'home' })
} }
} }

Näytä tiedosto

@@ -1,28 +1,38 @@
<template> <template>
<nav class="aui-navbar" :class="`aui-navbar--${$store.state.navbarLayoutType}`"> <nav
class="aui-navbar"
:class="[this.$route.meta.hiddenSiderbar !== true ? `aui-navbar--${$store.state.navbarLayoutType}` : 'aui-navbar.home']"
:style="{
backgroundColor: this.$route.meta.hiddenSiderbar !== true ? '#001529' : 'rgb(13,43,104)'
}">
<!-- <hamburger v-if="showhome" id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" /> --> <!-- <hamburger v-if="showhome" id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" /> -->
<div class="aui-navbar__header"> <div class="aui-navbar__header">
<h1 class="aui-navbar__brand" @click="$router.push({ name: 'sys-log-login' })"> <h1 class="aui-navbar__brand" @click="$router.push({ name: 'home' })">
<a class="aui-navbar__brand-lg" href="javascript:;"> <a class="aui-navbar__brand-lg" href="javascript:;">
<img src="../assets/img/cnbm.png" style="width: 36px; height: 36px; position: relative; top: 0em; margin-right: 12px" alt="" /> <img src="../assets/img/cnbm.png" style="width: 36px; height: 36px; position: relative; top: 0em; margin-right: 12px" alt="" />
{{ $t('brand.lg') }} {{ $t('brand.lg') }}
</a> </a>
<!-- <a class="aui-navbar__brand-mini" href="javascript:;">{{ $t('brand.mini') }}</a> --> <!-- <a class="aui-navbar__brand-mini" href="javascript:;">{{ $t('brand.mini') }}</a> -->
<!-- 缩放时LOGO --> <!-- 缩放时LOGO -->
<!-- <a class="aui-navbar__brand-mini" href="javascript:;"> -->
<a class="aui-navbar__brand-mini" href="javascript:;"> <a class="aui-navbar__brand-mini" href="javascript:;">
<img src="../assets/img/cnbm.png" style="width: 36px; height: 36px; position: relative; top: 0em" alt="" /> <img src="../assets/img/cnbm.png" style="width: 36px; height: 36px; position: relative; top: 0em" alt="" />
</a> </a>
</h1> </h1>
</div> </div>
<!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" /> --> <!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" /> -->
<div class="aui-navbar__body"> <div
class="aui-navbar__body"
:style="{
backgroundColor: this.$route.meta.hiddenSiderbar !== true ? '#fff' : 'rgb(13,43,104)'
}">
<el-menu class="aui-navbar__menu mr-auto" mode="horizontal"> <el-menu class="aui-navbar__menu mr-auto" mode="horizontal">
<el-menu-item index="1" @click="$store.state.sidebarFold = !$store.state.sidebarFold"> <el-menu-item v-if="this.$route.meta.hiddenSiderbar !== true" index="1" @click="$store.state.sidebarFold = !$store.state.sidebarFold">
<svg class="icon-svg aui-navbar__icon-menu aui-navbar__icon-menu--switch" aria-hidden="true"> <svg class="icon-svg aui-navbar__icon-menu aui-navbar__icon-menu--switch" aria-hidden="true">
<use xlink:href="#icon-outdent"></use> <use xlink:href="#icon-outdent"></use>
</svg> </svg>
</el-menu-item> </el-menu-item>
<el-menu-item index="2" @click="refresh()"> <el-menu-item v-if="this.$route.meta.hiddenSiderbar !== true" index="2" @click="refresh()">
<svg class="icon-svg aui-navbar__icon-menu aui-navbar__icon-menu--refresh" aria-hidden="true"> <svg class="icon-svg aui-navbar__icon-menu aui-navbar__icon-menu--refresh" aria-hidden="true">
<use xlink:href="#icon-sync"></use> <use xlink:href="#icon-sync"></use>
</svg> </svg>

Näytä tiedosto

@@ -1,6 +1,7 @@
<template> <template>
<aside :class="['aui-sidebar', `aui-sidebar--${$store.state.sidebarLayoutSkin}`]"> <!-- <aside :class="['aui-sidebar', `aui-sidebar--${$store.state.sidebarLayoutSkin}`]"> -->
<div class="aui-sidebar__inner"> <aside v-if="this.$route.meta.hiddenSiderbar !== true" :class="[this.$route.meta.hiddenSiderbar !== true? ['aui-sidebar',`aui-sidebar--${$store.state.sidebarLayoutSkin}`]:'aui-sidebar.close']">
<div v-if="this.$route.meta.hiddenSiderbar !== true" :class="[this.$route.meta.hiddenSiderbar !== true? 'aui-sidebar__inner':'aui-sidebar.close']">
<el-menu <el-menu
:default-active="$store.state.sidebarMenuActiveName" :default-active="$store.state.sidebarMenuActiveName"
:collapse="$store.state.sidebarFold" :collapse="$store.state.sidebarFold"

Näytä tiedosto

@@ -1,9 +1,9 @@
<template> <template>
<div v-loading.fullscreen.lock="loading" :element-loading-text="$t('loading')" :class="['aui-wrapper', { 'aui-sidebar--fold': $store.state.sidebarFold }]"> <div v-loading.fullscreen.lock="loading" :element-loading-text="$t('loading')" :class="['aui-wrapper', { 'aui-sidebar--fold': $store.state.sidebarFold }]">
<template v-if="!loading"> <template v-if="!loading">
<main-navbar /> <main-navbar/>
<main-sidebar /> <main-sidebar v-if="this.$route.meta.hiddenSiderbar !== true"/>
<div class="aui-content__wrapper"> <div :class="[this.$route.meta.hiddenSiderbar !== true? 'aui-content__wrapper':'aui-sidebar.close']">
<main-content v-if="!$store.state.contentIsNeedRefresh" /> <main-content v-if="!$store.state.contentIsNeedRefresh" />
</div> </div>
</template> </template>
@@ -50,12 +50,13 @@ export default {
methods: { methods: {
// 窗口改变大小 // 窗口改变大小
windowResizeHandle() { windowResizeHandle() {
this.$store.state.sidebarFold = document.documentElement['clientWidth'] <= 992 || false this.$store.state.sidebarFold = ((document.documentElement['clientWidth'] <= 992) && (this.$route.name !== "home")) || false
window.addEventListener( window.addEventListener(
'resize', 'resize',
// 防抖 // 防抖
debounce(() => { debounce(() => {
this.$store.state.sidebarFold = document.documentElement['clientWidth'] <= 992 || false // this.$store.state.sidebarFold = document.documentElement['clientWidth'] <= 992 || false
this.$store.state.sidebarFold = ((document.documentElement['clientWidth'] <= 992) && (this.$route.name !== "home")) || false
}, 150) }, 150)
) )
}, },

Näytä tiedosto

@@ -1,47 +1,244 @@
<!--
* @Descripttion:
* @version:
* @Author: fzq
* @Date: 2022-12-09 15:44:37
* @LastEditors: fzq
* @LastEditTime: 2022-12-11 20:47:56
-->
<template> <template>
<el-card shadow="never" class="aui-card--fill"> <div class="choicepart-container">
<!-- <div class="mod-home"> <!-- <div class="choicepat-navbar">
<h3>项目介绍</h3> <navbar :showhome="false" :show-title="true" />
<ul> </div> -->
<li> <div class="choicepart-box">
renren-ui基于vueelement-ui构建开发实现<a href="https://gitee.com/renrenio/renren-ui" target="_blank">renren-security</a>后台管理前端功能提供一套更优的前端解决方案 <div
</li> v-for="(item, index) in routeList"
<li>前后端分离通过token进行数据交互可独立部署</li> :key="item.path"
<li>动态菜单通过菜单管理统一管理访问路由</li> class="choicepart-item"
<li>演示地址<a href="http://demo.open.renren.io/renren-security" target="_blank">http://demo.open.renren.io/renren-security</a> (账号密码admin/admin)</li> @click="handelClick(item, index)"
</ul> >
<h3>获取帮助</h3> <!-- :style="{ background: colorArr.colorList[index % 9] }" -->
<ul> <div class="choicepart-item-border">
<li>官方社区<a href="https://www.renren.io/community" target="_blank">https://www.renren.io/community</a></li> <img :src="require(`../../assets/img/choicepart/${item.name}.png`)" alt="">
<li>前端Git地址<a href="https://gitee.com/renrenio/renren-ui" target="_blank">https://gitee.com/renrenio/renren-ui</a></li> </div>
<li>后台Git地址<a href="https://gitee.com/renrenio/renren-security" target="_blank">https://gitee.com/renrenio/renren-security</a></li> <div class="choicepart-item-title" :title="item.name">{{ item.name }}</div>
<li>如需关注项目最新动态请WatchStar项目同时也是对项目最好的支持</li> </div>
</ul> </div>
<h3>官方微信群</h3> </div>
<ul>
<li>扫码下面的二维码关注人人开源公众号回复加群即可根据提示加入微信群</li>
</ul>
</div> -->
</el-card>
</template> </template>
<script> <script>
// import db from '@/utils/indexDB'
// import { mapGetters } from 'vuex'
// import { constantRoutes } from '@/router'
// import { Navbar } from '@/layout/components'
// import { downLoadBGP } from '@/api/user'
import store from '@/store'
// import { blobToBase64 } from '@/utils/blobToBase64'
const colorList = ['#8080ff', '#ff8080', '#b004fb', '#ff409f', '#00caca', '#8080c0', '#cccc00', '#ff8040', '#0c4d9e']
const colorList1 = ['#b4b4ff', '#ffb4b4', '#c648fb', '#ff86c2', '#66f6f6', '#a2a2f3', '#ffff9a', '#ffc3a5', '#367cd4']
export default { export default {
created() { name: 'ChoicePart',
this.$router.replace({ name: 'sys-log-login' }) // components: { Navbar },
}, data() {
return {
baseImg: require('../../assets/img/login-back.jpg'),
coverImgUrl: localStorage.getItem('backImg') || '',
rowNum: 1,
colorArr: {
colorList,
colorList1
},
windowWidth: 0,
dbConnect: null
}
},
computed: {
routeList() {
// const cangoList = []
// const permission_routes = store.getters.permission_routes
// console.log(permission_routes)
// permission_routes.map(item => {
// if (!item.hidden && item.meta) {
// cangoList.push(item)
// }
// })
// const formatList = cangoList.map((item, index) => {
// return this.setIndex(item, index)
// })
// console.log(formatList)
return window.SITE_CONFIG['menuList']
},
// ...mapGetters(['language', 'dictList', 'dictObj'])
},
created() {
// 确保小图标点回来依然带字符
this.$store.state.sidebarFold = false
this.windowWidth = window.innerWidth
console.log(this.$route)
// this.dbConnect = db({
// DBName: 'back_img',
// version: '1.0',
// params: [
// { name: 'id', unique: true },
// { name: 'imgUrl', unique: true }
// ]
// })
// const request = this.dbConnect.openDB()
// request.onsuccess = () => {
// // const result = this.dbConnect.search('back_img', 'id', 1)
// }
},
mounted() {
// console.log(this.dictList, this.dictObj)
// this.getPic()
},
methods: {
// getPic() {
// // edit here
// downLoadBGP().then(response => {
// if (response.data.size) {
// blobToBase64(response.data).then(res => {
// this.coverImgUrl = res
// localStorage.setItem('backImg', res)
// console.log(res)
// // const result = this.dbConnect.search('back_img', 'id', 1)
// // if (result.result) {
// // this.dbConnect.update({
// // id: 1,
// // imgUrl: res
// // })
// // } else {
// // this.dbConnect.add({
// // id: 1,
// // imgUrl: res
// // })
// // }
// })
// // this.coverImgUrl = response.data
// // const temp = response.data.split('/')
// // temp.splice(0, 2)
// // this.coverImgUrl = 'http://zzdhg.mes.picaiba.com/' + temp.join('/')
// }
// })
// },
resize() {},
handelClick(item, index) {
// this.$store.dispatch('app/setChoicepart', index)
// if (item.meta.unuse) {
// this.$message.warning(this.$t('choisePart.module'))
// } else {
// this.toRouter(item)
// }
this.toRouter(item)
},
toRouter(item) {
console.log(item.children[0].url)
if (item.children) {
this.$router.push({name: item.children[0].url.replace(new RegExp('/','g'),'-')})
} else {
this.$router.push({name: item.children[0].url.replace(new RegExp('/','g'),'-')})
}
},
setIndex(list, index) {
list.meta.routeIndex = index
if (list.children) {
list.children.map(item => {
this.setIndex(item, index)
})
}
return list
}
}
} }
</script> </script>
<style>
.mod-home { <style lang="scss" scoped>
line-height: 1.5; .choicepart-container {
min-width: 100%;
min-height: 100vh;
// background: linear-gradient(-45deg, rgb(25, 25, 200), rgb(0, 100, 200));
background: url('../../assets/img/choicepart/choicepart-back.png') repeat;
background-size: cover;
overflow-x: scroll;
.choicepart-box {
width: 1440px;
margin: 0 auto;
margin: 0 auto;
// 距离上面边距
padding-top: 8vh;
min-height: 100vh;
.choicepart-item {
display: inline-block;
width: 208px;
height: 258px;
margin: 40px;
background: url('../../assets/img/choicepart/choice-item-back.png') no-repeat;
background-size: 100% 100%;
// border: 1px dashed #fff;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
top: 0;
border-radius: 5px;
overflow: hidden;
cursor: pointer;
position: relative;
img {
width: 208px;
height: 258px;
}
.choicepart-item-border {
height: 100%;
border-radius: 5px;
padding: 0 5px;
line-height: 32px;
font-size: 28px;
font-weight: lighter;
color: #2c6bd8;
overflow: hidden;
}
.choicepart-item-title {
overflow: hidden;
padding: 0 10px;
text-overflow: ellipsis;
white-space: nowrap;
position: absolute;
bottom: 0;
left: 2px;
right: 2px;
text-align: center;
color: #fff;
font-size: 16px;
line-height: 48px;
height: 48px;
letter-spacing: 2px;
background-color: rgba($color: #0b58ff, $alpha: 0.45);
}
}
.choicepart-item:hover {
.choicepart-item-title {
background-color: rgba($color: #0b58ff, $alpha: 1);
}
}
}
.choicepat-navbar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 10;
}
}
::-webkit-scrollbar-track-piece {
//滚动条凹槽的颜色,还可以设置边框属性
background: rgba(255, 255, 255, 0.1);
}
::-webkit-scrollbar {
//滚动条的宽度
width: 9px;
height: 9px;
}
::-webkit-scrollbar-thumb {
//滚动条的设置
background-color: #dddddd;
background-clip: padding-box;
min-height: 28px;
border-radius: 9px;
}
::-webkit-scrollbar-thumb:hover {
background-color: #bbb;
} }
</style> </style>

Näytä tiedosto

@@ -1,17 +1,18 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('eq.name') + ' / ' + $t('eq.code')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('eq.name') + ' / ' + $t('eq.code')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('search') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('search') }}</el-button>
<el-button v-if="$hasPermission('monitoring:equipment:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:equipment:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
<el-button v-if="$hasPermission('monitoring:equipment:export')" @click="exportHandle()">{{ $t('export') }}</el-button> <el-button v-if="$hasPermission('monitoring:equipment:export')" @click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -19,6 +20,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
@clickTopBtn="clickTopBtn"
/> />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@@ -52,7 +54,12 @@ import CKEditor from 'ckeditor4-vue'
import { calcMaxHeight } from '@/utils' import { calcMaxHeight } from '@/utils'
import { timeFilter } from '@/utils/filters' import { timeFilter } from '@/utils/filters'
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -278,6 +285,7 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
topBtnConfig,
calcMaxHeight, calcMaxHeight,
tableConfigs, tableConfigs,
addOrUpdateConfigs, addOrUpdateConfigs,
@@ -495,6 +503,12 @@ export default {
// } // }
// }) // })
}, },
clickTopBtn() {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
@@ -530,3 +544,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,16 +1,17 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('eq.groupname') + ' / ' + $t('eq.groupcode')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('eq.groupname') + ' / ' + $t('eq.groupcode')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<el-button v-if="$hasPermission('monitoring:equipmentgroup:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:equipmentgroup:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -18,6 +19,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
@clickTopBtn="clickTopBtn" />
/> />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@@ -43,7 +45,12 @@ import i18n from '@/i18n'
import BaseTable from '@/components/base-table' import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent' import TableOperateComponent from '@/components/base-table/components/operationComponent'
import TableTextComponent from '@/components/base-table/components/detailComponent' import TableTextComponent from '@/components/base-table/components/detailComponent'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -71,6 +78,7 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
topBtnConfig,
addOrUpdateConfigs, addOrUpdateConfigs,
calcMaxHeight, calcMaxHeight,
tableConfigs, tableConfigs,
@@ -164,6 +172,12 @@ export default {
this.$refs.addOrUpdate.init(id) this.$refs.addOrUpdate.init(id)
}) })
}, },
clickTopBtn() {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
@@ -199,3 +213,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,16 +1,17 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('eq.type')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('eq.type')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<el-button v-if="$hasPermission('monitoring:equipmenttype:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:equipmenttype:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -18,6 +19,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
@clickTopBtn="clickTopBtn"
/> />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@@ -43,7 +45,12 @@ import i18n from '@/i18n'
import BaseTable from '@/components/base-table' import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent' import TableOperateComponent from '@/components/base-table/components/operationComponent'
// import TableTextComponent from '@/components/base-table/components/detailComponent' // import TableTextComponent from '@/components/base-table/components/detailComponent'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -90,6 +97,7 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
topBtnConfig,
addOrUpdateConfigs, addOrUpdateConfigs,
calcMaxHeight, calcMaxHeight,
tableConfigs, tableConfigs,
@@ -188,6 +196,14 @@ export default {
this.$refs.addOrUpdate.init(id) this.$refs.addOrUpdate.init(id)
}) })
}, },
clickTopBtn() {
// 更新树形结构
this.getTreeEquipmentType()
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
@@ -223,3 +239,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,16 +1,17 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('factory.name') + ' / ' + $t('factory.code')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('factory.name') + ' / ' + $t('factory.code')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<el-button v-if="$hasPermission('monitoring:factory:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:factory:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -18,6 +19,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
@clickTopBtn="clickTopBtn"
/> />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@@ -26,8 +28,7 @@
:page-sizes="[10, 20, 50, 100]" :page-sizes="[10, 20, 50, 100]"
:page-size="pageSize" :page-size="pageSize"
:total="totalPage" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper">
>
</el-pagination> </el-pagination>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" /> <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" />
@@ -43,7 +44,12 @@ import i18n from '@/i18n'
import BaseTable from '@/components/base-table' import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent' import TableOperateComponent from '@/components/base-table/components/operationComponent'
// import TableTextComponent from '@/components/base-table/components/detailComponent' // import TableTextComponent from '@/components/base-table/components/detailComponent'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -85,6 +91,7 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
topBtnConfig,
calcMaxHeight, calcMaxHeight,
addOrUpdateConfigs, addOrUpdateConfigs,
tableConfigs, tableConfigs,
@@ -168,11 +175,17 @@ export default {
this.$refs.addOrUpdate.init(id) this.$refs.addOrUpdate.init(id)
}) })
}, },
clickTopBtn() {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
? [id] ? [id]
: this.dataListSelections.map(item => { : this.dataListSelections.map((item) => {
return item.id return item.id
}) })
this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), { this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
@@ -203,3 +216,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,18 +1,19 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('prod.name') + ' / ' + $t('prod.code')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('prod.name') + ' / ' + $t('prod.code')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<!-- <el-button @click="addOrEdit()">测试</el-button> --> <!-- <el-button @click="addOrEdit()">测试</el-button> -->
<!-- <el-button v-if="$hasPermission('monitoring:product:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> --> <!-- <el-button v-if="$hasPermission('monitoring:product:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
<el-button v-if="$hasPermission('monitoring:product:save')" type="primary" @click="addOrEdit()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:product:save')" type="primary" @click="addOrEdit()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -20,7 +21,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
/> @clickTopBtn="clickTopBtn" />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@@ -29,8 +30,8 @@
:page-sizes="[10, 20, 50, 100]" :page-sizes="[10, 20, 50, 100]"
:page-size="pageSize" :page-size="pageSize"
:total="totalPage" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper">
></el-pagination> </el-pagination>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<!-- <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> --> <!-- <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> -->
<base-dialog v-if="showbasedialog" ref="basedialog" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" /> <base-dialog v-if="showbasedialog" ref="basedialog" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" />
@@ -52,6 +53,12 @@ import { dictFilter } from '@/utils/filters'
const UnitDictTypeId = '1557173812109242370' const UnitDictTypeId = '1557173812109242370'
const ProductTypeDictTypeId = '1557179530308616193' const ProductTypeDictTypeId = '1557179530308616193'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ type: 'index', width: 100, name: i18n.t('index') }, { type: 'index', width: 100, name: i18n.t('index') },
{ prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter }, { prop: 'createTime', name: i18n.t('createTime'), filter: timeFilter },
@@ -144,6 +151,7 @@ export default {
mixins: [dictListMixin], mixins: [dictListMixin],
data() { data() {
return { return {
topBtnConfig,
calcMaxHeight, calcMaxHeight,
tableConfigs, tableConfigs,
dataForm: { dataForm: {
@@ -176,6 +184,7 @@ export default {
} }
} }
}) })
console.log(this.$route)
}, },
activated() { activated() {
this.getDataList() this.getDataList()
@@ -193,6 +202,12 @@ export default {
this.$refs.basedialog.init(id) this.$refs.basedialog.init(id)
}) })
}, },
clickTopBtn() {
this.showbasedialog = true
this.$nextTick(() => {
this.$refs.basedialog.init()
})
},
// 获取数据列表 // 获取数据列表
getDataList() { getDataList() {
// console.log("after dialog close: ", this.showbasedialog) // console.log("after dialog close: ", this.showbasedialog)
@@ -290,3 +305,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,16 +1,17 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('pl.name')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('pl.name')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<el-button v-if="$hasPermission('monitoring:productionline:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <!-- <el-button v-if="$hasPermission('monitoring:productionline:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -18,7 +19,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
/> @clickTopBtn="clickTopBtn" />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@current-change="currentChangeHandle" @current-change="currentChangeHandle"
@@ -26,8 +27,7 @@
:page-sizes="[10, 20, 50, 100]" :page-sizes="[10, 20, 50, 100]"
:page-size="pageSize" :page-size="pageSize"
:total="totalPage" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper">
>
</el-pagination> </el-pagination>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" /> <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :configs="addOrUpdateConfigs" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" />
@@ -42,7 +42,12 @@ import i18n from '@/i18n'
import BaseTable from '@/components/base-table' import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent' import TableOperateComponent from '@/components/base-table/components/operationComponent'
// import TableTextComponent from '@/components/base-table/components/detailComponent' // import TableTextComponent from '@/components/base-table/components/detailComponent'
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -52,7 +57,7 @@ const tableConfigs = [
{ prop: 'factoryName', name: i18n.t('factory.title') }, { prop: 'factoryName', name: i18n.t('factory.title') },
{ prop: 'name', name: i18n.t('pl.name') }, { prop: 'name', name: i18n.t('pl.name') },
{ prop: 'code', name: i18n.t('pl.code') }, { prop: 'code', name: i18n.t('pl.code') },
{ prop: 'status', name: i18n.t('pl.status'), filter: val => (val === 0 || val === 1 || val === 2) && ['停止', '运行', '未知'][val] }, { prop: 'status', name: i18n.t('pl.status'), filter: (val) => (val === 0 || val === 1 || val === 2) && ['停止', '运行', '未知'][val] },
{ prop: 'description', name: i18n.t('desc') }, { prop: 'description', name: i18n.t('desc') },
{ prop: 'remark', name: i18n.t('remark') }, { prop: 'remark', name: i18n.t('remark') },
{ prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] } { prop: 'operations', name: i18n.t('handle'), fixed: 'right', width: 180, subcomponent: TableOperateComponent, options: ['edit', 'delete'] }
@@ -79,7 +84,7 @@ const addOrUpdateConfigs = {
placeholder: i18n.t('hints.number'), placeholder: i18n.t('hints.number'),
type: 'number', // TODO: 可改进为自动应用 number 验证,此时还必须添加下述规则: type: 'number', // TODO: 可改进为自动应用 number 验证,此时还必须添加下述规则:
required: true, required: true,
rules: [{ type: 'number', transform: val => Number(val), trigger: 'blur', message: i18n.t('hints.number') }] rules: [{ type: 'number', transform: (val) => Number(val), trigger: 'blur', message: i18n.t('hints.number') }]
}, },
'description', 'description',
'remark' 'remark'
@@ -94,6 +99,7 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
topBtnConfig,
calcMaxHeight, calcMaxHeight,
addOrUpdateConfigs, addOrUpdateConfigs,
tableConfigs, tableConfigs,
@@ -133,10 +139,10 @@ export default {
} else { } else {
this.factoryList.splice(0) this.factoryList.splice(0)
} }
this.addOrUpdateConfigs.fields.forEach(item => { this.addOrUpdateConfigs.fields.forEach((item) => {
if (item.name === 'factoryId') { if (item.name === 'factoryId') {
console.log('res', item) console.log('res', item)
item.options = this.factoryList.map(f => ({ value: f.id, label: f.name })) item.options = this.factoryList.map((f) => ({ value: f.id, label: f.name }))
} }
}) })
}) })
@@ -194,11 +200,17 @@ export default {
this.$refs.addOrUpdate.init(id) this.$refs.addOrUpdate.init(id)
}) })
}, },
clickTopBtn() {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
? [id] ? [id]
: this.dataListSelections.map(item => { : this.dataListSelections.map((item) => {
return item.id return item.id
}) })
this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), { this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
@@ -229,3 +241,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,16 +1,19 @@
<template> <template>
<div class="mod-config"> <div class="mod-config">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)"> <!-- 1. class="blueTip" size="small" -->
<el-form :inline="true" :model="dataForm" @keyup.enter.native="currentChangeHandle(1)" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.key" :placeholder="$t('ws.name')" clearable></el-input> <el-input v-model="dataForm.key" :placeholder="$t('ws.name')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="currentChangeHandle(1)">{{ $t('query') }}</el-button> <!-- 2. class="buttonColor" -->
<el-button v-if="$hasPermission('monitoring:workshopsection:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <el-button class="buttonColor" @click="currentChangeHandle(1)">{{ $t('query') }}</el-button>
<!-- <el-button v-if="$hasPermission('monitoring:workshopsection:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- 3. :top-btn-config="topBtnConfig" @clickTopBtn="clickTopBtn" -->
<base-table <base-table
:top-btn-config="topBtnConfig"
:page="pageIndex" :page="pageIndex"
:size="pageSize" :size="pageSize"
:data="dataList" :data="dataList"
@@ -18,7 +21,7 @@
:max-height="calcMaxHeight(8)" :max-height="calcMaxHeight(8)"
@operate-event="handleOperations" @operate-event="handleOperations"
@refreshDataList="getDataList" @refreshDataList="getDataList"
/> @clickTopBtn="clickTopBtn" />
<el-pagination <el-pagination
@size-change="sizeChangeHandle" @size-change="sizeChangeHandle"
@current-change="currentChangeHandle" @current-change="currentChangeHandle"
@@ -26,8 +29,7 @@
:page-sizes="[10, 20, 50, 100]" :page-sizes="[10, 20, 50, 100]"
:page-size="pageSize" :page-size="pageSize"
:total="totalPage" :total="totalPage"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper">
>
</el-pagination> </el-pagination>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" /> <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" @destory-dialog="handleDestroyDialog" />
@@ -43,7 +45,13 @@ import i18n from '@/i18n'
import BaseTable from '@/components/base-table' import BaseTable from '@/components/base-table'
import TableOperateComponent from '@/components/base-table/components/operationComponent' import TableOperateComponent from '@/components/base-table/components/operationComponent'
import TableTextComponent from '@/components/base-table/components/detailComponent' import TableTextComponent from '@/components/base-table/components/detailComponent'
// 4.就是这个topBtnConfig
const topBtnConfig = [
{
type: 'add',
btnName: i18n.t('add')
}
]
const tableConfigs = [ const tableConfigs = [
{ {
type: 'index', type: 'index',
@@ -79,6 +87,8 @@ const addOrUpdateConfigs = {
export default { export default {
data() { data() {
return { return {
// 5. 下面的 topBtnConfig,
topBtnConfig,
calcMaxHeight, calcMaxHeight,
addOrUpdateConfigs, addOrUpdateConfigs,
tableConfigs, tableConfigs,
@@ -114,11 +124,11 @@ export default {
getProductLine() { getProductLine() {
this.$http.get(this.$http.adornUrl('/monitoring/productionLine/list')).then(({ data: res }) => { this.$http.get(this.$http.adornUrl('/monitoring/productionLine/list')).then(({ data: res }) => {
if (res && res.code === 0) { if (res && res.code === 0) {
this.addOrUpdateConfigs.fields.forEach(item => { this.addOrUpdateConfigs.fields.forEach((item) => {
if (item.name === 'productionLineId') item.options = res.data.map(item => ({ label: item.name, value: item.id })) if (item.name === 'productionLineId') item.options = res.data.map((item) => ({ label: item.name, value: item.id }))
}) })
} else { } else {
this.addOrUpdateConfigs.fields.forEach(item => { this.addOrUpdateConfigs.fields.forEach((item) => {
if (item.name === 'productionLineId') item.options.splice(0) if (item.name === 'productionLineId') item.options.splice(0)
}) })
// this.plList.splice(0) // this.plList.splice(0)
@@ -179,11 +189,18 @@ export default {
this.$refs.addOrUpdate.init(id) this.$refs.addOrUpdate.init(id)
}) })
}, },
// 6. 新增按钮
clickTopBtn() {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init()
})
},
// 删除 // 删除
deleteHandle(id) { deleteHandle(id) {
var ids = id var ids = id
? [id] ? [id]
: this.dataListSelections.map(item => { : this.dataListSelections.map((item) => {
return item.id return item.id
}) })
this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), { this.$confirm(`${i18n.t('prompt.info', { handle: id ? i18n.t('delete').toLowerCase() : i18n.t('deleteBatch').toLowerCase() })}`, i18n.t('prompt.title'), {
@@ -214,3 +231,20 @@ export default {
} }
} }
</script> </script>
<style>
.blueTip::before {
display: inline-block;
content: '';
width: 4px;
height: 24px;
background: #0b58ff;
border-radius: 1px;
margin-right: 8px;
margin-top: 4px;
}
.buttonColor {
color: #fff;
background: #0b58ff;
}
</style>

Näytä tiedosto

@@ -1,7 +1,7 @@
<template> <template>
<el-card shadow="never" class="aui-card--fill"> <el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__dict"> <div class="mod-sys__dict">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()" class="blueTip" size="small">
<el-form-item> <el-form-item>
<el-input v-model="dataForm.dictName" :placeholder="$t('dict.dictName')" clearable></el-input> <el-input v-model="dataForm.dictName" :placeholder="$t('dict.dictName')" clearable></el-input>
</el-form-item> </el-form-item>
@@ -9,11 +9,11 @@
<el-input v-model="dataForm.dictType" :placeholder="$t('dict.dictType')" clearable></el-input> <el-input v-model="dataForm.dictType" :placeholder="$t('dict.dictType')" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button> <el-button class="buttonColor" @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item> </el-form-item>
<el-form-item> <!-- <el-form-item>
<el-button v-if="$hasPermission('sys:dict:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button> <el-button v-if="$hasPermission('sys:dict:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>
</el-form-item> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button v-if="$hasPermission('sys:dict:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button> <el-button v-if="$hasPermission('sys:dict:delete')" type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>
</el-form-item> </el-form-item>
@@ -21,7 +21,19 @@
<el-button @click="showIcons()">所有图标</el-button> <el-button @click="showIcons()">所有图标</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" @sort-change="dataListSortChangeHandle" style="width: 100%;"> <!-- border
:row-style="{ height: '50px' }"
:cell-style="{ padding: '0px' }"
-->
<el-table
v-loading="dataListLoading"
:data="dataList"
@selection-change="dataListSelectionChangeHandle"
@sort-change="dataListSortChangeHandle"
style="width: 100%"
:row-style="{ height: '50px' }"
:cell-style="{ padding: '0px' }"
>
<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column> <el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>
<el-table-column prop="dictName" :label="$t('dict.dictName')" header-align="center" align="center"></el-table-column> <el-table-column prop="dictName" :label="$t('dict.dictName')" header-align="center" align="center"></el-table-column>
<el-table-column prop="dictType" :label="$t('dict.dictType')" header-align="center" align="center"></el-table-column> <el-table-column prop="dictType" :label="$t('dict.dictType')" header-align="center" align="center"></el-table-column>
@@ -48,8 +60,7 @@
:total="total" :total="total"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChangeHandle" @size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle" @current-change="pageCurrentChangeHandle">
>
</el-pagination> </el-pagination>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
@@ -90,8 +101,8 @@ export default {
// destroy dialog // destroy dialog
handleDestroyDialog() { handleDestroyDialog() {
setTimeout(() => { setTimeout(() => {
this.addOrUpdateVisible= false this.addOrUpdateVisible = false
}, /** after dialog animated */ 200); }, /** after dialog animated */ 200)
}, },
// //
showIcons() { showIcons() {

Näytä tiedosto

@@ -7,6 +7,7 @@
<div class="btn-bar"> <div class="btn-bar">
<el-button @click="$router.go(-1)">{{ $t('notFound.back') }}</el-button> <el-button @click="$router.go(-1)">{{ $t('notFound.back') }}</el-button>
<el-button type="primary" @click="$router.push({ name: 'home' })">{{ $t('notFound.home') }}</el-button> <el-button type="primary" @click="$router.push({ name: 'home' })">{{ $t('notFound.home') }}</el-button>
<!-- <el-button type="primary" @click="$router.push({ name: 'sys-log-login' })">{{ $t('notFound.home') }}</el-button> -->
</div> </div>
</div> </div>
</div> </div>

Näytä tiedosto

@@ -199,8 +199,8 @@ export default {
} }
}) })
// this.$router.replace({ name: 'home' }) this.$router.replace({ name: 'home' })
this.$router.replace({ name: 'sys-log-login' }) // this.$router.replace({ name: 'sys-log-login' })
}) })
.catch(err => { .catch(err => {
this.$message({ this.$message({