Commit aab32719 authored by Administrator's avatar Administrator

创建项目

parent 16dd7589
#电商财务对账
##一、元数据导出
###1、order_goods_info
###1、pay_serivce.order_goods_info
```
select
id
,order_no
,order_no
,sku_no
,sku_name
,cast(prime_costs AS DECIMAL(10,3))/ 100 AS prime_costs
......@@ -21,65 +21,76 @@ select
,updated_at
from
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
*
from
ods_kdsp.t_order_sku
t_order_sku
where
date_format(created_at,'%Y-%m') = '2021-08'
date_format(created_at,'%Y-%m') = '2021-09'
```
###3、t_order_info
###3、kdsp.t_order_info
```
#用户pay_time作为支付指标
select
*
from
ods_kdsp.t_order_info
t_order_info
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
*
from
ods_kdsp.t_sku_info
t_sku_info
where
date_format(created_at,'%Y-%m') = '2021-08'
date_format(created_at,'%Y-%m') = '2021-09'
```
###5、t_goods_rear_category
###5、kdsp.t_goods_rear_category
```
select
*
from
ods_kdsp.t_goods_rear_category
t_goods_rear_category
where
date_format(created_at,'%Y-%m') = '2021-08'
date_format(created_at,'%Y-%m') = '2021-09'
```
###6、t_jd_order_info
###6、kdsp.t_jd_order_info
```
select
*
from
ods_kdsp.t_jd_order_info
t_jd_order_info
where
date_format(created_at,'%Y-%m') = '2021-08'
```
###7、after_service_apply
###7、kdsp.t_after_service_apply
```
select
*
from
ods_kdsp.t_after_service_apply
t_after_service_apply
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
......@@ -88,7 +99,7 @@ select
a.order_no
,a.user_uuid
,a.flow_no
,cast(a.order_goods_id as varchar) as order_goods_id
,a.order_goods_id as order_goods_id
,case
when a.trade_type = 2 then 'R002'
when a.trade_type = 3 then 'R003'
......@@ -97,21 +108,52 @@ select
,a.sku_no
,a.flow_order_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
from
ods_pay_service.goods_pay_detail a
goods_pay_detail a
left join
ods_pay_service.order_info b
order_info b
on
a.order_no = b.order_no
where
1=1
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
psts.`TERM_NO`,
......@@ -167,37 +209,6 @@ GROUP BY
psts.SKU_NO,
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 退款中间表
```
......@@ -324,9 +335,9 @@ SELECT
osku.SHOP_ID
FROM
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
oinf.TERM_NO = 202108
oinf.TERM_NO = 202109
AND oinf.ORDER_STATUS <> 51
ORDER BY
oinf.ROOT_ORDER_NO DESC
......@@ -382,12 +393,12 @@ SELECT
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
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 gcat2 ON skui.C_ID2 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID3 = gcat3.CATEGROY_ID
WHERE
psts.TERM_NO >= 202107
psts.TERM_NO >= 202109
-- AND psts.ORDER_NO IN (
-- '1421501573946892288'
-- -- '1432671460492763136'
......@@ -627,7 +638,7 @@ SELECT
CONCAT('#', its.BASE_ORDER_NO) AS 'PS丢失根单号',
its.POST_AMT AS '支付订单金额',
CASE
WHEN its.POST_AMT = 0.03 THEN
WHEN its.POST_AMT <= 0.03 THEN
'Y'
ELSE
'N'
......@@ -636,7 +647,7 @@ FROM
institution_transaction_summary its
LEFT JOIN pay_order_bill obill ON obill.ROOT_ORDER_NO = its.BASE_ORDER_NO
WHERE
its.TERM_NO = 202108
its.TERM_NO = 202109
AND its.TXN_FLAG = 'C'
AND obill.ROOT_ORDER_NO IS NULL;
```
......@@ -653,6 +664,7 @@ WHEN isku.ID IS NULL THEN
ELSE
'Y'
END AS Nil,
isku.USER_ID,
psrs.ORDER_NO AS ROOT_ORDER_NO,
isku.ORDER_NO AS 'SUB_ORDER_NO',
isku.SKU_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
LEFT JOIN order_goods_info ogd_inf ON ogd_inf.order_no = isku.ROOT_ORDER_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 gcat2 ON skui.C_ID1 = gcat2.CATEGROY_ID
LEFT JOIN t_goods_rear_category gcat3 ON skui.C_ID2 = gcat3.CATEGROY_ID
WHERE
psrs.term_no = 202108
psrs.term_no = 202109
```
......@@ -760,6 +772,7 @@ SELECT
pris.SKU_TERM_NO AS 'SKU_TERM_NO',
pris.`Nil` AS 'Nil',
-- pris.`ORDER_GOODS_ID`,
pris.USER_ID,
pris.`ROOT_ORDER_NO` AS 'ROOT_ORDER_NO',
pris.`SUB_ORDER_NO` AS 'SUB_ORDER_NO',
pris.`SKU_NO` AS 'SKU_NO',
......@@ -808,11 +821,12 @@ GROUP BY
```
SELECT
rbill.TERM_NO AS '期次',
rbill.SKU_TERM_NO AS '发生期次',
rbill.SKU_TERM_NO AS '支付期次',
rbill.Nil,
CONCAT('#',rbill.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',rbill.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#',rbill.`SKU_NO`) AS 'SKU号',
rbill.USER_ID AS '用户ID',
rbill.`CATEGROY_NAME1` AS '一级品类',
rbill.`CATEGROY_NAME2` AS '二级品类',
rbill.`CATEGROY_NAME3` AS '三级品类',
......@@ -840,12 +854,13 @@ FROM
`ps_rfd_sku_bill` rbill
-- LEFT JOIN jd_order_info jd ON jd.order_no = rbill.SUB_ORDER_NO
WHERE
rbill.TERM_NO = 202108
rbill.TERM_NO = 202109
```
###3、出售后SKU粒度的核对明细
```
SELECT
CONCAT('#',aft.order_no) AS '售后子单号',
CONCAT('#',sku.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#',sku.`ORDER_NO`) AS '子订单号',
CONCAT('#',sku.`SKU_NO`) AS 'SKU号',
......@@ -867,46 +882,69 @@ SELECT
bill.`PAY_COUNT` AS '购买数量',
bill.`AMT_NEED_PAY` AS '合计支付金额/元',
bill.`REFUND_AMT` AS '退款金额/元',
aft.`refund_amount` AS '售后金额/元',
bill.CHECKED_AMOUNT AS '核退款金额',
bill.`SALES_SERVICE` AS '售后状态',
bill.`order_time` AS '下单时间',
bill.`pay_time` AS '支付时间'
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 ps_rfd_sku_bill bill ON bill.ROOT_ORDER_NO = sku.ROOT_ORDER_NO
AND bill.SUB_ORDER_NO = sku.ORDER_NO
AND bill.SKU_NO = sku.SKU_NO
WHERE
aft.term_no = 202108
GROUP BY
sku.ROOT_ORDER_NO,
sku.ORDER_NO,
sku.SKU_NO;
aft.term_no = 202109
AND aft.deal_status = 70
```
###4、银有企无SKU粒度的核对明细
###4、退款银有企无SKU粒度的核对明细
```
SELECT
its.TERM_NO,
its.TRANSACTION_ID,
its.BASE_ORDER_NO,
its.POST_AMT,
its.SERIAL_NO,
its.BASE_CODE,
its.TXN_CODE,
its.TERM_NO AS '期次',
CONCAT('#',its.TRANSACTION_ID) AS '交易ID',
CONCAT('#',its.BASE_ORDER_NO) AS '根订单号',
CONCAT('#',its.SERIAL_NO) AS '流水号',
its.POST_AMT AS '退款金额',
its.BASE_CODE AS '支付方式',
its.TXN_CODE AS '交易码',
rfd.*
FROM
institution_transaction_summary its
LEFT JOIN dw_refund_summary rfd ON rfd.ORDER_NO = its.BASE_ORDER_NO
WHERE
its.TERM_NO = 202108
its.TERM_NO = 202109
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
oinf.TERM_NO,
......@@ -952,40 +990,48 @@ WHERE
)
```
#VCC 财务对账d
#支付对齐流水
##VCC 财务对账
###1、放款对齐流水
SELECT
PS_AMT,
PS_CONFN,
VCC_AMT,
LF_RT_FLAG,
PS_AMT-LF_RT_FLAG AS BAL
PS_AMT AS '支付前置金额',
CONSUME_FLOW_NO AS 'VCC流水号',
TXN_ID AS '交易ID',
VCC_AMT AS '放款金额',
LF_RT_FLAG AS '检测金额',
PS_AMT-LF_RT_FLAG AS '检测余额',
SHOP_TYPE AS '渠道类型',
STATUS AS '交易状态',
TXN_TIME AS '放款时间'
FROM
(
SELECT
VTS.TXN_ID AS TXN_ID,
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,
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
ps_txn_summary psts
LEFT JOIN vcc_txn_summary VTS ON VTS.FLOW_NO = psts.CONSUME_FLOW_NO
WHERE
psts.txn_code = 'R004'
AND
psts.term_no = '202108'
psts.term_no = 202109
GROUP BY
psts.consume_flow_no
) TEMP
WHERE
PS_AMT-LF_RT_FLAG != 0
PS_AMT-LF_RT_FLAG = 0
#退款对齐流水
###2、退货对齐流水
SELECT
PS_AMT,
PS_CONFN,
CONCAT('#',REFUND_FLOW_NO),
VCC_AMT,
LF_RT_FLAG,
PS_AMT - LF_RT_FLAG AS BAL
......@@ -993,7 +1039,7 @@ FROM
(
SELECT
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,
IFNULL(VRS.REFUND_AMT, 0) AS LF_RT_FLAG
FROM
......@@ -1002,21 +1048,21 @@ FROM
WHERE
PRS.TXN_CODE = 'R092'
AND
PRS.term_no = '202108'
PRS.term_no = 202109
GROUP BY
PRS.REFUND_FLOW_NO
) TEMP
WHERE
PS_AMT-LF_RT_FLAG != 0
PS_AMT-LF_RT_FLAG = 0
#支付PS有VCC无
###3、放款PS有VCC无
SELECT * FROM
(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
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 DISTINCT
PSTS.consume_flow_no AS ps_consume_flow_no
......@@ -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;
# 退款PS有VCC无
###5、退货PS有VCC无
SELECT
*
CONCAT('#',psrs.refund_flow_no) AS refund_flow_no,
vrs.*
FROM
(
SELECT DISTINCT
......@@ -1039,18 +1086,18 @@ FROM
`ps_refund_summary`
WHERE
TXN_CODE = 'R092'
AND
term_no = '202108'
AND term_no = 202109
) 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
vrs.refund_flow_no IS NULL
# 退款VCC有PS无
###6、退货VCC有PS无
SELECT
*
CONCAT('#', psrs.refund_flow_no) AS refund_flow_no,
vrs.*
FROM
(
SELECT DISTINCT
......@@ -1059,19 +1106,18 @@ FROM
`ps_refund_summary`
WHERE
TXN_CODE = 'R092'
AND
TERM_NO = '202108'
AND TERM_NO = 202109
) 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
psrs.refund_flow_no IS NULL
AND
VRS.TERM_NO = '202108'
AND VRS.TERM_NO = 202109
#会员权益
```
SELECT
CONCAT('#', pnt.user_id) AS '用户ID',
CONCAT('#', pnt.`level`) AS '用户等级',
CONCAT('#', bil.`ROOT_ORDER_NO`) AS '根订单号',
CONCAT('#', bil.`SUB_ORDER_NO`) AS '子订单号',
CONCAT('#', bil.`SKU_NO`) AS 'SKU号',
......@@ -1124,12 +1170,46 @@ END AS '支付方式',
bil.`PAY_TIME` AS '支付时间',
bil.`DELIVERY_AT` AS '发货时间',
bil.`ORDER_COMPLETE_TIME` AS '订单完成时间',
aft.deal_status AS '售后状态'
GROUP_CONCAT(aft.deal_status) AS '售后状态'
FROM
t_user_benefits_point pnt
LEFT JOIN ps_pay_sku_bill_copy bil ON pnt.user_id = bil.USER_ID
LEFT JOIN after_service_apply aft ON aft.order_no = bil.SUB_ORDER_NO
LEFT JOIN ps_pay_sku_bill bil ON pnt.user_id = bil.USER_ID
LEFT JOIN t_after_service_apply aft ON aft.order_no = bil.SUB_ORDER_NO
WHERE
bil.ORDER_COMPLETE_TIME >= '2021-08-01 00:00:00'
AND bil.ORDER_COMPLETE_TIME < '2021-09-01 00:00:00'
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
......@@ -37,7 +37,7 @@ public class AppTest {
public void load() {
try {
dataLoader.load(202108);
dataLoader.load(202109);
} catch (Exception e) {
e.printStackTrace();
}
......@@ -61,6 +61,6 @@ public class AppTest {
@Test
public void billing() {
balanceService.billing("INST", 202107);
balanceService.billing("INST", 202109);
}
}
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
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
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
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
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment