adjust validation from week 19

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