Initial commit

This commit is contained in:
2026-09-22 22:51:19 +08:00
commit 967dcecb7e
80 changed files with 10762 additions and 0 deletions
+53
View File
@@ -0,0 +1,53 @@
-- name: ListScheduleDaysByProjectMonth :many
SELECT * FROM schedule_days
WHERE project_id = sqlc.arg(project_id) AND date LIKE sqlc.arg(month) || '%'
ORDER BY date ASC;
-- name: GetScheduleDay :one
SELECT * FROM schedule_days
WHERE id = ?;
-- name: CreateScheduleDay :one
INSERT INTO schedule_days (id, project_id, date, status, note)
VALUES (?, ?, ?, ?, ?)
RETURNING *;
-- name: UpdateScheduleDay :one
UPDATE schedule_days
SET status = ?, note = ?, updated_at = CURRENT_TIMESTAMP
WHERE id = ?
RETURNING *;
-- name: ListTimeSlotsByDay :many
SELECT * FROM time_slots
WHERE schedule_day_id = ?
ORDER BY start_time ASC;
-- name: GetTimeSlot :one
SELECT * FROM time_slots
WHERE id = ?;
-- name: CreateTimeSlot :one
INSERT INTO time_slots (id, schedule_day_id, start_time, end_time, status)
VALUES (?, ?, ?, ?, ?)
RETURNING *;
-- name: UpdateTimeSlot :one
UPDATE time_slots
SET start_time = ?,
end_time = ?,
status = ?,
updated_at = CURRENT_TIMESTAMP
WHERE id = ?
RETURNING *;
-- name: DeleteTimeSlotsByProject :exec
DELETE FROM time_slots
WHERE schedule_day_id IN (
SELECT id FROM schedule_days
WHERE project_id = ?
);
-- name: DeleteScheduleDaysByProject :exec
DELETE FROM schedule_days
WHERE project_id = ?;