|
|
@@ -61,6 +61,7 @@ def log_exception_with_context(context_message=""):
|
|
|
|
|
|
def parserGoodsDict2Aigc(return_data_check_before_detail):
|
|
|
"""获取商品组装数据"""
|
|
|
+ print("获取商品组装数据===========>return_data_check_before_detail",return_data_check_before_detail)
|
|
|
goods_no_dict = return_data_check_before_detail.get("data", {}).get(
|
|
|
"goods_no_dict", {}
|
|
|
)
|
|
|
@@ -327,6 +328,7 @@ async def process_handle_detail(request: Request, params: HandlerDetail):
|
|
|
return_data_check_before_detail = await _process_model_images(
|
|
|
aigc_clazz, run_main, return_data_check_before_detail, upper_footer_params
|
|
|
)
|
|
|
+ current_day = time.strftime("%Y-%m-%d", time.localtime(time.time()))
|
|
|
# 处理详情页
|
|
|
if is_detail == 1:
|
|
|
handler_result_folder, handler_result= await _process_detail_pages(
|
|
|
@@ -341,14 +343,14 @@ async def process_handle_detail(request: Request, params: HandlerDetail):
|
|
|
)
|
|
|
await sendAsyncMessage(
|
|
|
msg="处理结束",
|
|
|
- data={"output_folder": handler_result_folder, "list": handler_result},
|
|
|
+ data={"output_folder": f"{handler_result_folder}/{current_day}", "list": handler_result},
|
|
|
status="处理结束",
|
|
|
msg_type="detail_result_progress",
|
|
|
)
|
|
|
else:
|
|
|
await sendAsyncMessage(
|
|
|
msg="处理结束",
|
|
|
- data={"output_folder": handler_result_folder, "list": handler_result},
|
|
|
+ data={"output_folder": f"{handler_result_folder}/{current_day}", "list": handler_result},
|
|
|
status="处理结束",
|
|
|
msg_type="detail_result_progress",
|
|
|
)
|
|
|
@@ -476,7 +478,7 @@ async def _build_config_data(params, goods_art_no_arrays):
|
|
|
"is_check_color_is_all": False,
|
|
|
"cutout_is_pass": True,
|
|
|
"assigned_page_dict": {},
|
|
|
- "detail_is_pass": True,
|
|
|
+ "detail_is_pass": False,
|
|
|
"upload_is_pass": False,
|
|
|
"upload_is_enable": False,
|
|
|
"is_filter": False,
|
|
|
@@ -510,8 +512,8 @@ async def _process_cutout(run_main, config_data, goods_art_no_arrays, move_folde
|
|
|
cutout_res = run_main.check_for_cutout_image_first_call_back(return_data)
|
|
|
|
|
|
if cutout_res:
|
|
|
- sys_path = format(os.getcwd()).replace("\\", "/")
|
|
|
- handler_result_folder = f"{sys_path}/{config_data['image_dir']}"
|
|
|
+ # sys_path = format(os.getcwd()).replace("\\", "/")
|
|
|
+ handler_result_folder = f"{config_data['image_dir']}"
|
|
|
|
|
|
for goods_art_item in goods_art_no_arrays:
|
|
|
handler_result.append({
|
|
|
@@ -521,13 +523,16 @@ async def _process_cutout(run_main, config_data, goods_art_no_arrays, move_folde
|
|
|
})
|
|
|
|
|
|
if len(move_folder_array.keys()) == len(goods_art_no_arrays):
|
|
|
+ handler_result_folder = handler_result_folder.replace("\\", "/")
|
|
|
+ success_items = [item for item in handler_result if item.get('success') == True]
|
|
|
+ cutout_folder = handler_result_folder+"/"+success_items[0].get("goods_art_no")+"/800x800" if len(success_items) > 0 else ""
|
|
|
progress = {
|
|
|
"status": "处理完成",
|
|
|
"current": len(goods_art_no_arrays),
|
|
|
"total": len(goods_art_no_arrays),
|
|
|
- "error": 0
|
|
|
+ "error": 0,
|
|
|
+ "folder":cutout_folder,
|
|
|
}
|
|
|
-
|
|
|
await sendAsyncMessage(
|
|
|
msg="抠图完成",
|
|
|
data={"output_folder": handler_result_folder, "list": handler_result},
|
|
|
@@ -565,16 +570,18 @@ async def _process_scene_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
msg_type="scene_progress",
|
|
|
progress=product_scene_progress
|
|
|
)
|
|
|
-
|
|
|
for goods_art_no in goods_dict.keys():
|
|
|
try:
|
|
|
product_scene_finish_progress += 1
|
|
|
+ folder = ""
|
|
|
product_scene_progress = {
|
|
|
"status": "正在处理",
|
|
|
"goods_art_no": goods_art_no,
|
|
|
"current": product_scene_finish_progress,
|
|
|
"total": product_scene_total_progress,
|
|
|
- "error": product_scene_error_progress
|
|
|
+ "error": product_scene_error_progress,
|
|
|
+ "goods_art_no": goods_art_no,
|
|
|
+ "folder": folder,
|
|
|
}
|
|
|
|
|
|
await sendAsyncMessage(
|
|
|
@@ -594,6 +601,14 @@ async def _process_scene_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
if os.path.isfile(save_image_path):
|
|
|
goods_art_dict_info["场景图"] = save_image_path
|
|
|
new_goods_dict[goods_art_no] = goods_art_dict_info
|
|
|
+ product_scene_progress["folder"] = save_image_path
|
|
|
+ await sendAsyncMessage(
|
|
|
+ msg="场景图处理完成",
|
|
|
+ goods_arts=[goods_art_no],
|
|
|
+ status="场景图处理完成",
|
|
|
+ msg_type="scene_progress",
|
|
|
+ progress=product_scene_progress
|
|
|
+ )
|
|
|
continue
|
|
|
|
|
|
aigc_clazz.center_paste_image(ceshi_image_path, save_image_path)
|
|
|
@@ -603,15 +618,7 @@ async def _process_scene_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
|
|
|
goods_art_dict_info["场景图"] = image_path
|
|
|
new_goods_dict[goods_art_no] = goods_art_dict_info
|
|
|
-
|
|
|
- product_scene_progress = {
|
|
|
- "status": "正在处理",
|
|
|
- "current": product_scene_finish_progress,
|
|
|
- "total": product_scene_total_progress,
|
|
|
- "error": product_scene_error_progress,
|
|
|
- "goods_art_no": goods_art_no,
|
|
|
- }
|
|
|
-
|
|
|
+ product_scene_progress["folder"] = save_image_path
|
|
|
await sendAsyncMessage(
|
|
|
msg="场景图处理完成",
|
|
|
goods_arts=[goods_art_no],
|
|
|
@@ -621,6 +628,7 @@ async def _process_scene_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
)
|
|
|
|
|
|
except Exception as e:
|
|
|
+ print("场景图处理异常",e)
|
|
|
os.remove(save_image_path)
|
|
|
product_scene_finish_progress -= 1
|
|
|
product_scene_error_progress += 1
|
|
|
@@ -699,13 +707,16 @@ async def _process_model_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
|
|
|
for goods_art_no in goods_dict.keys():
|
|
|
upper_footer_finish_progress += 1
|
|
|
+ folder = ""
|
|
|
try:
|
|
|
upper_footer_progress = {
|
|
|
"status": "正在处理",
|
|
|
"goods_art_no": goods_art_no,
|
|
|
"current": upper_footer_finish_progress,
|
|
|
"total": upper_footer_total_progress,
|
|
|
- "error": upper_footer_error_progress
|
|
|
+ "error": upper_footer_error_progress,
|
|
|
+ "goods_art_no": goods_art_no,
|
|
|
+ "folder": folder,
|
|
|
}
|
|
|
|
|
|
await sendAsyncMessage(
|
|
|
@@ -727,6 +738,14 @@ async def _process_model_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
if os.path.isfile(save_image_path):
|
|
|
goods_art_dict_info["模特图"] = save_image_path
|
|
|
new_goods_dict[goods_art_no] = goods_art_dict_info
|
|
|
+ upper_footer_progress["folder"] = save_image_path
|
|
|
+ await sendAsyncMessage(
|
|
|
+ msg="模特图处理成功",
|
|
|
+ goods_arts=[goods_art_no],
|
|
|
+ status="模特图处理成功",
|
|
|
+ msg_type="upper_footer_progress",
|
|
|
+ progress=upper_footer_progress
|
|
|
+ )
|
|
|
continue
|
|
|
|
|
|
shutil.copy(ceshi_image_path, save_image_path)
|
|
|
@@ -745,14 +764,14 @@ async def _process_model_images(aigc_clazz, run_main, return_data_check_before_d
|
|
|
goods_art_dict_info["模特图"] = image_path
|
|
|
new_goods_dict[goods_art_no] = goods_art_dict_info
|
|
|
|
|
|
- upper_footer_progress = {
|
|
|
- "status": "正在处理",
|
|
|
- "goods_art_no": goods_art_no,
|
|
|
- "current": upper_footer_finish_progress,
|
|
|
- "total": upper_footer_total_progress,
|
|
|
- "error": upper_footer_error_progress
|
|
|
- }
|
|
|
-
|
|
|
+ # upper_footer_progress = {
|
|
|
+ # "status": "正在处理",
|
|
|
+ # "goods_art_no": goods_art_no,
|
|
|
+ # "current": upper_footer_finish_progress,
|
|
|
+ # "total": upper_footer_total_progress,
|
|
|
+ # "error": upper_footer_error_progress
|
|
|
+ # }
|
|
|
+ upper_footer_progress["folder"] = save_image_path
|
|
|
await sendAsyncMessage(
|
|
|
msg="模特图处理成功",
|
|
|
goods_arts=[goods_art_no],
|
|
|
@@ -823,7 +842,7 @@ async def _process_detail_pages(run_main, return_data_check_before_detail, onlin
|
|
|
handler_result_folder = ""
|
|
|
# 处理失败情况
|
|
|
else:
|
|
|
- out_put_dir_path = "{}/{}".format(os.getcwd(), out_put_dir).replace("\\", "/")
|
|
|
+ out_put_dir_path = "{}".format(out_put_dir).replace("\\", "/")
|
|
|
handler_result_folder = os.path.dirname(out_put_dir_path)
|
|
|
if handler_result_folder:
|
|
|
handler_result_folder = os.path.dirname(handler_result_folder)
|