diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java index 711b267b1..ba7130b77 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java @@ -199,6 +199,8 @@ public interface ClientManager { void setClientTaxInSurcharge(String clientMoniker, boolean taxInSurcharge); + void setClientCustomerTaxFree(String clientMoniker, boolean customerTaxFree); + List listClientsForSettlement(); List listClientsDetailsForSettlement(); diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java index 11d9d7282..3bbe27eea 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java @@ -2324,6 +2324,20 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid clientInfoCacheSupport.clearClientCache(clientId); } + @Override + public void setClientCustomerTaxFree(String clientMoniker, boolean customerTaxFree) { + JSONObject client = getClientInfoByMoniker(clientMoniker); + if (client == null) { + throw new InvalidShortIdException(); + } + JSONObject update = new JSONObject(); + int clientId = client.getIntValue("client_id"); + update.put("client_id", clientId); + update.put("customer_tax_free", customerTaxFree); + clientMapper.update(update); + clientInfoCacheSupport.clearClientCache(clientId); + } + @Override public List listClientsForSettlement() { return clientMapper.listClientsForSettlement(); diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerManageController.java b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerManageController.java index cb0627de9..f8e1c6561 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerManageController.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerManageController.java @@ -198,6 +198,11 @@ public class PartnerManageController { clientManager.setClientTaxInSurcharge(clientMoniker, config.getBooleanValue("tax_in_surcharge")); } + @ManagerMapping(value = "/{clientMoniker}/customer_tax_free", method = RequestMethod.PUT, role = {ManagerRole.OPERATOR}) + public void setClientCustomerTaxFree(@PathVariable String clientMoniker, @RequestBody JSONObject config) { + clientManager.setClientCustomerTaxFree(clientMoniker, config.getBooleanValue("customer_tax_free")); + } + @ManagerMapping(value = "/{clientMoniker}/credential_code", method = RequestMethod.PUT, role = {ManagerRole.OPERATOR, ManagerRole.BD_USER}) public void updateCredentialCode(@PathVariable String clientMoniker, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager) { clientManager.refreshClientCredentialCode(manager, clientMoniker); diff --git a/src/main/ui/static/analysis/clearing-log.js b/src/main/ui/static/analysis/clearing-log.js index 481128424..4067e4606 100644 --- a/src/main/ui/static/analysis/clearing-log.js +++ b/src/main/ui/static/analysis/clearing-log.js @@ -374,8 +374,9 @@ define(['angular', 'decimal', 'uiBootstrap', 'uiRouter', 'angularEcharts'], func return function (channel) { switch (channel) { case 'Alipay': - case 'AlipayOnline': return '/static/images/alipay_sign_lg.png'; + case 'AlipayOnline': + return '/static/images/alipay_online.png'; case 'System': return '/static/images/royalpay_sign.png'; case 'Bestpay': diff --git a/src/main/ui/static/analysis/templates/settlement_transactions.html b/src/main/ui/static/analysis/templates/settlement_transactions.html index 6a6afb28d..277fcf8e3 100644 --- a/src/main/ui/static/analysis/templates/settlement_transactions.html +++ b/src/main/ui/static/analysis/templates/settlement_transactions.html @@ -30,7 +30,7 @@
  • - +
  • diff --git a/src/main/ui/static/commons/services/clearingDetailService.js b/src/main/ui/static/commons/services/clearingDetailService.js index 0444718d1..af223dfd6 100644 --- a/src/main/ui/static/commons/services/clearingDetailService.js +++ b/src/main/ui/static/commons/services/clearingDetailService.js @@ -1,7 +1,7 @@ /** * Created by davep on 2016-08-15. */ -define(['../app'], function (app) { +define(['../app','decimal'], function (app,Decimal) { 'use strict'; app.factory('clearingDetailService', ['$uibModal', function ($uibModal) { function openDetail(url, is_partner) { @@ -28,14 +28,16 @@ define(['../app'], function (app) { app.controller('clearingDetailCtrl', ['$scope', 'detail', 'is_partner', function ($scope, detail, is_partner) { $scope.ctrl = {channel: null}; $scope.report = detail.data; + $scope.report.total_charge = Decimal.add($scope.report.total_charge,$scope.report.tax_amount).toFixed(2); $scope.is_partner = is_partner; }]); app.filter('channel_image', function () { return function (channel) { switch (channel) { case 'Alipay': - case 'AlipayOnline': return '/static/images/alipay_sign_lg.png'; + case 'AlipayOnline': + return '/static/images/alipay_online.png'; case 'System': return '/static/images/royalpay_sign.png'; case 'Bestpay': diff --git a/src/main/ui/static/config/bdprize/bdprize.js b/src/main/ui/static/config/bdprize/bdprize.js index e241f344d..409ef3a27 100644 --- a/src/main/ui/static/config/bdprize/bdprize.js +++ b/src/main/ui/static/config/bdprize/bdprize.js @@ -317,8 +317,9 @@ define(['angular', '../../analysis/bd/analysis-bd'], function (angular) { return function (channel) { switch (channel) { case 'Alipay': - case 'AlipayOnline': return '/static/images/alipay_sign_lg.png'; + case 'AlipayOnline': + return '/static/images/alipay_online.png'; case 'System': return '/static/images/royalpay_sign.png'; case 'Bestpay': diff --git a/src/main/ui/static/images/alipay_online.png b/src/main/ui/static/images/alipay_online.png new file mode 100644 index 000000000..95ee4665a Binary files /dev/null and b/src/main/ui/static/images/alipay_online.png differ diff --git a/src/main/ui/static/payment/partner/partner-manage.js b/src/main/ui/static/payment/partner/partner-manage.js index 481385b06..a20f2bb06 100644 --- a/src/main/ui/static/payment/partner/partner-manage.js +++ b/src/main/ui/static/payment/partner/partner-manage.js @@ -1359,6 +1359,11 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter }) }; + $scope.customerTaxFree = function (customerTaxFree) { + $http.put('/sys/partners/' + $scope.partner.client_moniker + '/customer_tax_free', {customer_tax_free: customerTaxFree}).then(function (resp) { + + }) + }; $scope.settleHours = [{value: undefined, label: 'Default(24:00, GMT+10)'}]; for (var h = 24; h > 0; h--) { $scope.settleHours.push({value: h, label: ('00' + h).substr(-2) + ':00, ' + $scope.partner.timezone}); @@ -2485,6 +2490,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter app.controller('managerClearingDetailCtrl', ['$scope', 'detail', function ($scope, detail) { $scope.ctrl = {channel: null}; $scope.report = detail.data; + $scope.report.total_charge = Decimal.add($scope.report.total_charge,$scope.report.tax_amount).toFixed(2); }]); app.controller('productCtrl', ['$scope', '$http', '$uibModal', 'commonDialog', '$state', 'Upload', 'industryMap', function ($scope, $http, $uibModal, commonDialog, $state, Upload, industryMap) { diff --git a/src/main/ui/static/payment/partner/templates/partner_bankaccounts.html b/src/main/ui/static/payment/partner/templates/partner_bankaccounts.html index 3f7857156..0d758ce15 100644 --- a/src/main/ui/static/payment/partner/templates/partner_bankaccounts.html +++ b/src/main/ui/static/payment/partner/templates/partner_bankaccounts.html @@ -20,6 +20,13 @@ switch-change="taxInSurcharge(partner.tax_in_surcharge)"> +
    + +
    + +
    +
    diff --git a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html index a69c2c8d1..b82ceaebc 100644 --- a/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html +++ b/src/main/ui/static/payment/tradelog/templates/partner_settlement_dialog.html @@ -22,7 +22,7 @@
  • - +