patrickrb / patrickrb/nextlog

QSL Management

Open
#5 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
6
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Description

Build UI for QSL status management since database fields exist but lack proper user interface.

Current State

  • QSL status fields exist in contacts table (qsl_sent, qsl_received, qsl_sent_via, qsl_received_via)
  • QSL card image upload functionality implemented
  • No UI for updating QSL status
  • No QSL status indicators in contact lists

Required Features

QSL Status Updates
  • QSL status section in contact edit dialog
  • Dropdown for QSL sent status (Y/N/R)
  • Dropdown for QSL received status (Y/N/R)
  • Date pickers for QSL sent/received dates
  • QSL via options (Bureau, Direct, eQSL, LoTW)
  • Bulk QSL status updates for multiple contacts
QSL Status Display
  • QSL status indicators in main contact list
  • Color-coded badges/icons for QSL status
  • QSL status in contact detail views
  • QSL status in export formats
  • QSL status tooltips with details
QSL Management Dashboard
  • QSL statistics overview
    • Total sent/received counts
    • QSL confirmation percentage
    • Pending QSL count (sent but not received)
    • Never sent QSL count
  • QSL tracking lists
    • QSLs to send list
    • QSLs awaiting reply list
    • Recent QSL confirmations
    • Overdue QSL follow-ups
QSL Card Management
  • QSL card printing list generation
  • Mailing label export
  • QSL card design templates
  • Integration with existing QSL image upload
  • QSL card inventory tracking
QSL Bureau Support
  • Bureau vs direct mail tracking
  • Bureau batch management
  • Address lookup integration
  • Postage cost tracking
Filtering & Search
  • Filter contacts by QSL status
  • Search contacts needing QSL cards
  • Date range filtering for QSL activities
  • QSL via method filtering

Implementation Notes

  • Use existing QSL fields in contacts table
  • Add QSL status components to EditContactDialog
  • Create QSL management dashboard page
  • Implement QSL status indicators throughout UI

Database Changes

  • Add QSL-related indexes for performance
  • Add QSL batch tracking table (optional)
  • Add QSL cost tracking fields (optional)

UI Components Needed

  • QSL status badge component
  • QSL date picker component
  • QSL via selector component
  • QSL statistics widget
  • QSL management table component

Acceptance Criteria

  • Users can update QSL status for any contact
  • QSL status visible throughout the application
  • QSL management dashboard provides overview
  • Bulk QSL operations work efficiently
  • QSL data exports correctly in ADIF format
  • Mobile-friendly QSL status interface

Priority

High - Essential for QSL card management workflow

Dependencies

  • Contact edit dialog (✅ already implemented)
  • QSL image upload (✅ already implemented)
  • ADIF export (✅ already implemented)QSL card tracking and management system

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the existing EditContactDialog, QSL fields in the contacts table, QSL image upload, and ADIF export mentioned in the issue. Define the scope before changing code, then implement the selected status, display, dashboard, bulk-operation, filtering, and export requirements; done means the listed acceptance criteria are met, including mobile support.

Written by the indexing model from the issue text.

Assessment

Tech stack
nextjs, postgresql, typescript
Domain
database, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.