|
@@ -15,8 +15,13 @@ class GetCoverService(Response):
|
|
|
async def montage_cover(self, oss_key, pool_name):
|
|
|
match pool_name:
|
|
|
case "aigc_db_pool":
|
|
|
+ if oss_key.startswith("http"):
|
|
|
+ return oss_key + self.suffix
|
|
|
+
|
|
|
return self.aigc_prefix + oss_key + self.suffix
|
|
|
case "long_video_db_pool":
|
|
|
+ if oss_key.startswith("http"):
|
|
|
+ return oss_key + self.suffix
|
|
|
return self.pq_prefix + oss_key + self.suffix
|
|
|
case _:
|
|
|
return None
|
|
@@ -34,7 +39,17 @@ class GetCoverService(Response):
|
|
|
)
|
|
|
if fetch_response:
|
|
|
image_oss = fetch_response[0]["oss_object_key"]
|
|
|
- cover = await self.montage_cover(image_oss, "aigc_db_pool")
|
|
|
+ if image_oss:
|
|
|
+ cover = await self.montage_cover(image_oss, "aigc_db_pool")
|
|
|
+ else:
|
|
|
+ image_url = fetch_response[0]['image_url']
|
|
|
+ if not image_url:
|
|
|
+ return self.error_response(
|
|
|
+ error_code="402",
|
|
|
+ error_message="can't find cover in aigc system",
|
|
|
+ )
|
|
|
+ else:
|
|
|
+ cover = await self.montage_cover(image_url, "aigc_db_pool")
|
|
|
else:
|
|
|
return self.error_response(
|
|
|
error_code="402",
|