worksheetinfo.js 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. // pages/worksheetinfo/worksheetinfo.js
  2. let Util = require("../../utils/util");
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. images: [],
  9. signs: [],
  10. worksheetinfo: {},
  11. chargstations: [],
  12. chargstationsindex: 0,
  13. pcitures: [],
  14. workstatus: [{
  15. value: 1,
  16. text: '新建'
  17. }, {
  18. value: 2,
  19. text: '指派人员'
  20. }, {
  21. value: 3,
  22. text: '指派确认'
  23. }, {
  24. value: 4,
  25. text: '施工前安全准备'
  26. }, {
  27. value: 5,
  28. text: '进行中'
  29. }
  30. , {
  31. value: 6,
  32. text: '完成工作内容'
  33. }
  34. , {
  35. value: 7,
  36. text: '完成工单'
  37. }],
  38. workstatusindex: 0,
  39. workstatusFinished: false,
  40. workBigclass: [{
  41. value: 1,
  42. text: '售后服务'
  43. }, {
  44. value: 2,
  45. text: '工程实施'
  46. }],
  47. workBigclassindex: 0,
  48. wokSmallclass:[{
  49. value: 1,
  50. text: '日常巡站'
  51. }, {
  52. value: 2,
  53. text: '紧急维修'
  54. }, {
  55. value: 3,
  56. text: '施工准备'
  57. }, {
  58. value: 4,
  59. text: '工程进程'
  60. }, {
  61. value: 5,
  62. text: '施工过程'
  63. }, {
  64. value: 6,
  65. text: '工程竣工'
  66. }, {
  67. value: 7,
  68. text: '工程验收'
  69. }],
  70. wokSmallclassIndex: 1,
  71. breakdownType: [{
  72. value: 1,
  73. text: '车辆导致'
  74. }, {
  75. value: 2,
  76. text: '桩体导致'
  77. }, {
  78. value: 3,
  79. text: '人为导致'
  80. }, {
  81. value: 4,
  82. text: '基础设施问题'
  83. }, {
  84. value: 5,
  85. text: '其他'
  86. }],
  87. breakdownTypeindex: 1,
  88. exceptdate: null,
  89. excepttime: '00:00',
  90. finishdate: null,
  91. finishtime: '00:00',
  92. exceptparams:{
  93. placeholder: '请选择时间',
  94. startDateTime: '2020-01-01 00:00',
  95. endDateTime: '2040-01-01 00:00',
  96. pText: Util.formatTimePicker(new Date()) //'2022-04-30 00:00'
  97. },
  98. finishparams:{
  99. placeholder: '请选择时间',
  100. startDateTime: '2020-01-01 00:00',
  101. endDateTime: '2040-01-01 00:00',
  102. pText: Util.formatTimePicker(new Date()) //'2022-04-30 00:00'
  103. },
  104. workEndtimeParams:{
  105. placeholder: '请选择时间',
  106. startDateTime: '2020-01-01 00:00',
  107. endDateTime: '2040-01-01 00:00',
  108. // pText: Util.formatTimePicker(new Date()) //'2022-04-30 00:00'
  109. pText: '0000-00-00 00:00' //'2022-04-30 00:00'
  110. },
  111. accendantids: [],
  112. userNames:[],
  113. chargStationName:'',
  114. chargStationNameClearFlag: false
  115. },
  116. chargStationNameSelect:function(e){
  117. let url = `/pages/worksheetinfo/findstation`;
  118. wx.navigateTo({
  119. url
  120. });
  121. },
  122. bindChargstationsChange: function(e) {
  123. if (this.data.chargstationsindex != e.detail.value) {
  124. console.log('picker发送选择改变,携带值为', e.detail.value)
  125. let chargstationid = this.data.chargstations[e.detail.value].id;
  126. let worksheetinfo = this.data.worksheetinfo;
  127. worksheetinfo.accendant = null;
  128. worksheetinfo.chargStationId = chargstationid;
  129. this.setData({
  130. chargstationsindex: e.detail.value,
  131. worksheetinfo
  132. })
  133. }
  134. },
  135. bindWorkstatusChange: function(e) {
  136. //console.log('picker发送选择改变,携带值为', e.detail.value)
  137. let workStatus = this.data.workstatus[e.detail.value].value;
  138. let worksheetinfo = this.data.worksheetinfo;
  139. worksheetinfo.workStatus = workStatus;
  140. this.setData({
  141. workstatusindex: e.detail.value,
  142. worksheetinfo
  143. });
  144. },
  145. bindWorkBigclassChange: function(e) {
  146. //console.log('picker发送选择改变,携带值为', e.detail.value)
  147. let workBigclass = this.data.workBigclass[e.detail.value].value;
  148. let worksheetinfo = this.data.worksheetinfo;
  149. worksheetinfo.workBigclass = workBigclass;
  150. this.setData({
  151. workBigclassindex: e.detail.value,
  152. worksheetinfo
  153. });
  154. },
  155. bindwokSmallclassChange: function(e) {
  156. //console.log('picker发送选择改变,携带值为', e.detail.value)
  157. let wokSmallclass = this.data.wokSmallclass[e.detail.value].value;
  158. let worksheetinfo = this.data.worksheetinfo;
  159. worksheetinfo.wokSmallclass = wokSmallclass;
  160. this.setData({
  161. wokSmallclassindex: e.detail.value,
  162. worksheetinfo
  163. });
  164. },
  165. bindBreakdownType(e) {
  166. //console.log('picker发送选择改变,携带值为', e.detail.value)
  167. let breakdownType = this.data.breakdownType[e.detail.value].value;
  168. let worksheetinfo = this.data.worksheetinfo;
  169. worksheetinfo.breakdownType = breakdownType;
  170. this.setData({
  171. breakdownTypeindex: e.detail.value,
  172. worksheetinfo
  173. });
  174. },
  175. bindAccendantChange: function(e) {
  176. let chargstationid = this.data.worksheetinfo.chargStationId==null?0:this.data.worksheetinfo.chargStationId;
  177. let accendant = this.data.worksheetinfo.accendant;
  178. let url = `/pages/worksheetinfo/accendant?chargstationid=${chargstationid}&accendant=${accendant}`;
  179. wx.navigateTo({
  180. url
  181. });
  182. },
  183. bindExceptdateChange(e) {
  184. this.setData({
  185. exceptdate: e.detail.value
  186. })
  187. },
  188. bindExcepttimeChange(e) {
  189. this.setData({
  190. excepttime: e.detail.value
  191. })
  192. },
  193. bindFinishdateChange(e) {
  194. this.setData({
  195. finishdate: e.detail.value
  196. })
  197. },
  198. bindFinishtimeChange(e) {
  199. this.setData({
  200. finishtime: e.detail.value
  201. })
  202. },
  203. bindMainLocationInput(e) {
  204. let mainLocation = e.detail.value;
  205. let worksheetinfo = this.data.worksheetinfo;
  206. worksheetinfo.mainLocation = mainLocation;
  207. this.setData({
  208. worksheetinfo
  209. });
  210. },
  211. bindContentInput(e) {
  212. let content = e.detail.value;
  213. let worksheetinfo = this.data.worksheetinfo;
  214. worksheetinfo.content = content;
  215. this.setData({
  216. worksheetinfo
  217. });
  218. },
  219. bindWorkSheetSubmit(e) {
  220. let worksheetinfo = this.data.worksheetinfo;
  221. worksheetinfo.operatorName = this.data.userNames.length>0?this.data.userNames[0]:"";
  222. worksheetinfo.pams = this.data.accendantids;
  223. worksheetinfo.accendant = null;
  224. console.log(this.data.workstatusindex);
  225. console.log("工单状态");
  226. // if (this.data.exceptdate && this.data.excepttime) {
  227. // worksheetinfo.exceptTime = this.data.exceptdate + " " + this.data.excepttime + ":00";
  228. // }
  229. worksheetinfo.exceptTime = this.data.exceptparams.pText + ":00";
  230. // if (this.data.finishdate && this.data.finishtime){
  231. // worksheetinfo.finishTime = this.data.finishdate + " " + this.data.finishtime + ":00";
  232. // }
  233. worksheetinfo.finishTime = this.data.finishparams.pText=='0000-00-00 00:00'?null:this.data.finishparams.pText + ":00";
  234. worksheetinfo.workEndtime = this.data.workEndtimeParams.pText == '0000-00-00 00:00'? null : this.data.workEndtimeParams.pText + ":00";
  235. let images = this.data.images;
  236. var imgString = [];
  237. var pciString = [];
  238. this.data.pcitures.forEach((item, index) =>{
  239. pciString.push(item.src);
  240. });
  241. if(worksheetinfo.mainLocation == '' || worksheetinfo.mainLocation == undefined){
  242. wx.showModal({
  243. showCancel: false,
  244. content: '地址不能为空,请填写!',
  245. confirmColor:'#00AADD',
  246. });
  247. return;
  248. }
  249. if(worksheetinfo.pams.length == 0){
  250. wx.showModal({
  251. showCancel: false,
  252. content: '运维人员不能为空,请填写!',
  253. confirmColor:'#00AADD',
  254. });
  255. return;
  256. }
  257. if(worksheetinfo.content == '' || worksheetinfo.content == undefined){
  258. wx.showModal({
  259. showCancel: false,
  260. content: '工作内容不能为空,请填写!',
  261. confirmColor:'#00AADD',
  262. });
  263. return;
  264. }
  265. if( this.data.finishparams.pText=='0000-00-00 00:00'&& this.data.workstatusindex == 6){
  266. wx.showModal({
  267. showCancel: false,
  268. content: '请填写实际完成时间!',
  269. confirmColor:'#00AADD',
  270. });
  271. return;
  272. }
  273. let signs = this.data.signs;
  274. console.log(signs.length == 0);
  275. var signString = [];
  276. if (signs.length == 0) {
  277. //2021-1-1撤销校验
  278. // wx.showToast({
  279. // title: '请设置签名',
  280. // icon: 'loading',
  281. // duration: 2000,
  282. // mask: true,
  283. // success: function() {}
  284. // });
  285. // return;
  286. } else {
  287. console.info('上传签名')
  288. signs.forEach((item, index) => {
  289. wx.uploadFile({
  290. url: getApp().globalData.postHeadAgreement + '/restapi/wechat/editWorkSheetImg',
  291. filePath: signs[index],
  292. name: 'imageFileName',
  293. success: function(res) {
  294. let result = JSON.parse(res.data);
  295. if (result.code == 500) {
  296. wx.showModal({
  297. showCancel: false,
  298. content: result.msg,
  299. confirmColor:'#00AADD',
  300. });
  301. } else {
  302. signString.push(result.msg);
  303. console.log(signString);
  304. }
  305. }
  306. });
  307. });
  308. }
  309. var uploadSignOverFlag = setInterval(function() {
  310. if (signString.length == signs.length) {
  311. clearInterval(uploadSignOverFlag);
  312. if (images.length == 0) {
  313. if (worksheetinfo.pciture) {
  314. console.log(worksheetinfo.pciture);
  315. worksheetinfo.pciture = (pciString.concat(imgString).concat(signString)).join(",");
  316. //worksheetinfo.pciture = ((worksheetinfo.pciture.split(",")).concat(signString)).join(",");
  317. console.log(worksheetinfo.pciture);
  318. }
  319. wx.request({
  320. url: getApp().globalData.postHeadAgreement + '/restapi/wechat/editWorkSheet',
  321. data: worksheetinfo,
  322. method: 'POST',
  323. success(res) {
  324. //console.log(res);
  325. if (res.data.code == 500) {
  326. wx.showModal({
  327. showCancel: false,
  328. content: res.data.msg,
  329. confirmColor:'#00AADD',
  330. });
  331. } else {
  332. wx.navigateBack();
  333. }
  334. }
  335. });
  336. } else {
  337. images.forEach((item, index) => {
  338. wx.uploadFile({
  339. url: getApp().globalData.postHeadAgreement + '/restapi/wechat/editWorkSheetImg',
  340. filePath: images[index],
  341. name: 'imageFileName',
  342. success: function(res) {
  343. let result = JSON.parse(res.data);
  344. if (result.code == 500) {
  345. wx.showModal({
  346. showCancel: false,
  347. content: result.msg,
  348. confirmColor:'#00AADD',
  349. });
  350. } else {
  351. imgString.push(result.msg);
  352. console.log(imgString);
  353. if (index == (images.length - 1)) {
  354. var uploadImgOverFlag = setInterval(function() {
  355. if (imgString.length == images.length) {
  356. clearInterval(uploadImgOverFlag);
  357. //worksheetinfo.pciture = ((worksheetinfo.pciture.split(",")).concat(signString)).join(",");
  358. worksheetinfo.pciture = (pciString.concat(imgString).concat(signString)).join(",");
  359. //var images = this.data.images.concat(res.tempFilePaths);
  360. wx.request({
  361. url: getApp().globalData.postHeadAgreement + '/restapi/wechat/editWorkSheet',
  362. data: worksheetinfo,
  363. method: 'POST',
  364. success(res) {
  365. //console.log(res);
  366. if (res.data.code == 500) {
  367. wx.showModal({
  368. showCancel: false,
  369. content: res.data.msg,
  370. confirmColor:'#00AADD',
  371. });
  372. } else {
  373. wx.navigateBack();
  374. }
  375. }
  376. });
  377. }
  378. }, 100);
  379. }
  380. }
  381. },
  382. fail: function(data) {
  383. console.log(data);
  384. }
  385. });
  386. });
  387. }
  388. }
  389. }, 100);
  390. },
  391. openImage(e) {
  392. //var that = this;
  393. var imgCount = (9 - this.data.pcitures.length) < 0 ? 0 : 9 - this.data.pcitures.length;
  394. console.log(imgCount);
  395. wx.chooseImage({
  396. count: 9 - (this.data.pcitures.length + this.data.images.length),
  397. //sizeType: ['original', 'compressed'], //可选择原图或压缩后的图片
  398. //sourceType: ['album', 'camera'], //可选择性开放访问相册、相机
  399. success: res => {
  400. //console.log(res);
  401. var images = this.data.images.concat(res.tempFilePaths);
  402. // 限制最多只能留下5张照片
  403. images = images.length <= imgCount ? images : images.slice(0, imgCount);
  404. if (images.length >= imgCount || imgCount<= 0){
  405. wx.showToast({
  406. title: '最多9张图片',
  407. icon:'none'
  408. });
  409. }
  410. this.setData({
  411. //pcitures: [],
  412. images
  413. });
  414. }
  415. });
  416. },
  417. removeImage(e) {
  418. //console.log(e);
  419. //console.log(this.data.images);
  420. let idx = e.currentTarget.dataset.idx;
  421. var images = this.data.images;
  422. images.splice(idx, 1);
  423. this.setData({
  424. images
  425. });
  426. },
  427. removePciture(e) {
  428. //console.log(e);
  429. //console.log(this.data.images);
  430. let idx = e.currentTarget.dataset.idx;
  431. var pcitures = this.data.pcitures;
  432. pcitures.splice(idx, 1);
  433. this.setData({
  434. pcitures
  435. });
  436. },
  437. removeSign(e) {
  438. //console.log(e);
  439. //console.log(this.data.images);
  440. let idx = e.currentTarget.dataset.idx;
  441. var signs = this.data.signs;
  442. signs.splice(idx, 1);
  443. this.setData({
  444. signs
  445. });
  446. },
  447. handlePcituresPreview(e) {
  448. console.info("ddddddddddd")
  449. const idx = e.target.dataset.idx
  450. const pcitures = this.data.pcitures.map(it=>it.url)
  451. console.info(this.data.pcitures)
  452. wx.previewImage({
  453. current: pcitures[idx], //当前预览的图片
  454. urls: pcitures, //所有要预览的图片
  455. })
  456. },
  457. handleImagePreview(e) {
  458. const idx = e.target.dataset.idx
  459. const images = this.data.images
  460. console.info(this.data.images)
  461. wx.previewImage({
  462. current: images[idx], //当前预览的图片
  463. urls: images, //所有要预览的图片
  464. })
  465. },
  466. handleSignPreview(e) {
  467. const idx = e.target.dataset.idx
  468. const signs = this.data.signs
  469. //console.log(idx);
  470. //console.log(signs);
  471. //console.log(signs[idx]);
  472. wx.previewImage({
  473. current: signs[idx], //当前预览的图片
  474. urls: signs, //所有要预览的图片
  475. })
  476. },
  477. clear_chargStationName(e){
  478. let worksheetinfo = this.data.worksheetinfo;
  479. worksheetinfo.chargStationId = null;
  480. worksheetinfo.pams = [];
  481. worksheetinfo.accendant = '';
  482. worksheetinfo.mainLocation = '';
  483. this.setData({
  484. worksheetinfo,
  485. chargStationNameClearFlag: true
  486. });
  487. },
  488. bindworkEndtimeParamsChange(e){
  489. let workEndtimeParams = this.data.workEndtimeParams;
  490. workEndtimeParams.pText = e.detail
  491. this.setData({
  492. workEndtimeParams:workEndtimeParams
  493. })
  494. console.info("workEndtimeParams " + workEndtimeParams.pText)
  495. },
  496. bindFinishparamsChange(e){
  497. let finishparams = this.data.finishparams;
  498. finishparams.pText = e.detail
  499. this.setData({
  500. finishparams:finishparams
  501. })
  502. console.info("finishparams " + finishparams.pText)
  503. },
  504. bindExceptparamsChange(e){
  505. let exceptparams = this.data.exceptparams;
  506. exceptparams.pText = e.detail
  507. this.setData({
  508. exceptparams:exceptparams
  509. })
  510. console.info("exceptparams " + exceptparams.pText)
  511. },
  512. /**
  513. * 生命周期函数--监听页面加载
  514. */
  515. onLoad: function(options) {
  516. //console.log(options);
  517. let {
  518. worksheet
  519. } = options;
  520. //console.log(worksheet);
  521. let worksheetinfo = JSON.parse(worksheet);
  522. //worksheetinfo.breakdownType = 2;
  523. this.setData({
  524. worksheetinfo
  525. });
  526. this.data.workstatus.forEach((item, index) => {
  527. if (item.value == worksheetinfo.workStatus) {
  528. this.setData({
  529. workstatusindex: index
  530. });
  531. }
  532. });
  533. this.data.workBigclass.forEach((item, index) => {
  534. if (item.value == worksheetinfo.workBigclass) {
  535. this.setData({
  536. workBigclassindex: index
  537. });
  538. }
  539. });
  540. this.data.wokSmallclass.forEach((item, index) => {
  541. if (item.value == worksheetinfo.wokSmallclass) {
  542. this.setData({
  543. wokSmallclassindex: index
  544. });
  545. }
  546. });
  547. if (worksheetinfo.exceptTime) {
  548. // let datetime = worksheetinfo.exceptTime.split(" ");
  549. // this.setData({
  550. // exceptdate: datetime[0],
  551. // excepttime: datetime[1].substr(0, 5)
  552. // });
  553. let exceptparams = this.data.exceptparams;
  554. exceptparams['pText'] = worksheetinfo.exceptTime.substr(0,16)
  555. this.setData({
  556. exceptparams: exceptparams
  557. });
  558. }
  559. if (worksheetinfo.workEndtime) {
  560. let workEndtimeParams = this.data.workEndtimeParams;
  561. workEndtimeParams['pText'] = worksheetinfo.workEndtime.substr(0,16)
  562. this.setData({
  563. workEndtimeParams: workEndtimeParams
  564. });
  565. }else{
  566. let workEndtimeParams = this.data.workEndtimeParams;
  567. workEndtimeParams['pText'] = '0000-00-00 00:00'
  568. this.setData({
  569. workEndtimeParams: workEndtimeParams
  570. });
  571. }
  572. if (worksheetinfo.finishTime) {
  573. // let datetime = worksheetinfo.finishTime.split(" ");
  574. // this.setData({
  575. // finishdate: datetime[0],
  576. // finishtime: datetime[1].substr(0, 5)
  577. // });
  578. let finishparams = this.data.finishparams;
  579. finishparams['pText'] = worksheetinfo.finishTime.substr(0,16)
  580. this.setData({
  581. finishparams: finishparams
  582. });
  583. }else{
  584. let finishparams = this.data.finishparams;
  585. finishparams['pText'] = '0000-00-00 00:00'
  586. this.setData({
  587. finishparams: finishparams
  588. });
  589. }
  590. this.data.breakdownType.forEach((item, index) => {
  591. if (item.value == worksheetinfo.breakdownType) {
  592. this.setData({
  593. breakdownTypeindex: index
  594. });
  595. }
  596. });
  597. if (worksheetinfo.pciture) {
  598. let pcitures_src = worksheetinfo.pciture.split(",");
  599. var pcitures = [];
  600. pcitures_src.forEach((item, index) => {
  601. // pcitures[index] = { src: item, flag: item.indexOf('https://cdgl.pjnes.com/profile/station/') != -1};
  602. let url = getApp().globalData.postHeadAgreement
  603. url = url.replace("cloud/chargapi","") + "web/profile/station/" + item
  604. console.info(url)
  605. pcitures[index] = { url:url, src: item, flag: item.indexOf(getApp().globalData.postHeadAgreement) != -1};
  606. });
  607. this.setData({
  608. pcitures
  609. });
  610. }
  611. //console.log(worksheetinfo);
  612. if(worksheetinfo.workStatus==7){
  613. this.setData({
  614. workstatusFinished: true
  615. })
  616. }
  617. let userInfo = wx.getStorageSync('userInfo');
  618. let isLogin = wx.getStorageSync('isLogin');
  619. let that = this;
  620. //console.log(12345);
  621. if (userInfo && isLogin) {
  622. that.setData({
  623. chargStationName:worksheetinfo.chargStationName,
  624. worksheetinfo
  625. });
  626. if(!worksheetinfo.chargStationName){
  627. that.setData({
  628. chargStationNameClearFlag:true,
  629. });
  630. }
  631. }
  632. wx.request({
  633. url: getApp().globalData.postHeadAgreement + '/restapi/wechat/getuserworksheet',
  634. data: worksheetinfo.id,
  635. method: 'POST',
  636. success(res) {
  637. //console.log(res);
  638. let accendantids = [];
  639. let userNames = [];
  640. res.data.forEach((item, index) => {
  641. accendantids.push(item.userId);
  642. userNames.push(item.userName);
  643. });
  644. that.setData({
  645. accendantids,
  646. userNames
  647. });
  648. }
  649. });
  650. },
  651. openSign(e) {
  652. let url = `/pages/sign/sign`;
  653. wx.navigateTo({
  654. url
  655. });
  656. },
  657. /**
  658. * 生命周期函数--监听页面初次渲染完成
  659. */
  660. onReady: function() {
  661. },
  662. /**
  663. * 生命周期函数--监听页面显示
  664. */
  665. onShow: function() {
  666. },
  667. /**
  668. * 生命周期函数--监听页面隐藏
  669. */
  670. onHide: function() {
  671. },
  672. /**
  673. * 生命周期函数--监听页面卸载
  674. */
  675. onUnload: function() {
  676. },
  677. /**
  678. * 页面相关事件处理函数--监听用户下拉动作
  679. */
  680. onPullDownRefresh: function() {
  681. },
  682. /**
  683. * 页面上拉触底事件的处理函数
  684. */
  685. onReachBottom: function() {
  686. },
  687. /**
  688. * 用户点击右上角分享
  689. */
  690. onShareAppMessage: function() {
  691. }
  692. })