chengjie лет назад: 6
Родитель
Сommit
a2bc9756e4
62 измененных файлов с 735 добавлено и 224 удалено
  1. 2 1
      app.js
  2. 6 1
      app.json
  3. 7 6
      app.wxss
  4. BIN
      pages/images/program_screenshot_bindaccount.png
  5. BIN
      pages/images/program_screenshot_checklist.png
  6. BIN
      pages/images/program_screenshot_l1.png
  7. BIN
      pages/images/program_screenshot_l2.png
  8. BIN
      pages/images/program_screenshot_l3.png
  9. BIN
      pages/images/program_screenshot_l4.png
  10. BIN
      pages/images/program_screenshot_main.png
  11. BIN
      pages/images/universalpic_checked_blue_40x40.png
  12. 11 1
      pages/index/accredit.js
  13. 0 2
      pages/index/accredit.wxss
  14. 30 0
      pages/index/index.js
  15. 2 1
      pages/index/index.wxml
  16. 15 3
      pages/index/index.wxss
  17. 0 2
      pages/index/notice.wxss
  18. 1 7
      pages/main/add.wxss
  19. 0 7
      pages/main/cardInfo.wxss
  20. 0 7
      pages/main/clicktype.wxss
  21. 0 7
      pages/main/colorplan.wxss
  22. 12 0
      pages/main/default.js
  23. 2 1
      pages/main/default.json
  24. 0 3
      pages/main/default.wxss
  25. 2 0
      pages/main/detail.js
  26. 0 5
      pages/main/detail.wxss
  27. 0 7
      pages/main/memoryLevel.wxss
  28. 6 1
      pages/main/preview.js
  29. 0 3
      pages/main/preview.wxss
  30. 0 7
      pages/main/recommend.wxss
  31. 14 4
      pages/main/searchCard.js
  32. 0 8
      pages/main/searchCard.wxss
  33. 0 7
      pages/main/searchCard1.wxss
  34. 21 3
      pages/main/searchCardList.js
  35. 0 7
      pages/main/searchCardList.wxss
  36. 1 1
      pages/main/searchWeb.js
  37. 0 3
      pages/main/searchWeb.wxss
  38. 0 7
      pages/main/searchWeb1.wxss
  39. 4 2
      pages/main/searchWeb2.js
  40. 45 45
      pages/main/searchWeb2.wxml
  41. 0 8
      pages/main/searchWeb2.wxss
  42. 6 1
      pages/main/setting.js
  43. 16 3
      pages/main/setting.wxml
  44. 7 7
      pages/main/setting.wxss
  45. 119 0
      pages/other/binding.js
  46. 4 0
      pages/other/binding.json
  47. 58 0
      pages/other/binding.wxml
  48. 72 0
      pages/other/binding.wxss
  49. 42 0
      pages/other/homework.js
  50. 5 0
      pages/other/homework.json
  51. 88 0
      pages/other/homework.wxml
  52. 65 0
      pages/other/homework.wxss
  53. 33 10
      pages/other/lesson.js
  54. 0 1
      pages/other/lesson.wxml
  55. 7 13
      pages/other/lesson.wxss
  56. 17 1
      pages/other/lessonlist.js
  57. 3 0
      pages/other/lessonlist.wxml
  58. 6 5
      pages/other/lessonlist.wxss
  59. 0 5
      pages/other/payinfo.wxss
  60. 0 6
      pages/other/userlist.wxss
  61. 4 4
      project.config.json
  62. 2 1
      utils/main.js

+ 2 - 1
app.js

@@ -4,6 +4,7 @@ App({
4
     this.getSystemInfo();
4
     this.getSystemInfo();
5
     if (options && options.scene) {
5
     if (options && options.scene) {
6
       this.globalData.userSource = options.scene;
6
       this.globalData.userSource = options.scene;
7
+      console.log("options.scene:" + options.scene);
7
     }
8
     }
8
     if (options && options.shareTicket) {
9
     if (options && options.shareTicket) {
9
       this.globalData.shareTicket = options.shareTicket;
10
       this.globalData.shareTicket = options.shareTicket;
@@ -25,7 +26,7 @@ App({
25
     }
26
     }
26
   },
27
   },
27
   globalData: {
28
   globalData: {
28
-    Version: "1.1.18",
29
+    Version: "1.1.22",
29
     IsProduction: true,
30
     IsProduction: true,
30
     ShareTitle: "刻意学习,高效成长",
31
     ShareTitle: "刻意学习,高效成长",
31
     SharePath: "pages/index/index",
32
     SharePath: "pages/index/index",

+ 6 - 1
app.json

@@ -22,15 +22,20 @@
22
     "pages/other/payinfo",
22
     "pages/other/payinfo",
23
     "pages/other/lessonlist",
23
     "pages/other/lessonlist",
24
     "pages/other/userlist",
24
     "pages/other/userlist",
25
+    "pages/other/binding",
26
+    "pages/other/homework",
25
     "pages/main/setting"
27
     "pages/main/setting"
26
   ],
28
   ],
27
   "window": {
29
   "window": {
28
-    "navigationBarBackgroundColor": "#fff",
30
+    "navigationBarBackgroundColor": "#ffffff",
29
     "navigationBarTitleText": "秒过",
31
     "navigationBarTitleText": "秒过",
30
     "navigationBarTextStyle": "black",
32
     "navigationBarTextStyle": "black",
31
     "backgroundColor": "#ffffff",
33
     "backgroundColor": "#ffffff",
32
     "enablePullDownRefresh": false
34
     "enablePullDownRefresh": false
33
   },
35
   },
36
+  "requiredBackgroundModes": [
37
+    "audio"
38
+  ],
34
   "navigateToMiniProgramAppIdList": [
39
   "navigateToMiniProgramAppIdList": [
35
     "wx84b3feac6069eec3",
40
     "wx84b3feac6069eec3",
36
     "wxa5441bbf344692ba",
41
     "wxa5441bbf344692ba",

+ 7 - 6
app.wxss

@@ -1,9 +1,3 @@
1
-/**app.wxss**/
2
-.container {
3
-  width:100%;
4
-  justify-content: flex-start;
5
-} 
6
-
7
 ::-webkit-scrollbar {
1
 ::-webkit-scrollbar {
8
   width: 0;
2
   width: 0;
9
   height: 0;
3
   height: 0;
@@ -24,6 +18,13 @@
24
   align-items: center;
18
   align-items: center;
25
   justify-content: center;
19
   justify-content: center;
26
 }
20
 }
21
+.container {
22
+  width:100%;
23
+  color: #1e1e1e;
24
+  justify-content: flex-start;
25
+  font-weight: 500;
26
+  background-color: #f0f0f0;
27
+} 
27
 
28
 
28
 .lineFooter{
29
 .lineFooter{
29
   width: 100%;
30
   width: 100%;

BIN
pages/images/program_screenshot_bindaccount.png


BIN
pages/images/program_screenshot_checklist.png


BIN
pages/images/program_screenshot_l1.png


BIN
pages/images/program_screenshot_l2.png


BIN
pages/images/program_screenshot_l3.png


BIN
pages/images/program_screenshot_l4.png


BIN
pages/images/program_screenshot_main.png


BIN
pages/images/universalpic_checked_blue_40x40.png


+ 11 - 1
pages/index/accredit.js

@@ -14,6 +14,8 @@ Page({
14
       Containnerheight: main.getWindowHeight(),
14
       Containnerheight: main.getWindowHeight(),
15
     });
15
     });
16
 
16
 
17
+    if (!app.globalData.userInfo)
18
+      app.globalData.userInfo={};
17
   },
19
   },
18
   onUnload: function () {
20
   onUnload: function () {
19
 
21
 
@@ -98,7 +100,15 @@ Page({
98
       app.globalData.userInfo.Country = data.Country;
100
       app.globalData.userInfo.Country = data.Country;
99
       
101
       
100
       app.globalData.userInfo.IsMember=data.IsMember;
102
       app.globalData.userInfo.IsMember=data.IsMember;
101
-      that.buildInitData();
103
+
104
+      if (app.globalData.userInfo.UserID)
105
+        that.buildInitData();
106
+      else{
107
+        app.globalData.userInfo.UserID = data.UserID;
108
+        wx.navigateBack({
109
+          delta: 1
110
+        });
111
+      }
102
     });
112
     });
103
   },
113
   },
