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