Commit graph

9 commits

Author SHA1 Message Date
Peter Goodhall
45528ee293 Add new gridsquares by band to monthly report
Introduces per-band breakdown of new gridsquares in the monthly report, including model, controller, and view changes. The report now displays new gridsquares grouped by band, as well as improved details for new DXCCs and satellite activity breakdowns.
2025-11-14 17:49:25 +00:00
Peter Goodhall
4e657094f8 Separate SAT/EME DXCC reporting from band-based stats
Updated Monthlyreport_model to distinguish Satellite and EME DXCC entities from terrestrial bands, grouping them separately and including callsign/mode details. Modified report view to filter and display terrestrial, satellite, and EME DXCCs in distinct sections with improved formatting and additional QSO info.
2025-11-14 17:40:27 +00:00
Peter Goodhall
1ee55d3739 Add mode and satellite info to monthly report
Enhances the monthly report to display QSO mode and satellite name for new DXCCs and grids. Adds a satellite breakdown table showing QSOs per satellite and their percentage of total satellite QSOs. Improves data structure in the model to support these features and updates the view for clearer presentation.
2025-11-14 17:33:08 +00:00
Peter Goodhall
f7e03cc52b Optimize grid 'new' checks with historical data caching
Replaced repeated database queries for grid 'new' checks with pre-built in-memory caches, significantly improving performance by reducing hundreds of queries to a few. Added build_historical_caches() to load all relevant historical grid data at once and refactored is_grid_new, is_grid_new_for_prop, and is_grid_new_for_hf to use these caches for instant lookups.
2025-11-14 17:13:11 +00:00
Peter Goodhall
36ae819a22 Show callsign for new DXCC and grid entries in report
Adds callsign information to new DXCC and grid entries in the monthly report, both in the backend data and frontend display. Also updates JSON export to include a filename for downloads. This provides more detailed context for each new entity or grid worked during the month.
2025-11-14 17:11:18 +00:00
Peter Goodhall
4449a91634 Improve grid newness checks for VUCC and gridsquare
Refactored is_grid_new, is_grid_new_for_prop, and is_grid_new_for_hf to more accurately check for new grids by matching the first 4 characters of COL_GRIDSQUARE and parsing COL_VUCC_GRIDS. This ensures grids are not considered new if present in either field, improving report accuracy.
2025-11-14 16:54:00 +00:00
Peter Goodhall
ad6dd809bb Normalize gridsquare processing to 4 characters
Updated gridsquare and VUCC grid handling to consistently use only the first 4 characters in all relevant methods. Also modified country selection to use MAX(COL_COUNTRY) and group by COL_DXCC for improved aggregation.
2025-11-14 16:46:58 +00:00
Peter Goodhall
03390ed2e8 Optimize DXCC entity queries in monthly report model
Replaced use of distinct() with MAX(COL_COUNTRY) in select statements to group DXCC entities more efficiently. This change improves query performance and ensures correct aggregation of country names in monthly report generation.
2025-11-14 16:41:55 +00:00
Peter Goodhall
66e2376ac4 Add monthly report feature for amateur radio activity
Introduces a new Monthlyreport controller, model, and views to generate comprehensive monthly activity reports for amateur radio logbooks. The feature includes summary statistics, new DXCC entities and gridsquares, breakdowns by mode, band, and propagation, and export options in JSON and text formats for AI/blog post generation. Also adds a navigation link to the header for easy access.
2025-11-14 16:39:56 +00:00