myOrder.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. // pages/groupmeallist/myOrder/myOrder.js
  2. import order from '../../../api/order'
  3. const cache = require('../../../utils/cache.js');
  4. import Activity from '../../../api/activity';
  5. const app = getApp()
  6. import storeGoods from '../../../api/storeGoods'
  7. import base from "../../../utils/base";
  8. Page({
  9. /**
  10. * 页面的初始数据
  11. */
  12. data: {
  13. showAllSku: false,
  14. orderInfo: {},
  15. orderSn: '',
  16. orderGoodList: [], //spu-sku商品信息
  17. },
  18. /**
  19. * 生命周期函数--监听页面加载
  20. */
  21. onLoad: function (options) {
  22. if (options.sn) {
  23. this.reloadPage(options.sn)
  24. }
  25. },
  26. // // 时间戳转化
  27. // getLocalTime(nS) {
  28. // return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/, ' ');
  29. // },
  30. dateFormat(timestamp, format) {
  31. if (String(timestamp).length === 10) {
  32. timestamp = timestamp * 1000
  33. }
  34. var date = new Date(timestamp)
  35. var Y = date.getFullYear()
  36. var M = date.getMonth() + 1
  37. var D = date.getDate()
  38. var hour = date.getHours()
  39. var min = date.getMinutes()
  40. var sec = date.getSeconds()
  41. if (format === 'YYYY') {
  42. return Y // 2021
  43. } else if (format === 'YYYY-MM') { // 2021-07
  44. return Y + '-' + (M < 10 ? '0' + M : M)
  45. } else if (format === 'YYYY-MM-DD') { // 2021-07-12
  46. return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D)
  47. } else if (format === 'HH:mm:ss') { // 10:20:35
  48. return (hour < 10 ? '0' + hour : hour) + ':' + (min < 10 ? '0' + min : min) + ':' + (sec < 10 ? '0' + sec : sec)
  49. } else if (format === 'YYYY-MM-DD HH:mm') { // 2021-07-12 10:20
  50. return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D) + ' ' + (hour < 10 ? '0' + hour : hour) + ':' + (min < 10 ? '0' + min : min)
  51. } else if (format === 'YYYY-MM-DD HH:mm:ss') { // 2021-07-12 10:20:35
  52. return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D) + ' ' + (hour < 10 ? '0' + hour : hour) + ':' + (min < 10 ? '0' + min : min) + ':' + (sec < 10 ? '0' + sec : sec)
  53. } else {
  54. return '--'
  55. }
  56. },
  57. reloadPage(orderSn) {
  58. this.setData({
  59. orderSn
  60. })
  61. this.getOrderdetail();
  62. },
  63. async getOrderdetail() {
  64. let _self = this;
  65. try {
  66. let orderRes = await order.getOrderDetail({
  67. orderSn: _self.data.orderSn,
  68. mobile: cache.getMobile()
  69. });
  70. if (orderRes.code == 200 && orderRes.msg == "success") {
  71. let orderInfo = orderRes.data;
  72. orderInfo.originPrice = (parseFloat(orderInfo.payPrice) / 100).toFixed(2)
  73. orderInfo.orderRefund.createTime = _self.dateFormat(orderInfo.orderRefund.createTime, 'YYYY-MM-DD HH:mm:ss')
  74. _self.setData({
  75. orderInfo: orderInfo,
  76. })
  77. //组建spu sku
  78. _self.createOrderGoodList(orderInfo.orderGoodsList)
  79. }
  80. } catch (error) {
  81. console.log(error);
  82. }
  83. },
  84. /**
  85. * 组建spu sku
  86. * @param {*} list
  87. */
  88. createOrderGoodList(list) {
  89. console.log("进入详情")
  90. console.log(list)
  91. let _self = this;
  92. if (list.length == 0) {
  93. return;
  94. }
  95. let orderGoodList = [];
  96. for (let a = 0; a < list.length; a++) { //最外层
  97. //某一个商品种类
  98. let goodList = list[a];
  99. //sku-list
  100. let orderGoodsSkuList = goodList.orderGoodsSkuList;
  101. for (let b = 0; b < orderGoodsSkuList.length; b++) {
  102. let orderGood = {};
  103. orderGood.productName = goodList.productName;
  104. let orderGoodsSku = orderGoodsSkuList[b];
  105. let text = '';
  106. if (orderGoodsSku.comboSkuList != null && orderGoodsSku.comboSkuList.length > 0) {
  107. console.log("进入套餐拼接")
  108. text = "套餐:"
  109. let productName = ''
  110. let specValue = []
  111. let num = ''
  112. orderGoodsSku.comboSkuList.forEach(function (comboSkuList, index) {
  113. comboSkuList.skuList.forEach(function (skuList, skuindex) {
  114. productName = skuList.productName
  115. num = skuList.num
  116. if (skuList.specList != null) {
  117. let specList = JSON.parse(skuList.specList);
  118. if (base.isArray(specList)) {
  119. specList.forEach(function (specList, skuindex) {
  120. specValue.push(specList.specValue + " X" + num)
  121. })
  122. }
  123. } else {
  124. specValue.push(productName + " X" + num)
  125. }
  126. })
  127. }
  128. )
  129. specValue = specValue.join('、') || ""
  130. text = text + "(" + specValue + ")"
  131. }
  132. orderGood.num = orderGoodsSkuList[b].num;
  133. orderGood.allFee = base.fenToYuan(orderGoodsSkuList[b].price * orderGoodsSkuList[b].num)
  134. orderGood.skuText = text
  135. orderGoodList.push(orderGood)
  136. }
  137. }
  138. _self.setData({
  139. orderGoodList: orderGoodList
  140. })
  141. console.log(this.data.orderGoodList)
  142. },
  143. /**
  144. * 生命周期函数--监听页面初次渲染完成
  145. */
  146. onReady: function () {
  147. },
  148. /**
  149. * 生命周期函数--监听页面显示
  150. */
  151. onShow: function () {
  152. },
  153. /**
  154. * 生命周期函数--监听页面隐藏
  155. */
  156. onHide: function () {
  157. },
  158. /**
  159. * 生命周期函数--监听页面卸载
  160. */
  161. onUnload: function () {
  162. },
  163. /**
  164. * 页面相关事件处理函数--监听用户下拉动作
  165. */
  166. onPullDownRefresh: function () {
  167. },
  168. /**
  169. * 页面上拉触底事件的处理函数
  170. */
  171. onReachBottom: function () {
  172. },
  173. /**
  174. * 用户点击右上角分享
  175. */
  176. onShareAppMessage: function () {
  177. }
  178. })