-- 财务台账 AI 库轻量视图与索引 -- 目标库:JSReportReplica -- 只新增视图/索引并授予 caiwu 只读 SELECT;不修改任何 base 业务数据。 -- 建议用具备 DDL 权限的维护账号执行。 CREATE OR ALTER VIEW rpt.fin_ledger_workorder AS SELECT Id, woNo, createby, created, completeTime, businessFieldList FROM rpt.jst_workOrderInfo WHERE woTypeId = N'9E5A531F48D94AF4B8611FA6918ADA29' AND status = N'CONFIRMED'; GO CREATE OR ALTER VIEW rpt.fin_ledger_withdrawal AS SELECT a.Id, a.shop_id, b.shop_name, a.channel, a.fee_time, a.fee_name, a.amount, a.primary_key FROM rpt.jst_originalBillInfo a LEFT JOIN rpt.jst_shopInfo b ON b.shop_id = a.shop_id WHERE a.inout_type = N'-1' AND a.fee_name LIKE N'%提现%' AND a.fee_time >= '2026-01-01'; GO CREATE OR ALTER VIEW rpt.fin_ledger_dingtalk_workflow AS SELECT processInstanceId, processCode, businessId, title, status, originatorUserId, originatorDeptName, joinAt, finishTime FROM rpt.ding_Workflow WHERE processCode IN ( 'PROC-B290696F-EC2A-4F76-87BA-E0A12E10D09F', 'PROC-C5159B8D-F412-4DF8-981D-64EBB8D03EB6', 'PROC-39DD70DE-DAB2-4A5F-B8F1-0B0B68BD0C88', 'PROC-BBAC7187-9E59-4942-941A-59C7EAF0CEDA', 'PROC-ACF09A14-B094-46B1-A9E2-8BB1F4E1FDCF', 'PROC-6407E98B-040A-4C96-AA7D-696650FC1A25' ); GO CREATE OR ALTER VIEW rpt.fin_ledger_dingtalk_scheme AS SELECT s.id, s.processInstanceId, s.name, s.value FROM rpt.ding_WorkflowScheme s WHERE s.name IN (N'付款明细', N'收款费用明细', N'应付明细', N'固定资产报废或出售明细', N'收款合计', N'付款金额合计'); GO CREATE OR ALTER VIEW rpt.fin_ledger_store_opening AS SELECT a.flowId, a.AccountCode, a.AccountName, a.costType, a.money, a.paymentTime, a.paymentAccount, b.erpShopName, b.platform, b.applyUser, b.applyDepartment FROM rpt.fys_shopInfo_kingdeeCode_flow a LEFT JOIN rpt.fys_shopInfo_flow b ON a.flowId = b.flowId WHERE a.flowId IN (SELECT flowId FROM rpt.flow_flow WHERE flowType = 8 AND flowStatus = 3) AND a.type = 1 AND a.isPaymentMade = 1 AND a.money > 0; GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_jst_workOrderInfo_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_jst_workOrderInfo_fin_ledger ON base.jst_workOrderInfo (Id) INCLUDE (woNo, createby, created, completeTime) WHERE woTypeId = N'9E5A531F48D94AF4B8611FA6918ADA29' AND status = N'CONFIRMED' WITH (ONLINE = ON, MAXDOP = 2); GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_jst_originalBillInfo_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_jst_originalBillInfo_fin_ledger ON base.jst_originalBillInfo (fee_time) INCLUDE (Id, shop_id, channel, fee_name, amount, primary_key) WHERE inout_type = N'-1' AND fee_time >= '2026-01-01' WITH (ONLINE = ON, MAXDOP = 4, SORT_IN_TEMPDB = ON); GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_ding_Workflow_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_ding_Workflow_fin_ledger ON base.ding_Workflow (joinAt, processCode) INCLUDE (processInstanceId, businessId, title, status, originatorUserId, originatorDeptName, finishTime) WITH (ONLINE = ON, MAXDOP = 2); GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_flow_flow_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_flow_flow_fin_ledger ON base.flow_flow (flowType, flowStatus, flowId) INCLUDE (applyUser) WITH (ONLINE = ON, MAXDOP = 2); GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_fys_shopInfo_kingdeeCode_flow_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_fys_shopInfo_kingdeeCode_flow_fin_ledger ON base.fys_shopInfo_kingdeeCode_flow (flowId) INCLUDE (type, isPaymentMade, paymentTime, paymentAccount, costType, money, AccountCode, AccountName) WITH (ONLINE = ON, MAXDOP = 2); GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'IX_base_fys_shopInfo_flow_fin_ledger') CREATE NONCLUSTERED INDEX IX_base_fys_shopInfo_flow_fin_ledger ON base.fys_shopInfo_flow (flowId) INCLUDE (erpShopName, platform, applyUser, applyDepartment) WITH (ONLINE = ON, MAXDOP = 2); GO GRANT SELECT ON OBJECT::rpt.fin_ledger_workorder TO [caiwu]; GRANT SELECT ON OBJECT::rpt.fin_ledger_withdrawal TO [caiwu]; GRANT SELECT ON OBJECT::rpt.fin_ledger_dingtalk_workflow TO [caiwu]; GRANT SELECT ON OBJECT::rpt.fin_ledger_dingtalk_scheme TO [caiwu]; GRANT SELECT ON OBJECT::rpt.fin_ledger_store_opening TO [caiwu]; GO