|
@@ -41,7 +41,7 @@ class WXWorkLogin extends API {
|
|
|
if (rows.length > 0) {
|
|
|
// 用户存在,更新 session
|
|
|
({ uuid, username, avatar } = rows[0]);
|
|
|
-
|
|
|
+ avatar = avatar && avatar != '' ? avatar : 'https://git.vthc.cn/avatars/1';
|
|
|
const updateQuery = 'UPDATE users SET session = ? WHERE wxid = ?';
|
|
|
result = await db.query(updateQuery, [session, wxid]);
|
|
|
} else {
|
|
@@ -52,10 +52,21 @@ class WXWorkLogin extends API {
|
|
|
}
|
|
|
|
|
|
({ name: username, avatar } = infoRes);
|
|
|
+
|
|
|
+ // TODO 企微扫码登录不会返回用户头像 这里疏忽了 后面再改
|
|
|
+ avatar = avatar && avatar != '' ? avatar : 'https://git.vthc.cn/avatars/1';
|
|
|
uuid = md5(Date.now() + wxid + code);
|
|
|
|
|
|
- const insertQuery = 'INSERT INTO users (uuid, username, wxid, avatar, session) VALUES (?, ?, ?, ?, ?)';
|
|
|
- result = await db.query(insertQuery, [uuid, username, wxid, avatar != '' ? avatar : 'https://git.vthc.cn/avatars/1', session]);
|
|
|
+ // 查询users表中是否有用户
|
|
|
+ const userCountQuery = 'SELECT COUNT(*) as count FROM users';
|
|
|
+ const [userCountResult] = await db.query(userCountQuery);
|
|
|
+ const userCount = userCountResult.count;
|
|
|
+
|
|
|
+ // 如果是第一个注册的用户 授予admin权限
|
|
|
+ const admin = userCount === 0 ? 1 : 0;
|
|
|
+
|
|
|
+ const insertQuery = 'INSERT INTO users (uuid, username, wxid, avatar, session, admin) VALUES (?, ?, ?, ?, ?, ?)';
|
|
|
+ result = await db.query(insertQuery, [uuid, username, wxid, avatar, session, admin]);
|
|
|
}
|
|
|
|
|
|
if (result && result.affectedRows > 0) {
|