|
|
@ -39,7 +39,7 @@ import java.util.concurrent.TimeUnit;
|
|
|
|
* Created by davep on 2016-07-28.
|
|
|
|
* Created by davep on 2016-07-28.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@Service
|
|
|
|
@Service
|
|
|
|
public class DashboardServiceImpl implements DashboardService,DashboardAnalysisTask {
|
|
|
|
public class DashboardServiceImpl implements DashboardService, DashboardAnalysisTask {
|
|
|
|
private Logger logger = LoggerFactory.getLogger(getClass());
|
|
|
|
private Logger logger = LoggerFactory.getLogger(getClass());
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private ClientAnalysisMapper clientAnalysisMapper;
|
|
|
|
private ClientAnalysisMapper clientAnalysisMapper;
|
|
|
@ -64,25 +64,24 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
private MerchantInfoProvider merchantInfoProvider;
|
|
|
|
private MerchantInfoProvider merchantInfoProvider;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public JSONObject getCommonAnalysis1(JSONObject params) {
|
|
|
|
public JSONObject getCommonAnalysis1(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis1" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis1" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
JSONObject commonAnalysis1 = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject commonAnalysis1 = JSON.parseObject(jsonStr);
|
|
|
|
if(commonAnalysis1 != null){
|
|
|
|
if (commonAnalysis1 != null) {
|
|
|
|
return commonAnalysis1;
|
|
|
|
return commonAnalysis1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
if(params.getDate("end").after(new Date())){
|
|
|
|
if (params.getDate("end").after(new Date())) {
|
|
|
|
if(params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1))==0){
|
|
|
|
if (params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1)) == 0) {
|
|
|
|
res = transactionAnalysisMapper.getClientTransaction(params);
|
|
|
|
res = transactionAnalysisMapper.getClientTransaction(params);
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
res = customerAndOrdersStatisticsMapper.getCommonCount(params);
|
|
|
|
res = customerAndOrdersStatisticsMapper.getCommonCount(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
res = customerAndOrdersStatisticsMapper.getCommonCount(params);
|
|
|
|
res = customerAndOrdersStatisticsMapper.getCommonCount(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis1"+params.getString("org_id")+params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis1" + params.getString("org_id") + params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -91,7 +90,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
public JSONObject getCommonAnalysis3(JSONObject params) {
|
|
|
|
public JSONObject getCommonAnalysis3(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis3" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis3" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
JSONObject commonAnalysis3 = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject commonAnalysis3 = JSON.parseObject(jsonStr);
|
|
|
|
if(commonAnalysis3 != null){
|
|
|
|
if (commonAnalysis3 != null) {
|
|
|
|
return commonAnalysis3;
|
|
|
|
return commonAnalysis3;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
@ -100,7 +99,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
//res.put("total_partners", clientAnalysisMapper.countClients(params));
|
|
|
|
//res.put("total_partners", clientAnalysisMapper.countClients(params));
|
|
|
|
// 统计所有的商户,包括禁用的
|
|
|
|
// 统计所有的商户,包括禁用的
|
|
|
|
res.put("total_partners", clientAnalysisMapper.countClientsAll(params));
|
|
|
|
res.put("total_partners", clientAnalysisMapper.countClientsAll(params));
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis3"+params.getString("org_id")+params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis3" + params.getString("org_id") + params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -108,25 +107,26 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
public JSONObject getCommonAnalysis2(JSONObject params) {
|
|
|
|
public JSONObject getCommonAnalysis2(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis2" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis2" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
JSONObject commonAnalysis2 = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject commonAnalysis2 = JSON.parseObject(jsonStr);
|
|
|
|
if(commonAnalysis2 != null){
|
|
|
|
if (commonAnalysis2 != null) {
|
|
|
|
return commonAnalysis2;
|
|
|
|
return commonAnalysis2;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
if(params.getDate("end").after(new Date())){
|
|
|
|
if (params.getDate("end").after(new Date())) {
|
|
|
|
if(params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1))==0){
|
|
|
|
if (params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1)) == 0) {
|
|
|
|
res.put("total_customers", transactionAnalysisMapper.countCustomers(params));
|
|
|
|
res.put("total_customers", transactionAnalysisMapper.countCustomers(params));
|
|
|
|
res.put("old_customers", transactionAnalysisMapper.countOldCustomers(params));
|
|
|
|
res.put("old_customers", transactionAnalysisMapper.countOldCustomers(params));
|
|
|
|
res.put("traded_partners", clientAnalysisMapper.countTradedPartners(params));
|
|
|
|
res.put("traded_partners", clientAnalysisMapper.countTradedPartners(params));
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
res = getYesOrLasMonth(params);
|
|
|
|
res = getYesOrLasMonth(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
res = getYesOrLasMonth(params);
|
|
|
|
res = getYesOrLasMonth(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis2"+params.getString("org_id")+params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis2" + params.getString("org_id") + params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
private JSONObject getYesOrLasMonth(JSONObject params){
|
|
|
|
|
|
|
|
|
|
|
|
private JSONObject getYesOrLasMonth(JSONObject params) {
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
res.put("traded_partners", customerAndOrdersStatisticsMapper.countTradedClients(params));
|
|
|
|
res.put("traded_partners", customerAndOrdersStatisticsMapper.countTradedClients(params));
|
|
|
|
res.put("total_customers", customerAndOrdersStatisticsMapper.countTotalCustomers(params));
|
|
|
|
res.put("total_customers", customerAndOrdersStatisticsMapper.countTotalCustomers(params));
|
|
|
@ -138,7 +138,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
public JSONObject getCommonAnalysis4(JSONObject params) {
|
|
|
|
public JSONObject getCommonAnalysis4(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis4" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_commonAnalysis4" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
JSONObject commonAnalysis4 = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject commonAnalysis4 = JSON.parseObject(jsonStr);
|
|
|
|
if(commonAnalysis4 != null){
|
|
|
|
if (commonAnalysis4 != null) {
|
|
|
|
return commonAnalysis4;
|
|
|
|
return commonAnalysis4;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
@ -146,22 +146,22 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
if (!topOrders.isEmpty()) {
|
|
|
|
if (!topOrders.isEmpty()) {
|
|
|
|
res.put("top_amount_order", topOrders.get(0));
|
|
|
|
res.put("top_amount_order", topOrders.get(0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis4"+params.getString("org_id")+params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("org_commonAnalysis4" + params.getString("org_id") + params.getString("begin")).set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<JSONObject> getTradeInTypes(JSONObject params) {
|
|
|
|
public List<JSONObject> getTradeInTypes(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("tradeInTypes"+params.getString("org_id")+ params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("tradeInTypes" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
List<JSONObject> tradeInTypes = JSONObject.parseArray(jsonStr,JSONObject.class);
|
|
|
|
List<JSONObject> tradeInTypes = JSONObject.parseArray(jsonStr, JSONObject.class);
|
|
|
|
if(tradeInTypes != null){
|
|
|
|
if (tradeInTypes != null) {
|
|
|
|
return tradeInTypes;
|
|
|
|
return tradeInTypes;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (params.containsKey("client_id")) {
|
|
|
|
if (params.containsKey("client_id")) {
|
|
|
|
clientManager.queryModifyClientIds(params.getInteger("client_id"), params);
|
|
|
|
clientManager.queryModifyClientIds(params.getInteger("client_id"), params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<JSONObject> res = transactionAnalysisMapper.getTradeAmountInTypes(params);
|
|
|
|
List<JSONObject> res = transactionAnalysisMapper.getTradeAmountInTypes(params);
|
|
|
|
stringRedisTemplate.boundValueOps("tradeInTypes"+params.getString("org_id")+ params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("tradeInTypes" + params.getString("org_id") + params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -175,14 +175,14 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<JSONObject> getTopTradePartnersNew(JSONObject params) {
|
|
|
|
public List<JSONObject> getTopTradePartnersNew(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("topTradePartnersNew"+params.getString("org_id")+ params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("topTradePartnersNew" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
List<JSONObject> topTradePartnersNew = JSONObject.parseArray(jsonStr,JSONObject.class);
|
|
|
|
List<JSONObject> topTradePartnersNew = JSONObject.parseArray(jsonStr, JSONObject.class);
|
|
|
|
if(topTradePartnersNew != null){
|
|
|
|
if (topTradePartnersNew != null) {
|
|
|
|
return topTradePartnersNew;
|
|
|
|
return topTradePartnersNew;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
params.putIfAbsent("rankType", "aud_fee");
|
|
|
|
params.putIfAbsent("rankType", "aud_fee");
|
|
|
|
List<JSONObject> res = clientAnalysisMapper.listPartnersTradeAmountNew(params);
|
|
|
|
List<JSONObject> res = clientAnalysisMapper.listPartnersTradeAmountNew(params);
|
|
|
|
stringRedisTemplate.boundValueOps("topTradePartnersNew"+params.getString("org_id")+ params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("topTradePartnersNew" + params.getString("org_id") + params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -277,6 +277,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
analysis.add(wechatHtml5);
|
|
|
|
analysis.add(wechatHtml5);
|
|
|
|
return analysis;
|
|
|
|
return analysis;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<JSONObject> getPartnerTradeAnalysisInDays(JSONObject params) {
|
|
|
|
public List<JSONObject> getPartnerTradeAnalysisInDays(JSONObject params) {
|
|
|
|
int date_range = Integer.parseInt(DurationFormatUtils.formatPeriod(params.getDate("begin").getTime(), params.getDate("end").getTime(), "dd"));
|
|
|
|
int date_range = Integer.parseInt(DurationFormatUtils.formatPeriod(params.getDate("begin").getTime(), params.getDate("end").getTime(), "dd"));
|
|
|
@ -293,16 +294,16 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<JSONObject> getTradeAnalysisInDays(JSONObject params) {
|
|
|
|
public List<JSONObject> getTradeAnalysisInDays(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("tradeAnalysisInDays"+params.getString("org_id")+ params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("tradeAnalysisInDays" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
List<JSONObject> tradeAnalysisInDays = JSONObject.parseArray(jsonStr,JSONObject.class);
|
|
|
|
List<JSONObject> tradeAnalysisInDays = JSONObject.parseArray(jsonStr, JSONObject.class);
|
|
|
|
if(tradeAnalysisInDays != null){
|
|
|
|
if (tradeAnalysisInDays != null) {
|
|
|
|
return tradeAnalysisInDays;
|
|
|
|
return tradeAnalysisInDays;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!params.containsKey("client_ids") && !params.containsKey("org_id")) {
|
|
|
|
if (!params.containsKey("client_ids") && !params.containsKey("org_id")) {
|
|
|
|
params.put("client_id", 0);
|
|
|
|
params.put("client_id", 0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<JSONObject> res = customerAndOrdersStatisticsMapper.getSumCustomersAnalysis(params);
|
|
|
|
List<JSONObject> res = customerAndOrdersStatisticsMapper.getSumCustomersAnalysis(params);
|
|
|
|
stringRedisTemplate.boundValueOps("tradeAnalysisInDays"+params.getString("org_id")+ params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("tradeAnalysisInDays" + params.getString("org_id") + params.getString("begin")).set(res.toString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -330,11 +331,11 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
params.put("client_id", partner.getIntValue("client_id"));
|
|
|
|
params.put("client_id", partner.getIntValue("client_id"));
|
|
|
|
clientManager.queryModifyClientIds(partner.getIntValue("client_id"), params);
|
|
|
|
clientManager.queryModifyClientIds(partner.getIntValue("client_id"), params);
|
|
|
|
JSONObject today = getTransJSONO(params);
|
|
|
|
JSONObject today = getTransJSONO(params);
|
|
|
|
params.put("begin",DateUtils.addDays(params.getDate("begin"),-1));
|
|
|
|
params.put("begin", DateUtils.addDays(params.getDate("begin"), -1));
|
|
|
|
params.put("end",DateUtils.addDays(params.getDate("end"),-1));
|
|
|
|
params.put("end", DateUtils.addDays(params.getDate("end"), -1));
|
|
|
|
JSONObject yes = getTransJSONO(params);
|
|
|
|
JSONObject yes = getTransJSONO(params);
|
|
|
|
res.put("today",today);
|
|
|
|
res.put("today", today);
|
|
|
|
res.put("yes",yes);
|
|
|
|
res.put("yes", yes);
|
|
|
|
// res.put("not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// res.put("not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// params.put("channel", "system");
|
|
|
|
// params.put("channel", "system");
|
|
|
|
// res.put("sys_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// res.put("sys_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
@ -342,18 +343,19 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
// res.put("rpaypmt_card_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// res.put("rpaypmt_card_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// params.put("channel", "rpaypmt_dd");
|
|
|
|
// params.put("channel", "rpaypmt_dd");
|
|
|
|
// res.put("rpaypmt_dd_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
// res.put("rpaypmt_dd_not_settled", new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
res.put("trade_amount_rise",yes.getBigDecimal("trade_amount").compareTo(BigDecimal.ZERO)>0 ? (today.getBigDecimal("trade_amount").subtract(yes.getBigDecimal("trade_amount"))).divide(yes.getBigDecimal("trade_amount"), 4, RoundingMode.HALF_UP):BigDecimal.ZERO);
|
|
|
|
res.put("trade_amount_rise", yes.getBigDecimal("trade_amount").compareTo(BigDecimal.ZERO) > 0 ? (today.getBigDecimal("trade_amount").subtract(yes.getBigDecimal("trade_amount"))).divide(yes.getBigDecimal("trade_amount"), 4, RoundingMode.HALF_UP) : BigDecimal.ZERO);
|
|
|
|
res.put("trade_count_rise", yes.getIntValue("trade_count") > 0 ? (today.getBigDecimal("trade_count").subtract(yes.getBigDecimal("trade_count"))).divide(yes.getBigDecimal("trade_count"), 4, RoundingMode.HALF_UP) : 0);
|
|
|
|
res.put("trade_count_rise", yes.getIntValue("trade_count") > 0 ? (today.getBigDecimal("trade_count").subtract(yes.getBigDecimal("trade_count"))).divide(yes.getBigDecimal("trade_count"), 4, RoundingMode.HALF_UP) : 0);
|
|
|
|
res.put("customers_rise", yes.getIntValue("customers") > 0 ? (today.getBigDecimal("customers").subtract(yes.getBigDecimal("customers"))).divide(yes.getBigDecimal("customers"), 4, RoundingMode.HALF_UP) : 0);
|
|
|
|
res.put("customers_rise", yes.getIntValue("customers") > 0 ? (today.getBigDecimal("customers").subtract(yes.getBigDecimal("customers"))).divide(yes.getBigDecimal("customers"), 4, RoundingMode.HALF_UP) : 0);
|
|
|
|
params.remove("begin");
|
|
|
|
params.remove("begin");
|
|
|
|
params.remove("end");
|
|
|
|
params.remove("end");
|
|
|
|
List<JSONObject> logs = transactionMapper.listSettlementLogTotal(params);
|
|
|
|
List<JSONObject> logs = transactionMapper.listSettlementLogTotal(params);
|
|
|
|
res.put("latest_settle",logs.isEmpty()?BigDecimal.ZERO:logs.get(0).getBigDecimal("income"));
|
|
|
|
res.put("latest_settle", logs.isEmpty() ? BigDecimal.ZERO : logs.get(0).getBigDecimal("income"));
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 根据渠道号分别加载未清算金额
|
|
|
|
* 根据渠道号分别加载未清算金额
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param partner
|
|
|
|
* @param partner
|
|
|
|
* @param partnerAnalysisBean
|
|
|
|
* @param partnerAnalysisBean
|
|
|
|
* @return
|
|
|
|
* @return
|
|
|
@ -374,16 +376,17 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
params.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
|
|
|
|
params.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
|
|
|
|
params.put("client_id", partner.getIntValue("client_id"));
|
|
|
|
params.put("client_id", partner.getIntValue("client_id"));
|
|
|
|
clientManager.queryModifyClientIds(partner.getIntValue("client_id"), params);
|
|
|
|
clientManager.queryModifyClientIds(partner.getIntValue("client_id"), params);
|
|
|
|
params.put("begin",DateUtils.addDays(params.getDate("begin"),-1));
|
|
|
|
params.put("begin", DateUtils.addDays(params.getDate("begin"), -1));
|
|
|
|
params.put("end",DateUtils.addDays(params.getDate("end"),-1));
|
|
|
|
params.put("end", DateUtils.addDays(params.getDate("end"), -1));
|
|
|
|
String key="not_settled";
|
|
|
|
String key = "not_settled";
|
|
|
|
if(StringUtils.isNotEmpty(params.getString("channel"))){
|
|
|
|
if (StringUtils.isNotEmpty(params.getString("channel"))) {
|
|
|
|
key=params.getString("channel")+"_not_settled";
|
|
|
|
key = params.getString("channel") + "_not_settled";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
res.put(key, new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
res.put(key, new BigDecimal(transactionAnalysisMapper.analysisNotSettled(params)));
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
private JSONObject getTransJSONO(JSONObject params){
|
|
|
|
|
|
|
|
|
|
|
|
private JSONObject getTransJSONO(JSONObject params) {
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject object = transactionAnalysisMapper.getClientTransaction(params);
|
|
|
|
JSONObject object = transactionAnalysisMapper.getClientTransaction(params);
|
|
|
|
res.put("trade_amount", object.getBigDecimal("trade_amount"));
|
|
|
|
res.put("trade_amount", object.getBigDecimal("trade_amount"));
|
|
|
@ -391,6 +394,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
res.put("customers", transactionAnalysisMapper.countCustomers(params));
|
|
|
|
res.put("customers", transactionAnalysisMapper.countCustomers(params));
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<JSONObject> getTradeAnalysisInHours(JSONObject partner, AnalysisBean partnerAnalysisBean) {
|
|
|
|
public List<JSONObject> getTradeAnalysisInHours(JSONObject partner, AnalysisBean partnerAnalysisBean) {
|
|
|
|
String timezone = partner.getJSONObject("client").getString("timezone");
|
|
|
|
String timezone = partner.getJSONObject("client").getString("timezone");
|
|
|
@ -446,22 +450,22 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
throw new ParamInvalidException("end", "error.payment.valid.invalid_time");
|
|
|
|
throw new ParamInvalidException("end", "error.payment.valid.invalid_time");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<JSONObject> listChannelRate = new ArrayList<>();
|
|
|
|
List<JSONObject> listChannelRate = new ArrayList<>();
|
|
|
|
Map<Date,JSONObject> exchangeRateMap = new TreeMap<>();
|
|
|
|
Map<Date, JSONObject> exchangeRateMap = new TreeMap<>();
|
|
|
|
String[] channels = {"Wechat","Alipay"};
|
|
|
|
String[] channels = {"Wechat", "Alipay"};
|
|
|
|
for (String channel:channels){
|
|
|
|
for (String channel : channels) {
|
|
|
|
channelsExchangeRate(beginDate, endDate, exchangeRateMap, channel);
|
|
|
|
channelsExchangeRate(beginDate, endDate, exchangeRateMap, channel);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
for (Date date:exchangeRateMap.keySet()){
|
|
|
|
for (Date date : exchangeRateMap.keySet()) {
|
|
|
|
JSONObject total = exchangeRateMap.get(date);
|
|
|
|
JSONObject total = exchangeRateMap.get(date);
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");
|
|
|
|
String time = sdf.format(date);
|
|
|
|
String time = sdf.format(date);
|
|
|
|
total.put("date",time);
|
|
|
|
total.put("date", time);
|
|
|
|
for (String channel:channels){
|
|
|
|
for (String channel : channels) {
|
|
|
|
if(total.getJSONObject(channel)==null){
|
|
|
|
if (total.getJSONObject(channel) == null) {
|
|
|
|
JSONObject mockAnalysis = new JSONObject();
|
|
|
|
JSONObject mockAnalysis = new JSONObject();
|
|
|
|
mockAnalysis.put("exchange_rate",0);
|
|
|
|
mockAnalysis.put("exchange_rate", 0);
|
|
|
|
mockAnalysis.put("date",time);
|
|
|
|
mockAnalysis.put("date", time);
|
|
|
|
total.put(channel,mockAnalysis);
|
|
|
|
total.put(channel, mockAnalysis);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
listChannelRate.add(total);
|
|
|
|
listChannelRate.add(total);
|
|
|
@ -469,17 +473,17 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
return listChannelRate;
|
|
|
|
return listChannelRate;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void channelsExchangeRate(Date beginDate,Date endDate,Map<Date, JSONObject> exchangeRateMap, String channel){
|
|
|
|
public void channelsExchangeRate(Date beginDate, Date endDate, Map<Date, JSONObject> exchangeRateMap, String channel) {
|
|
|
|
|
|
|
|
|
|
|
|
List<JSONObject> channelRates = exchangeRateMapper.listExchangeRates(beginDate, endDate,channel);
|
|
|
|
List<JSONObject> channelRates = exchangeRateMapper.listExchangeRates(beginDate, endDate, channel);
|
|
|
|
for (JSONObject analysisItem:channelRates){
|
|
|
|
for (JSONObject analysisItem : channelRates) {
|
|
|
|
Date date = analysisItem.getDate("date");
|
|
|
|
Date date = analysisItem.getDate("date");
|
|
|
|
JSONObject dataItem = exchangeRateMap.get(date);
|
|
|
|
JSONObject dataItem = exchangeRateMap.get(date);
|
|
|
|
if(dataItem==null){
|
|
|
|
if (dataItem == null) {
|
|
|
|
dataItem = new JSONObject();
|
|
|
|
dataItem = new JSONObject();
|
|
|
|
exchangeRateMap.put(date,dataItem);
|
|
|
|
exchangeRateMap.put(date, dataItem);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
dataItem.put(channel,analysisItem);
|
|
|
|
dataItem.put(channel, analysisItem);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -502,16 +506,16 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
public JSONObject getNewRecord() {
|
|
|
|
public JSONObject getNewRecord() {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("newRecord").get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("newRecord").get();
|
|
|
|
JSONObject newRecord = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject newRecord = JSON.parseObject(jsonStr);
|
|
|
|
if(newRecord != null){
|
|
|
|
if (newRecord != null) {
|
|
|
|
return newRecord;
|
|
|
|
return newRecord;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject max_amount = customerAndOrdersStatisticsMapper.getMaxAmount(0);
|
|
|
|
JSONObject max_amount = customerAndOrdersStatisticsMapper.getMaxAmount(0);
|
|
|
|
JSONObject max_orders = customerAndOrdersStatisticsMapper.getMaxOrders(0);
|
|
|
|
JSONObject max_orders = customerAndOrdersStatisticsMapper.getMaxOrders(0);
|
|
|
|
JSONObject maxTransactionPartners = customerAndOrdersStatisticsMapper.getMaxTransactionPartners();
|
|
|
|
JSONObject maxTransactionPartners = customerAndOrdersStatisticsMapper.getMaxTransactionPartners();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
|
res.put("max_amount",max_amount);
|
|
|
|
res.put("max_amount", max_amount);
|
|
|
|
res.put("max_orders",max_orders);
|
|
|
|
res.put("max_orders", max_orders);
|
|
|
|
res.put("max_transaction_partners",maxTransactionPartners);
|
|
|
|
res.put("max_transaction_partners", maxTransactionPartners);
|
|
|
|
stringRedisTemplate.boundValueOps("newRecord").set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("newRecord").set(res.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return res;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -523,29 +527,31 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void generateCustomersAndOrdersStatistics(Date analysisDate){
|
|
|
|
public void generateCustomersAndOrdersStatistics(Date analysisDate) {
|
|
|
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
|
|
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
|
|
|
String date = format.format(analysisDate);
|
|
|
|
String date = format.format(analysisDate);
|
|
|
|
List<JSONObject> clients =clientMapper.listClients();
|
|
|
|
List<JSONObject> clients = clientMapper.listClients();
|
|
|
|
for (JSONObject client:clients){
|
|
|
|
for (JSONObject client : clients) {
|
|
|
|
generateData(format, date, client);
|
|
|
|
generateData(format, date, client);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
JSONObject totalObject = new JSONObject();
|
|
|
|
JSONObject totalObject = new JSONObject();
|
|
|
|
totalObject.put("client_id",0);
|
|
|
|
totalObject.put("client_id", 0);
|
|
|
|
generateData(format,date,totalObject);
|
|
|
|
generateData(format, date, totalObject);
|
|
|
|
|
|
|
|
logger.info("generate customer and orders statistics on {} done", date);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 重新生成执行商户下某日消费者数据
|
|
|
|
* 重新生成执行商户下某日消费者数据
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param analysisDate
|
|
|
|
* @param analysisDate
|
|
|
|
* @param clientId
|
|
|
|
* @param clientId
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public void generateCustomersAndOrdersStatisticsByClientMoniker(Date analysisDate,String clientId){
|
|
|
|
public void generateCustomersAndOrdersStatisticsByClientMoniker(Date analysisDate, String clientId) {
|
|
|
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
|
|
|
DateFormat format = new SimpleDateFormat("yyyyMMdd");
|
|
|
|
String date = format.format(analysisDate);
|
|
|
|
String date = format.format(analysisDate);
|
|
|
|
List<JSONObject> clients =clientMapper.listClients();
|
|
|
|
List<JSONObject> clients = clientMapper.listClients();
|
|
|
|
for (JSONObject client:clients){
|
|
|
|
for (JSONObject client : clients) {
|
|
|
|
if(client.getString("client_id").equals(clientId)){
|
|
|
|
if (client.getString("client_id").equals(clientId)) {
|
|
|
|
generateData(format, date, client);
|
|
|
|
generateData(format, date, client);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -553,8 +559,8 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
|
|
|
|
|
|
|
|
private void generateData(DateFormat format, String date, JSONObject client) {
|
|
|
|
private void generateData(DateFormat format, String date, JSONObject client) {
|
|
|
|
JSONObject params = new JSONObject();
|
|
|
|
JSONObject params = new JSONObject();
|
|
|
|
String timezone =client.getString("timezone");
|
|
|
|
String timezone = client.getString("timezone");
|
|
|
|
if (timezone!=null){
|
|
|
|
if (timezone != null) {
|
|
|
|
format.setTimeZone(TimeZone.getTimeZone(timezone));
|
|
|
|
format.setTimeZone(TimeZone.getTimeZone(timezone));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
try {
|
|
|
|
try {
|
|
|
@ -563,17 +569,17 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
} catch (ParseException e) {
|
|
|
|
} catch (ParseException e) {
|
|
|
|
throw new ParamInvalidException("date", "error.payment.valid.invalid_date_format");
|
|
|
|
throw new ParamInvalidException("date", "error.payment.valid.invalid_date_format");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (client.getIntValue("client_id")!=0){
|
|
|
|
if (client.getIntValue("client_id") != 0) {
|
|
|
|
params.put("client_id",client.getIntValue("client_id"));
|
|
|
|
params.put("client_id", client.getIntValue("client_id"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<JSONObject> records = transactionAnalysisMapper.getCustomersAndOrdersInDaysUseInScheduled(params);
|
|
|
|
List<JSONObject> records = transactionAnalysisMapper.getCustomersAndOrdersInDaysUseInScheduled(params);
|
|
|
|
if (!records.isEmpty()){
|
|
|
|
if (!records.isEmpty()) {
|
|
|
|
JSONObject deleteParams = new JSONObject();
|
|
|
|
JSONObject deleteParams = new JSONObject();
|
|
|
|
deleteParams.put("begin",params.getDate("begin"));
|
|
|
|
deleteParams.put("begin", params.getDate("begin"));
|
|
|
|
deleteParams.put("end",params.getDate("end"));
|
|
|
|
deleteParams.put("end", params.getDate("end"));
|
|
|
|
deleteParams.put("client_id",params.getIntValue("client_id"));
|
|
|
|
deleteParams.put("client_id", params.getIntValue("client_id"));
|
|
|
|
customerAndOrdersStatisticsMapper.delete(deleteParams);
|
|
|
|
customerAndOrdersStatisticsMapper.delete(deleteParams);
|
|
|
|
for (JSONObject record:records){
|
|
|
|
for (JSONObject record : records) {
|
|
|
|
String sdate = format.format(record.getDate("date"));
|
|
|
|
String sdate = format.format(record.getDate("date"));
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
params.put("begin", format.parse(sdate));
|
|
|
|
params.put("begin", format.parse(sdate));
|
|
|
@ -581,17 +587,17 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
} catch (ParseException e) {
|
|
|
|
} catch (ParseException e) {
|
|
|
|
throw new ParamInvalidException("date", "error.payment.valid.invalid_date_format");
|
|
|
|
throw new ParamInvalidException("date", "error.payment.valid.invalid_date_format");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
params.put("channel",record.getString("channel"));
|
|
|
|
params.put("channel", record.getString("channel"));
|
|
|
|
int newCustomers = 0;
|
|
|
|
int newCustomers = 0;
|
|
|
|
int oldCustomers = transactionAnalysisMapper.countOldCustomers(params);
|
|
|
|
int oldCustomers = transactionAnalysisMapper.countOldCustomers(params);
|
|
|
|
if (client.getIntValue("client_id")==0){
|
|
|
|
if (client.getIntValue("client_id") == 0) {
|
|
|
|
newCustomers = record.getIntValue("customers")-oldCustomers;
|
|
|
|
newCustomers = record.getIntValue("customers") - oldCustomers;
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
newCustomers = transactionAnalysisMapper.countNewCustomers(params);
|
|
|
|
newCustomers = transactionAnalysisMapper.countNewCustomers(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
record.put("new_customers",newCustomers);
|
|
|
|
record.put("new_customers", newCustomers);
|
|
|
|
record.put("old_customers",oldCustomers);
|
|
|
|
record.put("old_customers", oldCustomers);
|
|
|
|
record.put("client_id",client.getIntValue("client_id"));
|
|
|
|
record.put("client_id", client.getIntValue("client_id"));
|
|
|
|
if (StringUtils.equalsIgnoreCase("rpaypmt_card", record.getString("channel")) || StringUtils.equalsIgnoreCase("rpaypmt_dd", record.getString("channel"))) {
|
|
|
|
if (StringUtils.equalsIgnoreCase("rpaypmt_card", record.getString("channel")) || StringUtils.equalsIgnoreCase("rpaypmt_dd", record.getString("channel"))) {
|
|
|
|
record.put("single_amount", record.getBigDecimal("total").divide(record.getBigDecimal("orders"), 2, RoundingMode.HALF_UP));
|
|
|
|
record.put("single_amount", record.getBigDecimal("total").divide(record.getBigDecimal("orders"), 2, RoundingMode.HALF_UP));
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -599,37 +605,40 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public JSONObject getPlatformAmount(JSONObject params) {
|
|
|
|
public JSONObject getPlatformAmount(JSONObject params) {
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_ChannelAnalysis" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
String jsonStr = stringRedisTemplate.boundValueOps("org_ChannelAnalysis" + params.getString("org_id") + params.getString("begin")).get();
|
|
|
|
JSONObject channelAnalysis = JSON.parseObject(jsonStr);
|
|
|
|
JSONObject channelAnalysis = JSON.parseObject(jsonStr);
|
|
|
|
if(channelAnalysis != null){
|
|
|
|
if (channelAnalysis != null) {
|
|
|
|
return channelAnalysis;
|
|
|
|
return channelAnalysis;
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
JSONObject resp;
|
|
|
|
JSONObject resp;
|
|
|
|
if(params.getDate("end").compareTo(new Date()) > 0){
|
|
|
|
if (params.getDate("end").compareTo(new Date()) > 0) {
|
|
|
|
if(params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1))==0){
|
|
|
|
if (params.getDate("begin").compareTo(DateUtils.addDays(params.getDate("end"), -1)) == 0) {
|
|
|
|
resp = getTodayChannelCount(params);
|
|
|
|
resp = getTodayChannelCount(params);
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
resp = customerAndOrdersStatisticsMapper.getChannelCommonCount(params);
|
|
|
|
resp = customerAndOrdersStatisticsMapper.getChannelCommonCount(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}else {
|
|
|
|
} else {
|
|
|
|
resp = customerAndOrdersStatisticsMapper.getChannelCommonCount(params);
|
|
|
|
resp = customerAndOrdersStatisticsMapper.getChannelCommonCount(params);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stringRedisTemplate.boundValueOps("org_ChannelAnalysis"+ params.getString("org_id")+params.getString("begin")).set(resp.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
stringRedisTemplate.boundValueOps("org_ChannelAnalysis" + params.getString("org_id") + params.getString("begin")).set(resp.toJSONString(), 5, TimeUnit.MINUTES);
|
|
|
|
return resp;
|
|
|
|
return resp;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
private JSONObject getTodayChannelCount(JSONObject params){
|
|
|
|
|
|
|
|
|
|
|
|
private JSONObject getTodayChannelCount(JSONObject params) {
|
|
|
|
String[] channels = new String[]{"Wechat", "Alipay", "AlipayOnline", "Rpay", "rpaypmt_card", "rpaypmt_dd"};
|
|
|
|
String[] channels = new String[]{"Wechat", "Alipay", "AlipayOnline", "Rpay", "rpaypmt_card", "rpaypmt_dd"};
|
|
|
|
JSONObject resp = new JSONObject();
|
|
|
|
JSONObject resp = new JSONObject();
|
|
|
|
for(String channel:channels) {
|
|
|
|
for (String channel : channels) {
|
|
|
|
params.put("channel", channel);
|
|
|
|
params.put("channel", channel);
|
|
|
|
resp.put(channel.toLowerCase()+"amount", transactionAnalysisMapper.getPlatformAmount(params).getBigDecimal("amount"));
|
|
|
|
resp.put(channel.toLowerCase() + "amount", transactionAnalysisMapper.getPlatformAmount(params).getBigDecimal("amount"));
|
|
|
|
resp.put(channel.toLowerCase()+"_order_count", transactionAnalysisMapper.getPlatformAmount(params).getIntValue("order_count"));
|
|
|
|
resp.put(channel.toLowerCase() + "_order_count", transactionAnalysisMapper.getPlatformAmount(params).getIntValue("order_count"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return resp;
|
|
|
|
return resp;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public JSONObject getOrderAndCustomerPerDay(JSONObject partner, AnalysisBean partnerAnalysisBean) {
|
|
|
|
public JSONObject getOrderAndCustomerPerDay(JSONObject partner, AnalysisBean partnerAnalysisBean) {
|
|
|
|
String timezone = partner.getJSONObject("client").getString("timezone");
|
|
|
|
String timezone = partner.getJSONObject("client").getString("timezone");
|
|
|
|