فهرست منبع

新增设置为内置角色功能

zhangjie 2 سال پیش
والد
کامیت
c96a8d015f
2فایلهای تغییر یافته به همراه28 افزوده شده و 2 حذف شده
  1. 3 0
      src/modules/admin/api.js
  2. 25 2
      src/modules/admin/views/SystemRoleManage.vue

+ 3 - 0
src/modules/admin/api.js

@@ -16,6 +16,9 @@ export const resetPwd = id => {
 export const userRoleListPage = () => {
 export const userRoleListPage = () => {
   return $postParam("/api/admin/sys/role/list_to_user", {});
   return $postParam("/api/admin/sys/role/list_to_user", {});
 };
 };
+export const setRoleDefault = ({ id, defaultRole }) => {
+  return $postParam("/api/admin/sys/role/builtin", { id, defaultRole });
+};
 
 
 // menu-manage
 // menu-manage
 export const menuList = datas => {
 export const menuList = datas => {

+ 25 - 2
src/modules/admin/views/SystemRoleManage.vue

@@ -18,8 +18,15 @@
           :index="indexMethod"
           :index="indexMethod"
         ></el-table-column>
         ></el-table-column>
         <el-table-column prop="name" label="角色名称"></el-table-column>
         <el-table-column prop="name" label="角色名称"></el-table-column>
-        <el-table-column class-name="action-column" label="操作" width="120px">
+        <el-table-column class-name="action-column" label="操作" width="220px">
           <template slot-scope="scope">
           <template slot-scope="scope">
+            <el-button
+              v-if="!scope.row.defaultRole"
+              class="btn-"
+              type="text"
+              @click="toSetDefaultRole(scope.row)"
+              >设置为内置角色</el-button
+            >
             <el-button
             <el-button
               v-if="!scope.row.defaultRole"
               v-if="!scope.row.defaultRole"
               class="btn-primary"
               class="btn-primary"
@@ -49,7 +56,7 @@
 
 
 <script>
 <script>
 import { ABLE_TYPE } from "@/constants/enumerate";
 import { ABLE_TYPE } from "@/constants/enumerate";
-import { userRoleListPage } from "../api";
+import { userRoleListPage, setRoleDefault } from "../api";
 import { deleteRole } from "../../base/api";
 import { deleteRole } from "../../base/api";
 import ModifySystemRole from "../components/ModifySystemRole";
 import ModifySystemRole from "../components/ModifySystemRole";
 
 
@@ -87,6 +94,22 @@ export default {
       this.curRole = {};
       this.curRole = {};
       this.$refs.ModifySystemRole.open();
       this.$refs.ModifySystemRole.open();
     },
     },
+    toSetDefaultRole(row) {
+      const action = row.defaultRole ? "取消" : "设置";
+      this.$confirm(`确定要${action}角色【${row.name}】为内置角色吗?`, "提示", {
+        type: "warning"
+      })
+        .then(async () => {
+          const defaultRole = !row.defaultRole;
+          await setRoleDefault({
+            id: row.id,
+            defaultRole
+          });
+          row.defaultRole = defaultRole;
+          this.$message.success("操作成功!");
+        })
+        .catch(() => {});
+    },
     toDelete(row) {
     toDelete(row) {
       this.$confirm(`确定要删除角色【${row.name}】吗?`, "提示", {
       this.$confirm(`确定要删除角色【${row.name}】吗?`, "提示", {
         type: "warning"
         type: "warning"