orderDetails.html 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport"
  6. content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  7. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  8. <meta name='apple-touch-fullscreen' content='yes'>
  9. <meta name="apple-mobile-web-app-capable" content="yes"/>
  10. <meta content="fullscreen=yes,preventMove=no" name="ML-Config">
  11. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  12. <meta name="renderer" content="webkit">
  13. <meta name="apple-mobile-web-app-capable" content="yes"/>
  14. <meta name="keywords" content="电子烟,关键字"/>
  15. <meta name="Description" content="网站描述"/>
  16. <title>订单详情</title>
  17. <link rel="stylesheet" href="/assets/index/css/common.css?t=18">
  18. <link rel="stylesheet" href="/assets/index/css/orderDetails.css?t=12">
  19. </head>
  20. <body>
  21. <!-- 头部导航栏 -->
  22. <header class="headerContainer" id="headerContainer">
  23. <!-- 顶部提示 -->
  24. <div class="warnContainer">
  25. <h4 class="warnText">containscontainscontainsWARNING: This product contains nicotine. Nicotine is an addicti
  26. </h4>
  27. </div>
  28. <!-- pc端头部 -->
  29. <div id="computerEndHeader">
  30. <a href="/index/index/index.html">
  31. <h1 class="computerLogo">
  32. <img src="/assets/index/asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
  33. </h1>
  34. </a>
  35. <div class="headIconContainer">
  36. <!-- 购物车 -->
  37. <a href="/index/cart/shoppingCart.html">
  38. <div class="headIconItem shoppingCartIcon">
  39. <img src="/assets/index/asstes/icon/shoppingCart.png" alt="shoppingCart" tabindex="shoppingCart">
  40. </div>
  41. </a>
  42. <!-- 收藏 -->
  43. <!-- <div class="headIconItem collectIcon">-->
  44. <!-- <img src="/assets/index/asstes/icon/collect.png" alt="collect" tabindex="collect">-->
  45. <!-- </div>-->
  46. <!-- 个人中心 -->
  47. <a href="/index/user/order.html">
  48. <div class="headIconItem userIcon">
  49. <img src="/assets/index/asstes/icon/user.png" alt="user" tabindex="user">
  50. </div>
  51. </a>
  52. </div>
  53. </div>
  54. <!-- 移动端头部 -->
  55. <div id="mobileEndHeader">
  56. <div class="mobileEndHeaderConten">
  57. <a href="/index/index/index.html">
  58. <h1 class="mobileLogo">
  59. <img src="/assets/index/asstes/icon/logo.png" alt="Free Shipping Vapes" title="Free Shipping Vapes">
  60. </h1>
  61. </a>
  62. <div class="mobileUserIconList">
  63. <div class="mobileUserIcon userIcon">
  64. <img src="/assets/index/asstes/icon/user.png" alt="user" tabindex="user">
  65. </div>
  66. </div>
  67. <div class="mobileMenu">
  68. <p id="mobileMenuBot">
  69. <span id="mobileMenuLink"></span>
  70. </p>
  71. </div>
  72. </div>
  73. <!-- 移动端菜单 -->
  74. <section class="mobileMenuFixed">
  75. <div class="mobileMenuItem">
  76. <h2 class="menuItemTitle">NEW VAPES</h2>
  77. </div>
  78. <div class="mobileMenuItem">
  79. <h2 class="menuItemTitle">DISPOSABLES</h2>
  80. </div>
  81. <div class="mobileMenuItem">
  82. <h2 class="menuItemTitle shoppingCartIcon">Shopping Cart</h2>
  83. </div>
  84. <!-- <div class="mobileMenuItem">-->
  85. <!-- <h2 class="menuItemTitle collectIcon">Collect</h2>-->
  86. <!-- </div>-->
  87. <div class="mobileMenuItem active">
  88. <h2 class="menuItemTitle userIcon">Personal</h2>
  89. </div>
  90. </section>
  91. </div>
  92. </header>
  93. <main id="main">
  94. <section class="pageContainer">
  95. <div class="pageMain">
  96. <!-- 页面菜单 -->
  97. <div class="navContainer" id="userNavContainer">
  98. <a href="/index/index/index.html">
  99. <nav class="navItem">
  100. <div class="navItemFlex">
  101. <img src="/assets/index/asstes/icon/hm.png" alt="">
  102. <h2 class="navTitle">Home</h2>
  103. </div>
  104. </nav>
  105. </a>
  106. <nav class="navItem">
  107. <div class="navItemFlex">
  108. <img src="/assets/index/asstes/icon/order.png" alt="">
  109. <h2 class="navTitle">My orders</h2>
  110. </div>
  111. <div class="sunNavBox">
  112. <a href="#">
  113. <nav class="sunNavItem orderNavItem" id="unpaid" data-type="payment">
  114. <h3 class="sunNavTitle">Unpaid</h3>
  115. </nav>
  116. </a>
  117. <a href="#">
  118. <nav class="sunNavItem orderNavItem" id="treat" data-type="treat">
  119. <h3 class="sunNavTitle">To be shipped</h3>
  120. </nav>
  121. </a>
  122. <a href="#">
  123. <nav class="sunNavItem orderNavItem" data-type="shipped">
  124. <h3 class="sunNavTitle">Shipped</h3>
  125. </nav>
  126. </a>
  127. <a href="#">
  128. <nav class="sunNavItem orderNavItem" data-type="take">
  129. <h3 class="sunNavTitle">Received</h3>
  130. </nav>
  131. </a>
  132. </div>
  133. </nav>
  134. <a href="/index/user/myScores.html">
  135. <nav class="navItem">
  136. <div class="navItemFlex">
  137. <img src="/assets/index/asstes/icon/jf.png" alt="">
  138. <h2 class="navTitle">My points</h2>
  139. </div>
  140. </nav>
  141. </a>
  142. </div>
  143. <!-- 页面内容 -->
  144. <div class="pageConten">
  145. <div class="odTitleBox">
  146. <img src="/assets/index/asstes/icon/fjt.png" alt="">
  147. <h4 class="odTitle">Order Information</h4>
  148. </div>
  149. <!-- <div class="odMenuBox">
  150. <div class="odMenuItem">
  151. <img src="/assets/index/asstes/icon/dy.png" alt="">
  152. <p>打印订单</p>
  153. </div>
  154. <div class="odMenuItem">
  155. <img src="/assets/index/asstes/icon/th.png" alt="">
  156. <p>退货退款</p>
  157. </div>
  158. </div>-->
  159. <div class="orderInfoBox">
  160. <!-- 左边内容 -->
  161. <div class="leftInfoBox">
  162. <!-- 订单名字 -->
  163. <div class="orderNameBox eleBox">
  164. <div class="orNameFlex">
  165. <h5 class="orName">#Order Information</h5>
  166. <p class="orTime">Created At:{$order['create_time']}</p>
  167. </div>
  168. <div class="orStList">
  169. <div class="orStItem paid">
  170. <span></span>
  171. <p>Paid</p>
  172. </div>
  173. <div class="orStItem shipped">
  174. <span></span>
  175. <p>To be shipped</p>
  176. </div>
  177. </div>
  178. </div>
  179. <!-- 订单商品 -->
  180. <div class="orderGoodsBox eleBox">
  181. <div class="ogTeFlex">
  182. <p class="ogTitle">Listing</p>
  183. <div class="ogMarkButton">Pay With PayPal</div>
  184. </div>
  185. <p class="ogTips">
  186. Your goods will be shipped in 2 3days
  187. </p>
  188. {foreach $order['goods'] as $goods}
  189. <div class="ogGoodsInfo">
  190. <div class="ogImgBox">
  191. <img src="{$goods['goods_image']}"
  192. alt="">
  193. </div>
  194. <div class="ogTitleBox">
  195. <p class="ogTitle">{$goods['goods_name']}</p>
  196. <p class="ogSpecs"></p>
  197. </div>
  198. <p class="ogPr">${$goods['goods_price']}x{$goods['total_num']}</p>
  199. <p class="ogToPr">${$goods['total_price']}</p>
  200. </div>
  201. {/foreach}
  202. </div>
  203. <!-- 支付状态 -->
  204. <div class="paymentInfoBox eleBox">
  205. <div class="opTeFlex">
  206. <p class="opTitle">Bill</p>
  207. <!-- <div class="opMarkButton">标记为已付款</div>-->
  208. </div>
  209. <div class="opInfoBox">
  210. <div class="opInfoItem">
  211. <p class="opIKey">Express</p>
  212. <p class="opIValue">$0.00</p>
  213. </div>
  214. <div class="opInfoItem">
  215. <p class="opIKey">Tax</p>
  216. <p class="opIValue">$0.00</p>
  217. </div>
  218. <div class="opInfoItem">
  219. <p class="opIKey">Total</p>
  220. <p class="opIValue">${$order['total_price']}</p>
  221. </div>
  222. <div class="opInfoItem">
  223. <p class="opIKey">Paid</p>
  224. <p class="opIValue">${$order['pay_price']}</p>
  225. </div>
  226. </div>
  227. </div>
  228. <!-- 物流信息 -->
  229. <div class="logisticsBox eleBox">
  230. <div class="logsTeFlex">
  231. <p class="logsTitle">物流信息</p>
  232. <div class="openButton">
  233. <img src="/assets/index/asstes/icon/slt.png" alt="">
  234. </div>
  235. </div>
  236. <div class="logsInfo openBox">
  237. <div class="logList">
  238. <div class="logsLink"></div>
  239. <!-- 物流天数据 -->
  240. <div class="logItem">
  241. <p class="logTime">2024.03.11</p>
  242. <!-- 物流当天信息 -->
  243. <div class="logSunItem">
  244. <p class="dic"></p>
  245. <p class="logSunText">
  246. <span class="sunTime">2024-03-11 12:24</span>
  247. <span class="sunStTe">订单已完成</span>
  248. <span class="sunStTips">自动完成订单,交易关闭</span>
  249. </p>
  250. </div>
  251. <div class="logSunItem">
  252. <p class="dic"></p>
  253. <p class="logSunText">
  254. <span class="sunTime">2024-03-11 12:24</span>
  255. <span class="sunStTe">订单已完成</span>
  256. <span class="sunStTips">自动完成订单,交易关闭</span>
  257. </p>
  258. </div>
  259. </div>
  260. <div class="logItem">
  261. <p class="logTime">2024.03.11</p>
  262. <!-- 物流当天信息 -->
  263. <div class="logSunItem">
  264. <p class="dic"></p>
  265. <p class="logSunText">
  266. <span class="sunTime">2024-03-11 12:24</span>
  267. <span class="sunStTe">订单已完成</span>
  268. <span class="sunStTips">自动完成订单,交易关闭</span>
  269. </p>
  270. </div>
  271. <div class="logSunItem">
  272. <p class="dic"></p>
  273. <p class="logSunText">
  274. <span class="sunTime">2024-03-11 12:24</span>
  275. <span class="sunStTe">订单已完成</span>
  276. <span class="sunStTips">自动完成订单,交易关闭</span>
  277. </p>
  278. </div>
  279. </div>
  280. </div>
  281. </div>
  282. </div>
  283. </div>
  284. <!-- 右边内容 -->
  285. <div class="rightInfoBox">
  286. <!-- 客户信息 -->
  287. <div class="customInfo eleBox">
  288. <div class="cusTeFlex">
  289. <p class="cusTeTitle">客户信息</p>
  290. <div class="openButton">
  291. <img src="/assets/index/asstes/icon/slt.png" alt="">
  292. </div>
  293. </div>
  294. <div class="cusInfoBox openBox">
  295. <div class="cusItem">
  296. <p class="cusKey">Name</p>
  297. <p class="cusValue">{$order['address']['name']} {$order['address']['last_name']}</p>
  298. </div>
  299. <!-- <div class="cusItem">
  300. <p class="cusKey">电子邮件地址</p>
  301. <p class="cusValue">124345213@163.com</p>
  302. </div>-->
  303. <div class="cusItem">
  304. <p class="cusKey">Phone Number</p>
  305. <p class="cusValue">{$order['address']['phone']}</p>
  306. </div>
  307. </div>
  308. </div>
  309. <!-- 送货地址 -->
  310. <div class="addressBox eleBox">
  311. <div class="addTeFlex">
  312. <p class="addTeTitle">送货地址</p>
  313. <div class="openButton">
  314. <img src="/assets/index/asstes/icon/slt.png" alt="">
  315. </div>
  316. </div>
  317. <div class="addressInfo openBox">
  318. <div class="addInfoItem">
  319. <p class="aiKey">First Name</p>
  320. <p class="aiValue">{$orderAddress['name']}</p>
  321. </div>
  322. <div class="addInfoItem">
  323. <p class="aiKey">Last Name</p>
  324. <p class="aiValue">{$orderAddress['last_name']}</p>
  325. </div>
  326. <!-- <div class="addInfoItem">-->
  327. <!-- <p class="aiKey">公司</p>-->
  328. <!-- <p class="aiValue">亚马逊</p>-->
  329. <!-- </div>-->
  330. <div class="addInfoItem">
  331. <p class="aiKey">Phone Number</p>
  332. <p class="aiValue">{$orderAddress['phone']}</p>
  333. </div>
  334. <div class="addInfoItem">
  335. <p class="aiKey">Street</p>
  336. <p class="aiValue">{$orderAddress['detail']}</p>
  337. </div>
  338. <!-- <div class="addInfoItem">-->
  339. <!-- <p class="aiKey">公寓,别至</p>-->
  340. <!-- <p class="aiValue">XXXXXXXXXX</p>-->
  341. <!-- </div>-->
  342. <div class="addInfoItem">
  343. <p class="aiKey">State</p>
  344. <p class="aiValue">{$orderAddress['region']['region']}</p>
  345. </div>
  346. <div class="addInfoItem">
  347. <p class="aiKey">Country</p>
  348. <p class="aiValue">US</p>
  349. </div>
  350. <!-- <div class="addInfoItem">-->
  351. <!-- <p class="aiKey">区域</p>-->
  352. <!-- <p class="aiValue">XXXXXXXXXX</p>-->
  353. <!-- </div>-->
  354. <div class="addInfoItem">
  355. <p class="aiKey">Zip Code</p>
  356. <p class="aiValue">{$orderAddress['zip_code']}</p>
  357. </div>
  358. </div>
  359. </div>
  360. </div>
  361. </div>
  362. </div>
  363. </div>
  364. </section>
  365. </main>
  366. <!-- 底部 -->
  367. <footer class="footerContainer" id="footerContainer">
  368. <section class="sectionContainer">
  369. <div class="elementorContainer">
  370. <div class="footerConter">
  371. <div class="leftText">
  372. <p class="ltK">NEWALETTER</p>
  373. <p class="ltV">Sign up for the Free Shipping Vapes</p>
  374. </div>
  375. <div class="footerInuptBox">
  376. <img class="mailIcon" src="/assets/index/asstes/icon/mailIcon.png" alt="">
  377. <input class="footerInupt" type="text">
  378. <img class="arrowIcon" src="/assets/index/asstes/icon/arrowIcon.png" alt="">
  379. </div>
  380. <div class="footerIconContainer">
  381. <div class="footerIconList">
  382. <a href="#">
  383. <div class="footerIconItem">
  384. <img src="https://i1.branchcn.com/social_media/Wechat.png" alt="">
  385. </div>
  386. </a>
  387. <a href="#">
  388. <div class="footerIconItem">
  389. <img src="https://i1.branchcn.com/social_media/Wechat.png" alt="">
  390. </div>
  391. </a>
  392. <a href="#">
  393. <div class="footerIconItem">
  394. <img src="https://i1.branchcn.com/social_media/Wechat.png" alt="">
  395. </div>
  396. </a>
  397. </div>
  398. <div class="footerVlsaImg">
  399. <a href="#">
  400. <div class="footerVlsaItem">
  401. <img src="https://img2.baidu.com/it/u=1367821108,121397947&fm=253&fmt=auto&app=138&f=JPEG?w=1200&h=500"
  402. alt="">
  403. </div>
  404. </a>
  405. <a href="#">
  406. <div class="footerVlsaItem">
  407. <img src="https://img2.baidu.com/it/u=1367821108,121397947&fm=253&fmt=auto&app=138&f=JPEG?w=1200&h=500"
  408. alt="">
  409. </div>
  410. </a>
  411. <a href="#">
  412. <div class="footerVlsaItem">
  413. <img src="https://img2.baidu.com/it/u=1367821108,121397947&fm=253&fmt=auto&app=138&f=JPEG?w=1200&h=500"
  414. alt="">
  415. </div>
  416. </a>
  417. </div>
  418. </div>
  419. </div>
  420. </div>
  421. </section>
  422. </footer>
  423. <!-- 年龄提示层 -->
  424. <section class="maskContainer">
  425. <div class="ageReminderBox">
  426. <img class="ageReminderBack"
  427. src="https://img1.baidu.com/it/u=3449617615,1431463931&fm=253&app=138&size=w931&n=0&f=JPEG&fmt=auto?sec=1709485200&t=489bafcac7c5bebed91cf50c14356269"
  428. alt="">
  429. <div class="ageReminderInfo">
  430. <h3>ARE YOU OF LEAAL SMOKIND AGE?</h3>
  431. <div class="ageReminderButBox">
  432. <div class="ageRBut ageReminderNo"><span>NO</span></div>
  433. <div class="ageRBut ageReminderYes"><span>Yes, I am 21+</span></div>
  434. </div>
  435. </div>
  436. </div>
  437. </section>
  438. <div id="loadingModel">
  439. <div class="loadingBox">
  440. <img src="/assets/index/asstes/icon/loading.gif" alt="Jumping to paypal.">
  441. </div>
  442. </div>
  443. </body>
  444. <script src="/assets/index/js/jquery-1.12.0.js"></script>
  445. <script src="/assets/index/js/flexible.js"></script>
  446. <script src="/assets/index/js/public.js?t=11"></script>
  447. <script src="/assets/index/js/swiper.js?t=6"></script>
  448. <script src="/assets/index/js/jquery.lazyload.js"></script>
  449. <script>
  450. $(document).ready(function () {
  451. var orderId = "{$order['order_id']}";
  452. console.log('orderId::',orderId)
  453. var payStatus = "{$order['pay_status']}";
  454. console.log('payStatus::',payStatus)
  455. $('#ogMarkButton').hide(0)
  456. if ( payStatus === "10"){
  457. $('#ogMarkButton').show(0)
  458. }
  459. //触屏事件 || 点击事件
  460. const tap = "ontouchstart" in window ? "touchstart" : "click";
  461. //返回
  462. $(".odTitleBox").on(tap, function () {
  463. if (window.history.length > 1) {
  464. // 返回上一页
  465. window.history.back();
  466. } else {
  467. //跳转首页
  468. window.location.replace('/index/index/index.html');
  469. }
  470. });
  471. $(".openButton").on(tap, function () {
  472. const parentEle = $(this).closest('.eleBox')
  473. console.log(parentEle)
  474. const openBoxEle = parentEle.find(".openBox")
  475. console.log(openBoxEle)
  476. openBoxEle.stop().slideToggle(80);
  477. });
  478. //初始化菜单选中状态
  479. function initNavState() {
  480. const url = window.location.href;
  481. const searchParams = new URLSearchParams(new URL(url).search);
  482. const orderType = searchParams.get("orderType");
  483. //订单中心菜单列表
  484. const orderNavItemList = $(".orderNavItem")
  485. //是否存在匹配项
  486. let exist = false
  487. if (orderNavItemList) {
  488. orderNavItemList.each(function (index, element) {
  489. const type = $(this).attr('data-type');
  490. if (type === orderType) {
  491. $(this).addClass("active")
  492. exist = true
  493. }
  494. })
  495. }
  496. //如果未匹配中默认选中待发货
  497. if (!exist) {
  498. $('#treat').addClass("active")
  499. }
  500. }
  501. //支付方法
  502. const orderPayment = (params) => {
  503. return new Promise(function (resolve, reject) {
  504. $.ajax({
  505. url: "/index/order/pay?payType=30&orderId=" + orderId,
  506. method: "POST",
  507. data: JSON.stringify(params),
  508. headers: {
  509. "Content-Type": "application/json",
  510. "storeId": "10001",
  511. "platform": "H5",
  512. // "Access-Token": vapesToken
  513. },
  514. dataType: "json",
  515. success: function (response) {
  516. resolve(response);
  517. },
  518. error: function (xhr, status, error) {
  519. reject(error);
  520. }
  521. });
  522. });
  523. }
  524. //支付按钮点击
  525. $(".ogMarkButton").on(tap, async function () {
  526. console.log("paypaing")
  527. $("#loadingModel").show(0)
  528. const params = { }
  529. const res = await orderPayment(params)
  530. const {status, message, data} = res || {}
  531. if (status === 200 || status === "200") {
  532. window.open(data.payment.approval_link, "_blank");
  533. var interId = setInterval(function () {
  534. fetchOrder(interId);
  535. }, 3000)
  536. } else if (status === 401 || status === "401") {
  537. window.location.replace('../passport/logIn.html')
  538. } else {
  539. showToast(message)
  540. }
  541. });
  542. function fetchOrder(interId) {
  543. $.get('/index/order/detail?orderId=' + orderId, function (res) {
  544. console.log(res.data.order.pay_status);
  545. if (res.status == 200 && res.data.order.pay_status == 20) {
  546. clearInterval(interId);
  547. $("#loadingModel").hide(0);
  548. window.location.replace('/index/user/orderDetails.html?orderId=' + orderId)
  549. }
  550. })
  551. }
  552. $(".orderNavItem").on(tap, function () {
  553. const type = $(this).attr('data-type');
  554. window.location.replace(`/index/user/order.html?orderType=${type}`)
  555. });
  556. initNavState()
  557. })
  558. </script>
  559. </html>