mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
parent
4ed1791b30
commit
5fd746a52a
@ -1,6 +1,5 @@
|
|||||||
import asyncio
|
import asyncio
|
||||||
from collections.abc import Callable
|
from collections.abc import Callable
|
||||||
from dataclasses import field
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
import inspect
|
import inspect
|
||||||
import time
|
import time
|
||||||
@ -11,7 +10,7 @@ from nonebot.adapters import Bot, Event
|
|||||||
from nonebot.compat import model_dump
|
from nonebot.compat import model_dump
|
||||||
from nonebot_plugin_alconna import UniMessage, UniMsg
|
from nonebot_plugin_alconna import UniMessage, UniMsg
|
||||||
from nonebot_plugin_uninfo import Uninfo
|
from nonebot_plugin_uninfo import Uninfo
|
||||||
from pydantic import BaseModel, create_model
|
from pydantic import BaseModel, Field, create_model
|
||||||
from tortoise.expressions import Q
|
from tortoise.expressions import Q
|
||||||
|
|
||||||
from zhenxun.models.friend_user import FriendUser
|
from zhenxun.models.friend_user import FriendUser
|
||||||
@ -33,9 +32,9 @@ from .normal_image import normal_image
|
|||||||
class Goods(BaseModel):
|
class Goods(BaseModel):
|
||||||
name: str
|
name: str
|
||||||
"""商品名称"""
|
"""商品名称"""
|
||||||
before_handle: list[Callable] = field(default_factory=list)
|
before_handle: list[Callable] = Field(default_factory=list)
|
||||||
"""使用前函数"""
|
"""使用前函数"""
|
||||||
after_handle: list[Callable] = field(default_factory=list)
|
after_handle: list[Callable] = Field(default_factory=list)
|
||||||
"""使用后函数"""
|
"""使用后函数"""
|
||||||
func: Callable | None = None
|
func: Callable | None = None
|
||||||
"""使用函数"""
|
"""使用函数"""
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
from dataclasses import field
|
|
||||||
|
|
||||||
from nonebot.compat import model_dump
|
from nonebot.compat import model_dump
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
|
|
||||||
from zhenxun.utils.enum import RequestType
|
from zhenxun.utils.enum import RequestType
|
||||||
|
|
||||||
@ -174,9 +172,9 @@ class ReqResult(BaseModel):
|
|||||||
好友/群组请求列表
|
好友/群组请求列表
|
||||||
"""
|
"""
|
||||||
|
|
||||||
friend: list[FriendRequestResult] = field(default_factory=list)
|
friend: list[FriendRequestResult] = Field(default_factory=list)
|
||||||
"""好友请求列表"""
|
"""好友请求列表"""
|
||||||
group: list[GroupRequestResult] = field(default_factory=list)
|
group: list[GroupRequestResult] = Field(default_factory=list)
|
||||||
"""群组请求列表"""
|
"""群组请求列表"""
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
from dataclasses import field
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
import nonebot
|
import nonebot
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
|
|
||||||
from .utils import ConfigsManager
|
from .utils import ConfigsManager
|
||||||
|
|
||||||
@ -16,9 +15,9 @@ class BotSetting(BaseModel):
|
|||||||
"""系统代理"""
|
"""系统代理"""
|
||||||
db_url: str = ""
|
db_url: str = ""
|
||||||
"""数据库链接"""
|
"""数据库链接"""
|
||||||
platform_superusers: dict[str, list[str]] = field(default_factory=dict)
|
platform_superusers: dict[str, list[str]] = Field(default_factory=dict)
|
||||||
"""平台超级用户"""
|
"""平台超级用户"""
|
||||||
qbot_id_data: dict[str, str] = field(default_factory=dict)
|
qbot_id_data: dict[str, str] = Field(default_factory=dict)
|
||||||
"""官bot id:账号id"""
|
"""官bot id:账号id"""
|
||||||
|
|
||||||
def get_qbot_uid(self, qbot_id: str) -> str | None:
|
def get_qbot_uid(self, qbot_id: str) -> str | None:
|
||||||
|
|||||||
@ -1,13 +1,12 @@
|
|||||||
from collections.abc import Callable
|
from collections.abc import Callable
|
||||||
import copy
|
import copy
|
||||||
from dataclasses import field
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Any, Literal
|
from typing import Any, Literal
|
||||||
|
|
||||||
import cattrs
|
import cattrs
|
||||||
from nonebot.compat import model_dump
|
from nonebot.compat import model_dump
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
from ruamel.yaml import YAML
|
from ruamel.yaml import YAML
|
||||||
from ruamel.yaml.scanner import ScannerError
|
from ruamel.yaml.scanner import ScannerError
|
||||||
|
|
||||||
@ -38,11 +37,11 @@ class Command(BaseModel):
|
|||||||
|
|
||||||
command: str
|
command: str
|
||||||
"""命令名称"""
|
"""命令名称"""
|
||||||
params: list[str] = field(default_factory=list)
|
params: list[str] = Field(default_factory=list)
|
||||||
"""参数"""
|
"""参数"""
|
||||||
description: str = ""
|
description: str = ""
|
||||||
"""描述"""
|
"""描述"""
|
||||||
examples: list[Example] = field(default_factory=list)
|
examples: list[Example] = Field(default_factory=list)
|
||||||
"""示例列表"""
|
"""示例列表"""
|
||||||
|
|
||||||
|
|
||||||
@ -96,7 +95,7 @@ class ConfigGroup(BaseModel):
|
|||||||
"""模块名"""
|
"""模块名"""
|
||||||
name: str | None = None
|
name: str | None = None
|
||||||
"""插件名"""
|
"""插件名"""
|
||||||
configs: dict[str, ConfigModel] = field(default_factory=dict)
|
configs: dict[str, ConfigModel] = Field(default_factory=dict)
|
||||||
"""配置项列表"""
|
"""配置项列表"""
|
||||||
|
|
||||||
def get(self, c: str, default: Any = None) -> Any:
|
def get(self, c: str, default: Any = None) -> Any:
|
||||||
@ -209,7 +208,7 @@ class Task(BaseBlock):
|
|||||||
"""运行函数"""
|
"""运行函数"""
|
||||||
check: Callable | None = None
|
check: Callable | None = None
|
||||||
"""检查函数"""
|
"""检查函数"""
|
||||||
check_args: list = field(default_factory=list)
|
check_args: list = Field(default_factory=list)
|
||||||
"""检查函数参数"""
|
"""检查函数参数"""
|
||||||
|
|
||||||
|
|
||||||
@ -234,7 +233,7 @@ class PluginExtraData(BaseModel):
|
|||||||
"""插件基本配置"""
|
"""插件基本配置"""
|
||||||
limits: list[BaseBlock | PluginCdBlock | PluginCountBlock] | None = None
|
limits: list[BaseBlock | PluginCdBlock | PluginCountBlock] | None = None
|
||||||
"""插件限制"""
|
"""插件限制"""
|
||||||
commands: list[Command] = field(default_factory=list)
|
commands: list[Command] = Field(default_factory=list)
|
||||||
"""命令列表,用于说明帮助"""
|
"""命令列表,用于说明帮助"""
|
||||||
ignore_prompt: bool = False
|
ignore_prompt: bool = False
|
||||||
"""是否忽略阻断提示"""
|
"""是否忽略阻断提示"""
|
||||||
@ -242,7 +241,7 @@ class PluginExtraData(BaseModel):
|
|||||||
"""技能被动"""
|
"""技能被动"""
|
||||||
superuser_help: str | None = None
|
superuser_help: str | None = None
|
||||||
"""超级用户帮助"""
|
"""超级用户帮助"""
|
||||||
aliases: set[str] = field(default_factory=set)
|
aliases: set[str] = Field(default_factory=set)
|
||||||
"""额外名称"""
|
"""额外名称"""
|
||||||
sql_list: list[str] | None = None
|
sql_list: list[str] | None = None
|
||||||
"""常用sql"""
|
"""常用sql"""
|
||||||
|
|||||||
@ -1,9 +1,8 @@
|
|||||||
from dataclasses import field
|
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import random
|
import random
|
||||||
|
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
from strenum import StrEnum
|
from strenum import StrEnum
|
||||||
|
|
||||||
from ._build_image import BuildImage
|
from ._build_image import BuildImage
|
||||||
@ -21,15 +20,15 @@ class MatType(StrEnum):
|
|||||||
class BuildMatData(BaseModel):
|
class BuildMatData(BaseModel):
|
||||||
mat_type: MatType
|
mat_type: MatType
|
||||||
"""类型"""
|
"""类型"""
|
||||||
data: list[int | float] = field(default_factory=list)
|
data: list[int | float] = Field(default_factory=list)
|
||||||
"""数据"""
|
"""数据"""
|
||||||
x_name: str | None = None
|
x_name: str | None = None
|
||||||
"""X轴坐标名称"""
|
"""X轴坐标名称"""
|
||||||
y_name: str | None = None
|
y_name: str | None = None
|
||||||
"""Y轴坐标名称"""
|
"""Y轴坐标名称"""
|
||||||
x_index: list[str] = field(default_factory=list)
|
x_index: list[str] = Field(default_factory=list)
|
||||||
"""显示轴坐标值"""
|
"""显示轴坐标值"""
|
||||||
y_index: list[int | float] = field(default_factory=list)
|
y_index: list[int | float] = Field(default_factory=list)
|
||||||
"""数据轴坐标值"""
|
"""数据轴坐标值"""
|
||||||
space: tuple[int, int] = (20, 20)
|
space: tuple[int, int] = (20, 20)
|
||||||
"""坐标值间隔(X, Y)"""
|
"""坐标值间隔(X, Y)"""
|
||||||
@ -49,7 +48,7 @@ class BuildMatData(BaseModel):
|
|||||||
"""背景颜色"""
|
"""背景颜色"""
|
||||||
background: Path | bytes | None = None
|
background: Path | bytes | None = None
|
||||||
"""背景图片"""
|
"""背景图片"""
|
||||||
bar_color: list[str] = field(default_factory=lambda: ["*"])
|
bar_color: list[str] = Field(default_factory=lambda: ["*"])
|
||||||
"""柱状图柱子颜色, 多个时随机, 使用 * 时七色随机"""
|
"""柱状图柱子颜色, 多个时随机, 使用 * 时七色随机"""
|
||||||
padding: tuple[int, int] = (50, 50)
|
padding: tuple[int, int] = (50, 50)
|
||||||
"""图表上下左右边距"""
|
"""图表上下左右边距"""
|
||||||
|
|||||||
@ -1,16 +1,15 @@
|
|||||||
from collections.abc import Callable
|
from collections.abc import Callable
|
||||||
from dataclasses import field
|
|
||||||
|
|
||||||
from nonebot.adapters.onebot.v11 import Message, MessageSegment
|
from nonebot.adapters.onebot.v11 import Message, MessageSegment
|
||||||
from nonebot.plugin import require
|
from nonebot.plugin import require
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
|
|
||||||
from zhenxun.models.goods_info import GoodsInfo
|
from zhenxun.models.goods_info import GoodsInfo
|
||||||
|
|
||||||
|
|
||||||
class Goods(BaseModel):
|
class Goods(BaseModel):
|
||||||
before_handle: list[Callable] = field(default_factory=list)
|
before_handle: list[Callable] = Field(default_factory=list)
|
||||||
after_handle: list[Callable] = field(default_factory=list)
|
after_handle: list[Callable] = Field(default_factory=list)
|
||||||
price: int
|
price: int
|
||||||
des: str = ""
|
des: str = ""
|
||||||
discount: float
|
discount: float
|
||||||
@ -20,7 +19,7 @@ class Goods(BaseModel):
|
|||||||
is_passive: bool
|
is_passive: bool
|
||||||
partition: str | None
|
partition: str | None
|
||||||
func: Callable
|
func: Callable
|
||||||
kwargs: dict[str, str] = field(default_factory=dict)
|
kwargs: dict[str, str] = Field(default_factory=dict)
|
||||||
send_success_msg: bool
|
send_success_msg: bool
|
||||||
max_num_limit: int
|
max_num_limit: int
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,8 @@
|
|||||||
from dataclasses import field
|
|
||||||
from typing import Protocol
|
from typing import Protocol
|
||||||
|
|
||||||
from aiocache import cached
|
from aiocache import cached
|
||||||
from nonebot.compat import model_dump
|
from nonebot.compat import model_dump
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel, Field
|
||||||
from strenum import StrEnum
|
from strenum import StrEnum
|
||||||
|
|
||||||
from zhenxun.utils.http_utils import AsyncHttpx
|
from zhenxun.utils.http_utils import AsyncHttpx
|
||||||
@ -100,7 +99,7 @@ class FileInfo(BaseModel):
|
|||||||
|
|
||||||
type: FileType
|
type: FileType
|
||||||
name: str
|
name: str
|
||||||
files: list["FileInfo"] = field(default_factory=list)
|
files: list["FileInfo"] = Field(default_factory=list)
|
||||||
|
|
||||||
|
|
||||||
class JsdelivrStrategy:
|
class JsdelivrStrategy:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user