Merge branch 'customerImpression' into develop

master
wangning 7 years ago
commit cbe7a26bc6

@ -24,6 +24,8 @@ import au.com.royalpay.payment.manage.apps.bean.CustomerImpressionQuery;
import au.com.royalpay.payment.manage.apps.core.CustomerImpressionService; import au.com.royalpay.payment.manage.apps.core.CustomerImpressionService;
import au.com.royalpay.payment.manage.mappers.client.ClientCustomersMapper; import au.com.royalpay.payment.manage.mappers.client.ClientCustomersMapper;
import au.com.royalpay.payment.manage.mappers.payment.OrderMapper; import au.com.royalpay.payment.manage.mappers.payment.OrderMapper;
import au.com.royalpay.payment.manage.mappers.system.CustomerMapper;
import au.com.royalpay.payment.manage.mappers.system.CustomerRelationAlipayMapper;
import au.com.royalpay.payment.tools.exceptions.BadRequestException; import au.com.royalpay.payment.tools.exceptions.BadRequestException;
import au.com.royalpay.payment.tools.exceptions.NotFoundException; import au.com.royalpay.payment.tools.exceptions.NotFoundException;
import au.com.royalpay.payment.tools.utils.PageListUtils; import au.com.royalpay.payment.tools.utils.PageListUtils;
@ -39,6 +41,10 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService
private OrderMapper orderMapper; private OrderMapper orderMapper;
@Resource @Resource
private LookupService lookupService; private LookupService lookupService;
@Resource
private CustomerRelationAlipayMapper customerRelationAlipayMapper;
@Resource
private CustomerMapper customerMapper;
@Override @Override
public JSONObject listPageble(CustomerImpressionQuery customerImpressionQuery) { public JSONObject listPageble(CustomerImpressionQuery customerImpressionQuery) {
@ -101,6 +107,11 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService
if (StringUtils.isEmpty(order.getString("channel"))) { if (StringUtils.isEmpty(order.getString("channel"))) {
continue; continue;
} }
JSONObject userInfo = customerMapper.findCustomerByOpenId(order.getString("customer_id"));
if (userInfo == null) {
userInfo = customerRelationAlipayMapper.findCustomerByUserId(order.getString("customer_id"));
}
JSONObject clientCustomerInfo = clientCustomersMapper.getClientCustomerWithNull(client_id, order.getString("customer_id")); JSONObject clientCustomerInfo = clientCustomersMapper.getClientCustomerWithNull(client_id, order.getString("customer_id"));
if (clientCustomerInfo == null) { if (clientCustomerInfo == null) {
JSONObject client_customer = new JSONObject(); JSONObject client_customer = new JSONObject();
@ -108,12 +119,9 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService
client_customer.put("customer_id", order.getString("customer_id")); client_customer.put("customer_id", order.getString("customer_id"));
client_customer.put("channel", order.getString("channel")); client_customer.put("channel", order.getString("channel"));
client_customer.put("tag", "不活跃用户"); client_customer.put("tag", "不活跃用户");
if (order.getString("alipay_headimg") == null) { if (userInfo != null) {
client_customer.put("headimg", order.getString("wechat_headimg")); client_customer.put("headimg", userInfo.getString("headimg"));
client_customer.put("nick_name", order.getString("wechat_nickname")); client_customer.put("nick_name", userInfo.getString("nickname"));
} else {
client_customer.put("headimg", order.getString("alipay_headimg"));
client_customer.put("nick_name", order.getString("alipay_nickname"));
} }
client_customer.put("payment_times", order.getIntValue("payment_times")); client_customer.put("payment_times", order.getIntValue("payment_times"));
client_customer.put("total_amount", order.getBigDecimal("total_amount")); client_customer.put("total_amount", order.getBigDecimal("total_amount"));
@ -128,13 +136,9 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService
} else { } else {
clientCustomerInfo.put("total_amount", order.getBigDecimal("total_amount")); clientCustomerInfo.put("total_amount", order.getBigDecimal("total_amount"));
} }
if (userInfo != null) {
if (order.getString("alipay_headimg") == null) { clientCustomerInfo.put("headimg", userInfo.getString("headimg"));
clientCustomerInfo.put("headimg", order.getString("wechat_headimg")); clientCustomerInfo.put("nick_name", userInfo.getString("nickname"));
clientCustomerInfo.put("nick_name", order.getString("wechat_nickname"));
} else {
clientCustomerInfo.put("headimg", order.getString("alipay_headimg"));
clientCustomerInfo.put("nick_name", order.getString("alipay_nickname"));
} }
clientCustomerInfo.put("channel", order.getString("channel")); clientCustomerInfo.put("channel", order.getString("channel"));
clientCustomerInfo.put("tag", "不活跃用户"); clientCustomerInfo.put("tag", "不活跃用户");
@ -146,7 +150,6 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService
generateTag(client_id); generateTag(client_id);
} }
private void generateTag(int client_id) { private void generateTag(int client_id) {
JSONObject params = new JSONObject(); JSONObject params = new JSONObject();
DateTime dt = new DateTime(); DateTime dt = new DateTime();

@ -265,7 +265,8 @@
<bind name="name_pattern" value="'%'+search_text+'%'"/> <bind name="name_pattern" value="'%'+search_text+'%'"/>
<if test="text_type=='all'"> <if test="text_type=='all'">
and (p.client_moniker=#{search_text} or p.short_name like #{name_pattern} or o.order_detail like and (p.client_moniker=#{search_text} or p.short_name like #{name_pattern} or o.order_detail like
#{name_pattern} or t.system_transaction_id=#{search_text} or o.channel = #{search_text} or t.order_id = #{search_text}) #{name_pattern} or t.system_transaction_id=#{search_text} or o.channel = #{search_text} or t.order_id = #{search_text}
or o.client_order_id = #{search_text})
</if> </if>
<if test="text_type=='client_moniker'"> <if test="text_type=='client_moniker'">
and p.client_moniker=#{search_text} and p.client_moniker=#{search_text}
@ -345,7 +346,8 @@
<bind name="name_pattern" value="'%'+search_text+'%'"/> <bind name="name_pattern" value="'%'+search_text+'%'"/>
<if test="text_type=='all'"> <if test="text_type=='all'">
and (p.client_moniker=#{search_text} or p.short_name like #{name_pattern} or o.order_detail like and (p.client_moniker=#{search_text} or p.short_name like #{name_pattern} or o.order_detail like
#{name_pattern} or t.system_transaction_id =#{search_text} or o.channel = #{search_text} ) #{name_pattern} or t.system_transaction_id=#{search_text} or o.channel = #{search_text} or t.order_id = #{search_text}
or o.client_order_id = #{search_text})
</if> </if>
<if test="text_type=='client_moniker'"> <if test="text_type=='client_moniker'">
and p.client_moniker=#{search_text} and p.client_moniker=#{search_text}
@ -362,6 +364,15 @@
<if test="text_type=='sys_trans_id'"> <if test="text_type=='sys_trans_id'">
and t.system_transaction_id =#{search_text} and t.system_transaction_id =#{search_text}
</if> </if>
<if test="text_type=='remark'">
and o.order_detail like #{name_pattern}
</if>
<if test="text_type=='order_id'">
and t.order_id = #{search_text}
</if>
<if test="text_type=='client_order_id'">
and o.client_order_id = #{search_text}
</if>
</if> </if>
<if test="org_ids!=null">and p.org_id in <if test="org_ids!=null">and p.org_id in
<foreach collection="org_ids" item="org_id" open="(" close=")" separator=",">#{org_id}</foreach></if> <foreach collection="org_ids" item="org_id" open="(" close=")" separator=",">#{org_id}</foreach></if>
@ -555,15 +566,9 @@
o.client_id client_id, o.client_id client_id,
o.customer_id customer_id, o.customer_id customer_id,
o.channel channel, o.channel channel,
cra.headimg alipay_headimg,
cra.nickname alipay_nickname,
cr.nickname wechat_nickname,
cr.headimg wechat_headimg,
max( o.confirm_time) confirm_time max( o.confirm_time) confirm_time
from pmt_orders o from pmt_orders o
left join sys_customer_relation cr on cr.wepay_openid = o.customer_id
left join sys_customer_relation_alipay cra on cra.alipay_uid = o.customer_id
where o.customer_id is not null and o.channel is not null where o.customer_id is not null and o.channel is not null
and client_id = #{client_id} and client_id = #{client_id}
<if test="confirm_time"> <if test="confirm_time">

@ -23,7 +23,7 @@ import au.com.royalpay.payment.manage.mappers.system.ClientMapper;
* Created by wangning on 05/01/2018. * Created by wangning on 05/01/2018.
*/ */
@SpringBootTest @SpringBootTest
@ActiveProfiles({"production","alipay","wechat","jd","bestpay"}) @ActiveProfiles({"local","alipay","wechat","jd","bestpay"})
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
public class CustomerImpressionImplTest { public class CustomerImpressionImplTest {
@Resource @Resource

Loading…
Cancel
Save