feat(asl): Week 2 Day 2 - Excel import with template download and intelligent dedup

Features:
- feat: Excel template generation and download (with examples)
- feat: Excel file parsing in memory (cloud-native, no disk write)
- feat: Field validation (title + abstract required)
- feat: Smart deduplication (DOI priority + Title fallback)
- feat: Literature preview table with statistics
- feat: Complete submission flow (create project + import literatures)

Components:
- feat: Create excelUtils.ts with full Excel processing toolkit
- feat: Enhance TitleScreeningSettings page with upload/preview/submit
- feat: Update API interface signatures and export unified aslApi object

Dependencies:
- chore: Add xlsx library for Excel file processing

Ref: Week 2 Frontend Development - Day 2
Scope: ASL Module MVP - Title Abstract Screening
Cloud-Native: Memory parsing, no file persistence
This commit is contained in:
2025-11-19 10:24:47 +08:00
parent 3634933ece
commit 2e8699c217
178 changed files with 1937 additions and 108 deletions

View File

@@ -20,3 +20,4 @@ if (data.length > 0) {
}

View File

@@ -57,3 +57,4 @@ createTestUser();

View File

@@ -191,3 +191,4 @@ testAPI();

View File

@@ -131,3 +131,4 @@ if (passed === testCases.length) {
console.log('='.repeat(60) + '\n');

View File

@@ -375,3 +375,4 @@ main().catch(console.error);

View File

@@ -203,3 +203,4 @@ async function runTest() {
runTest().catch(console.error);

View File

@@ -97,3 +97,4 @@ async function main() {
main().catch(console.error);