104
   buildInitData: function () {
114
   buildInitData: function () {

+ 0 - 2
pages/index/accredit.wxss

@@ -1,9 +1,7 @@
1
 .container {
1
 .container {
2
   background-color: #fff;
2
   background-color: #fff;
3
-  font-weight: 500;
4
   position: fixed;
3
   position: fixed;
5
   top:0;
4
   top:0;
6
-  justify-content: flex-start;
7
 }
5
 }
8
 
6
 
9
 .universalpic_face_default_green_240x240{
7
 .universalpic_face_default_green_240x240{

+ 30 - 0
pages/index/index.js

@@ -20,8 +20,11 @@ const arrSentence = [
20
   "孟子曰:\n故天将降大任于是人也\n必先苦其心志,劳其筋骨\n饿其体肤……",
20
   "孟子曰:\n故天将降大任于是人也\n必先苦其心志,劳其筋骨\n饿其体肤……",
21
 ];
21
 ];
22
 
22
 
23
+var timeout1=0;
24
+
23
 Page({
25
 Page({
24
   data: {
26
   data: {
27
+    
25
   },
28
   },
26
   onPullDownRefresh: function () {
29
   onPullDownRefresh: function () {
27
     wx.reLaunch({
30
     wx.reLaunch({
@@ -56,6 +59,8 @@ Page({
56
         this.setData({
59
         this.setData({
57
           MiaoguoCardID: options.MiaoguoCardID,
60
           MiaoguoCardID: options.MiaoguoCardID,
58
         });
61
         });
62
+        if (options.ColorIndex)
63
+          app.globalData.ColorIndex=options.ColorIndex;
59
       }
64
       }
60
 
65
 
61
       if (options.LessonID) {
66
       if (options.LessonID) {
@@ -66,8 +71,19 @@ Page({
66
         else
71
         else
67
           app.globalData.LessonPage = 1;
72
           app.globalData.LessonPage = 1;
68
       }
73
       }
74
+
75
+      if (options.Homework == 1) {
76
+        app.globalData.Homework = 1;
77
+      }
78
+
79
+      if (options.type == "bebound") {
80
+        this.setData({
81
+          gotoBindingUrl: "../other/binding?type=bebound&ParentUserID=" + options.ParentUserID + "&NickName=" + options.NickName + "&AvatarUrl=" + options.AvatarUrl,
82
+        });
83
+      }
69
     }
84
     }
70
     this.setData({
85
     this.setData({
86
+      IsRefresh: false,
71
       Containnerheight: main.getWindowHeight(),
87
       Containnerheight: main.getWindowHeight(),
72
       Sentence: arrSentence[common.random(0, arrSentence.length - 1)],
88
       Sentence: arrSentence[common.random(0, arrSentence.length - 1)],
73
     });
89
     });
@@ -75,6 +91,13 @@ Page({
75
     this.updateProgram();
91
     this.updateProgram();
76
 
92
 
77
     this.getUserInfo();
93
     this.getUserInfo();
94
+
95
+    var that=this;
96
+    timeout1=setTimeout(function(){
97
+      that.setData({
98
+        IsRefresh: true,
99
+      })
100
+    },15000);
78
   },
101
   },
79
   //得到用户信息
102
   //得到用户信息
80
   getUserInfo: function (cb) {
103
   getUserInfo: function (cb) {
@@ -199,10 +222,17 @@ Page({
199
               url: '../main/preview?type=share&id=' + that.data.MiaoguoCardID,
222
               url: '../main/preview?type=share&id=' + that.data.MiaoguoCardID,
200
             });
223
             });
201
           }
224
           }
225
+          else if (that.data.gotoBindingUrl){
226
+            wx.reLaunch({
227
+              url: that.data.gotoBindingUrl,
228
+            });
229
+          }
202
           else {
230
           else {
203
             var url = '../main/default?IsStart=1';
231
             var url = '../main/default?IsStart=1';
204
 
232
 
205
             setTimeout(function () {
233
             setTimeout(function () {
234
+              clearTimeout(timeout1);
235
+
206
               wx.redirectTo({
236
               wx.redirectTo({
207
                 url: url,
237
                 url: url,
208
               });
238
               });

+ 2 - 1
pages/index/index.wxml

@@ -1,4 +1,5 @@
1
 <view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
1
 <view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
2
   <image src='../images/program_start_footer.png' class="program_start_footer" />
2
   <image src='../images/program_start_footer.png' class="program_start_footer" />
3
-  <text class="text1">{{Sentence}}</text>  
3
+  <text class="text1">{{Sentence}}</text> 
4
+  <view class="btn" wx:if="{{IsRefresh}}" bindtap='onPullDownRefresh'>重启小程序</view> 
4
 </view>
5
 </view>

+ 15 - 3
pages/index/index.wxss

@@ -1,7 +1,4 @@
1
 .container {
1
 .container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
   background-color: #fff;
2
   background-color: #fff;
6
 }
3
 }
7
 
4
 
@@ -17,4 +14,19 @@
17
   position: fixed;
14
   position: fixed;
18
   top:130rpx;
15
   top:130rpx;
19
   text-align: center;
16
   text-align: center;
17
+}
18
+
19
+.btn{
20
+  width:600rpx;
21
+  height:90rpx;
22
+  text-align: center;
23
+  line-height: 90rpx;
24
+  border-radius: 14rpx;
25
+  border:1rpx solid #9B9B9B;
26
+  background-color: #fff;
27
+  color:#787878;
28
+  font-size:36rpx;
29
+  position: fixed;
30
+  top:426rpx;
31
+  z-index: 10;
20
 }
32
 }

+ 0 - 2
pages/index/notice.wxss

@@ -1,9 +1,7 @@
1
 .container {
1
 .container {
2
   background-color: #fff;
2
   background-color: #fff;
3
-  font-weight: 500;
4
   position: fixed;
3
   position: fixed;
5
   top:0;
4
   top:0;
6
-  justify-content: flex-start;
7
 }
5
 }
8
 
6
 
9
 .text1{
7
 .text1{

+ 1 - 7
pages/main/add.wxss

@@ -1,9 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #F0F0F0;
6
-}
7
 
1
 
8
 .panelTop{
2
 .panelTop{
9
   height: 120rpx;
3
   height: 120rpx;
@@ -209,7 +203,7 @@
209
   font-size: 28rpx;
203
   font-size: 28rpx;
210
   color:#1e1e1e;
204
   color:#1e1e1e;
211
   text-align: left;
205
   text-align: left;
212
-  height:100rpx;
206
+  min-height:100rpx;
213
   line-height: 100rpx;
207
   line-height: 100rpx;
214
   flex-wrap: wrap;
208
   flex-wrap: wrap;
215
   justify-content: flex-start;
209
   justify-content: flex-start;

+ 0 - 7
pages/main/cardInfo.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle{
1
 .panelTitle{
9
   width:100%;
2
   width:100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;

+ 0 - 7
pages/main/clicktype.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color: #1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle {
1
 .panelTitle {
9
   width: 100%;
2
   width: 100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;

+ 0 - 7
pages/main/colorplan.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle{
1
 .panelTitle{
9
   width:100%;
2
   width:100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;

+ 12 - 0
pages/main/default.js

@@ -8,6 +8,12 @@ Page({
8
     IsTempCardNoSaved:false,
8
     IsTempCardNoSaved:false,
9
     IsExit:false,
9
     IsExit:false,
10
   },
10
   },
11
+  onPullDownRefresh: function () {
12
+    wx.redirectTo({
13
+      url: '../main/default',
14
+    })
15
+    wx.stopPullDownRefresh();
16
+  },
11
   onLoad: function (options) {
17
   onLoad: function (options) {
12
     var that = this;
18
     var that = this;
13
     that.setData({
19
     that.setData({
@@ -46,6 +52,12 @@ Page({
46
             });
52
             });
47
           }
53
           }
48
 
54
 
55
+          if (app.globalData.userInfo.IsMember && app.globalData.Homework == 1) {
56
+            wx.navigateTo({
57
+              url: '../other/homework',
58
+            });
59
+          }
60
+
49
           if (app.globalData.userInfo.IsMember && app.globalData.LessonID && app.globalData.LessonID>0) {
61
           if (app.globalData.userInfo.IsMember && app.globalData.LessonID && app.globalData.LessonID>0) {
50
             wx.navigateTo({
62
             wx.navigateTo({
51
               url: '../other/lesson?LessonID=' + app.globalData.LessonID +'&LessonPage='+app.globalData.LessonPage,
63
               url: '../other/lesson?LessonID=' + app.globalData.LessonID +'&LessonPage='+app.globalData.LessonPage,

+ 2 - 1
pages/main/default.json

@@ -2,5 +2,6 @@
2
   "navigationBarBackgroundColor": "#3157BA",
2
   "navigationBarBackgroundColor": "#3157BA",
3
   "navigationBarTextStyle": "white",
3
   "navigationBarTextStyle": "white",
4
   "navigationBarTitleText": "秒过",
4
   "navigationBarTitleText": "秒过",
5
-  "backgroundColor": "#3157BA"
5
+  "backgroundColor": "#3157BA",
6
+  "enablePullDownRefresh": true
6
 }
7
 }

+ 0 - 3
pages/main/default.wxss

@@ -1,7 +1,4 @@
1
 .container {
1
 .container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
   background-color: #3157ba;
2
   background-color: #3157ba;
6
 }
3
 }
7
 
4
 

+ 2 - 0
pages/main/detail.js

@@ -848,6 +848,8 @@ Page({
848
                   current: res2.tempFilePath, // 当前显示图片的http链接
848
                   current: res2.tempFilePath, // 当前显示图片的http链接
849
                   urls: [res2.tempFilePath] // 需要预览的图片http链接列表
849
                   urls: [res2.tempFilePath] // 需要预览的图片http链接列表
850
                 });
850
                 });
851
+
852
+                main.getData("ShareMiaoguoTask?UserID="+app.globalData.userInfo.UserID, function (data) {});
851
               },
853
               },
852
               fail: function () {
854
               fail: function () {
853
                 wx.hideLoading();
855
                 wx.hideLoading();

+ 0 - 5
pages/main/detail.wxss

@@ -1,8 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-}
5
-
6
 /* 工具栏 */
1
 /* 工具栏 */
7
 .panelTop {
2
 .panelTop {
8
   width: 100%;
3
   width: 100%;

+ 0 - 7
pages/main/memoryLevel.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle {
1
 .panelTitle {
9
   width: 100%;
2
   width: 100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;

+ 6 - 1
pages/main/preview.js

@@ -582,6 +582,11 @@ Page({
582
     this.setData({
582
     this.setData({
583
       ShowType: 'sharepreview'
583
       ShowType: 'sharepreview'
584
     });
584
     });
585
+
586
+    var url = 'ShareMiaoguoCard?UserID=' + app.globalData.userInfo.UserID;
587
+    url += "&MiaoguoCardID=" + that.data.MiaoguoCardID;
588
+    main.getData(url, function (data) { });
589
+
585
     setTimeout(function () {
590
     setTimeout(function () {
586
       that.setData({
591
       that.setData({
587
         ShowType: 'show'
592
         ShowType: 'show'
@@ -589,7 +594,7 @@ Page({
589
     }, 1000);
594
     }, 1000);
590
     return {
595
     return {
591
       title: '我的分享',
596
       title: '我的分享',
592
-      path: app.globalData.SharePath + '?UserID=' + app.globalData.userInfo.UserID + '&Share=1&MiaoguoCardID=' + this.data.MiaoguoCardID,
597
+      path: app.globalData.SharePath + '?UserID=' + app.globalData.userInfo.UserID + '&Share=1&ColorIndex='+app.globalData.ColorIndex+'&MiaoguoCardID=' + this.data.MiaoguoCardID,
593
     }
598
     }
594
   },
599
   },
595
 })
600
 })

+ 0 - 3
pages/main/preview.wxss

@@ -1,7 +1,4 @@
1
 .container {
1
 .container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
   background-color: #e3e3e3;
2
   background-color: #e3e3e3;
6
 }
3
 }
7
 
4
 

+ 0 - 7
pages/main/recommend.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle{
1
 .panelTitle{
9
   width:100%;
2
   width:100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;

+ 14 - 4
pages/main/searchCard.js

@@ -11,12 +11,21 @@ Page({
11
     that.setData({
11
     that.setData({
12
       Containnerheight: main.getWindowHeight(),
12
       Containnerheight: main.getWindowHeight(),
13
     });
13
     });
14
+    
14
   },
15
   },
15
   onShow:function(){
16
   onShow:function(){
16
-    var taskToday = app.globalData.TaskToday;
17
-    this.setData({
18
-      CardNumber: taskToday.CardNumber,
19
-    })
17
+    this.init();
18
+  },
19
+  init:function(){
20
+    var that=this;
21
+    main.getData("GetUserCardCount?UserID="+app.globalData.userInfo.UserID, function (data) {
22
+      if (data) {
23
+        that.setData({
24
+          CardNumber: data.CardNumber,
25
+        });
26
+      }
27
+    });
28
+    
20
   },
29
   },
21
   gotoDefault:function(){
30
   gotoDefault:function(){
22
     wx.redirectTo({
31
     wx.redirectTo({
@@ -34,6 +43,7 @@ Page({
34
       url: './searchCard1',
43
       url: './searchCard1',
35
     })
44
     })
36
   },
45
   },
46
+  
37
   getList: function (e) {
47
   getList: function (e) {
38
     wx.showLoading({
48
     wx.showLoading({
39
       title: '请稍候',
49
       title: '请稍候',

+ 0 - 8
pages/main/searchCard.wxss

@@ -1,11 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #f0f0f0;
6
-}
7
-
8
-
9
 .panel{
1
 .panel{
10
   width: 100%;
2
   width: 100%;
11
   position: fixed;
3
   position: fixed;

+ 0 - 7
pages/main/searchCard1.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #F0F0F0;
6
-}
7
-
8
 .panel{
1
 .panel{
9
   width: 100%;
2
   width: 100%;
10
   position: fixed;
3
   position: fixed;

+ 21 - 3
pages/main/searchCardList.js

@@ -43,11 +43,29 @@ Page({
43
   onShow: function () {
43
   onShow: function () {
44
     var that = this;
44
     var that = this;
45
     that.getList();
45
     that.getList();
46
+    main.getData("GetUserCardCount?UserID=" + app.globalData.userInfo.UserID, function (data) {
47
+      if (data) {
48
+        that.setData({
49
+          Count: data.CardNumber,
50
+        });
51
+      }
52
+    });
53
+
54
+    //题卡主题色
55
+    var arrColorIndex = wx.getStorageSync("ColorIndexArr");
56
+    if (!arrColorIndex) {
57
+      app.globalData.ColorIndex = common.random(1, 4);
58
+    }
59
+    else {
60
+      app.globalData.ColorIndex = arrColorIndex[common.random(0, arrColorIndex.length - 1)];
61
+    }
46
   },
62
   },
47
   onPullDownRefresh: function () {
63
   onPullDownRefresh: function () {
48
     var that = this;
64
     var that = this;
49
-    app.globalData.CardList=[];
50
-    that.gotoNextPage({currentTarget:{dataset:{id:0}}});
65
+    if (!that.data.IsCollect && !that.data.IsToday) {
66
+      app.globalData.CardList=[];
67
+      that.gotoNextPage({currentTarget:{dataset:{id:0}}});
68
+    }
51
     wx.stopPullDownRefresh();
69
     wx.stopPullDownRefresh();
52
   },
70
   },
53
   getList: function () {
71
   getList: function () {
@@ -91,7 +109,7 @@ Page({
91
     // }
109
     // }
92
 
110
 
93
     var hasPage=false;
111
     var hasPage=false;
94
-    if (list.length<that.data.Count && that.data.IsToday==0)
112
+    if (list.length<that.data.Count && that.data.IsToday==0 && !that.data.IsCollect)
95
       hasPage=true;
113
       hasPage=true;
96
     
114
     
97
     this.setData({
115
     this.setData({

+ 0 - 7
pages/main/searchCardList.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #F0F0F0;
6
-}
7
-
8
 .panelTop{
1
 .panelTop{
9
   width: 100%;
2
   width: 100%;
10
   background-color: #fff;
3
   background-color: #fff;

+ 1 - 1
pages/main/searchWeb.js

@@ -38,7 +38,7 @@ Page({
38
             arr[i].TypeName = '翻译';
38
             arr[i].TypeName = '翻译';
39
             break;
39
             break;
40
         }
40
         }
41
-
41
+        
42
         list.push(arr[i]);
42
         list.push(arr[i]);
43
       }
43
       }
44
     }
44
     }

+ 0 - 3
pages/main/searchWeb.wxss

@@ -1,7 +1,4 @@
1
 .container {
1
 .container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
   background-color: #eee;
2
   background-color: #eee;
6
 }
3
 }
7
 
4
 

+ 0 - 7
pages/main/searchWeb1.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #F0F0F0;
6
-}
7
-
8
 .panelSearch{
1
 .panelSearch{
9
   width:100%;
2
   width:100%;
10
   height:140rpx;
3
   height:140rpx;

+ 4 - 2
pages/main/searchWeb2.js

@@ -99,6 +99,7 @@ Page({
99
     })
99
     })
100
   },
100
   },
101
   getInputData: function (e) {
101
   getInputData: function (e) {
102
+    //console.log("time1:"+new Date().getTime());
102
     common.getStorageValue(this, "IsShowHelp", 0, function () {
103
     common.getStorageValue(this, "IsShowHelp", 0, function () {
103
 
104
 
104
     });
105
     });
@@ -109,7 +110,7 @@ Page({
109
     var content = e.currentTarget.dataset.content;
110
     var content = e.currentTarget.dataset.content;
110
     var soundmark = e.currentTarget.dataset.soundmark;
111
     var soundmark = e.currentTarget.dataset.soundmark;
111
     //console.log(content);
112
     //console.log(content);
112
-
113
+    //console.log("time2:" + new Date().getTime());
113
     if (!this.data.CSS[css] || this.data.CSS[css].Number == "") {
114
     if (!this.data.CSS[css] || this.data.CSS[css].Number == "") {
114
       if (!this.data.CSS[css])
115
       if (!this.data.CSS[css])
115
         this.data.CSS[css] = {};
116
         this.data.CSS[css] = {};
@@ -144,10 +145,11 @@ Page({
144
     else {
145
     else {
145
       this.data.CSS[css].Number = Number(this.data.CSS[css].Number) + 1;
146
       this.data.CSS[css].Number = Number(this.data.CSS[css].Number) + 1;
146
     }
147
     }
147
-
148
+    //console.log("time3:" + new Date().getTime());
148
     this.setData({
149
     this.setData({
149
       CSS: this.data.CSS,
150
       CSS: this.data.CSS,
150
     });
151
     });
152
+    //console.log("time4:" + new Date().getTime());
151
   },
153
   },
152
   addData: function () {
154
   addData: function () {
153
     if (JSON.stringify(this.data.CSS) != "{}") {
155
     if (JSON.stringify(this.data.CSS) != "{}") {

+ 45 - 45
pages/main/searchWeb2.wxml

@@ -17,62 +17,62 @@
17
     <view class='lineFooter'></view>
17
     <view class='lineFooter'></view>
18
   </block>
18
   </block>
19
 
19
 
20
-  <!-- 笔顺和楷书 -->
21
-  <block wx:if="{{Result.CHN.HanZiImageUrl || Result.CHN.BiShunUrl }}">
20
+  <!-- 拼音 -->
21
+  <block wx:if="{{Result.CHN.PinYin && Result.CHN.PinYin.length>0}}">
22
     <view class="panelTitle FlexRow">
22
     <view class="panelTitle FlexRow">
23
-      <view class="panelTitle1">书写</view>
23
+      <view class="panelTitle1">拼音</view>
24
     </view>
24
     </view>
25
     <view class="panelItem FlexRow">
25
     <view class="panelItem FlexRow">
26
-      <view wx:if="{{Result.CHN.HanZiImageUrl}}" class="{{CSS.CHN_HanZiImageUrl.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="image" data-content="{{Result.CHN.HanZiImageUrl}}" data-css="CHN_HanZiImageUrl" data-tag="书写">
27
-        <view class="{{CSS.CHN_HanZiImageUrl.Css2}} panelSelect0">{{CSS.CHN_HanZiImageUrl.Number}}</view>
28
-        <image class="image1" src="{{Result.CHN.HanZiImageUrl}}" />
29
-      </view>
30
-      <view wx:if="{{Result.CHN.BiShunUrl}}" class="{{CSS.CHN_BiShunUrl.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="image" data-content="{{Result.CHN.BiShunUrl}}" data-css="CHN_BiShunUrl" data-tag="书写">
31
-        <view class="{{CSS.CHN_BiShunUrl.Css2}} panelSelect0">{{CSS.CHN_BiShunUrl.Number}}</view>
32
-        <image class="image1" src="{{Result.CHN.BiShunUrl}}" />
26
+      <view class="{{CSS['CHN_PinYin_'+index+'_pinyin'].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PinYin}}" wx:key="pinyin" bindtap='getInputData' data-type="sound" data-content="{{item.pinyin}}" data-css="CHN_PinYin_{{index}}_pinyin" data-tag="拼音">
27
+        <view class="{{CSS['CHN_PinYin_'+index+'_pinyin'].Css2}} panelSelect0">{{CSS['CHN_PinYin_'+index+'_pinyin'].Number}}</view>
28
+        <view class="text2 text1">{{item.pinyin}}</view>
33
       </view>
29
       </view>
34
     </view>
30
     </view>
35
     <view class='lineFooter'></view>
31
     <view class='lineFooter'></view>
36
   </block>
32
   </block>
37
 
33
 
38
-  <!-- 笔顺数组 -->
39
-  <block wx:if="{{Result.CHN.BiShunArr && Result.CHN.BiShunArr.length>0}}">
34
+  <!-- 默写 -->
35
+  <block wx:if="{{Result.CHN.TianKong && Result.CHN.TianKong.length>0}}">
40
     <view class="panelTitle FlexRow">
36
     <view class="panelTitle FlexRow">
41
-      <view class="panelTitle1">写</view>
37
+      <view class="panelTitle1">单字默写</view>
42
     </view>
38
     </view>
43
     <view class="panelItem FlexRow">
39
     <view class="panelItem FlexRow">
44
-      <view class="{{CSS['CHN_BiShunArr_'+index].Css1}} panelItemFrame1 panelItemFrame FlexRow" wx:for="{{Result.CHN.BiShunArr}}" wx:key="index" bindtap='getInputData' data-type="image" data-content="{{item}}" data-css="CHN_BiShunArr_{{index}}" data-tag="书写">
45
-        <view class="{{CSS['CHN_BiShunArr_'+index].Css2}} panelSelect0">{{CSS['CHN_BiShunArr_'+index].Number}}</view>
46
-        <image class="image1" src="{{item}}" />
40
+      <view class="{{CSS['CHN_TianKong_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.TianKong}}" wx:key="*this" bindtap='getInputData' data-type="sound" data-content="{{item}}" data-css="CHN_TianKong_{{index}}" data-pinyin="{{Result.CHN.PinYin[0].pinyin}}"
41
+        data-tag="默写">
42
+        <view class="{{CSS['CHN_TianKong_'+index].Css2}} panelSelect0">{{CSS['CHN_TianKong_'+index].Number}}</view>
43
+        <view class="text1">{{item}}</view>
47
       </view>
44
       </view>
48
     </view>
45
     </view>
49
     <view class='lineFooter'></view>
46
     <view class='lineFooter'></view>
50
   </block>
47
   </block>
51
 
48
 
52
-  <!-- 读写 -->
53
-  <block wx:if="{{Result.CHN.TianKong && Result.CHN.TianKong.length>0}}">
49
+  <!-- 笔顺和楷书 -->
50
+  <block wx:if="{{Result.CHN.HanZiImageUrl || Result.CHN.BiShunUrl }}">
54
     <view class="panelTitle FlexRow">
51
     <view class="panelTitle FlexRow">
55
-      <view class="panelTitle1">写</view>
52
+      <view class="panelTitle1">写</view>
56
     </view>
53
     </view>
57
     <view class="panelItem FlexRow">
54
     <view class="panelItem FlexRow">
58
-      <view class="{{CSS['CHN_TianKong_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.TianKong}}" wx:key="index" bindtap='getInputData' data-type="sound" data-content="{{item}}" data-css="CHN_TianKong_{{index}}" data-pinyin="{{Result.CHN.PinYin[0].pinyin}}"
59
-        data-tag="读写">
60
-        <view class="{{CSS['CHN_TianKong_'+index].Css2}} panelSelect0">{{CSS['CHN_TianKong_'+index].Number}}</view>
61
-        <view class="text1">{{item}}</view>
55
+      <view wx:if="{{Result.CHN.HanZiImageUrl}}" class="{{CSS.CHN_HanZiImageUrl.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="image" data-content="{{Result.CHN.HanZiImageUrl}}" data-css="CHN_HanZiImageUrl" data-tag="书写">
56
+        <view class="{{CSS.CHN_HanZiImageUrl.Css2}} panelSelect0">{{CSS.CHN_HanZiImageUrl.Number}}</view>
57
+        <image class="image1" src="{{Result.CHN.HanZiImageUrl}}" />
58
+      </view>
59
+      <view wx:if="{{Result.CHN.BiShunUrl}}" class="{{CSS.CHN_BiShunUrl.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="image" data-content="{{Result.CHN.BiShunUrl}}" data-css="CHN_BiShunUrl" data-tag="书写">
60
+        <view class="{{CSS.CHN_BiShunUrl.Css2}} panelSelect0">{{CSS.CHN_BiShunUrl.Number}}</view>
61
+        <image class="image1" src="{{Result.CHN.BiShunUrl}}" />
62
       </view>
62
       </view>
63
     </view>
63
     </view>
64
     <view class='lineFooter'></view>
64
     <view class='lineFooter'></view>
65
   </block>
65
   </block>
66
 
66
 
67
-  <!-- 拼音 -->
68
-  <block wx:if="{{Result.CHN.PinYin && Result.CHN.PinYin.length>0}}">
67
+  <!-- 笔顺数组 -->
68
+  <block wx:if="{{Result.CHN.BiShunArr && Result.CHN.BiShunArr.length>0}}">
69
     <view class="panelTitle FlexRow">
69
     <view class="panelTitle FlexRow">
70
-      <view class="panelTitle1">拼音</view>
70
+      <view class="panelTitle1">书写</view>
71
     </view>
71
     </view>
72
     <view class="panelItem FlexRow">
72
     <view class="panelItem FlexRow">
73
-      <view class="{{CSS['CHN_PinYin_'+index+'_pinyin'].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PinYin}}" wx:key="index" bindtap='getInputData' data-type="sound" data-content="{{item.pinyin}}" data-css="CHN_PinYin_{{index}}_pinyin" data-tag="拼音">
74
-        <view class="{{CSS['CHN_PinYin_'+index+'_pinyin'].Css2}} panelSelect0">{{CSS['CHN_PinYin_'+index+'_pinyin'].Number}}</view>
75
-        <view class="text2 text1">{{item.pinyin}}</view>
73
+      <view class="{{CSS['CHN_BiShunArr_'+index].Css1}} panelItemFrame1 panelItemFrame FlexRow" wx:for="{{Result.CHN.BiShunArr}}" wx:key="*this" bindtap='getInputData' data-type="image" data-content="{{item}}" data-css="CHN_BiShunArr_{{index}}" data-tag="书写">
74
+        <view class="{{CSS['CHN_BiShunArr_'+index].Css2}} panelSelect0">{{CSS['CHN_BiShunArr_'+index].Number}}</view>
75
+        <image class="image1" src="{{item}}" />
76
       </view>
76
       </view>
77
     </view>
77
     </view>
78
     <view class='lineFooter'></view>
78
     <view class='lineFooter'></view>
@@ -84,7 +84,7 @@
84
       <view class="panelTitle1">组词</view>
84
       <view class="panelTitle1">组词</view>
85
     </view>
85
     </view>
86
     <view class="panelItem FlexRow">
86
     <view class="panelItem FlexRow">
87
-      <view class="{{CSS['CHN_CombineWords_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.CombineWords}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_CombineWords_{{index}}" data-tag="组词">
87
+      <view class="{{CSS['CHN_CombineWords_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.CombineWords}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_CombineWords_{{index}}" data-tag="组词">
88
         <view class="{{CSS['CHN_CombineWords_'+index].Css2}} panelSelect0">{{CSS['CHN_CombineWords_'+index].Number}}</view>
88
         <view class="{{CSS['CHN_CombineWords_'+index].Css2}} panelSelect0">{{CSS['CHN_CombineWords_'+index].Number}}</view>
89
         <view class="text1">{{item}}</view>
89
         <view class="text1">{{item}}</view>
90
       </view>
90
       </view>
@@ -98,7 +98,7 @@
98
       <view class="panelTitle1">近义词</view>
98
       <view class="panelTitle1">近义词</view>
99
     </view>
99
     </view>
100
     <view class="panelItem FlexRow">
100
     <view class="panelItem FlexRow">
101
-      <view class="{{CSS['CHN_Synonym_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Synonym}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Synonym_{{index}}" data-tag="近义词">
101
+      <view class="{{CSS['CHN_Synonym_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Synonym}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Synonym_{{index}}" data-tag="近义词">
102
         <view class="{{CSS['CHN_Synonym_'+index].Css2}} panelSelect0">{{CSS['CHN_Synonym_'+index].Number}}</view>
102
         <view class="{{CSS['CHN_Synonym_'+index].Css2}} panelSelect0">{{CSS['CHN_Synonym_'+index].Number}}</view>
103
         <view class="text1">{{item}}</view>
103
         <view class="text1">{{item}}</view>
104
       </view>
104
       </view>
@@ -112,7 +112,7 @@
112
       <view class="panelTitle1">反义词</view>
112
       <view class="panelTitle1">反义词</view>
113
     </view>
113
     </view>
114
     <view class="panelItem FlexRow">
114
     <view class="panelItem FlexRow">
115
-      <view class="{{CSS['CHN_Antonym_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Antonym}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Antonym_{{index}}" data-tag="反义词">
115
+      <view class="{{CSS['CHN_Antonym_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Antonym}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Antonym_{{index}}" data-tag="反义词">
116
         <view class="{{CSS['CHN_Antonym_'+index].Css2}} panelSelect0">{{CSS['CHN_Antonym_'+index].Number}}</view>
116
         <view class="{{CSS['CHN_Antonym_'+index].Css2}} panelSelect0">{{CSS['CHN_Antonym_'+index].Number}}</view>
117
         <view class="text1">{{item}}</view>
117
         <view class="text1">{{item}}</view>
118
       </view>
118
       </view>
@@ -126,7 +126,7 @@
126
       <view class="panelTitle1">中文释义</view>
126
       <view class="panelTitle1">中文释义</view>
127
     </view>
127
     </view>
128
     <view class="panelItem FlexRow">
128
     <view class="panelItem FlexRow">
129
-      <view class="{{CSS['CHN_PinYin_explain_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PinYin}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item.explain}}" data-css="CHN_PinYin_explain_{{index}}" data-tag="释义">
129
+      <view class="{{CSS['CHN_PinYin_explain_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PinYin}}" wx:key="pinyin" bindtap='getInputData' data-type="normal" data-content="{{item.explain}}" data-css="CHN_PinYin_explain_{{index}}" data-tag="释义">
130
         <view class="{{CSS['CHN_PinYin_explain_'+index].Css2}} panelSelect0">{{CSS['CHN_PinYin_explain_'+index].Number}}</view>
130
         <view class="{{CSS['CHN_PinYin_explain_'+index].Css2}} panelSelect0">{{CSS['CHN_PinYin_explain_'+index].Number}}</view>
131
         <text class="text1"><block wx:if="{{Result.CHN.PinYin.length>1}}">
131
         <text class="text1"><block wx:if="{{Result.CHN.PinYin.length>1}}">
132
         [{{item.pinyin}}]\n 
132
         [{{item.pinyin}}]\n 
@@ -162,9 +162,9 @@
162
       <view class="{{CSS.CHN_PeomContent.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.PeomContent}}" data-css="CHN_PeomContent" data-tag="诗词">
162
       <view class="{{CSS.CHN_PeomContent.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.PeomContent}}" data-css="CHN_PeomContent" data-tag="诗词">
163
         <view class="{{CSS.CHN_PeomContent.Css2}} panelSelect0">{{CSS.CHN_PeomContent.Number}}</view>
163
         <view class="{{CSS.CHN_PeomContent.Css2}} panelSelect0">{{CSS.CHN_PeomContent.Number}}</view>
164
         <text class="text1">
164
         <text class="text1">
165
-          <block wx:for="{{Result.CHN.PeomContent}}" wx:key="index" wx:for-item="item1">
165
+          <block wx:for="{{Result.CHN.PeomContent}}" wx:key="*this" wx:for-item="item1">
166
             <block wx:if="{{index>0}}">\n</block>
166
             <block wx:if="{{index>0}}">\n</block>
167
-            <block wx:for="{{item1}}" wx:key="indexChild" wx:for-item="item2">{{item2}}</block>
167
+            <block wx:for="{{item1}}" wx:key="*this" wx:for-item="item2">{{item2}}</block>
168
           </block>
168
           </block>
169
         </text>
169
         </text>
170
       </view>
170
       </view>
@@ -172,17 +172,17 @@
172
 
172
 
173
       <!-- 每段原文较长,且有多段 -->
173
       <!-- 每段原文较长,且有多段 -->
174
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.PeomContent.length>1}}">
174
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.PeomContent.length>1}}">
175
-        <view class="{{CSS['CHN_PeomContent_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PeomContent}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_PeomContent_{{index}}" data-tag="诗词">
175
+        <view class="{{CSS['CHN_PeomContent_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PeomContent}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_PeomContent_{{index}}" data-tag="诗词">
176
           <view class="{{CSS['CHN_PeomContent_'+index].Css2}} panelSelect0">{{CSS['CHN_PeomContent_'+index].Number}}</view>
176
           <view class="{{CSS['CHN_PeomContent_'+index].Css2}} panelSelect0">{{CSS['CHN_PeomContent_'+index].Number}}</view>
177
           <view class="text1">
177
           <view class="text1">
178
-            <block wx:for="{{item}}" wx:key="indexChild" wx:for-item="item2">{{item2}}</block>
178
+            <block wx:for="{{item}}" wx:key="*this" wx:for-item="item2" wx:for-index="indexChild">{{item2}}</block>
179
           </view>
179
           </view>
180
         </view>
180
         </view>
181
       </block>
181
       </block>
182
 
182
 
183
       <!-- 每句诗词原文较长,且有单段 -->
183
       <!-- 每句诗词原文较长,且有单段 -->
184
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.PeomContent.length==1}}">
184
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.PeomContent.length==1}}">
185
-        <view class="{{CSS['CHN_PeomContent_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PeomContent[0]}}" wx:if="{{item}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_PeomContent_{{index}}" data-tag="诗词">
185
+        <view class="{{CSS['CHN_PeomContent_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.PeomContent[0]}}" wx:if="{{item}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_PeomContent_{{index}}" data-tag="诗词">
186
           <view class="{{CSS['CHN_PeomContent_'+index].Css2}} panelSelect0">{{CSS['CHN_PeomContent_'+index].Number}}</view>
186
           <view class="{{CSS['CHN_PeomContent_'+index].Css2}} panelSelect0">{{CSS['CHN_PeomContent_'+index].Number}}</view>
187
           <view class="text1">
187
           <view class="text1">
188
             {{item}}
188
             {{item}}
@@ -206,9 +206,9 @@
206
       <view class="{{CSS.CHN_Translation.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.Translation}}" data-css="CHN_Translation" data-tag="译文">
206
       <view class="{{CSS.CHN_Translation.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.Translation}}" data-css="CHN_Translation" data-tag="译文">
207
         <view class="{{CSS.CHN_Translation.Css2}} panelSelect0">{{CSS.CHN_Translation.Number}}</view>
207
         <view class="{{CSS.CHN_Translation.Css2}} panelSelect0">{{CSS.CHN_Translation.Number}}</view>
208
         <text class="text1">
208
         <text class="text1">
209
-          <block wx:for="{{Result.CHN.Translation}}" wx:key="index" wx:for-item="item1">
209
+          <block wx:for="{{Result.CHN.Translation}}" wx:key="*this" wx:for-item="item1">
210
             <block wx:if="{{index>0}}">\n</block>
210
             <block wx:if="{{index>0}}">\n</block>
211
-            <block wx:for="{{item1}}" wx:key="indexChild" wx:for-item="item2">{{item2}}</block>
211
+            <block wx:for="{{item1}}" wx:key="*this" wx:for-item="item2" wx:for-index="indexChild">{{item2}}</block>
212
           </block>
212
           </block>
213
         </text>
213
         </text>
214
       </view>
214
       </view>
@@ -216,10 +216,10 @@
216
 
216
 
217
       <!-- 每段诗词原文较长,且有多段 -->
217
       <!-- 每段诗词原文较长,且有多段 -->
218
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.Translation.length>1}}">
218
       <block wx:if="{{Result.CHN.PeomContentIsLong && Result.CHN.Translation.length>1}}">
219
-        <view class="{{CSS['CHN_Translation_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Translation}}" wx:key="index" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Translation_{{index}}" data-tag="译文">
219
+        <view class="{{CSS['CHN_Translation_'+index].Css1}} panelItemFrame FlexRow" wx:for="{{Result.CHN.Translation}}" wx:key="*this" bindtap='getInputData' data-type="normal" data-content="{{item}}" data-css="CHN_Translation_{{index}}" data-tag="译文">
220
           <view class="{{CSS['CHN_Translation_'+index].Css2}} panelSelect0">{{CSS['CHN_Translation_'+index].Number}}</view>
220
           <view class="{{CSS['CHN_Translation_'+index].Css2}} panelSelect0">{{CSS['CHN_Translation_'+index].Number}}</view>
221
           <view class="text1">
221
           <view class="text1">
222
-            <block wx:for="{{item}}" wx:key="indexChild" wx:for-item="item2">{{item2}}</block>
222
+            <block wx:for="{{item}}" wx:key="*this" wx:for-item="item2" wx:for-index="indexChild">{{item2}}</block>
223
           </view>
223
           </view>
224
         </view>
224
         </view>
225
       </block>
225
       </block>
@@ -229,7 +229,7 @@
229
         <view class="{{CSS.CHN_Translation.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.Translation[0]}}" data-css="CHN_Translation" data-tag="译文">
229
         <view class="{{CSS.CHN_Translation.Css1}} panelItemFrame FlexRow" bindtap='getInputData' data-type="normal" data-content="{{Result.CHN.Translation[0]}}" data-css="CHN_Translation" data-tag="译文">
230
         <view class="{{CSS.CHN_Translation.Css2}} panelSelect0">{{CSS.CHN_Translation.Number}}</view>
230
         <view class="{{CSS.CHN_Translation.Css2}} panelSelect0">{{CSS.CHN_Translation.Number}}</view>
231
         <text class="text1">
231
         <text class="text1">
232
-          <block wx:for="{{Result.CHN.Translation}}" wx:key="index" wx:for-item="item1">
232
+          <block wx:for="{{Result.CHN.Translation}}" wx:key="*this" wx:for-item="item1">
233
             {{item1}}
233
             {{item1}}
234
           </block>
234
           </block>
235
         </text>
235
         </text>
@@ -281,8 +281,8 @@
281
       <view class="panelTitle1">翻译</view>
281
       <view class="panelTitle1">翻译</view>
282
     </view>
282
     </view>
283
     <view class="panelItem FlexRow">
283
     <view class="panelItem FlexRow">
284
-      <block wx:for="{{Result.ENG.Paraphrase}}" wx:key="index" wx:if="{{item.ParaphraseList}}">
285
-        <view class="{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Css1}} panelItemFrame FlexRow" wx:for="{{item.ParaphraseList}}" wx:key="index1" wx:for-item="itemChild" wx:for-index="indexChild" bindtap='getInputData' data-type="normal" data-content="{{item.PartOfSpeech}} {{itemChild}}"
284
+      <block wx:for="{{Result.ENG.Paraphrase}}" wx:key="ParaphraseList" wx:if="{{item.ParaphraseList}}">
285
+        <view class="{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Css1}} panelItemFrame FlexRow" wx:for="{{item.ParaphraseList}}" wx:key="*this" wx:for-item="itemChild" wx:for-index="indexChild" bindtap='getInputData' data-type="normal" data-content="{{item.PartOfSpeech}} {{itemChild}}"
286
           data-css="ENG_ParaphraseList_{{index}}_{{indexChild}}" data-tag="翻译">
286
           data-css="ENG_ParaphraseList_{{index}}_{{indexChild}}" data-tag="翻译">
287
           <view class="{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Css2}} panelSelect0">{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Number}}</view>
287
           <view class="{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Css2}} panelSelect0">{{CSS['ENG_ParaphraseList_'+index+'_'+indexChild].Number}}</view>
288
           <text class="text1">{{item.PartOfSpeech}} {{itemChild}}</text>
288
           <text class="text1">{{item.PartOfSpeech}} {{itemChild}}</text>

+ 0 - 8
pages/main/searchWeb2.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-  color: #1e1e1e;
5
-  background-color: #F0F0F0;
6
-}
7
-
8
 .panelTitle {
1
 .panelTitle {
9
   width: 100%;
2
   width: 100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;
@@ -104,7 +97,6 @@
104
   border-top: 1rpx solid #d2d2d2;
97
   border-top: 1rpx solid #d2d2d2;
105
 }
98
 }
106
 
99
 
107
-
108
 .numberContainer {
100
 .numberContainer {
109
   background-color: rgba(0, 0, 0, 0.7);
101
   background-color: rgba(0, 0, 0, 0.7);
110
   position: fixed;
102
   position: fixed;

+ 6 - 1
pages/main/setting.js

@@ -6,7 +6,7 @@ const arrSortType = ["随机抽取的题卡", "时间较早的题卡", "时间
6
 const arrSortType2 = ["随机的", "较早的", "较近的"];
6
 const arrSortType2 = ["随机的", "较早的", "较近的"];
7
 const arrClickType = ["专属按钮", "点击空白", "两种方式"];
7
 const arrClickType = ["专属按钮", "点击空白", "两种方式"];
8
 var arrUserName = ["程晟涵", "大耳兔", "teresa", "古利古拉", "Lucy-chan", "临时"];
8
 var arrUserName = ["程晟涵", "大耳兔", "teresa", "古利古拉", "Lucy-chan", "临时"];
9
-var arrUserID = [2, 11, 8, 9, 10, 128];
9
+var arrUserID = [2, 11, 8, 9, 10, 222];
10
 
10
 
11
 Page({
11
 Page({
12
   data: {
12
   data: {
@@ -166,6 +166,11 @@ Page({
166
       url: './clicktype',
166
       url: './clicktype',
167
     })
167
     })
168
   },
168
   },
169
+  gotoBinding:function(){
170
+    wx.navigateTo({
171
+      url: '../other/binding',
172
+    })
173
+  },
169
   updateMember: function () {
174
   updateMember: function () {
170
     wx.reLaunch({
175
     wx.reLaunch({
171
       url: '../index/index',
176
       url: '../index/index',

+ 16 - 3
pages/main/setting.wxml

@@ -29,7 +29,7 @@
29
     </view>
29
     </view>
30
   </view>
30
   </view>
31
   <view class='lineFooter'></view>
31
   <view class='lineFooter'></view>
32
-  
32
+
33
   <view class="panelEveryDay">每天{{CardMaxNumberNew+CardMaxNumberHistory}}张题卡</view>
33
   <view class="panelEveryDay">每天{{CardMaxNumberNew+CardMaxNumberHistory}}张题卡</view>
34
 
34
 
35
   <view class="panelTitle FlexRow">
35
   <view class="panelTitle FlexRow">
@@ -98,7 +98,16 @@
98
     </view>
98
     </view>
99
   </view>
99
   </view>
100
   <view class='lineFooter'></view>
100
   <view class='lineFooter'></view>
101
-
101
+  <view class="panelTitle FlexRow">
102
+    <view class="panelTitle1">系统</view>
103
+    <view class="panelTitle2"></view>
104
+  </view>
105
+  <view class="panelItem FlexRow" bindtap='gotoBinding'>
106
+    <view class="panelItem1">帐号绑定</view>
107
+    <view class="panelItem2 FlexRow">
108
+      <image src='../images/universalpic_indicator_right_gray.png' class="Arrow" />
109
+    </view>
110
+  </view>
102
   <block wx:if="{{IsShowChange}}">
111
   <block wx:if="{{IsShowChange}}">
103
     <view class="panelTitle FlexRow">
112
     <view class="panelTitle FlexRow">
104
       <view class="panelTitle1">切换帐号</view>
113
       <view class="panelTitle1">切换帐号</view>
@@ -116,7 +125,11 @@
116
     <view class='lineFooter'></view>
125
     <view class='lineFooter'></view>
117
   </block>
126
   </block>
118
 
127
 
128
+  <view class="panelItem00 panelItem FlexRow" bindtap='updateMember'>
129
+    重启小程序
130
+  </view>
131
+
119
   <view style='width:100%;height:100rpx;' bindtap='gotoPay'></view>
132
   <view style='width:100%;height:100rpx;' bindtap='gotoPay'></view>
120
-  <text class='text1' bindtap='updateMember'>©2019 {{ProgramName}}\n微信小程序 版本 {{Version}}</text>
133
+  <text class='text1'>©2019 {{ProgramName}}\n微信小程序 版本 {{Version}}</text>
121
   <view style='width:100%;height:100rpx;' bindtap='gotoLesson'></view>
134
   <view style='width:100%;height:100rpx;' bindtap='gotoLesson'></view>
122
 </view>
135
 </view>

+ 7 - 7
pages/main/setting.wxss

@@ -1,10 +1,3 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
-
8
 .panelTitle{
1
 .panelTitle{
9
   width:100%;
2
   width:100%;
10
   margin-top: 50rpx;
3
   margin-top: 50rpx;
@@ -37,6 +30,13 @@
37
 .panelItem0{
30
 .panelItem0{
38
   height:133rpx;
31
   height:133rpx;
39
 }
32
 }
33
+.panelItem00{
34
+  margin-top: 10rpx;
35
+  line-height: 100rpx;
36
+  font-size:28rpx;
37
+  font-weight: 400;
38
+  justify-content: center;
39
+}
40
 
40
 
41
 .panelItem .panelItem1{
41
 .panelItem .panelItem1{
42
   margin-left: 30rpx;
42
   margin-left: 30rpx;

+ 119 - 0
pages/other/binding.js

@@ -0,0 +1,119 @@
1
+import common from '../../utils/util';
2
+import main from '../../utils/main';
3
+
4
+const app = getApp();
5
+
6
+Page({
7
+  data: {
8
+  },
9
+  onLoad: function (options) {
10
+    var that = this;
11
+    if (options && options.type && options.type == "bebound") {
12
+      
13
+      if (app.globalData.userSource=="1007"){
14
+        that.setData({
15
+          ShowPanel: "bebound",
16
+          ParentUserID: options.ParentUserID,
17
+          NickName: options.NickName,
18
+        });
19
+        that.download(options.AvatarUrl);
20
+      }
21
+      else{
22
+        wx.showModal({
23
+          title: '抱歉',
24
+          content: '绑定功能只能用于朋友单聊',
25
+          showCancel: false,
26
+          confirmText: "知道了",
27
+          success:function(){
28
+            wx.reLaunch({
29
+              url: '../index/index',
30
+            })
31
+          }
32
+        });
33
+      }
34
+    }
35
+    else {
36
+      main.getData("GetUserBindingList?UserID=" + app.globalData.userInfo.UserID, function (data) {
37
+        if (data && data.length>0){
38
+          that.setData({
39
+            List:data,
40
+            ShowPanel: "unbinding",
41
+          });
42
+        }
43
+        else{
44
+          that.setData({
45
+            ShowPanel: "binding",
46
+          });
47
+        }
48
+      });
49
+    }
50
+
51
+    that.setData({
52
+      Containnerheight: main.getWindowHeight(),
53
+    });
54
+  },
55
+  download: function (avatarUrl){
56
+    var that=this;
57
+    wx.downloadFile({
58
+      url: avatarUrl, 
59
+      success(res) {
60
+        if (res.statusCode === 200) {
61
+          that.setData({
62
+            AvatarUrl: res.tempFilePath,
63
+          });
64
+        }
65
+      }
66
+    });
67
+  },
68
+  onShow: function () {
69
+    var that = this;
70
+    wx.getSetting({
71
+      success(res) {
72
+        if (res.authSetting['scope.userInfo']) {
73
+
74
+        }
75
+        else {
76
+          wx.navigateTo({
77
+            url: '../index/accredit',
78
+          });
79
+        }
80
+      }
81
+    });
82
+  },
83
+  shareFinished: function () {
84
+    wx.showModal({
85
+      title: '等待对方接受邀请',
86
+      content: '请尽快与对方联系确认邀请',
87
+      showCancel: false,
88
+      confirmText: "知道了",
89
+    });
90
+  },
91
+  gotoBinding: function () {
92
+    var that = this;
93
+    main.getData("UpdateUserMemberInfo?UserID=" + app.globalData.userInfo.UserID + "&ParentUserID=" + this.data.ParentUserID, function (data) {
94
+      wx.reLaunch({
95
+        url: '../index/index',
96
+      })
97
+    });
98
+  },
99
+  gotoUnBinding: function () {
100
+    var that = this;
101
+    main.getData("UpdateUserBinding?ParentUserID=" + app.globalData.userInfo.UserID, function (data) {
102
+      wx.reLaunch({
103
+        url: '../index/index',
104
+      })
105
+    });
106
+  },
107
+  onShareAppMessage: function () {
108
+    if (this.data.ShowPanel == "binding") {
109
+      var path = '/pages/index/index?type=bebound&ParentUserID=' + app.globalData.userInfo.UserID;
110
+      path += "&NickName=" + app.globalData.userInfo.NickName;
111
+      path += "&AvatarUrl=" + app.globalData.userInfo.AvatarUrl;
112
+      return {
113
+        title: app.globalData.userInfo.NickName,
114
+        path: path,
115
+        imageUrl: "../images/program_screenshot_bindaccount.png",
116
+      }
117
+    }
118
+  },
119
+})

+ 4 - 0
pages/other/binding.json

@@ -0,0 +1,4 @@
1
+{
2
+  "navigationBarTitleText": "帐号绑定",
3
+  "backgroundColor": "#F0F0F0"
4
+}

+ 58 - 0
pages/other/binding.wxml

@@ -0,0 +1,58 @@
1
+<view wx:if="{{ShowPanel=='binding'}}" class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
2
+  <text class="text2">使用协议:\n
3
+1)绑定帐号用于:与家人一同督导孩子学习,在您繁忙时,由另一位家长的微信帐号继续学习。这是官方唯一认可的用途。\n
4
+2)绑定后并非共享、分享您的数据,而是多个帐号均使用您的数据。\n
5
+3)与对方绑定后,对方将失去自己的独立数据和使用权,对方的小程序将看到和您完全相同的内容,直接对您的数据进行操作(包括但不限于题卡、任务、站内通知、设置等),对方的任何操作均被视同您本人的行为,其结果不可区分不可回溯。特别注意,对方同样拥有帐号绑定的操作权,可将自己解除绑定。\n
6
+4)请勿将此功能用于多人学习。这会极大干扰制定任务、编排计划、同步数据等,使得程序核心功能完全失去效用,反而丧失了使用本产品的价值,这是得不偿失的。\n
7
+5)发现绑定错误,请立即解绑。期间造成的隐私、数据等问题由个人承担。再次提醒您谨慎使用这项功能。
8
+  </text>
9
+
10
+  <text class="text3">请仔细阅读协议并谨慎操作,\n请再三确定对方身份(禁止转发聊天群)</text>
11
+
12
+  <button class='btn' bindtap='shareFinished' open-type='share'>同意并转发绑定申请</button>
13
+  <view style='height:100rpx;'></view>
14
+</view>
15
+
16
+<view wx:if="{{ShowPanel=='unbinding'}}" class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
17
+  <view class="text1">已绑定的微信帐号</view>
18
+  <view class='userinfo FlexRow' wx:for="{{List}}" wx:key="index">
19
+    <image class='avatar' src="{{item.AvatarUrl}}" />
20
+    <view class="nickname">{{item.NickName}}</view>
21
+  </view>
22
+  <view class='lineFooter'></view>
23
+  <text class="text2">使用协议:\n
24
+1)绑定帐号用于:与家人一同督导孩子学习,在您繁忙时,由另一位家长的微信帐号继续学习。这是官方唯一认可的用途。\n
25
+2)绑定后并非共享、分享您的数据,而是多个帐号均使用您的数据。\n
26
+3)与对方绑定后,对方将失去自己的独立数据和使用权,对方的小程序将看到和您完全相同的内容,直接对您的数据进行操作(包括但不限于题卡、任务、站内通知、设置等),对方的任何操作均被视同您本人的行为,其结果不可区分不可回溯。特别注意,对方同样拥有帐号绑定的操作权,可将自己解除绑定。\n
27
+4)请勿将此功能用于多人学习。这会极大干扰制定任务、编排计划、同步数据等,使得程序核心功能完全失去效用,反而丧失了使用本产品的价值,这是得不偿失的。\n
28
+5)发现绑定错误,请立即解绑。期间造成的隐私、数据等问题由个人承担。再次提醒您谨慎使用这项功能。
29
+  </text>
30
+
31
+  <button class='btn2 btn' bindtap='gotoUnBinding'>解除绑定</button>
32
+  <view style='height:100rpx;'></view>
33
+
34
+</view>
35
+
36
+
37
+<view wx:if="{{ShowPanel=='bebound'}}" class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
38
+  <view class="text1">这位用户邀请您“绑定帐号”</view>
39
+  <view class='userinfo FlexRow'>
40
+    <image class='avatar' src="{{AvatarUrl}}" />
41
+    <view class="nickname">{{NickName}}</view>
42
+  </view>
43
+  <view class='lineFooter'></view>
44
+
45
+  <text class="text2">使用协议:\n
46
+1)《秒过学习》的绑定帐号功能用于:与家人一同督导孩子学习,在您繁忙时,由另一位家长的微信帐号继续学习。这是官方唯一认可的用途。\n
47
+2)绑定后并非共享、分享您的数据,而是多个帐号均使用您的数据。\n
48
+3)与对方绑定后,您将失去自己的独立数据和使用权。您将和对方看到并使用相同的数据(包括但不限于题卡、任务、站内通知、设置等),您的任何操作均被视为对方本人的行为,其结果不可区分不可回溯。\n
49
+4)错误绑定,请立即通过微信联系对方。对方可能是您的直接联系人或某个群聊里的用户,请自行查找和解决。\n
50
+5)绑定期间对双方造成的隐私、数据等问题由您和对方承担。再次提醒您谨慎接受这则邀请。
51
+  </text>
52
+  <text class="text3">请仔细阅读协议并答复</text>
53
+  <view class="panelBtn FlexRow">
54
+    <navigator class='btn3 btn' open-type="exit" target="miniProgram">拒绝</navigator>
55
+    <button class='btn4 btn' bindtap='gotoBinding'>接受</button>
56
+  </view>
57
+  <view style='height:100rpx;'></view>
58
+</view>

+ 72 - 0
pages/other/binding.wxss

@@ -0,0 +1,72 @@
1
+.text1{
2
+  align-self: flex-start;
3
+  font-size:32rpx;
4
+  margin: 50rpx 0 30rpx 30rpx;
5
+}
6
+
7
+.text2{
8
+  font-size:24rpx;
9
+  color:#787878;
10
+  margin-top: 30rpx;
11
+  width:690rpx;
12
+  font-weight: 400;
13
+}
14
+
15
+.text3{
16
+  font-size:28rpx;
17
+  margin: 60rpx 0 0 0;
18
+  font-weight: 400;
19
+  text-align: center;
20
+  line-height: 40rpx;
21
+}
22
+
23
+.btn{
24
+  width:690rpx;
25
+  height:90rpx;
26
+  text-align: center;
27
+  border:1rpx solid #9B9B9B;
28
+  font-size:36rpx;
29
+  line-height: 90rpx;
30
+  border-radius: 14rpx;
31
+  color:#787878;
32
+  background-color: #fff;
33
+  margin-top: 30rpx;
34
+}
35
+
36
+.userinfo{
37
+  width:100%;
38
+  height:120rpx;
39
+  background-color: #ffffff;
40
+  justify-content: flex-start;
41
+  border-bottom: 1rpx solid #E3E3E3;
42
+}
43
+
44
+.avatar{
45
+  margin-left: 30rpx;
46
+  width:60rpx;
47
+  height:60rpx;
48
+  border-radius: 50%;
49
+}
50
+
51
+.nickname{
52
+  margin-left: 30rpx;
53
+  font-weight:400;
54
+  font-size: 28rpx;
55
+}
56
+
57
+.btn2{
58
+  margin-top: 60rpx;
59
+  background-color: #B3443B;
60
+  color:#fff;
61
+}
62
+.btn3{
63
+  background-color: #B3443B;
64
+  color:#fff;
65
+  width:290rpx;
66
+  margin: 30rpx 10rpx;
67
+}
68
+
69
+.btn4{
70
+  width:290rpx;
71
+  margin: 30rpx 10rpx;
72
+}

+ 42 - 0
pages/other/homework.js

@@ -0,0 +1,42 @@
1
+import common from '../../utils/util';
2
+import main from '../../utils/main';
3
+
4
+const app = getApp();
5
+
6
+Page({
7
+  data: {
8
+    List: [],
9
+  },
10
+  onLoad: function (options) {
11
+    var that = this;
12
+    that.setData({
13
+      Containnerheight: main.getWindowHeight(),
14
+      NickName: app.globalData.userInfo.NickName,
15
+      AvatarUrl: app.globalData.userInfo.AvatarUrl,
16
+    });
17
+
18
+    var userid = app.globalData.userInfo.UserID;
19
+    if (options.UserID)
20
+      userid=options.UserID;
21
+
22
+    main.getData("GetMiaoguoCheckList?UserID=" + userid, function (data) {
23
+      if (data) {
24
+        that.setData({
25
+          FinishedCount:data.FinishedCount,
26
+          List: data.List,
27
+          NickName: data.NickName,
28
+          AvatarUrl: data.AvatarUrl,
29
+        });
30
+      }
31
+    });
32
+
33
+    app.globalData.Homework=0;
34
+  },
35
+  onShareAppMessage: function () {
36
+    return {
37
+      title: "作业清单",
38
+      path: app.globalData.SharePath + '?UserID=' + app.globalData.userInfo.UserID +'&Homework=1',
39
+      imageUrl: "../images/program_screenshot_checklist.png",
40
+    }
41
+  },
42
+})

+ 5 - 0
pages/other/homework.json

@@ -0,0 +1,5 @@
1
+{
2
+  "navigationBarTitleText": "作业清单",
3
+  "backgroundColor": "#F0F0F0",
4
+  "enablePullDownRefresh": true
5
+}

+ 88 - 0
pages/other/homework.wxml

@@ -0,0 +1,88 @@
1
+<view class="container FlexColumn" style='min-height:{{Containnerheight}}rpx;'>
2
+  <view class='userinfo FlexRow'>
3
+    <image class='avatar' src="{{AvatarUrl}}" />
4
+    <view class="nickname">{{NickName}}</view>
5
+  </view>
6
+  <view class='panelItem FlexRow'>
7
+    <view class='panelItem1'>作业进度</view>
8
+    <view class='panelItem2'>{{FinishedCount}}%</view>
9
+  </view>
10
+  <view class='lineFooter'></view>
11
+
12
+  <view class="panelTitle FlexRow">
13
+    <view class="panelTitle1">课前准备</view>
14
+    <view></view>
15
+  </view>
16
+  <block wx:for="{{[List[1],List[2]]}}" wx:key="*this">
17
+    <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">
18
+      <view class="lineWidth720"></view>
19
+    </view>
20
+    <view class='panelItem FlexRow'>
21
+      <view class='panelItem1 FlexRow'>
22
+        <view wx:if="{{!item.Finished}}" class='Number'>{{index+3}}</view>
23
+        <image wx:if="{{item.Finished}}" class='universalpic_checked_blue_40x40' src='../images/universalpic_checked_blue_40x40.png' />
24
+        <view class='panelItem11'>{{item.Title}}</view>
25
+      </view>
26
+      <view></view>
27
+    </view>
28
+  </block>
29
+  <view class='lineFooter'></view>
30
+
31
+  <view class="panelTitle FlexRow">
32
+    <view class="panelTitle1">看课程</view>
33
+    <view></view>
34
+  </view>
35
+  <block wx:for="{{[List[3],List[4],List[5],List[6]]}}" wx:key="*this">
36
+    <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">
37
+      <view class="lineWidth720"></view>
38
+    </view>
39
+    <view class='panelItem FlexRow'>
40
+      <view class='panelItem1 FlexRow'>
41
+        <view wx:if="{{!item.Finished}}" class='Number'>{{index+3}}</view>
42
+        <image wx:if="{{item.Finished}}" class='universalpic_checked_blue_40x40' src='../images/universalpic_checked_blue_40x40.png' />
43
+        <view class='panelItem11'>{{item.Title}}</view>
44
+      </view>
45
+      <view></view>
46
+    </view>
47
+  </block>
48
+  <view class='lineFooter'></view>
49
+
50
+  <view class="panelTitle FlexRow">
51
+    <view class="panelTitle1">课后练习</view>
52
+    <view></view>
53
+  </view>
54
+  <block wx:for="{{[List[7],List[8]]}}" wx:key="*this">
55
+    <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">
56
+      <view class="lineWidth720"></view>
57
+    </view>
58
+    <view class='panelItem FlexRow'>
59
+      <view class='panelItem1 FlexRow'>
60
+        <view wx:if="{{!item.Finished}}" class='Number'>{{index+7}}</view>
61
+        <image wx:if="{{item.Finished}}" class='universalpic_checked_blue_40x40' src='../images/universalpic_checked_blue_40x40.png' />
62
+        <view class='panelItem11'>{{item.Title}}</view>
63
+      </view>
64
+      <view></view>
65
+    </view>
66
+  </block>
67
+  <view class='lineFooter'></view>
68
+
69
+  <view class="panelTitle FlexRow">
70
+    <view class="panelTitle1">班群技能</view>
71
+    <view></view>
72
+  </view>
73
+  <block wx:for="{{[List[9],List[10]]}}" wx:key="*this">
74
+    <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">
75
+      <view class="lineWidth720"></view>
76
+    </view>
77
+    <view class='panelItem FlexRow'>
78
+      <view class='panelItem1 FlexRow'>
79
+        <view wx:if="{{!item.Finished}}" class='Number'>{{index+9}}</view>
80
+        <image wx:if="{{item.Finished}}" class='universalpic_checked_blue_40x40' src='../images/universalpic_checked_blue_40x40.png' />
81
+        <view class='panelItem11'>{{item.Title}}</view>
82
+      </view>
83
+      <view></view>
84
+    </view>
85
+  </block>
86
+  <view class='lineFooter'></view>
87
+  <view style='height:100rpx;'></view>
88
+</view>

+ 65 - 0
pages/other/homework.wxss

@@ -0,0 +1,65 @@
1
+.userinfo{
2
+  width:100%;
3
+  margin: 50rpx 0 30rpx 0;
4
+  height:60rpx;
5
+  justify-content: flex-start;
6
+}
7
+
8
+.avatar{
9
+  margin-left:30rpx;
10
+  width:60rpx;
11
+  height:60rpx;
12
+  border-radius: 50%;
13
+}
14
+
15
+.nickname{
16
+  margin-left: 30rpx;
17
+  font-weight:400;
18
+  font-size: 28rpx;
19
+}
20
+.panelTitle{
21
+  width:100%;
22
+  margin-top: 50rpx;
23
+  justify-content: space-between;
24
+}
25
+.panelTitle .panelTitle1{
26
+  font-size:32rpx;
27
+  margin-left: 30rpx;
28
+  margin-bottom: 30rpx;
29
+}
30
+
31
+.panelItem{
32
+  width:100%;
33
+  justify-content: space-between;
34
+  font-size:28rpx;
35
+  height:100rpx;
36
+  background-color: #fff;
37
+}
38
+
39
+.panelItem .panelItem1{
40
+  margin-left: 30rpx;
41
+  font-weight: 400;
42
+  justify-content: flex-start;
43
+}
44
+
45
+.panelItem .panelItem2{
46
+  margin-right: 30rpx;
47
+  color:#787878;
48
+  font-weight: 500;
49
+}
50
+
51
+.panelItem .panelItem11{
52
+  margin-left: 20rpx;
53
+}
54
+
55
+.universalpic_checked_blue_40x40{
56
+  width:40rpx;
57
+  height:40rpx;
58
+}
59
+
60
+.Number{
61
+  font-size:36rpx;
62
+  color:#D2D2D2;
63
+  font-family: 'Roboto-Black';
64
+  margin: 0 19rpx 0 0;
65
+}

+ 33 - 10
pages/other/lesson.js

@@ -4,15 +4,13 @@ import main from '../../utils/main';
4
 const app = getApp();
4
 const app = getApp();
5
 var imageUrlPrefix;
5
 var imageUrlPrefix;
6
 var currentContent;
6
 var currentContent;
7
+var backgroundAudioManager;
7
 
8
 
8
 Page({
9
 Page({
9
   data: {
10
   data: {
10
     LessonID: 1,
11
     LessonID: 1,
11
     ArrTirtle: [],
12
     ArrTirtle: [],
12
   },
13
   },
13
-  onReady: function (e) {
14
-    this.audioCtx = wx.createAudioContext('myAudio')
15
-  },
16
   onLoad: function (options) {
14
   onLoad: function (options) {
17
     var that = this;
15
     var that = this;
18
     var LessonID = 1;
16
     var LessonID = 1;
@@ -23,11 +21,17 @@ Page({
23
     if (options && options.LessonPage) {
21
     if (options && options.LessonPage) {
24
       LessonPage = options.LessonPage;
22
       LessonPage = options.LessonPage;
25
     }
23
     }
24
+    else
25
+      LessonPage=1;
26
+
26
     that.setData({
27
     that.setData({
27
       Containnerheight: main.getWindowHeight(),
28
       Containnerheight: main.getWindowHeight(),
28
       LessonID: LessonID,
29
       LessonID: LessonID,
29
       LessonPage: LessonPage,
30
       LessonPage: LessonPage,
30
     });
31
     });
32
+    backgroundAudioManager = wx.getBackgroundAudioManager();
33
+    backgroundAudioManager.onEnded(that.bindEnded);
34
+
31
     imageUrlPrefix = app.globalData.uploadImageUrl + "lesson/lesson" + LessonID + "/";
35
     imageUrlPrefix = app.globalData.uploadImageUrl + "lesson/lesson" + LessonID + "/";
32
     main.getData("GetMiaoguoLesson?Lesson=" + LessonID + "&time=" + new Date().getTime(), function (data) {
36
     main.getData("GetMiaoguoLesson?Lesson=" + LessonID + "&time=" + new Date().getTime(), function (data) {
33
       var id = that.data.LessonPage;
37
       var id = that.data.LessonPage;
@@ -39,6 +43,15 @@ Page({
39
         AudioSrc: imageUrlPrefix + "sounds/"+that.data.LessonPage+".m4a",
43
         AudioSrc: imageUrlPrefix + "sounds/"+that.data.LessonPage+".m4a",
40
         ImageUrl: imageUrlPrefix + "%E5%B9%BB%E7%81%AF%E7%89%87" + id+".jpg",
44
         ImageUrl: imageUrlPrefix + "%E5%B9%BB%E7%81%AF%E7%89%87" + id+".jpg",
41
       });
45
       });
46
+
47
+      if (that.data.LessonPage>1){
48
+        that.setData({
49
+          IsPause: false,
50
+        });
51
+        backgroundAudioManager.title = that.data.ArrTirtle[that.data.LessonPage - 1].Title;
52
+        backgroundAudioManager.src = that.data.AudioSrc;
53
+      }
54
+
42
     });
55
     });
43
     currentContent = [];
56
     currentContent = [];
44
     app.globalData.LessonID = 0;
57
     app.globalData.LessonID = 0;
@@ -64,6 +77,7 @@ Page({
64
   playAudio: function (e) {
77
   playAudio: function (e) {
65
     var that = this;
78
     var that = this;
66
     var id = Number(e.currentTarget.dataset.id) + 1;
79
     var id = Number(e.currentTarget.dataset.id) + 1;
80
+    currentContent.push(id);
67
     if (id < 10)
81
     if (id < 10)
68
       id = "0" + id;
82
       id = "0" + id;
69
     this.setData({
83
     this.setData({
@@ -72,25 +86,30 @@ Page({
72
       AudioSrc: imageUrlPrefix + "sounds/" + Number(id) + ".m4a",
86
       AudioSrc: imageUrlPrefix + "sounds/" + Number(id) + ".m4a",
73
       ImageUrl: imageUrlPrefix + "%E5%B9%BB%E7%81%AF%E7%89%87" + id + ".jpg",
87
       ImageUrl: imageUrlPrefix + "%E5%B9%BB%E7%81%AF%E7%89%87" + id + ".jpg",
74
     });
88
     });
75
-    setTimeout(function () {
76
-      that.audioCtx.play();
77
-    }, 1000);
89
+    backgroundAudioManager.title = this.data.ArrTirtle[Number(e.currentTarget.dataset.id)].Title;
90
+    backgroundAudioManager.src = this.data.AudioSrc;
78
   },
91
   },
79
   bindEnded: function () {
92
   bindEnded: function () {
80
     var id = this.data.LessonPage;
93
     var id = this.data.LessonPage;
81
-    currentContent.push(id);
82
     if (id < this.data.ArrTirtle.length)
94
     if (id < this.data.ArrTirtle.length)
83
       this.playAudio({ currentTarget: { dataset: { id: id } } });
95
       this.playAudio({ currentTarget: { dataset: { id: id } } });
96
+    else{
97
+      this.setData({
98
+        IsPause: true,
99
+      });
100
+    }
84
   },
101
   },
85
   audioPlay: function () {
102
   audioPlay: function () {
103
+    var that=this;
86
     if (this.data.IsPause){
104
     if (this.data.IsPause){
87
-      this.audioCtx.play();
105
+      backgroundAudioManager.title = that.data.ArrTirtle[that.data.LessonPage - 1].Title;
106
+      backgroundAudioManager.src = that.data.AudioSrc;
88
       this.setData({
107
       this.setData({
89
         IsPause: false,
108
         IsPause: false,
90
       });
109
       });
91
     }
110
     }
92
     else{
111
     else{
93
-      this.audioCtx.pause();
112
+      backgroundAudioManager.pause();
94
       this.setData({
113
       this.setData({
95
         IsPause: true,
114
         IsPause: true,
96
       });
115
       });
@@ -104,8 +123,12 @@ Page({
104
     });
123
     });
105
   },
124
   },
106
   onShareAppMessage: function () {
125
   onShareAppMessage: function () {
126
+    var title ="秒过学习法";
127
+    if (this.data.LessonPage>0){
128
+      title = this.data.ArrTirtle[this.data.LessonPage - 1].Title;
129
+    }
107
     return {
130
     return {
108
-      title: "秒过学习法",
131
+      title: title,
109
       path: app.globalData.SharePath + '?LessonID=' + this.data.LessonID + '&LessonPage=' + this.data.LessonPage+'&UserID=' + app.globalData.userInfo.UserID,
132
       path: app.globalData.SharePath + '?LessonID=' + this.data.LessonID + '&LessonPage=' + this.data.LessonPage+'&UserID=' + app.globalData.userInfo.UserID,
110
       imageUrl: '../images/program_screenshot_l' + this.data.LessonID+'.png',
133
       imageUrl: '../images/program_screenshot_l' + this.data.LessonID+'.png',
111
     }
134
     }

+ 0 - 1
pages/other/lesson.wxml

@@ -5,7 +5,6 @@
5
     <image class='music-player-pause-lines' src='../images/music-player-pause-lines.png' hidden="{{IsPause}}" ></image>
5
     <image class='music-player-pause-lines' src='../images/music-player-pause-lines.png' hidden="{{IsPause}}" ></image>
6
     <view class='btnUp' catchtap='audioPlay'></view>  
6
     <view class='btnUp' catchtap='audioPlay'></view>  
7
   </view>
7
   </view>
8
-  <audio class='audio' src="{{AudioSrc}}" id="myAudio" bindended="bindEnded"></audio>
9
   <view class="main FlexColumn">
8
   <view class="main FlexColumn">
10
     <block wx:for="{{ArrTirtle}}" wx:key="index">
9
     <block wx:for="{{ArrTirtle}}" wx:key="index">
11
       <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">
10
       <view class="lineWidthAll FlexRow" wx:if="{{index>0}}">

+ 7 - 13
pages/other/lesson.wxss

@@ -1,13 +1,7 @@
1
-.container {
2
-  background-color: #f0f0f0;
3
-  color:#1e1e1e;
4
-  font-weight: 500;
5
-  justify-content: flex-start;
6
-}
7
 
1
 
8
 .top {
2
 .top {
9
   width:100%;
3
   width:100%;
10
-  height:575rpx;
4
+  height:555rpx;
11
   position: fixed;
5
   position: fixed;
12
   z-index: 10;
6
   z-index: 10;
13
   background-color: #f0f0f0;
7
   background-color: #f0f0f0;
@@ -20,7 +14,7 @@
20
 }
14
 }
21
 
15
 
22
 .main{
16
 .main{
23
-  margin-top: 575rpx;
17
+  margin-top: 555rpx;
24
   width:100%;
18
   width:100%;
25
   align-items: flex-start;
19
   align-items: flex-start;
26
   background-color: #fff;
20
   background-color: #fff;
@@ -45,18 +39,18 @@
45
 .music-player-play{
39
 .music-player-play{
46
   width:60rpx;
40
   width:60rpx;
47
   height:60rpx;
41
   height:60rpx;
48
-  margin: 20rpx;
42
+  margin: 30rpx 0 0 0;
49
 }
43
 }
50
 
44
 
51
 .music-player-pause-lines{
45
 .music-player-pause-lines{
52
   width:60rpx;
46
   width:60rpx;
53
   height:60rpx;
47
   height:60rpx;
54
-  margin: 20rpx;
48
+  margin: 30rpx 0 0 0;
55
 }
49
 }
56
 
50
 
57
 .btnUp{
51
 .btnUp{
58
-  width:60rpx;
59
-  height:60rpx;
52
+  width:80rpx;
53
+  height:80rpx;
60
   background-color: rgba(240,240,240,0.6);
54
   background-color: rgba(240,240,240,0.6);
61
-  margin-top: -80rpx;
55
+  margin-top: -70rpx;
62
 }
56
 }

+ 17 - 1
pages/other/lessonlist.js

@@ -5,11 +5,12 @@ const app = getApp();
5
 
5
 
6
 Page({
6
 Page({
7
   data: {
7
   data: {
8
-    List: ['预备课','第1课','第2课','第3课'],
8
+    List: ['第一课', '第二课', '第三课', '第四课'],
9
   },
9
   },
10
   onLoad: function () {
10
   onLoad: function () {
11
     var that = this;
11
     var that = this;
12
     that.setData({
12
     that.setData({
13
+      CheckListUserID:app.globalData.userInfo.UserID,
13
       Containnerheight: main.getWindowHeight(),
14
       Containnerheight: main.getWindowHeight(),
14
     });
15
     });
15
   },
16
   },
@@ -24,6 +25,21 @@ Page({
24
       url: '../other/userlist',
25
       url: '../other/userlist',
25
     });
26
     });
26
   },
27
   },
28
+  gotoCheckList: function(){
29
+    var url = '../other/homework';
30
+    if (this.data.CheckListUserID)
31
+      url+="?UserID="+this.data.CheckListUserID;
32
+    wx.navigateTo({
33
+      url: url,
34
+    });
35
+  },
36
+  onKeyInput: function (e) {
37
+    var userid = e.detail.value;
38
+    var that = this;
39
+    that.setData({
40
+      CheckListUserID: userid,
41
+    });
42
+  },
27
   onShareAppMessage: function () {
43
   onShareAppMessage: function () {
28
     return {
44
     return {
29
       title: app.globalData.ShareTitle,
45
       title: app.globalData.ShareTitle,

+ 3 - 0
pages/other/lessonlist.wxml

@@ -15,4 +15,7 @@
15
   
15
   
16
   <view style='height:100rpx;'></view>
16
   <view style='height:100rpx;'></view>
17
   <button bindtap='gotoUserList'>审核用户</button>
17
   <button bindtap='gotoUserList'>审核用户</button>
18
+  <view style='height:100rpx;'></view>
19
+  <input class='input' maxlength='4' auto-focus bindinput="onKeyInput" value="{{CheckListUserID}}"  />
20
+  <button bindtap='gotoCheckList'>CheckList</button>
18
 </view>
21
 </view>

+ 6 - 5
pages/other/lessonlist.wxss

@@ -1,8 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-}
5
-
6
 .main{
1
 .main{
7
   width: 100%;
2
   width: 100%;
8
 }
3
 }
@@ -35,3 +30,9 @@
35
   margin-left: 30rpx;
30
   margin-left: 30rpx;
36
 }
31
 }
37
 
32
 
33
+.input{
34
+  width:200rpx;
35
+  height:80rpx;
36
+  background-color: #fff;
37
+}
38
+

+ 0 - 5
pages/other/payinfo.wxss

@@ -1,8 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-}
5
-
6
 .imageDM{
1
 .imageDM{
7
   width:750rpx;
2
   width:750rpx;
8
   height:1545rpx;
3
   height:1545rpx;

+ 0 - 6
pages/other/userlist.wxss

@@ -1,9 +1,3 @@
1
-.container {
2
-  justify-content: flex-start;
3
-  font-weight: 500;
4
-}
5
-
6
-
7
 .panelSearch{
1
 .panelSearch{
8
   width:100%;
2
   width:100%;
9
   height:140rpx;
3
   height:140rpx;

+ 4 - 4
project.config.json

@@ -59,15 +59,15 @@
59
 				{
59
 				{
60
 					"id": 2,
60
 					"id": 2,
61
 					"name": "临时",
61
 					"name": "临时",
62
-					"pathName": "pages/other/userlist",
63
-					"query": "",
62
+					"pathName": "pages/index/index",
63
+					"query": "Homework=1",
64
 					"scene": null
64
 					"scene": null
65
 				},
65
 				},
66
 				{
66
 				{
67
 					"id": 3,
67
 					"id": 3,
68
 					"name": "临时",
68
 					"name": "临时",
69
-					"pathName": "pages/index/index",
70
-					"query": "LessonID=1&LessonPage=2",
69
+					"pathName": "pages/other/homework",
70
+					"query": "",
71
 					"scene": null
71
 					"scene": null
72
 				}
72
 				}
73
 			]
73
 			]

+ 2 - 1
utils/main.js

@@ -667,7 +667,8 @@ function updateSearchList(obj) {
667
 
667
 
668
     }
668
     }
669
   }
669
   }
670
-  arr.unshift(obj);
670
+  if (obj.Key)
671
+    arr.unshift(obj);
671
 
672
 
672
   if (arr.length > 100) {
673
   if (arr.length > 100) {
673
     arr.pop();
674
     arr.pop();