Blame view

美国版/Food Labeling Management Platform/src/lib/currentUserDisplay.ts 858 Bytes
ef6b3255   杨鑫   修改BUG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  import type { CurrentUserBriefDto } from "../types/authSession";
  
  /** 登录展示名:优先全名、昵称,其次用户名、邮箱 */
  export function displayNameFromUser(user: CurrentUserBriefDto | null | undefined): string {
    const fullName = (user?.fullName ?? "").trim();
    if (fullName) return fullName;
    const nick = (user?.nick ?? "").trim();
    if (nick) return nick;
    const un = (user?.userName ?? "").trim();
    if (un) return un;
    const em = (user?.email ?? "").trim();
    if (em) return em;
    return "User";
  }
  
  /** 角色/权限展示:后端 roleCodes,可读化后拼接 */
  export function displayRolesFromCodes(roleCodes: string[] | undefined | null): string {
    const list = roleCodes?.filter((x) => (x ?? "").trim()) ?? [];
    if (list.length === 0) return "—";
    return list.map((c) => c.replace(/_/g, " ").trim()).join(" · ");
  }