adjustment create project flock must have a relation for location,area and kandang

This commit is contained in:
ragilap
2025-12-04 18:54:04 +07:00
parent c3305d3089
commit 17269d701c
2 changed files with 68 additions and 57 deletions
@@ -245,6 +245,16 @@ func (s *projectflockService) CreateOne(c *fiber.Ctx, req *validation.Create) (*
return nil, err
}
var location entity.Location
if err := s.Repository.DB().WithContext(c.Context()).
Where("id = ? AND area_id = ?", req.LocationId, req.AreaId).
First(&location).Error; err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return nil, fiber.NewError(fiber.StatusBadRequest, "Lokasi tidak berada pada area yang diminta")
}
return nil, fiber.NewError(fiber.StatusInternalServerError, "Gagal memvalidasi relasi area-lokasi")
}
canonicalBase := baseName
if s.FlockRepo != nil {
baseFlock, err := s.ensureFlockByName(c.Context(), actorID, baseName)