93 lines
3.3 KiB
Markdown
93 lines
3.3 KiB
Markdown
# Simple Acknowledgement System - Implementation Summary
|
|
|
|
## Overview
|
|
A simplified acknowledgement system for employees to sign required documents.
|
|
|
|
## Features
|
|
1. **Checklist of Acknowledgements** - Employees see a checklist of all acknowledgements they must sign
|
|
2. **Add Future Acknowledgements** - Admins can add new acknowledgements anytime
|
|
3. **Employee & Employee ID** - Employees sign with their name and employee ID
|
|
4. **Checkmark & PDF** - Signed acknowledgements show checkmarks and have attached PDFs
|
|
|
|
## Models
|
|
|
|
### SimpleAcknowledgement
|
|
- `title` - Acknowledgement title
|
|
- `description` - Detailed description
|
|
- `pdf_document` - PDF document for employees to review
|
|
- `is_active` - Show in employee checklist
|
|
- `is_required` - Must be signed by all employees
|
|
- `order` - Display order
|
|
|
|
### EmployeeAcknowledgement
|
|
- `employee` - ForeignKey to User
|
|
- `acknowledgement` - ForeignKey to SimpleAcknowledgement
|
|
- `is_signed` - Boolean flag
|
|
- `signed_at` - Timestamp
|
|
- `signature_name` - Name used when signing
|
|
- `signature_employee_id` - Employee ID when signing
|
|
- `signed_pdf` - Generated PDF with signature
|
|
- `ip_address` - For audit trail
|
|
- `user_agent` - For audit trail
|
|
|
|
## URLs
|
|
|
|
### Employee URLs
|
|
- `/accounts/simple-acknowledgements/my-acknowledgements/` - Employee checklist
|
|
- `/accounts/simple-acknowledgements/my-acknowledgements/sign/<uuid>/` - Sign acknowledgement
|
|
- `/accounts/simple-acknowledgements/my-acknowledgements/download/<uuid>/` - Download signed PDF
|
|
|
|
### Admin URLs
|
|
- `/accounts/simple-acknowledgements/admin/acknowledgements/` - List all acknowledgements
|
|
- `/accounts/simple-acknowledgements/admin/acknowledgements/new/` - Create new acknowledgement
|
|
- `/accounts/simple-acknowledgements/admin/acknowledgements/<uuid>/edit/` - Edit acknowledgement
|
|
- `/accounts/simple-acknowledgements/admin/acknowledgements/<uuid>/delete/` - Delete acknowledgement
|
|
- `/accounts/simple-acknowledgements/admin/acknowledgements/<uuid>/toggle/` - Toggle active status
|
|
- `/accounts/simple-acknowledgements/admin/signatures/` - View all signatures
|
|
- `/accounts/simple-acknowledgements/admin/signatures/employee/<uuid>/` - View employee's signatures
|
|
|
|
## Templates
|
|
All templates are in `templates/accounts/simple_acknowledgements/`:
|
|
- `employee_list.html` - Employee checklist view
|
|
- `sign.html` - Sign acknowledgement form
|
|
- `admin_list.html` - Admin list view
|
|
- `admin_form.html` - Admin create/edit form
|
|
- `admin_signatures.html` - Admin signatures view
|
|
|
|
## Migration
|
|
Run the migration to create the new tables:
|
|
```bash
|
|
python manage.py migrate accounts
|
|
```
|
|
|
|
## Usage
|
|
|
|
### For Employees
|
|
1. Navigate to `/accounts/simple-acknowledgements/my-acknowledgements/`
|
|
2. See list of pending and completed acknowledgements
|
|
3. Click "Sign Now" to sign a pending acknowledgement
|
|
4. Enter name and employee ID, then submit
|
|
5. Download signed PDF if needed
|
|
|
|
### For Admins
|
|
1. Navigate to `/accounts/simple-acknowledgements/admin/acknowledgements/`
|
|
2. Click "New Acknowledgement" to create
|
|
3. Fill in title, description, and optionally upload a PDF
|
|
4. Set as active/required as needed
|
|
5. View signatures in the admin signatures page
|
|
|
|
## Navigation Link (Optional)
|
|
Add to your navigation menu:
|
|
```html
|
|
<a href="{% url 'accounts:simple_acknowledgements:employee_list' %}">
|
|
My Acknowledgements
|
|
</a>
|
|
```
|
|
|
|
For PX Admins:
|
|
```html
|
|
<a href="{% url 'accounts:simple_acknowledgements:admin_list' %}">
|
|
Manage Acknowledgements
|
|
</a>
|
|
```
|