data.jsx
8.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
// Seed data — plausible printing-industry ERP tenant.
// Original company name; not derived from the reference product.
const COMPANIES = [
{ id: "std", name: "标准版 (Standard Edition) / 8s" },
{ id: "ent", name: "企业版 (Enterprise Edition) / 8s" },
{ id: "trial", name: "试用版 (Trial Edition) / 30d" },
];
// Sidebar tree — printing-industry processes
const NAV_TREE = [
{ id: "home", label: "首页", icon: "home", leaf: true },
{
id: "kpi", label: "KPI 流程作业单", icon: "doc",
children: [
{
id: "quote", label: "估价管理流程",
children: [
{ id: "quote-01", label: "01/04 【新增】新报价单", leaf: true, badge: "估价" },
{ id: "quote-02", label: "02/04 审核报价单->客户确认...", leaf: true },
{ id: "quote-03", label: "03/04 客户确认->二次确认", leaf: true },
{ id: "quote-04", label: "04/04 报价单->销售订单", leaf: true },
{ id: "quote-05", label: "04/04 报价单->转拼版单", leaf: true },
{ id: "quote-06", label: "04/07 主管审核报价单", leaf: true },
{ id: "quote-07", label: "05/07 业务确认报价单", leaf: true },
],
},
{ id: "order", label: "订单生产流程" },
{ id: "panel", label: "自动拼版流程" },
{ id: "ship", label: "销售送货流程" },
{ id: "purch", label: "物料采购流程" },
{ id: "issue", label: "物料领用流程" },
{ id: "outproc", label: "发外加工流程" },
{ id: "qc", label: "质量管理流程" },
{ id: "fin", label: "财务收付款流程" },
],
},
{ id: "crm", label: "CRM 管理", icon: "folder" },
{ id: "plm", label: "PLM 管理", icon: "folder" },
{ id: "prod", label: "产品管理", icon: "folder" },
{ id: "sales", label: "销售管理", icon: "folder" },
{ id: "mfg", label: "生产管理", icon: "folder" },
{ id: "exec", label: "生产执行", icon: "folder" },
{ id: "mold", label: "模具管理", icon: "folder" },
{
id: "sys", label: "系统管理", icon: "settings",
children: [
{ id: "roles", label: "角色管理", leaf: true },
{ id: "menucfg", label: "菜单配置", leaf: true },
{ id: "log", label: "操作日志", leaf: true },
],
},
];
// Permission-group rows (left column of permission tab)
const PERMISSION_GROUPS = [
"权限分类", "默认显示(必选)", "禁止查看价格", "客服报单",
"报价组员工", "物控组员工", "供应链 PMC", "允许查看订单价格",
"储运员工", "外接供应商", "品质组员工", "技术中心员工",
"机修组员工", "生产排计划员工", "外发组员工",
"模切车间", "装订车间", "粘接工车间", "品质部管理", "精品车间",
"人事组", "统计组", "机修主管", "样品开发员工", "设计开发", "总经办",
"财务部", "销售员", "采购员", "仓库管理员",
];
const DEPARTMENTS = [
"工艺技术", "印刷车间", "机修", "机务部", "财务部",
"装订车间", "总经办公室", "总务部", "供应链", "质量管理部",
"模切车间", "计划组", "样品开发", "设计部", "仓库",
];
const USER_TYPES = ["超级管理员", "高级管理员", "普通用户", "外部用户", "只读用户"];
const LANGUAGES = ["中文", "英文", "繁体"];
// Plausible Chinese-name pinyin pairs
const NAME_POOL = [
["管广飞", "ggf"], ["李斌", "lib"], ["系统管理员", "admin"], ["朱财喜", "zhucx"],
["林杰华", "ljh"], ["汪鑫", "wx"], ["钱昉", "qianb"], ["张冠飞", "zgf"],
["孟威", "mengw"], ["杭仁萍", "hangrp"], ["王月", "wy"], ["王宽明", "wkm"],
["潘强", "pq"], ["耿广东", "ggd"], ["余涛", "yt"], ["梁赵军", "lzj"],
["曹佳怡", "cjy"], ["陈思琪", "csq"], ["张红英", "zhy"], ["吕欣彦", "lxy"],
["陈雪婷", "cxt"], ["路鑫", "luxin"], ["陆鑫·储运部", "ZY0006"],
["朱晓兵", "zhuxb"], ["孟丽花", "menglh"], ["彭敏", "pengm"], ["顾鹏", "gp"],
["田雨", "ty"], ["黄文豪", "hwh"], ["邓佳", "dj"], ["孙浩然", "shr"],
["徐瑞", "xr"], ["许云", "xy"], ["何晨曦", "hcx"], ["林婉君", "lwj"],
["杨柳", "yl"], ["蒋婷", "jt"],
];
const seededRandom = (seed) => {
let s = seed;
return () => { s = (s * 9301 + 49297) % 233280; return s / 233280; };
};
const pad = (n) => String(n).padStart(2, "0");
const dt = (y, m, d, hh, mm, ss) =>
`${y}-${pad(m)}-${pad(d)} ${pad(hh)}:${pad(mm)}:${pad(ss)}`;
const buildUsers = () => {
const rand = seededRandom(7);
return NAME_POOL.map((nm, i) => {
const r = rand();
return {
id: i + 1,
seq: i + 1,
employee: nm[0],
empNo: nm[1],
account: nm[1],
department: DEPARTMENTS[Math.floor(rand() * DEPARTMENTS.length)],
type: USER_TYPES[Math.floor(rand() * USER_TYPES.length)],
language: r < 0.15 ? "英文" : "中文",
disabled: r < 0.08,
lastLogin: dt(2026, 1 + Math.floor(rand() * 4), 1 + Math.floor(rand() * 27),
8 + Math.floor(rand() * 10), Math.floor(rand() * 60), Math.floor(rand() * 60)),
createdBy: ["超级管理员", "机仁萍", "李丹", "YFZ", "LJH", "孟琰"][Math.floor(rand() * 6)],
createdAt: dt(2023 + Math.floor(rand() * 3), 1 + Math.floor(rand() * 12),
1 + Math.floor(rand() * 27), 8 + Math.floor(rand() * 10),
Math.floor(rand() * 60), Math.floor(rand() * 60)),
// Default: a small subset of permission groups checked
permissions: PERMISSION_GROUPS.reduce((acc, g) => {
acc[g] = rand() < 0.18; return acc;
}, {}),
tabPerms: { customer: rand() < 0.4, supplier: rand() < 0.3, staff: rand() < 0.3, process: rand() < 0.3, driver: rand() < 0.2 },
};
});
};
// Mega-nav grid: top-level sections (left rail) → category columns → leaf items
const MEGA_NAV = [
{ id: "sales-mgmt", icon: "folder", label: "销售管理" },
{ id: "dcs", icon: "folder", label: "DCS 系统" },
{ id: "prod-mgmt", icon: "folder", label: "产品管理" },
{ id: "prod-ops", icon: "folder", label: "生产运营" },
{ id: "prod-exec", icon: "folder", label: "生产执行" },
{ id: "mold", icon: "folder", label: "模具管理" },
{ id: "purch", icon: "folder", label: "采购管理" },
{ id: "matwh", icon: "folder", label: "材料库存" },
{ id: "fgwh", icon: "folder", label: "成品库存" },
{ id: "outsrc", icon: "folder", label: "外协管理" },
{ id: "logistics", icon: "folder", label: "物流管理" },
{ id: "qc", icon: "folder", label: "质量管理" },
{ id: "fin", icon: "folder", label: "财务管理" },
{ id: "cost-pro", icon: "folder", label: "成本管理(专)" },
{ id: "cost", icon: "folder", label: "成本管理" },
{ id: "equip", icon: "folder", label: "设备管理" },
{ id: "hr", icon: "folder", label: "人事行政" },
{ id: "oa", icon: "folder", label: "OA 系统" },
{ id: "base", icon: "folder", label: "基础设置" },
{ id: "sys", icon: "settings", label: "系统设置", active: true },
];
const MEGA_COLUMNS = {
"sys": [
{ title: "期初设置", items: [
{ label: "客户期初" }, { label: "供应商期初" }, { label: "材料期初" }, { label: "产品期初" }, { label: "数据导入" }, { label: "离线导出下载" },
]},
{ title: "用户管理", items: [
{ label: "用户列表", screen: "userlist", featured: true },
{ label: "系统权限" }, { label: "系统权限程查表" }, { label: "权限组" },
]},
{ title: "系统参数", items: [
{ label: "系统参数" }, { label: "财务结准" }, { label: "系统常量配置" },
]},
{ title: "计算方案", items: [
{ label: "方案列表" }, { label: "计算参数" },
]},
{ title: "日志", items: [
{ label: "个性化模块" }, { label: "操作日志" }, { label: "异常清除KPI任务表" }, { label: "MYSQL监听器" },
]},
{ title: "开发平台", items: [
{ label: "自定义开发范例" }, { label: "系统功能模块设置" }, { label: "ERC流程清单" }, { label: "功能模块界面设置" }, { label: "模拟收付款业务处理" },
]},
{ title: "API 对接管理", items: [
{ label: "调用第三方接口(TOKEN配置)" }, { label: "调用第三方接口(接口定义)" }, { label: "被第三方调用(生成token)" }, { label: "数据同步" }, { label: "被第三方调用(API定义)" },
]},
{ title: "系统模块", items: [
{ label: "系统模块配置", screen: "module", featured: true },
{ label: "菜单配置" }, { label: "模块字段配置" },
]},
],
// Fallback for other sections — show a placeholder column
};
window.XLY = {
COMPANIES,
NAV_TREE,
MEGA_NAV,
MEGA_COLUMNS,
PERMISSION_GROUPS,
DEPARTMENTS,
USER_TYPES,
LANGUAGES,
buildUsers,
};