mirror of
https://github.com/LLOneBot/LLOneBot.git
synced 2024-11-22 01:56:33 +00:00
refactor: 设置群员头衔的时候检查是否群主
This commit is contained in:
parent
eabee466bb
commit
cd679cc041
@ -1,6 +1,8 @@
|
|||||||
import { BaseAction, Schema } from '../BaseAction'
|
import { BaseAction, Schema } from '../BaseAction'
|
||||||
import { ActionName } from '../types'
|
import { ActionName } from '../types'
|
||||||
import { getBuildVersion } from '@/common/utils/misc'
|
import { getBuildVersion } from '@/common/utils/misc'
|
||||||
|
import { selfInfo } from '@/common/globalVars'
|
||||||
|
import { GroupMemberRole } from '@/ntqqapi/types'
|
||||||
|
|
||||||
interface Payload {
|
interface Payload {
|
||||||
group_id: number | string
|
group_id: number | string
|
||||||
@ -19,6 +21,10 @@ export class SetGroupSpecialTitle extends BaseAction<Payload, null> {
|
|||||||
async _handle(payload: Payload) {
|
async _handle(payload: Payload) {
|
||||||
const uid = await this.ctx.ntUserApi.getUidByUin(payload.user_id.toString(), payload.group_id.toString())
|
const uid = await this.ctx.ntUserApi.getUidByUin(payload.user_id.toString(), payload.group_id.toString())
|
||||||
if (!uid) throw new Error(`用户${payload.user_id}的uid获取失败`)
|
if (!uid) throw new Error(`用户${payload.user_id}的uid获取失败`)
|
||||||
|
const self = await this.ctx.ntGroupApi.getGroupMember(payload.group_id.toString(), selfInfo.uid, false)
|
||||||
|
if (self.role !== GroupMemberRole.Owner){
|
||||||
|
throw new Error(`不是群${payload.group_id}的群主,无法设置群头衔`)
|
||||||
|
}
|
||||||
await this.ctx.app.ntqqPacketApi.sendSetSpecialTittlePacket(payload.group_id.toString(), uid, payload.special_title || "")
|
await this.ctx.app.ntqqPacketApi.sendSetSpecialTittlePacket(payload.group_id.toString(), uid, payload.special_title || "")
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user