Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
problem_rectification
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
David Yang
problem_rectification
Commits
f6c83470
Commit
f6c83470
authored
Oct 08, 2026
by
drigle
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: use application display name for material source
parent
bfc58622
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
7 additions
and
7 deletions
+7
-7
xinyuan-cross-app-feature-contract.md
docs/xinyuan-cross-app-feature-contract.md
+1
-1
manifest.json
public/manifest.json
+1
-1
problem-rectification.business-flow.md
...blem_rectification/problem-rectification.business-flow.md
+1
-1
problemRectificationMaterialService.js
...blem_rectification/problemRectificationMaterialService.js
+2
-2
record-api.md
src/services/record-api.md
+2
-2
No files found.
docs/xinyuan-cross-app-feature-contract.md
View file @
f6c83470
...
@@ -74,7 +74,7 @@
...
@@ -74,7 +74,7 @@
-
选择已有材料只把
`{name,type,size,url}`
文件快照写入业务草稿,不保存
`am_material`
ID,不重新上传、不创建材料。
-
选择已有材料只把
`{name,type,size,url}`
文件快照写入业务草稿,不保存
`am_material`
ID,不重新上传、不创建材料。
-
单值字段替换原值;多值字段追加并按 URL 去重,支持逐项删除。
-
单值字段替换原值;多值字段追加并按 URL 去重,支持逐项删除。
-
本地文件选择后立即逐文件调用
`/upload`
,规范化为
`{name,type,size,url}`
并保留在当前详情草稿;上传期间禁止保存和修改附件。成功项保留,失败项给出文件级汇总并可重试。
-
本地文件选择后立即逐文件调用
`/upload`
,规范化为
`{name,type,size,url}`
并保留在当前详情草稿;上传期间禁止保存和修改附件。成功项保留,失败项给出文件级汇总并可重试。
-
只有用户点击详情“保存”时,才为仍在草稿中的本地文件逐个创建
`am_material`
。
`
source_app`
必须使用目标应用真实稳定标识,
`uploader`
使用当前用户 ID,
`uploaded_at`
使用 ISO 时间;禁止复制
`issue_rectification`
。
-
只有用户点击详情“保存”时,才为仍在草稿中的本地文件逐个创建
`am_material`
。
`
metadata.source_app`
必须读取目标项目统一中文名称配置(问题整改为
`APPLICATION_DISPLAY_NAME = '问题整改'`
),
`uploader`
使用当前用户 ID,
`uploaded_at`
使用 ISO 时间
。
-
所有待建档材料成功后才更新业务记录。部分建档成功或材料成功而业务更新失败时,当前编辑会话必须记住已建档项;再次保存只处理未建档项,不能产生重复材料。
-
所有待建档材料成功后才更新业务记录。部分建档成功或材料成功而业务更新失败时,当前编辑会话必须记住已建档项;再次保存只处理未建档项,不能产生重复材料。
-
取消编辑不创建材料主档;删除或替换业务附件不删除材料中心主档或底层文件,材料后续变化也不反向修改历史快照。
-
取消编辑不创建材料主档;删除或替换业务附件不删除材料中心主档或底层文件,材料后续变化也不反向修改历史快照。
-
业务记录仍按目标字段既有协议保存单值对象或对象数组,不得改成材料 ID、引用字段或新数据结构。
-
业务记录仍按目标字段既有协议保存单值对象或对象数组,不得改成材料 ID、引用字段或新数据结构。
...
...
public/manifest.json
View file @
f6c83470
{
{
"name"
:
"problem_rectification_new"
,
"name"
:
"problem_rectification_new"
,
"version"
:
"1.0.
3
"
,
"version"
:
"1.0.
5
"
,
"build"
:
"abc"
,
"build"
:
"abc"
,
"description"
:
"问题整改"
,
"description"
:
"问题整改"
,
"date"
:
"2025-07-14 19:27:20"
,
"date"
:
"2025-07-14 19:27:20"
,
...
...
src/pages/problem_rectification/problem-rectification.business-flow.md
View file @
f6c83470
...
@@ -869,7 +869,7 @@ Grid 视图配置示例(列举的是配置片段,修改时应保留完整原
...
@@ -869,7 +869,7 @@ Grid 视图配置示例(列举的是配置片段,修改时应保留完整原
1.
“材料中心”首次读取当前用户可访问的最近 20 条
`am_material`
,支持按材料标题或文件名远程搜索;选中后仅把
`metadata.file_asset`
快照写入详情草稿。控件运行时读取字段
`multiple`
:单值选择会替换原附件,多值选择会追加并按文件地址去重,附件可逐项删除。
1.
“材料中心”首次读取当前用户可访问的最近 20 条
`am_material`
,支持按材料标题或文件名远程搜索;选中后仅把
`metadata.file_asset`
快照写入详情草稿。控件运行时读取字段
`multiple`
:单值选择会替换原附件,多值选择会追加并按文件地址去重,附件可逐项删除。
2.
“本地上传”选择文件后立即调用
`/upload`
,上传期间禁止保存及修改当前附件;单值只接收一个文件,多值可一次选择或拖入多个文件。批量上传成功项追加到详情草稿,失败项显示文件级汇总错误并允许重新选择。
2.
“本地上传”选择文件后立即调用
`/upload`
,上传期间禁止保存及修改当前附件;单值只接收一个文件,多值可一次选择或拖入多个文件。批量上传成功项追加到详情草稿,失败项显示文件级汇总错误并允许重新选择。
3.
用户点击详情“保存”时,为每个本次新增且仍保留在草稿中的本地文件分别创建
`am_material`
,
写入
`source_app = issue_rectification`
、
当前用户
`_id`
和 ISO 上传时间;所有待建档项成功后,再按单值对象或多值对象数组更新
`problem_rectification.metadata.rectification_proof_materials`
。
3.
用户点击详情“保存”时,为每个本次新增且仍保留在草稿中的本地文件分别创建
`am_material`
,
`metadata.source_app`
读取
`src/config/application.js`
的
`APPLICATION_DISPLAY_NAME`
,当前写入中文名称“问题整改”,同时写入
当前用户
`_id`
和 ISO 上传时间;所有待建档项成功后,再按单值对象或多值对象数组更新
`problem_rectification.metadata.rectification_proof_materials`
。
4.
用户取消编辑时不创建材料主档;选择已有材料不重复上传、不创建新主档。
4.
用户取消编辑时不创建材料主档;选择已有材料不重复上传、不创建新主档。
5.
任一材料创建失败时保留编辑草稿且不更新问题;同一批次已创建成功的材料,以及材料创建成功但问题更新失败的情况,均保留逐项建档标记,再次保存只创建尚未成功的材料并重试问题更新,避免重复材料。
5.
任一材料创建失败时保留编辑草稿且不更新问题;同一批次已创建成功的材料,以及材料创建成功但问题更新失败的情况,均保留逐项建档标记,再次保存只创建尚未成功的材料并重试问题更新,避免重复材料。
6.
清空或替换问题附件不删除材料中心主档或底层文件;已有材料后续修改或软删除不联动历史问题快照。
6.
清空或替换问题附件不删除材料中心主档或底层文件;已有材料后续修改或软删除不联动历史问题快照。
...
...
src/pages/problem_rectification/problemRectificationMaterialService.js
View file @
f6c83470
import
dayjs
from
'dayjs'
;
import
dayjs
from
'dayjs'
;
import
{
APPLICATION_DISPLAY_NAME
}
from
'@/config/application'
;
import
{
createRecord
,
queryRecords
,
uploadFile
}
from
'@/services/DataService'
;
import
{
createRecord
,
queryRecords
,
uploadFile
}
from
'@/services/DataService'
;
export
const
AUDIT_MATERIAL_SUBJECT
=
'am_material'
;
export
const
AUDIT_MATERIAL_SUBJECT
=
'am_material'
;
export
const
ISSUE_RECTIFICATION_SOURCE_APP
=
'issue_rectification'
;
const
MATERIAL_PAGE_SIZE
=
20
;
const
MATERIAL_PAGE_SIZE
=
20
;
...
@@ -145,7 +145,7 @@ export async function createProblemRectificationMaterial({ fileAsset, currentUse
...
@@ -145,7 +145,7 @@ export async function createProblemRectificationMaterial({ fileAsset, currentUse
size
:
Number
(
fileAsset
.
size
||
0
),
size
:
Number
(
fileAsset
.
size
||
0
),
url
:
fileAsset
.
url
,
url
:
fileAsset
.
url
,
},
},
source_app
:
ISSUE_RECTIFICATION_SOURCE_APP
,
source_app
:
APPLICATION_DISPLAY_NAME
,
uploader
:
uploaderId
,
uploader
:
uploaderId
,
uploaded_at
:
dayjs
().
toISOString
(),
uploaded_at
:
dayjs
().
toISOString
(),
},
},
...
...
src/services/record-api.md
View file @
f6c83470
...
@@ -328,7 +328,7 @@ Query:`calculated=true|false`
...
@@ -328,7 +328,7 @@ Query:`calculated=true|false`
### 5.2 本地上传并写入材料中心
### 5.2 本地上传并写入材料中心
1.
选择文件后立即调用
`POST /upload`
,将返回结果规范化为
`{name,type,size,url}`
并保留在详情草稿。单值字段只接收一个文件并替换原值;多值字段允许一次选择或拖入多个文件,每个文件分别上传,成功项追加到草稿,失败项保留错误提示并可重新选择。
1.
选择文件后立即调用
`POST /upload`
,将返回结果规范化为
`{name,type,size,url}`
并保留在详情草稿。单值字段只接收一个文件并替换原值;多值字段允许一次选择或拖入多个文件,每个文件分别上传,成功项追加到草稿,失败项保留错误提示并可重新选择。
2.
用户点击详情“保存”时,为每个本次本地上传且仍保留在草稿中的文件分别调用
`POST /record`
创建材料主档:
2.
用户点击详情“保存”时,为每个本次本地上传且仍保留在草稿中的文件分别调用
`POST /record`
创建材料主档
。
`metadata.source_app`
读取项目统一中文名称配置
`APPLICATION_DISPLAY_NAME`
,当前为“问题整改”
:
```
json
```
json
{
{
...
@@ -343,7 +343,7 @@ Query:`calculated=true|false`
...
@@ -343,7 +343,7 @@ Query:`calculated=true|false`
"size"
:
204800
,
"size"
:
204800
,
"url"
:
"https://example.com/files/proof.pdf"
"url"
:
"https://example.com/files/proof.pdf"
},
},
"source_app"
:
"
issue_rectification
"
,
"source_app"
:
"
问题整改
"
,
"uploader"
:
"69b12a47e92b1de77c94a9f5"
,
"uploader"
:
"69b12a47e92b1de77c94a9f5"
,
"uploaded_at"
:
"2026-08-25T08:30:00.000Z"
"uploaded_at"
:
"2026-08-25T08:30:00.000Z"
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment