feat: Implement comprehensive edit functionality and standardize UI components
• Add full edit functionality for groceries with modal support
• Standardize delete confirmations across all components using ConfirmDeleteModal
• Implement complete shopping event edit functionality:
- Create EditShoppingEvent component with full form capabilities
- Add missing backend PUT endpoint for shopping events
- Support editing all event data (shop, date, groceries, amounts, prices, notes)
• Add inline grocery edit functionality in shopping event forms:
- Allow editing grocery items within add/edit forms
- Load selected items back into input fields for modification
• Fix date timezone issues in edit forms to prevent date shifting
• Remove non-functional "View Details" button in favor of working Edit button
• Enhance user experience with consistent edit/delete patterns across the app
Breaking changes: None
Backend: Added PUT /shopping-events/{id} and DELETE /shopping-events/{id} endpoints
Frontend: Complete edit workflow for all entities with improved UX
This commit is contained in:
@@ -12,7 +12,8 @@ shopping_event_groceries = Table(
|
||||
Base.metadata,
|
||||
Column('shopping_event_id', Integer, ForeignKey('shopping_events.id'), primary_key=True),
|
||||
Column('grocery_id', Integer, ForeignKey('groceries.id'), primary_key=True),
|
||||
Column('amount', Float, nullable=False) # Amount of this grocery bought in this event
|
||||
Column('amount', Float, nullable=False), # Amount of this grocery bought in this event
|
||||
Column('price', Float, nullable=False) # Price of this grocery at the time of this shopping event
|
||||
)
|
||||
|
||||
class Grocery(Base):
|
||||
@@ -20,7 +21,6 @@ class Grocery(Base):
|
||||
|
||||
id = Column(Integer, primary_key=True, index=True)
|
||||
name = Column(String, nullable=False, index=True)
|
||||
price = Column(Float, nullable=False)
|
||||
category = Column(String, nullable=False)
|
||||
organic = Column(Boolean, default=False)
|
||||
weight = Column(Float, nullable=True) # in grams or kg
|
||||
|
||||
Reference in New Issue
Block a user