integralRule.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. var app = getApp();
  2. var that;
  3. Page({
  4. data: {
  5. allItems: [],
  6. allTree:[],
  7. item_list: {},
  8. rule_tree: {},
  9. types: '',
  10. isItem: true,//判断是否显示左侧
  11. selectItem: [],//选择的数据
  12. terr: [
  13. { name: '全部', id: 0 }
  14. ],
  15. },
  16. onLoad(query) {
  17. that = this;
  18. this.setData({
  19. terr: [
  20. { name: '全部', id: 0 }
  21. ],
  22. })
  23. dd.setNavigationBar({ title: "积分规则" });
  24. this.setData({ types: app.globalData.types })
  25. this.getData();
  26. },
  27. //搜索
  28. bindKeyInput(e) {
  29. var item_list = this.data.allItems;
  30. var items = item_list.filter((item) => {
  31. return item.remark.indexOf(e.detail.value) >= 0
  32. });
  33. this.setData({
  34. selectItem: items,
  35. isItem: e.detail.value ? false : true
  36. })
  37. },
  38. //点击导航栏
  39. activeItem(e) {
  40. console.log(e);
  41. var item = e.target.dataset.item;
  42. var index = e.target.dataset.index;
  43. var terr = this.data.terr;
  44. if ((index + 1) == terr.length) { return false };
  45. this.setData({ rule_tree: [] });
  46. if (index == 0) {
  47. this.setData({
  48. terr: [{ name: '全部', id: 0 }],
  49. rule_tree: this.data.allTree,
  50. item_list:this.data.allItems
  51. })
  52. } else {
  53. var arr = terr.slice(0, index + 1);
  54. this.setData({
  55. rule_tree: item.child,
  56. terr: arr
  57. })
  58. this.getItem(item.id);
  59. }
  60. },
  61. //点击一级
  62. activeTree(e) {
  63. console.log(e);
  64. var item = e.target.dataset.item
  65. var item_list = this.data.allItems;
  66. var terr = this.data.terr;
  67. terr.push(item)
  68. this.setData({
  69. rule_tree:item.child,
  70. terr:terr
  71. });
  72. this.getItem(item.id);
  73. },
  74. //从全部中过滤
  75. getItem(id) {
  76. var item_list = this.data.allItems;
  77. var items = item_list.filter((item) => { return item.rule_id == id });
  78. that.setData({
  79. item_list: items,
  80. })
  81. },
  82. getData() {
  83. app.$get("api/integral/rule/trees", { pt_id: 3 }).then((res) => {
  84. var item_list = res.data.data.item_list
  85. var rule_tree = res.data.data.rule_tree
  86. var list = []
  87. for (let i in item_list) {
  88. for (let k in item_list[i]) {
  89. item_list[i][k].pt_Obj = this.data.types.filter((item) => {
  90. return item_list[i][k].pt_id == item.id
  91. })
  92. item_list[i][k].typeName = rule_tree.filter((item) => {
  93. return item_list[i][k].rule_id == item.id
  94. })
  95. list.push(item_list[i][k])
  96. }
  97. }
  98. that.setData({
  99. item_list: list,
  100. rule_tree: rule_tree,
  101. allItems: list,
  102. allTree:rule_tree,
  103. })
  104. console.log(item_list)
  105. console.log(rule_tree)
  106. }, (err) => {
  107. })
  108. },
  109. });