瀏覽代碼

模特图和上脚图生成

rambo 3 月之前
父節點
當前提交
33c8504d98
共有 1 個文件被更改,包括 52 次插入29 次删除
  1. 52 29
      python/api.py

+ 52 - 29
python/api.py

@@ -29,9 +29,13 @@ from service.online_request.module_online_data import OnlineDataRequest
 from concurrent.futures import ThreadPoolExecutor
 from functools import partial
 from service.online_request.module_online_data import AIGCDataRequest
+
+
 def parserGoodsDict2Aigc(return_data_check_before_detail):
-    '''获取商品组装数据'''
-    goods_no_dict = return_data_check_before_detail.get("data",{}).get("goods_no_dict", {})
+    """获取商品组装数据"""
+    goods_no_dict = return_data_check_before_detail.get("data", {}).get(
+        "goods_no_dict", {}
+    )
     return goods_no_dict
 
 
@@ -450,26 +454,36 @@ async def handle_detail(request: Request, params: HandlerDetail):
         if is_product_scene == 1:
             goods_dict = parserGoodsDict2Aigc(return_data_check_before_detail)
             new_goods_dict = {}
-            for goods_art_no  in goods_dict.keys():
-                goods_art_dict_info  = goods_dict[goods_art_no]
-                first_goods_art_no_info = goods_art_dict_info.get("货号资料",[])[0]
+            for goods_art_no in goods_dict.keys():
+                goods_art_dict_info = goods_dict[goods_art_no]
+                first_goods_art_no_info = goods_art_dict_info.get("货号资料", [])[0]
                 first_pics = first_goods_art_no_info.get("pics")
                 ceshi_image_path = first_pics.get("侧视-抠图")
                 save_root_path = ceshi_image_path.split("阴影图处理")[0]
                 save_image_path = f"{save_root_path}场景图.jpg"
                 aigc_clazz.center_paste_image(ceshi_image_path, save_image_path)
-                image_path = aigc_clazz.generateProductScene(
-                    save_image_path, product_scene_prompt, save_image_path
-                )
-                goods_art_dict_info["场景图"] = image_path
-                new_goods_dict[goods_art_no] = goods_art_dict_info
-                handler_result.append(
-                    {
-                        "goods_art_no": goods_art_no,
-                        "success": True,
-                        "info": "处理成功",
-                    }
-                )
+                try:
+                    image_path = aigc_clazz.generateProductScene(
+                        save_image_path, product_scene_prompt, save_image_path
+                    )
+                    goods_art_dict_info["场景图"] = image_path
+                    new_goods_dict[goods_art_no] = goods_art_dict_info
+                    handler_result.append(
+                        {
+                            "goods_art_no": goods_art_no,
+                            "success": True,
+                            "info": "处理成功",
+                        }
+                    )
+                except:
+                    print('An exception occurred')
+                    handler_result.append(
+                        {
+                            "goods_art_no": goods_art_no,
+                            "success": False,
+                            "info": "处理失败",
+                        }
+                    )
             return_data_check_before_detail["data"]["goods_no_dict"] = new_goods_dict
         if is_upper_footer == 1:
             goods_dict = parserGoodsDict2Aigc(return_data_check_before_detail)
@@ -484,18 +498,27 @@ async def handle_detail(request: Request, params: HandlerDetail):
                 save_root_path = ceshi_image_path.split("阴影图处理")[0]
                 save_image_path = f"{save_root_path}模特图.jpg"
                 shutil.copy(ceshi_image_path, save_image_path)
-                image_path = aigc_clazz.generateUpperShoes(
-                    save_image_path, model_id, save_image_path
-                )
-                goods_art_dict_info["模特图"] = image_path
-                new_goods_dict[goods_art_no] = goods_art_dict_info
-                handler_result.append(
-                    {
-                        "goods_art_no": goods_art_no,
-                        "success": True,
-                        "info": "处理成功",
-                    }
-                )
+                try:
+                    image_path = aigc_clazz.generateUpperShoes(
+                        save_image_path, model_id, save_image_path
+                    )
+                    goods_art_dict_info["模特图"] = image_path
+                    new_goods_dict[goods_art_no] = goods_art_dict_info
+                    handler_result.append(
+                        {
+                            "goods_art_no": goods_art_no,
+                            "success": True,
+                            "info": "处理成功",
+                        }
+                    )
+                except:
+                    handler_result.append(
+                        {
+                            "goods_art_no": goods_art_no,
+                            "success": False,
+                            "info": "处理失败",
+                        }
+                    )
             return_data_check_before_detail["data"]["goods_no_dict"] = new_goods_dict
         if is_detail == 0:
             return {