mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-10 14:20:04 +08:00
refactor code
This commit is contained in:
+47
-42
@@ -2,99 +2,104 @@ from services.db_context import db
|
||||
|
||||
|
||||
class GroupRemind(db.Model):
|
||||
__tablename__ = 'group_reminds'
|
||||
__tablename__ = "group_reminds"
|
||||
|
||||
id = db.Column(db.Integer(), primary_key=True)
|
||||
group_id = db.Column(db.BigInteger(), nullable=False)
|
||||
hy = db.Column(db.Boolean(), default=False) # 进群欢迎
|
||||
kxcz = db.Column(db.Boolean(), default=False) # 开箱重置
|
||||
zwa = db.Column(db.Boolean(), default=False) # 早晚安
|
||||
gb = db.Column(db.Boolean(), default=True) # 广播
|
||||
blpar = db.Column(db.Boolean(), default=True) # bilibili转发解析
|
||||
pa = db.Column(db.Boolean(), default=True) # 爬
|
||||
epic = db.Column(db.Boolean(), default=False) # epic
|
||||
almanac = db.Column(db.Boolean(), default=False) # 原神黄历
|
||||
hy = db.Column(db.Boolean(), default=False) # 进群欢迎
|
||||
kxcz = db.Column(db.Boolean(), default=False) # 开箱重置
|
||||
zwa = db.Column(db.Boolean(), default=False) # 早晚安
|
||||
gb = db.Column(db.Boolean(), default=True) # 广播
|
||||
blpar = db.Column(db.Boolean(), default=True) # bilibili转发解析
|
||||
pa = db.Column(db.Boolean(), default=True) # 爬
|
||||
epic = db.Column(db.Boolean(), default=False) # epic
|
||||
almanac = db.Column(db.Boolean(), default=False) # 原神黄历
|
||||
|
||||
_idx1 = db.Index('info_group_reminds_idx1', 'group_id', unique=True)
|
||||
_idx1 = db.Index("info_group_reminds_idx1", "group_id", unique=True)
|
||||
|
||||
@classmethod
|
||||
async def get_status(cls, group_id: int, name: str) -> bool:
|
||||
group = await cls.query.where(
|
||||
(cls.group_id == group_id)
|
||||
).gino.first()
|
||||
"""
|
||||
说明:
|
||||
获取群通知状态
|
||||
参数:
|
||||
:param group_id: 群号
|
||||
:param name: 目标名称
|
||||
"""
|
||||
group = await cls.query.where((cls.group_id == group_id)).gino.first()
|
||||
if not group:
|
||||
group = await cls.create(
|
||||
group_id=group_id,
|
||||
)
|
||||
if name == 'hy':
|
||||
if name == "hy":
|
||||
return group.hy
|
||||
if name == 'kxcz':
|
||||
if name == "kxcz":
|
||||
return group.kxcz
|
||||
if name == 'zwa':
|
||||
if name == "zwa":
|
||||
return group.zwa
|
||||
if name == 'gb':
|
||||
if name == "gb":
|
||||
return group.gb
|
||||
if name == 'blpar':
|
||||
if name == "blpar":
|
||||
return group.blpar
|
||||
if name == 'epic':
|
||||
if name == "epic":
|
||||
return group.epic
|
||||
if name == 'pa':
|
||||
if name == "pa":
|
||||
return group.pa
|
||||
if name == 'almanac':
|
||||
if name == "almanac":
|
||||
return group.almanac
|
||||
|
||||
@classmethod
|
||||
async def set_status(cls, group_id: int, name: str, status: bool) -> bool:
|
||||
"""
|
||||
说明:
|
||||
设置群通知状态
|
||||
参数:
|
||||
:param group_id: 群号
|
||||
:param name: 目标名称
|
||||
:param status: 通知状态
|
||||
"""
|
||||
try:
|
||||
group = await cls.query.where(
|
||||
(cls.group_id == group_id)
|
||||
).with_for_update().gino.first()
|
||||
group = (
|
||||
await cls.query.where((cls.group_id == group_id))
|
||||
.with_for_update()
|
||||
.gino.first()
|
||||
)
|
||||
if not group:
|
||||
group = await cls.create(
|
||||
group_id=group_id,
|
||||
)
|
||||
if name == 'hy':
|
||||
if name == "hy":
|
||||
await group.update(
|
||||
hy=status,
|
||||
).apply()
|
||||
if name == 'kxcz':
|
||||
if name == "kxcz":
|
||||
await group.update(
|
||||
kxcz=status,
|
||||
).apply()
|
||||
if name == 'zwa':
|
||||
if name == "zwa":
|
||||
await group.update(
|
||||
zwa=status,
|
||||
).apply()
|
||||
if name == 'gb':
|
||||
if name == "gb":
|
||||
await group.update(
|
||||
gb=status,
|
||||
).apply()
|
||||
if name == 'blpar':
|
||||
if name == "blpar":
|
||||
await group.update(
|
||||
blpar=status,
|
||||
).apply()
|
||||
if name == 'epic':
|
||||
if name == "epic":
|
||||
await group.update(
|
||||
epic=status,
|
||||
).apply()
|
||||
if name == 'pa':
|
||||
if name == "pa":
|
||||
await group.update(
|
||||
pa=status,
|
||||
).apply()
|
||||
if name == 'almanac':
|
||||
if name == "almanac":
|
||||
await group.update(
|
||||
almanac=status,
|
||||
).apply()
|
||||
return True
|
||||
except Exception as e:
|
||||
return False
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user