import ArrayList from "@ohos.util.ArrayList"; /** * UserProfile 的专属转换器 */ export const UserProfileMapper = (raw: Record): UserProfile => { return { token: (raw['token'] as string) ?? "", temp: (raw['temp'] as boolean) ?? false, name: (raw['name'] as string) ?? "", user_id: (raw['user_id'] as string) ?? "", config: ConfigMapper(raw['config'] as Record) }; }; /** * 配置转换器 */ export const ConfigMapper = (raw: Record): ConfigEntity => { return { versionEntity: (raw['client.version.upgrade'] as VersionEntity) ?? null, uniVersionList: (raw['client.uni.version.upgrade'] as UniVersionEntity[]) ?? [], homeIconEntity: (raw['client.icon.uni.home'] as UniIconEntity[]) ?? [], wgtPassword: (raw['client.wgt.password'] as string) ?? null, isUniMpOpen: (raw['client.uni.open'] as boolean) ?? false }; }; // 用户配置(Profile) export interface UserProfile { token: string; temp: boolean; name: string; // 显示的文本内容 user_id: string; config: ConfigEntity; // 可选的图标资源 } // 用户配置(Config) export interface ConfigEntity { versionEntity: VersionEntity | null; uniVersionList: UniVersionEntity[]; homeIconEntity: UniIconEntity[]; wgtPassword: string | null; isUniMpOpen: boolean | null; } // 用户配置(App版本) export interface VersionEntity { description: string | null; force: boolean; last_version_force: string | null; title: string | null; url: string | null; app_size: string | null; version: string | null; } // 用户配置(UniMp版本) export interface UniVersionEntity { version: string | null; url: string | null; last_version_force: string | null; force: boolean; title: string | null; description: string | null; unimp_id: string | null; unimp_type: string | null; icon: string | null; } // 用户配置(UniMp指定路径:Path) export interface UniIconEntity { icon: string | null; text: string | null; url: string | null; type: string | null; enable: boolean; } // 验证码信息 export interface CaptchaProfile { timestamp: string; } // 登录信息 export interface LoginProfile { user_id: string | null; name: string | null; avater: string | null; token: string | null; } // 用户信息(字段由/api/user 与 /api/user/account共同提供) export interface UserInfo { alipayid: string | null; app_id: string | null; appleid: string | null; avater: string | null; balance: string | null; client_cid: string | null; coupon_count: string | null; ip_area: string | null; ip_area_name: string | null; name: string | null; phone: string | null; role: string | null; temp: boolean | true; unionid: string | null; user_id: string | null; vip: number | 0; vip_expire: string | null; vip_expire_time: string | null; vip_name: string | null; weixinAppId: string | null; weixinAppIdType: string | null; weixinAppOpenId: string | null; weixinOpenId: string | null; //以下字段,目前由/api/user/account提供 vip_type: number | 0; create_time: string | null; bind: ArrayList | null; } // 支付宝授权登录参数 export interface AlipayProfile { param: string | null; } // UniMp小程序微信支付参数 export interface TradeData { weixinMpOriId?: string; outTradeNo?: string; } /** * { * "icon": "https://cdn.batiao8.com/flaunt/uni_mp/icon/other/ticket.png", * "text": "机票", * "url": "pages/other/tickets-app/index", * "type": "alipay", * "enable": true * } */ // 小程序(指定Page) export interface UniMpItem { id: string; text: string; // 显示的文本内容 icon: Resource; // 可选的图标资源 url: string; // 跳转路径 type: string; // 类型 enable: boolean; // 是否可用 }