index.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. // pages/reward/index.js
  2. import {
  3. getRewardList
  4. } from '../../services/index.js'
  5. import {
  6. imgServerUrl} from '../../config/config.js'
  7. Page({
  8. /**
  9. * 页面的初始数据
  10. */
  11. data: {
  12. imgServerUrl: imgServerUrl,
  13. list: [],
  14. pageNo: 1, //当前分页
  15. isScroll: true, //是否可以滚动
  16. showNoMore: "没有更多信息...", //显示已无更多
  17. cityCode: '320200',
  18. cityName: '无锡',
  19. selectId: -1, //选中筛选的条件
  20. totalSalary: '', //薪资待遇排序(1:正序;2:倒序)
  21. sort: '', //距离排序(1:正序;2:倒序)
  22. longitude: '', //经度
  23. latitude: '', //纬度
  24. canIUse: wx.canIUse('button.open-type.getUserInfo'),
  25. countryCode: ''
  26. },
  27. /**
  28. * 生命周期函数--监听页面加载
  29. */
  30. onLoad: function () {
  31. this.setData({
  32. pageNo: 1, //当前分页
  33. isScroll: true, //是否可以滚动
  34. list: [],
  35. selectId: -1, //选中筛选的条件
  36. totalSalary: '', //薪资待遇排序(1:正序;2:倒序)
  37. sort: '', //距离排序(1:正序;2:倒序)
  38. longitude: "",
  39. latitude: ""
  40. }, _ => {
  41. this.start();
  42. })
  43. },
  44. /**
  45. * 生命周期函数--监听页面初次渲染完成
  46. */
  47. onReady: function () {
  48. },
  49. start() {
  50. let cityName = wx.getStorageSync('city') || '无锡';
  51. let cityCode = wx.getStorageSync('cityCode') || '320200';
  52. let areaList = wx.getStorageSync('areaList') || [];
  53. this.setData({
  54. cityName: cityName,
  55. cityCode: cityCode,
  56. areaList,
  57. }, _ => {
  58. this.rewardList();
  59. })
  60. },
  61. //获取入职奖励列表数据
  62. rewardList() {
  63. if (!this.data.isScroll) {
  64. return false
  65. }
  66. let paramsObj = {
  67. longitude: this.data.longitude,
  68. latitude: this.data.latitude,
  69. sort: this.data.sort,
  70. totalSalary: this.data.totalSalary,
  71. cityCode: this.data.cityCode,
  72. pageNo: this.data.pageNo,
  73. countryCode: this.data.countryCode,
  74. }
  75. Object.assign(paramsObj);
  76. getRewardList(paramsObj).then(data => {
  77. var pageNo = data.data.pageNo;
  78. let setData = {}
  79. // 是否可以滚动加载数据
  80. if (data.data.isLast) {
  81. setData.isScroll = false
  82. }
  83. if (data.data.rewardPosition.length != 0) {
  84. setData.list = this.data.list.concat(data.data.rewardPosition)
  85. setData.pageNo = pageNo;
  86. } else {
  87. setData.list = this.data.list;
  88. }
  89. this.setData({
  90. ...setData
  91. })
  92. })
  93. },
  94. /**
  95. * 生命周期函数--监听页面显示
  96. */
  97. onShow: function () {
  98. },
  99. //获取当前定位
  100. cxgps: function () {
  101. var that = this;
  102. wx.showLoading({
  103. title: 'loading',
  104. mask: true
  105. });
  106. var distance = wx.getStorageSync('distance');
  107. if (distance) {
  108. wx.hideLoading();
  109. that.setData({
  110. longitude: distance.longitude,
  111. latitude: distance.latitude
  112. })
  113. that.rewardList();
  114. } else {
  115. wx.getLocation({
  116. success:data=>{
  117. console.log(data);
  118. wx.hideLoading();
  119. that.setData({
  120. longitude: data.longitude,
  121. latitude: data.latitude
  122. }, _ => {
  123. wx.setStorageSync('distance', data);
  124. that.fullList();
  125. })
  126. },
  127. fail:()=>{
  128. wx.hideLoading();
  129. wx.showModal({
  130. title: '授权提示',
  131. content: '当前服务需要获取您的位置信息,请确认授权',
  132. confirmText: '去授权',
  133. cancelText: '暂不授权',
  134. success: function (res) {
  135. if (res.confirm) {
  136. wx.openSetting();
  137. }
  138. }
  139. })
  140. }
  141. })
  142. }
  143. },
  144. /**
  145. * 页面相关事件处理函数--监听用户下拉动作
  146. */
  147. onPullDownRefresh: function () {
  148. this.setData({
  149. pageNo: 1, //当前分页
  150. isScroll: true, //是否可以滚动
  151. list: [],
  152. selectId: -1, //选中筛选的条件
  153. totalSalary: '', //薪资待遇排序(1:正序;2:倒序)
  154. sort: '', //距离排序(1:正序;2:倒序)
  155. longitude: "",
  156. latitude: ""
  157. }, _ => {
  158. this.start();
  159. })
  160. },
  161. /**
  162. * 页面上拉触底事件的处理函数
  163. */
  164. onReachBottom: function () {
  165. var pageNo = this.data.pageNo + 1;
  166. this.setData({
  167. pageNo
  168. }, _ => {
  169. this.rewardList();
  170. })
  171. },
  172. /**
  173. * 用户点击右上角分享
  174. */
  175. onShareAppMessage: function () {
  176. },
  177. chooseArea(e) {
  178. const { countryCode } = e.detail;
  179. this.setData({
  180. countryCode,
  181. list: [],
  182. pageNo: 1, //当前分页
  183. isScroll: true,
  184. }, _ => {
  185. this.rewardList()
  186. })
  187. },
  188. doSalay: function (e) {
  189. const { totalSalary, sort } = e.detail;
  190. this.setData({
  191. totalSalary,
  192. sort, //重置
  193. pageNo: 1, //当前分页
  194. isScroll: true, //是否可以滚动
  195. list: [],
  196. longitude: "",
  197. latitude: "",
  198. }, _ => {
  199. this.rewardList();
  200. })
  201. },
  202. doDistince: function (e) {
  203. const { sort, totalSalary } = e.detail;
  204. this.setData({
  205. sort,
  206. totalSalary, //重置
  207. pageNo: 1, //当前分页
  208. isScroll: true, //是否可以滚动
  209. list: [],
  210. }, _ => {
  211. this.cxgps();
  212. })
  213. },
  214. //去详情页
  215. toDetail(e) {
  216. const {
  217. id,
  218. cate
  219. } = e.detail;
  220. wx.navigateTo({
  221. url: '../detail/index?hpPositionId=' + id + "&cate=" + cate,
  222. })
  223. },
  224. })