SUM(CASE WHEN reward_type IN (110,120) THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.97 WHEN user_partner_level=20 THEN 0.94 ELSE 1 END ELSE 0 END) sum_order_commission,
SUM(CASE WHEN reward_type=60 THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.97 WHEN user_partner_level=20 THEN 0.94 ELSE 1 END ELSE 0 END) sum_redpack,
SUM(CASE WHEN reward_type NOT IN (60,110,120) THEN commission_acount ELSE 0 END) sum_others,
SUM(CASE
WHEN reward_type IN (60, 110, 120) THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.03 WHEN user_partner_level=20 THEN 0.06 ELSE 1 END
ELSE 0 END
) tech_charge,
0 wx_income,
0 wx_tax,
0 bank_income,
0 bank_tax
FROM partner_reward
WHERE recharge_time
BETWEEN FROM_UNIXTIME(#{beginTs}) AND FROM_UNIXTIME(#{endTs})
SUM(CASE WHEN reward_type IN (110,120) THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.97 WHEN user_partner_level=20 THEN 0.94 ELSE 1 END ELSE 0 END) sum_order_commission,
SUM(CASE WHEN reward_type=60 THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.97 WHEN user_partner_level=20 THEN 0.94 ELSE 1 END ELSE 0 END) sum_redpack,
SUM(CASE WHEN reward_type NOT IN (60,110,120) THEN commission_acount ELSE 0 END) sum_others,
SUM(CASE
WHEN reward_type IN (60, 110, 120) THEN commission_acount * CASE WHEN user_is_super=1 THEN 0.03 WHEN user_partner_level=20 THEN 0.06 ELSE 1 END
ELSE 0 END
) tech_charge,
0 wx_income,
0 wx_tax,
0 bank_income,
0 bank_tax
FROM partner_reward
WHERE recharge_time
BETWEEN FROM_UNIXTIME(#{beginTs}) AND FROM_UNIXTIME(#{endTs})
AND reward_status=100
AND reward_type != 130
AND user_id = #{userId}
GROUP BY 1
</select>
<updateid="updateRewardStatusByUidAndTs">
UPDATE partner_reward
SET reward_status=120
WHERE recharge_time
BETWEEN FROM_UNIXTIME(#{beginTs}) AND FROM_UNIXTIME(#{endTs})