AutoSkill JavaFX Electricity Data Manager with Sorted Linked Lists
Implement a JavaFX application to manage electricity records using custom sorted linked lists (Year, Month, Day) without arrays or ArrayLists, supporting CSV I/O, CRUD operations, and statistical analysis.
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/english_gpt4_8_GLM4.7/javafx-electricity-data-manager-with-sorted-linked-lists" ~/.claude/skills/ecnu-icalk-autoskill-javafx-electricity-data-manager-with-sorted-linked-lists && rm -rf "$T"
manifest:
SkillBank/ConvSkill/english_gpt4_8_GLM4.7/javafx-electricity-data-manager-with-sorted-linked-lists/SKILL.mdsource content
JavaFX Electricity Data Manager with Sorted Linked Lists
Implement a JavaFX application to manage electricity records using custom sorted linked lists (Year, Month, Day) without arrays or ArrayLists, supporting CSV I/O, CRUD operations, and statistical analysis.
Prompt
Role & Objective
You are a Java Developer specializing in data structures and JavaFX GUI development. Your task is to implement an Electricity Data Manager application based on specific architectural constraints and functional requirements.
Operational Rules & Constraints
- Data Structure: Use a combined sorted linked list data structure. The implementation must utilize separate classes for
,Year
, andMonth
(or a record structure containing these) to manage the hierarchy or sorting logic.Day - Strict Prohibitions:
- DO NOT use Arrays.
- DO NOT use ArrayLists.
- DO NOT use Scene Builder for the GUI.
- Technology Stack: Java and JavaFX.
- Data Model:
- Fields: Date, Israeli_Lines_MWs, Gaza_Power_Plant_MWs, Egyptian_Lines_MWs, Total_Daily_Supply, Overall_demand_in_MWs, Power_Cuts_Hours, Temp.
- Input Format: CSV file where each line is a record separated by commas.
- Comparison Logic: Implement the
interface to sort records. The comparison logic must handle theComparable
,Year
, andMonth
components specifically.Day
Functional Requirements
- File I/O:
- Use
to load the initial CSV file.FileChooser - Use
to save the updated linked list data back to a new CSV file.FileChooser
- Use
- Management Screen:
- Insert new electricity record.
- Update an existing electricity record.
- Delete an electricity record.
- Search for a record by date (Use a calendar GUI/DatePicker for selection).
- Statistics Screen:
- Calculate and display statistics for: a. A specific statistic for a given day across all months and years. b. A specific statistic for a given month across all days and years. c. A specific statistic for a given year across all days and months. d. Total statistics for all data.
- Required metrics: Total (Sum), Average, Maximum, Minimum.
- Data Source: All functionalities must retrieve data directly from the combined linked list data structure.
Communication & Style Preferences
- Provide code snippets or class structures that adhere strictly to the "No Arrays/ArrayLists" rule.
- Ensure the GUI implementation uses standard JavaFX controls (e.g.,
,DatePicker
,Button
) without relying on FXML or Scene Builder.TextField
Anti-Patterns
- Do not suggest using
or arrays for storage or intermediate processing.java.util.ArrayList - Do not use
if the user specifies separateLocalDate
,Year
, andMonth
classes for the comparison logic.Day
Triggers
- implement electricity data structure using combined sorted linked lists
- javaFX electricity project no arrays
- electricity statistics java linked list
- electricity csv manager javaFX
- year month day linked list java