Browse Source

✨ feat: 0点后更新的账号设置自动乐跑时间

Pchen0 1 month ago
parent
commit
6da43b2588

+ 13 - 2
apis/Lepao/Account/UpdateAccount/UpdateAccount.js

@@ -57,7 +57,7 @@ class UpdateAccount extends API {
 
             let findSql = `
                 SELECT 
-                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo
+                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo, a.today_auto_time, a.auto_time, a.auto_day
                 FROM
                     lepao_account a
                 LEFT JOIN
@@ -79,8 +79,19 @@ class UpdateAccount extends API {
                     ...BaseStdResponse.ERR,
                     msg: '该乐跑账号尚未在RunForge系统中添加,请先前往 https://xxoo365.top/ 添加你的账户'
                 })
+
+            const account = findRows[0]
             const time = new Date().getTime()
-            let updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, update_type = "client" WHERE student_num = ?'
+            const hour = new Date().getHours()
+            const day = new Date().getDay()
+
+            let updateSql = ''
+
+            if (hour < 7 && account.auto_run === 1 && !account.today_auto_time && account.auto_time === 1 && account.auto_day.includes(day)) 
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, update_type = "client", today_auto_time = FLOOR(7 + (RAND() * 15)) WHERE student_num = ?'
+            else 
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, update_type = "client" WHERE student_num = ?'
+            
             let updateRows = await db.query(updateSql, [uid, token, school_id, name, grade_id, class_id, sex, academy_name, time, user_avatar ?? 'https://lepao-cloud.xxoo365.top/view.php/25aa126dc406974ff3579a99a2c6501a.png', student_num])
 
             if (updateRows && updateRows.affectedRows > 0) {

+ 11 - 2
apis/Lepao/Account/UpdateAccount/UpdateAccountAndroidApp.js

@@ -57,7 +57,7 @@ class UpdateAccountAndroidApp extends API {
 
             let findSql = `
                 SELECT 
-                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo
+                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo, a.today_auto_time, a.auto_time
                 FROM
                     lepao_account a
                 LEFT JOIN
@@ -78,8 +78,17 @@ class UpdateAccountAndroidApp extends API {
                     ...BaseStdResponse.ERR,
                     msg: '该乐跑账号尚未在RunForge系统中添加,请先添加你的账户'
                 })
+
+            const account = findRows[0]
             const time = new Date().getTime()
-            let updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "android" WHERE student_num = ?'
+            const hour = new Date().getHours()
+            const day = new Date().getDay()
+
+            let updateSql = ''
+            if (hour < 7 && account.auto_run === 1 && !account.today_auto_time && account.auto_time === 1 && account.auto_day.includes(day))
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "android", today_auto_time = FLOOR(7 + (RAND() * 15)) WHERE student_num = ?'
+            else
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "android" WHERE student_num = ?'
             let updateRows = await db.query(updateSql, [uid, token, school_id, name, grade_id, class_id, sex, academy_name, time, user_avatar ?? 'https://lepao-cloud.xxoo365.top/view.php/25aa126dc406974ff3579a99a2c6501a.png', userAgent ?? '', deviceModel ?? '', student_num])
 
             if (updateRows && updateRows.affectedRows > 0) {

+ 10 - 2
apis/Lepao/Account/UpdateAccount/UpdateAccountiPhone.js

@@ -58,7 +58,7 @@ class UpdateAccountiPhone extends API {
 
             let findSql = `
                 SELECT 
-                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo
+                    a.email, a.create_user, a.auto_run, a.auto_day, a.notice_type, e.bot_umo, a.today_auto_time, a.auto_time
                 FROM
                     lepao_account a
                 LEFT JOIN
@@ -80,8 +80,16 @@ class UpdateAccountiPhone extends API {
                     msg: '该乐跑账号尚未在RunForge系统中添加,请先添加你的账户'
                 })
 
+            const account = findRows[0]
             const time = new Date().getTime()
-            let updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "iphone" WHERE student_num = ?'
+            const hour = new Date().getHours()
+            const day = new Date().getDay()
+
+            let updateSql = ''
+            if (hour < 7 && account.auto_run === 1 && !account.today_auto_time && account.auto_time === 1 && account.auto_day.includes(day))
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "iphone", today_auto_time = FLOOR(7 + (RAND() * 15)) WHERE student_num = ?'
+            else
+                updateSql = 'UPDATE lepao_account SET uid = ?, token = ?, school_id = ?, name = ?, grade_id = ?, class_id = ?, sex = ?, academy_name = ?, update_time = ?, user_avatar = ?, state = 1, userAgent = ?, deviceModel = ?, update_type = "iphone" WHERE student_num = ?'
             let updateRows = await db.query(updateSql, [uid, token, school_id, name, grade_id, class_id, sex, academy_name, time, user_avatar ?? 'https://lepao-cloud.xxoo365.top/view.php/25aa126dc406974ff3579a99a2c6501a.png', headers["User-Agent"] ?? 'Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.29(0x18001d21) NetType/5G Language/zh_CN wxwork/5.0.6', 'unknown<iPhone18,3>', student_num])
 
             if (updateRows && updateRows.affectedRows > 0) {