😊优化代码结构,统一图片主题,优化总体质感,非常完美

This commit is contained in:
2025-01-22 12:15:07 +08:00
parent 049ca929f3
commit f417f829cc
8 changed files with 209 additions and 118 deletions

View File

@ -58,35 +58,35 @@ async def get_shows_data(region_id: int, page=1, pagesize=20):
shows_data = await resp.json()
return shows_data
async def get_show_details(show_id: int):
param = {
"id": show_id,
"project_id": show_id,
"requestSource": "neul-next"
}
param = {"id": show_id, "project_id": show_id, "requestSource": "neul-next"}
async with ClientSession() as session:
async with session.get(SHOW_DETAILS_API_ROOT, headers=HEADERS, params=param) as resp:
async with session.get(
SHOW_DETAILS_API_ROOT, headers=HEADERS, params=param
) as resp:
show_details_data = await resp.json()
return show_details_data
def process_show_details_data_to_template(show_details_data: dict):
def process_show_details_data_to_template(show_details_data: dict) -> tuple:
data = show_details_data["data"]
banner_url = "https:"+data["banner"]
banner_url = "https:" + data["banner"]
# banner_url = extract_banner_url(data["performance_image"])
# 提取事件基本信息
name = data["name"]
start_time = convert_timestamp(data["start_time"])
end_time = convert_timestamp(data["end_time"])
# 提取场馆信息
venue_name = data["venue_info"]["name"]
venue_detail = data["venue_info"]["address_detail"]
# 提取主办方信息
organizer = data["merchant"]["company"]
# 提取实名制,退票等信息
is_refund = data["is_refund"]
id_bind = data["id_bind"]
@ -96,21 +96,24 @@ def process_show_details_data_to_template(show_details_data: dict):
ticket_info = []
for screen in data.get("screen_list", []):
for ticket in screen.get("ticket_list", []):
ticket_info.append({
"description": ticket.get("desc", ""),
"price": ticket.get("price", 0),
"sale_start": convert_timestamp(ticket.get("saleStart", 0)),
"sale_end": convert_timestamp(ticket.get("saleEnd", 0)),
"status": ticket.get("sale_flag", {}).get("display_name", ""),
"screen_name": ticket.get("screen_name")
})
ticket_info.append(
{
"description": ticket.get("desc", ""),
"price": ticket.get("price", 0),
"sale_start": convert_timestamp(ticket.get("saleStart", 0)),
"sale_end": convert_timestamp(ticket.get("saleEnd", 0)),
"status": ticket.get("sale_flag", {}).get("display_name", ""),
"screen_name": ticket.get("screen_name"),
}
)
guests_list = data["guests"]
if guests_list != None:
guests = "".join(n["name"] for n in guests_list)
else:
guests = ""
desc = data["performance_desc"]["list"]
details_html = "" # 可能未绑定
for item in desc:
if item.get("module") == "activity_content":
details_html = item.get("details", "")
@ -129,12 +132,13 @@ def process_show_details_data_to_template(show_details_data: dict):
"is_refund": is_refund,
"id_bind": id_bind,
"has_eticket": has_eticket,
"details_html": details_html
"details_html": details_html,
}
return [item_dict, details_html]
def process_shows_data_to_template(shows_data: dict):
return item_dict, details_html
def process_shows_data_to_template(shows_data: dict) -> tuple:
showlist = []
data = shows_data["data"]
page = data["page"]
@ -184,4 +188,5 @@ def process_shows_data_to_template(shows_data: dict):
"total_pages": total_pages,
"total_results": total_results,
}
return [showlist, global_data_dict]
# return (sorted(showlist, key=lambda x: x["start_time"]), global_data_dict)
return showlist, global_data_dict