list.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. import common from '../../utils/util';
  2. import server from '../../utils/main';
  3. const app = getApp();
  4. var categoryID = "";
  5. var categoryName = "";
  6. var categoryNum = "";
  7. var SelectID = 0;
  8. var arrDifficult = ["", "", "简单", "普通", "困难"];
  9. Page({
  10. data: {
  11. version: app.globalData.version,
  12. filter: 'all',
  13. CategoryID: 1,
  14. CategoryNum: 1,
  15. },
  16. onLoad: function (options) {
  17. var that = this;
  18. categoryID = options.id;
  19. categoryName = options.name;
  20. categoryNum = options.num;
  21. //console.log(category);
  22. common.getStorageValue(this, "HelpHidden2", false, function () {
  23. that.showHelp();
  24. });
  25. this.setData({
  26. CategoryNum: categoryNum,
  27. CategoryID: categoryID,
  28. Containnerheight: server.getWindowHeight(),
  29. });
  30. this.getList();
  31. },
  32. onUnload: function () {
  33. this.closeHelp();
  34. },
  35. getList: function () {
  36. this.buildList();
  37. },
  38. gotoDetail: function (e) {
  39. server.playSound("/sounds/click.mp3");
  40. var locked = e.currentTarget.dataset.locked;
  41. if (locked) {
  42. wx.navigateTo({
  43. url: '../../package4/main/buyad',
  44. });
  45. }
  46. else {
  47. SelectID = e.currentTarget.dataset.id;
  48. var arr = wx.getStorageSync('SelectIDArray');
  49. if (!arr)
  50. arr = [];
  51. for (var i = 0; i < arr.length; i++) {
  52. if (arr[i] == SelectID) {
  53. arr.splice(i, 0);
  54. break;
  55. }
  56. }
  57. arr.push(SelectID);
  58. wx.setStorageSync('SelectIDArray', arr);
  59. this.buildList();
  60. wx.navigateTo({
  61. url: '../main/detail?id=' + SelectID,
  62. });
  63. }
  64. this.closeHelp();
  65. },
  66. buildList: function () {
  67. var that = this;
  68. var arrID = categoryID.split(",");
  69. var list = [];
  70. var data = wx.getStorageSync('QuestionTypeList');
  71. var arr = wx.getStorageSync('SelectIDArray');
  72. for (var i = 0; i < data.length; i++) {
  73. for (var j = 0; j < arrID.length; j++) {
  74. if (data[i].ID == arrID[j]) {
  75. for (var k = 0; k < data[i].List.length; k++) {
  76. data[i].List[k].CategoryLevel = data[i].Name;
  77. data[i].List[k].IconName = app.globalData.fileUrl + data[i].List[k].IconName;
  78. data[i].List[k].SelectItem = "boxCenter";
  79. for (var n = 0; n < arr.length; n++) {
  80. if (arr[n] == data[i].List[k].ID) {
  81. data[i].List[k].SelectItem = "boxLeft";
  82. }
  83. }
  84. data[i].List[k].DifficultyName = arrDifficult[Number(data[i].List[k].Difficulty)];
  85. data[i].List[k].Select = false;
  86. if (SelectID == data[i].List[k].ID)
  87. data[i].List[k].Select = true;
  88. if (k > 0 && app.globalData.IsShow == 1 && app.globalData.IsLocked==1 && app.globalData.userInfo.IsMember==0) {
  89. data[i].List[k].IsLocked = true;
  90. data[i].List[k].LockCSS = "desaturate";
  91. }
  92. if (this.data.filter == "vertical") {
  93. if (data[i].List[k].QuestionNumber3 > 0)
  94. list.push(data[i].List[k]);
  95. }
  96. else {
  97. list.push(data[i].List[k]);
  98. }
  99. }
  100. break;
  101. }
  102. }
  103. }
  104. this.setData({
  105. QuestionTypeList: list,
  106. });
  107. },
  108. openMenu: function (e) {
  109. this.data.filter = e.currentTarget.dataset.filter;
  110. this.setData({
  111. filter: this.data.filter,
  112. });
  113. this.buildList();
  114. },
  115. showHelp: function () {
  116. if (!this.data.HelpHidden2) {
  117. this.audioCtx = wx.createAudioContext('myAudio');
  118. var str = "这里是仓库,每一层货架的箱子里都有一个知识点,很有意思吧!如果看到一个叫“有竖式”的标签,说明该题型可以打印竖式计算题,想要快速定位所有竖式题目的话,点击顶层货架就能帮你筛选。请选一只箱子继续。";
  119. server.playAudio(this.audioCtx, str);
  120. }
  121. },
  122. closeHelp: function () {
  123. this.setData({
  124. HelpHidden2: true,
  125. });
  126. wx.setStorageSync("HelpHidden2", true);
  127. this.audioCtx = wx.createAudioContext('myAudio');
  128. this.audioCtx.pause();
  129. },
  130. onShareAppMessage: function () {
  131. return {
  132. title: app.globalData.ShareTitle,
  133. path: 'pages/index/index?UserID=' + app.globalData.userInfo.UserID,
  134. imageUrl: app.globalData.ShareImageUrl,
  135. }
  136. },
  137. })