diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/beans/AnalysisBean.java b/src/main/java/au/com/royalpay/payment/manage/analysis/beans/AnalysisBean.java
index 5b92ba4af..a6934c5d3 100644
--- a/src/main/java/au/com/royalpay/payment/manage/analysis/beans/AnalysisBean.java
+++ b/src/main/java/au/com/royalpay/payment/manage/analysis/beans/AnalysisBean.java
@@ -36,6 +36,7 @@ public class AnalysisBean {
private String amount_from;
private String amount_to;
private String bd_name;
+ private boolean recent_client = false;
public JSONObject toParams(String timezone) {
JSONObject params = new JSONObject();
if (timezone != null) {
@@ -94,6 +95,14 @@ public class AnalysisBean {
return params;
}
+ public boolean isRecent_client() {
+ return recent_client;
+ }
+
+ public void setRecent_client(boolean recent_client) {
+ this.recent_client = recent_client;
+ }
+
public String getBegin() {
return begin;
}
diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/web/PartnersAnalysisController.java b/src/main/java/au/com/royalpay/payment/manage/analysis/web/PartnersAnalysisController.java
index 74608a157..52c98e681 100644
--- a/src/main/java/au/com/royalpay/payment/manage/analysis/web/PartnersAnalysisController.java
+++ b/src/main/java/au/com/royalpay/payment/manage/analysis/web/PartnersAnalysisController.java
@@ -79,6 +79,9 @@ public class PartnersAnalysisController {
params.put("bd_group_bd",analysis.getGroup_bd());
}
}
+ if (analysis.isRecent_client()){
+ params.put("recent_client",true);
+ }
return partnersAnalysisService.getPartnersSettlementAnalysis(params);
}
}
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 0713994d9..f626edc57 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
@@ -157,14 +157,13 @@
THEN 'T+2'
WHEN 3
THEN 'T+3'
- END AS settlement_cycle
+ END AS clean_days
FROM sys_clients c
- c.client_id IS not null AND c.merchant_id IS NOT NULL
- AND (c.approve_result = 1 OR c.approve_result= 2) AND c.is_valid = 1
+ c.client_id IS not null AND (c.approve_result = 1 OR c.approve_result= 2) AND c.is_valid = 1
and org_id=#{org_id}
and org_id in
- #{org_id}
+ #{org_id}
and c.client_id in
(SELECT b.client_id FROM sys_client_bd b
INNER JOIN financial_bd_config c ON c.manager_id=b.bd_id
@@ -173,9 +172,8 @@
and c.manager_id=#{bd_group_bd})
- c.client_id in
- (SELECT p.client_id FROM sys_clients p INNER JOIN statistics_customer_order o ON o.client_id = p.client_id AND o.client_id !=0
- WHERE datediff(now(), o.date) 30 AND p.client_id is not null GROUP BY p.client_id)
+ AND c.client_id in (SELECT p.client_id FROM sys_clients p INNER JOIN statistics_customer_order o ON o.client_id = p.client_id AND o.client_id !=0
+ WHERE datediff(now(), o.date) 230 AND p.client_id is not null GROUP BY p.client_id)
GROUP by c.clean_days
diff --git a/src/main/ui/static/analysis/partners-analysis.js b/src/main/ui/static/analysis/partners-analysis.js
index 517098b21..b63e17fef 100644
--- a/src/main/ui/static/analysis/partners-analysis.js
+++ b/src/main/ui/static/analysis/partners-analysis.js
@@ -23,6 +23,7 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts','./transaction/an
if (!$scope.params.onlyGroup){
$scope.loadPartnersInTypes();
$scope.doAnalysis();
+ $scope.loadTradePartnersBySettlementCycle();
return;
}
if (groupBD == 'all') {
@@ -36,6 +37,7 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts','./transaction/an
}
$scope.loadPartnersInTypes();
$scope.doAnalysis();
+ $scope.loadTradePartnersBySettlementCycle();
};
$scope.loadRoyalpayindustry = function () {
$http.get('/static/data/royalpayindustry.json').then(function (resp) {
@@ -177,42 +179,47 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts','./transaction/an
}
};
$scope.loadTradePartnersBySettlementCycle = function () {
- var partnersBySettlementCycle = {
- chart: {
- tooltip: {
- trigger: 'item',
- formatter :"{a} {b} : {c} ({d}%)"
- },
- color: colors
- },
- series: [{
- basic: {
- name: '周期', type: 'pie',
- radius: '60%',
- center: ['50%', '40%'],
- itemStyle: {
- emphasis: {
- shadowBlur: 10,
- shadowOffsetX: 0,
- shadowColor: 'rgba(0, 0, 0, 0.5)'
- },
- normal : {
- label : {
- position : 'outer',
- formatter :"{a} {b} : {c} ({d}%)"
- }
- }
- }
- },
- column: {key: 'client_count', name: 'settlement_cycle'}
- }]
- };
- $http.get('/analysis/partners/settlement', {params:{}}).then(function (resp) {
+ var params = angular.copy($scope.params);
+ $http.get('/analysis/partners/settlement', {params:params}).then(function (resp) {
$scope.settlementCycle = resp.data;
$scope.partners_settlement_chart = chartParser.parse(partnersBySettlementCycle, resp.data);
});
};
$scope.loadTradePartnersBySettlementCycle();
+ $scope.chooseThirtyDays = function () {
+ $scope.params.recent_client = true;
+ $scope.loadTradePartnersBySettlementCycle();
+ };
+ var partnersBySettlementCycle = {
+ chart: {
+ tooltip: {
+ trigger: 'item',
+ formatter :"{a} {b} : {c} ({d}%)"
+ },
+ color: colors
+ },
+ series: [{
+ basic: {
+ name: '周期', type: 'pie',
+ radius: '60%',
+ center: ['50%', '40%'],
+ itemStyle: {
+ emphasis: {
+ shadowBlur: 10,
+ shadowOffsetX: 0,
+ shadowColor: 'rgba(0, 0, 0, 0.5)'
+ },
+ normal : {
+ label : {
+ position : 'outer',
+ formatter :"{a} {b} : {c} ({d}%)"
+ }
+ }
+ }
+ },
+ column: {key: 'client_count', name: 'clean_days'}
+ }]
+ };
/*var partnerTypesConfig = function (legend) {
return {
chart: {
diff --git a/src/main/ui/static/analysis/templates/partners_analysis.html b/src/main/ui/static/analysis/templates/partners_analysis.html
index 60adf7334..bc93ec323 100644
--- a/src/main/ui/static/analysis/templates/partners_analysis.html
+++ b/src/main/ui/static/analysis/templates/partners_analysis.html
@@ -61,8 +61,8 @@
@@ -101,8 +101,13 @@
-
商户结算周期分布
-
商户结算周期分布
+
+
+
+
+
+
@@ -117,7 +122,7 @@
- |
+ |
|