chengjie 6 kuukautta sitten
vanhempi
commit
25d89665cc
4 muutettua tiedostoa jossa 106 lisäystä ja 14 poistoa
  1. 8 14
      src/api/phonics/phonicsController.js
  2. 1 0
      src/app.js
  3. 87 0
      src/model/commonModel.js
  4. 10 0
      src/model/phonics.js

+ 8 - 14
src/api/phonics/phonicsController.js

@@ -477,11 +477,13 @@ export async function GetEnglishAll3(ctx) {
477 477
         UpdateTime: ctx.query.UpdateTime,
478 478
     };
479 479
 
480
+    const functionName = "GetEnglishAll3";
481
+
480 482
     const updateTimeList = await commonModel.GetDataUpdateStatus();
481 483
     const updateTime = moment(updateTimeList[6].UpdateTime).format('YYYY.MM.DD HH:mm:ss');
482 484
     
483 485
     if (param.UpdateTime !== updateTime) {
484
-        let result = globalCache.get("GetEnglishAll3");
486
+        let result = globalCache.get(functionName);
485 487
         if (result === 0) {
486 488
             result = {
487 489
                 UpdateTime: updateTime,
@@ -492,7 +494,7 @@ export async function GetEnglishAll3(ctx) {
492 494
                 Limit: 3000
493 495
             };
494 496
             const engList = await commonModel.RunSql({}, "SELECT * FROM WordFrequency LIMIT 3000");
495
-            const arrEng = [{
497
+            let arrEng = [{
496 498
                 ID:111,
497 499
                 Name:"高频单词1",
498 500
                 Name2:"Sight Words",
@@ -562,7 +564,7 @@ export async function GetEnglishAll3(ctx) {
562 564
                 }
563 565
             }
564 566
 
565
-            const result2 = JSON.stringify(arrEng);
567
+            let result2 = JSON.stringify(arrEng);
566 568
             arrEng = Encrypt(result2, config.urlSecrets.aes_key, config.urlSecrets.aes_iv);
567 569
             result.EngList = arrEng;
568 570
 
@@ -847,8 +849,7 @@ export async function GetEnglishAll3(ctx) {
847 849
                 Max:556,
848 850
                 Units:[],
849 851
             }];
850
-
851
-            const engList2 = await commonModel.GetWordsList();
852
+            const engList2 = await phonics.GetWordsList();
852 853
             const enumList = await commonModel.GetEnumerationListByParentID({ParentID:"320,346,375"});
853 854
             let unit = 0;
854 855
             for (let i = 0; i < engList2.length; i++) {
@@ -879,12 +880,6 @@ export async function GetEnglishAll3(ctx) {
879 880
                             arrEng2[j].Units.push(temp);
880 881
                         }
881 882
 
882
-                        // console.log("i:"+i);
883
-                        // console.log("j:"+j);
884
-                        //
885
-                        // if (i==27415 && j==35)
886
-                        //     debugger;
887
-
888 883
                         arrEng2[j].Units[arrEng2[j].Units.length-1].Words.push(engList2[i].Word);
889 884
                         unit = engList2[i].LessonID;
890 885
                         break;
@@ -892,7 +887,6 @@ export async function GetEnglishAll3(ctx) {
892 887
                 }
893 888
             }
894 889
 
895
-
896 890
             result.NewConceptEngList = [arrEng2[0], arrEng2[1], arrEng2[2], arrEng2[3]];
897 891
             const result3 = JSON.stringify(result.NewConceptEngList);
898 892
             result.NewConceptEngList = Encrypt(result3, config.urlSecrets.aes_key, config.urlSecrets.aes_iv);
@@ -933,7 +927,7 @@ export async function GetEnglishAll3(ctx) {
933 927
             const result12 = JSON.stringify(result.CET6EngList);
934 928
             result.CET6EngList = Encrypt(result12, config.urlSecrets.aes_key, config.urlSecrets.aes_iv);
935 929
 
936
-            globalCache.set("GetEnglishAll3", result, config.BufferMemoryTimeHigh);
930
+            globalCache.set(functionName, result, config.BufferMemoryTimeHigh);
937 931
             console.log("缓存");
938 932
         }
939 933
 
@@ -942,4 +936,4 @@ export async function GetEnglishAll3(ctx) {
942 936
     else {
943 937
         ctx.body = {"errcode": 10000};
944 938
     }
945
-}
939
+}

+ 1 - 0
src/app.js

@@ -33,6 +33,7 @@ app.use(async (ctx, next) => {
33 33
             error: err.message,
34 34
             url: ctx.url
35 35
         };
36
+        console.log("error_url:"+ctx.url);
36 37
         ctx.app.emit('error', err, ctx);
37 38
     }
38 39
 });

+ 87 - 0
src/model/commonModel.js

@@ -71,6 +71,93 @@ class commonModel {
71 71
             throw error;
72 72
         }
73 73
     }
74
+
75
+    static async GetEnumerationListByParentID(obj) {
76
+        try {
77
+            const sql = "select EnumID,Name from Enumeration where ParentID in (?) order by Sort,EnumID;";
78
+            return await query(sql,[obj.ParentID]);
79
+        } catch (error) {
80
+            console.error('获取提示信息失败:', error);
81
+            throw error;
82
+        }
83
+    }
84
+
85
+
86
+    /**
87
+     * 获取枚举列表
88
+     * @param {Object} obj 查询参数
89
+     * @returns {Promise<Array>} 枚举列表
90
+     */
91
+    static async GetEnumerationList(obj) {
92
+        try {
93
+            const sql = "SELECT EnumID, Name, ParentID, Description FROM Enumeration ORDER BY Sort, EnumID;";
94
+            return await query(sql);
95
+        } catch (error) {
96
+            console.error('获取枚举列表失败:', error);
97
+            throw error;
98
+        }
99
+    }
100
+
101
+    /**
102
+     * 根据枚举ID获取枚举信息
103
+     * @param {Object} obj 包含EnumID的查询参数
104
+     * @returns {Promise<Array>} 枚举信息
105
+     */
106
+    static async GetEnumerationListByEnumID(obj) {
107
+        try {
108
+            const sql = "SELECT * FROM Enumeration WHERE EnumID = ?;";
109
+            return await query(sql, [obj.EnumID]);
110
+        } catch (error) {
111
+            console.error('根据ID获取枚举信息失败:', error);
112
+            throw error;
113
+        }
114
+    }
115
+
116
+    /**
117
+     * 根据名称获取枚举信息
118
+     * @param {Object} obj 包含Name的查询参数
119
+     * @returns {Promise<Array>} 枚举信息
120
+     */
121
+    static async GetEnumerationListByName(obj) {
122
+        try {
123
+            const sql = "SELECT * FROM Enumeration WHERE Name = ?;";
124
+            return await query(sql, [obj.Name]);
125
+        } catch (error) {
126
+            console.error('根据名称获取枚举信息失败:', error);
127
+            throw error;
128
+        }
129
+    }
130
+
131
+    /**
132
+     * 添加渠道
133
+     * @param {Object} obj 渠道信息
134
+     * @returns {Promise<Array>} 添加结果
135
+     */
136
+    static async AddChannel(obj) {
137
+        try {
138
+            const sql = "INSERT INTO Channels SET ?";
139
+            return await query(sql, obj);
140
+        } catch (error) {
141
+            console.error('添加渠道失败:', error);
142
+            throw error;
143
+        }
144
+    }
145
+
146
+    /**
147
+     * 获取渠道列表
148
+     * @param {Object} obj 查询参数
149
+     * @returns {Promise<Array>} 渠道列表
150
+     */
151
+    static async GetChannelList(obj) {
152
+        try {
153
+            const sql = "SELECT * FROM Channels;";
154
+            return await query(sql);
155
+        } catch (error) {
156
+            console.error('获取渠道列表失败:', error);
157
+            throw error;
158
+        }
159
+    }
160
+
74 161
 }
75 162
 
76 163
 export default commonModel;

+ 10 - 0
src/model/phonics.js

@@ -8849,6 +8849,16 @@ class Phonics {
8849 8849
         ];
8850 8850
         return arr;
8851 8851
     }
8852
+
8853
+    static async GetWordsList(obj) {
8854
+        try {
8855
+            const sql = "SELECT ID,Word,BookID,LessonID FROM kylx365_db.Words order by BookID,LessonID,Sort,ID;";
8856
+            return await query(sql);
8857
+        } catch (error) {
8858
+            console.error('更新Phonics测试分数失败:', error);
8859
+            throw error;
8860
+        }
8861
+    }
8852 8862
 }
8853 8863
 
8854 8864
 export default Phonics;