index.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. Page({
  2. data: {
  3. value: [
  4. ],
  5. btns: [
  6. { name: "修改", type: "drafts", success (data) { this.drafts_update(data) } },
  7. { name: "删除", type: "drafts", success (data) { this.drafts_delete(data) } },
  8. { name: "查看", type: "provided", success (data) { this.provided_watch(data) } },
  9. { name: "修改", type: "provided", success (data) { this.provided_update(data) } },
  10. { name: "上传资料", type: "provided", success (data) { } }
  11. ]
  12. },
  13. // 草稿箱删除
  14. async drafts_delete (data) {
  15. try {
  16. await wx.$request({ url: `/order/${data.id}/`, method: "delete" });
  17. let { value } = this.data;
  18. value.value.splice(data.order, 1);
  19. this.setData({ value });
  20. } catch (err) { wx.$err(err) }
  21. },
  22. // 草稿箱修改
  23. drafts_update (data) {
  24. wx.navigateTo({ url: "/pages/add/index?type=draftsupdate&data=" + data.id })
  25. },
  26. // 已填报查看
  27. provided_watch (data) { wx.navigateTo({ url: "/pages/add/index?type=watch&data=" + data.id }) },
  28. // 已填报修改
  29. provided_update (data) { wx.navigateTo({ url: "/pages/add/index?type=providedupdate&data=" + data.id }) },
  30. // 按钮组事件
  31. btnsFunc (e) {
  32. let { index, id, order } = e.currentTarget.dataset, { btns } = this.data;
  33. btns[index]['success'].bind(this)({ id, order })
  34. },
  35. // 数据请求
  36. request_lock: false,
  37. async request (data) {
  38. try {
  39. let { page = 1, totalPage = 1, value = [] } = data;
  40. let { category } = this.data;
  41. if (page > totalPage || this.request_lock) return false;
  42. let resA = await wx.$request({ url: "/order/list/", method: "get", data: { category, limit: 10, page } });
  43. ++page;
  44. totalPage = resA.totalPage;
  45. value = value.concat(resA.data);
  46. this.setData({ value: { page, totalPage, value } })
  47. this.request_lock = false;
  48. } catch (err) { wx.$err(err); this.request_lock = false }
  49. },
  50. onLoad: async function (options) {
  51. try {
  52. let titleArr = [{ title: "草稿箱", type: "drafts", category: 0 }, { title: "已填报", type: "provided", category: 1 }];
  53. let filter_title = titleArr.filter(item => item.type == options.data);
  54. this.setData({ ...filter_title[0] })
  55. } catch (err) { wx.$err(err) }
  56. },
  57. onReady: function () {
  58. },
  59. onShow: function () {
  60. this.request({})
  61. },
  62. onHide: function () {
  63. },
  64. onUnload: function () {
  65. },
  66. onPullDownRefresh: function () {
  67. },
  68. onReachBottom: function () {
  69. this.request(this.data.value)
  70. }
  71. })