From 79425c194f516693ccd06eaef4e2936d31e57cd8 Mon Sep 17 00:00:00 2001 From: dulingling Date: Mon, 20 Apr 2020 15:12:19 +0800 Subject: [PATCH] =?UTF-8?q?Upd:=E6=96=B0=E7=89=88=E8=B4=A6=E5=8D=95?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../core/impl/PartnerBillServiceImpl.java | 21 +- .../manage/merchants/core/ClientManager.java | 3 + .../core/impls/ClientManagerImpl.java | 11 + .../web/PartnerManageController.java | 5 + .../static/payment/partner/partner-manage.js | 15 ++ .../templates/partner_payment_info.html | 10 + .../billCode/css/billCode_mobile.css | 47 ++++ .../templates/billCode/css/billCode_pc.css | 129 +++++++++ .../templates/billCode/img/bill_alipay.png | Bin 0 -> 2623 bytes .../billCode/img/bill_big_alipay.png | Bin 0 -> 5207 bytes .../billCode/img/bill_big_cb_bank.png | Bin 0 -> 5971 bytes .../billCode/img/bill_big_wechat.png | Bin 0 -> 4336 bytes .../templates/billCode/img/bill_cb_bank.png | Bin 0 -> 2372 bytes .../templates/billCode/img/bill_select.png | Bin 0 -> 559 bytes .../templates/billCode/img/bill_wechat.png | Bin 0 -> 2015 bytes .../templates/billCode/img/create_success.png | Bin 0 -> 1764 bytes .../ui/static/templates/billCode/img/logo.png | 58 ++++ .../templates/billCode/js/mobile_payment.js | 252 ++++++++++++++++++ .../templates/billCode/js/pc_payment.js | 159 +++++++++++ 20 files changed, 710 insertions(+), 2 deletions(-) create mode 100644 src/main/ui/static/templates/billCode/css/billCode_mobile.css create mode 100644 src/main/ui/static/templates/billCode/css/billCode_pc.css create mode 100644 src/main/ui/static/templates/billCode/img/bill_alipay.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_big_alipay.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_big_cb_bank.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_big_wechat.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_cb_bank.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_select.png create mode 100644 src/main/ui/static/templates/billCode/img/bill_wechat.png create mode 100644 src/main/ui/static/templates/billCode/img/create_success.png create mode 100644 src/main/ui/static/templates/billCode/img/logo.png create mode 100644 src/main/ui/static/templates/billCode/js/mobile_payment.js create mode 100644 src/main/ui/static/templates/billCode/js/pc_payment.js diff --git a/pom.xml b/pom.xml index b6610a536..e7d9b6abc 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 manage - 2.1.6 + 2.1.7 UTF-8 1.8.0 diff --git a/src/main/java/au/com/royalpay/payment/manage/billqrcode/core/impl/PartnerBillServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/billqrcode/core/impl/PartnerBillServiceImpl.java index 7029bc925..5e8d3ecd3 100644 --- a/src/main/java/au/com/royalpay/payment/manage/billqrcode/core/impl/PartnerBillServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/billqrcode/core/impl/PartnerBillServiceImpl.java @@ -76,6 +76,14 @@ public class PartnerBillServiceImpl implements PartnerBillService { String code_url = getQRCodeImg(record); record.put("code_url",code_url); directedBillCodeMapper.update(record); + if("v1".equals(client.getString("billcode_version"))){ + record.put("code_urls",code_url); + record.put("code_url",QRCodeUtils.qrcodeImageCode(code_url, 250, false)); + }else{ + String url = PlatformEnvironment.getEnv().concatUrl("api/v1.0/share_code/business/bills/"+record.getString("bill_code_id")+"/link/payment"); + record.put("code_urls",url); + record.put("code_url",QRCodeUtils.qrcodeImageCode(url, 250, false)); + } return QRCodeUtils.qrcodeImageCode(code_url, 250, false); } @@ -93,7 +101,18 @@ public class PartnerBillServiceImpl implements PartnerBillService { JSONObject params = queryBillBean.toJson(); params.put("client_id",client_id); List bills = directedBillCodeMapper.findByClientId(params,new PageBounds(queryBillBean.getPage(),queryBillBean.getLimit(), Order.formString("create_time.desc"))); - bills.stream().filter(t->StringUtils.isNotEmpty(t.getString("code_url"))).forEach(t->t.put("code_url",QRCodeUtils.qrcodeImageCode(t.getString("code_url"), 250, false))); +// bills.stream().filter(t->StringUtils.isNotEmpty(t.getString("code_url"))).forEach(t->t.put("code_url",QRCodeUtils.qrcodeImageCode(t.getString("code_url"), 250, false))); + for (JSONObject bill : bills) { + switch (client.getString("billcode_version")){ + case "v1": + bill.put("code_urls",bill.getString("code_url")); + break; + case "v2": + bill.put("code_urls", PlatformEnvironment.getEnv().concatUrl("api/v1.0/share_code/business/bills/"+bill.getString("bill_code_id")+"/link/payment")); + break; + } + bill.put("code_url",QRCodeUtils.qrcodeImageCode(bill.getString("code_urls"), 250, false)); + } return bills; } 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 73059b3ab..16e19e8e8 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 @@ -573,4 +573,7 @@ public interface ClientManager { RPayMerchantEntity queryMWMerchantIdStatus(String clientMoniker, JSONObject manager); RPayMerchantEntity queryMWMerchantInfo(String clientMoniker, JSONObject manager); + + void selectBillCodeVersion(JSONObject manager, String clientMoniker, String version); + } 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 6e50ed185..d7c650c58 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 @@ -6881,4 +6881,15 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid return true; } + @Override + public void selectBillCodeVersion(JSONObject manager, String clientMoniker, String version){ + JSONObject client = getClientInfoByMoniker(clientMoniker); + if (client == null) { + throw new InvalidShortIdException(); + } + client.put("billcode_version", version); + clientMapper.update(client); + clientInfoCacheSupport.clearClientCache(client.getIntValue("client_id")); + } + } 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 9286f8051..32cec964d 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 @@ -299,6 +299,11 @@ public class PartnerManageController { clientManager.switchPermission(manager, clientMoniker, "common_sub_merchant_id", pass.getBooleanValue("allow")); } + @ManagerMapping(value = "/{clientMoniker}/selectBillVersion", method = RequestMethod.POST, role = {ManagerRole.OPERATOR, ManagerRole.BD_USER}) + public void selectBillVersion(@PathVariable String clientMoniker, @RequestBody JSONObject pass, @ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager) { + clientManager.selectBillCodeVersion(manager, clientMoniker, pass.getString("version")); + } + /** * 父商户全局管理子商户 * diff --git a/src/main/ui/static/payment/partner/partner-manage.js b/src/main/ui/static/payment/partner/partner-manage.js index 43c2ea609..7d3fdc401 100644 --- a/src/main/ui/static/payment/partner/partner-manage.js +++ b/src/main/ui/static/payment/partner/partner-manage.js @@ -2487,6 +2487,21 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter }) }; + $scope.changeBillCodeVersion = function() { + if (!$scope.paymentInfo) { + return; + } + $http.post('/sys/partners/' + $scope.partner.client_moniker + '/selectBillVersion', {version: $scope.paymentInfo.billcode_version}).then(function () { + $scope.loadPartnerPaymentInfo(); + }, function (resp) { + commonDialog.alert({ + title: 'failed to change require bill version permission status', + content: resp.data.message, + type: 'error' + }) + }) + }; + $scope.extChangeParam = function(name,value){ var flag = true; $scope.convertExtParams.forEach(function (params) { diff --git a/src/main/ui/static/payment/partner/templates/partner_payment_info.html b/src/main/ui/static/payment/partner/templates/partner_payment_info.html index 261c8809e..80df579ba 100644 --- a/src/main/ui/static/payment/partner/templates/partner_payment_info.html +++ b/src/main/ui/static/payment/partner/templates/partner_payment_info.html @@ -604,6 +604,16 @@ switch-change="toggleRequireRemark()"> +
+ +
+ +
+
diff --git a/src/main/ui/static/templates/billCode/css/billCode_mobile.css b/src/main/ui/static/templates/billCode/css/billCode_mobile.css new file mode 100644 index 000000000..5a8457836 --- /dev/null +++ b/src/main/ui/static/templates/billCode/css/billCode_mobile.css @@ -0,0 +1,47 @@ +.commit-button{ + width: 100%; + border-radius: 25px; + background-color: #ED2424; + color: #FFFFFF; + font-size: 16px; + line-height: 40px; + border: 0px; + margin-top: 20px; +} + +label{ + color: #9B9B9B; + margin-bottom: 0px; +} + +.bill-info-right{ + float: right; +} + +.margin-body{ + margin: 15px +} + +.row-line-height{ + height: 20px; + margin: 15px 0px 15px -15px; +} + +.row-line-height-plus{ + height: 60px; + line-height: 60px; +} + +.border-top-line{ + border-top: 1px solid #EEEEEE +} + +.border-button-line{ + border-bottom: 1px solid #EEEEEE; + +} + +#timer{ + font-weight: 600; + color: #ED2424; +} \ No newline at end of file diff --git a/src/main/ui/static/templates/billCode/css/billCode_pc.css b/src/main/ui/static/templates/billCode/css/billCode_pc.css new file mode 100644 index 000000000..c60ee8d0e --- /dev/null +++ b/src/main/ui/static/templates/billCode/css/billCode_pc.css @@ -0,0 +1,129 @@ +body{ + padding: 3% 10%; + width: 100%; + height: 100%; + margin: 0; +} + +.head{ + padding-bottom: 20px; + border-bottom: 2px solid #DCDCDC; +} + +.pc-cash{ + font-size: 28px; + position: absolute; + margin: 15px; +} + +.order-box{ + text-align: center; +} + +.count-down{ + text-align: center; + font-size: 20px; + margin: 20px; + line-height: 97px; + background-color: #FEF4F4; +} + +label{ + color: #ED2424; + font-size: 20px; + margin-bottom: 0px; +} + +.bill-info-right{ + float: right; + font-size: 20px; + font-weight: 800; +} + +.margin-body{ + margin: 15px +} + +.row-line-height{ + height: 20px; + margin: 15px 0px 15px -15px; +} + +.row-line-height-plus{ + height: 60px; + line-height: 60px; +} + +.border-top-line{ + border-top: 1px solid #EEEEEE +} + +.border-button-line{ + border-bottom: 1px solid #EEEEEE; + padding: 20px 5px; +} + +#timer{ + font-weight: 600; + color: #ED2424; +} + +.info-body{ + background-color: #FEF4F4; + height: 650px; + margin-top: 20px; + border-radius: 10px 10px 0px 0px; +} +.info-body-title{ + background: #ED2424; + line-height: 50px; + font-size: 25px; + color: #FFF; + border-radius: 10px 10px 0px 0px; +} + +.pay-fun{ + font-family: PingFang-SC-Bold; + font-size: 20px; + color: #ED2424; + font-weight: 600; + margin: 50px; +} + +#commit-btn{ + width: 30%; + border-radius: 5px; + background-color: #ED2424; + color: #FFFFFF; + font-size: 16px; + line-height: 40px; + border: 0px; + margin: 100px 0px; + text-align: center; +} + +.select-pay-fun{ + text-align: center; + width: 80%; + height: 120% ; + border: 1px solid #ED2424; + padding: 10px 0px; + margin-top: 5px; +} + +.no-select-pay-fun{ + text-align: center; + width: 80%; + height: 120% ; + border: 1px solid #EAEAEA; + padding: 10px 0px; + margin: 5px 0px 5px 0px; +} + +#qrImg{ + margin-top: 40px; +} + +.img-size{ + height: 58px; +} \ No newline at end of file diff --git a/src/main/ui/static/templates/billCode/img/bill_alipay.png b/src/main/ui/static/templates/billCode/img/bill_alipay.png new file mode 100644 index 0000000000000000000000000000000000000000..66153aadc2f7cc5beb7061d124e8c6a1bb136341 GIT binary patch literal 2623 zcmV-F3c&S=P)Px;`AI}UR9FekSPgJgR~0_@?Mrr(KoY_~p-A`%gj$hONYygTRD|pJj2vkBH zv8|<85Q;@5LY?wwJL0G_v>oJE21*F|*)T$Zfl^5zrH%qcLJ0{p<)4u3|9kKH-Iu)A z-A$H~ppIwezI)HlJ@>tH&pqed#|SWdW8IG!xR8xc=y`nCu3fic&4a8(@F1ghCIfyCLEpJ^rw8xBqh*SVi{(=% zk53hJndI}kD=N-M%Sgf?FvJGVDeHj@A~eIQc#Py+dvoibKV1^NSS;M{Z+%2nsZz9n z*E=?roXeFn!PnZN_&u#RjE|3&1;0hK{QUf{MDqlG`t<1}b1hAo*_n(CV=jb2{^P(I zUjU`6q7}Pbu0&GRya>9+u_5iCX-~N9_7npZ{rK$c3hc1L74|%gPK@~5@RZhYndq^m zX|kZXoc7;vjb6eqz!+Wfd0H7Urh5nU6uRs=1)Q-|#(6&?R$X3IHA%)2;>bkn?10Z5 zlR^@-HhC0s*WdGf+U9aT;NhLudYpcyUxcv5Vu@E3Wm4n- zqyd5=x4C?0qLH*$AL~Q1#Hjjn-~AZ{(*r?Ehxk-lT6zbp7sIu?T=vPN@HX$Uu-D7W ztB!~B#n|O=%t4ogIB}8%EeSn)sT+gM@_XTOYP`yVKHey3j7jrE4+FlX1*Gj<)_el* z3~Y(CBjmMws7jJw@O2mKOz^)+%XK=P*yXL}8Y+q4spz;$<^?NQmo;h{kp*ulU`$#(ZO=(>L&BabYp&DTTfs0&>|t4D zWhH{G-$WY#Qu^4&Xh7)H7Qtjuv41NLe8OjDWET)!Q_<}TS!IU6)1DNkH90A;l)-pU2fO}!_2vT zyD=56T#CSNMNn9bz6lIjvCvTc_lj0;Q%uJ??lz8&MLrUtzMs^*_E2~z+Fe=yh zn$H>=((sn)*uJmgWq%Idy8F=x*-h}Mp~zYjA>Y9$6>j%h&_y!=X}AG~d`Ob`3wtZ} zxlKm65PXjv2QlVG7mkM`E_8e}6lSGQsOgzPtKYpTb=V`jo2B5VAy-0fa< zzY5DL_w9nLXx)ZfXHFrO9%v!yP^sJfafDGs5S=|bmB!-u4DJy}3eLtYzpAI<{S6-a zTa%Z9ICamCPNDer$h-4=_q;@u+qE?{d9~HYe+`?Cf;BdaO9BGtJeR|sVUaAwr4@FV=#AS5;McA1Sm6Mb~b! zSXLqndGECjve^>|-s3ftukD~`64W=(0N3w21_Opq6Jt$f3&4L0!Ml&ZVVEiTNb|Z; zGV$?CV34K9uF;+gErM^t(BwFpG9-x#MkLd4$mN6uS&yR8M?#{{(SpS>+9%AB#K;kQBTmkc-d2`#FjIXjvDetk6bkn>1q&U z*Pt@Jy?5{43&=*OB`n7!RlQ`$={=L)j=%{uCZjiWn$>!T4c~a43opq^v(l0eMC}qA zUKy80KN+hVIYLMTTj4HH$L_U~y?Fb+dbS?|en9@V`a$GCUF4yf=*6#unNDXf(GaIPtS4x=H;oFPBgVKz_cLhFk%ks;;JT6{ zm%V!M6j>!2YzU|?eyta6o|aAtvP3)1HPedf8?@K;oF)oC5p$MJ z>`S>B)+Cb=H4rgC;o2b)aHCkHadlHPP2e}LTzNoBr5ORVu=rTya1@zmR;jz{N%0wxz1Ll2-bZ{~H&IC_kwV3z~Ls0Z0dl(rcoZgi&?m}k{ z&&`Mty?GInq_vz$ml=h2lcM|(y2Vbm1M7)hTr7}yn{8`JNlC{Ws39tPMqYgExp0y` z=DbLfEN_T)@L!;ctDz#$g=gv@i~%rEvzH}_Ezwkd04%FXeZT>BAVd;h6iW>XvbFeq zpt~}5Z#jiR84z$t7h+zBOa9IS%3qGIk7vVH97J(IkcLmm| z5_n!--fNl`Oc!GlESCKelTVm<`#@iKDQ7%Ke`+{teX6MK>b#7k&T$002ovPDHLkV1kD#4bA`n literal 0 HcmV?d00001 diff --git a/src/main/ui/static/templates/billCode/img/bill_big_alipay.png b/src/main/ui/static/templates/billCode/img/bill_big_alipay.png new file mode 100644 index 0000000000000000000000000000000000000000..42047f40e64f6307412d7227dc3844dc84d4b024 GIT binary patch literal 5207 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 R`4IpB002ovPDHLkV1iKh4!QsU literal 0 HcmV?d00001 diff --git a/src/main/ui/static/templates/billCode/img/bill_big_cb_bank.png b/src/main/ui/static/templates/billCode/img/bill_big_cb_bank.png new file mode 100644 index 0000000000000000000000000000000000000000..f674191a6b4be82dfb5eebbbde482113b0d21146 GIT binary patch literal 5971 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 B^?(2X literal 0 HcmV?d00001 diff --git a/src/main/ui/static/templates/billCode/img/bill_big_wechat.png b/src/main/ui/static/templates/billCode/img/bill_big_wechat.png new file mode 100644 index 0000000000000000000000000000000000000000..a8b98a302e04920ca7c231184ad982e0fa6fbdf5 GIT binary patch literal 4336 zcmVPx_s!2paRCodHoC|c+#l6S>v%7hgB<2MckwTE8;sGI9-k?~o^-=LsT54~tw|K2B z^;$|rsnl~NRcq_DqA1lXQhKQ6VX4BEDoBxHc?gmX@<^>BuWK76Pc{kUvB}Q;{KEdX z|9x+gO@L$Ood21b-|siSnfc9kW_~lXi88tvwAQNcd)ZfN-S$P2qYQ2IMP5iw&p6x*503;?LN@J6UwmNRONJ+p6#~u*57#x zgauk|N!EOAcpvM$+C-OB)k-Bzt}d#6Khc_d_4SMexYh~`IVG7tJhwn5?b8=%?fFh% zOM7$YlLZ2RmQ$KDjEmO)K6g5x+=gL$GSzSt)Hv(ro;&S|za=wf%t(%3I&qRtr}KMb z#*Fz&A~fE3dfd2i zgRJyO=}D6&Wgj_m0F6td-g0X=Q9v%07K|(Y-@i!4_3sQQ07E$Suvf_CTp?pP}_a zuc7B~8tzg%nd$P9@fgo%B?1O!V2-7)HtXb0%QHU7@@7}Rv$7V*6Ijb!Cd^g_<^o0wE&V_cM$!ejrp4T}Q zT`uL}RbZt}*_<^+^;cCFom^Y2ioK$>|ACx~@fm-wz242dL=0=MNwc{tqf09QGyP{6 z?fBHGQy`t<43%K(ejH=G3TZId4>rk-yh^M`11efsoS4*wJC zbw-mrTRbMfIO-mmo}Rv}D{XK{;e)Qy>w)TpT~XBWvZ_WIdWqpkUR*u0`XAQvmmInz zrM9keZgX?%gB%3Xt-Ld7eZ7FNe0a^rp}go6wy7yde20OZ!WQWz?=K*}NJT}3f0g$$ zd?L3@_LA{IFw(b?C zPw#ib3I-BK(#JvcFQ#9Wl9KX^9Xoc^2Npk*qg_9z{%5vr+g2HlA1|#PXl$7?<0_z3 zE!$UiT(S{_SiL@Aw^)>7d~SKUv;1_hSYAoymuuY>i)ho3V4gp(4O@%HGlP7G{5A2d zJRZ->81505%eCFF&zE3p3Sw%KfDraS|mjIRD>K2l7Z()m6Qzi%WNlaBtUNrwOpkcyu*ocgAjvYm|` z`DOWi+M1ef;Sdlrq^0Yj&5i0h?KNHi2p#e%c*ESnp0}{F$o&Qepf(Pame98(Ye=i1 z7vY0_*+Pz(WGkHjGj5;(jyyoNmAW?qil15)LsN19c>VR)`v@He-bP-pU%y`br}n@W zdKY3ZlUYS9v;w}L^WB=1loYTcGcbxlx*fTPMG&z4l}NrW2Xq}m$sMs2QU6QG9Hy_u zv1G&X<>14_6Z`*ODBjP=2Hl4O#jSscD-@dHf ztsY}ltiuE2(ah?#%5K=7swk@6FO{;Q`RYCs^)Kn4-fT3?Z&Tj;X-7%`GfIZB936!n z!YU{zs0Bdl1`i%Q591pc;ROJ(2SFk|3sB9n6lx)FX5Rv&S;)*`=1<$RXV2Thp!{{v zK4lPIGX>3zm~_D9dIZOO9smjO zYXDd!v-x>jQtERR!z)fiQk+wo^|dB%!;_5lz<5^FKs{Qvg}4JJKluUX90pE6aw+LM zY2yySBd5<_MN))utKrS&?=+UFHk_8wwIXO9n!CMe4A1zNE za$4(;GuwXrK&drck_^Av4A#OmvpcW9fD8)y$_S3IAqhs~^POIa5NQKHOd*q-i_ll{9hzq+UkqlD`USMKG8;dz$Rwr^g6#8>2u6o7dMLmcPCx6)@o0aMr@{uM@_LzzQ-GQ-;g=`WD@)R*-~$BrGl z2VO0N!+s)(O`A5IB1*`;mQ^oXTADR)rrGAi|4xd;-??*V6E?tw2@Io0kG`16wFc_1 z;TO=CK!Hx?9Gv{pJEE%1Ys{stoo0RVL&X_-#wA=lv}& z!`t9lpmmF^5HU|f0fob4w4L>|g8|?SV=4az#bye~e7?x^aBAp_tV%A7{TE{Cn;$69 zm@I*Q7rKX{`!P|x%Z{}LmNcN8CXRcB)9s(JYgGHTbST*WGK(=NDz7x_ zHr>$t1hhn5qqJ3BRuytmGV2T%%MCr-+H!a{{D%^eX>4pv20)|3$wTw9{I6y!n2F3+ z>BqmBa^$bz^E+}v2V9R3t$p|1cehc-6m5@vppd#d5BNP9_`wUOu(r( zQW@Gj7@oKbe-4&mYZv!ICfCjHyz@>YUi57AKlInOzl>oBGDKmi2?>}KInP}pVL<|hJ8{oW$ zz(vFZQ&UrGIfV|#zbmyCVi2EU0K=Zl1`HU`#L?m}lkz_i=PQ0@#*vGM^-OktQ!%?65iP``cOt z$Q=mUn0e9r84vyA^7@Fr&A|Ox*{3}EQ5wYG7#Q{rXpc)28}Ext&?m%zOvS)I032V! z2YIt2Wkr@#>p_6pgpO<2j!qCC1*CG-;18Tg{Vs){=u7yXq2xLwp@BL#Gw@}cXyugn zKs4nz`PVZZS95|K8A&c0$jmaF+@Hl3-{v~#2hbLo^k}hdVC#^BiX9}HP%sbYKfS3@ zeLt8kd3l`Ab7kGt(Bl1&!4N+n;UJTGw6eV}alC=Hh)?w>+uD}kG7Qx7eAU6942&r& zKtac5R*@Ts|CKnze=%iyItDo3rA^alzkh2FZUeka0of|(Gg*~FPRqga(eiSFX9xX0 zbv`UUTQpgd=Wsb)o?KVP2Cf&To5Z+cufB(;q9;BY`cbnfFOS{NmM&aO141`GVR=4c%exupeG`Ccp^vXv%TTY}?r)&(hv03p@;aMlHQ$BaR{`(S==fSJ zJ#qw=)nTQfy&VD?zFohX`V-=)F6+0iU*Fc&reAQ+HWR>tgYFGfv94xljrdk^2k}4n z!pbuMbjSD@{%%u%0c$eTW}KFm_8JfEOOStu0Xt~Y2kzk_%|F_{s?jOoaLLr%c{o#dnLQxE*NMj{4HN zEv`2Yvn39RCLF@k#`8G(vsyikSIBl6!tW-6&2C$gVAWy=k5wlI6z~}g-Yg7S%fP+N z3H1u0!Ah36lVLf4zCTu3fG)mmT>g)#3%!R~*~Z{QE~or8(5nF1R{`y9fb0!ZE>STy z`IP#G07F+#1rBE)eL$2)=;#O6o~w zkbaEX+4v*70bCw3E1<98bFymO)rBg%ttbZ_c}#zwwod1pMMbibbrxhXcPCcTm>`qR z`k#)f3+rCu=_p`t?>1|6UU5~5?lY(J#Y0Qt%*ut=W!$U1WpbenWsnNUYqraY+1c5j zFnFuUpMowc&4a|x0JaHcnKB5HZ>^npJEiljA6Do6agMPi%5Hn9C$7f&KMp zzw`}Jm|#Nt)@ka@(vCY%8f}Hxcd$u2mtvbu%`Pu2@7TRxln%(RXZh)m_*^S+ZvSqI z%C!Z9b`Qt+7kP-+$h^Yf4M*-ORtGn7i)CwK_4p&P(Bk#i+P7n~p0335NY5?)Sakdg z-%Ye-4DmJqb_Y*utIaz#KqiaFx8eVoD~ac5uS}RXa&mIs_C1S{jTjQv-TBeAd`DDf0ZJ?mWh-Hh;p|h-#pqr5MASFlYsA{aAn}NQBOc0!pR8@+28PuL;eKW=LQWL zv=#9B#UuI*yiGd!b;WvWxzI1&(+OVuxqB(*4^8g9{ORNPV0!^xs-{m*8c>c(6 zk4S8_@n};YE1SBb_up8>W2XooKO^U7zo=c#otuM3Zddzt5r1!8WU1IjXUPB-zRS<4$Hh2$M@k+R!2@0x^NcRmWF2<-Th6 z6aVQoheOSgKTt7gW-NdB+t5(;`Bts-_{(>mY>XTp?3-*_Rp_MF%2bD{{CJqVHr^w% zskb-&3|N3i^WWx_WN3Z@^g+HW^M=nrmwUU|4Hk%b7+_V(RW{oL7p7f2yt1fnV>h&+ eSLJ8G0{;&fA{JK>YS*g(0000Px-{z*hZR9Fe!mwRy4#TCbQf4}?4TL}pyAg>@u7~0AsfdE=WrGlfQw$Q0M1==Y% zQ%CDahDTsX2L#&@AC->ST7f>8wy8xP5@CE$G36BmnSuybK%_uOkVistZ+^eu_H%yZ zUT$tKlt283?#$k^=dowce)sIz-_OMjG1DTeoJdLh+5ctx1D=K%t1%0TUF5X*UDPTJTAZK$BzWq zp-~^VZLYk-NmdZ#qpW+ntgNhiG#YJ0|B~Z4s~Z~|kBTjBr$L^juVPar>(;GX&3G+y zvd{@XoACgEo0pxP{qlti7b@B0o7kjm%qd23JN=3PvP=)`o(_k@{-MSk5o;mi$@C-u zl{XsUMy>6oo^hrIf@X&6=yx4$J7;yMU(7)=wX@WIZL|)C11~y}=)8sn6%%sjExJIx z%T!tkSZC-VY{DGKhspB^QV$z8Yz*|7*4EasWZogbQvgy$M(q%L^yAR`Q^}g0@F(C` zA}FBel5JnYccb48=nIgou`KIO=-)?-7||QQ(;3GbcBT054dBTDzE5Ut5<_f$09k`w zD+haXY%&Mj3z^j>YmR52r_5-}(pAQ|V~PGN&#@4BHD~S2zcFDT@%Po*3|RX_N#i)b686<&ToMCB>FBe z-2wU6%O{0M&#{p_39C*d?gH} zHvo(e7Mb|o_U+pb$zw8p{P-pH_4SX1LZR1la&nf4C-_dx+e81k@X|((9NC3yI)wFB zh;M0t|2RJP5#OuG5nnz`A3#h-i6M$(KTIa z+_wSvHLlUyY+@4ppXm~(=rf?{!UI$d`jBiCwi$j4I)_*Mgy^MJS64^Kq-xe%SW{CY z8KwdL1yr8`%rb!S?POkle*ToYy1HNZ0)CJ^2llt}KI<(!vyw92L z2N_dpOZ|wYPO;vqv|FrN65}-E2EbaQEO)=M)dqrbZDq|@mg&QS17xnHy_5iQMc(4! zcoma+Hu4O84Rib`$+Ass_$Amy_}mhY;Zhc`w%&^@heskiBO{}Zu@v}~069di+~&=j zI(415*R|PN47MZzd2eCW=11yDk8Synty|u8P-{Ksa><##{?!W5d}{ zcQ$q@9h5qcxQM<1V5`N3EV_*v*^S|Eu}fn^P0(|Ey2!O%&J}$VKzHNo1KGIDNo?4P zpE=Mx=nQ-{C+e>>X8lUh;kPi+#`aH5oaZ!}(UsJ{9G4wy~#NU9QIg6IHjRG8WmFIkj!$NZCU9 zdTY2ym!(uD2`#OEd}cw#>q+9Tg(Y@9Y0@OCs;bIO?ZZ&iU8WVI&!UxTK500f7j|O*^Vrc>`e)t*nXYhrSfO--bpd-(CT#hRRPi=ZFiWI zLcj*M)K|{&KSEQeuX|BITY5S*>Jc)r?M1${r^g}(8aD+CmY=smIjMFTJ!%@#i#4A! qCL@);O}0PNPG9`hRSd3o)qeqIKTgK#$nX~c000000001b5ch_0Itp) z=>Px$=}AOER5%f>ls`yYK^({L&X*UZ^58`%F2&_8Mji-)AOWRC+LEOXrP*8CrHBsV zq=QQxq;wDjac~lGNI{ScEp(`44%i{Y{OM3Av;o&-PG1D}o{64tkIA*z8-DN~C8Rus~(^TTFV2Vb2+)8C%L*ddj zh@SOkGJo&nn548^&XYtm0fWavi05`b|3jPY7n#;-#!!KHBcovYNGPHq$K(9l4&Qb`eG4$9304P(O2W`FtD z3LN@!gJ`WR<%)mOpQHRR)oL0l0Zki*@%TYD`^T@-xq#q3%JCpxEGe~clSq%12M337 zrW*PP`jpMsq;+&uYNr>WLLmv)udxB4{dgkfTfg|9Qe&)M|Bms8(0#QnE5?h(Q@`$d zetCJJVsVEFF{>vUjBNt`swr|KktZHw-{927?eE#a;1o}%&ztk@S{S&BvQkTUlOIrO zRS>;sa2`PZ8H#QQx9yRUH$0K3U#)20`wy&Tu9TnPdLG?#Y@opbv>SN%GiYJF!vKim x61PfHlKxP|YKN%SW%^I0j|J|hTW4=KasdK1u&66|Lc{<7002ovPDHLkV1oQ)2^9bU literal 0 HcmV?d00001 diff --git a/src/main/ui/static/templates/billCode/img/bill_wechat.png b/src/main/ui/static/templates/billCode/img/bill_wechat.png new file mode 100644 index 0000000000000000000000000000000000000000..0f1e04f18e1c0752a90f48d9688855da400207e0 GIT binary patch literal 2015 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 + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/ui/static/templates/billCode/js/mobile_payment.js b/src/main/ui/static/templates/billCode/js/mobile_payment.js new file mode 100644 index 000000000..7a61910a8 --- /dev/null +++ b/src/main/ui/static/templates/billCode/js/mobile_payment.js @@ -0,0 +1,252 @@ +/** + * Created by dulingling on 2020-03-25. + */ +$(document).ready(function () { + var paymentFun = ''; + var selectPaymentHTML = " "; + var maxtime = window.maxtime; + var hasPayment =true;//可支付 + + if(window.openmobilefun == 'wechat'|| window.openmobilefun == 'other'){ + paymentFun = 'Wechat' + }else{ + paymentFun = 'Alipay' + $(".select_wechat").empty(); + $(".select_alipay").append(selectPaymentHTML); + $(".select_bank").empty(); + } + + setInterval(function(){ + if(maxtime>0){ + var countdown=document.getElementById("timer"); + maxtime=maxtime-1; + var minute=parseInt(maxtime/60); + var second=parseInt(maxtime%60); + countdown.innerHTML=minute+'分'+second+'秒'; + }else{ + $('#commit-btn').css({"background-color":"#eee",}); + hasPayment = false; + } + },1000); + + + $("#select_wechat").click(function(){ + if(paymentFun != 'Wechat'){ + paymentFun = 'Wechat' + $(".select_wechat").append(selectPaymentHTML); + $(".select_alipay").empty(); + $(".select_bank").empty(); + } + }) + $("#select_alipay").click(function(){ + if(paymentFun != 'Alipay'){ + paymentFun = 'Alipay' + $(".select_wechat").empty(); + $(".select_alipay").append(selectPaymentHTML); + $(".select_bank").empty(); + } + }) + $("#select_bank").click(function(){ + if(paymentFun != 'Bank'){ + paymentFun = 'Bank' + $(".select_wechat").empty(); + $(".select_alipay").empty(); + $(".select_bank").append(selectPaymentHTML); + } + }) + + $("#commit-btn").click(function () { + if(hasPayment){ + if(window.openmobilefun != 'other'){ + appPayment() + } + } + }) + + function appPayment(){ + var payUrl = getShareLink(); + $("#commit-btn").css({"background-color":"#eee",}); + $("#commit-btn").val("订单创建中..."); + hasPayment = false; + $.ajax({ + url: payUrl, + method: 'get', + contentType: 'application/json', + dataType: 'json', + success: function (res) { + if(paymentFun == 'Wechat'){ + if( window.openmobilefun == 'wechat'){ + invokePay(res.order_id,res.jsapi); + }else{ + redirectH5Payment(res.partner_order_id,res.client_moniker) + } + } + if(paymentFun == 'Alipay'){ + if(window.openmobilefun == 'alipay'){ + callPayment(res); + }else{ + redirectH5Payment(res.partner_order_id,res.client_moniker) + } + } + if(paymentFun == 'Bank'){ + cbbankPayment(res); + } + }, + error: function (jqXHR) { + alert(jqXHR.responseJSON.message); + $("#commit-btn").css({"background-color":"#ED2424",}); + $("#commit-btn").val("支付"); + if(maxtime>0){ + hasPayment = true; + }else{ + hasPayment = false; + } + } + }) + } + + function redirectH5Payment(orderId,clientMoniker){ + window.location.href='/api/v1.0/share_code/business/bills/'+clientMoniker+'/orders/'+orderId+'/pay'; + } + + function getShareLink(){ + var paymentLink = '' + if(window.sharetype != 'app'){ + //PC端扫码访问 + if(paymentFun == 'Wechat'){ + if(window.openmobilefun == 'wechat'){ + paymentLink = '/api/v1.0/share_code/business/bills/'+window.billInfo.bill_code_id+'/wechat/mobile'; + }else{ + paymentLink = '/api/v1.0/share_code/business/bills/'+window.billInfo.bill_code_id+'/alipay/mobile/redirectApp?priorityChannel=Wechat'; + } + } + if(paymentFun == 'Alipay'){ + if(window.openmobilefun == 'alipay'){ + paymentLink = '/api/v1.0/share_code/business/bills/'+window.billInfo.bill_code_id+'/alipay/mobile'; + }else{ + paymentLink = '/api/v1.0/share_code/business/bills/'+window.billInfo.bill_code_id+'/alipay/mobile/redirectApp?priorityChannel=Alipay'; + } + } + if(paymentFun == 'Bank'){ + paymentLink = '/api/v1.0/share_code/business/bills/'+window.billInfo.bill_code_id+'/cbbank/mobile?partner_moniker='+window.clientmoniker; + } + }else{ + //app扫码访问 + if(paymentFun == 'Wechat'){ + if(window.openmobilefun == 'wechat'){ + paymentLink = '/api/v1.0/share_code/bills/payment/orders/'+window.billInfo.bill_code_id+'/wechat/share_link'; + }else{ + paymentLink = '/api/v1.0/share_code/bills/payment/'+window.billInfo.bill_code_id+'/alipay/mobile/redirectApp?priorityChannel=Wechat'; + } + } + if(paymentFun == 'Alipay'){ + if(window.openmobilefun == 'alipay'){ + paymentLink = '/api/v1.0/share_code/bills/payment/orders/'+window.billInfo.bill_code_id+'/alipay/share_link' + }else{ + paymentLink = '/api/v1.0/share_code/bills/payment/'+window.billInfo.bill_code_id+'/alipay/mobile/redirectApp?priorityChannel=Alipay'; + + } + } + if(paymentFun == 'Bank'){ + paymentLink = '/api/v1.0/share_code/bills/payment/orders/'+window.billInfo.bill_code_id+'/cbbank/share_link?partner_moniker='+window.clientmoniker; + } + } + return paymentLink; + } + + //微信支付方式 + function invokePay(orderId,paydata) { + WeixinJSBridge.invoke('getBrandWCPayRequest', { + 'appId': paydata.appId, + 'timeStamp': paydata.timeStamp, + 'nonceStr': paydata.nonceStr, + 'package': paydata.package, + 'signType': paydata.signType, + 'paySign': paydata.paySign + }, function (res) { + var redirect = "/api/payment/v1.0/wechat_jsapi_payment/partners/" + window.clientmoniker + "/orders/" + orderId+"?"; + if (res.err_msg == 'get_brand_wcpay_request:ok') { + startCheckOrder(orderId,redirect + (redirect.indexOf('?') < 0 ? '?' : '&') + 'success=true') + } else { + if (res.err_msg == 'get_brand_wcpay_request:cancel') { + hasPayment = true; + $("#commit-btn").css({"background-color":"#ED2424",}); + $("#commit-btn").val("支付"); + } + if( res.err_msg == 'get_brand_wcpay_request:fail'){ + hasPayment = true; + $("#commit-btn").css({"background-color":"#ED2424",}); + $("#commit-btn").val("支付"); + location.href = redirect + (redirect.indexOf('?') < 0 ? '?' : '&') + 'success=false'; + } + } + }) + } + + //支付宝支付方式 + function callPayment(paydata) { + try { + if(typeof paydata.trade_no == 'undefined'){ + window.location.href = paydata.mweb_url + }else { + AlipayJSBridge.call('tradePay', { + tradeNO: paydata.trade_no + }, function (res) { + if (res.resultCode == '9000') { + AlipayJSBridge.call('startApp', { + appId: '20000056', + param: { + actionType: 'showSuccPage', + payResult: res.result + }, + closeCurrentApp: false + }); + startCheckOrder(paydata.order_id, '/api/v1.0/alipay_direct/partners/' + window.clientmoniker + '/orders/' + paydata.order_id + '/result'); + } else { + hasPayment = true; + $("#commit-btn").css({"background-color": "#ED2424",}); + $("#commit-btn").val("支付"); + } + }) + } + } catch (err) { + alert(err); + $('#wdiv').hide(); + } + } + + //银联支付方式 + function cbbankPayment(res){ + if('SUCCESS' !== res.return_code && typeof res.return_code !== 'undefined'){ + $("#commit-btn").css({"background-color":"#ED2424",}); + if(maxtime>0){ + hasPayment = true; + }else{ + hasPayment = false; + } + }else { + location.href = res.pay_url; + } + } + + //调用查询订单状态方法 + function startCheckOrder(orderId, url) { + function checkOrderStd() { + $.ajax({ + url: '/api/v1.0/payment/orders/' + orderId + '/status', + method: 'GET', + dataType: 'json', + success: function (res) { + if (res.paid) { + location.href = url; + } else { + setTimeout(checkOrderStd, 500); + } + } + }) + } + + checkOrderStd(); + } + +}); \ No newline at end of file diff --git a/src/main/ui/static/templates/billCode/js/pc_payment.js b/src/main/ui/static/templates/billCode/js/pc_payment.js new file mode 100644 index 000000000..e69cdfa9f --- /dev/null +++ b/src/main/ui/static/templates/billCode/js/pc_payment.js @@ -0,0 +1,159 @@ +/** + * Created by dulingling on 2020-03-25. + */ +$(document).ready(function () { + var paymentFun = 'Wechat'; + var maxtime = window.maxtime; + var hasPayment =true;//可支付 + + if(document.documentElement.clientWidth<500){ + $('.img-size').css({"height":"28px",}) + } + + if(window.clientInfo.enable_wechat){ + var paymentFun = 'Wechat'; + showQRcode(); + }else if(window.clientInfo.enable_alipay){ + var paymentFun = 'Alipay'; + showQRcode(); + }else if(window.clientInfo.enable_cb_bankpay){ + var paymentFun = 'Bank'; + showQRcode(); + } + + startCheckOrder(); + + setInterval(function(){ + if(maxtime>0){ + var countdown=document.getElementById("timer"); + maxtime=maxtime-1; + var minute=parseInt(maxtime/60); + var second=parseInt(maxtime%60); + countdown.innerHTML=minute+'分'+second+'秒'; + }else{ + hasPayment = false; + $('#qrImg').empty(); + } + },1000); + + + $("#select_wechat").click(function(){ + if(paymentFun != 'Wechat'){ + paymentFun = 'Wechat' + $("#select_wechat").removeClass("no-select-pay-fun").addClass("select-pay-fun"); + $("#select_alipay").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + $("#select_bank").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + showQRcode(); + } + }) + $("#select_alipay").click(function(){ + if(paymentFun != 'Alipay'){ + paymentFun = 'Alipay' + $("#select_wechat").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + $("#select_alipay").removeClass("no-select-pay-fun").addClass("select-pay-fun"); + $("#select_bank").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + showQRcode(); + } + }) + $("#select_bank").click(function(){ + if(paymentFun != 'Bank'){ + paymentFun = 'Bank' + $("#select_wechat").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + $("#select_alipay").removeClass("select-pay-fun").addClass("no-select-pay-fun"); + $("#select_bank").removeClass("no-select-pay-fun").addClass("select-pay-fun"); + showQRcode(); + } + }) + + + function showQRcode() { + if (hasPayment) { + var payUrl = ''; + var orderId = window.clientmoniker + dateFormat() + String(Math.random()).substring(2, 8).toUpperCase(); + var channelName = paymentFun == 'Wechat' ? '微信' : '支付宝' + if (paymentFun == 'Wechat') { + $('#qrImg').empty(); + document.getElementById("qrImg").style.display = 'block'; + var selectPaymentHTML = + "

请使用" + channelName + "客户端扫码支付

" + + ""; + $('#qrImg').append(selectPaymentHTML) + } else if (paymentFun == 'Alipay') { + $('#qrImg').empty(); + document.getElementById("qrImg").style.display = 'block'; + var selectPaymentHTML = + "

请使用" + channelName + "客户端扫码支付

" + + ""; + $('#qrImg').append(selectPaymentHTML) + } else if (paymentFun == 'Bank') { + $('#qrImg').empty(); + document.getElementById("qrImg").style.display = 'block'; + if( hasPayment){ + createCBBankOrder(); + } + } + } + } + + function createCBBankOrder() { + $.ajax({ + url: window.cbbankpaymentlink, + method: 'get', + contentType: 'application/json', + dataType: 'json', + success: function (res) { + cbbankPayment(res); + }, + error: function (jqXHR) { + alert(jqXHR.responseJSON.message); + if(maxtime>0){ + hasPayment = true; + }else{ + hasPayment = false; + } + } + }) + + } + + function cbbankPayment(res){ + if('SUCCESS' !== res.return_code && typeof res.return_code !== 'undefined'){ + }else { + location.href = res.pay_url; + } + } + + //做个每5秒查询查询一次订单状态 + function startCheckOrder(orderId) { + //通知URL + + function checkOrderStd() { + $.ajax({ + url: '/api/v1.0/payment/billOrder/' + window.billInfo.client_order_id + '/status', + method: 'GET', + dataType: 'json', + success: function (res) { + if (res.paid) { + location.href = res.redirect; + } else { + setTimeout(checkOrderStd, 500); + } + } + }) + } + + checkOrderStd(); + } + + function dateFormat() { + var date = new Date(); + var formatTimeStr = ''; + formatTimeStr += date.getFullYear(); + formatTimeStr += date.getMonth()+1; + formatTimeStr += date.getDate(); + formatTimeStr += date.getHours(); + formatTimeStr += date.getMinutes(); + formatTimeStr += date.getSeconds(); + return formatTimeStr; + } +}); \ No newline at end of file