feat(患者签署): 签署自动落款日期并新增精麻同意书演示文书

This commit is contained in:
yelan
2026-09-28 11:08:06 +08:00
parent 28c45dc7b2
commit 3995c027fc
4 changed files with 156 additions and 7 deletions
+13 -3
View File
@@ -7,6 +7,7 @@ import type {
SigningContextResponse,
} from '@/api/types'
import { DEMO_DOCUMENT_HTML, DEMO_PATIENT_FIELD_ID, DEMO_STAFF_ANSWERS } from '@/mock/demo-document'
import { DEMO_NARCOTIC_HTML, DEMO_NARCOTIC_STAFF_ANSWERS } from '@/mock/demo-narcotic'
import type { SignerRelation, SignFlowState } from '@/types/signing'
/**
@@ -296,10 +297,19 @@ async function loadSigningContext(token: string) {
* 「演示模式下好好的、真实模式一片空白」这种最难查的偏差。
*/
function applyDemoContext() {
signingState.documentTitle = 'CT 增强扫描知情同意书'
// `?demo=narcotic` 切到精麻同意书:它是演示文库(clinical-web)里唯一真实存在的模板,
// 字段也最多(代办人 / 身份核验 / 用药信息),最能压出占位符渲染的问题
const useNarcotic =
new URLSearchParams(window.location.search).get('demo') === 'narcotic'
signingState.documentTitle = useNarcotic
? '麻醉药品、精神药品知情同意书'
: 'CT 增强扫描知情同意书'
signingState.templateVersion = 'v1.0.0'
signingState.documentContentHtml = DEMO_DOCUMENT_HTML
signingState.staffAnswers = { ...DEMO_STAFF_ANSWERS }
signingState.documentContentHtml = useNarcotic ? DEMO_NARCOTIC_HTML : DEMO_DOCUMENT_HTML
signingState.staffAnswers = {
...(useNarcotic ? DEMO_NARCOTIC_STAFF_ANSWERS : DEMO_STAFF_ANSWERS),
}
signingState.fields = [
{ id: DEMO_PATIENT_FIELD_ID, label: '患者签名', kind: 'signature', required: true },
]