diff --git a/src/main/java/au/com/royalpay/payment/manage/signin/core/SignInStatusManager.java b/src/main/java/au/com/royalpay/payment/manage/signin/core/SignInStatusManager.java index 03b17d6f3..df81168df 100644 --- a/src/main/java/au/com/royalpay/payment/manage/signin/core/SignInStatusManager.java +++ b/src/main/java/au/com/royalpay/payment/manage/signin/core/SignInStatusManager.java @@ -62,5 +62,9 @@ public interface SignInStatusManager { String appQRCodeSignInStatus(String codeId); + JSONObject customerQRCode(); + void scanCustomerQrcode(String codeId, String openid); + + String getWechatCustomerId(String codeId); } diff --git a/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInStatusManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInStatusManagerImpl.java index 739d5925a..a3f4cbf41 100644 --- a/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInStatusManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInStatusManagerImpl.java @@ -20,6 +20,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.servlet.ModelAndView; import java.util.concurrent.TimeUnit; +import java.util.logging.Logger; import javax.annotation.Resource; @@ -319,6 +320,31 @@ public class SignInStatusManagerImpl implements SignInStatusManager { return statusKey; } + @Override + public JSONObject customerQRCode() { + String codeId = "customer_" + RandomStringUtils.random(15, true, true) + "_" + System.currentTimeMillis(); + JSONObject res = new JSONObject(); + res.put("code_id", codeId); + res.put("code_img", QRCodeUtils.qrcodeImageCode(PlatformEnvironment.getEnv().concatUrl("/global/userstatus/customer_wechat_qrcode/" + codeId), 300,false)); + System.out.println("====code:"+codeId); + return res; + } + + @Override + public void scanCustomerQrcode(String codeId, String openid) { + stringRedisTemplate.boundValueOps(redisPrefix + ":customer_qrcode:code:" + codeId).set(openid, 1, TimeUnit.MINUTES); + } + + @Override + public String getWechatCustomerId(String codeId) { + String statusKey = stringRedisTemplate.boundValueOps(redisPrefix + ":customer_qrcode:code:" + codeId).get(); + if (statusKey == null) { + throw new ForbiddenException("Not signed yet"); + } + stringRedisTemplate.delete(redisPrefix + ":customer_qrcode:code:" + codeId); + return statusKey; + } + private void lockRandomCodeId(String codeId) { stringRedisTemplate.boundValueOps(redisPrefix + "partner_signin" + codeId).set(codeId, 30, TimeUnit.SECONDS); diff --git a/src/main/java/au/com/royalpay/payment/manage/signin/web/SignInController.java b/src/main/java/au/com/royalpay/payment/manage/signin/web/SignInController.java index 4bab11773..97c1b2199 100644 --- a/src/main/java/au/com/royalpay/payment/manage/signin/web/SignInController.java +++ b/src/main/java/au/com/royalpay/payment/manage/signin/web/SignInController.java @@ -326,4 +326,21 @@ public class SignInController { } throw new ForbiddenException("error.not_support_browser"); } + + @RequestMapping(value = "/customer_wechat_qrcode", method = RequestMethod.GET) + public JSONObject customerQRCode() { + return signInStatusManager.customerQRCode(); + } + + @WechatMapping(value = "/customer_wechat_qrcode/{codeId}", method = RequestMethod.GET) + public ModelAndView scanCustomerQrcode(@PathVariable String codeId, @ModelAttribute(CommonConsts.WECHATINFO) JSONObject wechatUser) { + signInStatusManager.scanCustomerQrcode(codeId, wechatUser.getString("openid")); + return new ModelAndView("manager_bind_success"); + } + + @RequestMapping(value = "/customer_wechat_qrcode/{codeId}/check", method = RequestMethod.GET) + public void getCustomerID(@PathVariable String codeId, HttpServletResponse response) { + String statusKey = signInStatusManager.getWechatCustomerId(codeId); + HttpUtils.setCookie(response, "CustomerID", statusKey,false); + } } diff --git a/src/main/ui/static/analysis/monitoring/templates/analysis_monitoring.html b/src/main/ui/static/analysis/monitoring/templates/analysis_monitoring.html index 692c46047..7ebb4c4ff 100644 --- a/src/main/ui/static/analysis/monitoring/templates/analysis_monitoring.html +++ b/src/main/ui/static/analysis/monitoring/templates/analysis_monitoring.html @@ -19,7 +19,7 @@
  • 欠款|Pre Refund
  • -
  • +
  • 风控记录|Risk Records
  • diff --git a/src/main/ui/static/css/hf_gateway.css b/src/main/ui/static/css/hf_gateway.css index ebc34860d..6644c0482 100644 --- a/src/main/ui/static/css/hf_gateway.css +++ b/src/main/ui/static/css/hf_gateway.css @@ -23,11 +23,12 @@ } .order-box{ - height: 600px; + height: 400px; width: 800px; margin: 2% auto; box-shadow: 0px 0px 25px 0px rgba(0,0,0,0.21); } + .order-box:after{ content:''; display:block; @@ -66,7 +67,7 @@ color: #FFFFFF; } .intro{ - line-height: 550px; + margin: 100px 0 50px; color: #FFFFFF; } .order-box .right{ @@ -105,9 +106,9 @@ /*成功页*/ .order-box .success-logo{ text-align: center; - height: 200px; + height: 150px; background: #F0F3FA; - line-height: 200px; + line-height: 150px; font-family: PingFangSC-Regular; font-size: 22px; color: #444444; @@ -121,4 +122,13 @@ font-size: 17px; color: #444444; letter-spacing: 0px; +} + +@media(max-width:800px){ + .order-box{ + width:100%; + } + .order-info{ + padding:50px 10px; + } } \ No newline at end of file diff --git a/src/main/ui/static/payment/partner/simple-apply.js b/src/main/ui/static/payment/partner/simple-apply.js index 53bcb622e..ad4422a48 100644 --- a/src/main/ui/static/payment/partner/simple-apply.js +++ b/src/main/ui/static/payment/partner/simple-apply.js @@ -8,7 +8,7 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS controller: 'simpleApplicationListCtrl', data: {label: '商户自主申请列表'} }).state('partner_apply.apply_detail', { - url: '/{client_pre_apply_id}/detail', + url: '/{client_pre_apply_id}/apply/detail', templateUrl: '/static/payment/partner/templates/simple_application_detail.html', controller: 'simpleApplicationDetailCtrl', resolve: { diff --git a/src/main/ui/static/payment/partner/templates/client_partner_detail.html b/src/main/ui/static/payment/partner/templates/client_partner_detail.html index ef00c50bd..1fb94fbac 100644 --- a/src/main/ui/static/payment/partner/templates/client_partner_detail.html +++ b/src/main/ui/static/payment/partner/templates/client_partner_detail.html @@ -315,18 +315,26 @@

    -
    - - +
    +
    -

    + +
    +

    No more than 100 characters

    +
    -
    - - +
    +
    -

    + +
    +

    No more than 50 characters

    +