Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
quant-andy
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
贺超
quant-andy
Commits
aab32719
Commit
aab32719
authored
Nov 12, 2021
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
创建项目
parent
16dd7589
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1172 additions
and
121 deletions
+1172
-121
README.md
README.md
+199
-119
AppTest.java
quant-andy-server/src/test/java/cn/quant/AppTest.java
+2
-2
月-电商&支付-1-SKU核计.sql
月-电商&支付-1-SKU核计.sql
+229
-0
月-电商&支付-2-根订单核计.sql
月-电商&支付-2-根订单核计.sql
+157
-0
月-电商&退款-1-SKU核计.sql
月-电商&退款-1-SKU核计.sql
+324
-0
月-电商&退款-2-根订单核计.sql
月-电商&退款-2-根订单核计.sql
+261
-0
No files found.
README.md
View file @
aab32719
#电商财务对账
#电商财务对账
##一、元数据导出
##一、元数据导出
###1、order_goods_info
###1、
pay_serivce.
order_goods_info
```
```
select
select
id
id
...
@@ -21,65 +21,76 @@ select
...
@@ -21,65 +21,76 @@ select
,updated_at
,updated_at
from
from
order_goods_info
order_goods_info
where created_at
< '2021-07
-01 00:00:00'
where created_at
>= '2021-09-01 00:00:00' AND created_at<'2021-10
-01 00:00:00'
```
```
###2、order_sku
###2、
kdsp.t_
order_sku
```
```
select
select
*
*
from
from
ods_kdsp.
t_order_sku
t_order_sku
where
where
date_format(created_at,'%Y-%m') = '2021-0
8
'
date_format(created_at,'%Y-%m') = '2021-0
9
'
```
```
###3、t_order_info
###3、
kdsp.
t_order_info
```
```
#用户pay_time作为支付指标
select
select
*
*
from
from
ods_kdsp.
t_order_info
t_order_info
where
where
date_format(
pay_time,'%Y-%m') = '2021-08
'
date_format(
created_at,'%Y-%m') = '2021-09
'
```
```
###4、sku_info
###4、
kdsp.t_
sku_info
```
```
select
select
*
*
from
from
ods_kdsp.
t_sku_info
t_sku_info
where
where
date_format(created_at,'%Y-%m') = '2021-0
8
'
date_format(created_at,'%Y-%m') = '2021-0
9
'
```
```
###5、t_goods_rear_category
###5、
kdsp.
t_goods_rear_category
```
```
select
select
*
*
from
from
ods_kdsp.
t_goods_rear_category
t_goods_rear_category
where
where
date_format(created_at,'%Y-%m') = '2021-0
8
'
date_format(created_at,'%Y-%m') = '2021-0
9
'
```
```
###6、t_jd_order_info
###6、
kdsp.
t_jd_order_info
```
```
select
select
*
*
from
from
ods_kdsp.
t_jd_order_info
t_jd_order_info
where
where
date_format(created_at,'%Y-%m') = '2021-08'
date_format(created_at,'%Y-%m') = '2021-08'
```
```
###7、after_service_apply
###7、
kdsp.t_
after_service_apply
```
```
select
select
*
*
from
from
ods_kdsp.
t_after_service_apply
t_after_service_apply
where
where
date_format(updated_at,'%Y-%m') = '2021-08'
date_format(updated_at,'%Y-%m') = '2021-09'
SELECT
aft.*,
sku.sku_no
FROM
t_after_service_apply aft
LEFT JOIN t_order_sku sku ON sku.order_no = aft.order_no
AND aft.order_sku_id = sku.id
WHERE
date_format(aft.updated_at, '%Y-%m') = '2021-09'
```
```
###8、ps_txn_summary
###8、ps_txn_summary
...
@@ -88,7 +99,7 @@ select
...
@@ -88,7 +99,7 @@ select
a.order_no
a.order_no
,a.user_uuid
,a.user_uuid
,a.flow_no
,a.flow_no
,
cast(a.order_goods_id as varchar)
as order_goods_id
,
a.order_goods_id
as order_goods_id
,case
,case
when a.trade_type = 2 then 'R002'
when a.trade_type = 2 then 'R002'
when a.trade_type = 3 then 'R003'
when a.trade_type = 3 then 'R003'
...
@@ -97,21 +108,52 @@ select
...
@@ -97,21 +108,52 @@ select
,a.sku_no
,a.sku_no
,a.flow_order_no
,a.flow_order_no
,a.consume_flow_no
,a.consume_flow_no
,
a.trade_amount / cast(100 as double
) as post_amt
,
(CAST(a.trade_amount AS DECIMAL(10, 3)) / 100
) as post_amt
,a.created_at
,a.created_at
from
from
ods_pay_service.
goods_pay_detail a
goods_pay_detail a
left join
left join
o
ds_pay_service.o
rder_info b
order_info b
on
on
a.order_no = b.order_no
a.order_no = b.order_no
where
where
1=1
1=1
and
and
b.status = 1 and date_format(b.paid_time,'%Y-%m') = '2021-08'
b.status = 1 and date_format(b.paid_time,'%Y-%m') = '2021-09'
```
###9、ps_refund_summary
```
SELECT
'202109' AS 'TERM_NO',
order_no,
user_uuid,
refund_flow_no,
refund_flow_order_no,
CASE
WHEN trade_type = 2 THEN
'R094'
WHEN TRADE_TYPe = 3 THEN
'R093'
WHEN trade_type = 1 THEN
'R092'
ELSE
'R091'
END trade_type,
sku_no,
cast(
refund_amount AS DECIMAL (10, 3)
) / 100 AS refund_amount,
created_at
FROM
log_refund_request
WHERE
`status` = 3
AND created_at >= '2021-09-01 00:00:00'
AND created_at < '2021-10-01';
```
```
###
9
、dw_pay_summary 抽中间表
###
10
、dw_pay_summary 抽中间表
```
```
SELECT
SELECT
psts.`TERM_NO`,
psts.`TERM_NO`,
...
@@ -168,37 +210,6 @@ GROUP BY
...
@@ -168,37 +210,6 @@ GROUP BY
psts.ORDER_GOODS_ID
psts.ORDER_GOODS_ID
```
```
###10、ps_refund_summary
```
SELECT
'202108' AS 'TERM_NO',
order_no,
user_uuid,
refund_flow_no,
refund_flow_order_no,
CASE
WHEN trade_type = 2 THEN
'R094'
WHEN TRADE_TYPe = 3 THEN
'R093'
WHEN trade_type = 1 THEN
'R092'
ELSE
'R091'
END trade_type,
sku_no,
cast(
refund_amount AS DECIMAL (10, 3)
) / 100 AS refund_amount,
created_at
FROM
log_refund_request
WHERE
`status` = 3
AND created_at >= '2021-08-01 00:00:00'
AND created_at < '2021-09-01';
```
###11、dw_refund_summary 退款中间表
###11、dw_refund_summary 退款中间表
```
```
SELECT
SELECT
...
@@ -324,9 +335,9 @@ SELECT
...
@@ -324,9 +335,9 @@ SELECT
osku.SHOP_ID
osku.SHOP_ID
FROM
FROM
t_order_info oinf
t_order_info oinf
LEFT JOIN order_sku osku ON oinf.ID = osku.ORDER_INFO_ID
LEFT JOIN
t_
order_sku osku ON oinf.ID = osku.ORDER_INFO_ID
WHERE
WHERE
oinf.TERM_NO = 20210
8
oinf.TERM_NO = 20210
9
AND oinf.ORDER_STATUS <> 51
AND oinf.ORDER_STATUS <> 51
ORDER BY
ORDER BY
oinf.ROOT_ORDER_NO DESC
oinf.ROOT_ORDER_NO DESC
...
@@ -382,12 +393,12 @@ SELECT
...
@@ -382,12 +393,12 @@ SELECT
LEFT JOIN order_goods_info ogd_inf ON ogd_inf.ID = psts.ORDER_GOODS_ID
LEFT JOIN order_goods_info ogd_inf ON ogd_inf.ID = psts.ORDER_GOODS_ID
LEFT JOIN order_inf_sku isku ON psts.ORDER_NO = isku.ROOT_ORDER_NO
LEFT JOIN order_inf_sku isku ON psts.ORDER_NO = isku.ROOT_ORDER_NO
AND psts.SKU_NO = isku.SKU_NO
AND psts.SKU_NO = isku.SKU_NO
LEFT JOIN sku_info skui ON psts.SKU_NO = skui.SKU_NO
LEFT JOIN
t_
sku_info skui ON psts.SKU_NO = skui.SKU_NO
LEFT JOIN t_goods_rear_category gcat1 ON skui.C_ID1 = gcat1.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat1 ON skui.C_ID1 = gcat1.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat2 ON skui.C_ID2 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat2 ON skui.C_ID2 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID3 = gcat3.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID3 = gcat3.CATEGROY_ID
WHERE
WHERE
psts.TERM_NO >= 20210
7
psts.TERM_NO >= 20210
9
-- AND psts.ORDER_NO IN (
-- AND psts.ORDER_NO IN (
-- '1421501573946892288'
-- '1421501573946892288'
-- -- '1432671460492763136'
-- -- '1432671460492763136'
...
@@ -627,7 +638,7 @@ SELECT
...
@@ -627,7 +638,7 @@ SELECT
CONCAT('#', its.BASE_ORDER_NO) AS 'PS丢失根单号',
CONCAT('#', its.BASE_ORDER_NO) AS 'PS丢失根单号',
its.POST_AMT AS '支付订单金额',
its.POST_AMT AS '支付订单金额',
CASE
CASE
WHEN its.POST_AMT = 0.03 THEN
WHEN its.POST_AMT
<
= 0.03 THEN
'Y'
'Y'
ELSE
ELSE
'N'
'N'
...
@@ -636,7 +647,7 @@ FROM
...
@@ -636,7 +647,7 @@ FROM
institution_transaction_summary its
institution_transaction_summary its
LEFT JOIN pay_order_bill obill ON obill.ROOT_ORDER_NO = its.BASE_ORDER_NO
LEFT JOIN pay_order_bill obill ON obill.ROOT_ORDER_NO = its.BASE_ORDER_NO
WHERE
WHERE
its.TERM_NO = 20210
8
its.TERM_NO = 20210
9
AND its.TXN_FLAG = 'C'
AND its.TXN_FLAG = 'C'
AND obill.ROOT_ORDER_NO IS NULL;
AND obill.ROOT_ORDER_NO IS NULL;
```
```
...
@@ -653,6 +664,7 @@ WHEN isku.ID IS NULL THEN
...
@@ -653,6 +664,7 @@ WHEN isku.ID IS NULL THEN
ELSE
ELSE
'Y'
'Y'
END AS Nil,
END AS Nil,
isku.USER_ID,
psrs.ORDER_NO AS ROOT_ORDER_NO,
psrs.ORDER_NO AS ROOT_ORDER_NO,
isku.ORDER_NO AS 'SUB_ORDER_NO',
isku.ORDER_NO AS 'SUB_ORDER_NO',
isku.SKU_NO,
isku.SKU_NO,
...
@@ -744,12 +756,12 @@ LEFT JOIN order_inf_sku isku ON psrs.ORDER_NO = isku.ROOT_ORDER_NO
...
@@ -744,12 +756,12 @@ LEFT JOIN order_inf_sku isku ON psrs.ORDER_NO = isku.ROOT_ORDER_NO
AND psrs.SKU_NO = isku.SKU_NO
AND psrs.SKU_NO = isku.SKU_NO
LEFT JOIN order_goods_info ogd_inf ON ogd_inf.order_no = isku.ROOT_ORDER_NO
LEFT JOIN order_goods_info ogd_inf ON ogd_inf.order_no = isku.ROOT_ORDER_NO
AND ogd_inf.sku_no = isku.SKU_NO
AND ogd_inf.sku_no = isku.SKU_NO
LEFT JOIN sku_info skui ON psrs.SKU_NO = skui.SKU_NO
LEFT JOIN
t_
sku_info skui ON psrs.SKU_NO = skui.SKU_NO
LEFT JOIN t_goods_rear_category gcat1 ON skui.C_ID1 = gcat1.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat1 ON skui.C_ID1 = gcat1.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat2 ON skui.C_ID1 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat2 ON skui.C_ID1 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID2 = gcat3.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID2 = gcat3.CATEGROY_ID
WHERE
WHERE
psrs.term_no = 20210
8
psrs.term_no = 20210
9
```
```
...
@@ -760,6 +772,7 @@ SELECT
...
@@ -760,6 +772,7 @@ SELECT
pris.SKU_TERM_NO AS 'SKU_TERM_NO',
pris.SKU_TERM_NO AS 'SKU_TERM_NO',
pris.`Nil` AS 'Nil',
pris.`Nil` AS 'Nil',
-- pris.`ORDER_GOODS_ID`,
-- pris.`ORDER_GOODS_ID`,
pris.USER_ID,
pris.`ROOT_ORDER_NO` AS 'ROOT_ORDER_NO',
pris.`ROOT_ORDER_NO` AS 'ROOT_ORDER_NO',
pris.`SUB_ORDER_NO` AS 'SUB_ORDER_NO',
pris.`SUB_ORDER_NO` AS 'SUB_ORDER_NO',
pris.`SKU_NO` AS 'SKU_NO',
pris.`SKU_NO` AS 'SKU_NO',
...
@@ -808,11 +821,12 @@ GROUP BY
...
@@ -808,11 +821,12 @@ GROUP BY
```
```
SELECT
SELECT
rbill.TERM_NO AS '期次',
rbill.TERM_NO AS '期次',
rbill.SKU_TERM_NO AS '
发生
期次',
rbill.SKU_TERM_NO AS '
支付
期次',
rbill.Nil,
rbill.Nil,
CONCAT('#',rbill.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',rbill.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',rbill.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#',rbill.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#',rbill.`SKU_NO`) AS 'SKU号',
CONCAT('#',rbill.`SKU_NO`) AS 'SKU号',
rbill.USER_ID AS '用户ID',
rbill.`CATEGROY_NAME1` AS '一级品类',
rbill.`CATEGROY_NAME1` AS '一级品类',
rbill.`CATEGROY_NAME2` AS '二级品类',
rbill.`CATEGROY_NAME2` AS '二级品类',
rbill.`CATEGROY_NAME3` AS '三级品类',
rbill.`CATEGROY_NAME3` AS '三级品类',
...
@@ -840,12 +854,13 @@ FROM
...
@@ -840,12 +854,13 @@ FROM
`ps_rfd_sku_bill` rbill
`ps_rfd_sku_bill` rbill
-- LEFT JOIN jd_order_info jd ON jd.order_no = rbill.SUB_ORDER_NO
-- LEFT JOIN jd_order_info jd ON jd.order_no = rbill.SUB_ORDER_NO
WHERE
WHERE
rbill.TERM_NO = 20210
8
rbill.TERM_NO = 20210
9
```
```
###3、出售后SKU粒度的核对明细
###3、出售后SKU粒度的核对明细
```
```
SELECT
SELECT
CONCAT('#',aft.order_no) AS '售后子单号',
CONCAT('#',sku.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',sku.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',sku.`ORDER_NO`) AS '子订单号',
CONCAT('#',sku.`ORDER_NO`) AS '子订单号',
CONCAT('#',sku.`SKU_NO`) AS 'SKU号',
CONCAT('#',sku.`SKU_NO`) AS 'SKU号',
...
@@ -867,46 +882,69 @@ SELECT
...
@@ -867,46 +882,69 @@ SELECT
bill.`PAY_COUNT` AS '购买数量',
bill.`PAY_COUNT` AS '购买数量',
bill.`AMT_NEED_PAY` AS '合计支付金额/元',
bill.`AMT_NEED_PAY` AS '合计支付金额/元',
bill.`REFUND_AMT` AS '退款金额/元',
bill.`REFUND_AMT` AS '退款金额/元',
aft.`refund_amount` AS '售后金额/元',
bill.CHECKED_AMOUNT AS '核退款金额',
bill.CHECKED_AMOUNT AS '核退款金额',
bill.`SALES_SERVICE` AS '售后状态',
bill.`SALES_SERVICE` AS '售后状态',
bill.`order_time` AS '下单时间',
bill.`order_time` AS '下单时间',
bill.`pay_time` AS '支付时间'
bill.`pay_time` AS '支付时间'
FROM
FROM
after_service_apply aft
t_
after_service_apply aft
LEFT JOIN order_inf_sku sku ON aft.order_no = sku.ORDER_NO
LEFT JOIN order_inf_sku sku ON aft.order_no = sku.ORDER_NO
LEFT JOIN ps_rfd_sku_bill bill ON bill.ROOT_ORDER_NO = sku.ROOT_ORDER_NO
LEFT JOIN ps_rfd_sku_bill bill ON bill.ROOT_ORDER_NO = sku.ROOT_ORDER_NO
AND bill.SUB_ORDER_NO = sku.ORDER_NO
AND bill.SUB_ORDER_NO = sku.ORDER_NO
AND bill.SKU_NO = sku.SKU_NO
AND bill.SKU_NO = sku.SKU_NO
WHERE
WHERE
aft.term_no = 202108
aft.term_no = 202109
GROUP BY
AND aft.deal_status = 70
sku.ROOT_ORDER_NO,
sku.ORDER_NO,
sku.SKU_NO;
```
```
###4、银有企无SKU粒度的核对明细
###4、
退款
银有企无SKU粒度的核对明细
```
```
SELECT
SELECT
its.TERM_NO,
its.TERM_NO
AS '期次'
,
its.TRANSACTION_ID
,
CONCAT('#',its.TRANSACTION_ID) AS '交易ID'
,
its.BASE_ORDER_NO
,
CONCAT('#',its.BASE_ORDER_NO) AS '根订单号'
,
its.POST_AMT
,
CONCAT('#',its.SERIAL_NO) AS '流水号'
,
its.
SERIAL_NO
,
its.
POST_AMT AS '退款金额'
,
its.BASE_CODE,
its.BASE_CODE
AS '支付方式'
,
its.TXN_CODE,
its.TXN_CODE
AS '交易码'
,
rfd.*
rfd.*
FROM
FROM
institution_transaction_summary its
institution_transaction_summary its
LEFT JOIN dw_refund_summary rfd ON rfd.ORDER_NO = its.BASE_ORDER_NO
LEFT JOIN dw_refund_summary rfd ON rfd.ORDER_NO = its.BASE_ORDER_NO
WHERE
WHERE
its.TERM_NO = 20210
8
its.TERM_NO = 20210
9
AND its.TXN_FLAG = 'D'
AND its.TXN_FLAG = 'D'
AND rfd.TERM_NO IS NULL;
```
```
##四、修复脚本
##四、修复脚本
###1、状态51、无子单号订单信息查询
###1、关联不到商品信息订单补全
```
SELECT
sku.TERM_NO AS '期次',
CONCAT('#',sku.SKU_NO) AS 'SKU号',
gcat1.CATEGROY_NAME AS '一级品类',
gcat2.CATEGROY_NAME AS '二级品类',
gcat3.CATEGROY_NAME AS '三级品类',
sku.SHOP_NAME AS '店铺',
sku.SKU_NAME AS '商品名称'
FROM
t_sku_info sku
LEFT JOIN t_goods_rear_category gcat1 ON sku.C_ID1 = gcat1.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat2 ON sku.C_ID1 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON sku.C_ID2 = gcat3.CATEGROY_ID
WHERE
sku.sku_no IN (
184935512285184,
10982709793793,
10978230276097,
219832692247040
)
```
###2、状态51、无子单号订单信息查询
```
```
SELECT
SELECT
oinf.TERM_NO,
oinf.TERM_NO,
...
@@ -952,40 +990,48 @@ WHERE
...
@@ -952,40 +990,48 @@ WHERE
)
)
```
```
#
VCC 财务对账d
#
#VCC 财务对账
#
支付
对齐流水
#
##1、放款
对齐流水
SELECT
SELECT
PS_AMT,
PS_AMT AS '支付前置金额',
PS_CONFN,
CONSUME_FLOW_NO AS 'VCC流水号',
VCC_AMT,
TXN_ID AS '交易ID',
LF_RT_FLAG,
VCC_AMT AS '放款金额',
PS_AMT-LF_RT_FLAG AS BAL
LF_RT_FLAG AS '检测金额',
PS_AMT-LF_RT_FLAG AS '检测余额',
SHOP_TYPE AS '渠道类型',
STATUS AS '交易状态',
TXN_TIME AS '放款时间'
FROM
FROM
(
(
SELECT
SELECT
VTS.TXN_ID AS TXN_ID,
sum(psts.post_amt) AS PS_AMT,
sum(psts.post_amt) AS PS_AMT,
psts.consume_flow_no AS
PS_CONFN
,
psts.consume_flow_no AS
CONSUME_FLOW_NO
,
VTS.POST_AMT AS VCC_AMT,
VTS.POST_AMT AS VCC_AMT,
IFNULL(VTS.POST_AMT, 0) AS LF_RT_FLAG
IFNULL(VTS.POST_AMT, 0) AS LF_RT_FLAG,
VTS.SHOP_TYPE AS SHOP_TYPE,
VTS.STATUS AS STATUS,
VTS.TXN_TIME AS TXN_TIME
FROM
FROM
ps_txn_summary psts
ps_txn_summary psts
LEFT JOIN vcc_txn_summary VTS ON VTS.FLOW_NO = psts.CONSUME_FLOW_NO
LEFT JOIN vcc_txn_summary VTS ON VTS.FLOW_NO = psts.CONSUME_FLOW_NO
WHERE
WHERE
psts.txn_code = 'R004'
psts.txn_code = 'R004'
AND
AND
psts.term_no =
'202108'
psts.term_no =
202109
GROUP BY
GROUP BY
psts.consume_flow_no
psts.consume_flow_no
) TEMP
) TEMP
WHERE
WHERE
PS_AMT-LF_RT_FLAG
!
= 0
PS_AMT-LF_RT_FLAG = 0
#
退款
对齐流水
#
##2、退货
对齐流水
SELECT
SELECT
PS_AMT,
PS_AMT,
PS_CONFN
,
CONCAT('#',REFUND_FLOW_NO)
,
VCC_AMT,
VCC_AMT,
LF_RT_FLAG,
LF_RT_FLAG,
PS_AMT - LF_RT_FLAG AS BAL
PS_AMT - LF_RT_FLAG AS BAL
...
@@ -993,7 +1039,7 @@ FROM
...
@@ -993,7 +1039,7 @@ FROM
(
(
SELECT
SELECT
SUM(PRS.REFUND_AMT) AS PS_AMT,
SUM(PRS.REFUND_AMT) AS PS_AMT,
PRS.REFUND_FLOW_NO AS
PS_CONFN
,
PRS.REFUND_FLOW_NO AS
REFUND_FLOW_NO
,
VRS.REFUND_AMT AS VCC_AMT,
VRS.REFUND_AMT AS VCC_AMT,
IFNULL(VRS.REFUND_AMT, 0) AS LF_RT_FLAG
IFNULL(VRS.REFUND_AMT, 0) AS LF_RT_FLAG
FROM
FROM
...
@@ -1002,21 +1048,21 @@ FROM
...
@@ -1002,21 +1048,21 @@ FROM
WHERE
WHERE
PRS.TXN_CODE = 'R092'
PRS.TXN_CODE = 'R092'
AND
AND
PRS.term_no =
'202108'
PRS.term_no =
202109
GROUP BY
GROUP BY
PRS.REFUND_FLOW_NO
PRS.REFUND_FLOW_NO
) TEMP
) TEMP
WHERE
WHERE
PS_AMT-LF_RT_FLAG
!
= 0
PS_AMT-LF_RT_FLAG = 0
#
支付
PS有VCC无
#
##3、放款
PS有VCC无
SELECT
*
FROM
SELECT
*
FROM
(SELECT DISTINCT(consume_flow_no) as cl from ps_txn_summary where txn_code = 'R004' AND TERM_NO = '202108')PSTS LEFT JOIN
(SELECT DISTINCT(consume_flow_no) as cl from ps_txn_summary where txn_code = 'R004' AND TERM_NO = '202108')PSTS LEFT JOIN
vcc_txn_summary VSTS ON PSTS.cl=VSTS.flow_no
vcc_txn_summary VSTS ON PSTS.cl=VSTS.flow_no
WHERE VSTS.FLOW_NO IS NULL order by PSTS.cl
WHERE VSTS.FLOW_NO IS NULL order by PSTS.cl
#
支付
VCC有PS无
#
##4、 放款
VCC有PS无
SELECT VSTS.FLOW_NO FROM vcc_txn_summary VSTS LEFT JOIN (
SELECT VSTS.FLOW_NO FROM vcc_txn_summary VSTS LEFT JOIN (
SELECT DISTINCT
SELECT DISTINCT
PSTS.consume_flow_no AS ps_consume_flow_no
PSTS.consume_flow_no AS ps_consume_flow_no
...
@@ -1028,9 +1074,10 @@ WHERE
...
@@ -1028,9 +1074,10 @@ WHERE
ON PSTSDC.ps_consume_flow_no=VSTS.FLOW_NO WHERE VSTS.TERM_NO = '202108' AND PSTSDC.ps_consume_flow_no IS NULL;
ON PSTSDC.ps_consume_flow_no=VSTS.FLOW_NO WHERE VSTS.TERM_NO = '202108' AND PSTSDC.ps_consume_flow_no IS NULL;
#
退款
PS有VCC无
#
##5、退货
PS有VCC无
SELECT
SELECT
*
CONCAT('#',psrs.refund_flow_no) AS refund_flow_no,
vrs.
*
FROM
FROM
(
(
SELECT DISTINCT
SELECT DISTINCT
...
@@ -1039,18 +1086,18 @@ FROM
...
@@ -1039,18 +1086,18 @@ FROM
`ps_refund_summary`
`ps_refund_summary`
WHERE
WHERE
TXN_CODE = 'R092'
TXN_CODE = 'R092'
AND
AND term_no = 202109
term_no = '202108'
) psrs
) psrs
LEFT JOIN vcc_refund_summary
as
vrs ON psrs.refund_flow_no = vrs.refund_flow_no
LEFT JOIN vcc_refund_summary
AS
vrs ON psrs.refund_flow_no = vrs.refund_flow_no
WHERE
WHERE
vrs.refund_flow_no IS NULL
vrs.refund_flow_no IS NULL
#
退款
VCC有PS无
#
##6、退货
VCC有PS无
SELECT
SELECT
*
CONCAT('#', psrs.refund_flow_no) AS refund_flow_no,
vrs.
*
FROM
FROM
(
(
SELECT DISTINCT
SELECT DISTINCT
...
@@ -1059,19 +1106,18 @@ FROM
...
@@ -1059,19 +1106,18 @@ FROM
`ps_refund_summary`
`ps_refund_summary`
WHERE
WHERE
TXN_CODE = 'R092'
TXN_CODE = 'R092'
AND
AND TERM_NO = 202109
TERM_NO = '202108'
) psrs
) psrs
right JOIN vcc_refund_summary as
vrs ON psrs.refund_flow_no = vrs.refund_flow_no
RIGHT JOIN vcc_refund_summary AS
vrs ON psrs.refund_flow_no = vrs.refund_flow_no
WHERE
WHERE
psrs.refund_flow_no IS NULL
psrs.refund_flow_no IS NULL
AND
AND VRS.TERM_NO = 202109
VRS.TERM_NO = '202108'
#会员权益
#会员权益
```
```
SELECT
SELECT
CONCAT('#', pnt.user_id) AS '用户ID',
CONCAT('#', pnt.user_id) AS '用户ID',
CONCAT('#', pnt.`level`) AS '用户等级',
CONCAT('#', bil.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#', bil.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#', bil.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#', bil.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#', bil.`SKU_NO`) AS 'SKU号',
CONCAT('#', bil.`SKU_NO`) AS 'SKU号',
...
@@ -1124,12 +1170,46 @@ END AS '支付方式',
...
@@ -1124,12 +1170,46 @@ END AS '支付方式',
bil.`PAY_TIME` AS '支付时间',
bil.`PAY_TIME` AS '支付时间',
bil.`DELIVERY_AT` AS '发货时间',
bil.`DELIVERY_AT` AS '发货时间',
bil.`ORDER_COMPLETE_TIME` AS '订单完成时间',
bil.`ORDER_COMPLETE_TIME` AS '订单完成时间',
aft.deal_status
AS '售后状态'
GROUP_CONCAT(aft.deal_status)
AS '售后状态'
FROM
FROM
t_user_benefits_point pnt
t_user_benefits_point pnt
LEFT JOIN ps_pay_sku_bill
_copy
bil ON pnt.user_id = bil.USER_ID
LEFT JOIN ps_pay_sku_bill bil ON pnt.user_id = bil.USER_ID
LEFT JOIN after_service_apply aft ON aft.order_no = bil.SUB_ORDER_NO
LEFT JOIN
t_
after_service_apply aft ON aft.order_no = bil.SUB_ORDER_NO
WHERE
WHERE
bil.ORDER_COMPLETE_TIME >= '2021-08-01 00:00:00'
bil.ORDER_COMPLETE_TIME >= '2021-09-01 00:00:00'
AND bil.ORDER_COMPLETE_TIME < '2021-09-01 00:00:00'
AND bil.ORDER_COMPLETE_TIME < '2021-10-01 00:00:00'
GROUP BY
bil.`ROOT_ORDER_NO`,
bil.`SUB_ORDER_NO`,
bil.`SKU_NO`
```
## 202109-京东售后-电商V供应链
```
SELECT
CONCAT('#',aft.order_no) AS '子订单号',
aft.refund_amount AS '退款金额',
sku.count as '购买数量',
sku.cost_price AS '供货单价/元',
CASE sku.sku_source
WHEN 1 THEN
'自营'
WHEN 2 THEN
'京东开普勒'
WHEN 3 THEN
'京东联盟'
WHEN 4 THEN
'众联'
WHEN 5 THEN
'众联企业购'
WHEN 6 THEN
'京东企业购'
END AS '商品来源',
CONCAT('#',inf.jd_order_id) AS '京东订单ID'
FROM
t_after_service_apply aft
LEFT JOIN t_jd_order_info inf ON aft.order_no = inf.order_no
LEFT JOIN t_order_sku sku ON aft.order_sku_id = sku.id
WHERE aft.deal_status=70 and
aft.order_no<>'' order by aft.created_at DESC;
```
```
\ No newline at end of file
quant-andy-server/src/test/java/cn/quant/AppTest.java
View file @
aab32719
...
@@ -37,7 +37,7 @@ public class AppTest {
...
@@ -37,7 +37,7 @@ public class AppTest {
public
void
load
()
{
public
void
load
()
{
try
{
try
{
dataLoader
.
load
(
20210
8
);
dataLoader
.
load
(
20210
9
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
...
@@ -61,6 +61,6 @@ public class AppTest {
...
@@ -61,6 +61,6 @@ public class AppTest {
@Test
@Test
public
void
billing
()
{
public
void
billing
()
{
balanceService
.
billing
(
"INST"
,
20210
7
);
balanceService
.
billing
(
"INST"
,
20210
9
);
}
}
}
}
月-电商&支付-1-SKU核计.sql
0 → 100644
View file @
aab32719
select
dw_ps_order
.
USER_UUID
AS
"用户UUID"
--用户UUID
,
MAX
(
kdsp_order
.
channel_id
)
AS
"销售渠道ID"
--销售渠道ID
,
MAX
(
kdsp_order
.
CHANNEL_NAME
)
AS
"销售渠道"
--销售渠道
,
CONCAT
(
'#'
,
if
(
MAX
(
dw_ps_order
.
PS_ORDER_NO
)
IS
NULL
,
MAX
(
kdsp_order
.
root_order_no
)
,
MAX
(
dw_ps_order
.
PS_ORDER_NO
)))
"根订单号"
,
CONCAT
(
'#'
,
kdsp_order
.
order_no
)
AS
"子订单号"
--商城子订单号
,
CONCAT
(
'#'
,
if
(
MAX
(
dw_ps_order
.
PS_SKU_NO
)
IS
NULL
,
MAX
(
kdsp_order
.
sku_no
)
,
MAX
(
dw_ps_order
.
PS_SKU_NO
)))
"SKU号"
,
MAX
(
kdsp_order
.
categroy_name1
)
AS
"商城一级品类"
--商城一级品类
,
MAX
(
kdsp_order
.
categroy_name2
)
AS
"商城二级品类"
--商城二级品类
,
MAX
(
kdsp_order
.
categroy_name3
)
AS
"商城三级品类"
--商城三级品类
,
MAX
(
kdsp_order
.
sku_name
)
AS
"商品SKU名称"
--商品SKU名称
,
MAX
(
kdsp_order
.
shop_name
)
AS
"店铺名称"
,
case
AVG
(
kdsp_order
.
sku_source
)
WHEN
1
THEN
'自营'
WHEN
2
THEN
'京东开普勒'
WHEN
3
THEN
'京东联盟'
WHEN
4
THEN
'众联'
WHEN
5
THEN
'企业购'
WHEN
6
THEN
'企业购直连'
ELSE
CAST
(
AVG
(
kdsp_order
.
sku_source
)
AS
varchar
)
END
AS
"商城SKU来源"
,
case
AVG
(
kdsp_order
.
order_status
)
WHEN
11
THEN
'待付款'
WHEN
12
THEN
'待发货'
WHEN
13
THEN
'待收货'
WHEN
14
THEN
'发货中'
WHEN
21
THEN
'订单完成'
WHEN
31
THEN
'订单已付款主动取消'
WHEN
32
THEN
'订单已付款自动取消'
WHEN
33
THEN
'订单拒收取消'
WHEN
41
THEN
'已付款主动取消退款完成订单关闭'
WHEN
42
THEN
'已付款自动取消退款完成订单关闭'
WHEN
43
THEN
'未支付用户主动取消订单关闭'
WHEN
44
THEN
'未支付超时取消订单关闭'
WHEN
45
THEN
'订单拒收退款订单取消'
WHEN
46
THEN
'订单已付款充值失败已退款订单关闭'
WHEN
51
THEN
'订单拆单关闭'
ELSE
CAST
(
AVG
(
kdsp_order
.
order_status
)
AS
varchar
)
END
AS
"商城订单状态"
,
case
AVG
(
kdsp_order
.
pay_status
)
WHEN
1
THEN
'未支付'
WHEN
2
THEN
'支付中'
WHEN
3
THEN
'支付成功'
WHEN
4
THEN
'支付失败'
WHEN
5
THEN
'待退款'
WHEN
6
THEN
'退款中'
WHEN
7
THEN
'已退款'
ELSE
CAST
(
AVG
(
kdsp_order
.
pay_status
)
AS
varchar
)
END
AS
"商城支付状态"
,
MAX
(
kdsp_order
.
order_complete_time
)
AS
"商城订单完成时间"
--商城订单完成时间
,
MAX
(
kdsp_order
.
created_at
)
AS
"商城创建时间"
--商城创建时间
,
MAX
(
kdsp_order
.
sale_count
)
AS
"商城单SKU销售数量"
--商城单SKU销售数量
,
MAX
(
kdsp_order
.
price
)
AS
"商城单SKU销售价"
--商城单SKU销售价
,
MAX
(
kdsp_order
.
cost_price
)
AS
"商城单SKU供货价"
--商城单SKU供货价
,
MAX
(
kdsp_order
.
freight_fee
)
AS
"商城SKU运费金额"
--商城SKU运费金额
,
MAX
(
kdsp_order
.
freight_deduction_fee
)
AS
"商城SKU运费抵扣金额"
--商城SKU运费抵扣金额
,
MAX
(
kdsp_order
.
cash_coupon_deduction_fee
)
AS
"商城SKU现金抵扣金额"
--商城SKU现金抵扣金额
,
MAX
(
kdsp_order
.
coupon_deduction_fee
)
AS
"商城SKU优惠券抵扣金额"
--商城SKU优惠券抵扣金额
,
MAX
(
kdsp_order
.
fr_activity_deduction_fee
)
AS
"商城SKU活动抵扣金额"
--商城SKU活动抵扣金额
,
MAX
(
kdsp_order
.
amount
)
AS
"商城SKU应付金额"
--商城SKU应付金额
,
MAX
(
kdsp_order
.
pay_amount
)
AS
"商城SKU实付金额"
--商城SKU实付金额
,
'||||'
AS
"-"
,
case
AVG
(
dw_ps_order
.
PS_TRADE_MOTHOD
)
WHEN
1
THEN
'VCC'
WHEN
2
THEN
'微信支付'
WHEN
3
THEN
'支付宝支付'
WHEN
4
THEN
'VCC&微信'
WHEN
5
THEN
'VCC&支付宝'
ELSE
CAST
(
AVG
(
dw_ps_order
.
PS_TRADE_MOTHOD
)
AS
varchar
)
END
AS
"支付方式"
,
MAX
(
dw_ps_order
.
PS_CREATED_AT
)
AS
"支付创建时间"
--支付创建时间
,
MAX
(
dw_ps_order
.
VCC_PAY_FLOW_NO
)
AS
"VCC支付流水号"
--VCC支付流水号
,
SUM
(
CAST
(
gsinf
.
amt_deduct_pay_coupon
AS
DECIMAL
(
13
,
3
))
/
100
)
AS
"支付SKU优惠抵扣金额"
--支付SKU优惠抵扣金额
,
SUM
(
dw_ps_order
.
PS_SKU_VCC_AMT
)
AS
"支付SKU VCC金额"
--支付SKU VCC金额
,
SUM
(
dw_ps_order
.
PS_SKU_WX_AMT
)
AS
"支付SKU微信金额"
--支付SKU微信金额
,
SUM
(
dw_ps_order
.
PS_SKU_ZFB_AMT
)
AS
"支付SKU支付宝金额"
--支付SKU支付宝金额
,
SUM
(
dw_ps_order
.
PS_SKU_VCC_AMT
+
dw_ps_order
.
PS_SKU_WX_AMT
+
dw_ps_order
.
PS_SKU_ZFB_AMT
)
AS
"实付金额"
,
MAX
(
kdsp_order
.
cost_price
*
kdsp_order
.
sale_count
)
AS
"供货成本"
,
CAST
((
MAX
(
kdsp_order
.
amount
)
+
MAX
(
kdsp_order
.
freight_fee
)
-
MAX
(
kdsp_order
.
freight_deduction_fee
)
-
MAX
(
kdsp_order
.
cash_coupon_deduction_fee
)
-
MAX
(
kdsp_order
.
coupon_deduction_fee
)
-
MAX
(
kdsp_order
.
fr_activity_deduction_fee
)
-
SUM
(
CAST
(
gsinf
.
amt_deduct_pay_coupon
AS
DECIMAL
(
13
,
3
))
/
100
)
-
SUM
(
dw_ps_order
.
PS_SKU_VCC_AMT
)
-
SUM
(
dw_ps_order
.
PS_SKU_WX_AMT
)
-
SUM
(
dw_ps_order
.
PS_SKU_ZFB_AMT
))
AS
DECIMAL
(
13
,
3
))
AS
"检测余额"
from
(
select
MAX
(
det
.
user_uuid
)
AS
"USER_UUID"
,
MAX
(
det
.
order_no
)
AS
"PS_ORDER_NO"
,
det
.
order_goods_id
AS
"PS_ORDER_GOODS_ID"
,
MAX
(
IF
(
det
.
trade_type
=
1
,
det
.
consume_flow_no
,
NULL
))
AS
"VCC_PAY_FLOW_NO"
,
MAX
(
IF
(
det
.
trade_type
<>
1
,
det
.
consume_flow_no
,
NULL
))
AS
"PS_PAY_FLOW_NO"
,
MAX
(
det
.
SKU_NO
)
AS
"PS_SKU_NO"
,
avg
(
det
.
trade_method
)
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,
SUM
(
case
det
.
trade_type
when
1
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_VCC_AMT"
,
SUM
(
case
det
.
trade_type
when
2
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_WX_AMT"
,
SUM
(
case
det
.
trade_type
when
3
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_ZFB_AMT"
,
MAX
(
inf
.
created_at
)
AS
"PS_CREATED_AT"
from
ods_pay_service
.
order_info
inf
left
join
ods_pay_service
.
goods_pay_detail
det
on
det
.
order_no
=
inf
.
order_no
where
inf
.
status
=
1
and
det
.
trade_type
In
(
1
,
2
,
3
)
and
inf
.
paid_time
>=
{{
start_date
}}
and
inf
.
paid_time
<
{{
end_date
}}
[[
and
inf
.
order_no
=
{{
order_no
}}
]]
-- and inf.order_no IN ('1443758033275613184','1443835979227156480','1443838616274128896')
group
by
det
.
order_goods_id
)
dw_ps_order
left
join
ods_pay_service
.
order_goods_info
gsinf
on
gsinf
.
order_no
=
dw_ps_order
.
PS_ORDER_NO
and
gsinf
.
id
=
dw_ps_order
.
PS_ORDER_GOODS_ID
left
join
(
select
oinf
.
user_id
,
case
when
oinf
.
root_order_no
IS
NULL
then
oinf
.
order_no
else
oinf
.
root_order_no
end
root_order_no
--跟单号
,
oinf
.
order_no
--子单号
,
oinf
.
order_status
--订单状态,11-待付款 12-待发货 13-待收货 14-发货中 21-订单完成 31-订单已付款主动取消 32-订单已付款自动取消 33-订单拒收取消 36-订单已付款充值失败取消 41-已付款主动取消退款完成订单关闭 42-已付款自动取消退款完成订单关闭 43-订单未支付主动取消订单关闭 44-订单超时未支付订单关闭 45-订单拒收退款订单关闭 46-订单已付款充值失败已退款订单关闭 51-订单拆单关闭
,
oinf
.
pay_status
--支付状态,1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
,
oinf
.
order_time
--下单时间
,
oinf
.
order_complete_time
--订单完成时间
,
oinf
.
pay_type
--支付方式 1-微信支付 2-信用支付 3-支付宝支付 4-组合支付(信用和微信) 5-组合支付(信用和支付宝)
,
oinf
.
pay_time
--支付时间
,
oinf
.
delivery_at
--发货时间
,
oinf
.
delivery_status
--运单状态 1-未出库 2-已出库 3-已妥投
,
oinf
.
channel_id
--销售渠道ID
,
ka
.
CHANNEL_NAME
AS
"CHANNEL_NAME"
--销售渠道
,
oinf
.
created_at
--订单创建时间
,
oinf
.
pay_amount
AS
"ORDER_PAY_AMOUNT"
--商品SKU支付金额
,
gcat1
.
CATEGROY_NAME
AS
"categroy_name1"
--一级品类
,
gcat2
.
CATEGROY_NAME
AS
"categroy_name2"
--二级品类
,
gcat3
.
CATEGROY_NAME
AS
"categroy_name3"
--三级品类
,
osku
.
id
as
"order_sku_id"
--t_order_sku主键ID
,
osku
.
sku_source
--商品来源 1-自营 2-京东开普勒 3-京东联盟 4-众联 5-企业购 6-企业购直连
,
osku
.
sku_no
--商品SKU号
,
osku
.
sku_id
--商品SKU ID
,
osku
.
sku_name
--商品SKU名称
,
sinf
.
BRAND_NAME
--商品品牌
,
osku
.
shop_id
--商品店铺ID
,
osku
.
shop_name
--商品店铺名称
,
osku
.
price
--商品销售单价
,
osku
.
cost_price
--商品成本价
,
osku
.
amount
--商品应付金额
,
osku
.
pay_amount
--商品实付金额
,
osku
.
count
as
"sale_count"
--商品单笔销售数量
,
osku
.
freight_deduction_fee
--商品运费抵扣金额
,
osku
.
coupon_deduction_fee
--商品优惠券抵扣金额
,
osku
.
cash_coupon_deduction_fee
--商品现金抵扣金额
,
osku
.
fr_activity_deduction_fee
--商品满减抵扣金额
,
osku
.
freight_fee
--商品运费金额
from
ods_kdsp
.
t_order_info
oinf
left
join
ods_kdsp
.
t_order_sku
osku
ON
oinf
.
id
=
osku
.
order_info_id
left
join
ods_kdsp
.
t_sku_info
sinf
ON
sinf
.
sku_no
=
osku
.
sku_no
left
join
ods_kdsp
.
t_goods_rear_category
gcat1
ON
gcat1
.
categroy_id
=
sinf
.
c_id1
left
join
ods_kdsp
.
t_goods_rear_category
gcat2
ON
gcat2
.
categroy_id
=
sinf
.
c_id2
left
join
ods_kdsp
.
t_goods_rear_category
gcat3
ON
gcat3
.
categroy_id
=
sinf
.
c_id3
left
join
ods_kdsp
.
t_ka_channel_info
ka
ON
CAST
(
ka
.
channel_no
as
varchar
)
=
oinf
.
channel_id
where
oinf
.
pay_amount
<>
0
and
oinf
.
order_status
NOT
IN
(
51
)
--不取拆单的
and
oinf
.
pay_status
NOT
IN
(
1
,
2
,
4
,
5
,
6
)
--不取未支付过的
and
oinf
.
created_at
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
--取向前一个月的订单信息防止跨月
)
kdsp_order
ON
kdsp_order
.
root_order_no
=
dw_ps_order
.
PS_ORDER_NO
and
kdsp_order
.
sku_no
=
dw_ps_order
.
PS_SKU_NO
group
by
dw_ps_order
.
USER_UUID
,
dw_ps_order
.
PS_ORDER_NO
,
dw_ps_order
.
PS_SKU_NO
,
kdsp_order
.
order_no
月-电商&支付-2-根订单核计.sql
0 → 100644
View file @
aab32719
select
dw_order
.
USER_UUID
AS
"用户UUID"
--支付用户UUID
,
CONCAT
(
'#'
,
CAST
(
dw_order
.
ROOT_ORDER_NO
AS
varchar
))
AS
"根单号"
--支付用户UUID
,
MAX
(
dw_order
.
MALL_ORDER_COMPLETE_TIME
)
AS
"订单完成时间"
--商城订单完成时间
,
MAX
(
dw_order
.
MALL_SKU_SALE_COUNT
)
AS
"SKU销售数量"
--商城单SKU销售数量
,
SUM
(
dw_order
.
MALL_SKU_FREIGHT_FEE
)
AS
"商城SKU运费金额"
--商城运费金额
,
SUM
(
dw_order
.
MALL_SKU_FREIGHT_DEDUCTION_FEE
)
AS
"商城运费抵扣金额"
--商城运费抵扣金额
,
SUM
(
dw_order
.
MALL_SKU_CASH_COUPON_DEDUCTION_FEE
)
AS
"商城现金抵扣金额"
--商城现金抵扣金额
,
SUM
(
dw_order
.
MALL_SKU_COUPON_DEDUCTION_FEE
)
AS
"商城优惠券抵扣金额"
--商城优惠券抵扣金额
,
SUM
(
dw_order
.
MALL_SKU_ACTIVITY_DEDUCTION_FEE
)
AS
"商城活动抵扣金额"
--商城活动抵扣金额
,
SUM
(
dw_order
.
MALL_SKU_AMT_NEED_PAY
)
AS
"商城应付金额"
--商城应付金额
,
SUM
(
dw_order
.
MALL_SKU_PAY_AMOUNT
)
AS
"商城实付金额"
--商城实付金额
,
'||||'
AS
"-"
,
MAX
(
dw_order
.
PS_CREATE_TIME
)
AS
"支付创建时间"
--支付创建时间
,
MAX
(
dw_order
.
VCC_PAY_FLOW_NO
)
AS
"VCC支付流水号"
--VCC支付流水号
,
SUM
(
dw_order
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
AS
"支付优惠抵扣金额"
--支付优惠抵扣金额
,
SUM
(
dw_order
.
PS_SKU_VCC_AMT
)
AS
"支付VCC金额"
--支付VCC金额
,
SUM
(
dw_order
.
PS_SKU_WX_AMT
)
AS
"支付微信金额"
--支付微信金额
,
SUM
(
dw_order
.
PS_SKU_ZFB_AMT
)
AS
"支付支付宝金额"
--支付支付宝金额
,
SUM
(
dw_order
.
PS_SKU_VCC_AMT
+
dw_order
.
PS_SKU_WX_AMT
+
dw_order
.
PS_SKU_ZFB_AMT
)
AS
"实付金额"
--支付实付金额
,
CAST
((
SUM
(
dw_order
.
MALL_SKU_AMT_NEED_PAY
)
+
SUM
(
dw_order
.
MALL_SKU_FREIGHT_FEE
)
-
SUM
(
dw_order
.
MALL_SKU_FREIGHT_DEDUCTION_FEE
)
-
SUM
(
dw_order
.
MALL_SKU_CASH_COUPON_DEDUCTION_FEE
)
-
SUM
(
dw_order
.
MALL_SKU_COUPON_DEDUCTION_FEE
)
-
SUM
(
dw_order
.
MALL_SKU_ACTIVITY_DEDUCTION_FEE
)
-
SUM
(
dw_order
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
-
SUM
(
dw_order
.
PS_SKU_VCC_AMT
)
-
SUM
(
dw_order
.
PS_SKU_WX_AMT
)
-
SUM
(
dw_order
.
PS_SKU_ZFB_AMT
))
AS
DECIMAL
(
13
,
3
))
AS
"检测余额"
from
(
select
dw_ps_order
.
USER_UUID
AS
"USER_UUID"
--用户UUID
,
if
(
MAX
(
dw_ps_order
.
PS_ORDER_NO
)
IS
NULL
,
MAX
(
kdsp_order
.
root_order_no
)
,
MAX
(
dw_ps_order
.
PS_ORDER_NO
))
"ROOT_ORDER_NO"
,
MAX
(
kdsp_order
.
order_complete_time
)
AS
"MALL_ORDER_COMPLETE_TIME"
--商城订单完成时间
,
MAX
(
kdsp_order
.
created_at
)
AS
"MALL_CREATE_TIME"
--商城创建时间
,
MAX
(
kdsp_order
.
sale_count
)
AS
"MALL_SKU_SALE_COUNT"
--商城单SKU销售数量
,
MAX
(
kdsp_order
.
freight_fee
)
AS
"MALL_SKU_FREIGHT_FEE"
--商城SKU运费金额
,
MAX
(
kdsp_order
.
freight_deduction_fee
)
AS
"MALL_SKU_FREIGHT_DEDUCTION_FEE"
--商城SKU运费抵扣金额
,
MAX
(
kdsp_order
.
cash_coupon_deduction_fee
)
AS
"MALL_SKU_CASH_COUPON_DEDUCTION_FEE"
--商城SKU现金抵扣金额
,
MAX
(
kdsp_order
.
coupon_deduction_fee
)
AS
"MALL_SKU_COUPON_DEDUCTION_FEE"
--商城SKU优惠券抵扣金额
,
MAX
(
kdsp_order
.
fr_activity_deduction_fee
)
AS
"MALL_SKU_ACTIVITY_DEDUCTION_FEE"
--商城SKU活动抵扣金额
,
MAX
(
kdsp_order
.
amount
)
AS
"MALL_SKU_AMT_NEED_PAY"
--商城SKU应付金额
,
MAX
(
kdsp_order
.
pay_amount
)
AS
"MALL_SKU_PAY_AMOUNT"
--商城SKU实付金额
,
MAX
(
dw_ps_order
.
VCC_PAY_FLOW_NO
)
AS
"VCC_PAY_FLOW_NO"
--VCC支付流水号
,
SUM
(
CAST
(
gsinf
.
amt_deduct_pay_coupon
AS
DECIMAL
(
13
,
3
))
/
100
)
AS
"PS_SKU_AMT_DEDUCT_PAY_COUPON"
--支付SKU优惠抵扣金额
,
SUM
(
dw_ps_order
.
PS_SKU_VCC_AMT
)
AS
"PS_SKU_VCC_AMT"
--支付SKU VCC金额
,
SUM
(
dw_ps_order
.
PS_SKU_WX_AMT
)
AS
"PS_SKU_WX_AMT"
--支付SKU微信金额
,
SUM
(
dw_ps_order
.
PS_SKU_ZFB_AMT
)
AS
"PS_SKU_ZFB_AMT"
--支付SKU支付宝金额
,
SUM
(
dw_ps_order
.
PS_SKU_VCC_AMT
+
dw_ps_order
.
PS_SKU_WX_AMT
+
dw_ps_order
.
PS_SKU_ZFB_AMT
)
AS
"PS_SKU_TOTAL_AMT"
--支付SKU实付金额
,
MAX
(
dw_ps_order
.
PS_CREATED_AT
)
AS
"PS_CREATE_TIME"
--支付创建时间
from
(
select
MAX
(
det
.
user_uuid
)
AS
"USER_UUID"
,
MAX
(
det
.
order_no
)
AS
"PS_ORDER_NO"
,
det
.
order_goods_id
AS
"PS_ORDER_GOODS_ID"
,
MAX
(
IF
(
det
.
trade_type
=
1
,
det
.
consume_flow_no
,
NULL
))
AS
"VCC_PAY_FLOW_NO"
,
MAX
(
IF
(
det
.
trade_type
<>
1
,
det
.
consume_flow_no
,
NULL
))
AS
"PS_PAY_FLOW_NO"
,
MAX
(
det
.
SKU_NO
)
AS
"PS_SKU_NO"
,
avg
(
det
.
trade_method
)
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,
SUM
(
case
det
.
trade_type
when
1
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_VCC_AMT"
,
SUM
(
case
det
.
trade_type
when
2
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_WX_AMT"
,
SUM
(
case
det
.
trade_type
when
3
then
CAST
(
det
.
trade_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_SKU_ZFB_AMT"
,
MAX
(
inf
.
created_at
)
AS
"PS_CREATED_AT"
from
ods_pay_service
.
order_info
inf
left
join
ods_pay_service
.
goods_pay_detail
det
on
det
.
order_no
=
inf
.
order_no
where
inf
.
status
=
1
and
det
.
trade_type
In
(
1
,
2
,
3
)
and
inf
.
paid_time
>=
{{
start_date
}}
and
inf
.
paid_time
<
{{
end_date
}}
-- and inf.order_no IN ('1443758033275613184'
-- ,'1443835979227156480','1443838616274128896'
-- )
group
by
det
.
order_goods_id
)
dw_ps_order
left
join
ods_pay_service
.
order_goods_info
gsinf
on
gsinf
.
order_no
=
dw_ps_order
.
PS_ORDER_NO
and
gsinf
.
id
=
dw_ps_order
.
PS_ORDER_GOODS_ID
left
join
(
select
oinf
.
user_id
,
case
when
oinf
.
root_order_no
IS
NULL
then
oinf
.
order_no
else
oinf
.
root_order_no
end
root_order_no
--跟单号
,
oinf
.
order_no
--子单号
,
oinf
.
order_status
--订单状态,11-待付款 12-待发货 13-待收货 14-发货中 21-订单完成 31-订单已付款主动取消 32-订单已付款自动取消 33-订单拒收取消 36-订单已付款充值失败取消 41-已付款主动取消退款完成订单关闭 42-已付款自动取消退款完成订单关闭 43-订单未支付主动取消订单关闭 44-订单超时未支付订单关闭 45-订单拒收退款订单关闭 46-订单已付款充值失败已退款订单关闭 51-订单拆单关闭
,
oinf
.
pay_status
--支付状态,1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
,
oinf
.
order_time
--下单时间
,
oinf
.
order_complete_time
--订单完成时间
,
oinf
.
pay_type
--支付方式 1-微信支付 2-信用支付 3-支付宝支付 4-组合支付(信用和微信) 5-组合支付(信用和支付宝)
,
oinf
.
pay_time
--支付时间
,
oinf
.
delivery_at
--发货时间
,
oinf
.
delivery_status
--运单状态 1-未出库 2-已出库 3-已妥投
,
oinf
.
channel_id
--销售渠道ID
,
ka
.
CHANNEL_NAME
AS
"CHANNEL_NAME"
--销售渠道
,
oinf
.
created_at
--订单创建时间
,
oinf
.
pay_amount
AS
"ORDER_PAY_AMOUNT"
--商品SKU支付金额
,
gcat1
.
CATEGROY_NAME
AS
"categroy_name1"
--一级品类
,
gcat2
.
CATEGROY_NAME
AS
"categroy_name2"
--二级品类
,
gcat3
.
CATEGROY_NAME
AS
"categroy_name3"
--三级品类
,
osku
.
id
as
"order_sku_id"
--t_order_sku主键ID
,
osku
.
sku_source
--商品来源 1-自营 2-京东开普勒 3-京东联盟 4-众联 5-企业购 6-企业购直连
,
osku
.
sku_no
--商品SKU号
,
osku
.
sku_id
--商品SKU ID
,
osku
.
sku_name
--商品SKU名称
,
sinf
.
BRAND_NAME
--商品品牌
,
osku
.
shop_id
--商品店铺ID
,
osku
.
shop_name
--商品店铺名称
,
osku
.
price
--商品销售单价
,
osku
.
cost_price
--商品成本价
,
osku
.
amount
--商品应付金额
,
osku
.
pay_amount
--商品实付金额
,
osku
.
count
as
"sale_count"
--商品单笔销售数量
,
osku
.
freight_deduction_fee
--商品运费抵扣金额
,
osku
.
coupon_deduction_fee
--商品优惠券抵扣金额
,
osku
.
cash_coupon_deduction_fee
--商品现金抵扣金额
,
osku
.
fr_activity_deduction_fee
--商品满减抵扣金额
,
osku
.
freight_fee
--商品运费金额
from
ods_kdsp
.
t_order_info
oinf
left
join
ods_kdsp
.
t_order_sku
osku
ON
oinf
.
id
=
osku
.
order_info_id
left
join
ods_kdsp
.
t_sku_info
sinf
ON
sinf
.
sku_no
=
osku
.
sku_no
left
join
ods_kdsp
.
t_goods_rear_category
gcat1
ON
gcat1
.
categroy_id
=
sinf
.
c_id1
left
join
ods_kdsp
.
t_goods_rear_category
gcat2
ON
gcat2
.
categroy_id
=
sinf
.
c_id2
left
join
ods_kdsp
.
t_goods_rear_category
gcat3
ON
gcat3
.
categroy_id
=
sinf
.
c_id3
left
join
ods_kdsp
.
t_ka_channel_info
ka
ON
CAST
(
ka
.
channel_no
as
varchar
)
=
oinf
.
channel_id
where
oinf
.
pay_amount
<>
0
and
oinf
.
order_status
NOT
IN
(
51
)
--不取拆单的
and
oinf
.
pay_status
NOT
IN
(
1
,
2
,
4
,
5
,
6
)
--不取未支付过的
and
oinf
.
created_at
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
--取向前一个月的订单信息防止跨月
)
kdsp_order
ON
kdsp_order
.
root_order_no
=
dw_ps_order
.
PS_ORDER_NO
and
kdsp_order
.
sku_no
=
dw_ps_order
.
PS_SKU_NO
group
by
dw_ps_order
.
USER_UUID
,
dw_ps_order
.
PS_ORDER_NO
,
dw_ps_order
.
PS_SKU_NO
,
kdsp_order
.
order_no
)
dw_order
group
by
dw_order
.
USER_UUID
,
dw_order
.
ROOT_ORDER_NO
月-电商&退款-1-SKU核计.sql
0 → 100644
View file @
aab32719
select
sku_detail
.
USER_UUID
AS
"用户UUID"
,
MAX
(
sku_detail
.
MALL_CHANNEL_ID
)
AS
"销售渠道ID"
,
MAX
(
sku_detail
.
MALL_CHANNEL_NAME
)
AS
"销售渠道"
,
CONCAT
(
'#'
,
CAST
(
MAX
(
sku_detail
.
ROOT_ORDER_NO
)
AS
varchar
))
AS
"根订单号"
,
CONCAT
(
'#'
,
CAST
(
sku_detail
.
SUB_ORDER_NO
AS
varchar
))
AS
"子订单号"
,
CONCAT
(
'#'
,
CAST
(
MAX
(
sku_detail
.
MALL_SKU_NO
)
AS
varchar
))
AS
"商城SKU号"
,
MAX
(
sku_detail
.
MALL_CATEGROY1
)
AS
"商城一级品类"
,
MAX
(
sku_detail
.
MALL_CATEGROY2
)
AS
"商城二级品类"
,
MAX
(
sku_detail
.
MALL_CATEGROY3
)
AS
"商城三级品类"
,
MAX
(
sku_detail
.
MALL_SKU_NAME
)
AS
"商城SKU名称"
,
case
AVG
(
sku_detail
.
MALL_SKU_SOURCE
)
WHEN
1
THEN
'自营'
WHEN
2
THEN
'京东开普勒'
WHEN
3
THEN
'京东联盟'
WHEN
4
THEN
'众联'
WHEN
5
THEN
'企业购'
WHEN
6
THEN
'企业购直连'
ELSE
CAST
(
AVG
(
sku_detail
.
MALL_SKU_SOURCE
)
AS
varchar
)
END
AS
"商城SKU来源"
,
MAX
(
sku_detail
.
MALL_SHOP_NAME
)
AS
"店铺名称"
,
case
AVG
(
sku_detail
.
MALL_ORDER_STATUS
)
WHEN
11
THEN
'待付款'
WHEN
12
THEN
'待发货'
WHEN
13
THEN
'待收货'
WHEN
14
THEN
'发货中'
WHEN
21
THEN
'订单完成'
WHEN
31
THEN
'订单已付款主动取消'
WHEN
32
THEN
'订单已付款自动取消'
WHEN
33
THEN
'订单拒收取消'
WHEN
41
THEN
'已付款主动取消退款完成订单关闭'
WHEN
42
THEN
'已付款自动取消退款完成订单关闭'
WHEN
43
THEN
'未支付用户主动取消订单关闭'
WHEN
44
THEN
'未支付超时取消订单关闭'
WHEN
45
THEN
'订单拒收退款订单取消'
WHEN
46
THEN
'订单已付款充值失败已退款订单关闭'
WHEN
51
THEN
'订单拆单关闭'
ELSE
CAST
(
AVG
(
sku_detail
.
MALL_ORDER_STATUS
)
AS
varchar
)
END
AS
"商城订单状态"
,
case
AVG
(
sku_detail
.
MALL_PAY_STATUS
)
WHEN
1
THEN
'未支付'
WHEN
2
THEN
'支付中'
WHEN
3
THEN
'支付成功'
WHEN
4
THEN
'支付失败'
WHEN
5
THEN
'待退款'
WHEN
6
THEN
'退款中'
WHEN
7
THEN
'已退款'
ELSE
CAST
(
AVG
(
sku_detail
.
MALL_PAY_STATUS
)
AS
varchar
)
END
AS
"商城支付状态"
,
COUNT
(
1
)
AS
"聚合总条数"
,
MAX
(
sku_detail
.
MALL_SALE_COUNT
)
AS
"商城SKU退货数量"
,
MAX
(
sku_detail
.
MALL_SKU_SALE_PRICE
)
AS
"商城SKU销售单价"
,
MAX
(
sku_detail
.
MALL_SKU_PRIME_COSTS
)
AS
"商城SKU供货单价"
,
MAX
(
sku_detail
.
MALL_SKU_FREIGHT_FEE
)
AS
"商城SKU运费金额"
,
MAX
(
sku_detail
.
MALL_SKU_FREIGHT_DEDUCTION_FEE
)
AS
"商城SKU运费抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_CASH_COUPON_DEDUCTION_FEE
)
AS
"商城SKU现金抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_COUPON_DEDUCTION_FEE
)
AS
"商城SKU优惠券抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_ACTIVITY_DEDUCTION_FEE
)
AS
"商城SKU活动抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_REFUND_AMT
)
AS
"商城SKU退款金额"
,
MAX
(
sku_detail
.
MALL_SKU_AFT_TIME
)
AS
"商城SKU售后时间"
-- ,MAX(sku_detail.MALL_ORDER_PAY_AMOUNT) AS "商城订单退款金额"
,
MAX
(
sku_detail
.
MALL_CREATED_AT
)
AS
"商城订单创建时间"
,
'||||'
AS
"-"
,
CONCAT
(
'#'
,
CAST
(
sku_detail
.
PS_ORDER_NO
AS
varchar
))
AS
"支付根订单号"
,
CONCAT
(
'#'
,
CAST
(
MAX
(
sku_detail
.
PS_REFUND_FLOW_NO
)
AS
varchar
))
AS
"支付退款流水号"
,
CONCAT
(
'#'
,
CAST
(
MAX
(
sku_detail
.
VCC_REFUND_FLOW_NO
)
AS
varchar
))
AS
"VCC退款流水号"
,
CONCAT
(
'#'
,
CAST
(
sku_detail
.
PS_SKU_NO
AS
varchar
))
AS
"支付SKU号"
,
MAX
(
sku_detail
.
PS_CREATED_AT
)
AS
"支付订单创建时间"
-- ,IF(MAX(sku_detail.MALL_CANCEL_FLAG)=1,'Y','N') AS "商城订单自动取消"
,
case
AVG
(
sku_detail
.
PS_TRADE_MOTHOD
)
WHEN
1
THEN
'VCC'
WHEN
2
THEN
'微信支付'
WHEN
3
THEN
'支付宝支付'
WHEN
4
THEN
'VCC&微信'
WHEN
5
THEN
'VCC&支付宝'
ELSE
CAST
(
AVG
(
sku_detail
.
PS_TRADE_MOTHOD
)
AS
varchar
)
END
AS
"支付方式"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_FREIGHT
)
AS
"支付记SKU运费金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_FREIGHT
)
AS
"支付记SKU运费抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON
)
AS
"支付记SKU现金抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_COUPON
)
AS
"支付记SKU优惠券抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_ACTIVITY
)
AS
"支付记SKU活动抵扣金额"
,
SUM
(
sku_detail
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
AS
"支付SKU优惠抵扣金额"
,
MAX
(
sku_detail
.
PS_SKU_VCC_AMT
)
AS
"支付SKU_VCC退款金额"
,
MAX
(
sku_detail
.
PS_SKU_WX_AMT
)
AS
"支付SKU微信退款金额"
,
MAX
(
sku_detail
.
PS_SKU_ZFB_AMT
)
AS
"支付SKU支付宝退款金额"
,
MAX
(
sku_detail
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
)
AS
"支付SKU代金券退款金额"
,
SUM
(
sku_detail
.
PS_SKU_REFUND_AMT
)
AS
"支付SKU应退金额"
,
MAX
(
sku_detail
.
PS_TOTAL_AMT
)
AS
"实退金额"
,
MAX
(
sku_detail
.
MALL_SKU_TOTAL_PRIME_COSTS
)
AS
"供货成本"
,
MAX
(
sku_detail
.
MALL_SKU_AFT_AMT
)
AS
"售后金额"
,
IF
(
MAX
(
sku_detail
.
MALL_SKU_AFT_FLAG
)
=
1
,
'Y'
,
'N'
)
AS
"售后标记"
,
CAST
(
IF
(
MAX
(
sku_detail
.
MALL_SKU_AFT_FLAG
)
=
1
,
MAX
(
sku_detail
.
MALL_SKU_AFT_AMT
)
-
SUM
(
sku_detail
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
-
SUM
(
sku_detail
.
PS_SKU_REFUND_AMT
),
0
)
AS
DECIMAL
(
13
,
3
))
AS
"检测售后余额"
,
CAST
((
SUM
(
sku_detail
.
PS_SKU_REFUND_AMT
)
-
MAX
(
sku_detail
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
)
-
MAX
(
sku_detail
.
PS_TOTAL_AMT
))
AS
DECIMAL
(
13
,
3
))
AS
"检测退款余额"
,
CAST
((
MAX
(
sku_detail
.
MALL_SKU_REFUND_AMT
)
-
SUM
(
sku_detail
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
-
MAX
(
sku_detail
.
PS_TOTAL_AMT
))
AS
DECIMAL
(
13
,
3
))
AS
"检测余额"
from
(
select
dw_ps_order
.
user_uuid
AS
"USER_UUID"
,
kdsp_order
.
root_order_no
AS
"ROOT_ORDER_NO"
,
kdsp_order
.
order_no
AS
"SUB_ORDER_NO"
,
kdsp_order
.
channel_id
AS
"MALL_CHANNEL_ID"
--商城销售渠道ID
,
kdsp_order
.
CHANNEL_NAME
AS
"MALL_CHANNEL_NAME"
--商城销售渠道
,
kdsp_order
.
SKU_NO
AS
"MALL_SKU_NO"
--商城SKU号
,
kdsp_order
.
categroy_name1
AS
"MALL_CATEGROY1"
--商城一级品类
,
kdsp_order
.
categroy_name2
AS
"MALL_CATEGROY2"
--商城二级品类
,
kdsp_order
.
categroy_name3
AS
"MALL_CATEGROY3"
--商城三级品类
,
kdsp_order
.
sku_name
AS
"MALL_SKU_NAME"
--商城SKU名称
,
kdsp_order
.
sku_source
AS
"MALL_SKU_SOURCE"
--商城商品来源
,
kdsp_order
.
shop_name
AS
"MALL_SHOP_NAME"
--店铺名称
-- ,kdsp_order.ORDER_PAY_AMOUNT AS "MALL_ORDER_PAY_AMOUNT" --商城订单退款金额
,
kdsp_order
.
order_status
AS
"MALL_ORDER_STATUS"
--商城订单状态
,
kdsp_order
.
price
AS
"MALL_SKU_SALE_PRICE"
--商城SKU销售价
,
kdsp_order
.
cost_price
AS
"MALL_SKU_PRIME_COSTS"
--商城SKU供货单价
,
kdsp_order
.
pay_status
AS
"MALL_PAY_STATUS"
--商城支付状态
,
kdsp_order
.
sale_count
AS
"MALL_SALE_COUNT"
--商城SKU退货数量
,
kdsp_order
.
freight_fee
AS
"MALL_SKU_FREIGHT_FEE"
--商城SKU运费金额
,
kdsp_order
.
freight_deduction_fee
AS
"MALL_SKU_FREIGHT_DEDUCTION_FEE"
--商城SKU运费抵扣金额
,
kdsp_order
.
cash_coupon_deduction_fee
AS
"MALL_SKU_CASH_COUPON_DEDUCTION_FEE"
--商城SKU现金抵扣金额
,
kdsp_order
.
coupon_deduction_fee
AS
"MALL_SKU_COUPON_DEDUCTION_FEE"
--商城SKU优惠券抵扣金额
,
kdsp_order
.
fr_activity_deduction_fee
AS
"MALL_SKU_ACTIVITY_DEDUCTION_FEE"
--商城SKU活动抵扣金额
,
kdsp_order
.
pay_amount
AS
"MALL_SKU_REFUND_AMT"
--商城SKU退款金额
,
kdsp_order
.
after_create_time
AS
"MALL_SKU_AFT_TIME"
--商城SKU售后时间
,
kdsp_order
.
created_at
AS
"MALL_CREATED_AT"
--商城订单创建时间
-- ,IF(kdsp_order.pay_amount=0,1,0) AS "MALL_CANCEL_FLAG" --商城支付取消标记
,
dw_ps_order
.
PS_ORDER_NO
AS
"PS_ORDER_NO"
--支付根订单号
,
dw_ps_order
.
PS_REFUND_FLOW_NO
AS
"PS_REFUND_FLOW_NO"
--支付退款流水号
,
dw_ps_order
.
VCC_REFUND_FLOW_NO
AS
"VCC_REFUND_FLOW_NO"
--VCC退款流水号
-- ,dw_ps_order.PS_REFUND_FLOW_ORDER_NO AS "PS_REFUND_FLOW_ORDER_NO"
,
dw_ps_order
.
PS_OUT_REFUND_ORDER_NO
AS
"PS_OUT_REFUND_ORDER_NO"
,
dw_ps_order
.
PS_SKU_NO
AS
"PS_SKU_NO"
--支付SKU号
,
dw_ps_order
.
PS_CREATED_AT
AS
"PS_CREATED_AT"
--支付订单创建时间
,
dw_ps_order
.
PS_TRADE_MOTHOD
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,(
CAST
(
gsinf
.
amt_freight
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_FREIGHT"
--支付SKU运费金额
,(
CAST
(
gsinf
.
amt_freight_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_FREIGHT"
--支付SKU运费抵扣金额
,(
CAST
(
gsinf
.
amt_cash_coupon_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON"
--支付SKU现金抵扣金额
,(
CAST
(
gsinf
.
amt_coupon_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_COUPON"
--支付SKU优惠券抵扣金额
,(
CAST
(
gsinf
.
amt_activity_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_ACTIVITY"
--支付SKU活动抵扣金额
,(
CAST
(
gsinf
.
amt_deduct_pay_coupon
AS
double
)
/
100
)
AS
"PS_SKU_AMT_DEDUCT_PAY_COUPON"
--支付SKU优惠抵扣金额
,
dw_ps_order
.
PS_VCC_AMT
AS
"PS_SKU_VCC_AMT"
--支付SKU_VCC退款金额
,
dw_ps_order
.
PS_WX_AMT
AS
"PS_SKU_WX_AMT"
--支付SKU微信退款金额
,
dw_ps_order
.
PS_ZFB_AMT
AS
"PS_SKU_ZFB_AMT"
--支付SKU支付宝退款金额
,
dw_ps_order
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
AS
"PS_SKU_REFUND_CASH_DEDUCT_AMOUNT"
--支付SKU代金券退款金额
,
CAST
(
gsinf
.
amt_need_pay
AS
double
)
/
100
AS
"PS_SKU_REFUND_AMT"
--支付SKU应退金额
,
dw_ps_order
.
PS_VCC_AMT
+
dw_ps_order
.
PS_WX_AMT
+
dw_ps_order
.
PS_ZFB_AMT
AS
"PS_TOTAL_AMT"
--实退金额
,
CAST
((
kdsp_order
.
cost_price
*
kdsp_order
.
sale_count
)
AS
DECIMAL
(
13
,
3
))
AS
"MALL_SKU_TOTAL_PRIME_COSTS"
--供货成本
,
kdsp_order
.
after_refund_amount
AS
"MALL_SKU_AFT_AMT"
--售后金额
,
kdsp_order
.
after_flag
AS
"MALL_SKU_AFT_FLAG"
--售后标记
from
(
select
rfd
.
user_uuid
AS
"USER_UUID"
,
rfd
.
order_no
AS
"PS_ORDER_NO"
,
COUNT
(
1
)
AS
"PS_AGG_COUNT"
,
MAX
(
IF
(
rfd
.
trade_type
=
1
,
rfd
.
refund_flow_no
,
NULL
))
AS
"VCC_REFUND_FLOW_NO"
,
MAX
(
IF
(
rfd
.
trade_type
<>
1
,
rfd
.
refund_flow_no
,
NULL
))
AS
"PS_REFUND_FLOW_NO"
-- ,MAX(rfd.refund_flow_order_no) AS "PS_REFUND_FLOW_ORDER_NO"
,
rfd
.
out_refund_order_no
AS
"PS_OUT_REFUND_ORDER_NO"
,
rfd
.
SKU_NO
AS
"PS_SKU_NO"
,
avg
(
rfd
.
trade_method
)
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,
MAX
(
case
rfd
.
trade_type
when
1
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_VCC_AMT"
,
MAX
(
case
rfd
.
trade_type
when
2
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_WX_AMT"
,
MAX
(
case
rfd
.
trade_type
when
3
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_ZFB_AMT"
,
MAX
(
IF
(
rfd
.
refund_cash_deduct_amount
IS
NULL
,
0
,
CAST
(
rfd
.
refund_cash_deduct_amount
AS
DECIMAL
(
13
,
3
))
/
100
))
AS
"PS_SKU_REFUND_CASH_DEDUCT_AMOUNT"
,
MAX
(
rfd
.
created_at
)
AS
"PS_CREATED_AT"
from
ods_pay_service
.
log_refund_request
rfd
where
rfd
.
status
=
3
and
rfd
.
CREATED_AT
>=
{{
start_date
}}
and
rfd
.
CREATED_AT
<
{{
end_date
}}
[[
and
rfd
.
order_no
=
{{
order_no
}}
]]
-- and rfd.order_no IN (
-- '1448781901853765632', '1400349830152372224', '1454785610022817792', '1449762235525353472', '1447734934503657472'
-- ,'1454635102310215680','1454469112154750976',
-- '1440113196169129984','1433066098214969344'
-- '1446499166695075840','1447587623903395840','1450808948969103360'
-- )
group
by
rfd
.
user_uuid
,
rfd
.
order_no
,
rfd
.
out_refund_order_no
,
rfd
.
SKU_NO
)
dw_ps_order
left
join
ods_pay_service
.
order_goods_info
gsinf
on
gsinf
.
order_no
=
dw_ps_order
.
PS_ORDER_NO
and
gsinf
.
SKU_NO
=
dw_ps_order
.
PS_SKU_NO
left
join
(
select
oinf
.
user_id
,
case
when
oinf
.
root_order_no
IS
NULL
then
oinf
.
order_no
else
oinf
.
root_order_no
end
root_order_no
--跟单号
,
oinf
.
order_no
--子单号
,
oinf
.
order_status
--订单状态,11-待付款 12-待发货 13-待收货 14-发货中 21-订单完成 31-订单已付款主动取消 32-订单已付款自动取消 33-订单拒收取消 36-订单已付款充值失败取消 41-已付款主动取消退款完成订单关闭 42-已付款自动取消退款完成订单关闭 43-订单未支付主动取消订单关闭 44-订单超时未支付订单关闭 45-订单拒收退款订单关闭 46-订单已付款充值失败已退款订单关闭 51-订单拆单关闭
,
oinf
.
pay_status
--支付状态,1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
,
oinf
.
order_time
--下单时间
,
oinf
.
order_complete_time
--订单完成时间
,
oinf
.
pay_type
--支付方式 1-微信支付 2-信用支付 3-支付宝支付 4-组合支付(信用和微信) 5-组合支付(信用和支付宝)
,
oinf
.
pay_time
--支付时间
,
oinf
.
delivery_at
--发货时间
,
oinf
.
delivery_status
--运单状态 1-未出库 2-已出库 3-已妥投
,
oinf
.
channel_id
--销售渠道ID
,
ka
.
CHANNEL_NAME
AS
"CHANNEL_NAME"
--销售渠道
,
oinf
.
created_at
--订单创建时间
,
oinf
.
pay_amount
AS
"ORDER_PAY_AMOUNT"
--商品SKU支付金额
,
gcat1
.
CATEGROY_NAME
AS
"categroy_name1"
--一级品类
,
gcat2
.
CATEGROY_NAME
AS
"categroy_name2"
--二级品类
,
gcat3
.
CATEGROY_NAME
AS
"categroy_name3"
--三级品类
,
osku
.
id
as
"order_sku_id"
--t_order_sku主键ID
,
osku
.
sku_source
--商品来源 1-自营 2-京东开普勒 3-京东联盟 4-众联 5-企业购 6-企业购直连
,
osku
.
sku_no
--商品SKU号
,
osku
.
sku_id
--商品SKU ID
,
osku
.
sku_name
--商品SKU名称
,
sinf
.
BRAND_NAME
--商品品牌
,
osku
.
shop_id
--商品店铺ID
,
osku
.
shop_name
--商品店铺名称
,
osku
.
price
--商品销售单价
,
osku
.
cost_price
--商品成本价
,
osku
.
amount
--商品应付金额
,
osku
.
pay_amount
--商品实付金额
,
osku
.
count
as
"sale_count"
--商品单笔销售数量
,
osku
.
freight_deduction_fee
--商品运费抵扣金额
,
osku
.
coupon_deduction_fee
--商品优惠券抵扣金额
,
osku
.
cash_coupon_deduction_fee
--商品现金抵扣金额
,
osku
.
fr_activity_deduction_fee
--商品满减抵扣金额
,
osku
.
freight_fee
--商品运费金额
,
IF
(
aft
.
order_no
IS
NOT
NULL
,
1
,
0
)
as
"after_flag"
--售后标记
,
IF
(
aft
.
refund_amount
IS
NOT
NULL
,
aft
.
refund_amount
,
0
)
as
"after_refund_amount"
--售后金额
,
aft
.
created_at
as
"after_create_time"
--售后时间
from
ods_kdsp
.
t_order_info
oinf
left
join
ods_kdsp
.
t_order_sku
osku
ON
oinf
.
id
=
osku
.
order_info_id
left
join
ods_kdsp
.
t_sku_info
sinf
ON
sinf
.
sku_no
=
osku
.
sku_no
left
join
ods_kdsp
.
t_goods_rear_category
gcat1
ON
gcat1
.
categroy_id
=
sinf
.
c_id1
left
join
ods_kdsp
.
t_goods_rear_category
gcat2
ON
gcat2
.
categroy_id
=
sinf
.
c_id2
left
join
ods_kdsp
.
t_goods_rear_category
gcat3
ON
gcat3
.
categroy_id
=
sinf
.
c_id3
left
join
ods_kdsp
.
t_ka_channel_info
ka
ON
CAST
(
ka
.
channel_no
as
varchar
)
=
oinf
.
channel_id
left
join
(
select
after
.
*
from
ods_kdsp
.
t_after_service_apply
after
where
after
.
deal_status
=
70
and
after
.
CREATED_AT
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
and
after
.
CREATED_AT
<
{{
end_date
}}
)
aft
ON
aft
.
order_no
=
osku
.
order_no
and
aft
.
order_sku_id
=
osku
.
id
where
oinf
.
pay_amount
<>
0
and
oinf
.
order_status
NOT
IN
(
51
)
--不取拆单的
-- and oinf.pay_status IN(3,7) --1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
and
oinf
.
created_at
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
--取向前一个月的订单信息防止跨月
and
(
oinf
.
pay_status
=
7
OR
(
oinf
.
pay_status
=
3
and
aft
.
order_no
IS
NOT
NULL
))
)
kdsp_order
ON
kdsp_order
.
root_order_no
=
dw_ps_order
.
PS_ORDER_NO
and
kdsp_order
.
sku_no
=
dw_ps_order
.
PS_SKU_NO
)
sku_detail
group
by
sku_detail
.
USER_UUID
,
sku_detail
.
PS_ORDER_NO
,
sku_detail
.
PS_SKU_NO
,
sku_detail
.
SUB_ORDER_NO
order
by
sku_detail
.
PS_ORDER_NO
,
sku_detail
.
SUB_ORDER_NO
,
sku_detail
.
PS_SKU_NO
月-电商&退款-2-根订单核计.sql
0 → 100644
View file @
aab32719
select
dw_order
.
USER_UUID
AS
"用户UUID"
,
CONCAT
(
'#'
,
CAST
(
MAX
(
dw_order
.
ROOT_ORDER_NO
)
AS
varchar
))
AS
"根订单号"
,
COUNT
(
1
)
AS
"聚合总条数"
,
SUM
(
dw_order
.
MALL_SALE_COUNT
)
AS
"商城退货数量"
,
SUM
(
dw_order
.
MALL_SKU_FREIGHT_FEE
)
AS
"商城运费金额"
,
SUM
(
dw_order
.
MALL_SKU_FREIGHT_DEDUCTION_FEE
)
AS
"商城运费抵扣金额"
,
SUM
(
dw_order
.
MALL_SKU_CASH_COUPON_DEDUCTION_FEE
)
AS
"商城现金抵扣金额"
,
SUM
(
dw_order
.
MALL_SKU_COUPON_DEDUCTION_FEE
)
AS
"商城优惠券抵扣金额"
,
SUM
(
dw_order
.
MALL_SKU_ACTIVITY_DEDUCTION_FEE
)
AS
"商城活动抵扣金额"
,
SUM
(
dw_order
.
MALL_SKU_REFUND_AMT
)
AS
"商城退款金额"
,
MAX
(
dw_order
.
MALL_CREATED_AT
)
AS
"商城最早创建时间"
,
MIN
(
dw_order
.
MALL_CREATED_AT
)
AS
"商城最后创建时间"
,
'||||'
AS
"-"
,
CONCAT
(
'#'
,
CAST
(
dw_order
.
PS_ORDER_NO
AS
varchar
))
AS
"支付根订单号"
,
SUM
(
dw_order
.
PS_MALL_SKU_AMT_FREIGHT
)
AS
"支付记运费金额"
,
SUM
(
dw_order
.
PS_MALL_SKU_AMT_DEDUCT_FREIGHT
)
AS
"支付记运费抵扣金额"
,
SUM
(
dw_order
.
PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON
)
AS
"支付记现金抵扣金额"
,
SUM
(
dw_order
.
PS_MALL_SKU_AMT_DEDUCT_COUPON
)
AS
"支付记优惠券抵扣金额"
,
SUM
(
dw_order
.
PS_MALL_SKU_AMT_DEDUCT_ACTIVITY
)
AS
"支付记活动抵扣金额"
,
SUM
(
dw_order
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
AS
"支付优惠抵扣金额"
,
case
AVG
(
dw_order
.
PS_TRADE_MOTHOD
)
WHEN
1
THEN
'VCC'
WHEN
2
THEN
'微信支付'
WHEN
3
THEN
'支付宝支付'
WHEN
4
THEN
'VCC&微信'
WHEN
5
THEN
'VCC&支付宝'
ELSE
CAST
(
AVG
(
dw_order
.
PS_TRADE_MOTHOD
)
AS
varchar
)
END
AS
"支付方式"
,
SUM
(
dw_order
.
PS_SKU_VCC_AMT
)
AS
"支付VCC退款金额"
,
SUM
(
dw_order
.
PS_SKU_WX_AMT
)
AS
"支付微信退款金额"
,
SUM
(
dw_order
.
PS_SKU_ZFB_AMT
)
AS
"支付支付宝退款金额"
,
SUM
(
dw_order
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
)
AS
"支付代金券退款金额"
,
SUM
(
dw_order
.
PS_SKU_REFUND_AMT
)
AS
"支付应退金额"
,
SUM
(
dw_order
.
PS_TOTAL_AMT
)
AS
"实退金额"
,
CAST
((
SUM
(
dw_order
.
MALL_SKU_REFUND_AMT
)
-
SUM
(
dw_order
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
-
SUM
(
dw_order
.
PS_TOTAL_AMT
))
AS
DECIMAL
(
13
,
3
))
AS
"检测余额"
from
(
select
sku_detail
.
USER_UUID
AS
"USER_UUID"
--"用户UUID"
,
MAX
(
sku_detail
.
ROOT_ORDER_NO
)
AS
"ROOT_ORDER_NO"
--"根订单号"
,
MAX
(
sku_detail
.
MALL_SALE_COUNT
)
AS
"MALL_SALE_COUNT"
--"商城订单销售SKU数量"
,
MAX
(
sku_detail
.
MALL_SKU_PRIME_COSTS
)
AS
"MALL_SKU_PRIME_COSTS"
--"商城SKU供货价"
,
MAX
(
sku_detail
.
MALL_SKU_SALE_PRICE
)
AS
"MALL_SKU_SALE_PRICE"
--"商城SKU销售价"
,
MAX
(
sku_detail
.
MALL_SKU_FREIGHT_FEE
)
AS
"MALL_SKU_FREIGHT_FEE"
--"商城SKU运费金额"
,
MAX
(
sku_detail
.
MALL_SKU_FREIGHT_DEDUCTION_FEE
)
AS
"MALL_SKU_FREIGHT_DEDUCTION_FEE"
--"商城SKU运费抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_CASH_COUPON_DEDUCTION_FEE
)
AS
"MALL_SKU_CASH_COUPON_DEDUCTION_FEE"
--"商城SKU现金抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_COUPON_DEDUCTION_FEE
)
AS
"MALL_SKU_COUPON_DEDUCTION_FEE"
--"商城SKU优惠券抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_ACTIVITY_DEDUCTION_FEE
)
AS
"MALL_SKU_ACTIVITY_DEDUCTION_FEE"
--"商城SKU活动抵扣金额"
,
MAX
(
sku_detail
.
MALL_SKU_REFUND_AMT
)
AS
"MALL_SKU_REFUND_AMT"
--"商城SKU退款金额"
,
MAX
(
sku_detail
.
MALL_CREATED_AT
)
AS
"MALL_CREATED_AT"
--"商城订单创建时间"
,
sku_detail
.
PS_ORDER_NO
AS
"PS_ORDER_NO"
--"支付根订单号"
,
sku_detail
.
PS_SKU_NO
AS
"PS_SKU_NO"
--"支付SKU号"
,
AVG
(
sku_detail
.
PS_TRADE_MOTHOD
)
AS
"PS_TRADE_MOTHOD"
--"支付方式"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_FREIGHT
)
AS
"PS_MALL_SKU_AMT_FREIGHT"
--"支付记SKU运费金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_FREIGHT
)
AS
"PS_MALL_SKU_AMT_DEDUCT_FREIGHT"
--"支付记SKU运费抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON
)
AS
"PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON"
--"支付记SKU现金抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_COUPON
)
AS
"PS_MALL_SKU_AMT_DEDUCT_COUPON"
--"支付记SKU优惠券抵扣金额"
,
SUM
(
sku_detail
.
PS_MALL_SKU_AMT_DEDUCT_ACTIVITY
)
AS
"PS_MALL_SKU_AMT_DEDUCT_ACTIVITY"
--"支付记SKU活动抵扣金额"
,
SUM
(
sku_detail
.
PS_SKU_AMT_DEDUCT_PAY_COUPON
)
AS
"PS_SKU_AMT_DEDUCT_PAY_COUPON"
--"支付SKU优惠抵扣金额"
,
MAX
(
sku_detail
.
PS_SKU_VCC_AMT
)
AS
"PS_SKU_VCC_AMT"
--"支付SKU_VCC退款金额"
,
MAX
(
sku_detail
.
PS_SKU_WX_AMT
)
AS
"PS_SKU_WX_AMT"
--"支付SKU微信退款金额"
,
MAX
(
sku_detail
.
PS_SKU_ZFB_AMT
)
AS
"PS_SKU_ZFB_AMT"
--"支付SKU支付宝退款金额"
,
MAX
(
sku_detail
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
)
AS
"PS_SKU_REFUND_CASH_DEDUCT_AMOUNT"
--"支付SKU代金券退款金额"
,
SUM
(
sku_detail
.
PS_SKU_REFUND_AMT
)
AS
"PS_SKU_REFUND_AMT"
--"支付SKU应退金额"
,
MAX
(
sku_detail
.
PS_TOTAL_AMT
)
AS
"PS_TOTAL_AMT"
--"支付SKU实退金额"
,
MAX
(
sku_detail
.
PS_CREATED_AT
)
AS
"PS_CREATED_AT"
--"支付订单创建时间"
from
(
select
dw_ps_order
.
user_uuid
AS
"USER_UUID"
,
kdsp_order
.
root_order_no
AS
"ROOT_ORDER_NO"
,
kdsp_order
.
order_no
AS
"SUB_ORDER_NO"
,
kdsp_order
.
channel_id
AS
"MALL_CHANNEL_ID"
--商城销售渠道ID
,
kdsp_order
.
CHANNEL_NAME
AS
"MALL_CHANNEL_NAME"
--商城销售渠道
,
kdsp_order
.
SKU_NO
AS
"MALL_SKU_NO"
--商城SKU号
,
kdsp_order
.
categroy_name1
AS
"MALL_CATEGROY1"
--商城一级品类
,
kdsp_order
.
categroy_name2
AS
"MALL_CATEGROY2"
--商城二级品类
,
kdsp_order
.
categroy_name3
AS
"MALL_CATEGROY3"
--商城三级品类
,
kdsp_order
.
sku_name
AS
"MALL_SKU_NAME"
--商城SKU名称
,
kdsp_order
.
sku_source
AS
"MALL_SKU_SOURCE"
--商城商品来源
-- ,kdsp_order.ORDER_PAY_AMOUNT AS "MALL_ORDER_PAY_AMOUNT" --商城订单退款金额
,
kdsp_order
.
order_status
AS
"MALL_ORDER_STATUS"
--商城订单状态
,
kdsp_order
.
price
AS
"MALL_SKU_SALE_PRICE"
--商城SKU销售价
,
kdsp_order
.
cost_price
AS
"MALL_SKU_PRIME_COSTS"
--商城SKU供货单价
,
kdsp_order
.
pay_status
AS
"MALL_PAY_STATUS"
--商城支付状态
,
kdsp_order
.
sale_count
AS
"MALL_SALE_COUNT"
--商城SKU退货数量
,
kdsp_order
.
freight_fee
AS
"MALL_SKU_FREIGHT_FEE"
--商城SKU运费金额
,
kdsp_order
.
freight_deduction_fee
AS
"MALL_SKU_FREIGHT_DEDUCTION_FEE"
--商城SKU运费抵扣金额
,
kdsp_order
.
cash_coupon_deduction_fee
AS
"MALL_SKU_CASH_COUPON_DEDUCTION_FEE"
--商城SKU现金抵扣金额
,
kdsp_order
.
coupon_deduction_fee
AS
"MALL_SKU_COUPON_DEDUCTION_FEE"
--商城SKU优惠券抵扣金额
,
kdsp_order
.
fr_activity_deduction_fee
AS
"MALL_SKU_ACTIVITY_DEDUCTION_FEE"
--商城SKU活动抵扣金额
,
kdsp_order
.
pay_amount
AS
"MALL_SKU_REFUND_AMT"
--商城SKU退款金额
,
kdsp_order
.
after_create_time
AS
"MALL_SKU_AFT_TIME"
--商城SKU售后时间
,
kdsp_order
.
created_at
AS
"MALL_CREATED_AT"
--商城订单创建时间
-- ,IF(kdsp_order.pay_amount=0,1,0) AS "MALL_CANCEL_FLAG" --商城支付取消标记
,
dw_ps_order
.
PS_ORDER_NO
AS
"PS_ORDER_NO"
--支付根订单号
,
dw_ps_order
.
PS_REFUND_FLOW_NO
AS
"PS_REFUND_FLOW_NO"
--支付退款流水号
,
dw_ps_order
.
VCC_REFUND_FLOW_NO
AS
"VCC_REFUND_FLOW_NO"
--VCC退款流水号
-- ,dw_ps_order.PS_REFUND_FLOW_ORDER_NO AS "PS_REFUND_FLOW_ORDER_NO"
,
dw_ps_order
.
PS_OUT_REFUND_ORDER_NO
AS
"PS_OUT_REFUND_ORDER_NO"
,
dw_ps_order
.
PS_SKU_NO
AS
"PS_SKU_NO"
--支付SKU号
,
dw_ps_order
.
PS_CREATED_AT
AS
"PS_CREATED_AT"
--支付订单创建时间
,
dw_ps_order
.
PS_TRADE_MOTHOD
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,(
CAST
(
gsinf
.
amt_freight
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_FREIGHT"
--支付SKU运费金额
,(
CAST
(
gsinf
.
amt_freight_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_FREIGHT"
--支付SKU运费抵扣金额
,(
CAST
(
gsinf
.
amt_cash_coupon_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_CASH_COUPON"
--支付SKU现金抵扣金额
,(
CAST
(
gsinf
.
amt_coupon_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_COUPON"
--支付SKU优惠券抵扣金额
,(
CAST
(
gsinf
.
amt_activity_deduct
AS
double
)
/
100
)
AS
"PS_MALL_SKU_AMT_DEDUCT_ACTIVITY"
--支付SKU活动抵扣金额
,(
CAST
(
gsinf
.
amt_deduct_pay_coupon
AS
double
)
/
100
)
AS
"PS_SKU_AMT_DEDUCT_PAY_COUPON"
--支付SKU优惠抵扣金额
,
dw_ps_order
.
PS_VCC_AMT
AS
"PS_SKU_VCC_AMT"
--支付SKU_VCC退款金额
,
dw_ps_order
.
PS_WX_AMT
AS
"PS_SKU_WX_AMT"
--支付SKU微信退款金额
,
dw_ps_order
.
PS_ZFB_AMT
AS
"PS_SKU_ZFB_AMT"
--支付SKU支付宝退款金额
,
dw_ps_order
.
PS_SKU_REFUND_CASH_DEDUCT_AMOUNT
AS
"PS_SKU_REFUND_CASH_DEDUCT_AMOUNT"
--支付SKU代金券退款金额
,
CAST
(
gsinf
.
amt_need_pay
AS
double
)
/
100
AS
"PS_SKU_REFUND_AMT"
--支付SKU应退金额
,
dw_ps_order
.
PS_VCC_AMT
+
dw_ps_order
.
PS_WX_AMT
+
dw_ps_order
.
PS_ZFB_AMT
AS
"PS_TOTAL_AMT"
--实退金额
,
CAST
((
kdsp_order
.
cost_price
*
kdsp_order
.
sale_count
)
AS
DECIMAL
(
13
,
3
))
AS
"MALL_SKU_TOTAL_PRIME_COSTS"
--供货成本
,
kdsp_order
.
after_refund_amount
AS
"MALL_SKU_AFT_AMT"
--售后金额
,
kdsp_order
.
after_flag
AS
"MALL_SKU_AFT_FLAG"
--售后标记
from
(
select
rfd
.
user_uuid
AS
"USER_UUID"
,
rfd
.
order_no
AS
"PS_ORDER_NO"
,
COUNT
(
1
)
AS
"PS_AGG_COUNT"
,
MAX
(
IF
(
rfd
.
trade_type
=
1
,
rfd
.
refund_flow_no
,
NULL
))
AS
"VCC_REFUND_FLOW_NO"
,
MAX
(
IF
(
rfd
.
trade_type
<>
1
,
rfd
.
refund_flow_no
,
NULL
))
AS
"PS_REFUND_FLOW_NO"
-- ,MAX(rfd.refund_flow_order_no) AS "PS_REFUND_FLOW_ORDER_NO"
,
rfd
.
out_refund_order_no
AS
"PS_OUT_REFUND_ORDER_NO"
,
rfd
.
SKU_NO
AS
"PS_SKU_NO"
,
avg
(
rfd
.
trade_method
)
AS
"PS_TRADE_MOTHOD"
--1:VCC,2:微信支付 ,3:支付宝支付, 4:VCC+WX,5:VCC+AliPay
,
MAX
(
case
rfd
.
trade_type
when
1
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_VCC_AMT"
,
MAX
(
case
rfd
.
trade_type
when
2
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_WX_AMT"
,
MAX
(
case
rfd
.
trade_type
when
3
then
CAST
(
rfd
.
refund_amount
AS
DECIMAL
(
13
,
3
))
/
100
else
0
.
0
end
)
AS
"PS_ZFB_AMT"
,
MAX
(
IF
(
rfd
.
refund_cash_deduct_amount
IS
NULL
,
0
,
CAST
(
rfd
.
refund_cash_deduct_amount
AS
DECIMAL
(
13
,
3
))
/
100
))
AS
"PS_SKU_REFUND_CASH_DEDUCT_AMOUNT"
,
MAX
(
rfd
.
created_at
)
AS
"PS_CREATED_AT"
from
ods_pay_service
.
log_refund_request
rfd
where
rfd
.
status
=
3
and
rfd
.
CREATED_AT
>=
{{
start_date
}}
and
rfd
.
CREATED_AT
<
{{
end_date
}}
[[
and
rfd
.
order_no
=
{{
order_no
}}
]]
-- and rfd.order_no IN (
-- '1448781901853765632', '1400349830152372224', '1454785610022817792', '1449762235525353472', '1447734934503657472',
-- ,'1454635102310215680','1454469112154750976',
-- '1440113196169129984'
-- '1446499166695075840','1447587623903395840','1450808948969103360'
-- )
group
by
rfd
.
user_uuid
,
rfd
.
order_no
,
rfd
.
out_refund_order_no
,
rfd
.
SKU_NO
)
dw_ps_order
left
join
ods_pay_service
.
order_goods_info
gsinf
on
gsinf
.
order_no
=
dw_ps_order
.
PS_ORDER_NO
and
gsinf
.
SKU_NO
=
dw_ps_order
.
PS_SKU_NO
left
join
(
select
oinf
.
user_id
,
case
when
oinf
.
root_order_no
IS
NULL
then
oinf
.
order_no
else
oinf
.
root_order_no
end
root_order_no
--跟单号
,
oinf
.
order_no
--子单号
,
oinf
.
order_status
--订单状态,11-待付款 12-待发货 13-待收货 14-发货中 21-订单完成 31-订单已付款主动取消 32-订单已付款自动取消 33-订单拒收取消 36-订单已付款充值失败取消 41-已付款主动取消退款完成订单关闭 42-已付款自动取消退款完成订单关闭 43-订单未支付主动取消订单关闭 44-订单超时未支付订单关闭 45-订单拒收退款订单关闭 46-订单已付款充值失败已退款订单关闭 51-订单拆单关闭
,
oinf
.
pay_status
--支付状态,1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
,
oinf
.
order_time
--下单时间
,
oinf
.
order_complete_time
--订单完成时间
,
oinf
.
pay_type
--支付方式 1-微信支付 2-信用支付 3-支付宝支付 4-组合支付(信用和微信) 5-组合支付(信用和支付宝)
,
oinf
.
pay_time
--支付时间
,
oinf
.
delivery_at
--发货时间
,
oinf
.
delivery_status
--运单状态 1-未出库 2-已出库 3-已妥投
,
oinf
.
channel_id
--销售渠道ID
,
ka
.
CHANNEL_NAME
AS
"CHANNEL_NAME"
--销售渠道
,
oinf
.
created_at
--订单创建时间
,
oinf
.
pay_amount
AS
"ORDER_PAY_AMOUNT"
--商品SKU支付金额
,
gcat1
.
CATEGROY_NAME
AS
"categroy_name1"
--一级品类
,
gcat2
.
CATEGROY_NAME
AS
"categroy_name2"
--二级品类
,
gcat3
.
CATEGROY_NAME
AS
"categroy_name3"
--三级品类
,
osku
.
id
as
"order_sku_id"
--t_order_sku主键ID
,
osku
.
sku_source
--商品来源 1-自营 2-京东开普勒 3-京东联盟 4-众联 5-企业购 6-企业购直连
,
osku
.
sku_no
--商品SKU号
,
osku
.
sku_id
--商品SKU ID
,
osku
.
sku_name
--商品SKU名称
,
sinf
.
BRAND_NAME
--商品品牌
,
osku
.
shop_id
--商品店铺ID
,
osku
.
shop_name
--商品店铺名称
,
osku
.
price
--商品销售单价
,
osku
.
cost_price
--商品成本价
,
osku
.
amount
--商品应付金额
,
osku
.
pay_amount
--商品实付金额
,
osku
.
count
as
"sale_count"
--商品单笔销售数量
,
osku
.
freight_deduction_fee
--商品运费抵扣金额
,
osku
.
coupon_deduction_fee
--商品优惠券抵扣金额
,
osku
.
cash_coupon_deduction_fee
--商品现金抵扣金额
,
osku
.
fr_activity_deduction_fee
--商品满减抵扣金额
,
osku
.
freight_fee
--商品运费金额
,
IF
(
aft
.
order_no
IS
NOT
NULL
,
1
,
0
)
as
"after_flag"
--售后标记
,
IF
(
aft
.
refund_amount
IS
NOT
NULL
,
aft
.
refund_amount
,
0
)
as
"after_refund_amount"
--售后金额
,
aft
.
created_at
as
"after_create_time"
--售后时间
from
ods_kdsp
.
t_order_info
oinf
left
join
ods_kdsp
.
t_order_sku
osku
ON
oinf
.
id
=
osku
.
order_info_id
left
join
ods_kdsp
.
t_sku_info
sinf
ON
sinf
.
sku_no
=
osku
.
sku_no
left
join
ods_kdsp
.
t_goods_rear_category
gcat1
ON
gcat1
.
categroy_id
=
sinf
.
c_id1
left
join
ods_kdsp
.
t_goods_rear_category
gcat2
ON
gcat2
.
categroy_id
=
sinf
.
c_id2
left
join
ods_kdsp
.
t_goods_rear_category
gcat3
ON
gcat3
.
categroy_id
=
sinf
.
c_id3
left
join
ods_kdsp
.
t_ka_channel_info
ka
ON
CAST
(
ka
.
channel_no
as
varchar
)
=
oinf
.
channel_id
left
join
(
select
after
.
*
from
ods_kdsp
.
t_after_service_apply
after
where
after
.
deal_status
=
70
and
after
.
CREATED_AT
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
and
after
.
CREATED_AT
<
{{
end_date
}}
)
aft
ON
aft
.
order_no
=
osku
.
order_no
and
aft
.
order_sku_id
=
osku
.
id
where
oinf
.
pay_amount
<>
0
and
oinf
.
order_status
NOT
IN
(
51
)
--不取拆单的
-- and oinf.pay_status IN(3,7) --1-未支付 2-支付中 3-支付成功 4-支付失败 5-待退款 6-退款中 7-已退款
and
oinf
.
created_at
>=
DATE_ADD
(
'MONTH'
,
-
1
,
{{
start_date
}}
)
--取向前一个月的订单信息防止跨月
and
(
oinf
.
pay_status
=
7
OR
(
oinf
.
pay_status
=
3
and
aft
.
order_no
IS
NOT
NULL
))
)
kdsp_order
ON
kdsp_order
.
root_order_no
=
dw_ps_order
.
PS_ORDER_NO
and
kdsp_order
.
sku_no
=
dw_ps_order
.
PS_SKU_NO
)
sku_detail
group
by
sku_detail
.
USER_UUID
,
sku_detail
.
PS_ORDER_NO
,
sku_detail
.
PS_SKU_NO
,
sku_detail
.
SUB_ORDER_NO
)
dw_order
group
by
dw_order
.
USER_UUID
,
dw_order
.
PS_ORDER_NO
order
by
dw_order
.
USER_UUID
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment