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 a9e1b0313..6ab259398 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 @@ -290,4 +290,6 @@ public interface ClientManager { JSONObject getCheckClientInfo(int client_id,String account_id, String channel); List getClientSubMerchantIdLogs(String clientMoniker,JSONObject manager); + + void applyToCompliance(String client_moniker, JSONObject account); } 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 ec73b90f2..631b59bc6 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 @@ -778,7 +778,8 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid } List accounts = clientAccountMapper.listAdminAccounts(clientId); if (client.getIntValue("source") == 4) { - sendAuthInitEmail(manager, client); + JSONObject account = accounts.get(0); + sendInitEmail(manager, client, account.getString("username"), "*****"); } else { if (accounts.size() == 0) { initAdminUserAndSendEmail(manager, clientMoniker, client); @@ -3149,6 +3150,9 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid return; } if (client.getIntValue("open_status") == 4) { + if (client.getIntValue("source")==4 && !StringUtils.isNotEmpty(bd_user_name)){ + bd_user_name = "自助开通商户"; + } List complianceList = managerMapper.getOnlyCompliance(); if (complianceList != null && complianceList.size() > 0) { for (JSONObject compliance : complianceList) { @@ -3156,7 +3160,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid try { MpWechatApi paymentApi = mpWechatApiProvider.getNewPaymentApi(); TemplateMessage msg = initSendCommissionTemplate(wxopenid, paymentApi.getTemplateId("commission"), client_moniker + "合规材料已提交", - bd_user_name, "审核材料", "BD已提交合规材料,等待审核"); + bd_user_name, "审核材料", "已提交合规材料,等待审核"); paymentApi.sendTemplateMessage(msg); } catch (WechatException e) { logger.error("Wechat Message Error,open_status=1" + e.getMessage()); @@ -3391,4 +3395,48 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid checkOrgPermission(manager, client); return logClientSubMerchantIdMapper.listLogsByClientId(client.getInteger("client_id")); } + + @Override + public void applyToCompliance(String client_moniker, JSONObject client_account) { + JSONObject client = getClientInfoByMoniker(client_moniker); + if (client == null) { + throw new InvalidShortIdException(); + } + client.putAll(clientConfigService.find(client.getIntValue("client_id"))); + if (client.getInteger("open_status") == null) { + int countProduct = commoditiesMapper.checkProduct(client.getInteger("client_id")); + if (countProduct <= 0) { + throw new BadRequestException("The Merchant's Product is empty!"); + } + } + + // 提交合规启用银行、费率验证 add by Tayl0r 2017/06/13 + JSONObject rate = merchantInfoProvider.clientCurrentRate(client.getIntValue("client_id"), new Date(), "Wechat"); + if (rate == null) { + throw new BadRequestException("The Partner's Rate is not config!"); + } + List clientFiles = clientFilesMapper.findClientFile(client.getIntValue("client_id")); + if (clientFiles == null || clientFiles.equals("")) { + throw new BadRequestException("The Compliance File Must Be Uploaded!"); + } + JSONObject account = getBankAccountByClientId(client.getIntValue("client_id")); + if (account == null) { + throw new BadRequestException("The Partner's Bank Account is not config!"); + } + int open_status_from = client.getIntValue("open_status"); + OpenStatusModify openStatusModify = new OpenStatusModify(client_account, client_moniker, 4); + if ((client.getIntValue("source") == 1 || client.getIntValue("source") == 2) && client.getIntValue("approve_result") == 2) { + openStatusModify.setApprove_time(new Date()); + } else { + openStatusModify.setApprove_time(new Date()); + openStatusModify.setApprove_result(3); + } + client.put("open_status", 4); + clientModifySupport.processClientModify(openStatusModify); + saveClientAuditProcess(client.getIntValue("client_id"), open_status_from, 4, "自助开通商户提交compliance审核", client_account); + if (client_account != null) { + // sendMessagetoCompliance(client, manager.getString("display_name")); + sendCommissionWechatMessage(client); + } + } } diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java index 3e2e8fcad..3ecfa512b 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java @@ -379,4 +379,10 @@ public class PartnerViewController { public void confirmSourceAgreeFile(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject account) { clientContractService.confirmSourceAgreement(account.getIntValue("client_id"), account.getString("account_id"), "PC"); } + + @PartnerMapping(value = "/compliance_audit", method = RequestMethod.POST, roles = PartnerRole.ADMIN) + @ResponseBody + public void commitAudit(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject account) { + clientManager.applyToCompliance(account.getString("client_moniker"),account); + } } diff --git a/src/main/ui/merchant_application.html b/src/main/ui/merchant_application.html index 092f19555..acaa3d2be 100644 --- a/src/main/ui/merchant_application.html +++ b/src/main/ui/merchant_application.html @@ -70,6 +70,16 @@ body .step_show { display: none; } + .button_width{ + width: 20%; + } + .input-group .form-control{ + position: relative; + z-index: 2; + float: left; + width: 80%; + margin-bottom: 0; + } } @media (max-width: 544px) { @@ -83,16 +93,21 @@ body .step_show { display: block; } + .button_width{ + width: 35%; + } + .input-group .form-control{ + position: relative; + z-index: 2; + float: left; + width: 65%; + margin-bottom: 0; + } .register-box { width: 89%; } - @media (min-width:1200px) { - .register-box { - margin-top: 30%; - } - } } @@ -269,14 +284,14 @@
+61 -
-

phone number is also your login id

+ phone number is also your login id
@@ -292,7 +307,7 @@
-

6~12个字符,区分大小写

+ 6 to 12 characters, case sensitive
diff --git a/src/main/ui/static/merchantapplication/merchant_application.js b/src/main/ui/static/merchantapplication/merchant_application.js index 93c301c35..6a7eedae5 100644 --- a/src/main/ui/static/merchantapplication/merchant_application.js +++ b/src/main/ui/static/merchantapplication/merchant_application.js @@ -106,7 +106,7 @@ angular.module('applyPartnerApp', ['ngMessages']).controller('applyPartnerCtrl', if(second<=0){ $interval.cancel(timerHandler); second=59; - $scope.description="获取验证码"; + $scope.description="Send Code"; $scope.canClick=false; }else{ $scope.description=second+"s后重发"; diff --git a/src/main/ui/static/payment/partner/templates/partner_detail.html b/src/main/ui/static/payment/partner/templates/partner_detail.html index 7b9717ead..a15f92f2f 100644 --- a/src/main/ui/static/payment/partner/templates/partner_detail.html +++ b/src/main/ui/static/payment/partner/templates/partner_detail.html @@ -60,6 +60,13 @@ (The Partner Using Green Channel Now!) 【目前状态】- + + (自助申请)资料完善中 + (自助申请)已开通 + (自助申请)快速开通等待提交合规材料 + (自助申请)待审核(材料已提交) + + 资料完善中 待审核(合同制作中) 合同制作完成 @@ -68,6 +75,7 @@ 通过 不通过 绿色通道申请中 +
@@ -114,7 +122,7 @@
- +
diff --git a/src/main/ui/static/payment/partner/templates/partners.html b/src/main/ui/static/payment/partner/templates/partners.html index ea6f15944..595d36503 100644 --- a/src/main/ui/static/payment/partner/templates/partners.html +++ b/src/main/ui/static/payment/partner/templates/partners.html @@ -498,11 +498,10 @@ 通过({{partner.approve_time}}) 资料完善中 + (自助开通)资料完善中 自助开通试用中({{partner.approve_time}}~{{partner.expiry_time}}) 不通过({{partner.approve_time}}) 申请打回({{partner.refuse_remark|limitTo:15}}) - 申请打回{{partner.refuse_remark|limitTo:15}} - Quick Pass(等待同意协议) 等待合规 自助开通(等待合规) 合同制作完成