Commit Graph

14 Commits

Author SHA1 Message Date
鄭沛軒 20061a323d feat: 完成慣用語清分離架構與規格文檔統一化
## 主要改進

### 🏗️ 架構優化
- 實現清分離架構:vocabularyAnalysis vs idioms 獨立處理
- 移除所有 isPhrase 邏輯混亂,採用專門的 idioms 陣列
- 修復 JSON 反序列化問題,使用動態解析取代強型別反序列化

### 📚 慣用語功能增強
- 添加完整的 IdiomDto 類別支援新屬性:
  - pronunciation:IPA 發音標記
  - difficultyLevel:CEFR 等級評估
  - frequency:使用頻率分級
  - synonyms:同義表達方式
- 實現 ConvertIdioms() 轉換邏輯
- 更新統計計算基於實際 idioms 數量

### 📋 規格文檔統一化
- 修復後端API規格中的設計矛盾
- 修復前後端串接規格中的術語混亂
- 移除重複的 difficultyLevel 屬性
- 統一使用 includeIdiomDetection 參數
- 清理過時的實際功能規格文檔

### 🧹 代碼清理
- 清除所有 mock/硬編碼數據
- 移除假的翻譯和佔位符文字
- 統一術語使用,徹底消除 phrase/idiom 混用

## 技術影響
-  符合 FR5.1 慣用語獨立展示需求
-  避免數據重複和邏輯矛盾
-  提供完整的慣用語學習數據
-  實現真正的結構化 AI 分析

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 22:01:04 +08:00
鄭沛軒 487b1a17bb fix: 優化 Gemini AI prompt 以符合產品需求規格
- 重新設計 AI prompt 符合 FR2.1, FR3.1, FR5.1 功能需求
- 改進 JSON 結構化輸出以符合 DTO 規格
- 新增完整的詞彙分析、語法檢查、慣用語識別
- 優化錯誤處理和安全過濾機制
- 添加 JSON 解析和回退機制確保穩定性

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 20:33:36 +08:00
鄭沛軒 9d00035fdf feat: 統一片語/俚語為慣用語並移除快取系統
主要變更:
1. 前端術語統一
   - PhrasePopup → IdiomPopup
   - phraseCount → idiomCount
   - isPhrase → isIdiom
   - showPhrasesInline → showIdiomsInline
   - UI文字統一為「慣用語」

2. 後端 DTO 統一
   - IncludePhraseDetection → IncludeIdiomDetection
   - IsPhrase → IsIdiom
   - Phrases → Idioms

3. 移除快取系統
   - 移除 AIController 中的快取邏輯
   - 移除快取服務依賴注入
   - 每次都直接調用 Gemini API

4. 重建 GeminiService
   - 簡化 API 調用邏輯
   - 移除所有 mock 數據
   - 直接使用 AI 回應

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 18:17:42 +08:00
鄭沛軒 03c1756d71 feat: 完成AI生成功能的完整前後端整合
後端實現:
- 創建AIController和GeminiService集成Google Gemini API
- 實現完整的句子分析API端點
- 添加數據模型和錯誤處理機制
- 集成現有的緩存和使用追蹤服務
- 使用User Secrets安全存儲Gemini API Key

前端整合:
- 更新為使用真實API調用替代假資料
- 修復所有API服務指向正確port (5008)
- 改善錯誤處理和用戶體驗
- 確保前後端數據格式完全匹配

功能特色:
- 智能語法檢查和修正建議
- 基於CEFR等級的個人化詞彙標記
- 慣用語識別和展示
- 完整的詞彙詳情彈窗
- 一鍵保存到詞卡功能

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 03:04:29 +08:00
鄭沛軒 3785897a94 refactor: 優化前端代碼結構並完成AI生成功能後端API規格
- 清理未使用的變數和代碼(mode, isPremium等)
- 改善錯誤處理機制,移除侵入式alert彈窗
- 優化詞彙標記算法性能,添加useCallback記憶化
- 改進彈窗定位算法,防止超出螢幕邊界
- 添加學習提示系統,幫助用戶理解詞彙標記
- 統一代碼風格和TypeScript類型定義
- 撰寫完整的AI生成功能後端API規格文檔

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 01:40:27 +08:00
鄭沛軒 500d70839b refactor: 大幅清理AIController和GeminiService未使用的API
 保留的核心功能:
- analyze-sentence API (前端主要功能)

 刪除的未使用API:
- generate API (AI生成詞卡)
- generate/{taskId}/save API (保存生成詞卡)
- validate-card API (詞卡驗證)
- query-word API (單字查詢)
- cache-stats API (快取統計)
- cache-cleanup API (快取清理)
- usage-stats API (使用統計)

🧹 清理GeminiService中對應的未使用方法和DTO類別
📊 代碼量減少約336行,只保留核心句子分析功能

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 22:32:47 +08:00
鄭沛軒 3b61cf8ce4 fix: 修正AI例句生成和前端詞彙顯示問題
🔧 後端修正:
- 修正Gemini AI prompt,要求生成實用例句和翻譯
- 擴展WordAnalysisResult添加Example和ExampleTranslation屬性
- 修正後處理邏輯,優先使用AI例句,沒有時使用優質例句庫
- 添加GetQualityExampleSentence和GetQualityExampleTranslation函數

🎯 例句品質提升:
- bonus: "Employees received a year-end bonus for excellent performance."
- company: "The tech company is hiring new software engineers."
- 移除垃圾模板例句,提供真實場景和實際用法

🔍 前端Debug增強:
- 添加詳細的API接收調試資訊
- 添加詞彙點擊路由調試
- 新增例句區塊顯示(藍色區塊)
- 強化getWordProperty函數的屬性查找

📊 診斷發現:
- API確實生成了優質例句
- 前端調用了錯誤的query-word API覆蓋了正確資料
- 需要修正前端詞彙查找邏輯

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 14:33:29 +08:00
鄭沛軒 f90286ad88 ux: 優化用戶友善文案,將「高價值詞彙」改為「重點學習詞彙」
文案優化:
- 程度指示器:「💎 高價值範圍」→「📈 重點學習範圍」
- 設定頁面:「高價值詞彙範圍」→「重點學習範圍」
- AI Prompt:「標記為高價值」→「標記為重點學習」
- 詞彙標記:「高價值詞彙」→「重點學習詞彙」

視覺優化:
- 圖標升級: (價值感) → 🎯 (目標感)
- 強化學習導向的表達方式

技術修復:
- 新增DbContext個人化欄位映射,解決資料庫欄位問題
- 確保C#模型與SQLite表結構正確對應

用戶體驗提升:
- 從商業化的「價值」概念轉為教育性的「學習」概念
- 更直觀的個人化學習目標表達
- 減少用戶理解負擔,提升整體友善度

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 00:26:10 +08:00
鄭沛軒 0bf0541c87 feat: 實現個人化高價值詞彙判定系統
主要功能:
- 實現基於用戶英語程度的個人化詞彙標記
- A1用戶標記A2-B1為高價值,C1用戶只標記C2為高價值
- 完整的前後端個人化學習體驗

後端架構:
- 擴充User實體新增英語程度相關欄位
- 建立CEFRLevelService等級比較服務
- 更新GeminiService支援個人化AI Prompt
- API支援userLevel參數,回應包含個人化資訊

前端體驗:
- 新增完整的程度設定頁面(/settings)
- 導航選單整合設定連結
- generate頁面顯示個人化程度指示器
- 自動傳遞用戶程度到API進行個人化分析

技術實現:
- 動態AI Prompt根據用戶程度調整判定標準
- localStorage保存用戶程度設定
- 向下相容設計,未設定時預設A2程度
- 完整的錯誤處理和回退機制

