From 3d86ba8a9b9a5479a66f1acc72f5b9619f56de78 Mon Sep 17 00:00:00 2001 From: Tayl0r <519104047@qq.com> Date: Thu, 1 Mar 2018 09:19:20 +0800 Subject: [PATCH 01/19] =?UTF-8?q?[Y]=20=E4=BF=AE=E5=A4=8D=E6=B8=85?= =?UTF-8?q?=E7=AE=97=E9=A2=84=E4=BC=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impls/PlatformClearAnalysisServiceImpl.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java index 79f8a3336..16ff14059 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java @@ -174,7 +174,7 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { params.put("settlement_fee", settleFee.getBigDecimal("settlement_fee")); params.put("channel", channel); params.put("last_update_date", new Date()); - JSONObject sysClearData = getSystemClearingAmount(dateStr, null, channel); + JSONObject sysClearData = getSystemClearingAmount(dateStr, aliSettleLog, channel); if (sysClearData != null && sysClearData.size() > 0) { params.put("sys_pay_fee", sysClearData.getBigDecimal("sys_pay_fee")); params.put("sys_refund_fee", sysClearData.getBigDecimal("sys_refund_fee")); @@ -292,22 +292,23 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { return alipaySettleLog; } - public JSONObject getSystemClearingAmount(Date settle_date, SettlementLog settlementLog, String channel) throws Exception { + public JSONObject getSystemClearingAmount(Date settle_date, Object settlementLog, String channel) throws Exception { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 02:00:00"); JSONObject sysLogs = new JSONObject(); String start_date = null; String end_date = null; if (StringUtils.equals("Alipay", channel)) { - JSONObject lastClearDay = estimateAnalysisMapper.findLastCleanDays(sdfClear.format(settle_date), 1); start_date = sdf.format(lastClearDay.getDate("date_str")); end_date = sdf.format(settle_date); - logger.info("Alipay System Settle Logs:"+start_date+"<====>" +end_date); - + logger.info("Alipay System Settle Logs:" + start_date + "<====>" + end_date); } else if (StringUtils.equals("Wechat", channel)) { - start_date = sdf.format(settlementLog.getStart()); - end_date = sdf.format(settlementLog.getEnd()); - logger.info("Wechat System Settle Logs:"+start_date+"<====>" +end_date); + SettlementLog wechatSettleLog = (SettlementLog) settlementLog; + start_date = sdf.format(wechatSettleLog.getStart()); + end_date = sdf.format(wechatSettleLog.getEnd()); + logger.info("Wechat System Settle Logs:" + start_date + "<====>" + end_date); + } else if (StringUtils.equals("AlipayOnline", channel)) { + } else { return null; } From 7f0c42f3b9137a7df92055058da649d3aae55beb Mon Sep 17 00:00:00 2001 From: Tayl0r <519104047@qq.com> Date: Thu, 1 Mar 2018 14:43:17 +0800 Subject: [PATCH 02/19] =?UTF-8?q?[Y]=20=E6=94=AF=E4=BB=98=E5=AE=9D?= =?UTF-8?q?=E7=BA=BF=E4=B8=8A=E6=B8=85=E7=AE=97=E9=A2=84=E4=BC=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/impls/PlatformClearAnalysisServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java index 16ff14059..7bba88849 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java @@ -17,6 +17,7 @@ import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.time.DateFormatUtils; +import org.apache.commons.lang3.time.DateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; @@ -294,6 +295,7 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { public JSONObject getSystemClearingAmount(Date settle_date, Object settlementLog, String channel) throws Exception { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 02:00:00"); + SimpleDateFormat onlineSdf = new SimpleDateFormat("yyyyMMdd 02:00:00"); JSONObject sysLogs = new JSONObject(); String start_date = null; String end_date = null; @@ -308,7 +310,9 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { end_date = sdf.format(wechatSettleLog.getEnd()); logger.info("Wechat System Settle Logs:" + start_date + "<====>" + end_date); } else if (StringUtils.equals("AlipayOnline", channel)) { - + JSONObject alipayOnlineSettleLog = (JSONObject) settlementLog; + start_date = onlineSdf.format(alipayOnlineSettleLog.getDate("min_date")); + end_date = onlineSdf.format(DateUtils.addDays(alipayOnlineSettleLog.getDate("max_date"), 1)); } else { return null; } From f1dcefc6edbb8c3ad2ba0750027163430769d8dd Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Thu, 1 Mar 2018 14:51:51 +0800 Subject: [PATCH 03/19] fix bd String --- .../manage/merchants/core/impls/ClientManagerImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java index a3f4daaa9..13549bb38 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java @@ -349,9 +349,9 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid if (bdConfig != null) { params.put("bd_group", bdConfig.getString("bd_group")); List listGroupBds = financialBDConfigMapper.listGroupBds(bdConfig.getString("bd_group")); - List bdUserId = listGroupBds.stream().map(groupBd->groupBd.getIntValue("manager_id")).collect(Collectors.toList()); + List bdUserId = listGroupBds.stream().map(groupBd->groupBd.getString("manager_id")).collect(Collectors.toList()); if(params.containsKey("bd_user")){ - if(!bdUserId.contains(params.getIntValue("bd_user"))){ + if(!bdUserId.contains(params.getString("bd_user"))){ params.remove("bd_user"); } } From 7a714d4862fa61d080229ce9607ab8a0db9c0743 Mon Sep 17 00:00:00 2001 From: Tayl0r <519104047@qq.com> Date: Thu, 1 Mar 2018 14:59:14 +0800 Subject: [PATCH 04/19] fix --- .../core/impls/PlatformClearAnalysisServiceImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java index 7bba88849..1f89de678 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java @@ -311,8 +311,9 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { logger.info("Wechat System Settle Logs:" + start_date + "<====>" + end_date); } else if (StringUtils.equals("AlipayOnline", channel)) { JSONObject alipayOnlineSettleLog = (JSONObject) settlementLog; - start_date = onlineSdf.format(alipayOnlineSettleLog.getDate("min_date")); - end_date = onlineSdf.format(DateUtils.addDays(alipayOnlineSettleLog.getDate("max_date"), 1)); + logger.info("AlipayOnline System Settle Logs:" + alipayOnlineSettleLog.getDate("min_time") + "<====>" + alipayOnlineSettleLog.getDate("max_time")); + start_date = onlineSdf.format(alipayOnlineSettleLog.getDate("min_time")); + end_date = onlineSdf.format(DateUtils.addDays(alipayOnlineSettleLog.getDate("max_time"), 1)); } else { return null; } From 33e3ef225fec630054fdf38a774b2e3230f8bada Mon Sep 17 00:00:00 2001 From: yuan <1551130722@qq.com> Date: Thu, 1 Mar 2018 15:13:05 +0800 Subject: [PATCH 05/19] fix~ --- .../config/bdprize/templates/bd_prize_month_report.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/ui/static/config/bdprize/templates/bd_prize_month_report.html b/src/main/ui/static/config/bdprize/templates/bd_prize_month_report.html index 18540459f..7734b95f5 100644 --- a/src/main/ui/static/config/bdprize/templates/bd_prize_month_report.html +++ b/src/main/ui/static/config/bdprize/templates/bd_prize_month_report.html @@ -110,7 +110,7 @@
-
BD Leader Commission
+
BD Manager Commission
@@ -138,7 +138,7 @@ -
+
Director Commission
From 0e864e89a9f0c80d0250f27ca45887a1c07eee50 Mon Sep 17 00:00:00 2001 From: Tayl0r <519104047@qq.com> Date: Thu, 1 Mar 2018 15:15:02 +0800 Subject: [PATCH 06/19] fix --- .../core/impls/PlatformClearAnalysisServiceImpl.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java index 1f89de678..e0364ece3 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/PlatformClearAnalysisServiceImpl.java @@ -295,7 +295,6 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { public JSONObject getSystemClearingAmount(Date settle_date, Object settlementLog, String channel) throws Exception { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 02:00:00"); - SimpleDateFormat onlineSdf = new SimpleDateFormat("yyyyMMdd 02:00:00"); JSONObject sysLogs = new JSONObject(); String start_date = null; String end_date = null; @@ -312,8 +311,8 @@ public class PlatformClearAnalysisServiceImpl implements PlatformClearService { } else if (StringUtils.equals("AlipayOnline", channel)) { JSONObject alipayOnlineSettleLog = (JSONObject) settlementLog; logger.info("AlipayOnline System Settle Logs:" + alipayOnlineSettleLog.getDate("min_time") + "<====>" + alipayOnlineSettleLog.getDate("max_time")); - start_date = onlineSdf.format(alipayOnlineSettleLog.getDate("min_time")); - end_date = onlineSdf.format(DateUtils.addDays(alipayOnlineSettleLog.getDate("max_time"), 1)); + start_date = sdf.format(alipayOnlineSettleLog.getDate("min_time")); + end_date = sdf.format(DateUtils.addDays(alipayOnlineSettleLog.getDate("max_time"), 1)); } else { return null; } From 7c0b958feeea09fd66237b0ab52f3999c3f0510c Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 18:19:41 +0800 Subject: [PATCH 07/19] bill Order Check Task --- .../manage/mappers/bill/BillOrderMapper.java | 5 +++ .../manage/task/BillOrderCheckTask.java | 38 +++++++++++++++++++ .../manage/mappers/bill/BillOrderMapper.xml | 10 +++++ 3 files changed, 53 insertions(+) create mode 100644 src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.java index d9b2674ee..12e740c6c 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.java @@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Param; import com.alibaba.fastjson.JSONObject; import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; +import com.sun.tracing.dtrace.ProviderAttributes; import cn.yixblog.support.mybatis.autosql.annotations.AutoMapper; import cn.yixblog.support.mybatis.autosql.annotations.AutoSql; @@ -33,7 +34,11 @@ public interface BillOrderMapper { @AutoSql(type = SqlType.SELECT) List findByBillId(@Param("bill_id") String bill_id); + List findOrderIdByStatus(@Param("order_status")String order_status); + PageList query(@Param("bill_id") String bill_id, @Param("param") JSONObject jsonObject, PageBounds pageBounds); JSONObject analysis(@Param("bill_id")String bill_id,@Param("param")JSONObject jsonObject); + + int updateStatusByOrderId(@Param("order_id")String order_id, @Param("order_status")String order_status); } diff --git a/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java b/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java new file mode 100644 index 000000000..7ed15f15f --- /dev/null +++ b/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java @@ -0,0 +1,38 @@ +package au.com.royalpay.payment.manage.task; + +import au.com.royalpay.payment.manage.mappers.bill.BillOrderMapper; +import au.com.royalpay.payment.manage.mappers.payment.OrderMapper; + +import com.alibaba.fastjson.JSONObject; + +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.util.List; + +import javax.annotation.Resource; + +/** + * Created by wangning on 2018/1/2. + */ +@Component +@ConditionalOnProperty(value = "app.run-tasks", havingValue = "true") +public class BillOrderCheckTask { + @Resource + private BillOrderMapper billOrderMapper; + + @Resource + private OrderMapper orderMapper; + + @Scheduled(cron = "0 0/3 * * * ?") + public void checkGreenChannel() { + List orderIds = billOrderMapper.findOrderIdByStatus("0"); + orderIds.forEach((p) -> { + JSONObject order = orderMapper.find(p); + if(order.getIntValue("status")==3||order.getIntValue("status")==1){ + billOrderMapper.updateStatusByOrderId(p,"2"); + } + }); + } +} diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.xml index f9e9ef134..f6de6ebf8 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/bill/BillOrderMapper.xml @@ -30,4 +30,14 @@ and order_status = #{param.status} + + + + update pmt_bill_order + set order_status = #{order_status} + where order_id = #{order_id} + \ No newline at end of file From df89d3023299cd861142b2c3849b8aa59c537077 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 18:29:37 +0800 Subject: [PATCH 08/19] update --- .../payment/manage/task/OfeiOrderCheckTask.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/task/OfeiOrderCheckTask.java b/src/main/java/au/com/royalpay/payment/manage/task/OfeiOrderCheckTask.java index ea161132b..a7afa75a7 100644 --- a/src/main/java/au/com/royalpay/payment/manage/task/OfeiOrderCheckTask.java +++ b/src/main/java/au/com/royalpay/payment/manage/task/OfeiOrderCheckTask.java @@ -1,15 +1,16 @@ package au.com.royalpay.payment.manage.task; -import java.util.List; - -import javax.annotation.Resource; +import au.com.royalpay.payment.manage.mappers.ofei.TopUpOrderMapper; +import au.com.royalpay.payment.manage.ofei.core.OfeiServer; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; -import au.com.royalpay.payment.manage.mappers.ofei.TopUpOrderMapper; -import au.com.royalpay.payment.manage.ofei.core.OfeiServer; +import java.util.List; + +import javax.annotation.Resource; /** * Created by wangning on 2018/1/2. @@ -24,6 +25,9 @@ public class OfeiOrderCheckTask { @Scheduled(cron = "0 0/20 * * * ?") public void checkGreenChannel(){ List orderIds = topUpOrderMapper.findOrderIdByStatus("10"); + if(CollectionUtils.isEmpty(orderIds)){ + return; + } for (String orderId : orderIds) { ofeiServer.checkOrder(orderId); } From 950fdc67e41e23cb5634cd96a40990e23c6cb4e4 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 18:30:05 +0800 Subject: [PATCH 09/19] update --- .../com/royalpay/payment/manage/task/BillOrderCheckTask.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java b/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java index 7ed15f15f..04d7e7df0 100644 --- a/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java +++ b/src/main/java/au/com/royalpay/payment/manage/task/BillOrderCheckTask.java @@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONObject; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; import java.util.List; @@ -28,6 +29,9 @@ public class BillOrderCheckTask { @Scheduled(cron = "0 0/3 * * * ?") public void checkGreenChannel() { List orderIds = billOrderMapper.findOrderIdByStatus("0"); + if(CollectionUtils.isEmpty(orderIds)){ + return; + } orderIds.forEach((p) -> { JSONObject order = orderMapper.find(p); if(order.getIntValue("status")==3||order.getIntValue("status")==1){ From b0ca17b063781642c82f8b514afbaf0cfa300406 Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Thu, 1 Mar 2018 18:51:09 +0800 Subject: [PATCH 10/19] orderDetail add tax_amount --- .../manage/appclient/core/impls/RetailAppServiceImp.java | 4 ++-- .../payment/manage/mappers/payment/OrderMapper.xml | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java index 1c7edd376..59229c3d2 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java @@ -407,7 +407,7 @@ public class RetailAppServiceImp implements RetailAppService { params.put("client_id", client_id); PageList orders = orderMapper.listTransactionsForApp(params, - new PageBounds(query.getPage(), query.getLimit(), Order.formString("create_time.desc"))); + new PageBounds(query.getPage(), query.getLimit(), Order.formString("transaction_time.desc"))); TimeZoneUtils.switchTimeZone(orders, query.getTimezone(), "create_time", "transaction_time", "confirm_time"); ArrayList date_contains = new ArrayList<>(); for (JSONObject order : orders) { @@ -445,7 +445,7 @@ public class RetailAppServiceImp implements RetailAppService { } JSONObject date_params = date_query.toParams(query.getTimezone()); date_params.put("client_id", device.getIntValue("client_id")); - JSONObject analysis = orderMapper.analysisOrders(date_params); + JSONObject analysis = transactionAnalysisMapper.getClientTransaction(date_params); order.put("date_total", analysis); date_contains.add(trade_date); } diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml index 6e85a145e..bf82b0927 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml @@ -455,6 +455,8 @@ o.notify_url, t.transaction_time, t.system_transaction_id, + t.total_surcharge, + t.tax_amount, o.status, o.order_description, o.order_detail, @@ -667,9 +669,9 @@ and o.client_id=#{client_id} - and o.create_time >= #{from} - and o.create_time < #{to} - and date(o.create_time)=date(#{date}) + and t.transaciton_time >= #{from} + and t.transaction_time < #{to} + and date(t.transaction_time)=date(#{date}) and o.gateway in #{gateway} From d5acfc2bbd57cf018fa0e3720f66af67c9279845 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 18:51:43 +0800 Subject: [PATCH 11/19] remove unnecessary code --- .../apps/core/CustomerImpressionService.java | 1 - .../impls/CustomerImpressionServiceImpl.java | 106 ++++-------------- .../manage/task/CustomerImpressionTask.java | 39 ++----- 3 files changed, 28 insertions(+), 118 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/apps/core/CustomerImpressionService.java b/src/main/java/au/com/royalpay/payment/manage/apps/core/CustomerImpressionService.java index 5ea8c6f61..36e3c92f5 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apps/core/CustomerImpressionService.java +++ b/src/main/java/au/com/royalpay/payment/manage/apps/core/CustomerImpressionService.java @@ -14,7 +14,6 @@ public interface CustomerImpressionService { JSONObject findOne(int client_id,String customer_id); void generateTag(int client_id); - void generate(int client_id); void generateInfo(); diff --git a/src/main/java/au/com/royalpay/payment/manage/apps/core/impls/CustomerImpressionServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/apps/core/impls/CustomerImpressionServiceImpl.java index b00b975d3..897ee17a5 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apps/core/impls/CustomerImpressionServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/apps/core/impls/CustomerImpressionServiceImpl.java @@ -1,11 +1,21 @@ package au.com.royalpay.payment.manage.apps.core.impls; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import au.com.royalpay.payment.manage.apps.bean.CustomerImpressionQuery; +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.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.NotFoundException; +import au.com.royalpay.payment.tools.lock.Locker; +import au.com.royalpay.payment.tools.utils.PageListUtils; -import javax.annotation.Resource; +import com.alibaba.fastjson.JSONObject; +import com.github.miemiedev.mybatis.paginator.domain.Order; +import com.github.miemiedev.mybatis.paginator.domain.PageBounds; +import com.github.miemiedev.mybatis.paginator.domain.PageList; +import com.maxmind.geoip.LookupService; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.time.DateFormatUtils; @@ -18,23 +28,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; -import com.alibaba.fastjson.JSONObject; -import com.github.miemiedev.mybatis.paginator.domain.Order; -import com.github.miemiedev.mybatis.paginator.domain.PageBounds; -import com.github.miemiedev.mybatis.paginator.domain.PageList; -import com.maxmind.geoip.LookupService; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; -import au.com.royalpay.payment.manage.apps.bean.CustomerImpressionQuery; -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.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.NotFoundException; -import au.com.royalpay.payment.tools.lock.Locker; -import au.com.royalpay.payment.tools.lock.LockerRedisImpl; -import au.com.royalpay.payment.tools.utils.PageListUtils; +import javax.annotation.Resource; /** * Created by wangning on 2017/12/28. @@ -104,68 +102,6 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService return customer; } - @Override - public void generate(int client_id) { - Date now = new Date(); - DateTime dt = new DateTime(2018, 1, 20, 0, 0); - if (now.compareTo(dt.toDate()) > 0) { - return; - } - JSONObject params = new JSONObject(); - params.put("client_id", client_id); - params.put("include_success_status", 3); - PageList lastRecord = clientCustomersMapper.listCustomerInfo(params, new PageBounds(1, 1, Order.formString("update_time.desc"))); - if (!CollectionUtils.isEmpty(lastRecord)) { - params.put("confirm_time", lastRecord.get(0).getDate("update_time")); - } - List orders = orderMapper.listAnalysisClientCustomer(params); - for (JSONObject order : orders) { - if (StringUtils.isEmpty(order.getString("channel"))) { - continue; - } - String customer_id = order.getString("customer_id"); - JSONObject userInfo = customerMapper.findCustomerByOpenId(customer_id); - if (userInfo == null) { - userInfo = customerRelationAlipayMapper.findCustomerByUserId(customer_id); - } - - JSONObject clientCustomerInfo = clientCustomersMapper.getClientCustomerWithNull(client_id, customer_id); - if (clientCustomerInfo == null) { - locker.lock(CUSTOMER_IMPRESSION_PREFIX + customer_id, 30_000, 30_000); - try { - JSONObject client_customer = new JSONObject(); - client_customer.put("client_id", order.getIntValue("client_id")); - client_customer.put("customer_id", order.getString("customer_id")); - client_customer.put("channel", order.getString("channel")); - client_customer.put("tag", "不活跃用户"); - if (userInfo != null) { - client_customer.put("headimg", userInfo.getString("headimg")); - client_customer.put("nick_name", userInfo.getString("nickname")); - } - client_customer.put("payment_times", order.getIntValue("payment_times")); - client_customer.put("total_amount", order.getBigDecimal("total_amount")); - client_customer.put("update_time", now); - client_customer.put("last_payment_time", order.getDate("confirm_time")); - clientCustomersMapper.insert(client_customer); - } finally { - locker.unlock(customer_id); - } - } else { - clientCustomerInfo.put("payment_times", clientCustomerInfo.getIntValue("payment_times") + order.getIntValue("payment_times")); - clientCustomerInfo.put("payment_times", order.getIntValue("payment_times")); - clientCustomerInfo.put("client_id", order.getIntValue("client_id")); - clientCustomerInfo.put("customer_id", order.getString("customer_id")); - clientCustomerInfo.put("total_amount", order.getBigDecimal("total_amount")); - if (userInfo != null) { - clientCustomerInfo.put("headimg", userInfo.getString("headimg")); - clientCustomerInfo.put("nick_name", userInfo.getString("nickname")); - } - clientCustomerInfo.put("last_payment_time", order.getDate("confirm_time")); - clientCustomersMapper.updateAfterPaymentFinish(clientCustomerInfo); - } - } - } - @Override @Transactional public void generateTag(int client_id) { @@ -197,10 +133,6 @@ public class CustomerImpressionServiceImpl implements CustomerImpressionService @Override public void generateInfo() { Date now = new Date(); - DateTime dt = new DateTime(2018, 1, 19, 3, 0); - if (dt.toDate().compareTo(now) > 0) { - return; - } BoundListOperations ops = stringRedisTemplate.boundListOps("customer_impression"); String redisValue = ops.leftPop(); diff --git a/src/main/java/au/com/royalpay/payment/manage/task/CustomerImpressionTask.java b/src/main/java/au/com/royalpay/payment/manage/task/CustomerImpressionTask.java index a562dd076..bb956e571 100644 --- a/src/main/java/au/com/royalpay/payment/manage/task/CustomerImpressionTask.java +++ b/src/main/java/au/com/royalpay/payment/manage/task/CustomerImpressionTask.java @@ -1,21 +1,21 @@ package au.com.royalpay.payment.manage.task; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; +import au.com.royalpay.payment.manage.apps.core.CustomerImpressionService; +import au.com.royalpay.payment.manage.mappers.system.ClientMapper; -import javax.annotation.Resource; +import com.alibaba.fastjson.JSONObject; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; -import com.alibaba.fastjson.JSONObject; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; -import au.com.royalpay.payment.manage.apps.core.CustomerImpressionService; -import au.com.royalpay.payment.manage.mappers.system.ClientMapper; +import javax.annotation.Resource; /** * Created by yishuqian on 12/03/2017. @@ -51,27 +51,6 @@ public class CustomerImpressionTask { } } - @Scheduled(cron = "0 0 3 * * ?") - public void generate() { - List clients = clientMapper.listValidClient(); - List> splitList = new ArrayList<>(); - for (int i = 0; i < clients.size(); i+=200) { - if(i+200>clients.size()){ - splitList.add(clients.subList(i,clients.size())); - }else { - splitList.add(clients.subList(i,i+200)); - } - - } - for (List splitClients : splitList) { - Runnable task = () -> splitClients.forEach((p)->{ - System.out.println("当前执行到"+p.getIntValue("client_id")); - customerImpressionService.generate(p.getIntValue("client_id")); - }); - generatePool.execute(task); - } - } - @Scheduled(cron = "0/1 * * * * ?") public void generateInfo() { customerImpressionService.generateInfo(); From 1fb82e3521e57966ab98799e093f574890acb5a8 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 19:28:21 +0800 Subject: [PATCH 12/19] settlement add Tax amount --- .../static/analysis/templates/settlement_detail.html | 2 ++ .../tradelog/templates/partner_settlement_dialog.html | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/src/main/ui/static/analysis/templates/settlement_detail.html b/src/main/ui/static/analysis/templates/settlement_detail.html index f3857fb96..3e4020356 100644 --- a/src/main/ui/static/analysis/templates/settlement_detail.html +++ b/src/main/ui/static/analysis/templates/settlement_detail.html @@ -127,6 +127,7 @@
+ @@ -142,6 +143,7 @@ + + + @@ -148,6 +154,10 @@ + + + + From 4eb69c41a0408dec83111fe06453ac7fb0876021 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 19:36:20 +0800 Subject: [PATCH 13/19] update --- src/main/ui/static/analysis/templates/settlement_detail.html | 2 +- .../payment/tradelog/templates/partner_settlement_dialog.html | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/ui/static/analysis/templates/settlement_detail.html b/src/main/ui/static/analysis/templates/settlement_detail.html index 3e4020356..216373876 100644 --- a/src/main/ui/static/analysis/templates/settlement_detail.html +++ b/src/main/ui/static/analysis/templates/settlement_detail.html @@ -143,8 +143,8 @@ - + - - From 4d2e010ed73d1209e30173c8edee3abe9bff592a Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Thu, 1 Mar 2018 19:39:36 +0800 Subject: [PATCH 14/19] fix --- .../manage/appclient/core/impls/RetailAppServiceImp.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java index 59229c3d2..a5e397364 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java @@ -444,6 +444,8 @@ public class RetailAppServiceImp implements RetailAppService { date_query.setClient_ids((String[]) params.get("client_ids")); } JSONObject date_params = date_query.toParams(query.getTimezone()); + date_params.put("begin",date_params.getDate("from")); + date_params.put("end",date_params.getDate("to")); date_params.put("client_id", device.getIntValue("client_id")); JSONObject analysis = transactionAnalysisMapper.getClientTransaction(date_params); order.put("date_total", analysis); From e8478bb641ef071f5ffbb1f0ab60e1f9c1a174d5 Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 1 Mar 2018 19:43:23 +0800 Subject: [PATCH 15/19] update --- .../payment/tradelog/templates/partner_settlement_dialog.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html index 8dd8fafaf..39f8fa82b 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html @@ -79,7 +79,7 @@
Tax Amount - +
From 9b7c6ab0140045905230dbf23485e9250d7eac39 Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Fri, 2 Mar 2018 10:42:50 +0800 Subject: [PATCH 16/19] fix --- .../manage/analysis/mappers/TransactionAnalysisMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/TransactionAnalysisMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/TransactionAnalysisMapper.xml index 0b74cb7a7..0cc9af372 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/TransactionAnalysisMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/TransactionAnalysisMapper.xml @@ -746,8 +746,8 @@ select IFNULL(sum(if(l.transaction_type='credit',l.clearing_amount,0)),0) trade_amount, ifnull(sum(if(l.refund_id>0,l.clearing_amount,0)),0) refund_amount, - sum(if(l.transaction_type='Credit',1,0)) trade_count, - sum(if(l.refund_id>0,1,0)) refund_orders + ifnull(sum(if(l.transaction_type='Credit',1,0)),0) trade_count, + ifnull(sum(if(l.refund_id>0,1,0)),0) refund_orders FROM pmt_transactions l where l.channel!='Settlement' and l.system_generate=0 From 636ab2cf019478a5d607567b16a5f4495f22b3ca Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Fri, 2 Mar 2018 11:12:10 +0800 Subject: [PATCH 17/19] fix --- .../com/royalpay/payment/manage/mappers/payment/OrderMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml index bf82b0927..054bd843d 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml @@ -669,7 +669,7 @@ and o.client_id=#{client_id} - and t.transaciton_time >= #{from} + and t.transaction_time >= #{from} and t.transaction_time < #{to} and date(t.transaction_time)=date(#{date}) From 106ca85bfbcbd717da9b887f49b3a494d49fbf5c Mon Sep 17 00:00:00 2001 From: "eason.qian" Date: Fri, 2 Mar 2018 11:15:25 +0800 Subject: [PATCH 18/19] fix --- .../manage/appclient/core/impls/RetailAppServiceImp.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java index a5e397364..efeb6d09a 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/RetailAppServiceImp.java @@ -429,7 +429,7 @@ public class RetailAppServiceImp implements RetailAppService { default: break; } - Calendar calendar = (Calendar) order.get("create_time"); + Calendar calendar = (Calendar) order.get("transaction_time"); String trade_date = DateFormatUtils.format(calendar, "yyyy-MM-dd"); String trade_time = DateFormatUtils.format(calendar, "HH:mm:ss"); order.put("trade_date", trade_date); From 464fc1b474bdae9ec74477d2923c67c9b0a3a2ae Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Fri, 2 Mar 2018 11:16:43 +0800 Subject: [PATCH 19/19] update --- .../templates/settlement_transactions.html | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/main/ui/static/analysis/templates/settlement_transactions.html b/src/main/ui/static/analysis/templates/settlement_transactions.html index c561224c2..6a6afb28d 100644 --- a/src/main/ui/static/analysis/templates/settlement_transactions.html +++ b/src/main/ui/static/analysis/templates/settlement_transactions.html @@ -86,6 +86,12 @@ +
+
+ Tax Amount + +
+
@@ -128,6 +134,12 @@
+
+
+ Tax Amount + +
+
@@ -143,7 +155,9 @@
+ + @@ -158,7 +172,9 @@ + + @@ -177,7 +193,9 @@ + + @@ -191,7 +209,9 @@ + +
Rate Total Charge Net AmountTax Amount Settle Days Transactions
diff --git a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html index 84cb0e0eb..6a1d32745 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html @@ -77,6 +77,10 @@ Net Amount +
+ Tax Amount + +
@@ -133,6 +137,8 @@
Total Amount Clearing Amount Surcharge RateSurcharge AmountTax Amount Settle Amount Remark
diff --git a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html index 6a1d32745..8dd8fafaf 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html @@ -154,10 +154,8 @@
Total Amount Clearing Amount Surcharge RateSurcharge Amount Settle AmountTax Amount Remark
Total Amount Clearing Amount Surcharge RateSurcharge Amount Settle AmountTax Amount Remark