From 35be20ae4cf74c1f2c5006cb0d259027a4cc00ff Mon Sep 17 00:00:00 2001 From: Marwan Alwali Date: Sat, 6 Sep 2025 19:07:14 +0300 Subject: [PATCH] update --- db.sqlite3 | Bin 39882752 -> 39899136 bytes logs/hospital_management.log | 1258 +++++++++++++++++ .../crossmatch/crossmatch_form.html | 8 +- templates/blood_bank/dashboard.html | 4 +- .../donors/donor_confirm_delete.html | 2 +- templates/blood_bank/donors/donor_detail.html | 16 +- .../blood_bank/donors/donor_eligibility.html | 4 +- templates/blood_bank/donors/donor_form.html | 14 +- templates/blood_bank/donors/donor_list.html | 1 - .../inventory/inventory_dashboard.html | 4 +- .../blood_bank/issues/blood_issue_form.html | 8 +- .../quality_control_confirm_delete.html | 4 +- .../quality_control_detail.html | 4 +- .../quality_control/quality_control_form.html | 8 +- .../quality_control/quality_control_list.html | 16 +- .../reactions/adverse_reaction_form.html | 8 +- .../reports/blood_bank_reports.html | 12 +- .../blood_request_confirm_delete.html | 4 +- .../requests/blood_request_detail.html | 10 +- .../requests/blood_request_form.html | 10 +- .../requests/blood_request_list.html | 16 +- .../blood_bank/tests/blood_test_form.html | 8 +- .../transfusions/transfusion_detail.html | 8 +- .../transfusions/transfusion_form.html | 8 +- .../transfusions/transfusion_list.html | 16 +- .../units/blood_unit_confirm_delete.html | 4 +- .../units/blood_unit_detail copy.html | 12 +- .../blood_bank/units/blood_unit_detail.html | 204 +-- .../blood_bank/units/blood_unit_form.html | 12 +- .../blood_bank/units/blood_unit_list.html | 14 +- 30 files changed, 1479 insertions(+), 218 deletions(-) diff --git a/db.sqlite3 b/db.sqlite3 index 1bbada67a855e136f7a82fc04b97fd201e6574d0..e52372a39d810d13d3b489b879bc4eaff3fa3c7a 100644 GIT binary patch delta 18964 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

awZ!T@Zd`DAmRZVbPz!l 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 sO&s3rKAgN-bEU09c@H0l26f|C-r7tqQg +{% block css %} +