feat: Implement project search functionality and task management features
- Added search functionality to the Project List page, allowing users to filter projects by name, WP, plot, or investment number. - Created a new Project Tasks page to manage tasks across all projects, including filtering by status and priority. - Implemented task status updates and deletion functionality. - Added a new Task Template Edit page for modifying existing task templates. - Enhanced Task Template Form to include a description field and loading state during submission. - Updated UI components for better user experience, including badges for task status and priority. - Introduced new database queries for managing contracts and projects, including fetching tasks related to projects. - Added migrations to the database for new columns and improved data handling.
This commit is contained in:
@@ -7,6 +7,32 @@ export function getAllTaskTemplates() {
|
||||
.all();
|
||||
}
|
||||
|
||||
// Get all project tasks across all projects
|
||||
export function getAllProjectTasks() {
|
||||
return db
|
||||
.prepare(
|
||||
`
|
||||
SELECT
|
||||
pt.*,
|
||||
COALESCE(pt.custom_task_name, t.name) as task_name,
|
||||
COALESCE(pt.custom_max_wait_days, t.max_wait_days) as max_wait_days,
|
||||
CASE
|
||||
WHEN pt.task_template_id IS NOT NULL THEN 'template'
|
||||
ELSE 'custom'
|
||||
END as task_type,
|
||||
p.project_name,
|
||||
p.wp,
|
||||
p.plot,
|
||||
p.finish_date
|
||||
FROM project_tasks pt
|
||||
LEFT JOIN tasks t ON pt.task_template_id = t.task_id
|
||||
LEFT JOIN projects p ON pt.project_id = p.project_id
|
||||
ORDER BY pt.date_added DESC
|
||||
`
|
||||
)
|
||||
.all();
|
||||
}
|
||||
|
||||
// Get project tasks for a specific project
|
||||
export function getProjectTasks(projectId) {
|
||||
return db
|
||||
|
||||
Reference in New Issue
Block a user