Browse Source

fix:修复了订单收入文档和代理收入文档

景好勇 4 months ago
parent
commit
2675973c68

+ 7 - 1
doc/系统设计/数据库设计/物理模型/分析后台设计增加/15平台订单收入.sql

@@ -17,6 +17,10 @@ DROP TABLE IF EXISTS report_platform_order_income;
 
 CREATE TABLE report_platform_order_income AS
 /* 使用WITH子句定义多个查询因子 */
+/* 创建平台订单视图 */
+DROP VIEW IF EXISTS view_platform_order_income;
+
+CREATE OR REPLACE VIEW view_platform_order_income AS
 SELECT
     base.area_code as area_code /* 区域 */,
     base.id as order_id /* 订单编号 */,
@@ -62,7 +66,7 @@ FROM (
         SELECT orec.order_id /* 订单ID */, orec.created_at accept_time /* 接单时间 */
         FROM order_records orec /* 订单记录表 */
         WHERE
-            orec.state = 'COMPLETED' /* 已完成状态 */
+            orec.state = 13 /* 已完成状态 */
     ) accept_time ON base.id = accept_time.order_id /* 关联接单时间 */
     LEFT JOIN (
         SELECT
@@ -114,3 +118,5 @@ FROM (
             ws.order_id
     ) split_info ON base.id = split_info.order_id /* 关联分账信息 */
 ORDER BY base.created_at DESC /* 按下单时间倒序 */;
+
+select * from view_platform_order_income;

+ 25 - 20
doc/系统设计/数据库设计/物理模型/分析后台设计增加/17代理收入.sql

@@ -6,32 +6,37 @@
 平台分账与代理商分账是一样的数据,市场经费是代理商分账的一半
 */
 
-
 /* 区域、交易时间、代理商、代理商分账、平台分账、市场经费统计 */
 DROP TABLE IF EXISTS report_agent_income;
+
 CREATE TABLE report_agent_income AS
-WITH trans_base AS (
-    SELECT 
-        wtr.district /* 区域 */,
-        wtr.trans_time /* 交易时间 */,
-        wtr.wallet_id /* 钱包ID */,
-        wtr.amount /* 交易金额 */,
-        w.owner_id /* 所属主体编号 */
-    FROM wallet_trans_records wtr
-    INNER JOIN wallet w ON w.id = wtr.wallet_id
-    WHERE wtr.role = '代理商'
-        AND wtr.deleted_at IS NULL
-)
-SELECT 
+
+DROP VIEW IF EXISTS view_agent_income;
+
+CREATE OR REPLACE VIEW view_agent_income AS
+WITH
+    trans_base AS (
+        SELECT wtr.district /* 区域 */, wtr.trans_time /* 交易时间 */, wtr.wallet_id /* 钱包ID */, wtr.amount /* 交易金额 */, w.owner_id /* 所属主体编号 */
+        FROM
+            wallet_trans_records wtr
+            INNER JOIN wallet w ON w.id = wtr.wallet_id
+        WHERE
+            wtr.role = 6
+            AND wtr.deleted_at IS NULL
+    )
+SELECT
     tb.district as district /* 区域 */,
     tb.trans_time as trans_time /* 交易时间 */,
     mu.nickname as nickname /* 代理商昵称 */,
     tb.amount as agent_amount /* 代理商分账 */,
     tb.amount as platform_amount /* 平台分账 */,
     tb.amount / 2 as market_amount /* 市场经费 */
-FROM trans_base tb
-INNER JOIN agent_infos ai ON ai.id = tb.owner_id AND ai.deleted_at IS NULL
-INNER JOIN member_users mu ON mu.id = ai.user_id AND mu.deleted_at IS NULL
-ORDER BY 
-    tb.district,
-    tb.trans_time DESC;
+FROM
+    trans_base tb
+    INNER JOIN agent_infos ai ON ai.id = tb.owner_id
+    AND ai.deleted_at IS NULL
+    INNER JOIN member_users mu ON mu.id = ai.user_id
+    AND mu.deleted_at IS NULL
+ORDER BY tb.district, tb.trans_time DESC;
+
+select * from view_agent_income;