Bläddra i källkod

交易市场平台(供应商)

wwh 1 månad sedan
förälder
incheckning
34aa9057bf

+ 1 - 1
baqing-admin/src/main/java/com/ruoyi/web/modules/architecture/support/EpidemicTreatmentStandardRules.java

@@ -59,7 +59,7 @@ public final class EpidemicTreatmentStandardRules
59 59
     {
60 60
         String ext = extensionOf(filenameOrPath);
61 61
         return ext.equals("pdf") || ext.equals("md") || ext.equals("doc") || ext.equals("docx")
62
-                || ext.equals("xls") || ext.equals("xlsx") || ext.equals("ppt") || ext.equals("pptx");
62
+                || ext.equals("xls") || ext.equals("xlsx") || ext.equals("pptx");
63 63
     }
64 64
 
65 65
     public static boolean isCoverExtensionAllowed(String filenameOrPath)

+ 3 - 0
baqing-admin/src/test/java/com/ruoyi/web/modules/architecture/support/EpidemicTreatmentStandardRulesTest.java

@@ -94,6 +94,9 @@ class EpidemicTreatmentStandardRulesTest
94 94
     void contentExt()
95 95
     {
96 96
         assertTrue(EpidemicTreatmentStandardRules.isContentExtensionAllowed("a.pdf"));
97
+        assertTrue(EpidemicTreatmentStandardRules.isContentExtensionAllowed("readme.md"));
98
+        assertTrue(EpidemicTreatmentStandardRules.isContentExtensionAllowed("slides.pptx"));
99
+        assertFalse(EpidemicTreatmentStandardRules.isContentExtensionAllowed("legacy.ppt"));
97 100
         assertFalse(EpidemicTreatmentStandardRules.isContentExtensionAllowed("a.exe"));
98 101
     }
99 102
 

+ 2 - 1
doc/养殖标准体系/疫病诊疗标准/疫病诊疗标准管理前端技术方案.md

@@ -143,7 +143,7 @@
143 143
 | 标准名称 | 必填,1~20 字 |
144 144
 | 标准类型 | 必选(资讯类别编码) |
145 145
 | 简介 | 选填,≤50 字 |
146
-| 正文 | 必填;后缀 `pdf/md/doc/docx/xls/xlsx/ppt/pptx`;≤30MB;文件名不含英文逗号 |
146
+| 正文 | 必填;后缀 **`pdf`/`md`/`doc`/`docx`/`xls`/`xlsx`/`pptx`**(服务端 `EpidemicTreatmentStandardRules`);≤30MB;文件名不含英文逗号。**说明**:页面 `contentFileExts` 本次未同步,**保存以服务端校验为准** |
147 147
 | 封面 | 选填;`jpg/jpeg/png`;≤10MB |
148 148
 
149 149
 已同步记录为只读;改内容须先移出知识库后再编辑、同步。
@@ -199,3 +199,4 @@
199 199
 | --- | --- |
200 200
 | 1.0 | 初稿:双卡片 CRUD、资讯类别编码、双维状态机、附件上传、知识库与发布/下架 |
201 201
 | **1.1** | **2026-06-01**:标准类型改资讯类别编码(`parentCode=001&categoryType=5`);存量 `1` 回退展示;编辑/上传仅 **未发布+未同步**;类型加载失败与已同步编辑提示;下架回流 **(0,1)** 操作矩阵修正 |
202
+| **1.2** | **2026-05-20**:正文服务端白名单:`pdf`、`md`、`doc`、`docx`、`xls`、`xlsx`、`pptx`(移除 `ppt`);前端 `contentFileExts` 本次不改 |

+ 1 - 1
doc/养殖标准体系/疫病诊疗标准/疫病诊疗标准管理功能需求-草稿.md

@@ -2,7 +2,7 @@
2 2
 
3 3
 
4 4
 
5
-1. 新增疫病诊疗标准:标准名称不能为空,长度 1–20;标准类型:疾病决策,必填,支持单选;标准简介:限制50字内;标准内容:必填,支持后缀名为pdf、md、doc、docx、xls、xlsx、ppt,pptx等非结构化文档单选上传,文件大小30M以内;封面:支持后缀名为jpg、jpeg、png等图片单选上传,文件大小10M以内。
5
+1. 新增疫病诊疗标准:标准名称不能为空,长度 1–20;标准类型:疾病决策,必填,支持单选;标准简介:限制50字内;标准内容:必填,支持后缀名为 pdf、md、doc、docx、xls、xlsx、pptx 等非结构化文档单选上传,文件大小30M以内;封面:支持后缀名为jpg、jpeg、png等图片单选上传,文件大小10M以内。
6 6
 2. 查询疫病诊疗标准列表:支持关键字(标准名称或标准简介)模糊匹配、标准类型精确匹配分页列出疫病诊疗标准列表。
7 7
 3. 修改疫病诊疗标准:标准名称、标准类型、标准简介、标准内容、封面均可修改。
