pay.html 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325
  1. <!DOCTYPE html>
  2. <html class="webkit chrome win js">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html">
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Checkout</title>
  8. <link href="css/demo/bootstrap.min.css" rel="stylesheet">
  9. <link rel="stylesheet" href="css/demo/style.css">
  10. <link rel="stylesheet" href="css/mobile.css">
  11. <script src="css/demo/demo.js"></script>
  12. </head>
  13. <body>
  14. <div class="wrapper">
  15. <section class="section-home-products">
  16. <div class="container">
  17. <div class="controls-holder nav-tabs">
  18. <ul class="inline">
  19. <li class="active"><a data-toggle="tab" href="javascript:void(0);">Shopping Demo</a></li>
  20. <li><a data-toggle="tab" href="/portal-service-demo/hotel.jsp">Hotel Demo</a></li>
  21. <li><a data-toggle="tab" href="/portal-service-demo/register.jsp">Merchant
  22. Register</a></li>
  23. <li><a data-toggle="tab" href="/portal-service-demo/order.jsp">Order
  24. Management</a></li>
  25. <li><a data-toggle="tab" href="/portal-service-demo/webhook.jsp">WebHook</a></li>
  26. </ul>
  27. </div>
  28. <div class="tab-content">
  29. <div id="hot-products" class="products-holder active tab-pane " style="display: block;">
  30. <div class="row-fluid">
  31. <div class="span3">
  32. <div class="product-item">
  33. <a>
  34. <img alt="" src="css/demo/p1.jpg">
  35. <h1>versace</h1>
  36. </a>
  37. <div class="tag-line">
  38. <span>yellow diamond</span>
  39. <span>toilet water spray</span>
  40. </div>
  41. <div class="price">
  42. $2.00
  43. </div>
  44. <a class="cusmo-btn add-button" onclick="addGoods(2)" href="javascript:void(0);">add
  45. to cart</a>
  46. </div>
  47. </div>
  48. <div class="span3">
  49. <div class="product-item">
  50. <a>
  51. <img alt="" src="css/demo/p2.jpg">
  52. <h1>estee lauder</h1>
  53. </a>
  54. <div class="tag-line">
  55. <span>yellow diamond</span>
  56. <span>toilet water spray</span>
  57. </div>
  58. <div class="price">
  59. $3.00
  60. </div>
  61. <a class="cusmo-btn add-button" onclick="addGoods(3)" href="javascript:void(0);">add
  62. to cart</a>
  63. </div>
  64. </div>
  65. <div class="span3">
  66. <div class="product-item">
  67. <a>
  68. <img alt="" src="css/demo/p3.jpg">
  69. <h1>burberry</h1>
  70. </a>
  71. <div class="tag-line">
  72. <span>yellow diamond</span>
  73. <span>toilet water spray</span>
  74. </div>
  75. <div class="price">
  76. $4.00
  77. </div>
  78. <a class="cusmo-btn add-button" onclick="addGoods(4)" href="javascript:void(0);">add
  79. to cart</a>
  80. </div>
  81. </div>
  82. <div class="span3">
  83. <div class="product-item">
  84. <a>
  85. <img alt="" src="css/demo/p4.jpg">
  86. <h1>versace</h1>
  87. </a>
  88. <div class="tag-line">
  89. <span>yellow diamond</span>
  90. <span>toilet water spray</span>
  91. </div>
  92. <div class="price">
  93. $5.00
  94. </div>
  95. <a class="cusmo-btn add-button" onclick="addGoods(5)" href="javascript:void(0);">add
  96. to cart</a>
  97. </div>
  98. </div>
  99. </div>
  100. <div class="row-fluid">
  101. <div class="span3">
  102. <div class="product-item">
  103. <a>
  104. <img alt="" src="css/demo/p5.jpg">
  105. <h1>versace</h1>
  106. </a>
  107. <div class="tag-line">
  108. <span>yellow diamond</span>
  109. <span>toilet water spray</span>
  110. </div>
  111. <div class="price">
  112. $6.00
  113. </div>
  114. <a class="cusmo-btn add-button" onclick="addGoods(6)" href="javascript:void(0);">add
  115. to cart</a>
  116. </div>
  117. </div>
  118. <div class="span3">
  119. <div class="product-item">
  120. <a>
  121. <img alt="" src="css/demo/p6.jpg">
  122. <h1>estee lauder</h1>
  123. </a>
  124. <div class="tag-line">
  125. <span>yellow diamond</span>
  126. <span>toilet water spray</span>
  127. </div>
  128. <div class="price">
  129. $7.00
  130. </div>
  131. <a class="cusmo-btn add-button" onclick="addGoods(7)" href="javascript:void(0);">add
  132. to cart</a>
  133. </div>
  134. </div>
  135. <div class="span3">
  136. <div class="product-item">
  137. <a>
  138. <img alt="" src="css/demo/p7.jpg">
  139. <h1>burberry</h1>
  140. </a>
  141. <div class="tag-line">
  142. <span>yellow diamond</span>
  143. <span>toilet water spray</span>
  144. </div>
  145. <div class="price">
  146. $8.00
  147. </div>
  148. <a class="cusmo-btn add-button" onclick="addGoods(8)" href="javascript:void(0);">add
  149. to cart</a>
  150. </div>
  151. </div>
  152. <div class="span3">
  153. <div class="product-item">
  154. <a>
  155. <img alt="" src="css/demo/p8.jpg">
  156. <h1>versace</h1>
  157. </a>
  158. <div class="tag-line">
  159. <span>yellow diamond</span>
  160. <span>toilet water spray</span>
  161. </div>
  162. <div class="price">
  163. $100.00
  164. </div>
  165. <a class="cusmo-btn add-button" onclick="addGoods(100)"
  166. href="javascript:void(0);">add to cart</a>
  167. </div>
  168. </div>
  169. </div>
  170. <div class="buttons-holder">
  171. <span class="total-p">Total Price:</span>
  172. <span id="MM-Price-span" class="total-a">$0.00</span>
  173. <a id="MM-button" class="cusmo-btn" href="javascript:void(0);">MM Payment</a>
  174. <a id="APP-button" onclick="appPay()" class="cusmo-btn" href="javascript:void(0);">APP
  175. Payment</a>
  176. </div>
  177. </div>
  178. </div>
  179. </div>
  180. </section>
  181. </div>
  182. <script src="http://159.138.11.254:32345/portal-pgw-web/js/cps-checkout.js"></script>
  183. <script type="text/javascript">
  184. //totalPrice=1;
  185. //var CREATE_URL = 'http://www.tp6.com/index/payment';
  186. //var EXECUTE_URL = 'http://www.tp6.com/index/execute';
  187. MMPay.Button.render({
  188. env: 'sandbox', // Optional: specify 'sandbox' environment
  189. payment: function () {
  190. if (null == totalPrice || totalPrice <= 0) {
  191. $.alert({
  192. closeIcon: true,
  193. title: 'Error',
  194. content: 'Payment amount must be greater than zero.',
  195. });
  196. return;
  197. }
  198. var data = {
  199. env: this.env,
  200. totalPrice: totalPrice
  201. };
  202. // var CREATE_URL = 'https://10.93.49.141:8443/portal-service-demo/biz_pgw/demo/checkout/api/payment/create';
  203. var CREATE_URL =
  204. '/index/payment';
  205. return MMPay.payment.create(CREATE_URL, data)
  206. .then(function (res) {
  207. return res.paymentID;
  208. });
  209. },
  210. onAuthorize: function (data) {
  211. var EXECUTE_URL =
  212. '/index/execute';
  213. var data = {
  214. env: this.env,
  215. paymentID: data.paymentID,
  216. payerID: data.payerID,
  217. couponID: data.couponID
  218. };
  219. // Make a call to your server to execute the payment
  220. return MMPay.payment.execute(EXECUTE_URL, data)
  221. .then(function (res) {
  222. console.log(res);
  223. alert('支付成功');
  224. window.location.href =
  225. "/portal-service-demo/success.jsp?paymentID=" +
  226. res.paymentID;
  227. });
  228. },
  229. onError: function (data) {
  230. alert('error');
  231. // window.location.href = "/portal-service-demo/failure.jsp";
  232. },
  233. onCancel: function (data) {
  234. window.location.href = "/portal-service-demo/";
  235. }
  236. }, 'MM-button');
  237. </script>
  238. <script type="text/javascript">
  239. function appPay() {
  240. if (null == totalPrice || totalPrice <= 0) {
  241. $.alert({
  242. closeIcon: true,
  243. title: 'Error',
  244. content: 'Payment amount must be greater than zero.',
  245. });
  246. return;
  247. }
  248. var data = {
  249. env: "sandbox",
  250. totalPrice: totalPrice
  251. };
  252. //var CREATE_URL = '/portal-service-demo/biz_pgw/demo/checkout/api/payment/create';
  253. var CREATE_URL = 'http://www.tp6.com/index/payment';
  254. $.ajax({
  255. url: CREATE_URL,
  256. data: JSON.stringify(data),
  257. type: "POST",
  258. async: false,
  259. contentType: "application/json; charset=utf-8",
  260. dataType: "jsonp", //指定服务器返回的数据类型
  261. success: function (data) {
  262. var result = data;
  263. if (result.isSuccess) {
  264. //APP payment
  265. window.location.href = "hwinapp://?paymentID=" + result.paymentID;
  266. window.event.returnValue = false;
  267. window.setTimeout(function () {
  268. window.location.href =
  269. "/portal-service-demo/confirm.jsp?paymentID=" +
  270. result.paymentID;
  271. }, 10000);
  272. }
  273. },
  274. error: function (err) {
  275. $.alert({
  276. closeIcon: true,
  277. type: 'red',
  278. title: 'Error',
  279. content: 'Failed to create order.',
  280. });
  281. }
  282. });
  283. window.event.returnValue = false;
  284. }
  285. </script>
  286. </body>
  287. </html>