[FIX/BE-US] adjustment sso-location

This commit is contained in:
ragilap
2026-01-22 09:27:11 +07:00
parent a3e9017e29
commit 3a457ceee5
12 changed files with 158 additions and 133 deletions
@@ -38,6 +38,7 @@ type ProjectflockService interface {
GetOne(ctx *fiber.Ctx, id uint) (*entity.ProjectFlock, *flockDTO.FlockRelationDTO, error)
CreateOne(ctx *fiber.Ctx, req *validation.Create) (*entity.ProjectFlock, error)
GetAvailableDocQuantity(ctx *fiber.Ctx, kandangID uint) (float64, error)
GetWarehouseByKandangID(ctx *fiber.Ctx, kandangID uint) (*entity.Warehouse, error)
DeleteOne(ctx *fiber.Ctx, id uint) error
GetProjectFlockKandangByProjectAndKandang(ctx *fiber.Ctx, projectFlockID uint, kandangID uint) (*entity.ProjectFlockKandang, float64, error)
GetProjectFlockKandangPopulation(ctx *fiber.Ctx, projectFlockKandangID uint) (float64, error)
@@ -532,6 +533,31 @@ func (s projectflockService) GetAvailableDocQuantity(ctx *fiber.Ctx, kandangID u
return total, nil
}
func (s projectflockService) GetWarehouseByKandangID(ctx *fiber.Ctx, kandangID uint) (*entity.Warehouse, error) {
if kandangID == 0 || s.WarehouseRepo == nil {
return nil, nil
}
var warehouse entity.Warehouse
err := s.WarehouseRepo.DB().WithContext(ctx.Context()).
Preload("Area").
Preload("Location").
Preload("Kandang").
Where("kandang_id = ?", kandangID).
Where("deleted_at IS NULL").
Order("id DESC").
First(&warehouse).Error
if errors.Is(err, gorm.ErrRecordNotFound) {
return nil, nil
}
if err != nil {
s.Log.Errorf("Failed to fetch warehouse for kandang %d: %+v", kandangID, err)
return nil, fiber.NewError(fiber.StatusInternalServerError, "Failed to fetch warehouse")
}
return &warehouse, nil
}
func (s projectflockService) GetProjectPeriods(c *fiber.Ctx, projectIDs []uint) (map[uint]int, error) {
if len(projectIDs) == 0 {
return map[uint]int{}, nil