Merge branch 'develop'

# Conflicts:
#	pom.xml
master
luoyang 5 years ago
commit 79697622d7

@ -9,7 +9,7 @@
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>manage</artifactId>
<version>1.3.30</version>
<version>1.3.32</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jib-maven-plugin.version>1.4.0</jib-maven-plugin.version>

@ -7,17 +7,15 @@ import au.com.royalpay.payment.manage.analysis.core.DashboardService;
import au.com.royalpay.payment.manage.analysis.mappers.ClientAnalysisMapper;
import au.com.royalpay.payment.manage.analysis.mappers.CustomerAndOrdersStatisticsMapper;
import au.com.royalpay.payment.manage.analysis.mappers.TransactionAnalysisMapper;
import au.com.royalpay.payment.manage.mappers.client.ClientCustomersMapper;
import au.com.royalpay.payment.manage.mappers.payment.TransactionMapper;
import au.com.royalpay.payment.manage.mappers.system.ClientMapper;
import au.com.royalpay.payment.manage.mappers.system.ExchangeRateMapper;
import au.com.royalpay.payment.manage.merchants.core.ClientManager;
import au.com.royalpay.payment.tools.defines.TradeType;
import au.com.royalpay.payment.tools.merchants.core.MerchantInfoProvider;
import com.alibaba.fastjson.JSONObject;
import com.github.miemiedev.mybatis.paginator.domain.Order;
import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
import org.apache.commons.lang3.time.DateUtils;
import org.apache.commons.lang3.time.DurationFormatUtils;
import org.slf4j.Logger;
@ -26,6 +24,7 @@ import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DateFormat;
@ -34,8 +33,6 @@ import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
import javax.annotation.Resource;
/**
* Created by davep on 2016-07-28.
*/
@ -62,7 +59,7 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
private StringRedisTemplate stringRedisTemplate;
@Resource
private ClientCustomersMapper clientCustomersMapper;
private MerchantInfoProvider merchantInfoProvider;
@ -323,6 +320,8 @@ public class DashboardServiceImpl implements DashboardService,DashboardAnalysisT
params.remove("client_ids");
}
JSONObject res = new JSONObject();
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(partner.getIntValue("client_id"));
params.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
params.put("client_id", partner.getIntValue("client_id"));
JSONObject today = getTransJSONO(params);
params.put("begin",DateUtils.addDays(params.getDate("begin"),-1));