8 8
 4. 删除疫病诊疗标准:删除数据同时删除相关文件,并通知知识库删除该疫病诊疗标准。

+ 2 - 1
doc/养殖标准体系/疫病诊疗标准/疫病诊疗标准管理功能需求.md

@@ -99,7 +99,7 @@
99 99
 | 标准名称 | 必填;长度 **1~20** 个字符(字符计数规则与项目全局一致) |
100 100
 | 标准类型 | 必填;单选,取值须为第 **2.1** 节所列资讯类别编码之一 |
101 101
 | 标准简介 | **选填**;若有内容,长度不超过 **50 字**(字数口径与项目全局一致) |
102
-| 标准内容 | **必填**;通过**单个**附件上传;允许后缀:`pdf`、`md`、`doc`、`docx`、`xls`、`xlsx`、`ppt`、`pptx`;单文件 ≤ **30 MB** |
102
+| 标准内容 | **必填**;通过**单个**附件上传;允许后缀:`pdf`、`md`、`doc`、`docx`、`xls`、`xlsx`、`pptx`;单文件 ≤ **30 MB** |
103 103
 | 封面 | **选填**;通过**单个**图片上传;允许后缀:`jpg`、`jpeg`、`png`(若产品要求支持 `webp` 等可追加);单文件 ≤ **10 MB** |
104 104
 
105 105
 **必填字段汇总:** 标准名称、标准类型、标准内容。
@@ -216,3 +216,4 @@
216 216
 - **标准简介**、**封面** 与养殖标准对齐为 **选填**;简介若有内容仍受 50 字上限约束。  
217 217
 - **标准名称** 长度为 **1~20** 字符(与同目录草稿及《养殖标准管理功能需求》一致)。  
218 218
 - **不**在本文展开技术栈、库表与接口设计;草稿第 11 条错误结构归入 **§6** 作为呈现约定;草稿第 12 条技术栈删除(由技术方案或项目统一说明)。
219
+- **标准内容**正文附件白名单调整为:`pdf`、`md`、`doc`、`docx`、`xls`、`xlsx`、`pptx`(不再支持旧版 `ppt`);与 `EpidemicTreatmentStandardRules` 及通用上传白名单(含 `md`)一致;**前端上传校验数组本次不调整**,以服务端校验为准。

+ 2 - 1
doc/养殖标准体系/疫病诊疗标准/疫病诊疗标准管理技术方案.md

@@ -119,7 +119,7 @@ CREATE TABLE `biz_epidemic_treatment_standard` (
119 119
 | 3.8 | 发布 | POST | `/epidemicTreatment/standard/publish/{id}` | `epidemicTreatment:standard:publish` | 前置 `publish_status=0` 且 `kb_sync_status=1`;按需调知识库「发布可见」;本地 `publish_status=1`,`publish_time=now()` |
120 120
 | 3.9 | 下架 | POST | `/epidemicTreatment/standard/offline/{id}` | `epidemicTreatment:standard:offline` | 前置 `publish_status=1`;调知识库「对外下架」(非移出);本地 `publish_status=0`,`kb_sync_status=1`,保留 `kb_doc_id`,`offline_time=now()` |
121 121
 
122
-**校验(摘要)**:名称长度 **1~20**;`standard_type` 非空且为资讯类别有效编码(**§2.2**);简介 ≤50 字;正文后缀与白名单、≤30MB;封面后缀与白名单、≤10MB;服务端对 MIME/后缀二次校验
122
+**校验(摘要)**:名称长度 **1~20**;`standard_type` 非空且为资讯类别有效编码(**§2.2**);简介 ≤50 字;正文后缀白名单 **`pdf`/`md`/`doc`/`docx`/`xls`/`xlsx`/`pptx`** 与 ≤30MB;封面后缀 **`jpg`/`jpeg`/`png`** 与 ≤10MB;服务端对 MIME/后缀二次校验(`EpidemicTreatmentStandardRules.isContentExtensionAllowed`)
123 123
 
124 124
 ---
125 125
 
@@ -147,3 +147,4 @@ CREATE TABLE `biz_epidemic_treatment_standard` (
147 147
 | — | 初稿:对齐功能需求;标准名称 **1~20**;`standard_type` 当前为 `1` |
148 148
 | 2026-05-20 | `standard_type` 改为 `varchar(32)` 资讯类别编码;迁移脚本 `biz_epidemic_treatment_standard_alter_standard_type.sql` |
149 149
 | 2026-05-20 | 资讯类别接口响应字段统一为 `code`、`name`(`/category/informationCategory/children`、`/tree`) |
150
+| 2026-05-20 | 正文附件白名单:`pdf/md/doc/docx/xls/xlsx/pptx`(不含 `ppt`);`md` 经 `/common/upload` 全局白名单放行 |

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 3 - 2
doc/养殖标准体系/疫病诊疗标准/疫病诊疗标准管理测试用例.md