messageList.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278
  1. const app = getApp()
  2. const util = require("../../../utils/util");
  3. const api = require('../../../api/api.js');
  4. const user = require('../../../utils/user.js');
  5. // const update = require('../../../api/update.js');
  6. import moment from 'moment'
  7. Page({
  8. data: {
  9. activeTab:1,
  10. read:[],//8,9,10 问题工单
  11. unread:[],
  12. // readFold:[],
  13. unReadFold:[],
  14. foldList:[],
  15. foldMsg:{
  16. },
  17. messageList:[
  18. {
  19. type:1,
  20. text:'物损工单产生,请及时和站长沟通哦,请勿私自联系雇主哦,联系了就罚款,不服再罚,罚完不服再罚~',
  21. },
  22. {
  23. type:2,
  24. text:'即将服务保洁2次新客,这是第N次服务,推荐客户复购4次/次/24次',
  25. }
  26. ],
  27. typeList: [
  28. ],
  29. type: '',
  30. date: moment(new Date()).format('YYYY-MM'),
  31. currentDate: new Date().getTime(),
  32. minDate: new Date('2022-01-01').getTime(),
  33. pickerShow:false,
  34. },
  35. /**
  36. * 生命周期函数--监听页面加载
  37. */
  38. onLoad: function (options) {
  39. this.selectComponent('#tabs').resize();
  40. this.getTypeList();
  41. },
  42. getTypeList(){
  43. util.request(api.getTypelist, {
  44. }, 'GET').then(res=> {
  45. if (res.errno === 0) {
  46. let list=res.data;
  47. let current=[];
  48. list.forEach(item=>{
  49. let obj={text:item.type,value:item.id};
  50. current.push(obj);
  51. });
  52. this.setData({
  53. typeList:current,
  54. type:''
  55. });
  56. }
  57. });
  58. },
  59. dropdownChange(e){
  60. let type=e.detail;
  61. this.setData({
  62. type:type
  63. });
  64. this.getNoticeList();
  65. },
  66. getNoticeList(){
  67. util.request(api.getNotice, {
  68. type:this.data.type,
  69. yearMonth:this.data.date
  70. }, 'GET').then(res=> {
  71. if (res.errno === 0) {
  72. this.setData({
  73. read:res.data.read,
  74. unRead:res.data.unRead,
  75. // readFold:res.data.readFold,
  76. unReadFold:res.data.unReadFold,
  77. foldList:this.data.activeTab==1?res.data.unReadFold:res.data.readFold,
  78. messageList:this.data.activeTab==1?res.data.unRead:res.data.read,
  79. });
  80. if(this.data.activeTab==1){
  81. this.setData({
  82. foldMsg:this.data.unReadFold.length>0?this.data.unReadFold[0]:{}
  83. });
  84. }else{
  85. // this.setData({
  86. // foldMsg:this.data.readFold.length>0?this.data.readFold[0]:{}
  87. // });
  88. }
  89. }
  90. });
  91. },
  92. readNotice(e){
  93. let id=e.currentTarget.dataset.id;
  94. util.request(api.readNotice, {id:id
  95. }, 'GET').then(res=> {
  96. if (res.errno === 0) {
  97. wx.showToast({
  98. title: '操作成功'
  99. });
  100. this.getNoticeList();
  101. }
  102. });
  103. },
  104. onTabChange(e) {
  105. this.setData({
  106. activeTab: e.detail.name,
  107. });
  108. if (this.data.activeTab == 1) {
  109. this.setData({
  110. messageList:this.data.unRead,foldList:this.data.unReadFold,
  111. foldMsg:this.data.unReadFold.length>0?this.data.unReadFold[0]:{}
  112. });
  113. }else{
  114. this.setData({
  115. messageList:this.data.read,
  116. // foldList:this.data.readFold,
  117. // foldMsg:this.data.readFold.length>0?this.data.readFold[0]:{}
  118. });
  119. }
  120. },
  121. dateSelect(){
  122. this.setData({
  123. pickerShow:true
  124. })
  125. },
  126. onCancel(){
  127. this.setData({
  128. pickerShow:false
  129. })
  130. },
  131. onConfirm(e){
  132. console.log(e);
  133. let date=moment(e.detail).format('YYYY-MM');
  134. this.setData({
  135. date:date,
  136. pickerShow:false
  137. });
  138. this.getNoticeList();
  139. },
  140. goFeedback(e){
  141. console.log(e);
  142. let feedback=e.currentTarget.dataset.feedback;
  143. let path=e.currentTarget.dataset.path;
  144. let id=e.currentTarget.dataset.id;
  145. if(feedback==1){
  146. // 跳转到回执页面
  147. // app.globalData.alertNoticeInfo=this.data.alertNoticeInfo;
  148. wx.navigateTo({
  149. url: '/pages/upgrade/msgReceipt/msgReceipt?id='+id
  150. });
  151. }else if(feedback!=1&&path==''){
  152. if(this.data.activeTab==1){
  153. // 调已读接口
  154. util.request(api.readNotice, {id:id
  155. }, 'GET').then(res=> {
  156. if (res.errno === 0) {
  157. wx.showToast({
  158. title: '操作成功',
  159. icon:'none'
  160. })
  161. this.getNoticeList();
  162. }
  163. });
  164. }else{
  165. }
  166. }else{
  167. if(this.data.activeTab==1){
  168. // 调已读接口
  169. util.request(api.readNotice, {id:id
  170. }, 'GET').then(res=> {
  171. if (res.errno === 0) {
  172. // 跳转其他页面
  173. wx.navigateTo({
  174. url: path
  175. });
  176. }
  177. });
  178. }else{
  179. // 跳转其他页面
  180. wx.navigateTo({
  181. url: path
  182. });
  183. }
  184. }
  185. },
  186. onReachBottom() {
  187. // if (this.data.totalPages > this.data.page) {
  188. // this.setData({
  189. // page: this.data.page + 1
  190. // });
  191. // this.getGoodsList();
  192. // } else {
  193. // wx.showToast({
  194. // title: '没有更多商品了',
  195. // icon: 'none',
  196. // duration: 2000
  197. // });
  198. // return false;
  199. // }
  200. },
  201. /**
  202. * 生命周期函数--监听页面初次渲染完成
  203. */
  204. onReady: function () {
  205. },
  206. /**
  207. * 生命周期函数--监听页面显示
  208. */
  209. onShow: function () {
  210. this.getNoticeList();
  211. },
  212. onHide: function () {
  213. },
  214. onUnload: function () {
  215. },
  216. /**
  217. * 页面相关事件处理函数--监听用户下拉动作
  218. */
  219. onPullDownRefresh: function () {
  220. },
  221. /**
  222. * 页面上拉触底事件的处理函数
  223. */
  224. onReachBottom: function () {
  225. },
  226. /**
  227. * 用户点击右上角分享
  228. */
  229. onShareAppMessage: function () {
  230. },
  231. })