소스 검색

应用权限管理

sujunling 2 년 전
부모
커밋
c74845751f
6개의 변경된 파일64개의 추가작업 그리고 45개의 파일을 삭제
  1. BIN
      .DS_Store
  2. 10 2
      src/api/authorize/authorize.ts
  3. 1 1
      src/views/assembly/index.vue
  4. 5 9
      src/views/authorize/app/AppDrawer.vue
  5. 38 26
      src/views/authorize/app/app.data.ts
  6. 10 7
      src/views/authorize/app/index.vue

BIN
.DS_Store


+ 10 - 2
src/api/authorize/authorize.ts

@@ -8,6 +8,7 @@ enum Api {
     List = '/base-center/system/selectSystem',
     GetUserArr = '/user-center/user/getUserArr',
     Save = '/base-center/system/saveSystem',
+    Delete = '/base-center/system/deleteSystem',
 }
 
 const client = {
@@ -26,7 +27,7 @@ export function list(params) {
     var params = {
         keyStr: "",
         page: 1,
-        rows: 10
+        rows: 100
     }
     return new Promise<void>((resolve, reject) => {
         defHttp.post({ url: Api.List, params })
@@ -81,4 +82,11 @@ export const save = (params) => {
             }
         })
     })
-}
+}
+
+/**
+ * @description:删除应用
+ */
+export function deleteApp(params) {
+    return defHttp.post({ url: Api.Delete, params })
+}

+ 1 - 1
src/views/assembly/index.vue

@@ -60,7 +60,7 @@ export default defineComponent({
 
 .datacenter-right {
   float: left;
-  width: calc(100vw - 530px);
+  width: calc(100vw - 320px);
   height: 100%;
   overflow-y: scroll;
 }

+ 5 - 9
src/views/authorize/app/AppDrawer.vue

@@ -75,11 +75,7 @@ export default defineComponent({
     });
 
     //得到页面标题
-    const getTitle = computed(() =>
-      !unref(isUpdate)
-        ? t('routes.common.system.pageSystemTitleCreateMenu')
-        : t('routes.common.system.pageSystemTitleEditMenu')
-    );
+    const getTitle = computed(() => !unref(isUpdate) ? ('新增应用') : ('编辑应用'));
 
     //提交按钮
     async function handleSubmit() {
@@ -89,18 +85,18 @@ export default defineComponent({
         if (isUpdate.value) {
 
         }
-
+        console.log("1111:", v);
         var data = {
           "system": {
             "id": "",
             "name": v.name,
-            "key": v.key,
+            "key": v.name,
             "note": v.note
           },
-          "userIds": v.userid,
+          // "userIds": v.userid,
           "clientSecretStr": "test",
           "scope": v.scope,
-          "grantTypes": v.grantTypes,
+          "grantTypes": [v.grantTypes],
           "autoapprove": v.autoapprove
         }
         //保存

+ 38 - 26
src/views/authorize/app/app.data.ts

@@ -34,7 +34,7 @@ export const columns: BasicColumn[] = [
   },
   {
     title: '备注',
-    dataIndex: ' NOTE',
+    dataIndex: 'NOTE',
     width: 240,
   },
 ];
@@ -98,16 +98,6 @@ export const formSchema: FormSchema[] = [
       placeholder: '请输入应用名称',
     },
   },
-  {
-    field: 'key',
-    label: '编码',
-    required: true,
-    component: 'Input',
-    componentProps: {
-      maxLength: 255,
-      placeholder: '请输入应用编码',
-    },
-  },
   {
     field: 'scope',
     label: '密匙范围',
@@ -170,23 +160,45 @@ export const formSchema: FormSchema[] = [
       ],
     },
   },
+  // {
+  //   field: 'userid',
+  //   label: '系统用户',
+  //   component: 'ApiTreeSelect',
+  //   componentProps: {
+  //     replaceFields: {
+  //       title: 'NAME',
+  //       key: 'EMPLOYEE_ID',
+  //       value: 'EMPLOYEE_ID',
+  //     },
+  //     placeholder: '请你用户!',
+  //     api: async () => {
+  //       return await allUser();
+  //     },
+  //     onChange(value) {
+  //       userid.value = value;
+  //     },
+  //   },
+  // },
   {
-    field: 'userid',
-    label: '系统用户',
-    component: 'ApiTreeSelect',
+    field: 'note',
+    label: '备注',
+    component: 'InputTextArea',
     componentProps: {
-      replaceFields: {
-        title: 'NAME',
-        key: 'EMPLOYEE_ID',
-        value: 'EMPLOYEE_ID',
-      },
-      placeholder: '请你用户!',
-      api: async () => {
-        return await allUser();
-      },
-      onChange(value) {
-        userid.value = value;
-      },
+      maxLength: 500,
+      placeholder: '请输入备注',
+    },
+    dynamicRules: () => {
+      return [
+        {
+          required: false,
+          validator: (_, value) => {
+            if (String(value).length > 500) {
+              return Promise.reject('字数不超过500个字');
+            }
+            return Promise.resolve();
+          },
+        },
+      ];
     },
   },
 ];

+ 10 - 7
src/views/authorize/app/index.vue

@@ -5,9 +5,9 @@
         <Button type="primary" @click="handleCreate">
           {{ getI18nCreateMenu }}
         </Button>
-        <Button type="primary" danger :disabled="getCanBatchDelete" @click="handleBatchDelete">
+        <!-- <Button type="primary" danger :disabled="getCanBatchDelete" @click="handleBatchDelete">
           批量删除
-        </Button>
+        </Button> -->
       </template>
       <template #action="{ record }">
         <TableAction :actions="[
@@ -43,7 +43,7 @@ import { computed, defineComponent, nextTick } from 'vue';
 import { BasicTable, useTable, TableAction } from '/@/components/Table';
 
 // 加载表格数据
-import { list } from '/@/api/authorize/authorize';
+import { list, deleteApp } from '/@/api/authorize/authorize';
 // 加载自定义侧边弹出框 组件
 import { useDrawer } from '/@/components/Drawer';
 
@@ -64,7 +64,7 @@ export default defineComponent({
     const [registerDrawer, { openDrawer }] = useDrawer(); //使用右侧弹出框
     const { t } = useI18n(); //加载国际化
     // 新增菜单
-    const getI18nCreateMenu = computed(() => t('routes.common.system.pageSystemTitleCreateMenu'));
+    const getI18nCreateMenu = computed(() => ('新增应用'));
 
     const [
       registerTable,
@@ -145,9 +145,12 @@ export default defineComponent({
      */
     async function handleDelete(record: Recordable) {
       try {
-        let ids = isArray(record.departid) ? record.departid : [record.departid];
-        debugger;
-        await DeleteStructure({ departid: ids });
+        // let ids = isArray(record.departid) ? record.departid : [record.departid];
+        // debugger;
+        await deleteApp({
+          "systemId": record.SYSID,
+          "systemKey": record.KEY,
+        });
         notification.success({
           message: '成功',
           description: '删除机构成功',