feat(平台端): 账号创建角色改中文三类 — 子账号/OPC/园区账号
新增账号「账号类型」下拉改中文:子账号(平台端/operator)、OPC 账号(其它端口通用/opc_member)、 园区账号(园区端/用于绑定园区管理员/carrier),附类型提示;未选择项不显示历史端口。npm run build 通过。
This commit is contained in:
@@ -13,7 +13,12 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@
|
||||
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle } from "@/components/ui/dialog";
|
||||
import { formatDate } from "@/lib/utils";
|
||||
|
||||
const PORT_ROLES = ["operator", "government", "enterprise", "provider", "carrier", "opc_member", "investor"];
|
||||
// 账号三类(中文):子账号=平台端账号;OPC=其它端口通用 OPC 账号;园区账号=园区端(用于绑定园区管理员)
|
||||
const ACCOUNT_ROLES = [
|
||||
{ label: "子账号(平台端)", value: "operator", hint: "平台管理方/运营" },
|
||||
{ label: "OPC 账号(其它端口通用)", value: "opc_member", hint: "OPC 超级个体默认" },
|
||||
{ label: "园区账号(园区端 · 用于绑定园区管理员)", value: "carrier", hint: "绑定为园区管理员" },
|
||||
];
|
||||
const EMPTY = { username: "", nickname: "", role: "opc_member", sub_role: "" };
|
||||
|
||||
export default function UsersPage() {
|
||||
@@ -75,11 +80,14 @@ export default function UsersPage() {
|
||||
<div className="space-y-1.5"><Label>账号</Label><Input disabled={!!editing} value={form.username} onChange={(e) => setForm((f) => ({ ...f, username: e.target.value }))} /></div>
|
||||
{!editing && <div className="space-y-1.5"><Label>初始密码</Label><Input value={form.password ?? ""} onChange={(e) => setForm((f) => ({ ...f, password: e.target.value }))} /></div>}
|
||||
<div className="space-y-1.5"><Label>昵称</Label><Input value={form.nickname} onChange={(e) => setForm((f) => ({ ...f, nickname: e.target.value }))} /></div>
|
||||
<div className="space-y-1.5"><Label>端口角色</Label>
|
||||
<Select value={form.role} onValueChange={(v) => setForm((f) => ({ ...f, role: v }))}>
|
||||
<SelectTrigger className="w-full"><SelectValue /></SelectTrigger>
|
||||
<SelectContent>{PORT_ROLES.map((r) => <SelectItem key={r} value={r}>{r}</SelectItem>)}</SelectContent>
|
||||
<div className="space-y-1.5"><Label>账号类型</Label>
|
||||
<Select value={form.role} onValueChange={(v) => setForm((f) => ({ ...f, role: v, sub_role: "" }))}>
|
||||
<SelectTrigger className="w-full"><SelectValue placeholder="选择账号类型" /></SelectTrigger>
|
||||
<SelectContent>
|
||||
{ACCOUNT_ROLES.map((r) => <SelectItem key={r.value} value={r.value}>{r.label}</SelectItem>)}
|
||||
</SelectContent>
|
||||
</Select>
|
||||
<p className="text-xs text-muted-foreground">{ACCOUNT_ROLES.find((r) => r.value === form.role)?.hint}</p>
|
||||
</div>
|
||||
<div className="space-y-1.5"><Label>子角色</Label><Input value={form.sub_role} onChange={(e) => setForm((f) => ({ ...f, sub_role: e.target.value }))} /></div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user