From a02314e2948929586959ccd6414063510b85646f Mon Sep 17 00:00:00 2001 From: wangning <164851225@qq.com> Date: Thu, 11 Jan 2018 11:34:23 +0800 Subject: [PATCH] Customer impression task --- .../impls/CityPartnerPrizeServiceImpl.java | 25 ++++++++++++++++ ...inancialPartnerCommissionDetailMapper.java | 3 ++ ...FinancialPartnerCommissionDetailMapper.xml | 1 + .../templates/org_commission_detail.html | 30 +++++++++---------- 4 files changed, 44 insertions(+), 15 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/citypartner/core/impls/CityPartnerPrizeServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/citypartner/core/impls/CityPartnerPrizeServiceImpl.java index 54f8f01f4..3a77810ca 100644 --- a/src/main/java/au/com/royalpay/payment/manage/citypartner/core/impls/CityPartnerPrizeServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/citypartner/core/impls/CityPartnerPrizeServiceImpl.java @@ -566,6 +566,23 @@ public class CityPartnerPrizeServiceImpl implements CityPartnerPrizeService { recordIds.add(jsonObject.getString("record_id")); } + + BigDecimal royalpay_charge = BigDecimal.ZERO; + List partnerPrizeDetailList = financialPartnerCommissionDetailMapper.listDetailByMonth(year,month); + Map countPartnerPrizeMap = new HashMap<>(); + for (JSONObject p : partnerPrizeDetailList) { + royalpay_charge = royalpay_charge.add(p.getBigDecimal("royalpay_charge")); + Integer key = p.getInteger("client_id"); + JSONObject partnerTmp = countPartnerPrizeMap.get(key); + if (partnerTmp == null) { + JSONObject partner = new JSONObject(); + partner.put("royalpay_charge", p.getBigDecimal("royalpay_charge")); + countPartnerPrizeMap.put(key, partner); + } else { + partnerTmp.put("royalpay_charge", partnerTmp.getBigDecimal("royalpay_charge").add(p.getBigDecimal("royalpay_charge"))); + } + } + List details = financialAgentCommissionDetailMapper.listDetailsByRecordIds(recordIds); Map> detailMap = new HashMap<>(); for (JSONObject detail : details) { @@ -582,27 +599,35 @@ public class CityPartnerPrizeServiceImpl implements CityPartnerPrizeService { List partnerClientInfos = new ArrayList<>(); BigDecimal resultGrossAmount = BigDecimal.ZERO; BigDecimal resultOrgCharge = BigDecimal.ZERO; + BigDecimal resultOrgNetCharge = BigDecimal.ZERO; for (Map.Entry> entry : detailMap.entrySet()) { JSONObject sumResult = new JSONObject(); BigDecimal grossAmount = BigDecimal.ZERO; BigDecimal orgCharge = BigDecimal.ZERO; + BigDecimal orgNetCharge = BigDecimal.ZERO; String clientMoniker = ""; + int client_id = 0; for (JSONObject jsonObject : entry.getValue()) { grossAmount = grossAmount.add(jsonObject.getBigDecimal("gross_amount")); orgCharge = orgCharge.add(jsonObject.getBigDecimal("org_charge")); + orgNetCharge = orgNetCharge.add(jsonObject.getBigDecimal("org_net_charge")); clientMoniker = jsonObject.getString("client_moniker"); } resultGrossAmount = resultGrossAmount.add(grossAmount); resultOrgCharge = resultOrgCharge.add(orgCharge); + resultOrgNetCharge = resultOrgNetCharge.add(orgNetCharge); sumResult.put("gross_amount", grossAmount); sumResult.put("org_charge", orgCharge); sumResult.put("client_moniker", clientMoniker); + sumResult.put("org_net_charge",orgNetCharge); + sumResult.put("royalpay_charge",countPartnerPrizeMap.get(client_id)==null?BigDecimal.ZERO:countPartnerPrizeMap.get(client_id).getBigDecimal("royalpay_charge")); partnerClientInfos.add(sumResult); } result.put("partner_client_infos", partnerClientInfos); result.put("monthstr", monthStr); result.put("gross_amount", resultGrossAmount); result.put("org_charge", resultOrgCharge); + result.put("org_net_charge", resultOrgNetCharge); return result; } diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.java index ff8692851..7dece311e 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.java @@ -22,4 +22,7 @@ public interface FinancialPartnerCommissionDetailMapper { List listDetails(@Param("record_id") String recordId); List listDetailsByRecordIds(List recordId); + + @AutoSql(type = SqlType.SELECT) + List listDetailByMonth(@Param("year") int year, @Param("month") int month); } diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.xml index d4fa79e43..539bb7de5 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionDetailMapper.xml @@ -23,4 +23,5 @@ ORDER BY c.client_moniker ASC, d.date_from ASC + \ No newline at end of file diff --git a/src/main/ui/static/config/orgcommission/templates/org_commission_detail.html b/src/main/ui/static/config/orgcommission/templates/org_commission_detail.html index c7d487ca6..a4a5df6c4 100644 --- a/src/main/ui/static/config/orgcommission/templates/org_commission_detail.html +++ b/src/main/ui/static/config/orgcommission/templates/org_commission_detail.html @@ -17,7 +17,7 @@ Month:
- Total Transaction:{{detail.total_transaction}} + Total Transaction:{{detail.gross_amount}}
Total Charge:{{detail.total_charge}} @@ -26,10 +26,10 @@ RoyalPay Charge:{{detail.royalPay_charge}}
- Net Charge:{{detail.net_charge}} + Org Net Charge:{{detail.org_net_charge}}
- City Partner Charge:{{detail.city_partner_charge}} + City Partner Charge:{{detail.org_charge}}
RoyalPay Charge:
-
Net Charge:
+
Org Net Charge:
City Partner Charge:
@@ -66,8 +66,8 @@ ng-bind="detail.Bestpay_total_charge|currency:'AUD'">
RoyalPay Charge:
-
Net Charge:
+
Org Net Charge:
City Partner Charge:
@@ -87,8 +87,8 @@ ng-bind="detail.Wechat_total_charge|currency:'AUD'">
RoyalPay Charge:
-
Net Charge:
+
Org Net Charge:
City Partner Charge:
@@ -108,8 +108,8 @@ ng-bind="detail.jd_total_charge|currency:'AUD'">
RoyalPay Charge:
-
Net Charge:
+
Org Net Charge:
City Partner Charge:
@@ -127,7 +127,7 @@ Transaction Total Charge RoyalPay Charge - Net Charge + Org Net Charge City Partner Charge Details @@ -138,7 +138,7 @@ - + @@ -157,7 +157,7 @@ Transaction Amount Total Charge RoyalPay Charge - Net Charge + Org Net Charge City Partner Charge channel @@ -171,7 +171,7 @@ - +