feat: upgrade客服多店铺分流、批量报价与稳定性防护

This commit is contained in:
2026-02-28 18:52:31 +08:00
parent c39840fe15
commit 46143be86c
16 changed files with 1329 additions and 37 deletions

View File

@@ -65,6 +65,8 @@ class CustomerProfile:
last_gemini_prompt: str = "" # 最近一次图片的 Gemini 处理提示词
last_aspect_ratio: str = "1:1" # 最近一次图片的建议输出比例
last_perspective: str = "no" # 最近一次图片的透视状态
pending_quote_images: List[str] = None # 待统一报价图片队列(持久化)
pending_quote_requirements: List[str] = None # 待统一报价需求队列(持久化)
# 当前任务状态
processing_status: str = "" # 待处理/处理中/等待确认/已完成
@@ -148,6 +150,10 @@ class CustomerProfile:
self.image_type_history = []
if self.upsell_opportunity is None:
self.upsell_opportunity = []
if self.pending_quote_images is None:
self.pending_quote_images = []
if self.pending_quote_requirements is None:
self.pending_quote_requirements = []
class CustomerDatabase:
@@ -423,6 +429,24 @@ class CustomerDatabase:
profile.last_perspective = perspective
self.save_customer(profile)
def update_pending_quote_state(
self,
customer_id: str,
images: List[str],
requirements: List[str]
):
"""持久化收图阶段状态,防止服务重启丢失。"""
profile = self.get_customer(customer_id)
profile.pending_quote_images = list(images or [])
profile.pending_quote_requirements = list(requirements or [])
self.save_customer(profile)
def clear_pending_quote_state(self, customer_id: str):
profile = self.get_customer(customer_id)
profile.pending_quote_images = []
profile.pending_quote_requirements = []
self.save_customer(profile)
def update_processing_status(self, customer_id: str, status: str, image_url: str = "", expected_done_at: str = ""):
"""更新当前任务处理状态"""
profile = self.get_customer(customer_id)