init: F9智慧缫丝系统 - 后端(server) + 主前端(web) + 打印设计器(openprint) 首次提交
This commit is contained in:
@@ -0,0 +1,141 @@
|
||||
/**
|
||||
* 菜单 component → 后端数据表名 映射表
|
||||
* key 为后端菜单 Component(模块/页面),value 为 API 数据表名
|
||||
* 未列入的 component 将按默认规则 "Module_PascalPage" 推断
|
||||
*/
|
||||
const TABLE_MAP = {
|
||||
'BaseCommon/material': 'BaseCommon_Material',
|
||||
'BaseCommon/spec': 'BaseCommon_SilkSpec',
|
||||
'BaseCommon/grade': 'BaseCommon_GradeStandard',
|
||||
'BaseCommon/partner': 'BaseCommon_Partner',
|
||||
'BaseCommon/period': 'BaseCommon_AccountPeriod',
|
||||
'BaseCommon/worktype': 'BaseCommon_WorkType',
|
||||
'BaseCommon/dict': 'BaseCommon_Dict',
|
||||
|
||||
'RawMaterial/zhuangkou': 'RawMaterial_Zhuangkou',
|
||||
'RawMaterial/instock': 'RawMaterial_InStock',
|
||||
'RawMaterial/repack': 'RawMaterial_Repack',
|
||||
'RawMaterial/outstock': 'RawMaterial_OutStock',
|
||||
'RawMaterial/stock': 'RawMaterial_Stock',
|
||||
'RawMaterial/purchase': 'RawMaterial_Purchase',
|
||||
|
||||
'Process/zhuangkou': 'Process_ProcessZhuangkou',
|
||||
'Process/trial': 'Process_Trial',
|
||||
'Process/index': 'Process_Index',
|
||||
'Process/sheet': 'Process_Sheet',
|
||||
|
||||
'ProPlan/workorder': 'ProPlan_WorkOrder',
|
||||
'ProPlan/change': 'ProPlan_Change',
|
||||
|
||||
'ProXuan/team': 'ProXuan_Team',
|
||||
'ProXuan/daily': 'ProXuan_Daily',
|
||||
'ProXuan/quality': 'ProXuan_Quality',
|
||||
'ProXuan/tempstock': 'ProXuan_TempStock',
|
||||
|
||||
'ProQian/workshop': 'ProQian_Workshop',
|
||||
'ProQian/machine': 'ProQian_Machine',
|
||||
'ProQian/schedule': 'ProQian_Schedule',
|
||||
'ProQian/shifttime': 'ProQian_ShiftTime',
|
||||
'ProQian/cocoon': 'ProQian_CocoonBoiling',
|
||||
'ProQian/thread': 'ProQian_ThreadRecord',
|
||||
|
||||
'ProHou/daily': 'ProHou_Daily',
|
||||
'ProHou/spool': 'ProHou_SpoolLedger',
|
||||
'ProHou/check': 'ProHou_SpoolCheck',
|
||||
'ProHou/weigh': 'ProHou_WeighBig',
|
||||
|
||||
'Lims/spoolcheck': 'Lims_SpoolCheck',
|
||||
'Lims/blackboard': 'Lims_BlackBoard',
|
||||
'Lims/denier': 'Lims_Denier',
|
||||
'Lims/moisture': 'Lims_Moisture',
|
||||
'Lims/abnormal': 'Lims_Abnormal',
|
||||
'Lims/grade': 'Lims_GradeResult',
|
||||
|
||||
'Fims/batch': 'Fims_Batch',
|
||||
'Fims/package': 'Fims_Package',
|
||||
'Fims/instock': 'Fims_InStock',
|
||||
'Fims/outstock': 'Fims_OutStock',
|
||||
'Fims/stock': 'Fims_Stock',
|
||||
|
||||
'Sams/customer': 'Sams_Customer',
|
||||
'Sams/contract': 'Sams_Contract',
|
||||
'Sams/dispatch': 'Sams_DispatchPlan',
|
||||
'Sams/payment': 'Sams_Payment',
|
||||
'Sams/invoice': 'Sams_Invoice',
|
||||
|
||||
'HRS/employee': 'HRS_Employee',
|
||||
'HRS/change': 'HRS_EmployeeChange',
|
||||
'HRS/attendance': 'HRS_Attendance',
|
||||
'HRS/dorm': 'HRS_Dorm',
|
||||
'HRS/canteen': 'HRS_CanteenRecord',
|
||||
|
||||
'FlexPay/config': 'FlexPay_Config',
|
||||
'FlexPay/scheme': 'FlexPay_Scheme',
|
||||
'FlexPay/reward': 'FlexPay_Reward',
|
||||
'FlexPay/piece': 'FlexPay_PieceResult',
|
||||
'FlexPay/salary': 'FlexPay_Salary',
|
||||
'FlexPay/payroll': 'FlexPay_Payroll',
|
||||
|
||||
'Enms/meter': 'Enms_Meter',
|
||||
'Enms/reading': 'Enms_Reading',
|
||||
'Enms/rule': 'Enms_AllocateRule',
|
||||
'Enms/result': 'Enms_AllocateResult',
|
||||
|
||||
'Qums/grain': 'Qums_GrainCount',
|
||||
'Qums/task': 'Qums_CheckTask',
|
||||
|
||||
'WmsWu/stock': 'WmsWu_Stock',
|
||||
'WmsWu/instock': 'WmsWu_InStock',
|
||||
'WmsWu/outstock': 'WmsWu_OutStock',
|
||||
'WmsWu/plan': 'WmsWu_PurchasePlan',
|
||||
'WmsWu/apply': 'WmsWu_Apply',
|
||||
'WmsWu/ledger': 'WmsWu_Ledger',
|
||||
|
||||
'WmsFu/stock': 'WmsFu_Stock',
|
||||
'WmsFu/instock': 'WmsFu_InStock',
|
||||
'WmsFu/outstock': 'WmsFu_OutStock',
|
||||
|
||||
'BizBoss/cost': 'BizBoss_CostAllocate',
|
||||
'BizBoss/profit': 'BizBoss_Profit',
|
||||
|
||||
'RepCenter/report': 'RepCenter_Report',
|
||||
'RepCenter/design': 'RepCenter_ReportDesign',
|
||||
|
||||
'BoardCenter/board': 'BoardCenter_Board',
|
||||
|
||||
'ApiCenter/internal': 'ApiCenter_InternalApi',
|
||||
'ApiCenter/external': 'ApiCenter_ExternalApi',
|
||||
'ApiCenter/sync': 'ApiCenter_SyncLog',
|
||||
|
||||
'BaseSys/menu': 'BaseSys_Menu',
|
||||
'BaseSys/org': 'BaseSys_Org',
|
||||
'BaseSys/role': 'BaseSys_Role',
|
||||
'BaseSys/user': 'BaseSys_User'
|
||||
}
|
||||
|
||||
/** 根据 component 推断表名 */
|
||||
export function resolveTable(component) {
|
||||
if (!component) return null
|
||||
if (TABLE_MAP[component]) return TABLE_MAP[component]
|
||||
// 默认规则:Module/page → Module_PascalPage
|
||||
const [mod, page] = component.split('/')
|
||||
if (!page) return null
|
||||
const pascal = page.charAt(0).toUpperCase() + page.slice(1)
|
||||
return `${mod}_${pascal}`
|
||||
}
|
||||
|
||||
/** 特殊页面:不经过通用 CRUD(如工作台、看板) */
|
||||
export const SPECIAL_PAGES = new Set(['WorkBench/index'])
|
||||
|
||||
/**
|
||||
* 详情页映射:component → 详情页路由(:id 占位替换)
|
||||
* 配置后,通用 CRUD 列表操作列会显示"详情"按钮
|
||||
*/
|
||||
export const DETAIL_MAP = {
|
||||
'Process/zhuangkou': '/process/zhuangkou-detail'
|
||||
}
|
||||
|
||||
/** 根据 component 解析详情页路由(无则返回 null) */
|
||||
export function resolveDetail(component) {
|
||||
return component ? DETAIL_MAP[component] || null : null
|
||||
}
|
||||
Reference in New Issue
Block a user