@ -2,16 +2,14 @@ package au.com.royalpay.payment.manage.analysis.web;
import au.com.royalpay.payment.manage.analysis.beans.AnalysisBean;
import au.com.royalpay.payment.manage.analysis.core.DashboardService;
import au.com.royalpay.payment.manage.analysis.core.PartnerCardDashboardService;
import au.com.royalpay.payment.manage.logview.beans.ClientLoginLogQueryBean;
import au.com.royalpay.payment.manage.management.clearing.core.CleanService;
import au.com.royalpay.payment.manage.permission.manager.PartnerMapping;
import au.com.royalpay.payment.manage.pos.datasource.ReadOnlyConnection;
import au.com.royalpay.payment.manage.signin.core.ClientLoginLogRepository;
import au.com.royalpay.payment.manage.tradelog.beans.TradeLogQuery;
import au.com.royalpay.payment.tools.CommonConsts;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@ -24,13 +22,6 @@ import java.util.List;
public class PartnerDashboardController {
@Resource
private DashboardService dashboardService;
@Resource
private PartnerCardDashboardService partnerCardDashboardService;
@Resource
private CleanService cleanService;
@PartnerMapping("/common_analysis")
@ReadOnlyConnection
public JSONObject commonAnalysis(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject partner, AnalysisBean partnerAnalysisBean) {

@ -4,7 +4,10 @@ import au.com.royalpay.payment.manage.appclient.core.RetailRSvcService;
import au.com.royalpay.payment.tools.CommonConsts;
import au.com.royalpay.payment.tools.device.advise.AppClientController;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
@ -20,9 +23,6 @@ public class RetailRSvcController {
return retailRSvcService.findMchInfoBySourceCode(device, source_code);
}
@PostMapping(value = "/{source_code}/enterService")
public JSONObject enterIntoServiceBySourceCode(@PathVariable String source_code, @RequestBody JSONObject params) {
return retailRSvcService.enterIntoServiceBySourceCode(source_code, params);
}
}

@ -0,0 +1,22 @@
package au.com.royalpay.payment.manage.appclient.web;
import au.com.royalpay.payment.manage.appclient.core.RetailRSvcService;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
@RequestMapping("/api/v1.0/server/rsvc")
public class RsvcServiceController {
@Resource
private RetailRSvcService retailRSvcService;
@PostMapping(value = "/{source_code}/enterService")
public JSONObject enterIntoServiceBySourceCode(@PathVariable String source_code, @RequestBody JSONObject params) {
return retailRSvcService.enterIntoServiceBySourceCode(source_code, params);
}
}

@ -18,10 +18,6 @@ public class ClientPayConfig {
private String clientPayDesc;
@JSONField(name = "royalpay_industry")
private String royalpayindustry;
@JSONField(name = "wechat_industry")
private String wechatindustry;
@JSONField(name = "alipay_industry")
private String alipayindustry;
@JSONField(name = "company_photo")
private String companyPhoto;
@JSONField(name = "store_photo")
@ -56,8 +52,8 @@ public class ClientPayConfig {
public JSONObject payConfig() {
JSONObject config = (JSONObject) JSON.toJSON(this);
config.put("alipayindustry", alipayindustry);
config.put("industry", wechatindustry);
config.put("alipayindustry", "5311");
config.put("industry", "336");
config.put("royalpayindustry", royalpayindustry);
return config;
}

@ -428,6 +428,9 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
}
}
List<JSONObject> children = clientMapper.listChildClients(client.getIntValue("client_id"));
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
client.putAll(mchConfig);
client.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
client.put("has_children", !children.isEmpty());
if (client.getInteger("parent_client_id") != null) {
client.put("parent_client", clientMapper.findClient(client.getInteger("parent_client_id")));
@ -2074,6 +2077,9 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
checkOrgPermission(manager, client);
List<JSONObject> listChildClients = clientMapper.listChildClients(client.getIntValue("client_id"));
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
if(mchConfig.getBooleanValue("hide_sub_mch")){
return new ArrayList<>();
}
if (!mchConfig.getBooleanValue("disable_level3_mch")) {
for (JSONObject partner : listChildClients) {
List<JSONObject> clients = clientMapper.listChildClients(partner.getIntValue("client_id"));

@ -18,11 +18,11 @@ import au.com.royalpay.payment.manage.support.sms.SmsSender;
import au.com.royalpay.payment.manage.system.core.PermissionClientModulesService;
import au.com.royalpay.payment.tools.env.PlatformEnvironment;
import au.com.royalpay.payment.tools.env.RequestEnvironment;
import au.com.royalpay.payment.tools.env.SysConfigManager;
import au.com.royalpay.payment.tools.exceptions.BadRequestException;
import au.com.royalpay.payment.tools.exceptions.ForbiddenException;
import au.com.royalpay.payment.tools.exceptions.ServerErrorException;
import au.com.royalpay.payment.tools.locale.LocaleSupport;
import au.com.royalpay.payment.tools.merchants.core.MerchantInfoProvider;
import au.com.royalpay.payment.tools.permission.enums.ManagerRole;
import au.com.royalpay.payment.tools.threadpool.RoyalThreadPoolExecutor;
import au.com.royalpay.payment.tools.utils.PasswordUtils;
@ -91,7 +91,7 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati
@Resource
private ClientComplianceCompanyMapper clientComplianceCompanyMapper;
@Resource
private SysConfigManager sysConfigManager;
private MerchantInfoProvider merchantInfoProvider;
@Resource
private SmsSender smsSender;
@Resource
@ -199,6 +199,9 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati
rootPartner = clientInfoWithNoSecretInfo(rootPartner);
account.put("parent_client", rootPartner);
}
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
client.putAll(mchConfig);
client.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
account.put("client", client);
account.put("client_moniker", client.getString("client_moniker"));
if (client.getIntValue("approve_result") == 2) {

@ -5,7 +5,6 @@ import au.com.royalpay.payment.core.beans.PayChannel;
import au.com.royalpay.payment.tools.defines.TradeType;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
import org.joda.time.format.DateTimeFormat;

@ -23,6 +23,7 @@ import au.com.royalpay.payment.tools.defines.TradeType;
import au.com.royalpay.payment.tools.env.PlatformEnvironment;
import au.com.royalpay.payment.tools.exceptions.BadRequestException;
import au.com.royalpay.payment.tools.exceptions.ServerErrorException;
import au.com.royalpay.payment.tools.merchants.core.MerchantInfoProvider;
import au.com.royalpay.payment.tools.permission.enums.ManagerRole;
import au.com.royalpay.payment.tools.permission.enums.PartnerRole;
import au.com.royalpay.payment.tools.utils.CurrencyAmountUtils;
@ -127,6 +128,8 @@ public class TradeLogServiceImpl implements TradeLogService {
@Resource
private ClientDeviceMapper clientDeviceMapper;
@Resource
private MerchantInfoProvider merchantInfoProvider;
// @Value("classpath:/jasper/trans_flow.jasper")
// @Value("classpath:/jasper/trans_flow_new.jasper")
@ -159,6 +162,8 @@ public class TradeLogServiceImpl implements TradeLogService {
add(query.getGatewayChild());
}});
}
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
params.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
PageList<JSONObject> logs = orderMapper.listOrdersByClients(params,
new PageBounds(query.getPage(), query.getLimit(), Order.formString("create_time.desc")));
if (timezone != null) {
@ -522,7 +527,8 @@ public class TradeLogServiceImpl implements TradeLogService {
JSONObject params = query.toParams(timezone);
clientManager.validateClients(client_id, params);
params.put("client_id", client_id);
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(partner.getIntValue("client_id"));
params.put("hide_sub_mch", mchConfig.getBooleanValue("hide_sub_mch"));
List<JSONObject> logs = transactionMapper.listTransFlow(params);
TimeZoneUtils.switchTimeZone(logs, timezone, "create_time", "confirm_time", "transaction_time");
Paginator paginator = new Paginator(query.getPage(), query.getLimit(), logs.size());

@ -152,18 +152,22 @@
<select id="analysisNotSettled" resultType="java.lang.Double">
<![CDATA[
SELECT ifnull(sum(if(transaction_type = 'Credit', clearing_amount, -clearing_amount)), 0)
FROM pmt_transactions
WHERE clearing_status = 0
SELECT ifnull(sum(if(pt.transaction_type = 'Credit', pt.clearing_amount, -pt.clearing_amount)), 0)
FROM pmt_transactions pt
LEFT JOIN sys_clients sc on sc.client_id = pt.client_id
WHERE pt.clearing_status = 0
]]>
<if test="client_ids!=null">
AND client_id IN
<if test="!hide_sub_mch and client_ids!=null">
AND pt.client_id IN
<foreach collection="client_ids" open="(" close=")" separator="," item="client_id">
#{client_id}
</foreach>
</if>
<if test="client_ids==null and client_id != null">
and client_id=#{client_id}
<if test="!hide_sub_mch and client_ids==null and client_id != null">
and pt.client_id=#{client_id}
</if>
<if test="hide_sub_mch">
and (sc.client_id=#{client_id} or sc.parent_client_id = #{client_id})
</if>
</select>

@ -443,7 +443,7 @@
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
and p.client_id=#{client_id}
and (p.client_id=#{client_id} or p.parent_client_id=#{client_id})
</if>
<if test="customer_id!=null">
and o.customer_id = #{customer_id}
@ -466,15 +466,18 @@
</if>
FROM pmt_orders o
INNER JOIN sys_clients p ON p.client_id=o.client_id and p.is_valid=1
<if test="client_ids!=null">
<if test="!hide_sub_mch and client_ids!=null">
AND p.client_id IN
<foreach collection="client_ids" open="(" close=")" separator="," item="client_id">
#{client_id}
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
<if test="!hide_sub_mch and client_ids==null and client_id !=null">
and p.client_id=#{client_id}
</if>
<if test="hide_sub_mch">
and (p.client_id=#{client_id} or p.parent_client_id=#{client_id})
</if>
<if test="customer_id!=null">
and o.customer_id = #{customer_id}
</if>
@ -551,7 +554,7 @@
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
and p.client_id=#{client_id}
and (p.client_id=#{client_id} or p.parent_client_id=#{client_id})
</if>
LEFT JOIN pmt_transactions t on t.order_id=o.order_id and t.refund_id is null and t.transaction_type='Credit'
LEFT JOIN pmt_incremental_detail i on i.transaction_id = t.transaction_id
@ -608,15 +611,18 @@
<include refid="tradelog_list_keys"/>
FROM pmt_orders o
INNER JOIN sys_clients p ON p.client_id=o.client_id AND p.is_valid=1
<if test="client_ids!=null">
<if test="!hide_sub_mch and client_ids!=null">
AND p.client_id IN
<foreach collection="client_ids" open="(" close=")" separator="," item="client_id">
#{client_id}
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
<if test="!hide_sub_mch and client_ids==null and client_id !=null">
and p.client_id=#{client_id}
</if>
<if test="hide_sub_mch">
and (p.client_id=#{client_id} or p.parent_client_id=#{client_id})
</if>
INNER JOIN pmt_transactions t on t.order_id=o.order_id and (t.transaction_type='Credit' or t.refund_id is not
null)
<where>
@ -800,7 +806,7 @@
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
and p.client_id=#{client_id}
and (p.client_id=#{client_id} or p.parent_client_id=#{client_id})
</if>
<if test="customer_id!=null">
and o.customer_id = #{customer_id}

@ -156,14 +156,17 @@
left join sys_customer_relation_alipay ra on ra.alipay_uid = o.customer_id
LEFT JOIN sys_clients c on c.client_id = t.client_id
<where>
<if test="client_ids!=null">
<if test="!hide_sub_mch and client_ids!=null">
AND t.client_id IN
<foreach collection="client_ids" open="(" close=")" separator="," item="client_id">
#{client_id}
</foreach>
</if>
<if test="client_ids==null">
and t.client_id=#{client_id}
<if test="!hide_sub_mch and client_ids==null">
and c.client_id=#{client_id}
</if>
<if test="hide_sub_mch">
and (c.client_id=#{client_id} or c.parent_client_id=#{client_id})
</if>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -226,6 +229,7 @@
FROM pmt_transactions t
left JOIN pmt_orders o on o.order_id=t.order_id
LEFT JOIN sys_clients c on c.client_id = t.client_id
<where>
<if test="client_ids!=null">
AND t.client_id IN
@ -234,7 +238,7 @@
</foreach>
</if>
<if test="client_ids==null">
and t.client_id=#{client_id}
and (c.client_id=#{client_id} or c.parent_client_id=#{client_id})
</if>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -390,6 +394,7 @@
t.clearing_order clear_detail_id
FROM pmt_transactions t
left join log_clearing_detail cd on cd.clear_detail_id=t.clearing_order
left join sys_clients sc on t.client_id = sc.client_id
WHERE t.channel='Settlement'
]]>
<if test="client_ids!=null">
@ -399,7 +404,7 @@
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
and t.client_id=#{client_id}
and (sc.client_id=#{client_id} or sc.parent_client_id =#{client_id})
</if>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -423,7 +428,7 @@
</foreach>
</if>
<if test="client_ids==null and client_id !=null">
and t.client_id=#{client_id}
and (c.client_id=#{client_id} or c.parent_client_id=#{client_id})
</if>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if>

@ -14,7 +14,7 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts'], function (angul
$scope.params = {};
$scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client];
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;

@ -14,7 +14,7 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts'], function (angul
$scope.params = {};
$scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client];
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;

@ -68,7 +68,7 @@
<a role="button" class="btn btn-default btn-sm"
ng-click="thisYear()">This Year</a>
</div>
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children">
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<button id="single-button" type="button" class="btn btn-primary"
uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span>

@ -68,7 +68,7 @@
<a role="button" class="btn btn-default btn-sm"
ng-click="thisYear()">This Year</a>
</div>
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children">
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<button id="single-button" type="button" class="btn btn-primary"
uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span>

@ -53,7 +53,7 @@ define(['angular'], function (angular) {
$scope.getLastDraw();
$scope.getCashbackRecords(1);
};
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;

@ -2,7 +2,7 @@
<section class="content-header">
<h1>
Cash Back Account
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children">
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<button id="single-button" type="button" class="btn btn-sm btn-default"
uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span>

@ -619,7 +619,7 @@ define(['angular','decimal', 'uiRouter', 'uiBootstrap', 'angularEcharts'], funct
$scope.clientMoniker = $scope.currentUser.client_moniker;
$scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client];
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners',$scope.req).then(function (resp) {
var clientList = resp.data;
@ -665,7 +665,7 @@ define(['angular','decimal', 'uiRouter', 'uiBootstrap', 'angularEcharts'], funct
$scope.loadSettlementLogs(1);
};
if (!$scope.currentUser.client.has_children){
if (!$scope.currentUser.client.has_children || ($scope.currentUser.client.has_children && $scope.currentUser.client.hide_sub_mch)) {
$scope.loadDashboard();
}
function loadTransCommon() {

@ -212,7 +212,7 @@
<section class="content-header">
<h1>
Dashboard
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children" style="padding-right: 15px">
<div class="btn-group" uib-dropdown ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch" style="padding-right: 15px">
<button id="single-button" type="button" class="btn btn-sm btn-default"
uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span>

@ -256,7 +256,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
};
$scope.listDevices();
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {

@ -233,7 +233,7 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -17,7 +17,7 @@ define(['angular','decimal'], function (angular,decimal) {
$scope.pagination = {};
$scope.today = new Date();
$scope.clients = [$scope.currentUser.client];
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {

@ -87,7 +87,7 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -3459,7 +3459,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}
$scope.loadTradeLogs();
};
if ($scope.partner.has_children) {
if ($scope.partner.has_children && !$scope.partner.hide_sub_mch) {
$http.get('/sys/partners/' + $scope.partner.client_moniker + '/sub_clients').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {
@ -4296,9 +4296,9 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.isAll = true;
$scope.initClientInfo = function(){
$http.get('/sys/partners/'+clientMoniker).then(function (resp) {
$scope.client = resp.data
$scope.client = resp.data;
$scope.clients = [$scope.client];
if ($scope.client.has_children) {
if ($scope.client.has_children && !$scope.client.hide_sub_mch) {
$scope.params.client_ids = [$scope.client.client_id];
$http.get('/sys/partners/'+clientMoniker+'/sub_clients').then(function (resp) {
var clientList = resp.data;

@ -14,6 +14,7 @@
<table class="table table-striped table-bordered table-hover" ng-if="accounts.length">
<thead>
<tr>
<th>Client Moniker</th>
<th>Username</th>
<th>Display Name</th>
<th>OpenId</th>
@ -24,6 +25,7 @@
</thead>
<tbody>
<tr ng-repeat="account in accounts">
<td ng-bind="account.client_moniker"></td>
<td ng-bind="account.username"></td>
<td ng-bind="account.display_name"></td>
<td>

@ -161,7 +161,7 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="partner.has_children">
<div class="form-group col-xs-12" ng-if="partner.has_children && !partner.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -50,7 +50,7 @@
</div>
</div>
</div>
<div class="form-group col-xs-12" ng-if="client.has_children">
<div class="form-group col-xs-12" ng-if="client.has_children && !client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -26,7 +26,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
$scope.showLevel3Clients = false;
$scope.isLevel3All = true;
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$scope.params.client_ids = [$scope.currentUser.client.client_id];
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;

@ -6,25 +6,31 @@
.tr_clearing {
color: green;
}
.box-icon_small {
width: 70px;
height: 70px;
font-size: 30px;
line-height: 70px
}
.info_box_bottom {
min-height: 70px;
margin-bottom: 0px
}
.box-content_left {
margin-left: 70px
}
.box-number_font {
font-size: 14px
}
.line_height {
line-height: 14px
}
.line_height_ {
line-height: 22px;
}
@ -88,8 +94,10 @@
ng-click="params.channel='WECHAT';loadTradeLogs(1)">Wechat Pay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAY'}"
ng-click="params.channel='ALIPAY';loadTradeLogs(1)">Alipay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAYONLINE'}"
ng-click="params.channel='ALIPAYONLINE';loadTradeLogs(1)">AlipayOnline</a> |
<a role="button"
ng-class="{'bg-primary':params.channel=='ALIPAYONLINE'}"
ng-click="params.channel='ALIPAYONLINE';loadTradeLogs(1)">AlipayOnline</a>
|
<a role="button" ng-class="{'bg-primary':params.channel=='BESTPAY'}"
ng-click="params.channel='BESTPAY';loadTradeLogs(1)">BestPay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='JD'}"
@ -109,20 +117,27 @@
<label class="control-label col-xs-4 col-sm-2">Devices</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':device_isAll}" ng-click="chooseDevices('all')">All</a>
<a role="button" ng-class="{'bg-primary':device_isAll}"
ng-click="chooseDevices('all')">All</a>
<label ng-repeat="device in devices">
|&nbsp;<a role="button" ng-class="{'bg-primary':device.dev_id==chooseDevice_id}" ng-click="chooseDevices(device.dev_id)">{{device.remark}}</a>&nbsp;
|&nbsp;<a role="button"
ng-class="{'bg-primary':device.dev_id==chooseDevice_id}"
ng-click="chooseDevices(device.dev_id)">{{device.remark}}</a>&nbsp;
</label>
</p>
</div>
</div>
<div class="form-group col-xs-12" ng-if="deviceIds.length">
<div class="form-group col-xs-12"
ng-if="deviceIds.length && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Third Device</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':order_device_isAll}" ng-click="chooseDeviceIds('all')">All</a>
<a role="button" ng-class="{'bg-primary':order_device_isAll}"
ng-click="chooseDeviceIds('all')">All</a>
<label ng-repeat="dev in deviceIds">
|&nbsp;<a role="button" ng-class="{'bg-primary':dev.dev_id==choose_order_device_id}" ng-click="chooseDeviceIds(dev.dev_id)">{{dev.dev_id}}</a>&nbsp;
|&nbsp;<a role="button"
ng-class="{'bg-primary':dev.dev_id==choose_order_device_id}"
ng-click="chooseDeviceIds(dev.dev_id)">{{dev.dev_id}}</a>&nbsp;
</label>
</p>
</div>
@ -172,7 +187,8 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12"
ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
@ -186,14 +202,19 @@
</p>
</div>
</div>
<div class="form-group col-xs-12" ng-if="level3Clients && showLevel3Clients">
<label class="control-label col-xs-4 col-sm-2">Sub-Partner of sub-partners</label>
<div class="form-group col-xs-12"
ng-if="level3Clients && showLevel3Clients && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub-Partner of
sub-partners</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':isLevel3All}" ng-click="chooseLevel3Client('all')">All</a>
<a role="button" ng-class="{'bg-primary':isLevel3All}"
ng-click="chooseLevel3Client('all')">All</a>
<label ng-repeat="sub in level3Clients">
|&nbsp;
<a role="button" ng-class="{'bg-primary':sub.client_id==chooseLevel3ClientId}" ng-click="chooseLevel3Client(sub)">{{sub.short_name}}</a>
<a role="button"
ng-class="{'bg-primary':sub.client_id==chooseLevel3ClientId}"
ng-click="chooseLevel3Client(sub)">{{sub.short_name}}</a>
&nbsp;
</label>
</p>
@ -204,15 +225,20 @@
</button>
<!--<a ng-if="pagination.totalCount>0" class="btn btn-success" style="float: right"-->
<!--target="_blank" ng-href="{{export()}}">Export</a>-->
<div class="btn-group" uib-dropdown ng-if="pagination.totalCount>0" style="float: right;right: 20px;">
<button id="single-button" type="button" class="btn btn-primary" uib-dropdown-toggle ng-disabled="disabled">
<div class="btn-group" uib-dropdown ng-if="pagination.totalCount>0"
style="float: right;right: 20px;">
<button id="single-button" type="button" class="btn btn-primary"
uib-dropdown-toggle ng-disabled="disabled">
Export Statement <span class="caret"></span>
</button>
<ul class="dropdown-menu" uib-dropdown-menu aria-labelledby="single-button" style="min-width: 80px">
<ul class="dropdown-menu" uib-dropdown-menu aria-labelledby="single-button"
style="min-width: 80px">
<li><a target="_blank" ng-href="{{export('pdf')}}">PDF</a></li>
<li><a target="_blank" ng-href="{{export('excel')}}">EXCEL</a></li>
<li><a target="_blank" ng-href="{{export('excel_detail')}}">EXCEL(Detail)</a></li>
<li><a target="_blank" ng-href="{{export('excel_detail_all')}}">EXCEL(All Partner Detail)</a></li>
<li><a target="_blank"
ng-href="{{export('excel_detail')}}">EXCEL(Detail)</a></li>
<li><a target="_blank" ng-href="{{export('excel_detail_all')}}">EXCEL(All
Partner Detail)</a></li>
</ul>
</div>
@ -226,7 +252,8 @@
<div class="row">
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Transaction Amount</span>
<span class="info-box-number box-number_font"
@ -238,7 +265,8 @@
<div class="col-md-3 col-sm-6 col-xs-12" ng-if="!analysis.cny_display_amount">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span>
<span class="info-box-number box-number_font"
@ -248,19 +276,24 @@
</div>
</div>
<div class="col-md-3 col-sm-6 col-xs-12" ng-if="analysis.cny_display_amount">
<div class="info-box info_box_bottom" ng-class="{'line_height':analysis.pre_display_amount||analysis.pre_cny_display_amount}">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<div class="info-box info_box_bottom"
ng-class="{'line_height':analysis.pre_display_amount||analysis.pre_cny_display_amount}">
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span>
<span class="info-box-number box-number_font" style="margin-bottom: -3px;" ng-class="{line_height_:!analysis.pre_display_amount}"
<span class="info-box-number box-number_font" style="margin-bottom: -3px;"
ng-class="{line_height_:!analysis.pre_display_amount}"
ng-bind="analysis.display_amount|currency:'AUD '"></span>
<span style="font-size: 10px;line-height: 10px" ng-if="analysis.pre_display_amount">
<span style="font-size: 10px;line-height: 10px"
ng-if="analysis.pre_display_amount">
( {{analysis.pre_display_amount | currency:'pre authorization '}} )
</span>
<span class="info-box-number box-number_font" style="margin-bottom: -3px;"
ng-if="analysis.cny_display_amount"
ng-bind="analysis.cny_display_amount|currency:'CNY '"></span>
<span style="font-size: 10px;line-height: 10px" ng-if="analysis.pre_cny_display_amount">
<span style="font-size: 10px;line-height: 10px"
ng-if="analysis.pre_cny_display_amount">
( {{analysis.pre_cny_display_amount | currency:'pre authorization '}} )
</span>
</div>
@ -268,7 +301,8 @@
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-red box-icon_small"><i class="ion ion-android-warning"></i></span>
<span class="info-box-icon bg-red box-icon_small"><i
class="ion ion-android-warning"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Refund Amount</span>
<span class="info-box-number box-number_font"
@ -282,7 +316,8 @@
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-yellow box-icon_small"><i class="ion ion-android-done"></i></span>
<span class="info-box-icon bg-yellow box-icon_small"><i
class="ion ion-android-done"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Settlement Amount</span>
<span class="info-box-number box-number_font"
@ -319,7 +354,8 @@
</tr>
</thead>
<tbody>
<tr ng-repeat="trade in tradeLogs" ng-class="{'tr_refund':trade.trans_type=='refund','tr_clearing':trade.trans_type=='clearing',warning:trade.clearing_status==2}">
<tr ng-repeat="trade in tradeLogs"
ng-class="{'tr_refund':trade.trans_type=='refund','tr_clearing':trade.trans_type=='clearing',warning:trade.clearing_status==2}">
<td ng-bind="trade.transaction_time||'NOT PROVIDED'"></td>
<td>
<img src="/static/images/royalpay_sign_s.png"
@ -346,7 +382,9 @@
uib-tooltip="Yeepay" ng-if="trade.channel=='Yeepay'"/>
<img src="/static/images/lakalapay_sign.png"
uib-tooltip="LakalaPay" ng-if="trade.channel=='LakalaPay'"/>
{{trade.order_id2}}<span ng-if="trade.source!='system' && trade.source!=null && trade.incremental_surcharge != null"><i class="fa fa-question-circle-o" uib-tooltip-html="trade.htmlTooltip"></i></span>
{{trade.order_id2}}<span
ng-if="trade.source!='system' && trade.source!=null && trade.incremental_surcharge != null"><i
class="fa fa-question-circle-o" uib-tooltip-html="trade.htmlTooltip"></i></span>
</td>
<td ng-bind="trade.currency"></td>
<td ng-bind="trade.display_amount"></td>
@ -412,7 +450,9 @@
first-text="&laquo;"
last-text="&raquo;"></uib-pagination>
<div class="row">
<div class="col-xs-12">Total Records:{{pagination.totalCount}};Total Pages:{{pagination.totalPages}}</div>
<div class="col-xs-12">Total Records:{{pagination.totalCount}};Total
Pages:{{pagination.totalPages}}
</div>
</div>
</div>
</div>

@ -195,7 +195,7 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -71,7 +71,7 @@
</div>
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">

@ -30,17 +30,21 @@
-webkit-transform: rotate(90deg);
}
}
.popover-color {
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
color: black;
}
.popover-content button {
display: inline-block;
}
.position_re {
position: relative;
}
.position_re .position_ab {
position: absolute;
top: 90%;
@ -53,19 +57,24 @@
font-size: 30px;
line-height: 70px
}
.info_box_bottom {
min-height: 70px;
margin-bottom: 0px
}
.box-content_left {
margin-left: 70px
}
.box-number_font {
font-size: 14px;
}
.line_height {
line-height: 14px
}
.line_height_ {
line-height: 22px;
}
@ -105,7 +114,8 @@
</select>
</label>
<div class="col-sm-4 col-xs-8">
<input class="form-control" placeholder="Keyword" ng-enter="loadTradeLogs(1)"
<input class="form-control" placeholder="Keyword"
ng-enter="loadTradeLogs(1)"
ng-model="params.searchText">
</div>
</div>
@ -129,13 +139,19 @@
<a role="button" ng-class="{'bg-primary':params.status=='ALL'}"
ng-click="params.status='ALL';loadTradeLogs(1)">All</a> |
<a role="button" ng-class="{'bg-primary':params.status=='PAID'}"
ng-click="params.status='PAID';loadTradeLogs(1)">Payment Success</a> |
ng-click="params.status='PAID';loadTradeLogs(1)">Payment Success</a>
|
<a role="button" ng-class="{'bg-primary':params.status=='ALL_REFUNDED'}"
ng-click="params.status='ALL_REFUNDED';loadTradeLogs(1)">All Refund</a> |
<a role="button" ng-class="{'bg-primary':params.status=='PARTIAL_REFUNDED'}"
ng-click="params.status='PARTIAL_REFUNDED';loadTradeLogs(1)">Partial Refund</a> |
<a role="button" ng-class="{'bg-primary':params.status=='FULL_REFUNDED'}"
ng-click="params.status='FULL_REFUNDED';loadTradeLogs(1)">Full Refund</a>
ng-click="params.status='ALL_REFUNDED';loadTradeLogs(1)">All
Refund</a> |
<a role="button"
ng-class="{'bg-primary':params.status=='PARTIAL_REFUNDED'}"
ng-click="params.status='PARTIAL_REFUNDED';loadTradeLogs(1)">Partial
Refund</a> |
<a role="button"
ng-class="{'bg-primary':params.status=='FULL_REFUNDED'}"
ng-click="params.status='FULL_REFUNDED';loadTradeLogs(1)">Full
Refund</a>
</p>
</div>
</div>
@ -149,8 +165,10 @@
ng-click="params.channel='WECHAT';loadTradeLogs(1)">Wechat Pay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAY'}"
ng-click="params.channel='ALIPAY';loadTradeLogs(1)">Alipay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAYONLINE'}"
ng-click="params.channel='ALIPAYONLINE';loadTradeLogs(1)">AlipayOnline</a> |
<a role="button"
ng-class="{'bg-primary':params.channel=='ALIPAYONLINE'}"
ng-click="params.channel='ALIPAYONLINE';loadTradeLogs(1)">AlipayOnline</a>
|
<a role="button" ng-class="{'bg-primary':params.channel=='BESTPAY'}"
ng-click="params.channel='BESTPAY';loadTradeLogs(1)">BestPay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='JD'}"
@ -173,7 +191,8 @@
<a role="button" ng-class="{'bg-primary':params.gateway==null}"
ng-click="params.gateway=null;loadTradeLogs(1)">All</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([0,1])}"
ng-click="params.gateway=[0,1];initGatewayChild()">Retail In-Store</a> |
ng-click="params.gateway=[0,1];initGatewayChild()">Retail
In-Store</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([5,6])}"
ng-click="params.gateway=[5,6];initGatewayChild()">Retail API</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([2,7])}"
@ -185,7 +204,8 @@
<a role="button" ng-class="{'bg-primary':gatewaySelected([8])}"
ng-click="params.gateway=[8];loadTradeLogs(1)">Mobile H5</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([9])}"
ng-click="params.gateway=[9];loadTradeLogs(1)">Third Party Gateway</a> |
ng-click="params.gateway=[9];loadTradeLogs(1)">Third Party
Gateway</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([10])}"
ng-click="params.gateway=[10];loadTradeLogs(1)">APP</a> |
<a role="button" ng-class="{'bg-primary':gatewaySelected([11])}"
@ -266,39 +286,52 @@
</div>
</div>
<div class="form-group col-xs-12" ng-if="currentUser.client.has_children">
<div class="form-group col-xs-12"
ng-if="currentUser.client.has_children && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':isAll}" ng-click="chooseClient('all')">All</a>
<a role="button" ng-class="{'bg-primary':isAll}"
ng-click="chooseClient('all')">All</a>
<label ng-repeat="sub in clients">
|&nbsp;
<a role="button" ng-class="{'bg-primary':sub.client_id==chooseClientId}" ng-click="chooseClient(sub)">{{sub.short_name}}</a>
<a role="button"
ng-class="{'bg-primary':sub.client_id==chooseClientId}"
ng-click="chooseClient(sub)">{{sub.short_name}}</a>
&nbsp;
</label>
</p>
</div>
</div>
<div class="form-group col-xs-12" ng-if="level3Clients && showLevel3Clients">
<label class="control-label col-xs-4 col-sm-2">Sub-Partner of sub-partners</label>
<div class="form-group col-xs-12"
ng-if="level3Clients && showLevel3Clients && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Sub-Partner of
sub-partners</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':isLevel3All}" ng-click="chooseLevel3Client('all')">All</a>
<a role="button" ng-class="{'bg-primary':isLevel3All}"
ng-click="chooseLevel3Client('all')">All</a>
<label ng-repeat="sub in level3Clients">
|&nbsp;
<a role="button" ng-class="{'bg-primary':sub.client_id==chooseLevel3ClientId}" ng-click="chooseLevel3Client(sub)">{{sub.short_name}}</a>
<a role="button"
ng-class="{'bg-primary':sub.client_id==chooseLevel3ClientId}"
ng-click="chooseLevel3Client(sub)">{{sub.short_name}}</a>
&nbsp;
</label>
</p>
</div>
</div>
<div class="form-group col-xs-12" ng-if="deviceIds.length">
<div class="form-group col-xs-12"
ng-if="deviceIds.length && !currentUser.client.hide_sub_mch">
<label class="control-label col-xs-4 col-sm-2">Third Device</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':order_device_isAll}" ng-click="chooseDeviceIds('all')">All</a>
<a role="button" ng-class="{'bg-primary':order_device_isAll}"
ng-click="chooseDeviceIds('all')">All</a>
<label ng-repeat="dev in deviceIds">
|&nbsp;<a role="button" ng-class="{'bg-primary':dev.dev_id==choose_order_device_id}" ng-click="chooseDeviceIds(dev.dev_id)">{{dev.dev_id}}</a>&nbsp;
|&nbsp;<a role="button"
ng-class="{'bg-primary':dev.dev_id==choose_order_device_id}"
ng-click="chooseDeviceIds(dev.dev_id)">{{dev.dev_id}}</a>&nbsp;
</label>
</p>
</div>
@ -307,9 +340,12 @@
<label class="control-label col-xs-4 col-sm-2">Devices</label>
<div class="col-sm-10 col-xs-8">
<p class="form-control-static">
<a role="button" ng-class="{'bg-primary':device_isAll}" ng-click="chooseDevices('all')">All</a>
<a role="button" ng-class="{'bg-primary':device_isAll}"
ng-click="chooseDevices('all')">All</a>
<label ng-repeat="device in devices">
|&nbsp;<a role="button" ng-class="{'bg-primary':device.dev_id==chooseDevice_id}" ng-click="chooseDevices(device.dev_id)">{{device.remark}}</a>&nbsp;
|&nbsp;<a role="button"
ng-class="{'bg-primary':device.dev_id==chooseDevice_id}"
ng-click="chooseDevices(device.dev_id)">{{device.remark}}</a>&nbsp;
</label>
</p>
</div>
@ -327,7 +363,8 @@
<div class="row">
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Transaction Amount</span>
<span class="info-box-number box-number_font"
@ -339,7 +376,8 @@
<div class="col-md-3 col-sm-6 col-xs-12" ng-if="!analysis.cny_display_amount">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span>
<span class="info-box-number box-number_font"
@ -349,19 +387,24 @@
</div>
</div>
<div class="col-md-3 col-sm-6 col-xs-12" ng-if="analysis.cny_display_amount">
<div class="info-box info_box_bottom" ng-class="{'line_height':analysis.pre_display_amount||analysis.pre_cny_display_amount}">
<span class="info-box-icon bg-aqua box-icon_small"><i class="ion ion-social-usd"></i></span>
<div class="info-box info_box_bottom"
ng-class="{'line_height':analysis.pre_display_amount||analysis.pre_cny_display_amount}">
<span class="info-box-icon bg-aqua box-icon_small"><i
class="ion ion-social-usd"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span>
<span class="info-box-number box-number_font" style="margin-bottom: -3px;" ng-class="{line_height_:!analysis.pre_display_amount}"
<span class="info-box-number box-number_font" style="margin-bottom: -3px;"
ng-class="{line_height_:!analysis.pre_display_amount}"
ng-bind="analysis.display_amount|currency:'AUD '"></span>
<span style="font-size: 10px;line-height: 10px" ng-if="analysis.pre_display_amount">
<span style="font-size: 10px;line-height: 10px"
ng-if="analysis.pre_display_amount">
( {{analysis.pre_display_amount | currency:'pre authorization '}} )
</span>
<span class="info-box-number box-number_font" style="margin-bottom: -3px;"
ng-if="analysis.cny_display_amount"
ng-bind="analysis.cny_display_amount|currency:'CNY '"></span>
<span style="font-size: 10px;line-height: 10px" ng-if="analysis.pre_cny_display_amount">
<span style="font-size: 10px;line-height: 10px"
ng-if="analysis.pre_cny_display_amount">
( {{analysis.pre_cny_display_amount | currency:'pre authorization '}} )
</span>
</div>
@ -369,7 +412,8 @@
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-red box-icon_small"><i class="ion ion-android-warning"></i></span>
<span class="info-box-icon bg-red box-icon_small"><i
class="ion ion-android-warning"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">Refund Amount</span>
<span class="info-box-number box-number_font"
@ -382,7 +426,8 @@
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom">
<span class="info-box-icon bg-yellow box-icon_small"><i class="ion ion-ios-people"></i></span>
<span class="info-box-icon bg-yellow box-icon_small"><i
class="ion ion-ios-people"></i></span>
<div class="info-box-content box-content_left">
<span class="info-box-text">CUSTOMERS</span>
<span class="info-box-number box-number_font"
@ -428,21 +473,37 @@
<tr ng-repeat="trade in tradeLogs" ng-class="{warning:trade.clearing_status==2}">
<td ng-bind="trade.client_order_id||'NOT PROVIDED'"></td>
<td>
<img src="/static/images/clearing-icon.png" uib-tooltip="clearing" ng-if="trade.clearing_status=='1'"/>
<i class="fa fa-check-circle-o text-danger" uib-tooltip="Refund Audition Required" ng-if="trade.audition"></i>
<img src="/static/images/royalpay_sign_s.png" uib-tooltip="RoyalPay" ng-if="trade.source=='system'"/>
<img src="/static/images/yangmaimai_sign.png" uib-tooltip="RP跨境商城" ng-if="trade.source=='RP跨境商城'"/>
<img src="/static/images/wechatpay_sign.png" uib-tooltip="Znyoo" ng-if="trade.channel=='Znyoo'"/>
<img src="/static/images/wechatpay_sign.png" uib-tooltip="Wechat Pay" ng-if="trade.channel=='Wechat'"/>
<img src="/static/images/bestpay_sign.png" uib-tooltip="BestPay" alt="BestPay" ng-if="trade.channel=='Bestpay'"/>
<img src="/static/images/alipay_sign.png" uib-tooltip="Alipay" alt="Alipay" ng-if="trade.channel=='Alipay'"/>
<img src="/static/images/alipay_sign.png" uib-tooltip="AlipayOnline" alt="AlipayOnline" ng-if="trade.channel=='AlipayOnline'"/>
<img src="/static/images/jd_sign.png" uib-tooltip="JD Pay" ng-if="trade.channel=='jd'"/>
<img src="/static/images/hf_sign.png" uib-tooltip="HF Pay" ng-if="trade.channel=='hf'"/>
<img src="/static/images/rpayplus_sign.png" uib-tooltip="RPay+" ng-if="trade.channel=='Rpay'"/>
<img src="/static/images/yeepay_sign.png" uib-tooltip="Yeepay" ng-if="trade.channel=='Yeepay'"/>
<img src="/static/images/lakalapay_sign.png" uib-tooltip="LakalaPay" ng-if="trade.channel=='LakalaPay'"/>
{{trade.order_id}}<span ng-if="trade.source!='system' && trade.source!=null && trade.incremental_surcharge != null"><i class="fa fa-question-circle-o" uib-tooltip-html="trade.htmlTooltip"></i></span>
<img src="/static/images/clearing-icon.png" uib-tooltip="clearing"
ng-if="trade.clearing_status=='1'"/>
<i class="fa fa-check-circle-o text-danger" uib-tooltip="Refund Audition Required"
ng-if="trade.audition"></i>
<img src="/static/images/royalpay_sign_s.png" uib-tooltip="RoyalPay"
ng-if="trade.source=='system'"/>
<img src="/static/images/yangmaimai_sign.png" uib-tooltip="RP跨境商城"
ng-if="trade.source=='RP跨境商城'"/>
<img src="/static/images/wechatpay_sign.png" uib-tooltip="Znyoo"
ng-if="trade.channel=='Znyoo'"/>
<img src="/static/images/wechatpay_sign.png" uib-tooltip="Wechat Pay"
ng-if="trade.channel=='Wechat'"/>
<img src="/static/images/bestpay_sign.png" uib-tooltip="BestPay" alt="BestPay"
ng-if="trade.channel=='Bestpay'"/>
<img src="/static/images/alipay_sign.png" uib-tooltip="Alipay" alt="Alipay"
ng-if="trade.channel=='Alipay'"/>
<img src="/static/images/alipay_sign.png" uib-tooltip="AlipayOnline"
alt="AlipayOnline" ng-if="trade.channel=='AlipayOnline'"/>
<img src="/static/images/jd_sign.png" uib-tooltip="JD Pay"
ng-if="trade.channel=='jd'"/>
<img src="/static/images/hf_sign.png" uib-tooltip="HF Pay"
ng-if="trade.channel=='hf'"/>
<img src="/static/images/rpayplus_sign.png" uib-tooltip="RPay+"
ng-if="trade.channel=='Rpay'"/>
<img src="/static/images/yeepay_sign.png" uib-tooltip="Yeepay"
ng-if="trade.channel=='Yeepay'"/>
<img src="/static/images/lakalapay_sign.png" uib-tooltip="LakalaPay"
ng-if="trade.channel=='LakalaPay'"/>
{{trade.order_id}}<span
ng-if="trade.source!='system' && trade.source!=null && trade.incremental_surcharge != null"><i
class="fa fa-question-circle-o" uib-tooltip-html="trade.htmlTooltip"></i></span>
</td>
<td>
{{trade.total_amount|currency:trade.currency+' '}}
@ -453,7 +514,8 @@
<td ng-bind="trade.clearing_amount|currency:'AUD '"></td>
<td ng-bind="trade.settle_amount|currency:'AUD '"></td>
<td>
<span ng-if="(trade.channel!='hf') && (trade.channel!='Rpay')" ng-bind="trade.exchange_rate"></span>
<span ng-if="(trade.channel!='hf') && (trade.channel!='Rpay')"
ng-bind="trade.exchange_rate"></span>
<span ng-if="(trade.channel=='hf') || (trade.channel=='Rpay')"> - </span>
</td>
<td ng-bind="trade.status|tradeStatus"></td>
@ -468,11 +530,14 @@
<a role="button" class="text-bold" ng-click="showTradeDetail(trade)" title="Detail">
<i class="fa fa-list-alt"></i>
</a>
<a role="button" ng-if="trade.clearing_status==2 && trade.client_id==currentUser.client_id" class="text-bold text-primary"
<a role="button"
ng-if="trade.clearing_status==2 && trade.client_id==currentUser.client_id"
class="text-bold text-primary"
ng-click="releasePreAuth(trade.order_id)" title="Release Pre-Authorization">
<i class="fa fa-unlock-alt"></i>
</a>
<a role="button" ng-if="trade.status>=5 && trade.confirm_time!=null && trade.clearing_status<2 && currentUser.client.enable_refund"
<a role="button"
ng-if="trade.status>=5 && trade.confirm_time!=null && trade.clearing_status<2 && currentUser.client.enable_refund"
class="text-bold text-danger" ng-click="newPRefund(trade.order_id)"
title="Refund">
<i class="fa fa-undo"></i>
@ -496,7 +561,9 @@
first-text="&laquo;"
last-text="&raquo;"></uib-pagination>
<div class="row">
<div class="col-xs-12">Total Records:{{pagination.totalCount}};Total Pages:{{pagination.totalPages}}</div>
<div class="col-xs-12">Total Records:{{pagination.totalCount}};Total
Pages:{{pagination.totalPages}}
</div>
</div>
</div>
</div>

@ -278,7 +278,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
$scope.listDevices();
$scope.listDevicesIds();
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {
@ -493,7 +493,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
};
$scope.listDevices();
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {

@ -200,9 +200,6 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
url += connectSymbol + 'dev_id=' + params.dev_id;
connectSymbol = '&'
}
if (!params.client_ids) {
$scope.params.client_ids = [$scope.currentUser.client.client_id]
}
params.client_ids.forEach(function (i) {
url += connectSymbol + 'client_ids=' + i;
connectSymbol = '&';
@ -223,7 +220,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
return url;
}
if ($scope.currentUser.client.has_children) {
if ($scope.currentUser.client.has_children && !$scope.currentUser.client.hide_sub_mch) {
$http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data;
clientList.forEach(function (client) {

Loading…
Cancel
Save