📝 新增农场详述功能
This commit is contained in:
@@ -170,6 +170,93 @@ class CFarmManager:
|
||||
|
||||
return img.pic2bytes()
|
||||
|
||||
@classmethod
|
||||
async def drawDetailFarmByUid(cls, uid: str) -> list:
|
||||
info = []
|
||||
|
||||
farm = await cls.drawFarmByUid(uid)
|
||||
|
||||
info.append(BuildImage.open(farm))
|
||||
|
||||
dataList = []
|
||||
columnName = [
|
||||
"-",
|
||||
"土地ID",
|
||||
"作物名称",
|
||||
"成熟时间",
|
||||
"土地状态",
|
||||
"剩余产出",
|
||||
]
|
||||
|
||||
icon = ""
|
||||
soilNumber = await g_pDBService.user.getUserSoilByUid(uid)
|
||||
|
||||
for i in range(1, soilNumber + 1):
|
||||
soilInfo = await g_pDBService.userSoil.getUserSoil(uid, i)
|
||||
|
||||
if not soilInfo:
|
||||
continue
|
||||
|
||||
if soilInfo["soilLevel"] == 1:
|
||||
iconPath = g_sResourcePath / f"soil/TODO.png"
|
||||
else:
|
||||
iconPath = g_sResourcePath / f"soil/普通土地.png"
|
||||
|
||||
if iconPath.exists():
|
||||
icon = (iconPath, 33, 33)
|
||||
|
||||
plantName = soilInfo.get("plantName", "-")
|
||||
|
||||
if plantName == "-":
|
||||
matureTime = "-"
|
||||
soilStatus = "-"
|
||||
plantNumber = "-"
|
||||
else:
|
||||
matureTime = datetime.fromtimestamp(int(soilInfo.get("matureTime", 0))).strftime("%Y-%m-%d %H:%M:%S.%f")
|
||||
soilStatus = await g_pDBService.userSoil.getUserSoilStatus(uid, i)
|
||||
|
||||
num = await g_pDBService.userSteal.getTotalStolenCount(uid, i)
|
||||
planInfo = await g_pDBService.plant.getPlantByName(plantName)
|
||||
|
||||
if not planInfo:
|
||||
plantNumber = f"None / {num}"
|
||||
else:
|
||||
plantNumber = f"{planInfo['harvest']} / {num}"
|
||||
|
||||
dataList.append(
|
||||
[
|
||||
icon,
|
||||
i,
|
||||
plantName,
|
||||
matureTime,
|
||||
soilStatus,
|
||||
plantNumber,
|
||||
])
|
||||
|
||||
if len(dataList) >= 15:
|
||||
result = await ImageTemplate.table_page(
|
||||
"土地详细信息",
|
||||
"测试N\n测试2",
|
||||
columnName,
|
||||
dataList,
|
||||
)
|
||||
|
||||
info.append(result)
|
||||
dataList.clear()
|
||||
|
||||
if i >= 30:
|
||||
result = await ImageTemplate.table_page(
|
||||
"土地详细信息",
|
||||
"测试N\n测试2",
|
||||
columnName,
|
||||
dataList,
|
||||
)
|
||||
|
||||
info.append(result)
|
||||
dataList.clear()
|
||||
|
||||
return info
|
||||
|
||||
@classmethod
|
||||
async def drawSoilPlant(cls, uid: str, soilIndex: int) -> tuple[bool, BuildImage, bool]:
|
||||
"""绘制植物资源
|
||||
|
||||
+8
-8
@@ -21,8 +21,8 @@ class CShopManager:
|
||||
bytes: 返回商店图片bytes
|
||||
"""
|
||||
|
||||
data_list = []
|
||||
column_name = [
|
||||
dataList = []
|
||||
columnName = [
|
||||
"-",
|
||||
"种子名称",
|
||||
"种子单价",
|
||||
@@ -48,16 +48,16 @@ class CShopManager:
|
||||
continue
|
||||
|
||||
icon = ""
|
||||
icon_path = g_sResourcePath / f"plant/{plant['name']}/icon.png"
|
||||
if icon_path.exists():
|
||||
icon = (icon_path, 33, 33)
|
||||
iconPath = g_sResourcePath / f"plant/{plant['name']}/icon.png"
|
||||
if iconPath.exists():
|
||||
icon = (iconPath, 33, 33)
|
||||
|
||||
if plant['again'] == True:
|
||||
sell = "可以"
|
||||
else:
|
||||
sell = "不可以"
|
||||
|
||||
data_list.append(
|
||||
dataList.append(
|
||||
[
|
||||
icon,
|
||||
plant['name'],
|
||||
@@ -79,8 +79,8 @@ class CShopManager:
|
||||
result = await ImageTemplate.table_page(
|
||||
title,
|
||||
"购买示例:@小真寻 购买种子 大白菜 5",
|
||||
column_name,
|
||||
data_list,
|
||||
columnName,
|
||||
dataList,
|
||||
)
|
||||
|
||||
return result.pic2bytes()
|
||||
|
||||
Reference in New Issue
Block a user