From 94b824cffdf47bc318ee1d362f08a79a8ae255e9 Mon Sep 17 00:00:00 2001
From: xy <271556543@qq.com>
Date: Mon, 11 Nov 2024 17:25:39 +0800
Subject: [PATCH] 1
---
src/api/common.js | 19 +++
src/components/UserPicker/index.vue | 139 ++++++++++++++++++
src/permission.js | 12 +-
src/views/BeOnDuty/components/AddBeOnDuty.vue | 24 +--
src/views/BeOnDuty/index.vue | 36 +----
.../components/AddDocumentMenu.vue | 17 +--
src/views/DocumentMenu/index.vue | 32 +---
src/views/meeting/components/AddMeeting.vue | 20 ++-
src/views/meeting/index.vue | 30 +---
src/views/notice/components/AddNotice.vue | 19 ++-
src/views/notice/index.vue | 16 +-
11 files changed, 229 insertions(+), 135 deletions(-)
create mode 100644 src/api/common.js
create mode 100644 src/components/UserPicker/index.vue
diff --git a/src/api/common.js b/src/api/common.js
new file mode 100644
index 0000000..1b49578
--- /dev/null
+++ b/src/api/common.js
@@ -0,0 +1,19 @@
+import request from '@/utils/request'
+
+export function departmentListNoAuth(params) {
+ return request({
+ url: '/api/backend/simple-department',
+ method: 'get',
+ params,
+ isLoading: false
+ })
+}
+
+export function userListNoAuth(params) {
+ return request({
+ url: '/api/backend/simple-user',
+ method: 'get',
+ params,
+ isLoading: false
+ })
+}
diff --git a/src/components/UserPicker/index.vue b/src/components/UserPicker/index.vue
new file mode 100644
index 0000000..eeb6e8e
--- /dev/null
+++ b/src/components/UserPicker/index.vue
@@ -0,0 +1,139 @@
+
+ $emit('input',e)"
+ >
+
+
+
+
+
+
+
diff --git a/src/permission.js b/src/permission.js
index 7c0251b..b1fa5db 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -29,7 +29,11 @@ router.beforeEach(async(to, from, next) => {
} else {
if (store.state.permission.addRoutes && store.state.permission.addRoutes instanceof Array && store.state.permission.addRoutes.length > 0) {
- next()
+ if (to.query.to && /^\/.*/.test(to.query.to)) {
+ next(to.query.to)
+ } else {
+ next()
+ }
} else {
try {
// get user info
@@ -40,7 +44,11 @@ router.beforeEach(async(to, from, next) => {
// hack method to ensure that addRoutes is complete
// set the replace: true, so the navigation will not leave a history record
- next({ ...to, replace: true })
+ if (to.query.to && /^\/.*/.test(to.query.to)) {
+ next({ ...to, replace: true, path: to.query.to })
+ } else {
+ next({ ...to, replace: true })
+ }
} catch (error) {
// remove token and go to login page to re-login
await store.dispatch('user/resetToken')
diff --git a/src/views/BeOnDuty/components/AddBeOnDuty.vue b/src/views/BeOnDuty/components/AddBeOnDuty.vue
index 93c39f5..4fe3a6d 100644
--- a/src/views/BeOnDuty/components/AddBeOnDuty.vue
+++ b/src/views/BeOnDuty/components/AddBeOnDuty.vue
@@ -16,22 +16,10 @@
-
-
-
+
-
-
-
+
@@ -58,18 +46,18 @@
diff --git a/src/views/meeting/index.vue b/src/views/meeting/index.vue
index 7187679..ffabbf6 100644
--- a/src/views/meeting/index.vue
+++ b/src/views/meeting/index.vue
@@ -105,19 +105,7 @@
:edit-render="{}"
>
-
-
-
+
@@ -177,7 +165,6 @@
@@ -188,18 +175,18 @@
import { deepCopy } from "@/utils";
import { destroy, index, save } from "@/api/meeting";
import { index as meetingRoomIndex } from "@/api/meetingRoom";
-import { index as userIndex } from "@/api/user";
import AddMeeting from "./components/AddMeeting.vue";
+import UserPicker from "@/components/UserPicker/index.vue";
export default {
components: {
AddMeeting,
+ UserPicker
},
data() {
return {
isShowAdd: false,
rooms: [],
- users: [],
loading: false,
select: {
@@ -236,7 +223,6 @@ export default {
created() {
this.getList();
this.getRooms();
- this.getUsers();
},
methods: {
editRowEvent(row) {
@@ -264,16 +250,6 @@ export default {
}
},
- async getUsers() {
- try {
- this.users = (await userIndex({
- page: 1,
- rows: 9999,
- })).data
- } catch (err) {
- console.error(err);
- }
- },
async getList() {
this.loading = true;
diff --git a/src/views/notice/components/AddNotice.vue b/src/views/notice/components/AddNotice.vue
index 3f10a7f..1f3cc40 100644
--- a/src/views/notice/components/AddNotice.vue
+++ b/src/views/notice/components/AddNotice.vue
@@ -109,20 +109,18 @@
import { getToken } from "@/utils/auth";
import { save } from "@/api/notice";
import { PopupManager } from "element-ui/lib/utils/popup";
+import { userListNoAuth as index } from "@/api/common";
export default {
props: {
isShow: {
type: Boolean,
default: false,
required: true,
- },
- users: {
- type: Array,
- default: () => [],
}
},
data() {
return {
+ users: [],
zIndex: PopupManager.nextZIndex(),
loading: false,
form: {
@@ -148,6 +146,9 @@ export default {
}
}
},
+ created() {
+ this.getUsers()
+ },
methods: {
beforeUpload(file) {
const isLt10M = file.size / 1024 / 1024 < 10
@@ -179,6 +180,16 @@ export default {
}
});
},
+ async getUsers () {
+ try {
+ const res = await index({
+ page: 1,
+ rows: 9999
+ })
+ this.users = res.data
+ } catch (err) {
+ }
+ }
},
};
diff --git a/src/views/notice/index.vue b/src/views/notice/index.vue
index 14f8306..84a1182 100644
--- a/src/views/notice/index.vue
+++ b/src/views/notice/index.vue
@@ -57,7 +57,7 @@
}"
/>
-
+
@@ -65,14 +65,12 @@
import { deepCopy } from '@/utils'
import { index, save, destroy } from '@/api/notice'
import AddNotice from './components/AddNotice.vue'
-import { index as userIndex } from "@/api/user";
export default {
components: {
AddNotice
},
data() {
return {
- users: [],
isShowAdd: false,
loading: false,
@@ -107,7 +105,6 @@ export default {
}
},
created() {
- this.getUsers()
this.getList()
},
methods: {
@@ -125,17 +122,6 @@ export default {
}
},
- async getUsers() {
- try {
- this.users = (await userIndex({
- page: 1,
- rows: 9999,
- })).data
- } catch (err) {
- console.error(err);
- }
- },
-
async getList() {
this.loading = true
try {