-
部门 (sDepartment) lives on tStaff, not tUser. Showing/editing it on the user form was misleading — it implied the value would be saved against the user, but the backend has no such column on tUser. The user list still surfaces 部门 via the LEFT JOIN on tStaff, which remains correct for display. Removes: - 部门 form field on UserDetail - DEPARTMENTS constant (now unused)
-
Reverses the earlier 'hide unsupported fields' decision per user request to strictly follow the prototype look. Brings back: - Full dark sub-toolbar: 新增 / 修改 / 删除 / 保存 / 取消 (separator) 功能 / 作废 / 重置密码 / 取消作废, with status chip + settings gear on the right and 已选权限 counter - 9-field 3x3 form with prototype's required-field cyan tint, 制单人 showing 保存后自动生成 placeholder in new mode - 6 perm tabs (权限组 / 客户 / 供应商 / 人员 / 工序 / 司机) - 30-row permission grid with hover, accent-soft selected row, filter - Scope tabs with master enable + 4-col grid of items - Floating vertical 帮助 button on right edge Permissions and the no-op buttons are visual-only — they don't round-trip to backend. Save still sends only sUserNo/sUserName/sUserType/sLanguage/ bCanModifyDocs (iStaffId and permissionCategoryIds intentionally omitted). Adds bespoke Primitives.tsx (Field/PrimInput/PrimSelect/PrimCheckbox/ ToolbarBtnDark/ToolbarBtnLight) so this screen renders pixel-faithful to prototype rather than picking up AntD chrome.
-
- Sidebar 系统管理 now contains only 角色管理 / 菜单配置 / 操作日志 (用户列表 and 系统模块配置 are accessed via mega-nav, not duplicated in the tree). - MegaNav rebuilt as full-viewport dark layout per prototype: dark topbar with highlighted 全部导航 chip, 150px left rail of categories (active = accent + white left border), right grid of category columns with bordered titles and muted/featured items. - MEGA_COLUMNS expanded to 8 columns matching prototype 系统设置 (期初设置 / 用户管理 / 系统参数 / 计算方案 / 日志 / 开发平台 / API对接管理 / 系统模块).
-
Per docs/04 production stack: Vite + React 18 + TypeScript + AntD 5 + Redux Toolkit + React Router v6 + Axios. Theme tokens copied from prototype/XLY-ERP.html so density, colors, and layout match. Pages: Login, Home, UserList, UserDetail, ModuleConfig — wired to existing endpoints (/api/usr/auth/login, /api/usr/users, /api/mod/modules). Backend-unsupported fields (user permission grid, 18 module fields, iStaffId picker) hidden per scope. Sidebar/MegaNav remain static reference data; dashboard stats hardcoded (no endpoint).