用戶價值:
- 從固定B1以上改為個人化程度+1~2級
- 真正適合用戶挑戰程度的詞彙標記
- 提升學習效率,避免過難或過簡單的干擾

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 22:37:38 +08:00
鄭沛軒 4f16cbfa08 refactor: 移除所有快取機制並優化 AI 服務架構
主要變更:
- 完全移除句子分析快取,每次都進行真實 AI 分析
- 移除詞彙查詢的假資料實現,改用真實 Gemini AI
- 在 GeminiService 中新增專門的 AnalyzeWordAsync 方法
- 修正架構設計,將 AI 邏輯從 Controller 移到 Service 層
- 移除前端快取狀態顯示,簡化用戶介面

技術改善:
- 遵循分層架構原則,Service 層處理 AI 邏輯
- 統一錯誤處理和回退機制
- 新增完整的詞彙分析 JSON 解析邏輯
- 確保每次查詢都獲得最新的 AI 分析結果

附加:
- 新增查詢歷史系統設計規格文檔
- 為未來實現查詢歷史功能做準備

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 20:47:48 +08:00
鄭沛軒 255adc62c9 feat: 簡化句子分析功能並實現全詞彙可點擊
主要變更:
- 移除句子分析中的冗長解釋,只保留翻譯
- 修改 AI Prompt 簡化回應格式
- 實現所有單字都可點擊的互動功能
- 無預存資料的詞彙支援即時 AI 查詢
- 移除付費限制,提供完全免費的詞彙查詢體驗
- 新增詞彙快取機制技術規格文檔

技術改善:
- 優化 ClickableTextV2 組件支援全詞彙點擊
- 新增動態詞彙資料更新機制
- 改善視覺提示,區分有/無預存資料的詞彙
- 整理項目文檔結構,移除過時檔案

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 19:41:48 +08:00
鄭沛軒 95097cf3f1 feat: 實現真正的AI驅動互動式單字查詢系統
## 主要功能
- 整合真正的Gemini AI進行句子分析和翻譯
- 實現智能語法錯誤檢查和修正建議
- 完整的高價值詞彙標記系統(片語/單字/普通)
- 24小時快取機制提升性能和降低成本
- 互動式單字查詢:高價值免費,低價值收費
- 使用次數限制:免費用戶5次/3小時

## 技術實現
- 新增真正的Gemini AI句子分析服務
- 實現快取服務和背景清理任務
- 完整的前後端API整合
- 語法修正面板和互動文字組件
- 使用統計追蹤和限制機制

## 系統架構
- 後端:真正的AI分析 + 快取 + 統計
- 前端:互動式UI + 狀態管理 + 錯誤處理
- 資料庫:快取表 + 使用統計表

## 成本優化
- 預分析高價值詞彙,後續免費查詢
- 24小時快取避免重複AI調用
- 智能收費機制:高價值免費,低價值按需收費
- 預估API成本降低80-95%

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 02:09:56 +08:00
鄭沛軒 448883ff97 feat: 實現 AI 服務整合和前後端連接
- 整合 Google Gemini API 服務
- 添加測試端點支援無認證調用
- 實現前端 API 調用和資料格式轉換
- 完善錯誤處理和模擬資料回退
- 添加詞卡保存到資料庫功能
- 配置 User Secrets 安全管理 API 金鑰
- 優化 AI 服務條件判斷邏輯

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 16:08:37 +08:00
鄭沛軒 c94cf75838 feat: DramaLing 完整版本 - 韓劇單字學習應用
🚀 主要功能:
- 前後端分離架構(Next.js + .NET Core)
- 完整用戶認證系統(註冊、登入、JWT)
- 單字卡學習功能
- AI 輔助生成單字卡
- 多種學習模式(翻卡、選擇題、拼寫)
- 學習進度追蹤
- 響應式設計

🏗️ 技術棧:
- Frontend: Next.js 15, TypeScript, Tailwind CSS
- Backend: .NET Core 8, Entity Framework, SQLite
- 認證: JWT Bearer Token
- AI: Google Gemini API
- 資料庫: SQLite(測試)

🌟 特色:
- 完整的 CRUD 操作
- 安全的環境變數配置
- 乾淨的代碼結構
- 完善的錯誤處理
- RESTful API 設計

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-16 23:06:47 +08:00