work-order.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. // pagesPublic/pages/work-order/work-order.js
  2. var dateTimePicker = require('../../../utils/dateTimePicker');
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. isUser: true,
  9. currentIndex: 0,
  10. date: '2023-10-01',
  11. time: '12:00',
  12. dateTimeArray: null,
  13. dateTime: null,
  14. startYear: 2000,
  15. endYear: 2250,
  16. typeList: ['报修类型一', '报修类型二', '报修类型三'],
  17. list: [{ type: '维修类型一', address: '食堂二楼楼梯地砖', time: '2022-03-15 13:45' }, { type: '维修类型一', address: '食堂二楼楼梯地砖', time: '2022-03-15 13:45' }]
  18. },
  19. /**
  20. * 生命周期函数--监听页面加载
  21. */
  22. onLoad(options) {
  23. // 获取完整的年月日 时分秒,以及默认显示的数组
  24. var obj = dateTimePicker.dateTimePicker(this.data.startYear, this.data.endYear);
  25. // 精确到分的处理,将数组的秒去掉
  26. // var lastArray = obj.dateTimeArray.pop();
  27. // var lastTime = obj.dateTime.pop();
  28. this.setData({
  29. dateTime: obj.dateTime,
  30. dateTimeArray: obj.dateTimeArray
  31. });
  32. // 查询所有报修类型
  33. },
  34. /**
  35. * 生命周期函数--监听页面初次渲染完成
  36. */
  37. onReady() {
  38. },
  39. /**
  40. * 生命周期函数--监听页面显示
  41. */
  42. onShow() {
  43. },
  44. /**
  45. * 生命周期函数--监听页面隐藏
  46. */
  47. onHide() {
  48. },
  49. /**
  50. * 生命周期函数--监听页面卸载
  51. */
  52. onUnload() {
  53. },
  54. /**
  55. * 页面相关事件处理函数--监听用户下拉动作
  56. */
  57. onPullDownRefresh() {
  58. },
  59. /**
  60. * 页面上拉触底事件的处理函数
  61. */
  62. onReachBottom() {
  63. },
  64. /**
  65. * 点击切换标题
  66. * @param {*} e
  67. */
  68. titleClick(e) {
  69. this.setData({
  70. currentIndex: e.currentTarget.dataset.idx
  71. });
  72. },
  73. /**
  74. * 切换swiper-item触发bindchange事件
  75. * @param {*} e
  76. */
  77. pagechange: function (e) {
  78. console.info(e)
  79. // 通过touch判断,改变tab的下标值
  80. if ("touch" === e.detail.source) {
  81. // let currentPageIndex = this.data.currentIndex;
  82. // currentPageIndex = (currentPageIndex + 1) % 2;
  83. // 拿到当前索引并动态改变
  84. this.setData({
  85. currentIndex: e.detail.current
  86. });
  87. }
  88. },
  89. /**
  90. * 报修类型选择
  91. * @param {*} e
  92. */
  93. typePickerChange(e) {
  94. console.log('picker发送选择改变,携带值为', e.detail.value)
  95. this.setData({
  96. index: e.detail.value
  97. });
  98. },
  99. /**
  100. * 提交工单
  101. * @param {*} e
  102. */
  103. submitWorkOrder(e) {
  104. console.info(e);
  105. if (!e.detail.value.type) {
  106. wx.showToast({
  107. title: '请选择报修类型',
  108. icon: 'error'
  109. });
  110. return;
  111. }
  112. if (!e.detail.value.address) {
  113. wx.showToast({
  114. title: '请输入地址',
  115. icon: 'error'
  116. });
  117. return;
  118. }
  119. if (!e.detail.value.phone) {
  120. wx.showToast({
  121. title: '请输入联系电话',
  122. icon: 'error'
  123. });
  124. return;
  125. }
  126. if (!e.detail.value.arriveTime) {
  127. wx.showToast({
  128. title: '请选择上门时间',
  129. icon: 'error'
  130. });
  131. return;
  132. }
  133. },
  134. /**
  135. * 上传报修图片
  136. */
  137. uploadImage() {
  138. wx.chooseMedia({
  139. success(res) {
  140. console.info(res);
  141. }
  142. });
  143. },
  144. /**
  145. * 查看工单详情
  146. * @param {*} e
  147. */
  148. toDetail(e) {
  149. wx.navigateTo({
  150. url: '../work-order-detail/work-order-detail',
  151. });
  152. },
  153. toRepairDetail() {
  154. wx.navigateTo({
  155. url: '../work-order-detail/work-order-detail',
  156. });
  157. }
  158. })