Procházet zdrojové kódy

chore: 😀切换应用时默认选中当前应用和租户

喵你个旺呀 před 1 rokem
rodič
revize
0cc424ae34

+ 14 - 9
Admin.NET/Admin.NET.Core/Service/Application/SysAppService.cs

@@ -141,18 +141,23 @@ public class SysAppService : IDynamicApiController, ITransient
     public async Task<dynamic> GetChangeAppData()
     {
         var list = await _sysAppRep.AsQueryable().Includes(u => u.TenantList).ToListAsync();
-        return list.Where(u => u.TenantList.Count > 0).Select(u => new
+        return new
         {
-            u.Id,
-            Value = u.Id,
-            Label = u.Name,
-            Children = u.TenantList.Select(t => new
+            _userManager.AppId,
+            _userManager.TenantId,
+            SelectList = list.Where(u => u.TenantList.Count > 0).Select(u => new
             {
-                t.Id,
-                Value = t.Id,
-                Label = t.Host ?? (t.Id + ""),
+                u.Id,
+                Value = u.Id,
+                Label = u.Name,
+                Children = u.TenantList.Select(t => new
+                {
+                    t.Id,
+                    Value = t.Id,
+                    Label = t.Host ?? (t.Id + ""),
+                })
             })
-        });
+        };
     }
     
     /// <summary>

+ 8 - 1
Web/src/layout/navBars/topBar/changeApp.vue

@@ -53,7 +53,14 @@ const state = reactive({
 
 // 打开弹窗
 const openDialog = async () => {
-  if (state.appList.length == 0) state.appList = await getAPI(SysAppApi).apiSysAppChangeAppGet().then(res => res.data.result ?? []);
+  if (state.appList.length == 0) {
+    const result = await getAPI(SysAppApi).apiSysAppChangeAppGet().then(res => res.data.result);
+    state.appList = result?.selectList ?? [];
+    state.tenantList = state.appList.find((u: any) => u.id === result?.appId)?.children ?? [];
+
+    state.ruleForm.tenantId = result?.tenantId;
+    state.ruleForm.id = result?.appId;
+  }
   ruleFormRef.value?.resetFields();
   state.isShowDialog = true;
   state.loading = false;