[Y] 商户新增禁止显示子商户选项开关

master
taylor.dang 6 years ago
parent d12af68c4a
commit 68c4af820b

@ -9,10 +9,10 @@
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>manage</artifactId> <artifactId>manage</artifactId>
<version>1.3.30</version> <version>1.3.31</version>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jib-maven-plugin.version>1.4.0</jib-maven-plugin.version> <jib-maven-plugin.version>1.8.0</jib-maven-plugin.version>
<docker-image.version>${project.version}</docker-image.version> <docker-image.version>${project.version}</docker-image.version>
</properties> </properties>

@ -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.beans.AnalysisBean;
import au.com.royalpay.payment.manage.analysis.core.DashboardService; 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.permission.manager.PartnerMapping;
import au.com.royalpay.payment.manage.pos.datasource.ReadOnlyConnection; 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 au.com.royalpay.payment.tools.CommonConsts;
import com.alibaba.fastjson.JSONObject; 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 javax.annotation.Resource;
import java.util.List; import java.util.List;
@ -24,13 +22,6 @@ import java.util.List;
public class PartnerDashboardController { public class PartnerDashboardController {
@Resource @Resource
private DashboardService dashboardService; private DashboardService dashboardService;
@Resource
private PartnerCardDashboardService partnerCardDashboardService;
@Resource
private CleanService cleanService;
@PartnerMapping("/common_analysis") @PartnerMapping("/common_analysis")
@ReadOnlyConnection @ReadOnlyConnection
public JSONObject commonAnalysis(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject partner, AnalysisBean partnerAnalysisBean) { public JSONObject commonAnalysis(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject partner, AnalysisBean partnerAnalysisBean) {

@ -428,6 +428,8 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
} }
} }
List<JSONObject> children = clientMapper.listChildClients(client.getIntValue("client_id")); List<JSONObject> children = clientMapper.listChildClients(client.getIntValue("client_id"));
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
client.putAll(mchConfig);
client.put("has_children", !children.isEmpty()); client.put("has_children", !children.isEmpty());
if (client.getInteger("parent_client_id") != null) { if (client.getInteger("parent_client_id") != null) {
client.put("parent_client", clientMapper.findClient(client.getInteger("parent_client_id"))); client.put("parent_client", clientMapper.findClient(client.getInteger("parent_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.manage.system.core.PermissionClientModulesService;
import au.com.royalpay.payment.tools.env.PlatformEnvironment; import au.com.royalpay.payment.tools.env.PlatformEnvironment;
import au.com.royalpay.payment.tools.env.RequestEnvironment; 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.BadRequestException;
import au.com.royalpay.payment.tools.exceptions.ForbiddenException; import au.com.royalpay.payment.tools.exceptions.ForbiddenException;
import au.com.royalpay.payment.tools.exceptions.ServerErrorException; import au.com.royalpay.payment.tools.exceptions.ServerErrorException;
import au.com.royalpay.payment.tools.locale.LocaleSupport; 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.permission.enums.ManagerRole;
import au.com.royalpay.payment.tools.threadpool.RoyalThreadPoolExecutor; import au.com.royalpay.payment.tools.threadpool.RoyalThreadPoolExecutor;
import au.com.royalpay.payment.tools.utils.PasswordUtils; import au.com.royalpay.payment.tools.utils.PasswordUtils;
@ -91,7 +91,7 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati
@Resource @Resource
private ClientComplianceCompanyMapper clientComplianceCompanyMapper; private ClientComplianceCompanyMapper clientComplianceCompanyMapper;
@Resource @Resource
private SysConfigManager sysConfigManager; private MerchantInfoProvider merchantInfoProvider;
@Resource @Resource
private SmsSender smsSender; private SmsSender smsSender;
@Resource @Resource
@ -199,6 +199,8 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati
rootPartner = clientInfoWithNoSecretInfo(rootPartner); rootPartner = clientInfoWithNoSecretInfo(rootPartner);
account.put("parent_client", rootPartner); account.put("parent_client", rootPartner);
} }
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
client.putAll(mchConfig);
account.put("client", client); account.put("client", client);
account.put("client_moniker", client.getString("client_moniker")); account.put("client_moniker", client.getString("client_moniker"));
if (client.getIntValue("approve_result") == 2) { 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 au.com.royalpay.payment.tools.defines.TradeType;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import org.joda.time.DateTime; import org.joda.time.DateTime;
import org.joda.time.DateTimeZone; import org.joda.time.DateTimeZone;
import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormat;

@ -443,7 +443,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
<if test="customer_id!=null"> <if test="customer_id!=null">
and o.customer_id = #{customer_id} and o.customer_id = #{customer_id}
@ -473,7 +473,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
<if test="customer_id!=null"> <if test="customer_id!=null">
and o.customer_id = #{customer_id} and o.customer_id = #{customer_id}
@ -551,7 +551,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
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_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 LEFT JOIN pmt_incremental_detail i on i.transaction_id = t.transaction_id
@ -615,7 +615,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
INNER JOIN pmt_transactions t on t.order_id=o.order_id and (t.transaction_type='Credit' or t.refund_id is not INNER JOIN pmt_transactions t on t.order_id=o.order_id and (t.transaction_type='Credit' or t.refund_id is not
null) null)
@ -800,7 +800,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
<if test="customer_id!=null"> <if test="customer_id!=null">
and o.customer_id = #{customer_id} and o.customer_id = #{customer_id}

@ -163,7 +163,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null"> <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>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if> <if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if> <if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -226,6 +226,7 @@
FROM pmt_transactions t FROM pmt_transactions t
left JOIN pmt_orders o on o.order_id=t.order_id 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> <where>
<if test="client_ids!=null"> <if test="client_ids!=null">
AND t.client_id IN AND t.client_id IN
@ -234,7 +235,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null"> <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>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if> <if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if> <if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -390,6 +391,7 @@
t.clearing_order clear_detail_id t.clearing_order clear_detail_id
FROM pmt_transactions t FROM pmt_transactions t
left join log_clearing_detail cd on cd.clear_detail_id=t.clearing_order 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' WHERE t.channel='Settlement'
]]> ]]>
<if test="client_ids!=null"> <if test="client_ids!=null">
@ -399,7 +401,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if> <if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</if> <if test="to!=null">and t.transaction_time &lt; #{to}</if>
@ -423,7 +425,7 @@
</foreach> </foreach>
</if> </if>
<if test="client_ids==null and client_id !=null"> <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>
<if test="from!=null">and t.transaction_time &gt;= #{from}</if> <if test="from!=null">and t.transaction_time &gt;= #{from}</if>
<if test="to!=null">and t.transaction_time &lt; #{to}</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.params = {};
$scope.chooseShow = 'All'; $scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client]; $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 = []; $scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;

