From 64249fc7687dc3fc1f0d02a791a77a3367e1fc60 Mon Sep 17 00:00:00 2001 From: zzlgreat Date: Mon, 15 Dec 2025 16:03:10 +0800 Subject: [PATCH] update pay ui --- app.py | 46 ++++++------------------------- app_vx.py | 60 +++++++---------------------------------- public/avatars/web.png | Bin 0 -> 41270 bytes 3 files changed, 18 insertions(+), 88 deletions(-) create mode 100644 public/avatars/web.png diff --git a/app.py b/app.py index 89709b0b..68e5ddf8 100755 --- a/app.py +++ b/app.py @@ -6278,7 +6278,7 @@ class Event(db.Model): follower_count = db.Column(db.Integer, default=0) # 关联信息 - related_industries = db.Column(db.JSON) + related_industries = db.Column(db.String(20)) # 申万行业代码,如 "S640701" keywords = db.Column(db.JSON) files = db.Column(db.JSON) importance = db.Column(db.String(20)) @@ -10271,10 +10271,8 @@ def api_get_events(): # 新增:行业代码过滤(申银万国行业分类)- 支持前缀匹配 # 申万行业分类层级:一级 Sxx, 二级 Sxxxx, 三级 Sxxxxxx # 搜索 S22 会匹配所有 S22xxxx 的事件(如 S2203, S220309 等) + # related_industries 格式: varchar,如 "S640701" if industry_code: - # related_industries 格式: [{"申银万国行业分类": "S370502"}, ...] - # 支持多个行业代码,用逗号分隔 - # 判断是否需要前缀匹配:一级(3字符)或二级(5字符)行业代码 def is_prefix_code(code): """判断是否为需要前缀匹配的行业代码(一级或二级)""" @@ -10291,48 +10289,20 @@ def api_get_events(): conditions = [] for code in codes: if is_prefix_code(code): - # 前缀匹配:使用 JSON_TABLE + LIKE - # 这个子查询找到所有 related_industries 中申万行业代码以指定前缀开头的事件ID - prefix_sql = text(""" - id IN ( - SELECT DISTINCT e2.id FROM event e2 - CROSS JOIN JSON_TABLE( - e2.related_industries, - '$[*]' COLUMNS (sw_code VARCHAR(20) PATH '$."申银万国行业分类"') - ) AS jt - WHERE jt.sw_code LIKE :prefix - ) - """).bindparams(prefix=f"{code}%") - conditions.append(prefix_sql) + # 前缀匹配:使用 LIKE + conditions.append(Event.related_industries.like(f"{code}%")) else: # 精确匹配(三级行业代码) - json_path = '$[*]."申银万国行业分类"' - conditions.append( - text("JSON_CONTAINS(JSON_EXTRACT(related_industries, :json_path), :code)") - .bindparams(json_path=json_path, code=json.dumps(code)) - ) + conditions.append(Event.related_industries == code) query = query.filter(db.or_(*conditions)) else: # 单个行业代码 if is_prefix_code(industry_code): - # 前缀匹配:使用 JSON_TABLE + LIKE - prefix_sql = text(""" - id IN ( - SELECT DISTINCT e2.id FROM event e2 - CROSS JOIN JSON_TABLE( - e2.related_industries, - '$[*]' COLUMNS (sw_code VARCHAR(20) PATH '$."申银万国行业分类"') - ) AS jt - WHERE jt.sw_code LIKE :prefix - ) - """).bindparams(prefix=f"{industry_code}%") - query = query.filter(prefix_sql) + # 前缀匹配:使用 LIKE + query = query.filter(Event.related_industries.like(f"{industry_code}%")) else: # 精确匹配(三级行业代码) - json_path = '$[*]."申银万国行业分类"' - query = query.filter( - text("JSON_CONTAINS(JSON_EXTRACT(related_industries, :json_path), :industry_code)") - ).params(json_path=json_path, industry_code=json.dumps(industry_code)) + query = query.filter(Event.related_industries == industry_code) # 新增:关键词/全文搜索过滤(MySQL JSON) if search_query: like_pattern = f"%{search_query}%" diff --git a/app_vx.py b/app_vx.py index 575e706d..20a2c2f0 100644 --- a/app_vx.py +++ b/app_vx.py @@ -1204,7 +1204,7 @@ class Event(db.Model): follower_count = db.Column(db.Integer, default=0) # 关联信息 - related_industries = db.Column(db.JSON) + related_industries = db.Column(db.String(20)) # 申万行业代码,如 "S640701" keywords = db.Column(db.JSON) files = db.Column(db.JSON) importance = db.Column(db.String(20)) @@ -2962,37 +2962,14 @@ def api_get_events(): code_prefixes = SYWG_INDUSTRY_CACHE[industry_level].get(industry_classification, []) if code_prefixes: - # 构建查询条件:查找related_industries中包含这些前缀的事件 - if isinstance(db.engine.dialect, MySQLDialect): - # MySQL JSON查询 - conditions = [] - for prefix in code_prefixes: - conditions.append( - text(""" - JSON_SEARCH( - related_industries, - 'one', - CONCAT(:prefix, '%'), - NULL, - '$[*]."申银万国行业分类"' - ) IS NOT NULL - """).params(prefix=prefix) - ) + # 构建查询条件:查找related_industries以这些前缀开头的事件 + # related_industries 现在是 varchar 格式,如 "S640701" + conditions = [] + for prefix in code_prefixes: + conditions.append(Event.related_industries.like(f"{prefix}%")) - if conditions: - query = query.filter(or_(*conditions)) - else: - # 其他数据库 - pattern_conditions = [] - for prefix in code_prefixes: - pattern_conditions.append( - text("related_industries::text LIKE :pattern").params( - pattern=f'%"申银万国行业分类": "{prefix}%' - ) - ) - - if pattern_conditions: - query = query.filter(or_(*pattern_conditions)) + if conditions: + query = query.filter(or_(*conditions)) else: # 没有找到匹配的行业代码,返回空结果 query = query.filter(Event.id == -1) @@ -3019,25 +2996,8 @@ def api_get_events(): if sector_result and sector_result[0]: industry_code_to_search = sector_result[0] - # 在related_industries JSON中查找包含该代码的事件 - if isinstance(db.engine.dialect, MySQLDialect): - query = query.filter( - text(""" - JSON_SEARCH( - related_industries, - 'one', - :industry_code, - NULL, - '$[*]."申银万国行业分类"' - ) IS NOT NULL - """) - ).params(industry_code=industry_code_to_search) - else: - query = query.filter( - text(""" - related_industries::text LIKE :pattern - """) - ).params(pattern=f'%"申银万国行业分类": "{industry_code_to_search}"%') + # related_industries 现在是 varchar 格式,直接匹配 + query = query.filter(Event.related_industries == industry_code_to_search) else: # 如果没有找到对应的行业代码,返回空结果 query = query.filter(Event.id == -1) diff --git a/public/avatars/web.png b/public/avatars/web.png new file mode 100644 index 0000000000000000000000000000000000000000..09c3d4bed25bb2360ca2251690c965605645a50c GIT binary patch literal 41270 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