1.0.210.sql 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. -- ============================================================
  2. -- 1.0.210.sql
  3. -- S5-PURCHASE-RECEIPT-MDP-PIPELINE-1
  4. --
  5. -- 业务目标:
  6. -- 1) 新建 S5 采购收货单标准层表 mdp_std_purchase_receipt(只读数据中台,方案1:
  7. -- S5 直读源表 PurOrdRctDetail/PurOrdRctMaster + 4 张维表,自建标准层,
  8. -- 不读/不改 S3 mdp_stg_receipt、不读/不改 S4 ado_s4_receipt)。
  9. -- 2) 将「采购收货单」菜单(Id=1329015020002,仓储管理目录 1322000000016 下)
  10. -- 的 Component 由 placeholder 重指到真实页面 /aidop/s5/warehouse/purchaseReceiptList。
  11. --
  12. -- 安全保证:
  13. -- - DDL 仅 CREATE TABLE IF NOT EXISTS,幂等;不 DROP / TRUNCATE。
  14. -- - 菜单仅 UPDATE 该单条 Component / Remark / UpdateTime;不改 Path/Name/Pid/Title/Type/OrderNo;
  15. -- 不 INSERT/DELETE;不动 SysTenantMenu / SysRoleMenu(该菜单已分配);不动其它菜单。
  16. -- - 不动源单据表(PurOrdRctMaster/PurOrdRctDetail/PurOrdDetail 等),不动 S3/S4 资产。
  17. -- ============================================================
  18. CREATE TABLE IF NOT EXISTS mdp_std_purchase_receipt (
  19. id BIGINT AUTO_INCREMENT PRIMARY KEY,
  20. tenant_id BIGINT NOT NULL DEFAULT 0,
  21. factory_id BIGINT NULL DEFAULT 1,
  22. source_system VARCHAR(50) NOT NULL DEFAULT 'AIDOP',
  23. domain VARCHAR(24) NOT NULL COMMENT '工厂/域 PurOrdRctDetail.Domain',
  24. receiver VARCHAR(24) NOT NULL COMMENT '收货单号 PurOrdRctDetail.Receiver',
  25. line SMALLINT NOT NULL DEFAULT 0 COMMENT '收货明细行号 PurOrdRctDetail.Line',
  26. rct_date DATETIME NULL COMMENT '收货日期 PurOrdRctMaster.RctDate',
  27. supp VARCHAR(20) NULL COMMENT '供应商编码 PurOrdRctDetail.Supp',
  28. sort_name VARCHAR(255) NULL COMMENT '供应商名称 rtrim(Supp+SuppMaster.SortName)',
  29. item_num VARCHAR(60) NULL COMMENT '物料编码 PurOrdRctDetail.ItemNum',
  30. item_name VARCHAR(200) NULL COMMENT '物料名称 ItemMaster.Descr',
  31. item_spec VARCHAR(200) NULL COMMENT '物料规格 ItemMaster.Descr1',
  32. um VARCHAR(8) NULL COMMENT '单位 PurOrdRctDetail.UM',
  33. qty_ordered DECIMAL(18,6) NULL DEFAULT 0 COMMENT '订单数量 PurOrdRctDetail.QtyOrded',
  34. qty_received DECIMAL(18,6) NULL DEFAULT 0 COMMENT '收货数量 PurOrdRctDetail.QtyReceived',
  35. lot_serial VARCHAR(120) NULL COMMENT '批次号 PurOrdRctDetail.LotSerial',
  36. location VARCHAR(8) NULL COMMENT '库位 PurOrdRctDetail.Location',
  37. ord_nbr VARCHAR(24) NULL COMMENT '来源单号 PurOrdRctDetail.OrdNbr',
  38. ord_line SMALLINT NULL COMMENT '来源行号 PurOrdRctDetail.OrdLine',
  39. blanket_line INT NULL COMMENT '一揽子行 PurOrdDetail.BlanketLine',
  40. pur_ord VARCHAR(24) NULL COMMENT '采购单号 PurOrdDetail.PurOrd',
  41. pur_line SMALLINT NULL COMMENT '采购单行 PurOrdDetail.Line',
  42. sales_job VARCHAR(200) NULL COMMENT '销售工单 PurOrdDetail.SalesJob',
  43. address1 VARCHAR(200) NULL COMMENT '收货地址 ConsigneeAddressMaster.Address1',
  44. req VARCHAR(20) NULL COMMENT '请购单号(非DO时=PurOrdDetail.Req)',
  45. req_line INT NULL COMMENT '请购行号 PurOrdDetail.ReqLine',
  46. dop_req VARCHAR(255) NULL COMMENT 'DOP请购号(DO时=Req,否则=srm_pr_main.pr_billno)',
  47. source_biz_key VARCHAR(200) NULL COMMENT 'domain#receiver#line',
  48. sync_batch_id VARCHAR(100) NOT NULL,
  49. sync_time DATETIME NOT NULL,
  50. create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
  51. update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  52. UNIQUE KEY uk_mdp_std_pur_rct (tenant_id, domain, receiver, line),
  53. KEY idx_mdp_std_pur_rct_date (tenant_id, rct_date),
  54. KEY idx_mdp_std_pur_rct_item (tenant_id, item_num),
  55. KEY idx_mdp_std_pur_rct_supp (tenant_id, supp),
  56. KEY idx_mdp_std_pur_rct_purord (tenant_id, pur_ord),
  57. KEY idx_mdp_std_pur_rct_salesjob (tenant_id, sales_job),
  58. KEY idx_mdp_std_pur_rct_req (tenant_id, req),
  59. KEY idx_mdp_std_pur_rct_dopreq (tenant_id, dop_req)
  60. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='S5采购收货单标准层';
  61. UPDATE SysMenu
  62. SET Component = '/aidop/s5/warehouse/purchaseReceiptList',
  63. Remark = 'S5 采购收货单(只读列表,数据中台标准层 mdp_std_purchase_receipt)',
  64. UpdateTime = NOW()
  65. WHERE Id = 1329015020002;