Commit Graph

295 Commits

Author SHA1 Message Date
Yinyin Liu 50bc85ff2a unified daily report data from S3 and then db and fallback to xlsx and the container size is consistent among 4 tubs 2026-03-12 14:39:24 +01:00
Yinyin Liu 69148410f2 roll out the previous commit to other products 2026-03-12 11:03:59 +01:00
Yinyin Liu cb61c2bd42 added connect process for Overview Page of Sodistorehome thus they only show available historical S3 data in case of offline 2026-03-12 10:48:42 +01:00
Yinyin Liu b4a296fd8a added Last Week option in Overview for Sinexcel and corrected Unit of Loads and commented Last Week for Growatt 2026-03-11 14:17:40 +01:00
Yinyin Liu 591e273bc7 Fixed edit mode in the conflict of RabbitMQ(status message updates all entries) and WebSocket 2026-03-11 12:22:19 +01:00
Yinyin Liu 27b84a0d46 improved balance of responsiveness of configurtaion page between UI and local changes 2026-03-11 10:54:31 +01:00
Yinyin Liu ac034b9983 fixed monthly and yearly report overlap issue of PV and Battery performance 2026-03-10 12:50:36 +01:00
Yinyin Liu 6cf14e3483 daily tab design with hourly data and last week quick entry with self-efficiency on top 2026-03-10 12:32:01 +01:00
Yinyin Liu 0ac22ecbe9 fixed last week daily comsumption calcualtion error 2026-03-10 10:51:56 +01:00
Yinyin Liu f7ee347fc5 cahched weekly report 2026-03-10 10:50:17 +01:00
Yinyin Liu 7f972d13c3 fixed remember me token issue 2026-03-10 08:50:46 +01:00
Yinyin Liu 8cd602c5cd added weather API to generate predition for weekly report 2026-03-09 16:24:29 +01:00
Yinyin Liu 57ee8be520 added Guide Tour button on Monitor to help the user navigate different tabs 2026-03-09 14:51:04 +01:00
Yinyin Liu 98abd68366 Added network provider in Information tab 2026-03-09 13:43:11 +01:00
Yinyin Liu c102ab3335 updated multi-inverter sinexcel data path 2026-03-09 12:27:02 +01:00
Yinyin Liu 401d82ea7a speed up the load of Live View and Battery View in Sodistore Home 2026-03-09 11:51:35 +01:00
Yinyin Liu 2e52b9ee15 translated hard-code English words to match selected language system, e.g., german, french and italian 2026-03-09 11:23:09 +01:00
Yinyin Liu 66803a2b34 unified Sinexcel and Growatt's operating priority 2026-03-09 10:57:12 +01:00
Yinyin Liu 37380e581f remove AI-powered Alarm Diagnosis Test demo 2026-03-09 10:24:41 +01:00
Yinyin Liu 5359ebba70 remove Battery Temperature in Overview and Detailed Battery View 2026-03-09 10:23:15 +01:00
Yinyin Liu f82190afc1 improved delete installation logic with S3 bucket purge and delete and reminder for manual check 2026-03-04 12:46:18 +01:00
Yinyin Liu 584abe5b53 adapted sodistorehome frontend offline and config response time from 5 to 10s 2026-03-04 11:23:07 +01:00
Yinyin Liu 7aacddd761 Added SodistoreGrid as an empty templated and built S3 bucket creation pipeline 2026-03-04 10:59:08 +01:00
Yinyin Liu 7df4842980 fixed hard-code English in report system 2026-03-04 09:56:58 +01:00
Yinyin Liu 25b961dc93 fixed folder name and SodistoreMax name 2026-03-04 09:37:01 +01:00
Yinyin Liu 1761914f24 restructured data pipeline for report system and updated the way to create monthly and yearly report 2026-03-02 12:49:46 +01:00
Yinyin Liu 78b9c2dc72 generate monthly and yearly report based on xlsx files 2026-02-27 11:48:05 +01:00
Yinyin Liu 7476c939c3 fixed issue failed to revoke grant access of the user 2026-02-27 09:04:54 +01:00
Yinyin Liu 075624717d grant ready-only Information, Battery , PV, Log and Report to Partner role in Sodistore Home and Report to Customer role 2026-02-26 14:52:29 +01:00
Yinyin Liu 80639e9169 feat: add move installation/folder UI with admin-only access control
- Add MoveModal component with folder dropdown and circular-reference protection
- Add move icon button to each tree row (admin only)
- Add moveInstallation and moveFolder functions to InstallationsContext
- Restrict CreateFolder, MoveFolder, MoveInstallation to admin only (UserType==2) in backend

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 13:00:10 +01:00
Yinyin Liu 36848b97c5 improved weekly performance report quality based on inesco team meeting feedback on 24.02 2026-02-24 15:52:28 +01:00
Yinyin Liu 3bffe70a75 translated all Sinexcel and Growatt Alarm now it also shows in the frontend of UI 2026-02-23 17:59:03 +01:00
Yinyin Liu 25280afb8f add behavioral pattern detection using AI to enrich weekly performance report's insight to customers 2026-02-23 07:40:22 +01:00
Yinyin Liu 4d0d446686 add alarm AI diagnosis demo panel 2026-02-18 16:55:03 +01:00
Yinyin Liu 8e50220242 added language support for monitor AI and non-AI content and email delivery 2026-02-18 12:12:58 +01:00
Yinyin Liu 77f6e0de6c AI-P1: Weekly Performance Report 1.0 2026-02-18 07:36:00 +01:00
Yinyin Liu c076d55407 AI diagnosis UX improvements: status-aware, time-filtered, simpler explanations
- Only show AI diagnosis when installation status is red/orange (not green/offline)
- Filter alarms to last 24 hours to avoid showing outdated issues
- Show alarm name first with "Last seen" timestamp instead of "AI Diagnosis" label
- Update Mistral prompt for shorter, non-technical bullet-point explanations
- Fix Mistral JSON parsing when response wrapped in markdown code fences
- Add TestDiagnoseError endpoint for testing full AI flow without auth

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 12:16:35 +01:00
Yinyin Liu 9a723c0a6f Merge branch 'main' into integrated_AI 2026-02-16 15:18:54 +01:00
Yinyin Liu ba20f35735 added Installation SN in SodistoreHome list page on monitor 2026-02-16 15:09:50 +01:00
Yinyin Liu 02d2ef054b fix Mode reading on OverView Page from Inverter reading 2026-02-12 11:39:39 +01:00
Yinyin Liu 6460328eb0 Safe mode for AI diagnostics, align alarm keys with device enums, and multi-diagnosis frontend
- Remove API key gate so knowledge base works without Mistral key
- Return 204 No Content instead of 500 when no diagnosis available
- Rewrite AlarmKnowledgeBase keys to match Sinexcel property names and Growatt enum names
- Fix SQLite OrderBy crash in DiagnosticService
- Frontend: show latest 3 unique alarms with independent expand/collapse and handle 204

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:32:49 +01:00
Yinyin Liu 2da2ded84c Merge branch 'main' into integrated_AI 2026-02-12 07:45:22 +01:00
Yinyin Liu ed1efbddeb added Main Stats on Battery View page for SodistoreHome 2026-02-11 14:28:11 +01:00
Yinyin Liu 1b6d5a5916 added Overview Page without last week button for SodistoreHome 2026-02-11 13:30:34 +01:00
Yinyin Liu 2895b11efc made Battery SN automatically filled by Scanner and keep the memory of it when the Battery Number changes 2026-02-10 14:32:46 +01:00
Yinyin Liu 988b714d57 improved Configurtaion page responsiveness in frontend 2026-02-06 15:02:56 +01:00
Yinyin Liu e7f8aacc34 Integrate AI on Alarm 2026-02-06 12:57:12 +01:00
Yinyin Liu 617ab2f782 fixed the bug of Sodistore Home Product not show on side bar and added related backend logs and more accurate frontend error messages 2026-02-03 13:52:20 +01:00
Yinyin Liu d73a85c38d enabled Control Permission for Sinexcel on monitor in frontend 2026-02-03 13:29:18 +01:00
Yinyin Liu 70dfaaf027 removed unnecessary information fields when creating a new sodistorehome product 2026-02-03 12:40:06 +01:00