mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
60 lines
1.7 KiB
Python
60 lines
1.7 KiB
Python
|
|
from datetime import datetime
|
|||
|
|
|
|||
|
|
from services.db_context import db
|
|||
|
|
|
|||
|
|
|
|||
|
|
class ShopLog(db.Model):
|
|||
|
|
__tablename__ = "shop_log"
|
|||
|
|
id = db.Column(db.Integer(), primary_key=True)
|
|||
|
|
user_qq = db.Column(db.BigInteger(), nullable=False)
|
|||
|
|
group_id = db.Column(db.BigInteger(), nullable=False)
|
|||
|
|
type = db.Column(db.Integer(), nullable=False) # 0: 购买,1: 使用
|
|||
|
|
goods_name = db.Column(db.String(), default=100)
|
|||
|
|
spend_gold = db.Column(db.Integer(), nullable=False)
|
|||
|
|
num = db.Column(db.Integer(), nullable=False)
|
|||
|
|
create_time = db.Column(db.DateTime(timezone=True), nullable=False)
|
|||
|
|
|
|||
|
|
@classmethod
|
|||
|
|
async def add_shop_log(
|
|||
|
|
cls,
|
|||
|
|
user_qq: int,
|
|||
|
|
group_id: int,
|
|||
|
|
type_: int,
|
|||
|
|
goods_name: str,
|
|||
|
|
num: int,
|
|||
|
|
spend_gold: int = 0,
|
|||
|
|
):
|
|||
|
|
"""
|
|||
|
|
说明:
|
|||
|
|
添加商店购买或使用日志
|
|||
|
|
参数:
|
|||
|
|
:param user_qq: qq号
|
|||
|
|
:param group_id: 所在群号
|
|||
|
|
:param type_: 类型
|
|||
|
|
:param goods_name: 商品名称
|
|||
|
|
:param num: 数量
|
|||
|
|
:param spend_gold: 花费金币
|
|||
|
|
"""
|
|||
|
|
await cls.create(
|
|||
|
|
user_qq=user_qq,
|
|||
|
|
group_id=group_id,
|
|||
|
|
type=type_,
|
|||
|
|
goods_name=goods_name,
|
|||
|
|
num=num,
|
|||
|
|
spend_gold=spend_gold,
|
|||
|
|
create_time=datetime.now(),
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
@classmethod
|
|||
|
|
async def get_user_log(cls, user_qq: int, group_id: int) -> "ShopLog":
|
|||
|
|
"""
|
|||
|
|
说明:
|
|||
|
|
获取用户日志
|
|||
|
|
参数:
|
|||
|
|
:param user_qq: qq号
|
|||
|
|
:param group_id: 所在群号
|
|||
|
|
"""
|
|||
|
|
return await cls.query.where(
|
|||
|
|
(cls.user_qq == user_qq) & (cls.group_qq == group_id)
|
|||
|
|
).first()
|