From 4e6d05e023123e4d5a6710549fe5eb30be108402 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 11 七月 2024 11:35:26 +0800
Subject: [PATCH] 密码策略增删改分页 首页添加修改密码对话框 取消最近模块中dialog对话框中关闭对话框销毁对话框中元素的destroy-on-close属性(导致拖拽效果不实现)
---
Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue | 1
Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue | 1
Source/plt-web/plt-web-ui/src/views/system/role/index.vue | 1
Source/plt-web/plt-web-ui/src/api/system/password/api.js | 28 ++
Source/plt-web/plt-web-ui/src/views/system/user/index.vue | 2
Source/plt-web/plt-web-ui/src/page/index/top/top-menu.vue | 88 ++++----
Source/plt-web/plt-web-ui/src/components/actions/base/uploadFile.vue | 1
Source/plt-web/plt-web-ui/src/views/system/department/index.vue | 1
Source/plt-web/plt-web-ui/src/views/system/password/index.vue | 129 +++++++----
Source/plt-web/plt-web-ui/src/components/PLT-basic-component/upload-file.vue | 1
Source/plt-web/plt-web-ui/src/page/index/top/index.vue | 393 ++++++++++++++++++++---------------
11 files changed, 383 insertions(+), 263 deletions(-)
diff --git a/Source/plt-web/plt-web-ui/src/api/system/password/api.js b/Source/plt-web/plt-web-ui/src/api/system/password/api.js
index 57153dc..911261f 100644
--- a/Source/plt-web/plt-web-ui/src/api/system/password/api.js
+++ b/Source/plt-web/plt-web-ui/src/api/system/password/api.js
@@ -11,3 +11,31 @@
}
});
}
+
+// 鍒犻櫎
+export function deleteDep(params) {
+ return request({
+ url: "/api/passwordStrategyQueryController/delPasswordStrateg",
+ method: "delete",
+ params
+ });
+}
+
+// 娣诲姞
+export function addDept(params) {
+ return request({
+ url: "/api/passwordStrategyQueryController/addPasswordStrateg",
+ method: "post",
+ data:params
+ });
+}
+
+// 缂栬緫
+export function updatePasswordStrateg(params) {
+ return request({
+ url: "/api/passwordStrategyQueryController/updatePasswordStrateg",
+ method: "put",
+ data:params
+ });
+}
+
diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
index 03159a9..ca65a9c 100644
--- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
+++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/transfer.vue
@@ -2,7 +2,6 @@
<el-dialog
v-dialogDrag
:close-on-click-modal="false"
- :destroy-on-close="true"
:title="title"
:visible.sync="visible"
append-to-body="true"
diff --git a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/upload-file.vue b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/upload-file.vue
index 3c3da9d..ea6985d 100644
--- a/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/upload-file.vue
+++ b/Source/plt-web/plt-web-ui/src/components/PLT-basic-component/upload-file.vue
@@ -2,7 +2,6 @@
<el-dialog
v-dialogDrag
:close-on-click-modal="false"
- :destroy-on-close="true"
:title="title"
:visible.sync="visible"
width="40%"
diff --git a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
index 11a7e3b..f6fe790 100644
--- a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
+++ b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
@@ -1,7 +1,6 @@
<template>
<el-dialog v-dialogDrag
:close-on-click-modal="false"
- :destroy-on-close="true"
:visible.sync="visible"
:width="width"
append-to-body="true"
diff --git a/Source/plt-web/plt-web-ui/src/components/actions/base/uploadFile.vue b/Source/plt-web/plt-web-ui/src/components/actions/base/uploadFile.vue
index 8dc07bf..6a10a70 100644
--- a/Source/plt-web/plt-web-ui/src/components/actions/base/uploadFile.vue
+++ b/Source/plt-web/plt-web-ui/src/components/actions/base/uploadFile.vue
@@ -2,7 +2,6 @@
<el-dialog
v-dialogDrag
:close-on-click-modal="false"
- :destroy-on-close="true"
:visible.sync="visible"
:width="width"
append-to-body
diff --git a/Source/plt-web/plt-web-ui/src/page/index/top/index.vue b/Source/plt-web/plt-web-ui/src/page/index/top/index.vue
index 6b99b79..49677d6 100644
--- a/Source/plt-web/plt-web-ui/src/page/index/top/index.vue
+++ b/Source/plt-web/plt-web-ui/src/page/index/top/index.vue
@@ -1,255 +1,318 @@
<template>
<div class="avue-top">
<div class="top-bar__left">
- <div class="avue-breadcrumb"
+ <div v-if="showCollapse"
:class="[{ 'avue-breadcrumb--active': isCollapse }]"
- v-if="showCollapse">
+ class="avue-breadcrumb">
<i class="icon-navicon"
@click="setCollapse"></i>
</div>
</div>
<div class="top-bar__title">
- <div class="top-bar__item top-bar__item--show"
- v-if="showMenu">
+ <div v-if="showMenu"
+ class="top-bar__item top-bar__item--show">
<top-menu ref="topMenu"></top-menu>
</div>
- <span class="top-bar__item"
- v-if="showSearch">
+ <span v-if="showSearch"
+ class="top-bar__item">
<top-search></top-search>
</span>
</div>
<div class="top-bar__right">
<el-tooltip v-if="showColor"
- effect="dark"
:content="$t('navbar.color')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item">
<top-color></top-color>
</div>
</el-tooltip>
<el-tooltip v-if="showDebug"
- effect="dark"
:content="logsFlag?$t('navbar.bug'):logsLen+$t('navbar.bugs')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item">
<top-logs></top-logs>
</div>
</el-tooltip>
<el-tooltip v-if="showLock"
- effect="dark"
:content="$t('navbar.lock')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item">
<top-lock></top-lock>
</div>
</el-tooltip>
<el-tooltip v-if="showTheme"
- effect="dark"
:content="$t('navbar.theme')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item top-bar__item--show">
<top-theme></top-theme>
</div>
</el-tooltip>
- <el-tooltip effect="dark"
- :content="$t('navbar.notice')"
+ <el-tooltip :content="$t('navbar.notice')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item top-bar__item--show">
<top-notice></top-notice>
</div>
</el-tooltip>
- <el-tooltip effect="dark"
- :content="$t('navbar.language')"
+ <el-tooltip :content="$t('navbar.language')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item top-bar__item--show">
<top-lang></top-lang>
</div>
</el-tooltip>
<el-tooltip v-if="showFullScren"
- effect="dark"
:content="isFullScren?$t('navbar.screenfullF'):$t('navbar.screenfull')"
+ effect="dark"
placement="bottom">
<div class="top-bar__item">
<i :class="isFullScren?'icon-tuichuquanping':'icon-quanping'"
@click="handleScreen"></i>
</div>
</el-tooltip>
- <img class="top-bar__img"
- :src="userInfo.avatar">
+ <img :src="userInfo.avatar"
+ class="top-bar__img">
<el-dropdown>
<span class="el-dropdown-link">
- {{userInfo.userName}}
+ {{ userInfo.userName }}
<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item>
- <router-link to="/">{{$t('navbar.dashboard')}}</router-link>
+ <router-link to="/">{{ $t('navbar.dashboard') }}</router-link>
</el-dropdown-item>
- <el-dropdown-item>
- <router-link to="/info/index">{{$t('navbar.userinfo')}}</router-link>
+ <el-dropdown-item @click.native="changePasswordHandler">
+ <!-- <router-link to="/info/index">{{ $t('navbar.userinfo') }}</router-link>-->
+ 淇敼瀵嗙爜
</el-dropdown-item>
<el-dropdown-item v-if="this.website.switchMode" @click.native="switchDept"
- >{{$t('navbar.switchDept')}}
+ >{{ $t('navbar.switchDept') }}
</el-dropdown-item>
- <el-dropdown-item @click.native="logout"
- divided>{{$t('navbar.logOut')}}
+ <el-dropdown-item divided
+ @click.native="logout">{{ $t('navbar.logOut') }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
- <el-dialog title="鐢ㄦ埛淇℃伅閫夋嫨"
+ <el-dialog :visible.sync="userBox"
append-to-body
- :visible.sync="userBox"
+ title="鐢ㄦ埛淇℃伅閫夋嫨"
width="350px">
- <avue-form ref="form" :option="userOption" v-model="userForm" @submit="submitSwitch"/>
+ <avue-form ref="form" v-model="userForm" :option="userOption" @submit="submitSwitch"/>
+ </el-dialog>
+
+ <!-- 淇敼瀵嗙爜瀵硅瘽妗� -->
+ <el-dialog
+ v-dialogDrag
+ :visible.sync="passwordVisible"
+ append-to-body="true"
+ class="avue-dialog"
+ title="淇敼瀵嗙爜"
+ width="50%">
+ <avue-form ref="form" v-model="passwordForm" :option="passwordOption" @submit="submitSwitch"/>
</el-dialog>
</div>
</div>
</template>
<script>
- import {resetRouter} from '@/router/router'
- import {mapGetters, mapState} from "vuex";
- import {fullscreenToggel, listenfullscreen} from "@/util/util";
- import topLock from "./top-lock";
- import topMenu from "./top-menu";
- import topSearch from "./top-search";
- import topTheme from "./top-theme";
- import topLogs from "./top-logs";
- import topColor from "./top-color";
- import topNotice from './top-notice'
- import topLang from "./top-lang";
+import {resetRouter} from '@/router/router'
+import {mapGetters, mapState} from "vuex";
+import {fullscreenToggel, listenfullscreen} from "@/util/util";
+import topLock from "./top-lock";
+import topMenu from "./top-menu";
+import topSearch from "./top-search";
+import topTheme from "./top-theme";
+import topLogs from "./top-logs";
+import topColor from "./top-color";
+import topNotice from './top-notice'
+import topLang from "./top-lang";
- export default {
- components: {
- topLock,
- topMenu,
- topSearch,
- topTheme,
- topLogs,
- topColor,
- topNotice,
- topLang
- },
- name: "top",
- data() {
- return {
- userBox: false,
- userForm: {
- deptId: '',
- roleId: ''
- },
- userOption: {
- labelWidth: 70,
- submitBtn: true,
- emptyBtn: false,
- submitText: '鍒囨崲',
- column: [
- {
- label: '閮ㄩ棬',
- prop: 'deptId',
- type: 'select',
- props: {
- label: 'deptName',
- value: 'id'
- },
- dicUrl: '/api/blade-system/dept/select',
- span: 24,
- display: false,
- rules: [{
+export default {
+ components: {
+ topLock,
+ topMenu,
+ topSearch,
+ topTheme,
+ topLogs,
+ topColor,
+ topNotice,
+ topLang
+ },
+ name: "top",
+ data() {
+ return {
+ passwordVisible: false,
+ passwordForm: {},
+ passwordOption: {
+ submitText:'淇濆瓨',
+ column: [
+ {
+ label: '鐧婚檰瀵嗙爜',
+ prop: 'input',
+ span: 24,
+ labelWidth:"15%",
+ rules: [
+ {
required: true,
- message: "璇烽�夋嫨閮ㄩ棬",
- trigger: "blur"
- }],
- },
- {
- label: '瑙掕壊',
- prop: 'roleId',
- type: 'select',
- props: {
- label: 'roleName',
- value: 'id'
- },
- dicUrl: '/api/blade-system/role/select',
- span: 24,
- display: false,
- rules: [{
+ message: '璇疯緭鍏ョ櫥闄嗗瘑鐮�',
+ trigger: 'blur'
+ }
+ ]
+ },
+ {
+ label: '鏂扮櫥闄嗗瘑鐮�',
+ prop: 'input1',
+ span: 24,
+ labelWidth:"15%",
+ rules: [
+ {
required: true,
- message: "璇烽�夋嫨瑙掕壊",
- trigger: "blur"
- }],
+ message: '璇疯緭鍏ユ柊鐧婚檰瀵嗙爜',
+ trigger: 'blur'
+ }
+ ]
+ },
+ {
+ label: '鏂板瘑鐮佺櫥闄嗙‘璁�',
+ prop: 'input2',
+ span: 24,
+ labelWidth:"15%",
+ rules: [
+ {
+ required: true,
+ message: '璇风‘璁ょ櫥闄嗗瘑鐮�',
+ trigger: 'blur'
+ }
+ ]
+ }
+ ]
+ },
+ userBox: false,
+ userForm: {
+ deptId: '',
+ roleId: ''
+ },
+ userOption: {
+ labelWidth: 70,
+ submitBtn: true,
+ emptyBtn: false,
+ submitText: '鍒囨崲',
+ column: [
+ {
+ label: '閮ㄩ棬',
+ prop: 'deptId',
+ type: 'select',
+ props: {
+ label: 'deptName',
+ value: 'id'
},
- ]
- }
- };
- },
- filters: {},
- created() {
- },
- mounted() {
- listenfullscreen(this.setScreen);
- },
- computed: {
- ...mapState({
- showDebug: state => state.common.showDebug,
- showTheme: state => state.common.showTheme,
- showLock: state => state.common.showLock,
- showFullScren: state => state.common.showFullScren,
- showCollapse: state => state.common.showCollapse,
- showSearch: state => state.common.showSearch,
- showMenu: state => state.common.showMenu,
- showColor: state => state.common.showColor
- }),
- ...mapGetters([
- "userInfo",
- "isFullScren",
- "tagWel",
- "tagList",
- "isCollapse",
- "tag",
- "logsLen",
- "logsFlag"
- ])
- },
- methods: {
- handleScreen() {
- fullscreenToggel();
- },
- setCollapse() {
- this.$store.commit("SET_COLLAPSE");
- },
- setScreen() {
- this.$store.commit("SET_FULLSCREN");
- },
- switchDept() {
- const userId = this.userInfo.user_id;
- const deptColumn = this.findObject(this.userOption.column, "deptId");
- deptColumn.dicUrl = `/api/blade-system/dept/select?userId=${userId}`;
- deptColumn.display = true;
- const roleColumn = this.findObject(this.userOption.column, "roleId");
- roleColumn.dicUrl = `/api/blade-system/role/select?userId=${userId}`;
- roleColumn.display = true;
- this.userBox = true;
- },
- submitSwitch (form, done) {
- this.$store.dispatch("refreshToken", form).then(() => {
- this.userBox = false;
- this.$router.push({path: "/"});
- })
- done();
- },
- logout() {
- this.$confirm(this.$t("logoutTip"), this.$t("tip"), {
- confirmButtonText: this.$t("submitText"),
- cancelButtonText: this.$t("cancelText"),
- type: "warning"
- }).then(() => {
- this.$store.dispatch("LogOut").then(() => {
- resetRouter();
- this.$router.push({path: "/login"});
- });
- });
+ dicUrl: '/api/blade-system/dept/select',
+ span: 24,
+ display: false,
+ rules: [{
+ required: true,
+ message: "璇烽�夋嫨閮ㄩ棬",
+ trigger: "blur"
+ }],
+ },
+ {
+ label: '瑙掕壊',
+ prop: 'roleId',
+ type: 'select',
+ props: {
+ label: 'roleName',
+ value: 'id'
+ },
+ dicUrl: '/api/blade-system/role/select',
+ span: 24,
+ display: false,
+ rules: [{
+ required: true,
+ message: "璇烽�夋嫨瑙掕壊",
+ trigger: "blur"
+ }],
+ },
+ ]
}
+ };
+ },
+ filters: {},
+ created() {
+ },
+ mounted() {
+ listenfullscreen(this.setScreen);
+ },
+ computed: {
+ ...mapState({
+ showDebug: state => state.common.showDebug,
+ showTheme: state => state.common.showTheme,
+ showLock: state => state.common.showLock,
+ showFullScren: state => state.common.showFullScren,
+ showCollapse: state => state.common.showCollapse,
+ showSearch: state => state.common.showSearch,
+ showMenu: state => state.common.showMenu,
+ showColor: state => state.common.showColor
+ }),
+ ...mapGetters([
+ "userInfo",
+ "isFullScren",
+ "tagWel",
+ "tagList",
+ "isCollapse",
+ "tag",
+ "logsLen",
+ "logsFlag"
+ ])
+ },
+ methods: {
+ // 淇敼瀵嗙爜
+ changePasswordHandler() {
+ console.log('123');
+ this.passwordVisible = true;
+ },
+ handleScreen() {
+ fullscreenToggel();
+ },
+ setCollapse() {
+ this.$store.commit("SET_COLLAPSE");
+ },
+ setScreen() {
+ this.$store.commit("SET_FULLSCREN");
+ },
+ switchDept() {
+ const userId = this.userInfo.user_id;
+ const deptColumn = this.findObject(this.userOption.column, "deptId");
+ deptColumn.dicUrl = `/api/blade-system/dept/select?userId=${userId}`;
+ deptColumn.display = true;
+ const roleColumn = this.findObject(this.userOption.column, "roleId");
+ roleColumn.dicUrl = `/api/blade-system/role/select?userId=${userId}`;
+ roleColumn.display = true;
+ this.userBox = true;
+ },
+ submitSwitch(form, done) {
+ this.$store.dispatch("refreshToken", form).then(() => {
+ this.userBox = false;
+ this.$router.push({path: "/"});
+ })
+ done();
+ },
+ logout() {
+ this.$confirm(this.$t("logoutTip"), this.$t("tip"), {
+ confirmButtonText: this.$t("submitText"),
+ cancelButtonText: this.$t("cancelText"),
+ type: "warning"
+ }).then(() => {
+ this.$store.dispatch("LogOut").then(() => {
+ resetRouter();
+ this.$router.push({path: "/login"});
+ });
+ });
}
- };
+ }
+};
</script>
<style lang="scss" scoped>
diff --git a/Source/plt-web/plt-web-ui/src/page/index/top/top-menu.vue b/Source/plt-web/plt-web-ui/src/page/index/top/top-menu.vue
index 2749db6..ff498a7 100644
--- a/Source/plt-web/plt-web-ui/src/page/index/top/top-menu.vue
+++ b/Source/plt-web/plt-web-ui/src/page/index/top/top-menu.vue
@@ -3,17 +3,17 @@
<el-menu :default-active="activeIndex"
mode="horizontal"
text-color="#333">
- <el-menu-item index="0" @click.native="openHome(itemHome)" key="0">
+ <el-menu-item key="0" index="0" @click.native="openHome(itemHome)">
<template slot="title">
<i :class="itemHome.source"></i>
- <span>{{generateTitle(itemHome)}}</span>
+ <span>{{ generateTitle(itemHome) }}</span>
</template>
</el-menu-item>
<template v-for="(item,index) in items">
- <el-menu-item :index="item.id+''" @click.native="openMenu(item)" :key="index">
+ <el-menu-item :key="index" :index="item.id+''" @click.native="openMenu(item)">
<template slot="title">
<i :class="item.source" style="padding-right: 5px;"></i>
- <span>{{generateTitle(item)}}</span>
+ <span>{{ generateTitle(item) }}</span>
</template>
</el-menu-item>
</template>
@@ -22,48 +22,48 @@
</template>
<script>
- import {mapGetters} from "vuex";
+import {mapGetters} from "vuex";
- export default {
- name: "top-menu",
- data() {
- return {
- itemHome: {
- name: '棣栭〉',
- source: 'el-icon-menu',
- },
- activeIndex: "0",
- items: [],
- };
+export default {
+ name: "top-menu",
+ data() {
+ return {
+ itemHome: {
+ name: '棣栭〉',
+ source: 'el-icon-menu',
+ },
+ activeIndex: "0",
+ items: [],
+ };
+ },
+ inject: ["index"],
+ created() {
+ this.getMenu();
+ },
+ computed: {
+ ...mapGetters(["tagCurrent", "menu"])
+ },
+ methods: {
+ openHome(itemHome) {
+ this.index.openMenu(itemHome);
+ this.$router.push({
+ path: this.$router.$avueRouter.getPath({name: itemHome.name, src: ''}, {})
+ });
},
- inject: ["index"],
- created() {
- this.getMenu();
+ openMenu(item) {
+ this.index.openMenu(item)
},
- computed: {
- ...mapGetters(["tagCurrent", "menu"])
+ getMenu() {
+ /*this.$store.dispatch("GetTopMenu").then(res => {
+ this.items = res;
+ });*/
},
- methods: {
- openHome(itemHome) {
- this.index.openMenu(itemHome);
- this.$router.push({
- path: this.$router.$avueRouter.getPath({name: itemHome.name, src: ''}, {})
- });
- },
- openMenu(item) {
- this.index.openMenu(item)
- },
- getMenu() {
- /*this.$store.dispatch("GetTopMenu").then(res => {
- this.items = res;
- });*/
- },
- generateTitle(item) {
- return this.$router.$avueRouter.generateTitle(
- item.name,
- (item.meta || {}).i18n
- );
- },
- }
- };
+ generateTitle(item) {
+ return this.$router.$avueRouter.generateTitle(
+ item.name,
+ (item.meta || {}).i18n
+ );
+ },
+ }
+};
</script>
diff --git a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
index 288f0ad..a87fcba 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue
@@ -37,7 +37,6 @@
<el-dialog
v-dialogDrag
v-loading="statisticsLoading"
- :destroy-on-close="true"
:visible.sync="statisticsVisible"
append-to-body="true"
class="avue-dialog"
diff --git a/Source/plt-web/plt-web-ui/src/views/system/password/index.vue b/Source/plt-web/plt-web-ui/src/views/system/password/index.vue
index 7a49cdd..df6103c 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/password/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/password/index.vue
@@ -2,18 +2,17 @@
<basic-container>
<avue-crud
ref="passWordCrud"
+ v-model="form"
:data="tableData"
:option="option"
:page.sync="page"
:table-loading="tableLoading"
- v-model="form"
@on-load="getTableList"
@refresh-change="handleRefresh"
@size-change="sizeChange"
@current-change="currentChange"
@row-save="rowSaveHandler"
@row-update="rowUpdateHandler"
- @row-del="rowDeleteHandler"
>
<template slot="menu" slot-scope="{ row, index }">
<el-button
@@ -36,7 +35,7 @@
<template slot="name" slot-scope="{row}">
- <el-tag>{{row.name}}</el-tag>
+ <el-tag>{{ row.name }}</el-tag>
</template>
<template slot="defaultFlag" slot-scope="{row}">
<el-tag v-if="row.defaultFlag" type="success">鏄�</el-tag>
@@ -48,22 +47,23 @@
</template>
<script>
-import {refDataGrid} from "@/api/system/password/api"
+import {refDataGrid, deleteDep, addDept, updatePasswordStrateg} from "@/api/system/password/api"
import basicOption from "@/util/basic-option";
-import {column} from "@/views/system/password/option";
-import Vue from "vue";
+
export default {
name: "index",
- data(){
- return{
- form:{},
- tableData:[],
- option:{
+ data() {
+ return {
+ form: {},
+ tableData: [],
+ option: {
...basicOption,
- selection:false,
- calcHeight:-60,
- menuWidth:150,
- column:[
+ selection: false,
+ calcHeight: -60,
+ menuWidth: 150,
+ editBtn: false,
+ delBtn: false,
+ column: [
{
label: '绛栫暐鍚嶇О',
prop: 'name',
@@ -90,7 +90,7 @@
callback(new Error('璇疯緭鍏ュ瘑鐮佹渶灏忛暱搴�'));
} else if (/[^\d]/g.test(value)) {
callback(new Error('瀵嗙爜鏈�灏忛暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
- } else if ( this.minValue >= this.maxValue && this.maxValue != 0) {
+ } else if (this.minValue >= this.maxValue && this.maxValue != 0) {
callback(new Error('瀵嗙爜鏈�灏忛暱搴︿笉鑳藉ぇ浜庡瘑鐮佹渶澶ч暱搴�'))
} else {
callback();
@@ -111,7 +111,7 @@
this.maxValue = value * 1
if (value == "") {
callback(new Error('璇疯緭鍏ュ瘑鐮佹渶澶ч暱搴�'));
- } else if ( this.maxValue <= this.minValue) {
+ } else if (this.maxValue <= this.minValue) {
callback(new Error('瀵嗙爜鏈�澶ч暱搴︿笉鑳藉皬浜庡瘑鐮佹渶澶ч暱搴�'));
} else if (/[^\d]/g.test(value)) {
callback(new Error('瀵嗙爜鏈�澶ч暱搴︾殑杈撳叆绫诲瀷鍙兘涓烘暟瀛楃被鍨�'));
@@ -288,6 +288,7 @@
prop: 'defaultFlag',
type: 'switch',
labelWidth: "30%",
+ value: 0,
dicData: [{
label: '鍚�',
value: 0
@@ -304,24 +305,23 @@
total: 0,
pageSizes: [10, 30, 50, 100],
},
- tableLoading:false,
- checkboxlength: "", //娣诲姞瀛樻斁澶氶�夌殑鍙橀噺,鐢ㄤ簬涓嬫媺鑿滃崟鐨勭鐢ㄦ晥鏋滃拰蹇呭~绉嶇被鏄惁澶т簬缁勫悎鏂瑰紡鐒跺悗鎻愮ず鐢ㄦ埛閲嶆柊閫夋嫨
- selectlength: 0, //杩欎釜鏄笅鎷夎彍鍗曠殑鏁版嵁鍙橀噺
- checkboxlist: "" , //杩欎釜鏄敤浜庨槻姝hange鏃堕棿鍐掓场,鍑虹幇涓ゆ寮圭獥瀹氫箟鐨勫彉閲�
- checkboxNumber: "", //鐢ㄤ簬棣栨鐐瑰嚮缂栬緫锛屽垽鏂粍鍚堟柟寮忔槸鍚﹀皬浜庡繀濉绫荤殑鍙橀噺
- selectNumber: "", //杩欎釜涔熸槸瀛樻斁澶氶�夌殑鍙橀噺,鏁堟灉涓�鏍�,鍙槸鐢ㄤ綔鍦ㄧ紪杈戞ā鍧�
+ tableLoading: false,
+ checkboxlength: "", // 娣诲姞瀛樻斁澶氶�夌殑鍙橀噺,鐢ㄤ簬涓嬫媺鑿滃崟鐨勭鐢ㄦ晥鏋滃拰蹇呭~绉嶇被鏄惁澶т簬缁勫悎鏂瑰紡鐒跺悗鎻愮ず鐢ㄦ埛閲嶆柊閫夋嫨
+ selectlength: 0, // 涓嬫媺鑿滃崟鐨勬暟鎹彉閲�
+ checkboxlist: "", // 鐢ㄤ簬闃叉change鏃堕棿鍐掓场,鍑虹幇涓ゆ寮圭獥瀹氫箟鐨勫彉閲�
+ checkboxNumber: "", // 鐢ㄤ簬棣栨鐐瑰嚮缂栬緫锛屽垽鏂粍鍚堟柟寮忔槸鍚﹀皬浜庡繀濉绫荤殑鍙橀噺
+ selectNumber: "", // 瀛樻斁澶氶�夌殑鍙橀噺,鏁堟灉涓�鏍�,鍙槸鐢ㄤ綔鍦ㄧ紪杈戞ā鍧�
checkboxedit: "", // 鐢ㄤ簬鍒ゆ柇鏄惁鏄紪杈�
editFlag: false,
- minValue:"", // 鏈�灏忛暱搴alue
- maxValue:"" // 鏈�澶ч暱搴alue
+ minValue: "", // 鏈�灏忛暱搴alue
+ maxValue: "" // 鏈�澶ч暱搴alue
}
},
- methods:{
+ methods: {
// 琛ㄦ牸鍒濆鍖栬姹�
getTableList() {
this.tableLoading = true;
- refDataGrid(this.page.currentPage, this.page.pageSize).then(res =>{
- console.log(res);
+ refDataGrid(this.page.currentPage, this.page.pageSize).then(res => {
this.tableData = res.data.data;
this.page.total = res.data.total;
this.tableLoading = false;
@@ -329,27 +329,38 @@
},
// 琛ㄦ牸澶撮儴鍒锋柊
- handleRefresh(){
+ handleRefresh() {
this.getTableList();
},
// 鏉℃暟
- sizeChange(val){
+ sizeChange(val) {
this.page.pageSize = val;
},
// 椤电爜
- currentChange(val){
+ currentChange(val) {
this.page.currentPage = val;
},
// 娣诲姞
- rowSaveHandler(){
- console.log(this.form.requireCharCount);
+ rowSaveHandler(row, done, loading) {
+ row.combinations = row.requireCharType.join(',');
+ delete row.requireCharType;
+ addDept(row).then(res => {
+ if (res.data.code === 200) {
+ this.$message.success(res.data.obj);
+ this.getTableList();
+ done()
+ }
+ }).catch(err => {
+ loading()
+ console.log(err);
+ })
},
// 缂栬緫鎸夐挳
- handleEdit(row,index){
+ handleEdit(row, index) {
this.$refs.passWordCrud.rowEdit(row, index);
this.editFlag = true;
this.checkboxNumber = row.requireCharType.split(",");
@@ -357,22 +368,48 @@
},
// 淇敼
- rowUpdateHandler(){
-
- },
-
- // 鍒犻櫎鎸夐挳
- handleDel(){
-
+ rowUpdateHandler(row, index, done,loading) {
+ row.combinations = row.requireCharType;
+ delete row.requireCharType;
+ updatePasswordStrateg(row).then(res => {
+ if (res.data.code === 200) {
+ this.$message.success(res.data.obj);
+ this.getTableList();
+ done()
+ }
+ }).catch(err => {
+ loading()
+ console.log(err);
+ })
},
// 鍒犻櫎
- rowDeleteHandler(){
+ handleDel(row, index) {
+ let params = {
+ pwdIds: row.oid
+ }
+ this.$confirm('鎮ㄧ‘瀹氳鍒犻櫎褰撳墠鐨勫瘑鐮佺瓥鐣ュ悧锛�', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ deleteDep(params).then(res => {
+ if (res.data.code === 200) {
+ this.$message.success(res.data.obj);
+ this.getTableList();
+ }
+ });
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑堝垹闄�'
+ });
+ });
},
// 蹇呭~绉嶇被changge浜嬩欢
- handleSelectChange(val){
+ handleSelectChange(val) {
this.selectlength = val.value;
},
@@ -430,7 +467,7 @@
}
},
- // 寰幆鎵惧埌瀵瑰簲蹇呭~绉嶇被绂佺敤閫夐」
+ // 杩囨护鎵惧埌瀵瑰簲蹇呭~绉嶇被绂佺敤閫夐」
setDisabled(arr, indices) {
arr.dicData.forEach((item, index) => {
item.disabled = !indices.includes(index);
@@ -441,8 +478,8 @@
}
</script>
-<style scoped lang="scss">
-.avue-form__group--flex{
+<style lang="scss" scoped>
+.avue-form__group--flex {
padding-bottom: 25px !important;
}
diff --git a/Source/plt-web/plt-web-ui/src/views/system/role/index.vue b/Source/plt-web/plt-web-ui/src/views/system/role/index.vue
index f757b48..06c3d4a 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/role/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/role/index.vue
@@ -40,7 +40,6 @@
<el-dialog
v-dialogDrag
v-loading="statisticsLoading"
- :destroy-on-close="true"
:visible.sync="statisticsVisible"
append-to-body="true"
class="avue-dialog"
diff --git a/Source/plt-web/plt-web-ui/src/views/system/user/index.vue b/Source/plt-web/plt-web-ui/src/views/system/user/index.vue
index cd91554..50f7723 100644
--- a/Source/plt-web/plt-web-ui/src/views/system/user/index.vue
+++ b/Source/plt-web/plt-web-ui/src/views/system/user/index.vue
@@ -77,7 +77,6 @@
<el-dialog
v-dialogDrag
v-loading="pwdLoading"
- :destroy-on-close="true"
:visible.sync="pwdVisible"
append-to-body="true"
class="avue-dialog"
@@ -106,7 +105,6 @@
<el-dialog
v-dialogDrag
v-loading="departLoading"
- :destroy-on-close="true"
:visible.sync="departVisible"
append-to-body="true"
class="avue-dialog"
--
Gitblit v1.9.3