chengjie vor 5 Jahren
Ursprung
Commit
2fae2ad8f5
53 geänderte Dateien mit 1361 neuen und 726 gelöschten Zeilen
  1. 1 1
      app.js
  2. 3 1
      app.json
  3. 4 1
      app.wxss
  4. BIN
      pages/images/study_index_overall.png
  5. BIN
      pages/images/study_index_urgency.png
  6. BIN
      pages/images/study_index_usually.png
  7. BIN
      pages/images/study_plan_header.png
  8. BIN
      pages/images/universalpic_setup_black_30x30.png
  9. BIN
      pages/images/universalpic_setup_green_30x30.png
  10. BIN
      pages/images/universalpic_tips_green_70x70.png
  11. 11 6
      pages/index/index.js
  12. 2 2
      pages/main/add.js
  13. 20 7
      pages/main/default.js
  14. 5 0
      pages/main/default.wxml
  15. 29 18
      pages/main/detail.js
  16. 5 1
      pages/main/preview.js
  17. 15 4
      pages/main/previewMenu.js
  18. 11 0
      pages/main/searchCard1.js
  19. 8 5
      pages/main/searchCardList.js
  20. 1 1
      pages/main/searchCardList.wxml
  21. 13 0
      pages/main/systemsetting.js
  22. 6 0
      pages/main/systemsetting.wxml
  23. 1 1
      pages/marketing/award.wxml
  24. 11 3
      pages/other/lessonlist.js
  25. 1 0
      pages/other/lessonlist.json
  26. 1 1
      pages/other/lessonlist.wxml
  27. 53 0
      pages/other/menu.js
  28. 5 0
      pages/other/menu.json
  29. 31 0
      pages/other/menu.wxml
  30. 140 0
      pages/other/menu.wxss
  31. 89 0
      pages/other/video.js
  32. 8 0
      pages/other/video.json
  33. 3 0
      pages/other/video.wxml
  34. 6 0
      pages/other/video.wxss
  35. 13 0
      pages/other/webviewInterior.js
  36. 3 0
      pages/other/webviewInterior.json
  37. 1 0
      pages/other/webviewInterior.wxml
  38. 1 0
      pages/other/webviewInterior.wxss
  39. 2 2
      pages/plan/setting.wxml
  40. 0 4
      pages/plan/setting.wxss
  41. 3 3
      pages/plan/sortRule.js
  42. 72 71
      pages/plan/studyplan.js
  43. 3 0
      pages/plan/studyplan.json
  44. 230 196
      pages/plan/studyplan.wxml
  45. 172 84
      pages/plan/studyplan.wxss
  46. 14 7
      pages/plan/studyplandetail.js
  47. 167 157
      pages/plan/studyplandetail.wxml
  48. 146 125
      pages/plan/studyplandetail.wxss
  49. 2 2
      pages/template/Fan.wxml
  50. 0 1
      pages/template/Fan.wxss
  51. 4 2
      project.config.json
  52. 41 1
      utils/constant.js
  53. 4 19
      utils/main.js

+ 1 - 1
app.js

