文件版本管理-初步优化
This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
-- Optional seed data for document version management module
|
||||
|
||||
INSERT INTO public.studies (
|
||||
id, code, name, status, created_at
|
||||
) VALUES (
|
||||
'dddddddd-1111-2222-3333-444444444444', 'DOC-DEMO', 'Document Demo Study', 'DRAFT', now()
|
||||
)
|
||||
ON CONFLICT (code) DO NOTHING;
|
||||
|
||||
INSERT INTO public.workflow_templates (
|
||||
id, trial_id, name, description, is_active, created_by, created_at, updated_at
|
||||
) VALUES
|
||||
(
|
||||
'11111111-aaaa-bbbb-cccc-111111111211',
|
||||
(SELECT id FROM public.studies WHERE code = 'DOC-DEMO'),
|
||||
'标准审批(PM 单签)',
|
||||
'PM 单节点审批,适用于一般文件',
|
||||
true,
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'11111111-aaaa-bbbb-cccc-111111111212',
|
||||
(SELECT id FROM public.studies WHERE code = 'DOC-DEMO'),
|
||||
'严格审批(CRA→PM→QA)',
|
||||
'三节点审批,适用于关键文件',
|
||||
true,
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
now(),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (id) DO UPDATE
|
||||
SET name = EXCLUDED.name,
|
||||
description = EXCLUDED.description,
|
||||
is_active = EXCLUDED.is_active,
|
||||
trial_id = EXCLUDED.trial_id,
|
||||
created_by = EXCLUDED.created_by,
|
||||
updated_at = EXCLUDED.updated_at;
|
||||
|
||||
INSERT INTO public.workflow_nodes (
|
||||
id, template_id, node_order, role, name, is_required, created_at
|
||||
) VALUES
|
||||
(
|
||||
'22222222-aaaa-bbbb-cccc-222222222311',
|
||||
'11111111-aaaa-bbbb-cccc-111111111211',
|
||||
1,
|
||||
'PM',
|
||||
'项目经理审批',
|
||||
true,
|
||||
now()
|
||||
),
|
||||
(
|
||||
'22222222-aaaa-bbbb-cccc-222222222312',
|
||||
'11111111-aaaa-bbbb-cccc-111111111212',
|
||||
1,
|
||||
'CRA',
|
||||
'CRA 初审',
|
||||
true,
|
||||
now()
|
||||
),
|
||||
(
|
||||
'22222222-aaaa-bbbb-cccc-222222222313',
|
||||
'11111111-aaaa-bbbb-cccc-111111111212',
|
||||
2,
|
||||
'PM',
|
||||
'项目经理复审',
|
||||
true,
|
||||
now()
|
||||
),
|
||||
(
|
||||
'22222222-aaaa-bbbb-cccc-222222222314',
|
||||
'11111111-aaaa-bbbb-cccc-111111111212',
|
||||
3,
|
||||
'QA',
|
||||
'QA 终审',
|
||||
true,
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (id) DO UPDATE
|
||||
SET template_id = EXCLUDED.template_id,
|
||||
node_order = EXCLUDED.node_order,
|
||||
role = EXCLUDED.role,
|
||||
name = EXCLUDED.name,
|
||||
is_required = EXCLUDED.is_required;
|
||||
|
||||
INSERT INTO public.documents (
|
||||
id, trial_id, site_id, doc_no, doc_type, title, scope_type, owner_id, status, created_at, updated_at
|
||||
) VALUES (
|
||||
'eeeeeeee-1111-2222-3333-444444444444',
|
||||
(SELECT id FROM public.studies WHERE code = 'DOC-DEMO'),
|
||||
NULL,
|
||||
'SOP-001',
|
||||
'SOP',
|
||||
'Sample SOP for Versioning',
|
||||
'GLOBAL',
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
'ACTIVE',
|
||||
now(),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (trial_id, doc_no) DO NOTHING;
|
||||
|
||||
INSERT INTO public.documents (
|
||||
id, trial_id, site_id, doc_no, doc_type, title, scope_type, owner_id, status, created_at, updated_at
|
||||
) VALUES (
|
||||
'eeeeeeee-1111-2222-3333-444444444445',
|
||||
(SELECT id FROM public.studies WHERE code = 'DOC-DEMO'),
|
||||
(SELECT id FROM public.sites WHERE study_id = (SELECT id FROM public.studies WHERE code = 'DOC-DEMO') LIMIT 1),
|
||||
'SITE-SOP-001',
|
||||
'SOP',
|
||||
'DOC-DEMO 分中心 SOP',
|
||||
'SITE',
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
'ACTIVE',
|
||||
now(),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (trial_id, doc_no) DO NOTHING;
|
||||
|
||||
INSERT INTO public.document_versions (
|
||||
id, document_id, version_no, status, file_uri, file_hash, file_size, mime_type, change_summary, created_by, created_at
|
||||
) VALUES (
|
||||
'ffffffff-1111-2222-3333-444444444444',
|
||||
(SELECT id FROM public.documents WHERE doc_no = 'SOP-001' AND trial_id = (SELECT id FROM public.studies WHERE code = 'DOC-DEMO')),
|
||||
'V1.0',
|
||||
'DRAFT',
|
||||
'/uploads/docs/SOP-001/V1.0/sample.pdf',
|
||||
'9f2b4c6d8e0f1234567890abcdef1234567890abcdef1234567890abcdef1234',
|
||||
2048,
|
||||
'application/pdf',
|
||||
'初稿',
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (document_id, version_no) DO NOTHING;
|
||||
|
||||
INSERT INTO public.document_versions (
|
||||
id, document_id, version_no, status, file_uri, file_hash, file_size, mime_type, change_summary, created_by, created_at
|
||||
) VALUES (
|
||||
'ffffffff-1111-2222-3333-444444444445',
|
||||
(SELECT id FROM public.documents WHERE doc_no = 'SITE-SOP-001' AND trial_id = (SELECT id FROM public.studies WHERE code = 'DOC-DEMO')),
|
||||
'1.0',
|
||||
'EFFECTIVE',
|
||||
'/code/app/uploads/documents/demo/SITE-SOP-001-v1.pdf',
|
||||
'a3b2c1d0e9f8e7d6c5b4a3f2e1d0c9b8a7f6e5d4c3b2a1f0e9d8c7b6a5f4e3d2',
|
||||
2048,
|
||||
'application/pdf',
|
||||
'分中心 SOP 首版',
|
||||
(SELECT id FROM public.users WHERE email = 'pm@example.com'),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (document_id, version_no) DO NOTHING;
|
||||
Reference in New Issue
Block a user