feat: initial commit - oncology literature search platform
OncoLit: a multi-tenant oncology literature search, feed, and collaboration platform. Built with FastAPI + Vue 3 + PostgreSQL. Includes PubMed pipeline, drug approvals, AI summaries, and systematic review tools.
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
export const STUDY_TYPE_MAP: Record<string, { label: string; type: 'success' | 'info' | 'warning' | 'default' }> = {
|
||||
'Randomized Controlled Trial': { label: 'RCT', type: 'success' },
|
||||
'Clinical Trial, Phase III': { label: '3期RCT', type: 'success' },
|
||||
'Clinical Trial, Phase II': { label: '2期研究', type: 'info' },
|
||||
'Clinical Trial, Phase I': { label: '1期研究', type: 'default' },
|
||||
'Meta-Analysis': { label: 'Meta分析', type: 'info' },
|
||||
'Systematic Review': { label: '系统评价', type: 'info' },
|
||||
'Review': { label: '综述', type: 'default' },
|
||||
'Practice Guideline': { label: '指南', type: 'warning' },
|
||||
'Guideline': { label: '指南', type: 'warning' },
|
||||
'Observational Study': { label: '观察性研究', type: 'info' },
|
||||
'Multicenter Study': { label: '多中心', type: 'info' },
|
||||
'Comparative Study': { label: '对比研究', type: 'default' },
|
||||
'Editorial': { label: '社论', type: 'warning' },
|
||||
'Case Reports': { label: '病例报告', type: 'default' },
|
||||
'Consensus Development Conference': { label: '共识', type: 'warning' },
|
||||
}
|
||||
|
||||
export function computeStudyTypes(pubTypes: string[]): { label: string; type: 'success' | 'info' | 'warning' | 'default' }[] {
|
||||
if (!pubTypes?.length) return []
|
||||
return pubTypes
|
||||
.filter((t: string) => t !== 'Journal Article')
|
||||
.map((t: string) => STUDY_TYPE_MAP[t])
|
||||
.filter(Boolean) as { label: string; type: 'success' | 'info' | 'warning' | 'default' }[]
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
export const tagColorMap: Record<string, string> = {
|
||||
cancer: '#2080f0',
|
||||
gene: '#18a058',
|
||||
treatment: '#f0a020',
|
||||
study_type: '#d03050',
|
||||
endpoint: '#7c4dff',
|
||||
scenario: '#008080',
|
||||
}
|
||||
|
||||
export function tagColor(cat: string): string {
|
||||
return tagColorMap[cat] || '#999'
|
||||
}
|
||||
Reference in New Issue
Block a user