Implement per-bill proof of payment and update field names
Frontend changes: - Added ViewBillCard proof of payment upload for per-bill mode - Conditional rendering based on proofOfPaymentType - File upload with PDF validation and loading states - Download link to /share/proof-of-payment/per-bill/ - Updated LocationCard to use new utilBillsProofOfPayment field structure Backend changes: - Updated locationActions with improved file validation - File size validation using MAX_PROOF_OF_PAYMENT_UPLOAD_SIZE_KB - PDF type validation before database operations - Enhanced serializeAttachment with FileAttachment type - Updated database projections for optimized queries - Updated monthActions to use consolidated field name - Updated proof-of-payment download route with new field names Data structure migration: - Replaced utilBillsProofOfPaymentAttachment + utilBillsProofOfPaymentUploadedAt with single utilBillsProofOfPayment object containing uploadedAt - Consistent use of FileAttachment type across all upload functions Translations: - Added upload-proof-of-payment-legend and upload-proof-of-payment-label to bill-edit-form section in both English and Croatian This completes the proof of payment feature implementation for both combined (location-level) and per-bill modes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -135,7 +135,9 @@
|
||||
"billed-to-legend": "Who bears the cost?",
|
||||
"billed-to-tenant-option": "the tenant bears this cost",
|
||||
"billed-to-landlord-option": "the landlord bears this cost",
|
||||
"billed-to-info": "This option is intended for cases where part of the utility costs are not charged to the tenant. If 'the landlord bears this cost' is selected, this bill will not be included in the monthly statement shown to the tenant."
|
||||
"billed-to-info": "This option is intended for cases where part of the utility costs are not charged to the tenant. If 'the landlord bears this cost' is selected, this bill will not be included in the monthly statement shown to the tenant.",
|
||||
"upload-proof-of-payment-legend": "Proof of payment",
|
||||
"upload-proof-of-payment-label": "Here you can upload proof of payment:"
|
||||
},
|
||||
"location-delete-form": {
|
||||
"text": "Please confirm deletion of realestate \"<strong>{name}</strong>\".",
|
||||
|
||||
Reference in New Issue
Block a user