add api detail daily checklist

This commit is contained in:
MacBook Air M1
2026-01-07 10:36:40 +07:00
parent dded9e807b
commit 42aa6829c5
4 changed files with 288 additions and 12 deletions
@@ -54,14 +54,14 @@ func (u *DailyChecklistController) GetAll(c *fiber.Ctx) error {
}
func (u *DailyChecklistController) GetOne(c *fiber.Ctx) error {
param := c.Params("id")
param := c.Params("idDailyChecklist")
id, err := strconv.Atoi(param)
if err != nil {
return fiber.NewError(fiber.StatusBadRequest, "Invalid Id")
}
result, err := u.DailyChecklistService.GetOne(c, uint(id))
detail, err := u.DailyChecklistService.GetDetail(c, uint(id))
if err != nil {
return err
}
@@ -71,7 +71,7 @@ func (u *DailyChecklistController) GetOne(c *fiber.Ctx) error {
Code: fiber.StatusOK,
Status: "success",
Message: "Get dailyChecklist successfully",
Data: dto.ToDailyChecklistListDTO(*result),
Data: dto.ToDailyChecklistDetailDTO(detail.Checklist, detail.Phases, detail.Tasks, detail.AssignedEmployees, detail.TotalActivities, detail.Progress),
})
}
@@ -217,6 +217,32 @@ func (u *DailyChecklistController) RemoveAssignment(c *fiber.Ctx) error {
})
}
func (u *DailyChecklistController) GetPhaseByIdChecklist(c *fiber.Ctx) error {
param := c.Params("idDailyChecklist")
id, err := strconv.Atoi(param)
if err != nil || id <= 0 {
return fiber.NewError(fiber.StatusBadRequest, "Invalid daily checklist id")
}
phaseIDs, err := u.DailyChecklistService.GetChecklistPhaseIDs(c, uint(id))
if err != nil {
return err
}
responseData := make([]map[string]uint, len(phaseIDs))
for i, phaseID := range phaseIDs {
responseData[i] = map[string]uint{"phase_id": phaseID}
}
return c.Status(fiber.StatusOK).
JSON(response.Success{
Code: fiber.StatusOK,
Status: "success",
Message: "Get phases successfully",
Data: responseData,
})
}
func (u *DailyChecklistController) GetAllTasks(c *fiber.Ctx) error {
checklistParam := c.Query("checklist_id", "")
if checklistParam == "" {