@@ -1,6 +1,6 @@
1 1
 App({
2 2
   globalData: {
3
-    Version: "1.6.3",
3
+    Version: "1.6.4",
4 4
     IsProduction: true,
5 5
     ShareTitle: "高效学习从秒过开始",
6 6
     SharePath: "pages/index/index",

+ 3 - 1
app.json

@@ -1,6 +1,5 @@
1 1
 {
2 2
   "pages": [
3
-
4 3
     "pages/index/index",
5 4
     "pages/main/preview",
6 5
     "pages/plan/pattern",
@@ -41,12 +40,15 @@
41 40
     "pages/marketing/award",
42 41
     "pages/marketing/index",
43 42
     
43
+    "pages/other/video",
44
+    "pages/other/menu",
44 45
     "pages/other/lessonlist",
45 46
     "pages/other/userlist",
46 47
     "pages/other/binding",
47 48
     "pages/other/homework",
48 49
     "pages/other/lesson",
49 50
     "pages/other/webview",
51
+    "pages/other/webviewInterior",
50 52
     "pages/other/newuser",
51 53
     "pages/other/userbook",
52 54
     "pages/other/activity",

+ 4 - 1
app.wxss

@@ -26,7 +26,10 @@
26 26
   font-weight: 500;
27 27
   background-color: #f0f0f0;
28 28
 } 
29
-
29
+.footerHeight{
30
+  width: 100%;
31
+  height: 100rpx;
32
+}
30 33
 .lineFooter{
31 34
   width: 100%;
32 35
   height: 1rpx;

BIN
pages/images/study_index_overall.png


BIN
pages/images/study_index_urgency.png


BIN
pages/images/study_index_usually.png


BIN
pages/images/study_plan_header.png


BIN
pages/images/universalpic_setup_black_30x30.png


BIN
pages/images/universalpic_setup_green_30x30.png


BIN
pages/images/universalpic_tips_green_70x70.png


+ 11 - 6
pages/index/index.js

@@ -20,7 +20,7 @@ const arrSentence = [
20 20
   "孟子曰:\n故天将降大任于是人也\n必先苦其心志,劳其筋骨\n饿其体肤……",
21 21
 ];
22 22
 
23
-var timeout1 = 0;
23
+var timeout1 = 0, timeout3=0;
24 24
 var timeoutRedirect=0;
25 25
 
26 26
 Page({
@@ -67,7 +67,7 @@ Page({
67 67
           gotoUrl: "../other/binding?type=bebound&ParentUserID=" + options.ParentUserID + "&NickName=" + options.NickName + "&AvatarUrl=" + options.AvatarUrl + "&BindTime=" + options.BindTime,
68 68
         });
69 69
       }
70
-      else if (options.type == "lesson") {
70
+      else if (options.type == "lesson" || options.type == "video") {
71 71
         //console.log("Lesson:" + options.LessonID);
72 72
         app.globalData.LessonID = options.LessonID;
73 73
         if (options.LessonPage)
@@ -76,11 +76,16 @@ Page({
76 76
           app.globalData.LessonPage = 1;
77 77
 
78 78
         var url="";
79
-        if (app.globalData.LessonID === "all") {
80
-          url = '../other/lessonlist';
79
+        if (options.type == "video"){
80
+          url = '../other/video?LessonID=' + app.globalData.LessonID + '&LessonPage=' + app.globalData.LessonPage
81 81
         }
82
-        else if (app.globalData.LessonID > 0) {
83
-          url = '../other/lesson?LessonID=' + app.globalData.LessonID + '&LessonPage=' + app.globalData.LessonPage
82
+        else{
83
+          if (app.globalData.LessonID === "all") {
84
+            url = '../other/lessonlist';
85
+          }
86
+          else if (app.globalData.LessonID > 0) {
87
+            url = '../other/lesson?LessonID=' + app.globalData.LessonID + '&LessonPage=' + app.globalData.LessonPage
88
+          }
84 89
         }
85 90
         this.setData({
86 91
           gotoType: "other",

+ 2 - 2
pages/main/add.js

@@ -333,7 +333,7 @@ Page({
333 333
 
334 334
     for (var i = 1; i <= 3; i++) {
335 335
       result["Field" + i] = "";
336
-      if (field[i]) {
336
+      if (field.length>0 && field[i]) {
337 337
         for (var key in field[i]) {
338 338
           var item = field[i][key];
339 339
           var str = "";
@@ -625,7 +625,7 @@ Page({
625 625
             UpdateType: "add",
626 626
           });
627 627
           wx.navigateTo({
628
-            url: './searchCardList?type=2&Count=' + data.Count,
628
+            url: './searchCardList?type=3&Count=' + data.Count,
629 629
           })
630 630
         }
631 631
       });

+ 20 - 7
pages/main/default.js

@@ -174,17 +174,17 @@ Page({
174 174
       clickType = 0;
175 175
     app.globalData.ClickType = clickType;
176 176
 
177
+    //选择建议
178
+    var SecondConfigArray = wx.getStorageSync("SecondConfigArray");
179
+    if (SecondConfigArray)
180
+      app.globalData.SecondConfigArray = SecondConfigArray;
181
+
177 182
     //显示命名方式
178 183
     var MemoryLevel = wx.getStorageSync("MemoryLevel");
179 184
     if (!MemoryLevel)
180 185
       MemoryLevel = 0;
181 186
     app.globalData.MemoryLevel = MemoryLevel;
182 187
 
183
-    //选择建议
184
-    var SecondConfigArray = wx.getStorageSync("SecondConfigArray");
185
-    if (SecondConfigArray)
186
-      app.globalData.SecondConfigArray = SecondConfigArray;
187
-
188 188
   },
189 189
   goto: function (e) {
190 190
     var url = e.currentTarget.dataset.url;
@@ -216,6 +216,16 @@ Page({
216 216
             TodayTaskNumber: TodayTaskNumber,
217 217
             IsStart: data.IsStart,
218 218
           });
219
+
220
+          if(app.globalData.MemoryLevel==0 && data.DayNumber>=8){
221
+            var IsShowPatternMenu = wx.getStorageSync("IsShowPatternMenu");
222
+            if (!IsShowPatternMenu){
223
+              wx.navigateTo({
224
+                url: '../other/menu?Type=1',
225
+              });
226
+              wx.setStorageSync('IsShowPatternMenu', 1);
227
+            }
228
+          }
219 229
         }
220 230
       });
221 231
     });
@@ -280,12 +290,15 @@ Page({
280 290
   showUserID:function(){
281 291
     var that = this;
282 292
     if (app.globalData.userInfo.UserID == 1
283
-      || app.globalData.userInfo.UserID == 2 
284 293
       || app.globalData.userInfo.UserID == 3 
285 294
       || app.globalData.userInfo.UserID == 4) {
295
+        var userid=2;
296
+        if (app.globalData.userInfo.UserID>=3)
297
+          userid = app.globalData.userInfo.UserID;
298
+
286 299
       that.setData({
287 300
         IsShowUserID: true,
288
-        ChangeuUserID:2,
301
+        ChangeuUserID:userid,
289 302
       });
290 303
     }
291 304
   },

+ 5 - 0
pages/main/default.wxml

@@ -75,5 +75,10 @@
75 75
 <view wx:if="{{IsShowUserID}}" class="IsExitContainer container FlexColumn" style='height:{{Containnerheight}}rpx;'>
76 76
     <input class='input' type="number" value="{{ChangeuUserID}}" bindinput="onKeyInput" />
77 77
     <button class="btnShowUserID" bindtap="setSelectUser">确定</button>
78
+    <view style="height:50rpx;"></view>
79
+    <button class="btnShowUserID" bindtap="goto" data-url="../other/webview?PageID=9999">网页访问钥匙</button>
80
+    <button class="btnShowUserID" bindtap="goto" data-url="../other/webviewInterior">访问统计网页</button>
81
+
82
+
78 83
 </view>
79 84
 

+ 29 - 18
pages/main/detail.js

@@ -53,6 +53,10 @@ Page({
53 53
       that.audioCtx.setSrc(tempPlayUrl);
54 54
       that.audioCtx.play();
55 55
     });
56
+
57
+    common.getStorageValue(that, "HasSound", true, function () {
58
+      wx.setStorageSync("HasSound", that.data.HasSound);
59
+    });
56 60
   },
57 61
   onLoad: function () {
58 62
     var that = this;
@@ -90,8 +94,7 @@ Page({
90 94
     this.getColor();
91 95
 
92 96
     this.getMemoryLevel();
93
-
94
-    
97
+ 
95 98
 
96 99
     if (app.globalData.BaiduToken === "")
97 100
       main.getBaiduToken();
@@ -114,7 +117,7 @@ Page({
114 117
       var list = app.globalData.CardList;
115 118
       if (list && list.length > 0) {
116 119
         for (var i = 0; i < list.length; i++) {
117
-          if (TaskList[0].MiaoguoCardID == list[i].MiaoguoCardID) {
120
+          if (TaskList && TaskList[0] && TaskList[0].MiaoguoCardID == list[i].MiaoguoCardID) {
118 121
             TaskList[0].Content = list[i].Content;
119 122
             TaskList[0].ContentNew = main.changeStringToView(list[i].Content);
120 123
             that.setData({
@@ -174,21 +177,24 @@ Page({
174 177
     });
175 178
     wx.stopPullDownRefresh();
176 179
   },
177
-  setSoundFile: function (isFinish) { //isFinish=3搁置 =2撤退 =1结束 =0正常 =-1开始
180
+  setSoundFile: function (isFinish) { 
181
+    //isFinish=3搁置 =2撤退 =1结束 =0正常 =-1开始
178 182
     var that = this;
179
-    var url = "/pages/sounds/";
180
-    if (isFinish == 1) {
181
-      url += "end.mp3";
182
-    } else if (isFinish == 2) {
183
-      url += "short3.mp3";
184
-    } else if (isFinish == 3) {
185
-      url += "short1.mp3";
186
-    } else {
187
-      url += "short2.mp3";
188
-    }
189
-    if (isFinish >= 0) {
190
-      innerAudioContext1.src = url;
191
-      innerAudioContext1.play();
183
+    if (that.data.HasSound){
184
+      var url = "/pages/sounds/";
185
+      if (isFinish == 1) {
186
+        url += "end.mp3";
187
+      } else if (isFinish == 2) {
188
+        url += "short3.mp3";
189
+      } else if (isFinish == 3) {
190
+        url += "short1.mp3";
191
+      } else {
192
+        url += "short2.mp3";
193
+      }
194
+      if (isFinish >= 0) {
195
+        innerAudioContext1.src = url;
196
+        innerAudioContext1.play();
197
+      }
192 198
     }
193 199
 
194 200
     wx.pageScrollTo({
@@ -337,7 +343,9 @@ Page({
337 343
           that.data.IsShowAnswer[0] = 0;
338 344
           that.data.IsShowAnswer[1] = 0;
339 345
         } else {
340
-          if (!that.data.IsShowAnswer[0] && !that.data.IsShowAnswer[1]) {
346
+          if (!that.data.IsShowAnswer)
347
+            that.data.IsShowAnswer=[0,0];
348
+          if (that.data.IsShowAnswer[0]==0 && that.data.IsShowAnswer[1]==0) {
341 349
             that.data.IsShowAnswer[0] = 1;
342 350
             if (TaskList[0].ContentNew.Field[3].length == 0) {
343 351
               that.data.IsShowAnswer[1] = 1;
@@ -976,6 +984,9 @@ Page({
976 984
           canvas.fillText("见证成长", 390, 120);
977 985
 
978 986
           canvas.setFontSize(68);
987
+          if (!that.data.TodayTime)
988
+            that.data.TodayTime=0;
989
+            
979 990
           canvas.fillText(that.data.TodayTime, 390, 148);
980 991
 
981 992
           canvas.font = "normal 500 68px caption";

+ 5 - 1
pages/main/preview.js

@@ -444,13 +444,14 @@ Page({
444 444
         title: '音频下载中',
445 445
         mask: true,
446 446
       });
447
-      setTimeout(function () {
447
+      var timeout=setTimeout(function () {
448 448
         wx.hideLoading();
449 449
       }, 30000);
450 450
       console.log(url);
451 451
       wx.downloadFile({
452 452
         url: url,
453 453
         success(res) {
454
+          clearTimeout(timeout);
454 455
           wx.hideLoading();
455 456
           if (res.statusCode === 200) {
456 457
             tempPlayUrlLocal = res.tempFilePath;
@@ -458,9 +459,12 @@ Page({
458 459
             that.audioCtx.play();
459 460
             tempPlayUrl = url;
460 461
           }
462
+          //console.log("res.statusCode:" + res.statusCode);
461 463
         },
462 464
         fail(err) {
463 465
           wx.hideLoading();
466
+          console.log("downling err:"+err);
467
+          clearTimeout(timeout);
464 468
         }
465 469
       });
466 470
     }

+ 15 - 4
pages/main/previewMenu.js

@@ -55,13 +55,24 @@ Page({
55 55
           list[i].CardType = that.data.CardType;
56 56
       }
57 57
       app.globalData.CardList = list;
58
+      app.globalData.IsUpdateStudyPlan = 1;
59
+      
58 60
       if (that.data.CardType==1){
59 61
         app.globalData.TaskToday.CardNumberUrgent++;
60
-      }
61 62
 
62
-      app.globalData.IsUpdateStudyPlan = 1;
63
-      
64
-      that.close();
63
+        var cardType=wx.getStorageSync('CardType');
64
+        if (cardType==0 && app.globalData.TaskToday.CardNumberUrgent==1){
65
+          wx.redirectTo({
66
+            url: "../other/menu?Type=0",
67
+          });
68
+        }
69
+        else{
70
+          that.close();
71
+        }
72
+      }
73
+      else{
74
+        that.close();
75
+      }
65 76
       
66 77
     });
67 78
     

+ 11 - 0
pages/main/searchCard1.js

@@ -40,7 +40,13 @@ Page({
40 40
       if (search)
41 41
         url += "&Key=" + search;
42 42
 
43
+      var timeoutGetData=0;
44
+      wx.showLoading({
45
+        title: '请稍后...',
46
+      });
43 47
       main.getData(url, function (data) {
48
+        wx.hideLoading();
49
+        clearTimeout(timeoutGetData);
44 50
         if (data) {
45 51
           app.globalData.CardList= data.List;
46 52
           wx.navigateTo({
@@ -48,6 +54,11 @@ Page({
48 54
           })
49 55
         }
50 56
       });
57
+      timeoutGetData=setTimeout(function(){
58
+        wx.hideLoading();
59
+      },10000);
60
+
61
+
51 62
 
52 63
       setTimeout(function () {
53 64
         var arr = that.data.SearchTextList;

+ 8 - 5
pages/main/searchCardList.js

@@ -128,14 +128,14 @@ Page({
128 128
       }
129 129
     }
130 130
 
131
-    if (!that.data.IsCollect && !that.data.IsToday && !that.data.Search) {
132
-      main.getData("GetUserCardCount?UserID=" + app.globalData.userInfo.UserID+"&CardType="+that.data.CardType, function (data) {
131
+    if (!that.data.IsToday && !that.data.Search) {
132
+      main.getData("GetUserCardCount?UserID=" + app.globalData.userInfo.UserID+"&CardType="+that.data.CardType+"&IsCollect="+that.data.IsCollect, function (data) {
133 133
         if (data) {
134 134
           that.setData({
135 135
             Count: data.CardNumber,
136 136
           });
137 137
           var hasPage = false;
138
-          if (list.length < that.data.Count && list.length>=20 && that.data.IsToday == 0 && !that.data.IsCollect)
138
+          if (list.length < that.data.Count && list.length>=20 && that.data.IsToday == 0)
139 139
             hasPage = true;
140 140
 
141 141
           that.setData({
@@ -143,7 +143,7 @@ Page({
143 143
             HasPage: hasPage,
144 144
           });
145 145
 
146
-          if (that.data.PageType === "2") {
146
+          if (that.data.PageType === "3") {
147 147
             wx.redirectTo({
148 148
               url: './preview?type=show&id=' + list[0].MiaoguoCardID,
149 149
             })
@@ -164,7 +164,7 @@ Page({
164 164
       });
165 165
 
166 166
       var hasPage = false;
167
-      if (list.length < that.data.Count && that.data.IsToday == 0 && !that.data.IsCollect)
167
+      if (list.length < that.data.Count && that.data.IsToday == 0)
168 168
         hasPage = true;
169 169
 
170 170
       that.setData({
@@ -276,6 +276,9 @@ Page({
276 276
     var orderType = that.data.OrderType;
277 277
     if (orderType)
278 278
       url += "&OrderType=" + arrOrder[orderType].Value;
279
+    
280
+    if (e.currentTarget.dataset.iscollect==1)
281
+      url += "&IsCollect=1";
279 282
 
280 283
 
281 284
     main.getData(url, function (data) {

+ 1 - 1
pages/main/searchCardList.wxml

@@ -60,7 +60,7 @@
60 60
     <view class="lineWidthAll FlexRow" wx:if="{{HasPage}}">
61 61
       <view class="lineWidth750"></view>
62 62
     </view>
63
-    <view class='panelItem3' wx:if="{{HasPage}}" bindtap='gotoNextPage' data-id="{{List[List.length-1].MiaoguoCardID}}">
63
+    <view class='panelItem3' wx:if="{{HasPage}}" bindtap='gotoNextPage' data-id="{{List[List.length-1].MiaoguoCardID}}" data-iscollect="{{IsCollect}}">
64 64
       <view class="more">更多</view>
65 65
     </view>
66 66
 

+ 13 - 0
pages/main/systemsetting.js

@@ -6,6 +6,7 @@ const app = getApp();
6 6
 Page({
7 7
   data: {
8 8
     IsShow: 0,
9
+    HasSound: true,
9 10
   },
10 11
   onLoad: function (options) {
11 12
     var that = this;
@@ -16,6 +17,10 @@ Page({
16 17
       Version: app.globalData.Version,
17 18
       IsShow: app.globalData.userInfo.IsShow,
18 19
     });
20
+
21
+    common.getStorageValue(this, "HasSound", true, function () {
22
+      wx.setStorageSync("HasSound", that.data.HasSound);
23
+    });
19 24
   },
20 25
   updateMember: function () {
21 26
     wx.reLaunch({
@@ -34,6 +39,14 @@ Page({
34 39
       });
35 40
     }
36 41
   },
42
+  switch1Change(e) {
43
+    var that = this;
44
+    that.data.HasSound = e.detail.value;
45
+    that.setData({
46
+      HasSound: that.data.HasSound,
47
+    });
48
+    wx.setStorageSync("HasSound", that.data.HasSound);
49
+  },
37 50
   onShareAppMessage: function () {
38 51
     return {
39 52
       title: app.globalData.ShareTitle,

+ 6 - 0
pages/main/systemsetting.wxml

@@ -4,6 +4,12 @@
4 4
     <view class="panelTitle1">通用</view>
5 5
     <view class="panelTitle2"></view>
6 6
   </view>
7
+  <view class="panelItem FlexRow">
8
+    <view class="panelItem1">按键音</view>
9
+    <view class="panelItem2 FlexRow">
10
+      <switch checked="{{HasSound}}" bindchange="switch1Change" />
11
+    </view>
12
+  </view>
7 13
   <view class="panelItem FlexRow" bindtap='gotoSymbol'>
8 14
     <view class="panelItem1">符号栏</view>
9 15
     <view class="panelItem2 FlexRow">

+ 1 - 1
pages/marketing/award.wxml

@@ -17,7 +17,7 @@
17 17
 	<view class='lineFooter2'></view>
18 18
 	<view class="panelItem FlexColumn">
19 19
 		<view class="text5 panelItem1 FlexRow">
20
-			<view class="panelItem11">累积奖励天数</view>
20
+			<view class="panelItem11">可奖励天数(含已发放)</view>
21 21
 			<view class="panelItem12">{{Award.Total}}天</view>
22 22
 		</view>
23 23
 	</view>

+ 11 - 3
pages/other/lessonlist.js

@@ -36,9 +36,17 @@ Page({
36 36
     var idchild="";
37 37
     if (e.currentTarget.dataset.idchild && id>1)
38 38
       idchild = '&LessonPage=' +e.currentTarget.dataset.idchild;
39
-    wx.navigateTo({
40
-      url: '../other/lesson?LessonID=' + id +idchild,
41
-    });
39
+    
40
+    if (e.currentTarget.dataset.url){
41
+      wx.navigateTo({
42
+        url: '../other/video?LessonID=' + id +idchild+"&imageurl="+e.currentTarget.dataset.imageurl+"&url="+e.currentTarget.dataset.url,
43
+      });
44
+    }
45
+    else{
46
+      wx.navigateTo({
47
+        url: '../other/lesson?LessonID=' + id +idchild,
48
+      });
49
+    }
42 50
   },
43 51
   onShareAppMessage: function () {
44 52
     return {

+ 1 - 0
pages/other/lessonlist.json

@@ -2,5 +2,6 @@
2 2
   "navigationBarTitleText": "课程",
3 3
   "navigationBarBackgroundColor": "#009942",
4 4
   "navigationBarTextStyle": "white",
5
+  "backgroundColorTop": "#009942",
5 6
   "backgroundColor": "#F0F0F0"
6 7
 }

+ 1 - 1
pages/other/lessonlist.wxml

@@ -12,7 +12,7 @@
12 12
           <view class="lineWidth720"></view>
13 13
         </view>
14 14
 
15
-        <view class="panelItem FlexRow" bindtap="gotoLesson" data-id="{{index+1}}" data-idchild="{{indexChild+1}}">
15
+        <view class="panelItem FlexRow" bindtap="gotoLesson" data-id="{{index+1}}" data-idchild="{{indexChild+1}}" data-url="{{itemChild.VideoUrl}}" data-imageurl="{{itemChild.ImageUrl}}">
16 16
           <view class='panelItem1 FlexColumn'>
17 17
             <view class="panelTitle10">{{itemChild.Title}}</view>
18 18
           </view>

+ 53 - 0
pages/other/menu.js

@@ -0,0 +1,53 @@
1
+import common from '../../utils/util';
2
+import main from '../../utils/main';
3
+import constant from '../../utils/constant';
4
+
5
+const app = getApp();
6
+
7
+Page({
8
+  data: {
9
+  },
10
+  onLoad: function (options) {
11
+    var that = this;
12
+
13
+    that.setData({
14
+      Containnerheight: main.getWindowHeight(),
15
+      Menu:constant.arrMenuText[options.Type],
16
+    });
17
+
18
+    wx.setNavigationBarColor({
19
+      frontColor: "#ffffff",
20
+      backgroundColor: "#0B8457",
21
+    })
22
+  },
23
+  goto:function(e){
24
+    var that = this;
25
+    var url = e.currentTarget.dataset.url;
26
+
27
+    if (url.indexOf("studyplan")>0){
28
+      var cardType=url.substr(url.length-1);
29
+      wx.setStorageSync("CardType", Number(cardType));
30
+  
31
+      main.UploadUserConfig(function () {
32
+        that.onClose();
33
+      });
34
+    }
35
+    else{
36
+      wx.redirectTo({
37
+        url: url,
38
+      });
39
+    }
40
+  },
41
+  onClose: function () {
42
+    wx.navigateBack({
43
+      delta: 1,
44
+    });
45
+  },
46
+  onShareAppMessage: function () {
47
+    return {
48
+      title: app.globalData.ShareTitle,
49
+      path: app.globalData.SharePath + '?LessonID=all&UserID=' + app.globalData.userInfo.UserID,
50
+      imageUrl: app.globalData.ShareImage,
51
+    }
52
+  },
53
+})

+ 5 - 0
pages/other/menu.json

@@ -0,0 +1,5 @@
1
+{
2
+  "navigationBarTitleText": "菜单",
3
+  "navigationBarBackgroundColor": "#0B8457",
4
+  "navigationBarTextStyle": "white"
5
+}

+ 31 - 0
pages/other/menu.wxml

@@ -0,0 +1,31 @@
1
+<view class="TempContainer container FlexColumn" style='height:{{Containnerheight}}rpx;'>
2
+	<image class="Avatar" src='../images/universalpic_logo_200x200.png' />
3
+	<text class='RemindText'>{{Menu.Text1}}</text>
4
+  <text class='RemindText2'>{{Menu.Text2}}</text>
5
+
6
+	<block wx:for="{{Menu.List}}" wx:key="index">
7
+		<view class="RemindLine"></view>
8
+		<view class="RemindButton FlexColumn" bindtap="goto" data-url="{{item.Url}}">
9
+			<view class='RemindButton1 FlexRow'>
10
+				<view class="FlexRow" wx:if="{{!item.IsUrl}}">
11
+					<image class="universalpic_setup_green_30x30" src='../images/universalpic_setup_green_30x30.png' />
12
+				</view>
13
+				<view class="RemindButton10" wx:if="{{item.IsUrl}}">
14
+				</view>
15
+				<view class='RemindButton11'>{{item.Name}}</view>
16
+			</view>
17
+			<text class='RemindButton10 RemindButton12' wx:if="{{item.Name2}}">{{item.Name2}}</text>
18
+			<view class='RemindButton13'></view>
19
+			<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
20
+	
21
+		</view>
22
+	</block>
23
+  <view class="RemindLine"></view>
24
+	<text class='RemindText3'>{{Menu.Text3}}</text>
25
+	<text class='RemindText4' space="ensp">{{Menu.Text4}}</text>
26
+	
27
+	<view class="footer FlexColumn" bindtap="onClose">
28
+		<view class="footer1">{{Menu.Text5}}</view>
29
+		<view class="footer2">{{Menu.Text6}}</view>
30
+	</view>
31
+</view>

+ 140 - 0
pages/other/menu.wxss

@@ -0,0 +1,140 @@
1
+
2
+.TempContainer{
3
+  background-color: #0B8457;
4
+  position: fixed;
5
+  top:0;
6
+  z-index: 100;
7
+}
8
+.TempContainer .Avatar{
9
+  width:160rpx;
10
+  height:160rpx;
11
+  margin-top: 100rpx;
12
+  border-radius: 50%;
13
+}
14
+.TempContainer .RemindText{
15
+  font-size:36rpx;
16
+  color:#F0F0F0;
17
+  margin-top: 60rpx;
18
+  text-align: center;
19
+}
20
+
21
+.TempContainer .RemindText2{
22
+  font-size:24rpx;
23
+  color:#F0F0F0;
24
+  width:670rpx;
25
+  margin-top: 30rpx;
26
+  margin-bottom: 60rpx;
27
+  font-weight: 400;
28
+}
29
+
30
+.universalpic_setup_green_30x30{
31
+  width:30rpx;
32
+  height:30rpx;
33
+  margin:0 20rpx 0 40rpx;
34
+}
35
+.TempContainer .RemindButton{
36
+  width:100%;
37
+  align-items: flex-start;
38
+  position: relative;
39
+}
40
+
41
+.TempContainer .RemindButton00{
42
+  justify-content: space-between;
43
+  width:100%;
44
+  height:134rpx;
45
+  margin-top: 30rpx;
46
+}
47
+
48
+
49
+.TempContainer .RemindButton001{
50
+  align-items: flex-start;
51
+}
52
+
53
+.TempContainer .RemindButton0{
54
+  width:80rpx;
55
+  height:40rpx;
56
+  text-align: center;
57
+  color:#1e1e1e;
58
+  line-height: 40rpx;
59
+  border-radius: 20rpx;
60
+  background-color: #19C575;
61
+  margin-left: 40rpx;
62
+  font-size:20rpx;
63
+}
64
+
65
+.TempContainer .RemindButton1{
66
+  justify-content: flex-start;
67
+  margin: 30rpx 0 0 0;
68
+}
69
+
70
+.TempContainer .RemindButton11{
71
+  font-size:28rpx;
72
+  color:#fff;
73
+}
74
+.TempContainer .RemindButton12{
75
+  font-size:20rpx;
76
+  color:#D2D2D2;
77
+  margin-left: 90rpx;
78
+}
79
+.TempContainer .RemindButton120{
80
+  margin-left: 0rpx;
81
+}
82
+
83
+.TempContainer .RemindButton13{
84
+  height:30rpx;
85
+}
86
+
87
+.TempContainer .RemindButton10{
88
+  margin-left: 40rpx;
89
+}
90
+
91
+.TempContainer .Arrow{
92
+  width:16rpx;
93
+  height:26rpx;
94
+  position: absolute;
95
+  right:40rpx;
96
+}
97
+
98
+.TempContainer .RemindLine{
99
+  width:100%;
100
+  height:1rpx;
101
+  background-color:rgba(0,0,0,0.25);
102
+}
103
+
104
+.TempContainer .RemindText3{
105
+  font-size:24rpx;
106
+  color:#D2D2D2;
107
+  width:670rpx;
108
+  margin-top: 31rpx;
109
+}
110
+
111
+.TempContainer .RemindText4{
112
+  font-size:20rpx;
113
+  color:#D2D2D2;
114
+  width:670rpx;
115
+  margin-top: 20rpx;
116
+}
117
+
118
+.TempContainer .footer{
119
+  font-size:28rpx;
120
+  color:#fff;
121
+  border-top:1rpx solid rgba(0,0,0,0.25);
122
+  text-align: center;
123
+  width:100%;
124
+  min-height: 100rpx;
125
+  position: fixed;
126
+  bottom: 0;
127
+}
128
+
129
+.TempContainer .footer1{
130
+  font-size:28rpx;
131
+  color:#fff;
132
+  margin-top: 30rpx;
133
+}
134
+
135
+.TempContainer .footer2{
136
+  font-size:20rpx;
137
+  color:#D2D2D2;
138
+  margin-top: 4rpx;
139
+  margin-bottom: 30rpx;
140
+}

+ 89 - 0
pages/other/video.js

@@ -0,0 +1,89 @@
1
+import common from '../../utils/util';
2
+import main from '../../utils/main';
3
+
4
+const app = getApp();
5
+
6
+Page({
7
+  data: {
8
+  },
9
+  onReady() {
10
+    this.videoContext = wx.createVideoContext('myVideo')
11
+  },
12
+  onLoad: function (options) {
13
+    var that = this;
14
+    var height = app.globalData.systemInfo.windowHeight;
15
+    that.setData({
16
+      Containnerheight:height,
17
+    });
18
+    wx.setNavigationBarColor({
19
+      frontColor: "#ffffff",
20
+      backgroundColor: "#000000",
21
+    });
22
+
23
+    var LessonID = 2;
24
+    var LessonPage = 1;
25
+    if (options && options.LessonID) {
26
+      LessonID = options.LessonID;
27
+    } 
28
+    if (options && options.LessonPage) {
29
+      LessonPage = options.LessonPage;
30
+    }
31
+    else
32
+      LessonPage=1;
33
+
34
+    if (options.url){
35
+      that.setData({
36
+        LessonID: LessonID,
37
+        LessonPage: LessonPage,
38
+        VideoUrl:app.globalData.uploadImageUrl+"web/_lesson/"+options.url,
39
+        ImageUrl:options.imageurl,
40
+      });
41
+      wx.setNavigationBarTitle({
42
+        title: options.Title,
43
+      });
44
+    }
45
+    else{
46
+      var userid = app.globalData.userInfo.UserID;
47
+      main.getData("GetMiaoguoLesson2?UserID=" + userid, function (data) {
48
+        if (data) {          
49
+          that.setData({
50
+            LessonID: LessonID,
51
+            LessonPage: LessonPage,
52
+            VideoUrl:app.globalData.uploadImageUrl+"web/_lesson/"+data[LessonID-1].List[LessonPage-1].VideoUrl,
53
+            ImageUrl:data[LessonID-1].List[LessonPage-1].ImageUrl,
54
+          });
55
+          wx.setNavigationBarTitle({
56
+            title: data[LessonID-1].List[LessonPage-1].Title,
57
+          });
58
+        }
59
+      });
60
+    }
61
+
62
+    
63
+
64
+   
65
+  },
66
+  onUnload: function () {
67
+    this.InsertMiaoguoUserLesson();
68
+  },
69
+  onHide: function () {
70
+    this.InsertMiaoguoUserLesson();
71
+  },
72
+  InsertMiaoguoUserLesson: function () {
73
+    
74
+    var url = "InsertMiaoguoUserLesson?UserID=" + app.globalData.userInfo.UserID;
75
+    url += "&LessonID=" + this.data.LessonID;
76
+    url += "&Content=" + this.data.LessonPage;
77
+
78
+    main.getData(url, function (data) {});
79
+  },
80
+  onShareAppMessage: function () {
81
+    var title ="《秒过学习法》课程";
82
+    var imageUrl = app.globalData.uploadImageUrl+"web/"+this.data.ImageUrl;
83
+    return {
84
+      title: title,
85
+      path: app.globalData.SharePath + '?type=video&LessonID=' + this.data.LessonID + '&LessonPage=' + this.data.LessonPage+'&UserID=' + app.globalData.userInfo.UserID,
86
+      imageUrl: imageUrl,
87
+    }
88
+  },
89
+})

+ 8 - 0
pages/other/video.json

@@ -0,0 +1,8 @@
1
+{
2
+  "navigationBarTitleText": "《秒过学习法》课程",
3
+  "navigationBarBackgroundColor": "#000000",
4
+  "navigationBarTextStyle": "white",
5
+  "backgroundColor": "#000000",
6
+  "backgroundColorTop": "#000000",
7
+  "backgroundColorBottom": "#000000"
8
+}

+ 3 - 0
pages/other/video.wxml

@@ -0,0 +1,3 @@
1
+<video id="myVideo" class="video" style='height:{{Containnerheight}}px;'
2
+ src="{{VideoUrl}}" controls autoplay="false"></video>
3
+  

+ 6 - 0
pages/other/video.wxss

@@ -0,0 +1,6 @@
1
+page{
2
+  background-color: #000;  
3
+}
4
+.video{
5
+  width:100%;
6
+}

+ 13 - 0
pages/other/webviewInterior.js

@@ -0,0 +1,13 @@
1
+import common from '../../utils/util';
2
+import main from '../../utils/main';
3
+
4
+const app = getApp();
5
+
6
+Page({
7
+  data: {
8
+
9
+  },
10
+  onLoad: function (options) {
11
+    var that = this;
12
+  },
13
+})

+ 3 - 0
pages/other/webviewInterior.json

@@ -0,0 +1,3 @@
1
+{
2
+  "usingComponents": {}
3
+}

+ 1 - 0
pages/other/webviewInterior.wxml

@@ -0,0 +1 @@
1
+<web-view src="https://www.kylx365.com/20170411"></web-view>

+ 1 - 0
pages/other/webviewInterior.wxss

@@ -0,0 +1 @@
1
+/* pages/other/webviewInterior.wxss */

+ 2 - 2
pages/plan/setting.wxml

@@ -7,7 +7,7 @@
7 7
     <view class="panelItem1">日常练习方案</view>
8 8
     <view class="panelItem2 FlexRow">
9 9
       <view class="picker" wx:if="{{CardType==0}}">
10
-        首选
10
+        当前
11 11
       </view>
12 12
       <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
13 13
     </view>
@@ -19,7 +19,7 @@
19 19
     <view class="panelItem1">紧急练习方案</view>
20 20
     <view class="panelItem2 FlexRow">
21 21
       <view class="picker" wx:if="{{CardType==1}}">
22
-        首选
22
+        当前
23 23
       </view>
24 24
       <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
25 25
     </view>

+ 0 - 4
pages/plan/setting.wxss

@@ -1,7 +1,3 @@
1
-.study_plan_header{
2
-  width:100%;
3
-  height: 180rpx;
4
-}
5 1
 .panelTop{
6 2
   width:100%;
7 3
   justify-content: flex-start;

+ 3 - 3
pages/plan/sortRule.js

@@ -7,17 +7,17 @@ Page({
7 7
   data: {
8 8
     List: [
9 9
       {
10
-        Name: "自由安排",
10
+        Name: "智能规划",
11 11
         Remark: "对时间早晚没有要求,交由系统根据学习情况安排。",
12 12
         SelectedCSS: "",
13 13
       },
14 14
       {
15
-        Name: "优先安排到期时间较早的题卡",
15
+        Name: "最早优先",
16 16
         Remark: "想优先做完以往积压的题卡可选此项。从到期时间较早的往较近的安排题卡。",
17 17
         SelectedCSS: "",
18 18
       },
19 19
       {
20
-        Name: "优先安排到期时间较近的题卡",
20
+        Name: "今天优先",
21 21
         Remark: "想优先做完近期添加的,和最适合当天回想的知识可选此项。从到期时间较近的(如当日)往积压较早的安排题卡。",
22 22
         SelectedCSS: "",
23 23
       },

+ 72 - 71
pages/plan/studyplan.js

@@ -8,8 +8,21 @@ var cardNumberUrgent = 0;
8 8
 
9 9
 Page({
10 10
   data: {
11
-    IsChangeStudyPLan:false,
12
-    BtnArray: [{ Name: "日常练习", Selected: 1 }, { Name: "紧急练习", Selected: 0 }, { Name: "整体练习", Selected: 0 }],
11
+    IsChangeStudyPLan: false,
12
+    IsNullCard:false,
13
+    BtnArray: [{
14
+      Name: "日常练习",
15
+      Name2: "",
16
+      Selected: 1
17
+    }, {
18
+      Name: "紧急练习",
19
+      Name2: "",
20
+      Selected: 0
21
+    }, {
22
+      Name: "整体练习",
23
+      Name2: "串联将日常练习方案和紧急练习方案的任务量",
24
+      Selected: 0
25
+    }],
13 26
   },
14 27
   onPullDownRefresh: function () {
15 28
     var that = this;
@@ -20,14 +33,14 @@ Page({
20 33
   },
21 34
   onLoad: function (options) {
22 35
     var that = this;
23
-    
36
+
24 37
     that.setData({
25 38
       Containnerheight: main.getWindowHeight(),
26 39
     });
27 40
 
28 41
     that.init();
29 42
   },
30
-  onShow:function(){
43
+  onShow: function () {
31 44
     this.init();
32 45
   },
33 46
   init: function () {
@@ -47,97 +60,86 @@ Page({
47 60
     });
48 61
     var studyPlan = app.globalData.TaskToday;
49 62
     var taskNumber = studyPlan.ListNew.length + studyPlan.ListReview.length + studyPlan.ListHistory.length;
50
-    var progress=0;
51
-    if (studyPlan.AlreadyPracticeNumber + taskNumber>0)
52
-      progress = Math.round(100 * studyPlan.AlreadyPracticeNumber / (taskNumber+studyPlan.AlreadyPracticeNumber));
63
+    var progress = 0;
64
+    if (studyPlan.AlreadyPracticeNumber + taskNumber > 0)
65
+      progress = Math.round(100 * studyPlan.AlreadyPracticeNumber / (taskNumber + studyPlan.AlreadyPracticeNumber));
53 66
     that.setData({
54 67
       StudyPlan: studyPlan,
55 68
       TaskNumber: taskNumber,
56
-      Progress:progress,
69
+      Progress: progress,
57 70
     });
58 71
 
59
-    var backColor="#f0f0f0";
72
+    var backColor = "#f0f0f0";
60 73
 
61 74
     var rate = 0;
62
-    if (studyPlan.CommonNewLength>0 || studyPlan.CommonOldLength>0){
75
+    if (studyPlan.CommonNewLength > 0 || studyPlan.CommonOldLength > 0) {
63 76
       rate = studyPlan.CommonNewLength / (studyPlan.CommonNewLength + studyPlan.CommonOldLength);
64
-      backColor = "#00B6DD";
77
+      backColor = "#0094EE";
65 78
     }
66
-      
67
-    fanObj.init(that, rate, 100, 3.0, "#008CAA", backColor, studyPlan.CommonNewLength + studyPlan.CommonOldLength);
68
-    
79
+
80
+    fanObj.init(that, rate, 100, 3.0, "#00C4EE", backColor, null);
81
+
69 82
     var backColor2 = "#f0f0f0";
70 83
     var rate2 = 0;
71
-    if (studyPlan.UrgentNewLength>0 || studyPlan.UrgentOldLength>0){
84
+    if (studyPlan.UrgentNewLength > 0 || studyPlan.UrgentOldLength > 0) {
72 85
       rate2 = studyPlan.UrgentNewLength / (studyPlan.UrgentNewLength + studyPlan.UrgentOldLength);
73
-      backColor2 = "#FFCC00";
86
+      backColor2 = "#FF9900";
74 87
     }
75
-    fanObj.init2(that, rate2, 100, 3.0, "#DDB100", backColor2, studyPlan.UrgentNewLength + studyPlan.UrgentOldLength);
88
+    fanObj.init2(that, rate2, 100, 3.0, "#FFCC00", backColor2, null);
76 89
 
77 90
   },
78
-  btnSelected:function(e){
91
+  btnSelected: function (e) {
79 92
     var that = this;
80 93
     var id = e.currentTarget.dataset.id;
81 94
 
82
-    if (id!=that.data.CardType){
83
-      var oldName = "", newName = "";
84
-      for (var i = 0; i < that.data.BtnArray.length; i++) {
85
-        if (that.data.BtnArray[i].Selected == 1) {
86
-          oldName = that.data.BtnArray[i].Name;
87
-        }
88
-        if (id == i) {
89
-          newName = that.data.BtnArray[i].Name;
90
-        }
91
-      }
95
+    that.setData({
96
+      IsChangeStudyPLan: true,
97
+    });
92 98
 
93
-      if (((id == 1 || id == 2) && cardNumberUrgent == 0) || ((id == 0 || id == 2) && cardNumberCommon == 0)) {
94
-        if (cardNumberCommon == 0)
95
-          newName = "日常练习";
96
-        if (cardNumberUrgent == 0)
97
-          newName = "紧急练习";
99
+    wx.setNavigationBarColor({
100
+      frontColor: '#ffffff',
101
+      backgroundColor: '#0B8457',
102
+    });
103
+
104
+  },
105
+  changePlan: function (e) {
106
+    var that = this;
107
+    var id = e.currentTarget.dataset.id;
108
+
109
+    if (((id == 1 || id == 2) && cardNumberUrgent == 0) 
110
+    || ((id == 0 || id == 2) && cardNumberCommon == 0)) {
111
+      that.setData({
112
+        IsNullCard: true,
113
+        IsChangeStudyPLan: false,
114
+      });
115
+    } else {
116
+      if (id!=that.data.CardType){
98 117
         that.setData({
99
-          IsNullCard: true,
100
-          NewName: newName,
118
+          CardType: id,
101 119
         });
102
-      }
103
-      else {
104
-        that.setData({
105
-          IsChangeStudyPLan: true,
106
-          OldName: oldName,
107
-          NewName: newName,
108
-          NewCardType: id,
120
+        wx.setStorageSync("CardType", that.data.CardType);
121
+  
122
+        main.UploadUserConfig(function () {
123
+          main.getTaskTodayList(function (data) {
124
+            that.init();
125
+            that.close();
126
+          });
109 127
         });
110 128
       }
111
-
112
-      wx.setNavigationBarColor({
113
-        frontColor: '#ffffff',
114
-        backgroundColor: '#0B8457',
115
-      });
116
-    }
117
-  },
118
-  changePlan:function(){
119
-    var that=this;
120
-    that.setData({
121
-      CardType: that.data.NewCardType,
122
-    });
123
-    wx.setStorageSync("CardType", that.data.CardType);
124
-
125
-    main.UploadUserConfig(function(){
126
-      main.getTaskTodayList(function (data) {
127
-        that.init();
129
+      else{
128 130
         that.close();
129
-      });
130
-    });
131
+      }
132
+    }
131 133
   },
132
-  close:function(){
134
+  close: function () {
133 135
     var that = this;
134 136
     that.setData({
135 137
       IsChangeStudyPLan: false,
136 138
       IsNullCard: false,
137 139
     });
138 140
     wx.setNavigationBarColor({
139
-      frontColor: '#000000',
140
-      backgroundColor: '#ffffff',
141
+      frontColor: '#ffffff',
142
+      backgroundColor: '#274DAD',
141 143
     });
142 144
   },
143 145
   goto: function (e) {
@@ -146,7 +148,7 @@ Page({
146 148
       url: url,
147 149
     });
148 150
   },
149
-  gotoTaskList:function(e){
151
+  gotoTaskList: function (e) {
150 152
     wx.showLoading({
151 153
       title: '请稍候',
152 154
     });
@@ -156,7 +158,7 @@ Page({
156 158
 
157 159
     var that = this;
158 160
     //未练完的题卡
159
-    if (e.currentTarget.dataset.id==1){
161
+    if (e.currentTarget.dataset.id == 1) {
160 162
       main.getTaskTodayList(function (task) {
161 163
         var list = [];
162 164
         for (var i = 0; i < task.ListNew.length; i++) {
@@ -173,9 +175,8 @@ Page({
173 175
           url: '../main/searchCardList?type=1&Count=' + list.length,
174 176
         });
175 177
       });
176
-    }
177
-    else{
178
-      var url = 'GetMiaoguoCardList2?UserID=' + app.globalData.userInfo.UserID + "&IsToday=2&CardType="+that.data.CardType;
178
+    } else {
179
+      var url = 'GetMiaoguoCardList2?UserID=' + app.globalData.userInfo.UserID + "&IsToday=2&CardType=" + that.data.CardType;
179 180
       main.getData(url, function (data) {
180 181
         if (data) {
181 182
           var list = [];
@@ -192,7 +193,7 @@ Page({
192 193
         }
193 194
       });
194 195
     }
195
-    
196
+
196 197
   },
197 198
   onShareAppMessage: function () {
198 199
     return {
@@ -201,4 +202,4 @@ Page({
201 202
       imageUrl: app.globalData.ShareImage,
202 203
     }
203 204
   },
204
-})
205
+})

+ 3 - 0
pages/plan/studyplan.json

@@ -1,5 +1,8 @@
1 1
 {
2 2
   "navigationBarTitleText": "学习计划",
3
+  "navigationBarBackgroundColor": "#274DAD",
4
+  "navigationBarTextStyle": "white",
5
+  "backgroundColorTop": "#274DAD",
3 6
   "backgroundColorBottom": "#f0f0f0",
4 7
   "enablePullDownRefresh": true
5 8
 }

+ 230 - 196
pages/plan/studyplan.wxml

@@ -1,207 +1,241 @@
1 1
 <import src="../template/Fan.wxml" />
2 2
 
3 3
 <view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
4
-  <view class="panelTop FlexColumn">
5
-    <view class="panelTitle0 FlexRow">
6
-      <view class="panelTitle00">当前的学习计划</view>
7
-    </view>
8
-    <view class="panelButton FlexRow">
9
-      <view class="panelButton1{{BtnArray[0].Selected}} FlexRow" bindtap="btnSelected" data-id="0">
10
-        <view class="text1">{{BtnArray[0].Name}}</view>
11
-      </view>
12
-      <view class="line1"></view>
13
-      <view class="panelButton1{{BtnArray[1].Selected}} FlexRow" bindtap="btnSelected" data-id="1">
14
-        <view class="text1">{{BtnArray[1].Name}}</view>
15
-      </view>
16
-      <view class="line1"></view>
17
-      <view class="panelButton1{{BtnArray[2].Selected}} FlexRow" bindtap="btnSelected" data-id="2">
18
-        <view class="text1">{{BtnArray[2].Name}}</view>
19
-      </view>
20
-    </view>
21
-    <view class='lineFooter'></view>
22
-  </view>
23
-  <view class="line0 FlexRow">
24
-    <view class="spot">●</view>
25
-    <view class="spot">●</view>
26
-    <view class="spot">●</view>
27
-  </view>
28
-  <view class="line"></view>
29
-  <view class="panelTitle FlexRow">
30
-    <image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_data_black_30x32.png" />
31
-    <view class="panelTitle1">参考数据</view>
32
-  </view>
33
-  <view class="lineWidthAll FlexRow">
34
-    <view class="lineWidth690"></view>
35
-  </view>
36
-  <view class="panelItem FlexRow">
37
-    <view class="left FlexColumn">
38
-      <view class="text2">任务量</view>
39
-      <view class="text3">今天需要练习的题卡总数</view>
40
-    </view>
41
-    <view class="right FlexRow">
42
-      <view class="Number">{{TaskNumber}}</view>
43
-      <view class="text4">张</view>
44
-    </view>
45
-  </view>
46
-  <view class="lineWidthAll FlexRow">
47
-    <view class="lineWidth690"></view>
48
-  </view>
49
-  <view class="panelItem FlexColumn">
50
-    <view class="panelItem FlexRow">
51
-      <view class="text7">数量组成</view>
52
-    </view>
53
-    <view class="panelItem10 panelItem1 FlexRow">
54
-      <view class="panelItem11 FlexColumn" wx:if="{{CardType==0 || CardType==2}}">
55
-        <template class="fan" is="fanTemplate" data="{{Angle1,Angle2,BGColor,FanSize,FanScale,Color1,Color2,ShowNumber}}">
56
-        </template>
57
-        <view class="list FlexColumn">
58
-          <view class="item FlexRow">
59
-            <view class="block1 block"></view>
60
-            <view class="text6">新题卡</view>
61
-            <view class="Number1">{{StudyPlan.CommonNewLength}}</view>
62
-            <view class="text6">张</view>
63
-          </view>
64
-          <view class="item FlexRow">
65
-            <view class="block2 block"></view>
66
-            <view class="text6">旧题卡</view>
67
-            <view class="Number1">{{StudyPlan.CommonOldLength}}</view>
68
-            <view class="text6">张</view>
69
-          </view>
70
-        </view>
71
-      </view>
72
-      <view class="panelItem11 FlexColumn" wx:if="{{CardType==1 || CardType==2}}">
73
-        <template class="fan" is="fanTemplate2" data="{{Angle12,Angle22,BGColor2,FanSize2,FanScale2,Color12,Color22,ShowNumber2}}">
74
-        </template>
75
-        <view class="list FlexColumn">
76
-          <view class="item FlexRow">
77
-            <view class="block3 block"></view>
78
-            <view class="text6">新题卡</view>
79
-            <view class="Number1">{{StudyPlan.UrgentNewLength}}</view>
80
-            <view class="text6">张</view>
81
-          </view>
82
-          <view class="item FlexRow">
83
-            <view class="block4 block"></view>
84
-            <view class="text6">旧题卡</view>
85
-            <view class="Number1">{{StudyPlan.UrgentOldLength}}</view>
86
-            <view class="text6">张</view>
87
-          </view>
88
-        </view>
89
-      </view>
90
-    </view>
91
-    <block wx:if="{{StudyPlan.ListReview.length>0}}">
92
-      <view class="text5">其中还有</view>
93
-      <view class="panelItem13 FlexRow">
94
-        <view class="text6">上次练习未练完的题卡</view>
95
-        <view class="Number1">{{StudyPlan.ListReview.length}}</view>
96
-        <view class="text6">张</view>
97
-      </view>
98
-    </block>
99
-    <view style="width:100%;height:42rpx;" wx:if="{{StudyPlan.ListReview.length==0}}"></view>
100
-  </view>
101
-  <view class="lineWidthAll FlexRow">
102
-    <view class="lineWidth690"></view>
103
-  </view>
104
-  <view class="panelItem FlexRow">
105
-    <view class="panelItem2 FlexColumn">
106
-      <view class="panelItem21 FlexRow">
107
-        <view class="text21">预计回想</view>
108
-        <view class="right FlexRow">
109
-          <view class="Number2">{{StudyPlan.PracticeNumber}}</view>
110
-          <view class="text6">次</view>
111
-        </view>
112
-      </view>
113
-      <view class="text22">新题卡需回想两次</view>
114
-    </view>
115
-    <view class="panelItem2 FlexColumn">
116
-      <view class="panelItem21 FlexRow">
117
-        <view class="text21">预计用时</view>
118
-        <view class="right FlexRow">
119
-          <view class="Number2">{{StudyPlan.PracticeTime}}</view>
120
-          <view class="text6">分钟</view>
121
-        </view>
122
-      </view>
123
-      <view class="text22">根据近期估算参考</view>
124
-    </view>
125
-  </view>
126
-  <view class="lineWidthAll FlexRow">
127
-    <view class="lineWidth750"></view>
128
-  </view>
129
-  <view class="panelItem FlexRow">
130
-    <view class="panelItem4 FlexRow" bindtap="gotoTaskList" data-id="1">
131
-      <view class="text8">未练完的题卡</view>
132
-    </view>
133
-  </view>
134
-  <view class='lineFooter'></view>
135
-  <view class="line"></view>
136
-  <view class="panelTitle FlexRow">
137
-    <image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_done_black_30x32.png" />
138
-    <view class="panelTitle1">完成情况</view>
139
-  </view>
140
-  <view class="lineWidthAll FlexRow">
141
-    <view class="lineWidth690"></view>
142
-  </view>
143
-  <view class="panelItem FlexColumn">
144
-    <view class="panelItem FlexRow">
145
-      <view class="text7">当日练完</view>
146
-      <view class="right FlexRow">
147
-        <view class="Number2">{{StudyPlan.AlreadyPracticeNumber}}</view>
148
-        <view class="text6">张</view>
149
-      </view>
150
-    </view>
151
-    <view class="panelItem1 FlexRow">
152
-      <view class="progress">
153
-        <view class="progress1" style="width:{{Progress}}%;"></view>
154
-      </view>
155
-    </view>
156
-    <view class="panelItem FlexRow">
157
-      <view class="text71">进度</view>
158
-      <view class="right FlexRow">
159
-        <view class="Number4">{{Progress}}%</view>
160
-      </view>
161
-    </view>
162
-  </view>
163 4
 
164
-  <view class="lineWidthAll FlexRow">
165
-    <view class="lineWidth750"></view>
166
-  </view>
167
-  <view class="panelItem FlexRow">
168
-    <view class="panelItem4 FlexRow" bindtap="gotoTaskList" data-id="2">
169
-      <view class="text8">练完的题卡</view>
170
-    </view>
171
-  </view>
172
-  <view class='lineFooter'></view>
173
-  <view class="panelFooter FlexRow">
174
-    <view class="btnChange" bindtap="goto" data-url="./setting">设置学习计划</view>
175
-  </view>
5
+	<view class="panelTop FlexColumn">
6
+		<image wx:if="{{BtnArray[0].Selected==1}}" class="study_index_usually" src="../images/study_index_usually.png" bindtap="btnSelected" data-id="0"></image>
7
+		<image wx:if="{{BtnArray[1].Selected==1}}" class="study_index_usually" src="../images/study_index_urgency.png" bindtap="btnSelected" data-id="1"></image>
8
+		<image wx:if="{{BtnArray[2].Selected==1}}" class="study_index_usually" src="../images/study_index_overall.png" bindtap="btnSelected" data-id="2"></image>
9
+
10
+		<image class="study_plan_header" src="../images/study_plan_header.png"></image>
11
+		<view class='lineFooter'></view>
12
+	</view>
13
+
14
+	<view class="panelButtonTop FlexRow">
15
+		<view class="btnChange FlexRow" bindtap="goto" data-url="./setting">
16
+			<image class="universalpic_setup_black_30x30" src="../images/universalpic_setup_black_30x30.png" />
17
+			<view>设置学习计划</view>
18
+		</view>
19
+	</view>
20
+	<view class="panelTitle FlexRow">
21
+		<image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_data_black_30x32.png" />
22
+		<view class="panelTitle1">参考数据</view>
23
+	</view>
24
+	<view class="lineWidthAll FlexRow">
25
+		<view class="lineWidth690"></view>
26
+	</view>
27
+	<view class="panelItem FlexRow">
28
+		<view class="left FlexColumn">
29
+			<view class="text2">任务量</view>
30
+			<view class="text3">今天需要练习的题卡总数</view>
31
+		</view>
32
+		<view class="right FlexRow">
33
+			<view class="Number">{{TaskNumber}}</view>
34
+			<view class="text4">张</view>
35
+		</view>
36
+	</view>
37
+	<view class="lineWidthAll FlexRow">
38
+		<view class="lineWidth690"></view>
39
+	</view>
40
+	<view class="panelItem FlexColumn">
41
+		<view class="panelItem FlexRow">
42
+			<view class="text7">数量组成</view>
43
+		</view>
44
+		<view class="panelItem10 panelItem1 FlexRow">
45
+			<view class="panelItem11 FlexRow" wx:if="{{CardType==0 || CardType==2}}">
46
+				<view class="Null1" wx:if="{{CardType<2}}"></view>
47
+				<template class="fan" is="fanTemplate" data="{{Angle1,Angle2,BGColor,FanSize,FanScale,Color1,Color2,ShowNumber}}">
48
+				</template>
49
+				<view class="Null2" wx:if="{{CardType<2}}"></view>
50
+				<view class="list FlexColumn">
51
+					<block wx:if="{{CardType==2}}">
52
+						<view class="item FlexRow">
53
+							<view class="text6">日常题卡</view>
54
+						</view>
55
+						<view class="item FlexRow">
56
+							<view class="Number2">{{StudyPlan.CommonNewLength+StudyPlan.CommonOldLength}}</view>
57
+							<view class="text6">张</view>
58
+						</view>
59
+					</block>
60
+					<view class="item2 item FlexRow">
61
+						<view class="block1 block"></view>
62
+						<view class="text6">新题卡</view>
63
+						<view class="Number1">{{StudyPlan.CommonNewLength}}</view>
64
+					</view>
65
+					<view class="item FlexRow">
66
+						<view class="block2 block"></view>
67
+						<view class="text6">旧题卡</view>
68
+						<view class="Number1">{{StudyPlan.CommonOldLength}}</view>
69
+					</view>
70
+				</view>
71
+			</view>
72
+			<view class="panelItem11 FlexRow" wx:if="{{CardType==1 || CardType==2}}">
73
+				<template class="fan" is="fanTemplate2" data="{{Angle12,Angle22,BGColor2,FanSize2,FanScale2,Color12,Color22,ShowNumber2}}">
74
+				</template>
75
+				<view class="list FlexColumn">
76
+					<block wx:if="{{CardType==2}}">
77
+						<view class="item FlexRow">
78
+							<view class="text6">紧急题卡</view>
79
+						</view>
80
+						<view class="item FlexRow">
81
+							<view class="Number2">{{StudyPlan.UrgentNewLength+StudyPlan.UrgentOldLength}}</view>
82
+							<view class="text6">张</view>
83
+						</view>
84
+					</block>
85
+					<view class="item2 item FlexRow">
86
+						<view class="block3 block"></view>
87
+						<view class="text6">新题卡</view>
88
+						<view class="Number1">{{StudyPlan.UrgentNewLength}}</view>
89
+					</view>
90
+					<view class="item FlexRow">
91
+						<view class="block4 block"></view>
92
+						<view class="text6">旧题卡</view>
93
+						<view class="Number1">{{StudyPlan.UrgentOldLength}}</view>
94
+					</view>
95
+				</view>
96
+			</view>
97
+		</view>
98
+	</view>
99
+	<view class="lineWidthAll FlexRow">
100
+		<view class="lineWidth690"></view>
101
+	</view>
102
+	<block wx:if="{{StudyPlan.ListReview.length>0}}">
103
+		<view class="panelItem FlexColumn">
104
+			<view class="panelItem21 FlexRow">
105
+				<view class="text21">补习题卡</view>
106
+				<view class="right FlexRow">
107
+					<view class="Number2">{{StudyPlan.ListReview.length}}</view>
108
+					<view class="text6">张</view>
109
+				</view>
110
+			</view>
111
+			<view class="text22">上次练习未练完的题卡,包含在今天任务量内</view>
112
+
113
+		</view>
114
+		<view class="lineWidthAll FlexRow">
115
+			<view class="lineWidth690"></view>
116
+		</view>
117
+	</block>
118
+	<view class="panelItem FlexRow">
119
+		<view class="panelItem2 FlexColumn">
120
+			<view class="panelItem21 FlexRow">
121
+				<view class="text21">预计回想</view>
122
+				<view class="right FlexRow">
123
+					<view class="Number2">{{StudyPlan.PracticeNumber}}</view>
124
+					<view class="text6">次</view>
125
+				</view>
126
+			</view>
127
+			<view class="text22">新题卡需回想两次</view>
128
+		</view>
129
+		<view class="panelItem2 FlexColumn">
130
+			<view class="panelItem21 FlexRow">
131
+				<view class="text21">预计用时</view>
132
+				<view class="right FlexRow">
133
+					<view class="Number2">{{StudyPlan.PracticeTime}}</view>
134
+					<view class="text6">分钟</view>
135
+				</view>
136
+			</view>
137
+			<view class="text22">根据近期估算参考</view>
138
+		</view>
139
+	</view>
140
+	<view class="lineWidthAll FlexRow">
141
+		<view class="lineWidth750"></view>
142
+	</view>
143
+	<view class="panelItem FlexRow">
144
+		<view class="panelItem4 FlexRow" bindtap="gotoTaskList" data-id="1">
145
+			<view class="text8">未练完的题卡</view>
146
+		</view>
147
+	</view>
148
+	<view class='lineFooter'></view>
149
+	<view class="line"></view>
150
+	<view class="panelTitle FlexRow">
151
+		<image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_done_black_30x32.png" />
152
+		<view class="panelTitle1">完成情况</view>
153
+	</view>
154
+	<view class="lineWidthAll FlexRow">
155
+		<view class="lineWidth690"></view>
156
+	</view>
157
+	<view class="panelItem FlexColumn">
158
+		<view class="panelItem FlexRow">
159
+			<view class="text7">当日练完</view>
160
+			<view class="right FlexRow">
161
+				<view class="Number2">{{StudyPlan.AlreadyPracticeNumber}}</view>
162
+				<view class="text6">张</view>
163
+			</view>
164
+		</view>
165
+		<view class="panelItem1 FlexRow">
166
+			<view class="progress">
167
+				<view class="progress1" style="width:{{Progress}}%;"></view>
168
+			</view>
169
+		</view>
170
+		<view class="panelItem FlexRow">
171
+			<view class="text71">进度</view>
172
+			<view class="right FlexRow">
173
+				<view class="Number4">{{Progress}}%</view>
174
+			</view>
175
+		</view>
176
+	</view>
177
+
178
+	<view class="lineWidthAll FlexRow">
179
+		<view class="lineWidth750"></view>
180
+	</view>
181
+	<view class="panelItem FlexRow">
182
+		<view class="panelItem4 FlexRow" bindtap="gotoTaskList" data-id="2">
183
+			<view class="text8">练完的题卡</view>
184
+		</view>
185
+	</view>
186
+	<view class='lineFooter'></view>
187
+	<view class="line"></view>
176 188
 </view>
177 189
 
178 190
 <view wx:if="{{IsNullCard}}" class="TempContainer container FlexColumn" style='height:{{Containnerheight}}rpx;'>
179
-  <image class="Avatar" src='../images/universalpic_logo_200x200.png' />
180
-  <text class='RemindText'>没有题卡不能使用</text>
181
-  <text class='RemindText2'>{{NewName}}方案中没有题卡,\n请登录官网为方案增添题卡后再试。</text>
182
-  <text class='RemindText3' catchtap="goto" data-url="../other/help?id=0&idchild=1">秒过官网地址</text>
183
-  <view class='btn1' catchtap="close">知道了</view>
184
-  <text class='RemindText5 RemindText4'>功能说明</text>
185
-  <text class='RemindText4' space="ensp">∙ 初次使用前,请先登录官网为方案增添一些题卡。</text>
186
-  <text class='RemindText4' space="ensp">∙ 整体练习融合了日常练习和紧急练习,需要两个方案都\n  有题卡才能使用。</text>
187
-  <text class='RemindText4' space="ensp">∙ 日常、紧急练习方案的任务量是各自独立的,请在学习\n  计划页面底部点击“设置学习计划”进行配置。</text>
191
+
192
+	<image class="Avatar" src='../images/universalpic_logo_200x200.png' />
193
+	<text class='RemindText'>没有题卡不能使用</text>
194
+	<text class='RemindText2'>该练习方案中没有题卡,请增添题卡后再试。</text>
195
+	<view class="RemindLine"></view>
196
+	<text class='RemindText3'>解决办法</text>
197
+	<text class='RemindText4' space="ensp">小程序、官网均可新建紧急练习题卡(新题卡默认为日常练习),相比之下官网建卡更有效率,网址如下帮助。\n\n“整体练习”要求日常、紧急练习中都有题卡才能使用。</text>
198
+	<view class="RemindLine"></view>
199
+	<view class="RemindButton00 FlexRow" catchtap="goto" data-url="../other/help?id=0&idchild=1">
200
+		<view class="FlexRow">
201
+			<image class="universalpic_tips_green_70x70" src='../images/universalpic_tips_green_70x70.png' />
202
+			<view class='RemindButton001 FlexColumn'>
203
+				<view class='RemindButton11'>秒过官网地址</view>
204
+				<view class='RemindButton120 RemindButton12'>以及Google Chrome浏览器安装步骤</view>
205
+			</view>
206
+		</view>
207
+		<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
208
+	</view>
209
+	<view class="RemindLine"></view>
210
+
211
+	<view class="footer FlexRow" catchtap="close">
212
+		知道了
213
+	</view>
188 214
 </view>
189 215
 
190 216
 <view wx:if="{{IsChangeStudyPLan}}" class="TempContainer container FlexColumn" style='height:{{Containnerheight}}rpx;'>
191
-  <image class="Avatar" src='../images/universalpic_logo_200x200.png' />
192
-  <text class='RemindText'>首选变更</text>
193
-  <text class='RemindText2 FlexRow'>
194
-  <text>要从</text>
195
-  <text class="color2">{{OldName}}</text>
196
-  <text>更改为</text>
197
-  <text class="color2">{{NewName}}</text>
198
-  <text>吗?</text>
199
-  </text>
200
-  <view class="FlexRow">
201
-    <view class='btn2 btn1' catchtap="close">取消</view>
202
-    <view class='btn2 btn1' catchtap="changePlan">确定</view>
203
-  </view>
204
-  <text class='RemindText5 RemindText4'>变更后,会发生什么</text>
205
-  <text class='RemindText4' space="ensp">∙ 重新规划学习计划并刷新首页大数字;请回到首页重新\n  开始今天的练习。</text>
206
-  <text class='RemindText4' space="ensp">∙ 系统将保存最终设定作为学习计划的首选模式,下次练\n  习不用重复更改。</text>
217
+	<image class="Avatar" src='../images/universalpic_logo_200x200.png' />
218
+	<text class='RemindText'>启用哪种学习计划?</text>
219
+
220
+	<block wx:for="{{BtnArray}}" wx:key="index">
221
+		<view class="RemindLine"></view>
222
+		<view class="RemindButton FlexColumn" catchtap="changePlan" data-id="{{index}}">
223
+			<view class='RemindButton1 FlexRow'>
224
+				<view class="RemindButton10 FlexRow">
225
+					<view wx:if="{{item.Selected==1}}" class='RemindButton0'>当前</view>
226
+					<image wx:if="{{item.Selected==0}}" class="universalpic_setup_green_30x30" src='../images/universalpic_setup_green_30x30.png' />
227
+				</view>
228
+				<view class='RemindButton11'>{{item.Name}}</view>
229
+			</view>
230
+			<view class='RemindButton12' wx:if="{{item.Name2}}">{{item.Name2}}</view>
231
+			<view class='RemindButton13'></view>
232
+		</view>
233
+	</block>
234
+	<view class="RemindLine"></view>
235
+	<text class='RemindText3'>切换后您将看到</text>
236
+	<text class='RemindText4' space="ensp">重新规划今天的任务量。首页、学习计划的参考数据将被更新。请回到首页,重新开始今天的练习(不管之前有无练习)。系统会保存本次选择,无须重复切换。\n\n日常练习、紧急练习的任务量设置是各自独立的。</text>
237
+
238
+	<view class="footer FlexRow" catchtap="close">
239
+		取消
240
+	</view>
207 241
 </view>

+ 172 - 84
pages/plan/studyplan.wxss

@@ -2,6 +2,7 @@
2 2
 
3 3
 .container{
4 4
   font-size:28rpx;
5
+  color:#4D4D4D;
5 6
 }
6 7
 
7 8
 .lineWidthAll{
@@ -9,16 +10,26 @@
9 10
 }
10 11
 
11 12
 .panelTop{
12
-  position: fixed;
13
-  top:0;
14 13
   width:100%;
15 14
   z-index: 100;
15
+  background-color: #274DAD;
16
+  justify-content: flex-end;
17
+}
18
+
19
+.study_index_usually{
20
+  margin-top: 20rpx;
21
+  width:476rpx;
22
+  height:152rpx;
23
+}
24
+.study_plan_header{
25
+  width:100%;
26
+  height:84rpx;
16 27
 }
17 28
 
18 29
 .line0{
19 30
   width:100%;
20
-  height:217rpx;
21
-  background-color: #fff;
31
+  height:260rpx;
32
+  background-color: #F0F0F0;
22 33
   align-items: flex-end;
23 34
 }
24 35
 .spot{
@@ -29,10 +40,34 @@
29 40
 }
30 41
 .line{
31 42
   width:100%;
32
-  height:30rpx;
43
+  height:20rpx;
44
+  background-color: #F0F0F0;
45
+}
46
+
47
+.panelButtonTop{
48
+  width:100%;
33 49
   background-color: #F0F0F0;
34 50
 }
35 51
 
52
+.btnChange{
53
+  width:710rpx;
54
+  height:100rpx;
55
+  border-radius: 20rpx;
56
+  color: #1e1e1e;
57
+  background-color: #fff;
58
+  line-height: 100rpx;
59
+  font-size:28rpx;
60
+  text-align: center;
61
+  margin: 20rpx 0;
62
+  font-weight: 400;
63
+}
64
+
65
+.universalpic_setup_black_30x30{
66
+  width:30rpx;
67
+  height:30rpx;
68
+  margin-right: 20rpx;
69
+}
70
+
36 71
 .panelTitle{
37 72
   width:100%;
38 73
   justify-content: flex-start;
@@ -60,7 +95,6 @@
60 95
 
61 96
 .panelTitle1{
62 97
   margin-left: 20rpx;
63
-  color:#4D4D4D;
64 98
 }
65 99
 
66 100
 .panelButton{
@@ -77,7 +111,6 @@
77 111
   border-radius: 0rpx;
78 112
   margin-bottom: 30rpx;
79 113
   font-size:32rpx;
80
-  color:#4D4D4D;
81 114
 }
82 115
 
83 116
 .panelButton11{
@@ -141,7 +174,6 @@
141 174
   font-size: 20rpx;
142 175
   margin-bottom: -20rpx;
143 176
   margin-left:4rpx; 
144
-  color:#4D4D4D;
145 177
 }
146 178
 
147 179
 .panelItem1{
@@ -152,11 +184,13 @@
152 184
 .panelItem10{
153 185
   width:100%;
154 186
   justify-content: space-around;
187
+  margin-bottom: 40rpx;
155 188
 }
156 189
 
157 190
 .panelItem11{
158
-  width:230rpx;
159
-  height:219rpx;
191
+  justify-content: space-between;
192
+  align-items: flex-start;
193
+  margin-top: 10rpx;
160 194
 }
161 195
 
162 196
 .line2{
@@ -182,7 +216,12 @@
182 216
   font-family: Roboto-Black;
183 217
 }
184 218
 
185
-
219
+.Null1{
220
+  width:300rpx;
221
+}
222
+.Null2{
223
+  width:125rpx;
224
+}
186 225
 .fan{
187 226
   width:100rpx;
188 227
   height:100rpx;
@@ -196,47 +235,39 @@
196 235
 
197 236
 .text5{
198 237
   font-size:24rpx;
199
-  color:#4D4D4D;
200 238
 }
201 239
 
202 240
 .list{
203
-  align-items: flex-start;
204
-  margin-top:20rpx;
241
+  align-items: flex-end;
242
+  margin-left: 25rpx;
205 243
 }
206 244
 
207 245
 .item{
208 246
   width:100%;
209
-  justify-content: flex-start;
247
+  justify-content: flex-end;
248
+}
249
+
250
+.item2{
251
+  margin-top: 10rpx;
210 252
 }
211 253
 
212 254
 .block{
213
-  width:10rpx;
214
-  height:10rpx;
255
+  width:16rpx;
256
+  height:16rpx;
215 257
   margin-right: 10rpx;
258
+  border-radius: 4rpx;
216 259
 }
217 260
 .block1{
218
-  background-color: #008CAA;
219
-  border:1rpx solid #016175;
261
+  background-color: #00C4EE;
220 262
 }
221 263
 .block2{
222
-  background-color: #00B6DD;
223
-  border:1rpx solid #00829E;
264
+  background-color: #0094EE;
224 265
 }
225 266
 .block3{
226
-  background-color: #DDB100;
227
-  border:1rpx solid #9D7E01;
267
+  background-color: #FFCC00;
228 268
 }
229 269
 .block4{
230
-  background-color: #FFCC03;
231
-  border:1rpx solid #AE8B00;
232
-}
233
-.block5{
234
-  background-color: #FF8C83;
235
-  border:1rpx solid #BF524A;
236
-}
237
-.block6{
238
-  background-color: #fff;
239
-  border:1rpx solid #fff;
270
+  background-color: #FF9900;
240 271
 }
241 272
 .Number1{
242 273
   font-size: 24rpx;
@@ -269,6 +300,7 @@
269 300
   font-size:20rpx;
270 301
   color:#787878;
271 302
   margin: 4rpx 0 30rpx 30rpx;
303
+  align-self: flex-start;
272 304
 }
273 305
 
274 306
 .panelItem3{
@@ -320,7 +352,7 @@
320 352
 }
321 353
 
322 354
 .text8{
323
-  font-size: 24rpx;
355
+  font-size: 28rpx;
324 356
   color:#0071EF;
325 357
 }
326 358
 
@@ -330,23 +362,6 @@
330 362
   background-color: #D2D2D2;
331 363
 }
332 364
 
333
-.panelFooter{
334
-  width:100%;
335
-  height:210rpx;
336
-  background-color: #F0F0F0;
337
-}
338
-
339
-.btnChange{
340
-  width:710rpx;
341
-  height:110rpx;
342
-  border-radius: 20rpx;
343
-  border:1rpx solid #787878;
344
-  color: #1e1e1e;
345
-  background-color: #fff;
346
-  line-height: 110rpx;
347
-  font-size:36rpx;
348
-  text-align: center;
349
-}
350 365
 
351 366
 /* 临时页面 */
352 367
 
@@ -357,54 +372,127 @@
357 372
   z-index: 100;
358 373
 }
359 374
 .TempContainer .Avatar{
360
-  width:200rpx;
361
-  height:200rpx;
362
-  margin-top: 150rpx;
375
+  width:160rpx;
376
+  height:160rpx;
377
+  margin-top: 100rpx;
363 378
   border-radius: 50%;
364 379
 }
365 380
 .TempContainer .RemindText{
366
-  font-size:54rpx;
367
-  color:#fff;
368
-  margin-top: 170rpx;
381
+  font-size:36rpx;
382
+  color:#F0F0F0;
383
+  margin-top: 60rpx;
369 384
   text-align: center;
385
+  margin-bottom: 60rpx;
370 386
 }
387
+
388
+
371 389
 .TempContainer .RemindText2{
372
-  font-size:32rpx;
373
-  color:#fff;
374
-  text-align: center;
390
+  font-size:24rpx;
391
+  color:#F0F0F0;
392
+  width:670rpx;
393
+  margin-top: -30rpx;
394
+  margin-bottom: 60rpx;
375 395
 }
376
-.TempContainer .RemindText3{
377
-  font-size:28rpx;
378
-  color:#B6F57F;
379
-  text-decoration: underline;
380
-  margin-top: 40rpx;
396
+
397
+.universalpic_setup_green_30x30{
398
+  width:30rpx;
399
+  height:30rpx;
400
+  margin:0 0 0 90rpx;
381 401
 }
382
-.TempContainer .btn1{
383
-  font-size:36rpx;
384
-  color:#fff;
385
-  margin-top: 40rpx;
386
-  border:1rpx solid #fff;
402
+.universalpic_tips_green_70x70{
403
+  width:70rpx;
404
+  height:70rpx;
405
+  margin:0 30rpx 0 40rpx;
406
+}
407
+
408
+.TempContainer .RemindButton{
409
+  width:100%;
410
+  align-items: flex-start;
411
+}
412
+
413
+.TempContainer .RemindButton00{
414
+  justify-content: space-between;
415
+  width:100%;
416
+  height:134rpx;
417
+}
418
+
419
+.TempContainer .RemindButton001{
420
+  align-items: flex-start;
421
+}
422
+
423
+.Arrow{
424
+  width:16rpx;
425
+  height:26rpx;
426
+  margin-right: 30rpx;
427
+}
428
+
429
+
430
+.TempContainer .RemindButton0{
431
+  width:80rpx;
432
+  height:40rpx;
387 433
   text-align: center;
388
-  width:600rpx;
389
-  line-height: 90rpx;
390
-  border-radius: 14rpx;
434
+  color:#1e1e1e;
435
+  line-height: 40rpx;
436
+  border-radius: 20rpx;
437
+  background-color: #19C575;
438
+  margin-left: 40rpx;
439
+  font-size:20rpx;
391 440
 }
392 441
 
393
-.TempContainer .RemindText4{
394
-  font-size:24rpx;
442
+.TempContainer .RemindButton1{
443
+  justify-content: flex-start;
444
+  margin: 30rpx 0 0 0;
445
+}
446
+
447
+.TempContainer .RemindButton10{
448
+  width:140rpx;
449
+}
450
+
451
+.TempContainer .RemindButton11{
452
+  font-size:28rpx;
395 453
   color:#fff;
396
-  width:620rpx;
454
+}
455
+.TempContainer .RemindButton12{
456
+  font-size:20rpx;
457
+  color:#D2D2D2;
458
+  margin-left: 140rpx;
459
+}
460
+.TempContainer .RemindButton120{
461
+  margin-left: 0rpx;
462
+}
463
+.TempContainer .RemindButton13{
464
+  height:30rpx;
397 465
 }
398 466
 
399
-.TempContainer .RemindText5{
400
-  margin-top: 60rpx;
467
+.TempContainer .RemindLine{
468
+  width:100%;
469
+  height:1rpx;
470
+  background-color:rgba(0,0,0,0.25);
471
+}
472
+
473
+.TempContainer .RemindText3{
474
+  font-size:24rpx;
475
+  color:#D2D2D2;
476
+  width:670rpx;
477
+  margin-top: 31rpx;
401 478
 }
402 479
 
403
-.TempContainer .color2{
404
-  color:#B6F57F;
480
+.TempContainer .RemindText4{
481
+  font-size:20rpx;
482
+  color:#D2D2D2;
483
+  width:670rpx;
484
+  margin-top: 20rpx;
485
+  margin-bottom: 30rpx;
405 486
 }
406 487
 
407
-.TempContainer .btn2{
408
-  width:290rpx;
409
-  margin: 60rpx 15rpx 0 15rpx;
410
-}
488
+.TempContainer .footer{
489
+  font-size:28rpx;
490
+  color:#fff;
491
+  border-top:1rpx solid rgba(0,0,0,0.25);
492
+  text-align: center;
493
+  width:100%;
494
+  height: 100rpx;
495
+  line-height: 100rpx;
496
+  position: fixed;
497
+  bottom: 0;
498
+}

+ 14 - 7
pages/plan/studyplandetail.js

@@ -64,7 +64,7 @@ Page({
64 64
 
65 65
         if (that.data.CardType == 0) {
66 66
           if (info.CardNumber > 0) {
67
-            limitNumber = data.NewCardNumber + data.LimitCardNumber;
67
+            limitNumber = data.NewLimitTimeToday + data.HistoryLimitTimeToday;
68 68
             cardTotal = info.CardNumberCommon;
69 69
             if (cardTotal>0)
70 70
               rate = limitNumber / cardTotal;
@@ -74,7 +74,7 @@ Page({
74 74
         }
75 75
         else if (that.data.CardType == 1) {
76 76
           if (info.CardNumber > 0) {
77
-            limitNumber = data.NewCardNumber + data.LimitCardNumber;
77
+            limitNumber = data.NewLimitTimeToday + data.HistoryLimitTimeToday;
78 78
             cardTotal = info.CardNumberUrgent;
79 79
             if (cardTotal>0)
80 80
               rate = limitNumber / cardTotal;
@@ -85,16 +85,23 @@ Page({
85 85
             title: "紧急练习方案"
86 86
           });
87 87
         }
88
-        fanObj.init(that, rate, 100, 3.0, "#FF8C83", "#f0f0f0", limitNumber);
88
+        fanObj.init(that, rate, 100, 3.0, "#FE6659", "#FFC1A8", null);
89 89
 
90 90
 
91 91
         that.setData({
92 92
           LimitCardNumber:limitNumber,
93 93
           CardNumberCurrent: cardTotal,
94
-          NewCardNumber: data.NewCardNumber,
95
-          NewCardNumberToday: data.NewCardNumberToday,
96
-          HistoryCardNumber: data.LimitCardNumber,
97
-          HistoryCardNumberToday: data.LimitCardNumberToday,
94
+          
95
+          NewCardAll: data.NewCardAll,
96
+          HistoryCardAll: data.HistoryCardAll,
97
+          
98
+          NewToday: data.NewToday,
99
+          
100
+          NewLimitTimeToday: data.NewLimitTimeToday,
101
+          HistoryLimitTimeToday: data.HistoryLimitTimeToday,
102
+          
103
+          NewCardNumberAndLimitToday: data.NewCardNumberAndLimitToday,
104
+          HistoryCardNumberAndLimitToday: data.HistoryCardNumberAndLimitToday,
98 105
         });
99 106
       }
100 107
     });

+ 167 - 157
pages/plan/studyplandetail.wxml

@@ -1,171 +1,181 @@
1 1
 <import src="../template/Fan.wxml" />
2 2
 
3 3
 <view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
4
-  <view class="line"></view>
5
-  <view class="panelTitle FlexRow">
6
-    <image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_data_black_30x32.png" />
7
-    <view class="panelTitle1">参考数据</view>
8
-  </view>
9
-  <view class="lineWidthAll1 FlexRow">
10
-    <view class="lineWidth690"></view>
11
-  </view>
12
-  <view class="panelItem FlexRow">
13
-    <view class="panelItem1 FlexColumn">
14
-      <template class="fan" is="fanTemplate" data="{{Angle1,Angle2,BGColor,FanSize,FanScale,Color1,Color2,ShowNumber}}">
15
-      </template>
16
-      <view class="list FlexColumn">
17
-        <view class="item FlexRow">
18
-          <view class="block1 block"></view>
19
-          <view class="text6">已到期题卡</view>
20
-          <view class="Number1">{{LimitCardNumber}}</view>
21
-          <view class="text6">张</view>
22
-        </view>
23
-        <view class="item FlexRow">
24
-          <view class="block2 block"></view>
25
-          <view class="text6">方案有题卡</view>
26
-          <view class="Number1">{{CardNumberCurrent}}</view>
27
-          <view class="text6">张</view>
28
-        </view>
29
-        <view class="item FlexRow">
30
-          <view class="block"></view>
31
-          <view class="text6">其中今天新建</view>
32
-          <view class="Number1">{{NewCardNumberToday}}</view>
33
-          <view class="text6">张</view>
34
-        </view>
35
-      </view>
36
-      <view class="cardFull" wx:if="{{CardType==1 && CardNumberCurrent>=200}}">容量已满</view>
37
-      
38
-    </view>
39
-    <view class="line2"></view>
40
-    <view class="panelItem1 FlexColumn">
41
-      <view class="panelItem11 FlexColumn">
42
-        <view class="list1 list FlexColumn">
43
-          <view class="item FlexRow">
44
-            <view class="text6">已到期</view>
45
-            <view style="width:10rpx"></view>
46
-            <view class="text6">新</view>
47
-            <view class="Number1">{{NewCardNumber}}</view>
48
-            <view class="text6">张</view>
49
-            <view style="width:10rpx"></view>
50
-            <view class="text6"> 旧</view>
51
-            <view class="Number1">{{HistoryCardNumber}}</view>
52
-            <view class="text6">张</view>
53
-          </view>
54
-          <view class="item FlexRow">
55
-            <text class="text9">到期数量较多时请调整任务限量</text>
56
-          </view>
57
-          <view class="item FlexRow">
58
-            <text class="text9">限制当天需要练习的题卡数</text>
59
-          </view>
60
-        </view>
61
-      </view>
62
-      <view class="panelItem12 panelItem11 FlexColumn">
63
-        <view class="list1 list FlexColumn" wx:if="{{CardType==0}}">
64
-          <view class="item FlexRow">
65
-            <view class="text6">其中今天到期</view>
66
-          </view>
67
-          <view class="item FlexRow">
68
-            <view class="text6">新</view>
69
-            <view class="Number1">{{NewCardNumberToday}}</view>
70
-            <view class="text6">张</view>
71
-            <view style="width:10rpx"></view>
72
-            <view class="text6">旧</view>
73
-            <view class="Number1">{{HistoryCardNumberToday}}</view>
74
-            <view class="text6">张</view>
75
-          </view>
76
-          <view class="item FlexRow">
77
-            <text class="text9">该数量较多时可调整选取规则</text>
78
-          </view>
79
-        </view>
80
-
81
-        <view class="list1 list FlexColumn" wx:if="{{CardType==1}}">
82
-          <view class="item FlexRow">
83
-            <view class="text6">本方案最多容纳</view>
84
-            <view class="Number11 Number1">200</view>
85
-            <view class="text6">张</view>
86
-          </view>
87
-          <view class="item FlexRow">
88
-            <text class="text9">使用过程中请适当调配题卡</text>
89
-          </view>
90
-          <view class="item FlexRow">
91
-            <text class="text9">于官网操作更便捷</text>
92
-          </view>
93
-        </view>
94
-      </view>
95
-    </view>
96
-  </view>
97
-  <view class='lineFooter'></view>
98
-  <view class="line"></view>
99
-
100
-  <view class="panelTitle3 FlexRow">
101
-    <view class="left">任务限制</view>
102
-    <view class="right"></view>
103
-  </view>
104
-  
105
-  <picker class="panelItem0" bindchange="bindUpdateCardNumberNewMax" value="{{CardMaxNumberNewIndex}}" range="{{CardNumberNew}}">
106
-		<view class="panelItem FlexRow">
107
-			<view class="panelItem3">新题卡数量上限</view>
108
-			<view class="panelItem4 FlexRow">
109
-				<view class="picker" wx:if="{{CardType=='0'}}">
110
-					{{CardMaxNumberNew}}张
111
-				</view>
112
-        <view class="picker" wx:if="{{CardType=='1'}}">
113
-					{{CardMaxNumberNewUrgent}}张
4
+	<view class="line"></view>
5
+	<view class="panelTitle FlexRow">
6
+		<image class="universalpic_plan_2line_black_30x32" src="../images/universalpic_plan_data_black_30x32.png" />
7
+		<view class="panelTitle1">参考数据</view>
8
+	</view>
9
+	<view class="lineWidthAll1 FlexRow">
10
+		<view class="lineWidth690"></view>
11
+	</view>
12
+	<view class="panelItem0 panelItem FlexRow">
13
+		<template class="fan" is="fanTemplate" data="{{Angle1,Angle2,BGColor,FanSize,FanScale,Color1,Color2,ShowNumber}}">
14
+		</template>
15
+	</view>
16
+	<view class="panelItem FlexColumn">
17
+		<view class="panelItemSquare FlexRow">
18
+			<view class="panelItemSquare1 FlexColumn">
19
+				<view class="panelItemSquare11 FlexRow">
20
+					<view class="block1 block"></view>
21
+					<view class="panelItemSquare111">题卡数量</view>
22
+				</view>
23
+				<view class="panelItemSquare11 FlexRow">
24
+					<view class="panelItemSquare112" wx:if="{{CardType=='0'}}">日常练习方案包含题卡总数</view>
25
+					<text class="panelItemSquare112" wx:if="{{CardType=='1'}}">紧急练习方案最多容纳200张\n使用过程中请适当调配题卡</text>
26
+				</view>
27
+			</view>
28
+			<view class="panelItemSquare2 FlexColumn">
29
+				<view class="panelItemSquare21 FlexRow">
30
+					<view class="panelItemSquare210" wx:if="{{CardType=='1' && CardNumberCurrent>=200}}">容量已满</view>
31
+					<view class="Number61">{{CardNumberCurrent}}</view>
32
+					<view class="panelItemSquare212">张</view>
33
+				</view>
34
+				<view class="panelItemSquare22 FlexRow">
35
+					<view class="panelItemSquare221">新题卡</view>
36
+					<view class="Number62">{{NewCardAll}}</view>
37
+				</view>
38
+				<view class="panelItemSquare23 FlexRow">
39
+					<view class="panelItemSquare221">旧题卡</view>
40
+					<view class="Number62">{{HistoryCardAll}}</view>
114 41
 				</view>
115
-				<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
116 42
 			</view>
117 43
 		</view>
118
-	</picker>
119
-	<view class="lineWidthAll FlexRow">
120
-		<view class="lineWidth720"></view>
121
-	</view>
122
-	<picker class="panelItem0" bindchange="bindUpdateCardNumberHistoryMax" value="{{CardMaxNumberHistoryIndex}}" range="{{CardNumberOld}}">
123
-		<view class="panelItem FlexRow">
124
-			<view class="panelItem3">旧题卡数量上限</view>
125
-			<view class="panelItem4 FlexRow">
126
-				<view class="picker" wx:if="{{CardType=='0'}}">
127
-					{{CardMaxNumberHistory}}张
44
+		<view class="lineWidthAll1 FlexRow">
45
+			<view class="lineWidth240"></view>
46
+		</view>
47
+		<view class="panelItemSquare0 panelItemSquare FlexRow">
48
+			<view class="panelItemSquare1 FlexColumn">
49
+				<view class="panelItemSquare11 FlexRow">
50
+					<view class="panelItemSquare112">新建属于<block wx:if="{{CardType=='0'}}">日常</block>
51
+						<block wx:if="{{CardType=='1'}}">紧急</block>练习的题卡
52
+					</view>
128 53
 				</view>
129
-				<view class="picker" wx:if="{{CardType=='1'}}">
130
-					{{CardMaxNumberHistoryUrgent}}张
54
+			</view>
55
+			<view class="panelItemSquare2 FlexColumn">
56
+				<view class="panelItemSquare23 FlexRow">
57
+					<view class="panelItemSquare221">今日新建</view>
58
+					<view class="panelItemSquare222">{{NewToday}}</view>
131 59
 				</view>
132
-				<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
133 60
 			</view>
134 61
 		</view>
135
-	</picker>
136
-	<view class='lineFooter'></view>
137
-  
138
-  <block wx:if="{{CardType=='0'}}">
139
-  <view class="panelTitle3 FlexRow">
140
-    <view class="left">内容组织</view>
141
-    <view class="right"></view>
142
-  </view>
143
-  <view class="panelItem FlexRow" bindtap='setSortType'>
144
-    <view class="panelItem3">优先规则</view>
145
-    <view class="panelItem4 FlexRow">
146
-      <view class="picker">
147
-        {{SortType}}
148
-      </view>
149
-      <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
150
-    </view>
151
-  </view>
152
-  </block>
153
-  <view class='lineFooter'></view>
154
-  <view class="panelItem5 FlexRow">
155
-    <image src='../images/universalpic_exmark_black_26x26.png' class="universalpic_exmark_black_26x26" />
156
-    <view class="text7">如要调整方案中的题卡内容请至官网www.kylx365.com</view>
157
-  </view>
158
-  <view style="height:50rpx;"></view>
159
-  <view class="panelItem FlexColumn">
160
-		<view class="panelTitle00 panelTitle FlexRow">
161
-			<view class="panelTitle2">任务限量用途说明</view>
62
+		<view class="lineWidthAll1 FlexRow">
63
+			<view class="lineWidth654"></view>
64
+		</view>
65
+
66
+		<view class="panelItemSquare0 panelItemSquare FlexRow">
67
+			<view class="panelItemSquare1 FlexColumn">
68
+				<view class="panelItemSquare11 FlexRow">
69
+					<view class="block2 block"></view>
70
+					<view class="panelItemSquare111">到期题卡</view>
71
+				</view>
72
+				<view class="panelItemSquare11 FlexRow">
73
+					<text class="panelItemSquare112">题卡到期才能被练习,到期题卡足够多\n才有满额的任务量,太多时设任务限量</text>
74
+				</view>
75
+			</view>
76
+			<view class="panelItemSquare2 FlexColumn">
77
+				<view class="panelItemSquare21 FlexRow">
78
+					<view class="Number61">{{LimitCardNumber}}</view>
79
+					<view class="panelItemSquare212">张</view>
80
+				</view>
81
+				<view class="panelItemSquare22 FlexRow">
82
+					<view class="panelItemSquare221">新题卡</view>
83
+					<view class="Number62">{{NewLimitTimeToday}}</view>
84
+				</view>
85
+				<view class="panelItemSquare23 FlexRow">
86
+					<view class="panelItemSquare221">旧题卡</view>
87
+					<view class="Number62">{{HistoryLimitTimeToday}}</view>
88
+				</view>
89
+			</view>
162 90
 		</view>
163
-		<text class="text8">限制“今天学习任务”(任务量)的题卡数量。当任务量太多学习时间过长时,通过限制新、旧题卡数量把学习时间和难度控制在可接受范围内。\n
164
-      通常,新题卡比旧题卡难度较大,练习时间也更长。建议新、旧题卡数量之比维持的1:3到1:5之间。\n
165
-      常见误区:本功能用于对数量的“限制”,而不是要求任务量必须达到这个数量。假设,数量限制是50张题卡,但到期题卡仅有30张时,则按实际情况练习30张,并不会补足20张题卡。当日最适合回想的知识是根据到期时间来安排的,和数量限制无关。另一方面,要让本功能发挥作用,必须有足够的题卡数量和较多的到期题卡数量。
166
-    </text>
167
-		<view style="height:40rpx;"></view>
91
+		<view style="height:20rpx;" wx:if="{{CardType=='1'}}"></view>
92
+		<block wx:if="{{CardType=='0'}}">
93
+			<view class="lineWidthAll1 FlexRow">
94
+				<view class="lineWidth240"></view>
95
+			</view>
96
+			<view class="panelItemSquare01 panelItemSquare0 panelItemSquare FlexRow">
97
+				<view class="panelItemSquare1 FlexColumn">
98
+					<view class="panelItemSquare11 FlexRow">
99
+						<text class="panelItemSquare112">最适合今天回想的题卡数量\n选取规则为今天优先能率先练习它们</text>
100
+					</view>
101
+				</view>
102
+				<view class="panelItemSquare2 FlexColumn">
103
+					<view class="panelItemSquare21 FlexRow">
104
+						<view class="panelItemSquare221">今日到期</view>
105
+					</view>
106
+					<view class="panelItemSquare22 FlexRow">
107
+						<view class="panelItemSquare221">新题卡</view>
108
+						<view class="Number62">{{NewCardNumberAndLimitToday}}</view>
109
+					</view>
110
+					<view class="panelItemSquare23 FlexRow">
111
+						<view class="panelItemSquare221">旧题卡</view>
112
+						<view class="Number62">{{HistoryCardNumberAndLimitToday}}</view>
113
+					</view>
114
+				</view>
115
+			</view>
116
+		</block>
168 117
 	</view>
169 118
 	<view class='lineFooter'></view>
170
-  <view style="height:100rpx;"></view>
119
+	<view class="line"></view>
120
+
121
+	<view class="panelItemCircle FlexColumn">
122
+		<view class="panelItemCircleTop panelItemCircle1 FlexRow">
123
+			<view class="panelItemCircle11 FlexColumn">
124
+				<view class="panelItemCircle1110 panelItemCircle111">任务限量</view>
125
+			</view>
126
+			<view>
127
+			</view>
128
+		</view>
129
+		<view class="line2"></view>
130
+		<picker class="panelItemCircle1" bindchange="bindUpdateCardNumberNewMax" value="{{CardMaxNumberNewIndex}}" range="{{CardNumberNew}}">
131
+			<view class="panelItem FlexRow">
132
+				<view class="panelItemCircle11 FlexColumn">
133
+					<view class="panelItemCircle111">新题卡数量上限</view>
134
+				</view>
135
+				<view class="panelItemCircle12 FlexRow">
136
+					<view class="picker" wx:if="{{CardType=='0'}}">
137
+						{{CardMaxNumberNew}}张
138
+					</view>
139
+					<view class="picker" wx:if="{{CardType=='1'}}">
140
+						{{CardMaxNumberNewUrgent}}张
141
+					</view>
142
+					<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
143
+				</view>
144
+			</view>
145
+		</picker>
146
+		<view class="line2"></view>
147
+		<picker class="panelItemCircleBottom panelItemCircle1" bindchange="bindUpdateCardNumberHistoryMax" value="{{CardMaxNumberHistoryIndex}}" range="{{CardNumberOld}}">
148
+			<view class="panelItemCircleBottom panelItem FlexRow">
149
+				<view class="panelItemCircle11 FlexColumn">
150
+					<view class="panelItemCircle111">旧题卡数量上限</view>
151
+				</view>
152
+				<view class="panelItemCircle12 FlexRow">
153
+					<view class="picker" wx:if="{{CardType=='0'}}">
154
+						{{CardMaxNumberHistory}}张
155
+					</view>
156
+					<view class="picker" wx:if="{{CardType=='1'}}">
157
+						{{CardMaxNumberHistoryUrgent}}张
158
+					</view>
159
+					<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
160
+				</view>
161
+			</view>
162
+		</picker>
163
+	</view>
164
+	<view class="line"></view>
165
+
166
+	<block wx:if="{{CardType=='0'}}">
167
+		<view class="panelItemCircle FlexRow" bindtap='setSortType'>
168
+			<view class="panelItemCircle110 panelItemCircle11 FlexColumn">
169
+				<view class="panelItemCircle111">选取规则</view>
170
+				<view class="panelItemCircle112">规定挑选题卡的方法</view>
171
+			</view>
172
+			<view class="panelItemCircle12 FlexRow">
173
+				<view class="picker">
174
+					{{SortType}}
175
+				</view>
176
+				<image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
177
+			</view>
178
+		</view>
179
+	</block>
180
+	<view class="footerHeight"></view>
171 181
 </view>

+ 146 - 125
pages/plan/studyplandetail.wxss

@@ -2,19 +2,15 @@
2 2
 
3 3
 .container{
4 4
   font-size:28rpx;
5
+  color:#4D4D4D;
5 6
 }
6 7
 
7 8
 .line{
8 9
   width:100%;
9
-  height:30rpx;
10
+  height:20rpx;
10 11
   background-color: #F0F0F0;
11 12
 }
12 13
 
13
-.lineWidthAll1{
14
-  width: 100%;
15
-  background-color: #fff;
16
-  height: 1rpx;
17
-}
18 14
 .panelTitle{
19 15
   width:100%;
20 16
   justify-content: flex-start;
@@ -31,50 +27,10 @@
31 27
 
32 28
 .panelTitle1{
33 29
   margin-left: 10rpx;
34
-  color: #4D4D4D;
35
-}
36
-
37
-.panelItem{
38
-  width:100%;
39
-  background-color: #fff;
40
-  justify-content: space-between;
41
-}
42
-
43
-.panelItem1{
44
-  width:50%;
45
-  height:319rpx;
46
-  position: relative;
47
-}
48
-
49
-.cardFull{
50
-  position: absolute;
51
-  width:120rpx;
52
-  height:40rpx;
53
-  color:#fff;
54
-  background-color: #FE6659;
55
-  border-radius: 20rpx;
56
-  line-height: 40rpx;
57
-  font-size:20rpx;
58
-  text-align: center;
59
-  top:40rpx;
60
-  left:30rpx;
61
-  z-index: 20;
62
-}
63
-
64
-.line2{
65
-  width:2rpx;
66
-  height:219rpx;
67
-  background-color: #E3E3E3;
68 30
 }
69 31
 
70
-.panelItem11{
71
-  margin-left: 40rpx;
72
-  align-items: flex-start;
73
-  align-self: flex-start;
74
-}
75
-
76
-.panelItem12{
77
-  margin-top: 27rpx;
32
+.lineWidth690{
33
+  margin-right: 30rpx;
78 34
 }
79 35
 
80 36
 .fan{
@@ -86,131 +42,196 @@
86 42
   text-align: center;
87 43
   line-height: 100rpx;
88 44
   font-size:28;
89
-  margin-bottom: 20rpx;
45
+  margin-top: 40rpx;
46
+  margin-bottom: 30rpx;
47
+  justify-self: center;
90 48
 }
91 49
 
92
-.text5{
93
-  font-size:24rpx;
94
-  margin-top:20rpx;
50
+.lineWidthAll1{
51
+  width: 100%;
52
+  background-color: #fff;
53
+  height: 1rpx;
54
+  justify-content: flex-end;
55
+}
56
+.lineWidth240{
57
+  width: 240rpx;
58
+  background-color: #E3E3E3;
59
+  height: 1rpx;
60
+  margin-right: 30rpx;
61
+}
62
+.lineWidth654{
63
+  width: 654rpx;
64
+  background-color: #E3E3E3;
65
+  height: 1rpx;
66
+  margin-right: 30rpx;
67
+}
68
+.panelItem{
69
+  width:100%;
70
+  background-color: #fff;
71
+  justify-content: space-between;
72
+}
73
+.panelItem0{
74
+  justify-content: center;
95 75
 }
96 76
 
97
-.list{
77
+.panelItemSquare{
78
+  width:100%;
79
+  justify-content: space-between;
98 80
   align-items: flex-start;
99
-  font-size:24rpx;
100 81
 }
101
-.list1{
102
-  align-items: flex-start;
82
+
83
+.panelItemSquare0{
84
+  margin-top: 20rpx;
103 85
 }
104 86
 
105
-.item{
106
-  width:100%;
87
+.panelItemSquare01{
88
+  margin-bottom: 20rpx;
89
+}
90
+
91
+.panelItemSquare1{
92
+  justify-content: flex-start;
93
+  align-items: flex-start;
94
+  margin-left: 30rpx;
95
+}
96
+.panelItemSquare11{
107 97
   justify-content: flex-start;
108
-  margin-bottom: 5rpx; 
109 98
 }
110 99
 
111 100
 .block{
112
-  width:10rpx;
113
-  height:10rpx;
114
-  margin-right: 10rpx;
101
+  width:16rpx;
102
+  height:16rpx;
115 103
   background-color: #fff;
104
+  border-radius: 4rpx;
105
+  margin:0 20rpx 0 0;
116 106
 }
117 107
 .block1{
118
-  background-color: #FF8C83;
119
-  border:1rpx solid #BF524A;
108
+  background-color: #FFC1A8;
120 109
 }
121 110
 .block2{
122
-  background-color: #F0F0F0;
123
-  border:1rpx solid #9B9B9B;
111
+  background-color: #FE6659;
124 112
 }
125 113
 
126
-.Number1{
127
-  font-size: 24rpx;
128
-  font-family: Roboto-Black;
129
-  margin: 0 5rpx 0rpx 5rpx;
114
+.panelItemSquare111{
115
+  font-size: 28rpx;
130 116
 }
131
-
132
-.Number11{
117
+.panelItemSquare112{
118
+  font-size: 20rpx;
133 119
   color:#787878;
120
+  margin-left: 36rpx;
121
+  margin-top: 4rpx;
134 122
 }
135 123
 
136
-.text6{
137
-  font-size:24rpx;
138
-  color:#787878;
139
-}
140 124
 
141
-.text9{
142
-  font-size:20rpx;
143
-  color:#787878;
125
+.panelItemSquare2{
126
+  justify-content: flex-start;
127
+  align-items: flex-end;
128
+  margin-right: 30rpx;
144 129
 }
145 130
 
146
-.Arrow{
147
-  width:16rpx;
148
-  height:26rpx;
149
-  margin-left: 30rpx;
131
+.panelItemSquare21{
132
+  justify-content: flex-end;
133
+  align-items: flex-end;
150 134
 }
151
-
152
-.panelTitle3{
153
-  width:100%;
154
-  background-color:  #F0F0F0;
155
-  height:75rpx;
156
-  align-items: flex-start;
157
-  justify-content: space-between;
158
-  margin-top: 50rpx;
135
+.Number61{
136
+  font-size: 36rpx;
137
+  font-family: Roboto-Black;
159 138
 }
160
-.left{
161
-  margin: 0 0 30rpx 30rpx;
162
-  font-size:32rpx;
139
+.panelItemSquare210{
140
+  font-size: 20rpx;
141
+  text-align: center;
142
+  width:120rpx;
143
+  height:40rpx;
144
+  line-height: 40rpx;
145
+  background-color: #ffc1a8;
146
+  border-radius: 20rpx;
147
+  margin-right: 20rpx;
163 148
 }
164
-
165
-.panelItem0 {
166
-  width: 100%;
149
+.panelItemSquare212{
150
+  font-size: 20rpx;
151
+  margin-left: 4rpx;
152
+  margin-bottom: 4rpx;
167 153
 }
168
-
169
-.panelItem3{
170
-  margin-left: 30rpx;
171
-  line-height: 101rpx;
172
-  font-weight: 400;
154
+.panelItemSquare22{
155
+  margin-top:10rpx;
173 156
 }
174
-.panelItem4{
175
-  margin-right: 30rpx;
157
+.panelItemSquare221{
158
+  font-size: 24rpx;
159
+  color:#787878;
160
+  margin-right:10rpx;
176 161
 }
177 162
 
178
-.picker{
179
-  color:#787878;
180
-  font-weight: 400;
163
+.Number62{
164
+  font-size: 24rpx;
165
+  font-family: Roboto-Black;
181 166
 }
182 167
 
183
-.universalpic_exmark_black_26x26{
184
-  width:26rpx;
185
-  height:26rpx;
186
-  margin-right: 10rpx;
168
+.panelItemSquare23{
169
+  margin-bottom: 20rpx;
187 170
 }
188 171
 
172
+.panelItemCircle{
173
+  width:710rpx;
174
+  border-radius: 20rpx;
175
+  background-color: #fff;
176
+  justify-content: space-between;
177
+}
189 178
 
190
-.panelItem5{
179
+.panelItemCircleTop{
180
+  border-top-left-radius: 20rpx;
181
+  border-top-right-radius: 20rpx;
182
+}
183
+.panelItemCircleBottom{
184
+  border-bottom-left-radius: 20rpx;
185
+  border-bottom-right-radius: 20rpx;
186
+}
187
+.panelItemCircle1{
191 188
   width:100%;
192
-  background-color: #F0F0F0;
193
-  margin-top: 30rpx;
189
+  height: 100rpx;
190
+  justify-content: space-between;
194 191
 }
195
-.text7{
196
-  font-size:24rpx;
192
+
193
+.panelItemCircle11{
194
+  font-size: 28rpx;
195
+  margin-left:30rpx;
196
+  height: 100rpx;
197 197
   font-weight: 400;
198
+  align-items: flex-start;
199
+}
200
+.panelItemCircle110{
201
+  height: 132rpx;
202
+}
203
+.panelItemCircle111{
204
+  font-size: 28rpx;
205
+  color:#1e1e1e;
206
+}
207
+.panelItemCircle1110{
208
+  color:#4D4D4D;
198 209
 }
199 210
 
211
+.panelItemCircle112{
212
+  font-size: 20rpx;
213
+  color:#787878;
214
+  margin-top: 4rpx;
215
+}
200 216
 
201
-.panelTitle00 {
202
-  margin-top: 20rpx;
217
+.panelItemCircle12{
218
+  margin-right: 30rpx;
203 219
 }
204 220
 
205
-.panelTitle2 {
206
-  font-size: 32rpx;
221
+.Arrow{
222
+  width:16rpx;
223
+  height:26rpx;
207 224
   margin-left: 30rpx;
208
-  margin-bottom: 30rpx;
209 225
 }
210 226
 
211 227
 
212
-.text8{
213
-  font-size:24rpx;
228
+.picker{
229
+  color:#787878;
214 230
   font-weight: 400;
215
-  width:690rpx;
216
-}
231
+}
232
+
233
+.line2{
234
+  width: 100%;
235
+  height:1rpx;
236
+  background-color: #E3E3E3;
237
+}

+ 2 - 2
pages/template/Fan.wxml

@@ -7,7 +7,7 @@
7 7
       </view>
8 8
     </view>
9 9
     <view class="shanxingSmall" style="width:{{FanSize-FanSize/FanScale}}rpx;height:{{FanSize-FanSize/FanScale}}rpx;line-height:{{FanSize-FanSize/FanScale}}rpx;left:{{FanSize/(FanScale*2)}}rpx;top:{{FanSize/(FanScale*2)}}rpx;">
10
-      {{ShowNumber}}
10
+      <block wx:if="{{ShowNumber}}">{{ShowNumber}}</block>
11 11
     </view>
12 12
   </view>
13 13
 </template>
@@ -21,7 +21,7 @@
21 21
       </view>
22 22
     </view>
23 23
     <view class="shanxingSmall" style="width:{{FanSize2-FanSize2/FanScale2}}rpx;height:{{FanSize2-FanSize2/FanScale2}}rpx;line-height:{{FanSize2-FanSize2/FanScale2}}rpx;left:{{FanSize2/(FanScale2*2)}}rpx;top:{{FanSize2/(FanScale2*2)}}rpx;">
24
-      {{ShowNumber2}}
24
+      <block wx:if="{{ShowNumber2}}">{{ShowNumber2}}</block>
25 25
     </view>
26 26
   </view>
27 27
 </template>

+ 0 - 1
pages/template/Fan.wxss

@@ -25,7 +25,6 @@
25 25
   left: 14rpx;
26 26
   top: 14rpx;
27 27
   font-family: 'Roboto-Black';
28
-  color:#1e1e1e;
29 28
 }
30 29
 
31 30
 .sx1 {

+ 4 - 2
project.config.json

@@ -21,7 +21,9 @@
21 21
 			"ignore": [],
22 22
 			"disablePlugins": [],
23 23
 			"outputPath": ""
24
-		}
24
+		},
25
+		"useCompilerModule": true,
26
+		"userConfirmedUseCompilerModuleSwitch": false
25 27
 	},
26 28
 	"compileType": "miniprogram",
27 29
 	"libVersion": "2.7.3",
@@ -103,7 +105,7 @@
103 105
 					"id": 6,
104 106
 					"name": "pages/index/index",
105 107
 					"pathName": "pages/index/index",
106
-					"query": "type=paycustom&PayUserID=1&DayNumber=100&Price=258&Remark=123 456",
108
+					"query": "type=video&LessonID=2&LessonPage=2",
107 109
 					"scene": null
108 110
 				},
109 111
 				{

+ 41 - 1
utils/constant.js

@@ -1,4 +1,44 @@
1 1
 module.exports = {
2
+  arrMenuText:[
3
+    {
4
+      Text1:"整体练习可以吗?",
5
+      Text2:"恭喜您,制作了第一张紧急练习题卡。\n要练习这张题卡必须更改学习计划的模式,现在就切换吗?",
6
+      List:[
7
+        {
8
+          Name:"启用整体练习",
9
+          Name2:"串联日常练习方案和紧急练习方案的任务量",
10
+          Url:"../plan/studyplan?CardType=2",
11
+          IsUrl:false,
12
+        },{
13
+          Name:"启用紧急练习",
14
+          Name2:"单一紧急练习",
15
+          Url:"../plan/studyplan?CardType=1",
16
+          IsUrl:false,
17
+        },
18
+      ],
19
+      Text3:"切换后您将看到",
20
+      Text4:"重新规划今天的任务量。首页、学习计划的参考数据将被更新。请回到首页,重新开始今天的练习(不管之前有无练习)。系统会保存本次选择,无须重复切换。\n\n日常练习、紧急练习的任务量设置是各自独立的。",
21
+      Text5:"以后再说",
22
+      Text6:"保持日常练习,日后可在首页打开学习计划手动更改",
23
+    },
24
+    {
25
+      Text1:"高级模式可以吗?",
26
+      Text2:"恭喜您,已度过秒过入门期。\n想不想试试记忆评价的高级模式呢?79%的家长在用了。",
27
+      List:[
28
+        {
29
+          Name:"去设置",
30
+          Name2:"按键增加至四色,能更准确地操作记忆评价,\n对长期练习有极大帮助",
31
+          Url:"../plan/pattern",
32
+          IsUrl:true,
33
+        },
34
+      ],
35
+      Text3:"",
36
+      Text4:"",
37
+      Text5:"以后再说",
38
+      Text6:"保持基本模式,日后可在学习计划中打开设置手动更改",
39
+    },
40
+    
41
+  ],
2 42
   arrMemoryLevelAll: [{
3 43
       Name: "基本模式",
4 44
       Name2: "三色按键,通俗易懂,容易操作,适合初学者",
@@ -82,7 +122,7 @@ module.exports = {
82 122
       Remark: "暂不练习,到期时间留白"
83 123
     },
84 124
   ],
85
-  arrSortType: ["自由安排", "到期时间较早的题卡", "到期时间较近的题卡"],
125
+  arrSortType: ["智能规划", "最早优先", "今天优先"],
86 126
   arrFontSize: [{
87 127
       Name: "紧凑",
88 128
       Value: 36

+ 4 - 19
utils/main.js

@@ -357,20 +357,12 @@ function changeStringToView(field) {
357 357
                       value: temp1,
358 358
                     });
359 359
                   } else {
360
-                    if (arr[k].indexOf("[线]") > 0) {
360
+                    if (temp && temp.indexOf("[线]") < 0) {
361 361
                       content.push({
362 362
                         key: "normal",
363 363
                         value: temp,
364 364
                       });
365 365
                       temp = "";
366
-                    } else {
367
-                      if (temp && temp.indexOf("[线]") < 0) {
368
-                        content.push({
369
-                          key: "normal",
370
-                          value: temp,
371
-                        });
372
-                        temp = "";
373
-                      }
374 366
                     }
375 367
                   }
376 368
                 } else if ((num1 > num2 && num1 >= 0 && num2 >= 0) || (num1 < 0 && num2 >= 0)) {
@@ -381,13 +373,6 @@ function changeStringToView(field) {
381 373
                       value: temp1,
382 374
                     });
383 375
                   } else {
384
-                    if (arr[k].indexOf("[光]") > 0) {
385
-                      content.push({
386
-                        key: "normal",
387
-                        value: temp,
388
-                      });
389
-                      temp = "";
390
-                    } else {
391 376
                       if (temp && temp.indexOf("[光]") < 0) {
392 377
                         content.push({
393 378
                           key: "normal",
@@ -395,7 +380,6 @@ function changeStringToView(field) {
395 380
                         });
396 381
                         temp = "";
397 382
                       }
398
-                    }
399 383
                   }
400 384
                 } else {
401 385
                   content.push({
@@ -1084,8 +1068,9 @@ function getUserConfig() {
1084 1068
   var that = this;
1085 1069
   postData('UploadUserConfig?Type=getData&UserID=' + app.globalData.userInfo.UserID, {}, function (data) {
1086 1070
 
1087
-    var cardType = wx.getStorageSync("CardType");
1088
-
1071
+    if (!data.CardType)
1072
+      data.CardType=0;
1073
+      
1089 1074
     wx.setStorageSync("CardType", data.CardType);
1090 1075
     wx.setStorageSync("CardMaxNumberNew", data.CardMaxNumberNew);
1091 1076
     wx.setStorageSync("CardMaxNumberHistory", data.CardMaxNumberHistory);