index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. import {
  2. ApiModel
  3. } from "../../utils/api";
  4. const _Http = new ApiModel();
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. iosX: false, //判断是否具有安全距离
  11. optionItem: 0, //底部选中
  12. relationList: [], //沟通列表
  13. discussionGroupList: [], //讨论组列表
  14. relationListCopy: [], //备份
  15. discussionGroupListCopy: [], //备份
  16. searchText: '', //搜索文本
  17. },
  18. /**
  19. * 生命周期函数--监听页面加载
  20. */
  21. onLoad: function (options) {
  22. //是否为带有底部安全距离机型
  23. let iosX = (getApp().globalData.safeAreaBottom == 0) ? false : true;
  24. this.setData({
  25. iosX
  26. })
  27. },
  28. /* 列表搜索 */
  29. listSearch(e) {
  30. const value = e.detail.value.trim();
  31. if (value == this.data.searchText) return;
  32. this.setData({
  33. searchText: value
  34. })
  35. if (value == '') {
  36. this.setData({
  37. relationList: this.data.relationListCopy,
  38. discussionGroup: this.data.discussionGroupListCopy
  39. })
  40. } else {
  41. let relationList = this.data.relationListCopy,
  42. discussionGroup = this.data.discussionGroupListCopy,
  43. newRelationList = [],
  44. newDiscussionGroup = [];
  45. for (let i = 0; i < relationList.length; i++) {
  46. let data = relationList[i];
  47. data.users = ''
  48. if (JSON.stringify(data).includes(value)) newRelationList.push(relationList[i])
  49. };
  50. for (let i = 0; i < discussionGroup.length; i++) {
  51. let data = discussionGroup[i];
  52. data.users = ''
  53. if (JSON.stringify(data).includes(value)) newDiscussionGroup.push(discussionGroup[i])
  54. }
  55. this.setData({
  56. relationList: newRelationList,
  57. discussionGroupList: newDiscussionGroup
  58. })
  59. }
  60. },
  61. /* 创建对话 */
  62. createDialogue() {
  63. wx.navigateTo({
  64. url: './create',
  65. })
  66. },
  67. /* 进入对话 */
  68. enterTheDialogue(e) {
  69. const {
  70. item
  71. } = e.currentTarget.dataset;
  72. wx.navigateTo({
  73. url: "./dialogbox?id=" + item.timdialogid
  74. })
  75. },
  76. /* 获取聊天列表 */
  77. queryImdialogList(condition = "") {
  78. _Http.basic({
  79. "accesstoken": wx.getStorageSync('userData').token,
  80. "classname": "system.im.imdialog.imdialog",
  81. "method": "query_imdialogList",
  82. "content": {
  83. "getdatafromdbanyway": true,
  84. "where": {
  85. "condition": condition,
  86. "fimdialogtype2": "供需"
  87. }
  88. }
  89. }).then(res => {
  90. console.log("对话列表", res)
  91. if (res.msg != '成功') return wx.showToast({
  92. title: res.data,
  93. icon: "none"
  94. });
  95. for (let i = 0; i < res.data.length; i++) {
  96. let time = (res.data[i].latestnews.length == 0) ? res.data[i].fjoindate.split(" ") : res.data[i].latestnews[0].message.fdatetime.split(" "),
  97. date = new Date(),
  98. getMonth = (date.getMonth() + 1),
  99. Month = (getMonth < 10) ? '0' + getMonth : getMonth,
  100. now = date.getFullYear() + '-' + Month + '-' + date.getDate();
  101. if (now == time[0]) {
  102. let a1 = time[1].split(".");
  103. res.data[i].fjoindate = a1[0];
  104. } else {
  105. res.data[i].fjoindate = time[0];
  106. }
  107. }
  108. let relationList = [],
  109. discussionGroupList = [];
  110. for (let i = 0; i < res.data.length; i++) {
  111. if (res.data[i].fimdialogtype == '话题') {
  112. discussionGroupList.push(res.data[i])
  113. } else {
  114. relationList.push(res.data[i])
  115. }
  116. }
  117. this.setData({
  118. relationList,
  119. relationListCopy: relationList,
  120. discussionGroupList,
  121. discussionGroupListCopy: discussionGroupList
  122. })
  123. })
  124. },
  125. /* 底部选中 */
  126. footerOption(e) {
  127. const {
  128. index
  129. } = e.currentTarget.dataset;
  130. this.setData({
  131. optionItem: index
  132. })
  133. },
  134. /**
  135. * 生命周期函数--监听页面初次渲染完成
  136. */
  137. onReady: function () {
  138. },
  139. /**
  140. * 生命周期函数--监听页面显示
  141. */
  142. onShow: function () {
  143. this.queryImdialogList()
  144. },
  145. /**
  146. * 生命周期函数--监听页面隐藏
  147. */
  148. onHide: function () {
  149. },
  150. /**
  151. * 生命周期函数--监听页面卸载
  152. */
  153. onUnload: function () {
  154. },
  155. /**
  156. * 页面相关事件处理函数--监听用户下拉动作
  157. */
  158. onPullDownRefresh: function () {
  159. },
  160. /**
  161. * 页面上拉触底事件的处理函数
  162. */
  163. onReachBottom: function () {
  164. },
  165. /**
  166. * 用户点击右上角分享
  167. */
  168. onShareAppMessage: function () {
  169. }
  170. })