adjust validation from week 19

This commit is contained in:
giovanni
2026-04-09 17:00:03 +07:00
parent ddcf13e2ff
commit 7c848bc50d
@@ -386,11 +386,11 @@ func (s *uniformityService) CreateOne(c *fiber.Ctx, req *validation.Create, file
weekBase = config.LayingWeekStart()
}
if req.Week < weekBase {
if isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
if !isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, "week must start from 1 for growing projects")
}
// return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
var latestWeek int
if err := s.Repository.DB().WithContext(c.Context()).
@@ -401,11 +401,11 @@ func (s *uniformityService) CreateOne(c *fiber.Ctx, req *validation.Create, file
return nil, fiber.NewError(fiber.StatusInternalServerError, "Failed to validate uniformity week sequence")
}
if latestWeek == 0 && req.Week != weekBase {
if isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
if !isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, "week must start from 1 for growing projects")
}
// return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
// if latestWeek > 0 && req.Week > latestWeek+1 {
// return nil, fiber.NewError(fiber.StatusBadRequest, "week must be sequential without skipping")
// }
@@ -582,11 +582,11 @@ func (s uniformityService) UpdateOne(c *fiber.Ctx, req *validation.Update, id ui
weekBase = config.LayingWeekStart()
}
if targetWeek < weekBase {
if isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
if !isLayingCategory {
return nil, fiber.NewError(fiber.StatusBadRequest, "week must start from 1 for growing projects")
}
return nil, fiber.NewError(fiber.StatusBadRequest, fmt.Sprintf("week must start from %d for laying projects", weekBase))
}
}
if targetDate != nil {
if err := s.ensureUniqueUniformity(c.Context(), id, targetPFKID, targetWeek); err != nil {