Browse Source

🐞 fix: 修复redis数据存入错误的问题

Pchen. 2 months ago
parent
commit
b38dee28f4
3 changed files with 13 additions and 4 deletions
  1. 7 2
      apis/Repos/DeleteRepo.js
  2. 3 1
      apis/Repos/GetRepoLog.js
  3. 3 1
      apis/Repos/GitContributors.js

+ 7 - 2
apis/Repos/DeleteRepo.js

@@ -2,6 +2,7 @@ const API = require("../../lib/API")
 const AccessControl = require("../../lib/AccessControl")
 const { BaseStdResponse } = require("../../BaseStdResponse")
 const db = require("../../plugin/DataBase/db")
+const redis = require('../../plugin/DataBase/Redis')
 const fs = require('fs')
 
 // 删除仓库
@@ -29,12 +30,16 @@ class DeleteRepo extends API {
         let sql = 'SELECT path FROM repos WHRER \`create_user\` = ? AND id = ?'
         let r = await db.query(sql, [uuid, id])
 
-        if (r && r[0].path)
+        if (r && r[0].path) {
+            const redisKey = `gitLogs:${r[0].path}`
+            await redis.del(redisKey)
+
             fs.rm(r[0].path, { recursive: true, force: true }, (err) => { 
                 this.logger.error('删除仓库失败!' + err)
                 res.json({ ...BaseStdResponse.ERR, endpoint: 7894378, msg: '删除仓库失败!' })
             })
-
+        }
+            
         sql = 'DELETE FROM repos WHERE create_user = ? AND id = ?'
 
         let result = await db.query(sql, [uuid, id])

+ 3 - 1
apis/Repos/GetRepoLog.js

@@ -59,7 +59,9 @@ class GetRepoLog extends API {
                     "--shortstat"
                 ])
 
-                redis.set(redisKey, 86400, JSON.stringify(logs))
+                redis.set(redisKey, JSON.stringify(logs), {
+                    EX: 172800
+                })
             }
 
             const lines = rawLogs.split("\n")

+ 3 - 1
apis/Repos/GitContributors.js

@@ -34,7 +34,9 @@ class GitContributors extends API {
                     "--shortstat"
                 ])
 
-                redis.set(redisKey, 86400, JSON.stringify(logs))
+                redis.set(redisKey, JSON.stringify(logs), {
+                    EX: 172800
+                })
             }
 
             const lines = logs.split("\n")