From 28742dae95eeaaa61a97ddb6850d22b7b2a7f71e Mon Sep 17 00:00:00 2001 From: luoyang Date: Tue, 11 Dec 2018 14:19:05 +0800 Subject: [PATCH 1/3] temp commit add org_detail 70% --- .../analysis/core/DashboardService.java | 2 + .../core/impls/DashboardServiceImpl.java | 8 + .../mappers/ClientAnalysisMapper.java | 3 + .../analysis/web/DashboardController.java | 7 + .../analysis/mappers/ClientAnalysisMapper.xml | 13 + .../config/organizations/organizations.js | 327 +++++++++++++++++- .../organizations/templates/org_detail.html | 263 +++++++++++++- .../static/payment/partner/partner-manage.js | 3 + 8 files changed, 618 insertions(+), 8 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/DashboardService.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/DashboardService.java index 5501d2c26..237e8ab11 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/DashboardService.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/DashboardService.java @@ -35,6 +35,8 @@ public interface DashboardService { List getTradeAnalysisInDays(JSONObject params); + List getClientsTradeAnalysisInDays(JSONObject params); + JSONObject getCommonAnalysis(JSONObject partner, AnalysisBean partnerAnalysisBean); List getTradeAnalysisInHours(JSONObject partner, AnalysisBean partnerAnalysisBean); diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/DashboardServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/DashboardServiceImpl.java index 9ef8e1afb..2a276ebcb 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/DashboardServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/DashboardServiceImpl.java @@ -288,6 +288,14 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT return customerAndOrdersStatisticsMapper.getSumCustomersAnalysis(params); } + @Override + public List getClientsTradeAnalysisInDays(JSONObject params) { + if (!params.containsKey("client_ids") && !params.containsKey("org_id")) { + params.put("client_id", 0); + } + return clientAnalysisMapper.listNewClients(params); + } + @Override public JSONObject getCommonAnalysis(JSONObject partner, AnalysisBean partnerAnalysisBean) { String timezone = partner.getJSONObject("client").getString("timezone"); diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.java b/src/main/java/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.java index 13c421880..dc2ccbfd1 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.java @@ -25,6 +25,9 @@ public interface ClientAnalysisMapper { // 统计所有的商户,包括禁用的 int countClientsAll(JSONObject params); + // 统计一段时期新增的商户数 + List listNewClients(JSONObject params); + @AutoSql(type = SqlType.COUNT) @AdvanceSelect(addonWhereClause = "sub_merchant_id is not null") int countTotalPartners(); diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/web/DashboardController.java b/src/main/java/au/com/royalpay/payment/manage/analysis/web/DashboardController.java index 9035b0485..f7cc47bcb 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/web/DashboardController.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/web/DashboardController.java @@ -107,6 +107,13 @@ public class DashboardController { return dashboardService.getTradeAnalysisInDays(params); } + @ManagerMapping("/new_clients") + public List clientsTradeInDays(AnalysisBean analysis, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager) { + JSONObject params = analysis.toParams(null); + orgManager.checkOrg(manager,params); + return dashboardService.getClientsTradeAnalysisInDays(params); + } + @ManagerMapping("/partners_in_types") public List partnersInTypes(AnalysisBean analysis, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager) { JSONObject params = analysis.toParams(analysis.getTimezone()); diff --git a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml index 2a9443ed6..f6718f896 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml @@ -53,6 +53,19 @@ #{org_id} + + + + ~ +
+ +
+ +
+ Today +
+
+ Yesterday +
+ + + + + + + + + + + + + +
+
+
+ +
交易分布
+
+
+
+

组织总交易额

+
+ + + + + + + + + + + + + +
OrganizationAmount ($)
+ +
+
+
+

{{chooseOrg}} 合伙人商户交易量排名

+
+ + + + + + + + + + + + + + + + + + + + + +
RankingPartnerAUD AmountRankingPartnerAmount
+ + {{sale[0].client_moniker}} + + + + {{sale[1].client_moniker}} + +
+ +
+ +
+
+
+ + +
+
+
+ + + + @@ -419,10 +674,10 @@ diff --git a/src/main/ui/static/payment/partner/partner-manage.js b/src/main/ui/static/payment/partner/partner-manage.js index 68442d713..6a11acef0 100644 --- a/src/main/ui/static/payment/partner/partner-manage.js +++ b/src/main/ui/static/payment/partner/partner-manage.js @@ -2067,6 +2067,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter $scope.rate.hf_rate_value = parseFloat($scope.sysRateConfig.t1.HFpay); $scope.rate.Rpay_rate_value = parseFloat($scope.sysRateConfig.t1.Rpay); $scope.rate.yeepay_rate_value = parseFloat($scope.sysRateConfig.t1.Yeepay); + $scope.rate.transaction_fee = 0; break; } case '2': { @@ -2078,6 +2079,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter $scope.rate.hf_rate_value = parseFloat($scope.sysRateConfig.t2.HFpay); $scope.rate.Rpay_rate_value = parseFloat($scope.sysRateConfig.t2.Rpay); $scope.rate.yeepay_rate_value = parseFloat($scope.sysRateConfig.t2.Yeepay); + $scope.rate.transaction_fee = 0; break; } case '3': { @@ -2089,6 +2091,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter $scope.rate.hf_rate_value = parseFloat($scope.sysRateConfig.t3.HFpay); $scope.rate.Rpay_rate_value = parseFloat($scope.sysRateConfig.t3.Rpay); $scope.rate.yeepay_rate_value = parseFloat($scope.sysRateConfig.t3.Yeepay); + $scope.rate.transaction_fee = 0; break; } } From 8002da724c279db484ad7b296263a25a3f62e0e4 Mon Sep 17 00:00:00 2001 From: luoyang Date: Tue, 11 Dec 2018 17:32:52 +0800 Subject: [PATCH 2/3] =?UTF-8?q?add=20org=5Fdetail=20=E5=95=86=E6=88=B7/?= =?UTF-8?q?=E4=BA=A4=E6=98=93=E6=95=B0=E6=8D=AE/=E6=8F=90=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinancialPartnerCommissionMapper.java | 4 ++ .../manage/organizations/core/OrgManager.java | 2 + .../core/impls/OrgManagerImpl.java | 13 +++++ .../web/OrgManageController.java | 9 ++-- .../analysis/mappers/ClientAnalysisMapper.xml | 4 +- .../FinancialPartnerCommissionMapper.xml | 9 ++++ .../config/organizations/organizations.js | 21 ++++++-- .../organizations/templates/org_detail.html | 51 +++++++++++++++++++ 8 files changed, 105 insertions(+), 8 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java index 6c1a0b34c..2004bb911 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java @@ -4,6 +4,8 @@ import cn.yixblog.support.mybatis.autosql.annotations.AutoMapper; import cn.yixblog.support.mybatis.autosql.annotations.AutoSql; import cn.yixblog.support.mybatis.autosql.annotations.SqlType; import com.alibaba.fastjson.JSONObject; +import com.github.miemiedev.mybatis.paginator.domain.PageBounds; +import com.github.miemiedev.mybatis.paginator.domain.PageList; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -40,4 +42,6 @@ public interface FinancialPartnerCommissionMapper { JSONObject findByChanel(@Param("year") int year, @Param("month") int month, @Param("org_id") int orgId,@Param("channel") String channel); + PageList getClientExtractRecord(@Param("org_id") int orgId, PageBounds pageBounds); + } diff --git a/src/main/java/au/com/royalpay/payment/manage/organizations/core/OrgManager.java b/src/main/java/au/com/royalpay/payment/manage/organizations/core/OrgManager.java index b63751f3a..9dc05f5d9 100644 --- a/src/main/java/au/com/royalpay/payment/manage/organizations/core/OrgManager.java +++ b/src/main/java/au/com/royalpay/payment/manage/organizations/core/OrgManager.java @@ -27,6 +27,8 @@ public interface OrgManager { List getReferrers(); + JSONObject getCityPartnerPrizeInfoList(int page, int limit,int orgId, JSONObject manager); + void switchPermission(int orgId, String permissionName, boolean enabled); List listAllOrg(); diff --git a/src/main/java/au/com/royalpay/payment/manage/organizations/core/impls/OrgManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/organizations/core/impls/OrgManagerImpl.java index 243bd6083..b38e21b95 100644 --- a/src/main/java/au/com/royalpay/payment/manage/organizations/core/impls/OrgManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/organizations/core/impls/OrgManagerImpl.java @@ -1,5 +1,6 @@ package au.com.royalpay.payment.manage.organizations.core.impls; +import au.com.royalpay.payment.manage.mappers.financial.FinancialPartnerCommissionMapper; import au.com.royalpay.payment.manage.mappers.system.OrgMapper; import au.com.royalpay.payment.manage.organizations.beans.OrgInfo; import au.com.royalpay.payment.manage.organizations.core.OrgManager; @@ -29,6 +30,8 @@ import javax.annotation.Resource; public class OrgManagerImpl implements OrgManager { @Resource private OrgMapper orgMapper; + @Resource + private FinancialPartnerCommissionMapper financialPartnerCommissionMapper; @Override public List listOrgs(boolean detail) { @@ -126,6 +129,16 @@ public class OrgManagerImpl implements OrgManager { return orgMapper.listOrgs(1,new PageBounds()); } + @Override + public JSONObject getCityPartnerPrizeInfoList(int page, int limit,int orgId, JSONObject manager) { + if (orgId > 0) { + PageList clientExtractList = financialPartnerCommissionMapper.getClientExtractRecord(orgId, + new PageBounds(page, limit)); + return PageListUtils.buildPageListResult(clientExtractList); + } + return null; + } + @Override public void switchPermission(int orgId, String permissionName, boolean enabled) { JSONObject org = new JSONObject(); diff --git a/src/main/java/au/com/royalpay/payment/manage/organizations/web/OrgManageController.java b/src/main/java/au/com/royalpay/payment/manage/organizations/web/OrgManageController.java index 04899423e..426f13549 100644 --- a/src/main/java/au/com/royalpay/payment/manage/organizations/web/OrgManageController.java +++ b/src/main/java/au/com/royalpay/payment/manage/organizations/web/OrgManageController.java @@ -97,7 +97,10 @@ public class OrgManageController { return orgManager.getReferrers(); } - - - + @ManagerMapping(value = "/{orgId}/extract/search", method = RequestMethod.GET) + public JSONObject getCityPartnerPrizeInfoAllList(@PathVariable int orgId, + @RequestParam(defaultValue = "1") int page, + @RequestParam(defaultValue = "20") int limit, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager) { + return orgManager.getCityPartnerPrizeInfoList(page, limit,orgId,manager); + } } diff --git a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml index f6718f896..4135ca3e0 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/analysis/mappers/ClientAnalysisMapper.xml @@ -55,7 +55,7 @@ + + \ No newline at end of file diff --git a/src/main/ui/static/config/organizations/organizations.js b/src/main/ui/static/config/organizations/organizations.js index 3f8fe4e73..aeb07c09b 100644 --- a/src/main/ui/static/config/organizations/organizations.js +++ b/src/main/ui/static/config/organizations/organizations.js @@ -364,7 +364,7 @@ define(['angular', 'uiRouter', 'uiBootstrap'], function (angular) { chart: { tooltip: { trigger: 'axis', - formatter: '新增商户数' + formatter: '新增商户数:{c}' }, toolbox: { show: true, @@ -403,7 +403,7 @@ define(['angular', 'uiRouter', 'uiBootstrap'], function (angular) { type: 'category', boundaryGap: false }, - key: 'create_time' + key: 'create_times' }, series: [ { @@ -418,10 +418,25 @@ define(['angular', 'uiRouter', 'uiBootstrap'], function (angular) { }) } + $scope.loadPartners(1); + + $scope.paginationc = {}; + + $scope.loadCommission = function () { + var params = {}; + params.page = $scope.paginationc.page || 1; + params.org_id = $scope.org.org_id; + $http.get('/sys/orgs/'+$scope.org.org_id + '/extract/search', {params: params}).then(function (resp) { + $scope.client_extarct = resp.data.data; + $scope.paginationc = resp.data.pagination; + + }); + + }; + $scope.loadCommission(); - $scope.loadPartners(1); $scope.uploadLogo = function (file) { if (file == null) { diff --git a/src/main/ui/static/config/organizations/templates/org_detail.html b/src/main/ui/static/config/organizations/templates/org_detail.html index 74e98638c..6c5c944dc 100644 --- a/src/main/ui/static/config/organizations/templates/org_detail.html +++ b/src/main/ui/static/config/organizations/templates/org_detail.html @@ -582,6 +582,57 @@ +
+
合伙人提成
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
名称时间交易金额商户总手续费Royalpay手续费合伙人提成提成分润支付渠道
+ {{clientExtracts.year|limitTo:10}} + - + {{clientExtracts.month|limitTo:10}} +
+
+ +
From 1b60ddb9595d9be1ef2b8e1348a5230abbf3f2d0 Mon Sep 17 00:00:00 2001 From: luoyang Date: Tue, 11 Dec 2018 18:24:35 +0800 Subject: [PATCH 3/3] =?UTF-8?q?add=20org=5Fdetail=20=E5=95=86=E6=88=B7/?= =?UTF-8?q?=E4=BA=A4=E6=98=93=E6=95=B0=E6=8D=AE/=E6=8F=90=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impls/CityPartnerPrizeServiceImpl.java | 5 + .../organizations/templates/org_detail.html | 223 +++++++++--------- 2 files changed, 122 insertions(+), 106 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 aeaf8fb2c..8077354a6 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 @@ -389,6 +389,11 @@ public class CityPartnerPrizeServiceImpl implements CityPartnerPrizeService { int year = monthCal.get(Calendar.YEAR); int month = monthCal.get(Calendar.MONTH) + 1; + List list = financialPartnerCommissionMapper.list(year, month); + if (list!=null &&list.size() > 0) { + throw new ServerErrorException("请不要重复生成合伙人记录"); + } + financialPartnerCommissionDetailMapper.clearData(year, month, 1); financialPartnerCommissionMapper.clearData(year, month, 1); diff --git a/src/main/ui/static/config/organizations/templates/org_detail.html b/src/main/ui/static/config/organizations/templates/org_detail.html index 6c5c944dc..b87d465dc 100644 --- a/src/main/ui/static/config/organizations/templates/org_detail.html +++ b/src/main/ui/static/config/organizations/templates/org_detail.html @@ -318,6 +318,111 @@ +
+
+
+ + +
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +
UsernameDisplay NameWechatCreate TimeEmailRolesOperation
{{manager.nickname}} + + + + + + + + + + + + Modify + | + Disable +
+
+ +
+
+
+
@@ -611,7 +716,18 @@ - + + + + + + + + + + + {{clientExtracts.channel}} + @@ -638,109 +754,4 @@ -
-
-
- - -
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - -
UsernameDisplay NameWechatCreate TimeEmailRolesOperation
{{manager.nickname}} - - - - - - - - - - - - Modify - | - Disable -
-
- -
-
-
-