diff --git a/core/jx3_service.py b/core/jx3_service.py index 965158a..fb81dcf 100644 --- a/core/jx3_service.py +++ b/core/jx3_service.py @@ -235,19 +235,22 @@ class JX3Service: return return_data - async def jinjia(self, server: str) -> Dict[str, Any]: + async def jinjia(self, server: str, limit:str) -> Dict[str, Any]: """区服金价""" return_data = self._init_return_data() - params = {"serverName": server} - data_list: Optional[List[Dict[str, Any]]] = await self._base_request("aijx3_jinjia", "POST", params=params) + # 获取配置中的 Token + token = self._config.get("jx3api_token", "") + if token == "": + return_data["msg"] = "系统未配置API访问Token" + return return_data + + params = {"server": server, "limit": limit, "token": token} + data_list: Optional[List[Dict[str, Any]]] = await self._base_request("jx3_jinjia", "GET", params=params) if not data_list or not isinstance(data_list, list): return_data["msg"] = "获取接口信息失败或数据格式错误" return return_data - - # 安全处理列表切片 - display_data = data_list[:15] # 加载模板 try: @@ -259,11 +262,7 @@ class JX3Service: # 准备模板渲染数据 try: - return_data["data"] = { - "items": display_data, - "server": server, - "update_time": datetime.now().strftime("%Y-%m-%d %H:%M:%S"), - } + return_data["data"]["items"] = data_list return_data["code"] = 200 except Exception as e: logger.error(f"jinjia 模板数据准备失败: {e}") diff --git a/data/api_config.json b/data/api_config.json index a4f3889..a964f34 100644 --- a/data/api_config.json +++ b/data/api_config.json @@ -196,5 +196,15 @@ "table": 1, "token":"" } + }, + "jx3_jinjia":{ + "url":"https://www.jx3api.com/data/trade/demon", + "method":"GET", + "description":"金价比例信息", + "params":{ + "server": "梦江南", + "limit": "10", + "token":"" + } } } \ No newline at end of file diff --git a/main.py b/main.py index c8639e5..7467156 100644 --- a/main.py +++ b/main.py @@ -184,10 +184,10 @@ class Jx3ApiPlugin(Star): @jx3.command("金价") - async def jx3_jinjia(self, event: AstrMessageEvent,server: str = "梦江南"): + async def jx3_jinjia(self, event: AstrMessageEvent,server: str = "梦江南", limit:str = "15"): """剑三 金价 服务器""" try: - data= await self.jx3fun.jinjia(server) + data= await self.jx3fun.jinjia(server,limit) if data["code"] == 200: url = await self.html_render(data["temp"], data["data"], options={}) yield event.image_result(url) diff --git a/templates/jinjia.html b/templates/jinjia.html index 2b4c44c..0b7ecf8 100644 --- a/templates/jinjia.html +++ b/templates/jinjia.html @@ -1,33 +1,103 @@ -