|
@@ -134,6 +134,10 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
//广告ID
|
|
|
cri.where().andEquals("project_id", dto.getProjectId());
|
|
|
}
|
|
|
+ if (dto.getBackStatus() != null) {
|
|
|
+ //回传状态
|
|
|
+ cri.where().andEquals("back_status", dto.getBackStatus());
|
|
|
+ }
|
|
|
if (StringUtils.isNotBlank(dto.getOrderAgentType())) {
|
|
|
if ("buy".equals(dto.getOrderAgentType())) {
|
|
|
//查询买量数据
|
|
@@ -275,6 +279,10 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
//广告ID
|
|
|
cri.where().andEquals("project_id", dto.getProjectId());
|
|
|
}
|
|
|
+ if (dto.getBackStatus() != null) {
|
|
|
+ //回传状态
|
|
|
+ cri.where().andEquals("back_status", dto.getBackStatus());
|
|
|
+ }
|
|
|
if (StringUtils.isNotBlank(dto.getOrderAgentType())) {
|
|
|
if ("buy".equals(dto.getOrderAgentType())) {
|
|
|
//查询买量数据
|
|
@@ -380,6 +388,8 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
a.product_name , -- 充值商品名称
|
|
|
a.amount , -- 订单金额
|
|
|
a.real_amount , -- 订单实付金额
|
|
|
+ k.amount as role_total_amount, -- 角色累计充值金额
|
|
|
+ k.amount_count as role_total_amount_count, -- 角色累计充值次数
|
|
|
a.payway , -- 支付方式ID、支付方式名
|
|
|
a.pay_device as pay_scene,-- 支付场景ID、支付场景名
|
|
|
a.status as order_status, -- 支付状态
|
|
@@ -402,7 +412,10 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
TIMESTAMPDIFF(SECOND, a.pay_time, NOW()) as pay_until_now, -- 最近充值时间距今(秒)
|
|
|
IF(a.status = 2, IF(a.create_time = i.create_time, 1, 0), 0) as is_first_recharge, -- 是否首充
|
|
|
IF(a.promotion_id = 'null', NULL, a.promotion_id) as promotion_id , -- 计划ID
|
|
|
- IF(a.project_id = 'null' , NULL, a.project_id) as project_id -- 项目ID(广告ID)
|
|
|
+ IF(a.project_id = 'null' , NULL, a.project_id) as project_id, -- 项目ID(广告ID)
|
|
|
+ IFNULL(l.back_status, IFNULL(m.back_status, IFNULL(n.is_back, 2))) as back_status, -- 订单的回传状态:-1-回传失败;0-未回传;1-已回传;2-没有回传数据
|
|
|
+ IFNULL(l.back_money, IFNULL(m.back_money, n.back_money)) as back_money, -- 订单回传金额
|
|
|
+ IFNULL(l.back_msg, IFNULL(m.back_msg, n.back_msg)) as back_msg -- 回传信息
|
|
|
FROM dm_game_order.t_game_order a
|
|
|
LEFT JOIN dm_game_order.t_game_user b on a.source_system = b.source_system AND a.user_id = b.id
|
|
|
LEFT JOIN dm_game_order.t_pitcher_agent c on a.source_system = c.source_system AND a.agent_id = c.id
|
|
@@ -434,6 +447,41 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
FROM dm_game_order.t_pay_merchant
|
|
|
WHERE is_delete = 0
|
|
|
) j on a.source_system = j.source_system AND a.merchant_no = j.merchant_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ -- 累计充值金额、累计充值次数
|
|
|
+ role_id,
|
|
|
+ source_system,
|
|
|
+ SUM(real_amount) as amount ,
|
|
|
+ COUNT(user_id) as amount_count
|
|
|
+ FROM dm_game_order.t_game_order
|
|
|
+ WHERE status =2
|
|
|
+ GROUP BY role_id , source_system
|
|
|
+ ) k on a.source_system = k.source_system AND a.role_id = k.role_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_no,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_byte.t_game_oceanengine_order_log
|
|
|
+ ) l on a.order_id = l.order_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_mini_game_order
|
|
|
+ ) m on a.order_id = m.order_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ is_back,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_order
|
|
|
+ ) n on a.order_id = n.order_id
|
|
|
) a
|
|
|
""";
|
|
|
}
|
|
@@ -475,6 +523,8 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
a.product_name , -- 充值商品名称
|
|
|
a.amount , -- 订单金额
|
|
|
a.real_amount , -- 订单实付金额
|
|
|
+ k.amount as role_total_amount, -- 角色累计充值金额
|
|
|
+ k.amount_count as role_total_amount_count, -- 角色累计充值次数
|
|
|
a.payway , -- 支付方式ID、支付方式名
|
|
|
a.pay_device as pay_scene,-- 支付场景ID、支付场景名
|
|
|
a.status as order_status, -- 支付状态
|
|
@@ -497,7 +547,10 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
TIMESTAMPDIFF(SECOND, a.pay_time, NOW()) as pay_until_now, -- 最近充值时间距今(秒)
|
|
|
IF(a.status = 2, IF(a.create_time = i.create_time, 1, 0), 0) as is_first_recharge, -- 是否首充
|
|
|
IF(a.promotion_id = 'null', NULL, a.promotion_id) as promotion_id , -- 计划ID
|
|
|
- IF(a.project_id = 'null' , NULL, a.project_id) as project_id -- 项目ID(广告ID)
|
|
|
+ IF(a.project_id = 'null' , NULL, a.project_id) as project_id, -- 项目ID(广告ID)
|
|
|
+ IFNULL(l.back_status, IFNULL(m.back_status, IFNULL(n.is_back, 2))) as back_status, -- 订单的回传状态:-1-回传失败;0-未回传;1-已回传;2-没有回传数据
|
|
|
+ IFNULL(l.back_money, IFNULL(m.back_money, n.back_money)) as back_money, -- 订单回传金额
|
|
|
+ IFNULL(l.back_msg, IFNULL(m.back_msg, n.back_msg)) as back_msg -- 回传信息
|
|
|
FROM dm_game_order.t_game_order a
|
|
|
LEFT JOIN dm_game_order.t_game_user b on a.source_system = b.source_system AND a.user_id = b.id
|
|
|
LEFT JOIN dm_game_order.t_pitcher_agent c on a.source_system = c.source_system AND a.agent_id = c.id
|
|
@@ -529,6 +582,41 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
FROM dm_game_order.t_pay_merchant
|
|
|
WHERE is_delete = 0
|
|
|
) j on a.source_system = j.source_system AND a.merchant_no = j.merchant_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ -- 累计充值金额、累计充值次数
|
|
|
+ role_id,
|
|
|
+ source_system,
|
|
|
+ SUM(real_amount) as amount ,
|
|
|
+ COUNT(user_id) as amount_count
|
|
|
+ FROM dm_game_order.t_game_order
|
|
|
+ WHERE status =2
|
|
|
+ GROUP BY role_id , source_system
|
|
|
+ ) k on a.source_system = k.source_system AND a.role_id = k.role_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_no,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_byte.t_game_oceanengine_order_log
|
|
|
+ ) l on a.order_id = l.order_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_mini_game_order
|
|
|
+ ) m on a.order_id = m.order_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ is_back,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_order
|
|
|
+ ) n on a.order_id = n.order_id
|
|
|
) a
|
|
|
""";
|
|
|
}
|
|
@@ -571,12 +659,15 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
a.product_name , -- 充值商品名称
|
|
|
a.amount , -- 订单金额
|
|
|
a.real_amount , -- 订单实付金额
|
|
|
+ k.amount as role_total_amount, -- 角色累计充值金额
|
|
|
+ k.amount_count as role_total_amount_count, -- 角色累计充值次数
|
|
|
a.payway , -- 支付方式ID、支付方式名
|
|
|
a.pay_device as pay_scene,-- 支付场景ID、支付场景名
|
|
|
a.status as order_status, -- 支付状态
|
|
|
a.cp_status , -- cp通知状态
|
|
|
a.last_notify_time as last_cp_notify_time , -- cp最后通知时间
|
|
|
a.merchant_no as pay_account_id, -- 收款账户
|
|
|
+ j.merchant_name , -- 收款账户名
|
|
|
a.server_id , -- 角色所属游戏区服ID
|
|
|
IFNULL(h.server_name, a.server_name) as source_server_name , -- 原始区服名
|
|
|
a.server_name , -- 角色所属游戏区服名
|
|
@@ -592,7 +683,10 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
TIMESTAMPDIFF(SECOND, a.pay_time, NOW()) as pay_until_now, -- 最近充值时间距今(秒)
|
|
|
IF(a.status = 2, IF(a.create_time = i.create_time, 1, 0), 0) as is_first_recharge, -- 是否首充
|
|
|
IF(a.promotion_id = 'null', NULL, a.promotion_id) as promotion_id , -- 计划ID
|
|
|
- IF(a.project_id = 'null' , NULL, a.project_id) as project_id -- 项目ID(广告ID)
|
|
|
+ IF(a.project_id = 'null' , NULL, a.project_id) as project_id, -- 项目ID(广告ID)
|
|
|
+ IFNULL(l.back_status, IFNULL(m.back_status, IFNULL(n.is_back, 2))) as back_status, -- 订单的回传状态:-1-回传失败;0-未回传;1-已回传;2-没有回传数据
|
|
|
+ IFNULL(l.back_money, IFNULL(m.back_money, n.back_money)) as back_money, -- 订单回传金额
|
|
|
+ IFNULL(l.back_msg, IFNULL(m.back_msg, n.back_msg)) as back_msg -- 回传信息
|
|
|
FROM dm_game_order.t_game_order a
|
|
|
LEFT JOIN dm_game_order.t_game_user b on a.source_system = b.source_system AND a.user_id = b.id
|
|
|
LEFT JOIN dm_game_order.t_pitcher_agent c on a.source_system = c.source_system AND a.agent_id = c.id
|
|
@@ -616,6 +710,49 @@ public class AdsOrderDetailService implements IAdsOrderDetailService {
|
|
|
FROM dm_game_order.t_game_order
|
|
|
WHERE status = 2
|
|
|
) i on a.source_system = i.source_system AND a.user_id = i.user_id AND i.num = 1
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ source_system,
|
|
|
+ merchant_no,
|
|
|
+ merchant_name
|
|
|
+ FROM dm_game_order.t_pay_merchant
|
|
|
+ WHERE is_delete = 0
|
|
|
+ ) j on a.source_system = j.source_system AND a.merchant_no = j.merchant_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ -- 累计充值金额、累计充值次数
|
|
|
+ role_id,
|
|
|
+ source_system,
|
|
|
+ SUM(real_amount) as amount ,
|
|
|
+ COUNT(user_id) as amount_count
|
|
|
+ FROM dm_game_order.t_game_order
|
|
|
+ WHERE status =2
|
|
|
+ GROUP BY role_id , source_system
|
|
|
+ ) k on a.source_system = k.source_system AND a.role_id = k.role_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_no,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_byte.t_game_oceanengine_order_log
|
|
|
+ ) l on a.order_id = l.order_no
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ back_status,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_mini_game_order
|
|
|
+ ) m on a.order_id = m.order_id
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ order_id ,
|
|
|
+ is_back,
|
|
|
+ back_msg,
|
|
|
+ back_money
|
|
|
+ FROM dm_ad_tencent.t_game_tencent_order
|
|
|
+ ) n on a.order_id = n.order_id
|
|
|
) a
|
|
|
""";
|
|
|
}
|