diff --git a/src/api/account/roleTemplate.js b/src/api/account/roleTemplate.js
new file mode 100644
index 0000000..0467418
--- /dev/null
+++ b/src/api/account/roleTemplate.js
@@ -0,0 +1,55 @@
+import request from "@/utils/request";
+const baseURL = "/account";
+
+/**
+ * 角色模板 添加/编辑
+ * @param {*} data
+ * @returns
+ */
+export function roleTemplateAdd(data) {
+ return request({
+ url: `${baseURL}/admin/roleTemplate`,
+ method: data.id ? "put" : "post",
+ data,
+ });
+}
+
+/**
+ * 角色模板 列表
+ * @param {*} params
+ * @returns
+ */
+export function roleTemplateList(params) {
+ return request({
+ url: `${baseURL}/admin/roleTemplate/list`,
+ method: "get",
+ params,
+ });
+}
+
+/**
+ * 角色模板 删除
+ * @param {*} id
+ * @returns
+ */
+export function roleTemplateDel(id) {
+ return request({
+ url: `${baseURL}/admin/roleTemplate?id=${id}`,
+ method: "DELETE"
+ });
+}
+
+/**
+ * 角色模板 根据模板保存角色
+ * @param {*} data
+ * @returns
+ */
+export function saveByTemplate(data) {
+ return request({
+ url: `${baseURL}/admin/role/saveByTemplate`,
+ method: "post",
+ data,
+ });
+}
+
+
diff --git a/src/components/Upload/MultiImageUpload.vue b/src/components/Upload/MultiImageUpload.vue
index 92aab10..7404221 100644
--- a/src/components/Upload/MultiImageUpload.vue
+++ b/src/components/Upload/MultiImageUpload.vue
@@ -15,11 +15,11 @@
-
+
@@ -87,14 +87,20 @@ const fileList = ref([]);
* 删除图片
*/
function handleRemove(imageUrl: string) {
- FileAPI.delete(imageUrl).then(() => {
- const index = modelValue.value.indexOf(imageUrl);
- if (index !== -1) {
- // 直接修改数组避免触发整体更新
- modelValue.value.splice(index, 1);
- fileList.value.splice(index, 1); // 同步更新 fileList
- }
- });
+ // FileAPI.delete(imageUrl).then(() => {
+ // const index = modelValue.value.indexOf(imageUrl);
+ // if (index !== -1) {
+ // // 直接修改数组避免触发整体更新
+ // modelValue.value.splice(index, 1);
+ // fileList.value.splice(index, 1); // 同步更新 fileList
+ // }
+ // });
+ const index = modelValue.value.indexOf(imageUrl);
+ if (index !== -1) {
+ // 直接修改数组避免触发整体更新
+ modelValue.value.splice(index, 1);
+ fileList.value.splice(index, 1); // 同步更新 fileList
+ }
}
function handleProgress(event: any, file: any, fileList: any) {
// console.log("handleProgress", evt, file, fileList);
diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts
index 3e8eabd..e252856 100644
--- a/src/store/modules/user.ts
+++ b/src/store/modules/user.ts
@@ -123,6 +123,15 @@ export const useUserStore = defineStore("user", () => {
clearToken();
usePermissionStoreHook().resetRouter();
useDictStoreHook().clearDictionaryCache();
+
+ let loginType = localStorage.getItem('loginType')
+
+ localStorage.clear()
+
+ localStorage.setItem('loginType', loginType)
+
+ window.location.reload()
+
resolve();
});
}
diff --git a/src/views/admin/system/role/components/roleTemplateDialog.vue b/src/views/admin/system/role/components/roleTemplateDialog.vue
new file mode 100644
index 0000000..bbeb884
--- /dev/null
+++ b/src/views/admin/system/role/components/roleTemplateDialog.vue
@@ -0,0 +1,175 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/admin/system/role/index.vue b/src/views/admin/system/role/index.vue
index 39368ba..8ba51d0 100644
--- a/src/views/admin/system/role/index.vue
+++ b/src/views/admin/system/role/index.vue
@@ -101,7 +101,7 @@
-
+
@@ -156,6 +156,7 @@
+
@@ -170,6 +171,9 @@ const shopUser = useUserStore();
import menuSelect from "./components/menus.vue";
import RoleApi, { SysRole, addRequest, getListRequest } from "@/api/account/role";
import MenuAPI, { type RouteVO, CashMenu } from "@/api/account/menu";
+import roleTemplateDialog from "./components/roleTemplateDialog.vue";
+
+const roleTemplateDialogRef = ref(null)
const queryFormRef = ref();
const addRequestRef = ref();
@@ -241,6 +245,10 @@ function handleQuery() {
.then((data) => {
roleList.value = data.records;
total.value = data.totalRow;
+
+ if (data.records.length == 0) {
+ roleTemplateDialogRef?.value.show()
+ }
})
.finally(() => {
loading.value = false;
diff --git a/src/views/admin/system/role_template_mange/components/addTempateDialog.vue b/src/views/admin/system/role_template_mange/components/addTempateDialog.vue
index 569f7b2..5d3dffe 100644
--- a/src/views/admin/system/role_template_mange/components/addTempateDialog.vue
+++ b/src/views/admin/system/role_template_mange/components/addTempateDialog.vue
@@ -6,10 +6,11 @@
-
+ form.sort = filterNumberInput(e, 0)">
-
+
@@ -28,6 +29,8 @@