index.js 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. // pages/zl_detail/index.js
  2. const { request, serverName, imgServer } = require('../../utils/services');
  3. const WxParse = require('../../common/component/wxParse/wxParse.js');
  4. const { defaultImg } = require('../../utils/images');
  5. const app = getApp();
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. readActive:false,
  12. testImg: '../../imgs/testImg/fdkz.png',
  13. avatar: '../../imgs/testImg/1.jpg',
  14. icon_quanping:'../../imgs/quanping.png',
  15. animationData: {},
  16. active: false,
  17. isLike: false,
  18. imgServer,
  19. longitude: 113.324520,
  20. latitude: 23.099994,
  21. likeNum:526,
  22. tour_info_data:[{
  23. title:'地址:',
  24. txt:'北京市朝阳区崔各乡庄各庄村顺白马路马嘻路口100米路北'
  25. }, {
  26. title: '开放时间',
  27. txt: '周二到周日10:00-18:00 (每周一闭馆)'
  28. }, {
  29. title: '电话:',
  30. txt: '+86 10 8456654654'
  31. }],
  32. relatedActivitiesLength:0,
  33. },
  34. // to_search: function () {
  35. // wx.navigateTo({
  36. // url: `./cg_introduce/index?id=${this.data.pavilionId}`,
  37. // success: function (res) { },
  38. // fail: function (res) { },
  39. // complete: function (res) { },
  40. // })
  41. // },
  42. readMore: function () {
  43. let readActive= !this.data.readActive,
  44. relatedActivities = this.data.pavilionDetail.relatedActivities,
  45. pavilionDetail = this.data.pavilionDetail,
  46. fullRelatedActivities = this.data.relatedActivities;
  47. // if (readActive){
  48. // relatedActivities.length = relatedActivities.length > 3 ? 3 : relatedActivities.length;
  49. // pavilionDetail.relatedActivities = relatedActivities;
  50. // }
  51. // switch (readActive){
  52. // case false:
  53. // relatedActivities.length = relatedActivities.length > 3 ? 3 : relatedActivities.length;
  54. // pavilionDetail.relatedActivities = relatedActivities;
  55. // break;
  56. // case true:
  57. // relatedActivities.length = this.data.relatedActivitiesLength;
  58. // pavilionDetail.relatedActivities = fullRelatedActivities;
  59. // break;
  60. // }
  61. this.setData({
  62. readActive:true,
  63. pavilionDetail
  64. })
  65. },
  66. /**
  67. * 生命周期函数--监听页面加载
  68. */
  69. onLoad: function (options) {
  70. this.setData({
  71. pavilionId: options.id,
  72. serverName,
  73. defaultImg
  74. })
  75. this.getPavilionDetail();
  76. var animation = wx.createAnimation({
  77. duration: 400,
  78. timingFunction: 'ease-in-out',
  79. })
  80. this.animation = animation
  81. animation.scale(1.5, 1.5).step();
  82. animation.scale(1, 1).step();
  83. this.setData({
  84. animationData: animation
  85. })
  86. },
  87. addLike: function () {
  88. if (this.data.isLike) {
  89. this.setData({
  90. isLike: !this.data.isLike,
  91. likeNum: this.data.likeNum - 1
  92. })
  93. } else {
  94. this.setData({
  95. isLike: !this.data.isLike,
  96. likeNum: this.data.likeNum + 1
  97. })
  98. }
  99. },
  100. navigateToLocation: function () {
  101. let { latitude, longitude } = this.data;
  102. wx.openLocation({
  103. latitude: latitude,
  104. longitude: longitude,
  105. scale: 28,
  106. success: function (res) { },
  107. fail: function (res) { },
  108. complete: function (res) { }
  109. });
  110. },
  111. getPavilionDetail: function () {
  112. let pavilionId = this.data.pavilionId;
  113. request["getPavilionDetail"]({
  114. pavilionId: pavilionId
  115. },"", res => {
  116. let { data: pavilionDetail } = res.data;
  117. let { description, relatedActivities, openTime } = pavilionDetail;
  118. let lessRelatedActivities = [];
  119. relatedActivities.forEach((currentValue) => {
  120. if (currentValue.product) {
  121. currentValue.product.link = escape(currentValue.product.link);
  122. currentValue.product.imageUrl = escape(currentValue.product.imageUrl);
  123. }
  124. })
  125. this.setData({
  126. pavilionDetail,
  127. relatedActivitiesLength: pavilionDetail.relatedActivities.length,
  128. relatedActivities
  129. });
  130. WxParse.wxParse('description', 'html', description, this, 5);
  131. WxParse.wxParse('openTime', 'html', openTime, this, 5);
  132. console.log(pavilionDetail)
  133. console.log(description)
  134. })
  135. },
  136. clickCell: function () {
  137. console.log(this.data.active);
  138. this.setData({
  139. active: !this.data.active
  140. })
  141. },
  142. /**
  143. * 生命周期函数--监听页面初次渲染完成
  144. */
  145. onReady: function () {
  146. },
  147. /**
  148. * 生命周期函数--监听页面显示
  149. */
  150. onShow: function () {
  151. let { city, clickToSelect, collectedArr, collectedChange } = app.globalData;
  152. console.log(this.data.relatedActivities)
  153. let { relatedActivities } = this.data;
  154. // let { relatedActivities } = pavilionDetail
  155. if (collectedChange) {
  156. for (let i = 0; i < relatedActivities.length; i++) {
  157. for (let j = 0; j < collectedArr.length; j++) {
  158. if (collectedArr[j].collectedId == relatedActivities[i].id) {
  159. relatedActivities[i].hasCollect = collectedArr[j].status
  160. if (relatedActivities[i].hasCollect) {
  161. relatedActivities[i].collectionsCount += 1;
  162. }
  163. else {
  164. relatedActivities[i].collectionsCount -= 1;
  165. }
  166. if (relatedActivities[i].collectionsCount < 0) {
  167. relatedActivities[i].collectionsCount = 0
  168. }
  169. }
  170. }
  171. // console.log(collectedArr.status, collectedArr.collectedId)
  172. }
  173. this.setData({
  174. relatedActivities
  175. })
  176. }
  177. app.globalData.clickToSelect = false;
  178. // app.globalData.collectedChange = false;
  179. },
  180. /**
  181. * 生命周期函数--监听页面隐藏
  182. */
  183. onHide: function () {
  184. },
  185. /**
  186. * 生命周期函数--监听页面卸载
  187. */
  188. onUnload: function () {
  189. },
  190. /**
  191. * 页面相关事件处理函数--监听用户下拉动作
  192. */
  193. onPullDownRefresh: function () {
  194. },
  195. /**
  196. * 页面上拉触底事件的处理函数
  197. */
  198. onReachBottom: function () {
  199. },
  200. /**
  201. * 用户点击右上角分享
  202. */
  203. onShareAppMessage: function () {
  204. }
  205. })