@ -14,7 +14,7 @@ define(['angular', 'uiBootstrap', 'uiRouter', 'angularEcharts'], function (angul
$scope.params = {}; $scope.params = {};
$scope.chooseShow = 'All'; $scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client]; $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 = []; $scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;

@ -68,7 +68,7 @@
<a role="button" class="btn btn-default btn-sm" <a role="button" class="btn btn-default btn-sm"
ng-click="thisYear()">This Year</a> ng-click="thisYear()">This Year</a>
</div> </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" <button id="single-button" type="button" class="btn btn-primary"
uib-dropdown-toggle ng-disabled="disabled"> uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span> {{chooseShow}} <span class="caret"></span>

@ -68,7 +68,7 @@
<a role="button" class="btn btn-default btn-sm" <a role="button" class="btn btn-default btn-sm"
ng-click="thisYear()">This Year</a> ng-click="thisYear()">This Year</a>
</div> </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" <button id="single-button" type="button" class="btn btn-primary"
uib-dropdown-toggle ng-disabled="disabled"> uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span> {{chooseShow}} <span class="caret"></span>

@ -53,7 +53,7 @@ define(['angular'], function (angular) {
$scope.getLastDraw(); $scope.getLastDraw();
$scope.getCashbackRecords(1); $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 = []; $scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners').then(function (resp) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;

@ -2,7 +2,7 @@
<section class="content-header"> <section class="content-header">
<h1> <h1>
Cash Back Account 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" <button id="single-button" type="button" class="btn btn-sm btn-default"
uib-dropdown-toggle ng-disabled="disabled"> uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span> {{chooseShow}} <span class="caret"></span>

@ -619,7 +619,7 @@ define(['angular','decimal', 'uiRouter', 'uiBootstrap', 'angularEcharts'], funct
$scope.clientMoniker = $scope.currentUser.client_moniker; $scope.clientMoniker = $scope.currentUser.client_moniker;
$scope.chooseShow = 'All'; $scope.chooseShow = 'All';
$scope.clients = [$scope.currentUser.client]; $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 = []; $scope.params.client_ids = [];
$http.get('/client/partner_info/sub_partners',$scope.req).then(function (resp) { $http.get('/client/partner_info/sub_partners',$scope.req).then(function (resp) {
var clientList = resp.data; var clientList = resp.data;

@ -212,7 +212,7 @@
<section class="content-header"> <section class="content-header">
<h1> <h1>
Dashboard 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" <button id="single-button" type="button" class="btn btn-sm btn-default"
uib-dropdown-toggle ng-disabled="disabled"> uib-dropdown-toggle ng-disabled="disabled">
{{chooseShow}} <span class="caret"></span> {{chooseShow}} <span class="caret"></span>

@ -256,7 +256,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
}; };
$scope.listDevices(); $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) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;
clientList.forEach(function (client) { clientList.forEach(function (client) {

@ -233,7 +233,7 @@
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

@ -17,7 +17,7 @@ define(['angular','decimal'], function (angular,decimal) {
$scope.pagination = {}; $scope.pagination = {};
$scope.today = new Date(); $scope.today = new Date();
$scope.clients = [$scope.currentUser.client]; $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) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;
clientList.forEach(function (client) { clientList.forEach(function (client) {

@ -87,7 +87,7 @@
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

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

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

@ -161,7 +161,7 @@
</div> </div>
</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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

@ -50,7 +50,7 @@
</div> </div>
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

@ -26,7 +26,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
$scope.showLevel3Clients = false; $scope.showLevel3Clients = false;
$scope.isLevel3All = true; $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]; $scope.params.client_ids = [$scope.currentUser.client.client_id];
$http.get('/client/partner_info/sub_partners').then(function (resp) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;

@ -6,25 +6,31 @@
.tr_clearing { .tr_clearing {
color: green; color: green;
} }
.box-icon_small { .box-icon_small {
width: 70px; width: 70px;
height: 70px; height: 70px;
font-size: 30px; font-size: 30px;
line-height: 70px line-height: 70px
} }
.info_box_bottom { .info_box_bottom {
min-height: 70px; min-height: 70px;
margin-bottom: 0px margin-bottom: 0px
} }
.box-content_left { .box-content_left {
margin-left: 70px margin-left: 70px
} }
.box-number_font { .box-number_font {
font-size: 14px font-size: 14px
} }
.line_height { .line_height {
line-height: 14px line-height: 14px
} }
.line_height_ { .line_height_ {
line-height: 22px; line-height: 22px;
} }
@ -88,8 +94,10 @@
ng-click="params.channel='WECHAT';loadTradeLogs(1)">Wechat Pay</a> | ng-click="params.channel='WECHAT';loadTradeLogs(1)">Wechat Pay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAY'}" <a role="button" ng-class="{'bg-primary':params.channel=='ALIPAY'}"
ng-click="params.channel='ALIPAY';loadTradeLogs(1)">Alipay</a> | ng-click="params.channel='ALIPAY';loadTradeLogs(1)">Alipay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='ALIPAYONLINE'}" <a role="button"
ng-click="params.channel='ALIPAYONLINE';loadTradeLogs(1)">AlipayOnline</a> | 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'}" <a role="button" ng-class="{'bg-primary':params.channel=='BESTPAY'}"
ng-click="params.channel='BESTPAY';loadTradeLogs(1)">BestPay</a> | ng-click="params.channel='BESTPAY';loadTradeLogs(1)">BestPay</a> |
<a role="button" ng-class="{'bg-primary':params.channel=='JD'}" <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> <label class="control-label col-xs-4 col-sm-2">Devices</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <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"> <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> </label>
</p> </p>
</div> </div>
</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> <label class="control-label col-xs-4 col-sm-2">Third Device</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <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"> <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> </label>
</p> </p>
</div> </div>
@ -172,7 +187,8 @@
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">
@ -186,14 +202,19 @@
</p> </p>
</div> </div>
</div> </div>
<div class="form-group col-xs-12" ng-if="level3Clients && showLevel3Clients"> <div class="form-group col-xs-12"
<label class="control-label col-xs-4 col-sm-2">Sub-Partner of sub-partners</label> 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"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <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"> <label ng-repeat="sub in level3Clients">
|&nbsp; |&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; &nbsp;
</label> </label>
</p> </p>
@ -204,15 +225,20 @@
</button> </button>
<!--<a ng-if="pagination.totalCount>0" class="btn btn-success" style="float: right"--> <!--<a ng-if="pagination.totalCount>0" class="btn btn-success" style="float: right"-->
<!--target="_blank" ng-href="{{export()}}">Export</a>--> <!--target="_blank" ng-href="{{export()}}">Export</a>-->
<div class="btn-group" uib-dropdown ng-if="pagination.totalCount>0" style="float: right;right: 20px;"> <div class="btn-group" uib-dropdown ng-if="pagination.totalCount>0"
<button id="single-button" type="button" class="btn btn-primary" uib-dropdown-toggle ng-disabled="disabled"> 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> Export Statement <span class="caret"></span>
</button> </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('pdf')}}">PDF</a></li>
<li><a target="_blank" ng-href="{{export('excel')}}">EXCEL</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"
<li><a target="_blank" ng-href="{{export('excel_detail_all')}}">EXCEL(All Partner Detail)</a></li> 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> </ul>
</div> </div>
@ -226,7 +252,8 @@
<div class="row"> <div class="row">
<div class="col-md-3 col-sm-6 col-xs-12"> <div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom"> <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"> <div class="info-box-content box-content_left">
<span class="info-box-text">Transaction Amount</span> <span class="info-box-text">Transaction Amount</span>
<span class="info-box-number box-number_font" <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="col-md-3 col-sm-6 col-xs-12" ng-if="!analysis.cny_display_amount">
<div class="info-box info_box_bottom"> <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"> <div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span> <span class="info-box-text">Input Amount</span>
<span class="info-box-number box-number_font" <span class="info-box-number box-number_font"
@ -248,19 +276,24 @@
</div> </div>
</div> </div>
<div class="col-md-3 col-sm-6 col-xs-12" ng-if="analysis.cny_display_amount"> <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}"> <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> 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"> <div class="info-box-content box-content_left">
<span class="info-box-text">Input Amount</span> <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> 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 '}} ) ( {{analysis.pre_display_amount | currency:'pre authorization '}} )
</span> </span>
<span class="info-box-number box-number_font" style="margin-bottom: -3px;" <span class="info-box-number box-number_font" style="margin-bottom: -3px;"
ng-if="analysis.cny_display_amount" ng-if="analysis.cny_display_amount"
ng-bind="analysis.cny_display_amount|currency:'CNY '"></span> 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 '}} ) ( {{analysis.pre_cny_display_amount | currency:'pre authorization '}} )
</span> </span>
</div> </div>
@ -268,7 +301,8 @@
</div> </div>
<div class="col-md-3 col-sm-6 col-xs-12"> <div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom"> <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"> <div class="info-box-content box-content_left">
<span class="info-box-text">Refund Amount</span> <span class="info-box-text">Refund Amount</span>
<span class="info-box-number box-number_font" <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="col-md-3 col-sm-6 col-xs-12">
<div class="info-box info_box_bottom"> <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"> <div class="info-box-content box-content_left">
<span class="info-box-text">Settlement Amount</span> <span class="info-box-text">Settlement Amount</span>
<span class="info-box-number box-number_font" <span class="info-box-number box-number_font"
@ -319,7 +354,8 @@
</tr> </tr>
</thead> </thead>
<tbody> <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 ng-bind="trade.transaction_time||'NOT PROVIDED'"></td>
<td> <td>
<img src="/static/images/royalpay_sign_s.png" <img src="/static/images/royalpay_sign_s.png"
@ -346,7 +382,9 @@
uib-tooltip="Yeepay" ng-if="trade.channel=='Yeepay'"/> uib-tooltip="Yeepay" ng-if="trade.channel=='Yeepay'"/>
<img src="/static/images/lakalapay_sign.png" <img src="/static/images/lakalapay_sign.png"
uib-tooltip="LakalaPay" ng-if="trade.channel=='LakalaPay'"/> 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>
<td ng-bind="trade.currency"></td> <td ng-bind="trade.currency"></td>
<td ng-bind="trade.display_amount"></td> <td ng-bind="trade.display_amount"></td>
@ -412,7 +450,9 @@
first-text="&laquo;" first-text="&laquo;"
last-text="&raquo;"></uib-pagination> last-text="&raquo;"></uib-pagination>
<div class="row"> <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> </div>
</div> </div>

@ -195,7 +195,7 @@
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

@ -71,7 +71,7 @@
</div> </div>
</div> </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> <label class="control-label col-xs-4 col-sm-2">Sub Partner</label>
<div class="col-sm-10 col-xs-8"> <div class="col-sm-10 col-xs-8">
<p class="form-control-static"> <p class="form-control-static">

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

@ -278,7 +278,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
$scope.listDevices(); $scope.listDevices();
$scope.listDevicesIds(); $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) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;
clientList.forEach(function (client) { clientList.forEach(function (client) {
@ -493,7 +493,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
}; };
$scope.listDevices(); $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) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;
clientList.forEach(function (client) { clientList.forEach(function (client) {

@ -223,7 +223,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
return url; 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) { $http.get('/client/partner_info/sub_partners').then(function (resp) {
var clientList = resp.data; var clientList = resp.data;
clientList.forEach(function (client) { clientList.forEach(function (client) {

Loading…
Cancel
Save