Files
SMANAGE/backup/_api_backup/TempLateAPI/GERP/API/Backpack/Get.api
T

50 lines
1.5 KiB
Plaintext

from PDAPI import *
import TempLateAPI.GERP.API.FormAPI.FormData as FormData
# 处理获取物品请求
def HandleGetBackpackItem(table, cleanedData):
"""处理获取物品请求"""
UserUUID = flask.request.args.get("UserUUID")
PageIndex = max(flask.request.args.get("PageIndex", 1, type=int), 1)
PageSize = min(flask.request.args.get("PageSize", 10, type=int), 100)
if not UserUUID:
return {"code": 400, "msg": "参数缺失: UserUUID"}
# 构建查询
Query = GERPBackpack.query.filter(
GERPBackpack.UserUUID == Get16toBytes(UserUUID)
)
# 获取总数
Total = Query.count()
# 分页处理
Items = Query.offset((PageIndex - 1) * PageSize).limit(PageSize).all()
# 处理数据
Data = []
for Item in Items:
ItemData = {
"UserUUID": GetBytesTo16(Item.UserUUID),
"BackpackItemUUID": GetBytesTo16(Item.BackpackItemUUID),
"ItemTemplateUUID": GetBytesTo16(Item.ItemTemplateUUID),
"ItemName": Item.ItemName,
"ItemIcon": Item.ItemIcon,
"ItemIconColor": Item.ItemIconColor,
"ItemTags": Item.ItemTags,
"ItemDescription": Item.ItemDescription,
"ItemMetaData": Item.ItemMetaData,
"ItemLength": Item.ItemLength
}
Data.append(ItemData)
# 返回数据
return {
"code": 0,
"total": Total,
"data": Data
}
# 注册函数类型插件
FormData.RegisterFunctionExtension("BackpackItem", "get", HandleGetBackpackItem)