cb92ca6e26
Fix analytics chart
2026-03-11 08:45:01 -06:00
c3a318c6cc
Fix refund table
2026-03-10 22:11:50 -06:00
bbc28bef47
Prefill refund dialog
2026-03-10 21:59:48 -06:00
d58801e51f
Fix refund loading
2026-03-10 21:50:00 -06:00
7518e15a6b
Fix inventory ids
2026-03-10 21:46:31 -06:00
b4e2d1cd2f
Show chat mode
2026-03-10 20:52:07 -06:00
e17cde6b87
Add desktop chat
2026-03-10 20:04:32 -06:00
bdde1d39dc
Fix desktop mappings
2026-03-10 18:49:59 -06:00
93b587cd9c
Fix .gitignore to exclude user-specific files
...
- Remove tracked .idea/vcs.xml (user-specific VCS settings)
- Use whitelist approach for .idea/ directory (consistent with backend)
- Improve log file patterns (*.log)
- Remove redundant .idea/workspace.xml pattern (covered by wildcard)
2026-03-10 00:03:22 -06:00
1c4f13dc75
Ignore log files
2026-03-09 23:59:41 -06:00
a93846e2d1
Merge pull request #33 from RecentRunner/api-migration
...
Api migration
2026-03-09 16:27:30 -06:00
4a2cdbe9c5
Complete desktop DTO integration and controller fixes
...
**Critical DTO Fixes:**
- ServiceResponse/Request: id → serviceId, price → servicePrice, description → serviceDesc
- SaleItemRequest: productId → prodId, removed unitPrice (backend doesn't require)
- SaleItemResponse: id → saleItemId, added prodId, removed lineTotal (calculated locally)
- TopProduct: added productId, quantitySold Integer → Long, totalRevenue → revenue
- DailySales: date LocalDate → String, totalSales → revenue, added salesCount
**Controller Updates:**
- Updated 17+ controllers and dialog controllers to use renamed DTO fields
- Fixed AnalyticsController to use nested SalesSummary and InventorySummary structures
- Fixed ServiceController/ServiceDialogController to use serviceDuration
- Fixed LoginController CUSTOMER rejection to use lblError instead of missing showError()
- Updated all ProductResponse, SupplierResponse, PetResponse, AdoptionResponse, etc. usages
**Files Changed:**
- 6 DTO classes (service, sale, analytics)
- 17+ controller classes across main and dialog controllers
**Verification:**
- Desktop project compiles successfully with mvn clean compile
- All critical JSON mapping misalignments resolved
- Phase 6, 7, and 8 complete
2026-03-09 11:57:05 -06:00
6f87763a6d
Complete final DTO verification and alignment
...
Changes:
- PetRequest: Fixed all field names to match backend contract
- species → petSpecies
- breed → petBreed
- price → petPrice
- dateOfBirth/gender/color → petAge (backend uses Integer age)
- PetResponse: Fixed all field names to match backend contract
- id → petId
- species → petSpecies
- breed → petBreed
- price → petPrice
- Removed desktop-only fields (dateOfBirth, gender, color)
- Added backend fields (petAge, createdAt, updatedAt)
- InventoryRequest: Fixed all field names to match backend contract
- productId → prodId
- stockQuantity → quantity
- Removed desktop-only fields (storeId, reorderLevel)
- InventoryResponse: Fixed all field names to match backend contract
- id → inventoryId
- stockQuantity → quantity
- Removed desktop-only fields (storeName, reorderLevel)
- Added backend fields (prodId, createdAt, updatedAt)
All DTOs now use proper types (BigDecimal for prices, LocalDate/LocalDateTime for dates).
Desktop DTOs are fully aligned with backend contracts.
2026-03-09 01:35:48 -06:00
37327742ae
Fix desktop UX and configuration
...
Changes:
- MainLayoutController: Analytics access restricted to ADMIN only
- STAFF users default to Sales view instead of Analytics
- Logo click redirects STAFF to Sales, ADMIN to Analytics
- Analytics button hidden for STAFF users
- LoginController: Added CUSTOMER login rejection with clear message
- CUSTOMER role users are now rejected at login with helpful error
- Directs customers to use web/mobile applications instead
- Configuration cleanup: Removed connectionpetstore.properties from project root
- Config file remains in src/main/resources for proper packaging
- ApiConfig already loads from classpath correctly
These changes ensure proper role-based access control and clean configuration management.
2026-03-09 01:32:40 -06:00
90a6d5d464
Fix desktop structural DTO changes
...
Changes:
- PurchaseOrderResponse: id → purchaseOrderId
- SaleResponse: id → saleId
- DashboardResponse: restructured to use nested SalesSummary and InventorySummary classes matching backend structure
- Added TopProduct and DailySales support
- Inventory DTOs review pending (storeName/reorderLevel fields may need manual UI check)
These changes align desktop response DTOs with backend structural requirements.
2026-03-09 01:30:49 -06:00
1fb7da3800
Align desktop DTOs to match backend field names
...
Phase 5: Simple DTO field renames
AdoptionResponse:
- id → adoptionId
AppointmentResponse:
- id → appointmentId
- petNames: String → List<String>
ProductResponse/ProductRequest:
- id → prodId
- productName → prodName
- description → prodDesc
- price → prodPrice
ServiceResponse:
- description → serviceDesc
- price → servicePrice
- Added serviceDuration field
SupplierResponse/SupplierRequest:
- id → supId
- supplierName → supCompany
- contactPerson → supContactFirstName
- Added supContactLastName field
- email → supEmail
- phone → supPhone
UserRequest/UserResponse already use fullName (no changes needed)
All field names now match backend DTOs exactly.
Controllers and views may need updates to reference new field names.
Phase 5
2026-03-09 01:24:55 -06:00
000c1f8859
Align desktop user contract with backend
...
- Replace firstName and lastName with fullName and email in UserRequest
- Add email and updatedAt to UserResponse
- Update StaffRegisterDialogController to build fullName from firstName + lastName
- Update StaffRegisterDialogController to include email validation and send email
- Update StaffAccountsController to use backend email from UserResponse instead of hardcoding blank
2026-03-08 22:02:28 -06:00
d4e532a798
Fix desktop ProductSupplier to use composite keys
...
- Remove id field from ProductSupplierResponse
- Rename supplierPrice to cost in ProductSupplierResponse and ProductSupplierRequest
- Update ProductSupplierApi to use composite keys (productId, supplierId) for update and delete
- Update ProductSupplierController delete logic to iterate and delete with composite keys
- Update ProductSupplierController mapping to use getCost() instead of getSupplierPrice()
- Update ProductSupplierDialogController to pass both productId and supplierId to update
- Update ProductSupplierDialogController to use setCost() instead of setSupplierPrice()
- Remove unused selectedId field from ProductSupplierDialogController
2026-03-08 22:01:10 -06:00
59de8ae1aa
Fix null pointers and unsafe parsing bugs
2026-03-08 10:05:09 -06:00
aa011205a0
Configure Jackson to ignore unknown properties
2026-03-07 17:53:41 -07:00
2bf09ea76d
Remove docker configs and database run configuration
2026-03-07 17:47:09 -07:00
b5084c6d2e
Remove database package and references
2026-03-07 17:45:12 -07:00
a6e424de41
Fix compilation errors in controllers
2026-03-07 17:07:43 -07:00
0e8ec35995
Remove mysql-connector-j dependency
2026-03-07 17:04:46 -07:00
8f88cc41a8
Complete InventoryDialogController migration
2026-03-07 17:04:24 -07:00
2b8cd22204
Migrate all controllers to REST API
2026-03-07 17:02:53 -07:00
87f616d08e
Migrate Pet controllers to REST API
2026-03-07 13:28:45 -07:00
58e29f307e
Migrate Product controllers to REST API
2026-03-07 13:23:16 -07:00
4fc518af07
Update authentication to use REST API
2026-03-07 13:21:09 -07:00
24c14eec7d
Add API infrastructure and DTOs
2026-03-07 13:20:11 -07:00
9c266a5b00
Merge pull request #32 from RecentRunner/refund-system
...
Refund system and logo
2026-03-02 20:31:44 +00:00
ccce10b9d6
Reduce sales table column widths to prevent crowding
2026-03-02 13:28:07 -07:00
645b6c2bce
Center logo and make it clickable to navigate to Analytics
2026-03-02 13:20:52 -07:00
bde356face
Increase logo sizes on login and sidebar
2026-03-02 13:17:21 -07:00
4e33877797
Enlarge logo and remove Pet Shop Manager text
2026-03-02 13:15:21 -07:00
657eeae5cf
Convert logos to PNG for JavaFX compatibility
2026-03-02 13:13:17 -07:00
693f8bff74
Add logos to login screen and sidebar
2026-03-02 13:11:43 -07:00
a6090dc0d0
Add images folder for logos and assets
2026-03-02 13:08:48 -07:00
22957e1179
Hide pie chart labels to fix overlap
2026-03-02 13:07:19 -07:00
36a516f878
Remove migration file, schema already in main SQL
2026-03-02 13:01:18 -07:00
cbed5e4e0c
Implement refund system for sales
2026-02-28 19:28:25 -07:00
92d883ee43
Merge pull request #31 from RecentRunner/analytics-screen
...
Analytics screen also added the blank chat screen for later
2026-03-01 02:07:49 +00:00
e2973729b4
Update UI and remove staff creation from login
2026-02-28 19:04:23 -07:00
2159d0762a
Remove dollar signs from FXML text attributes
2026-02-28 16:21:52 -07:00
2f653acac6
Fix FXML errors and make Analytics accessible to all users
2026-02-28 16:21:51 -07:00
f503a7e2b6
Add sales analytics screen
2026-02-28 16:21:51 -07:00
8f77fea963
fixed the issues with main
2026-02-25 11:23:44 -07:00
4dc5cae199
Add getSaleLineItems and createSale methods
2026-02-25 10:52:04 -07:00
07100f658b
Resolve stash conflicts and integrate team changes
2026-02-25 10:44:10 -07:00
844c86bd52
Merge main into fix-productsupplier-table-name
2026-02-25 10:42:20 -07:00