mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 13:31:56 +00:00
fixing api closing sapronak and data produksi
This commit is contained in:
@@ -337,8 +337,10 @@ func (s closingService) GetClosingSapronak(c *fiber.Ctx, projectFlockID uint, pa
|
||||
}
|
||||
|
||||
var projectFlockKandangIDs []uint
|
||||
if params.Type == validation.SapronakTypeOutgoing {
|
||||
projectFlockKandangIDs, err = s.getProjectFlockKandangIDs(c.Context(), projectFlockID, params.KandangID)
|
||||
if params.KandangID != nil && *params.KandangID > 0 {
|
||||
projectFlockKandangIDs = []uint{*params.KandangID}
|
||||
} else if params.Type == validation.SapronakTypeOutgoing {
|
||||
projectFlockKandangIDs, err = s.getProjectFlockKandangIDs(c.Context(), projectFlockID)
|
||||
if err != nil {
|
||||
s.Log.Errorf("Failed to fetch project flock kandang IDs for project flock %d: %+v", projectFlockID, err)
|
||||
return nil, 0, fiber.NewError(fiber.StatusInternalServerError, "Failed to fetch project flock kandang")
|
||||
@@ -418,14 +420,11 @@ func (s closingService) getWarehouseIDsByProjectFlock(ctx context.Context, proje
|
||||
return ids, nil
|
||||
}
|
||||
|
||||
func (s closingService) getProjectFlockKandangIDs(ctx context.Context, projectFlockID uint, kandangID *uint) ([]uint, error) {
|
||||
func (s closingService) getProjectFlockKandangIDs(ctx context.Context, projectFlockID uint) ([]uint, error) {
|
||||
var ids []uint
|
||||
query := s.Repository.DB().WithContext(ctx).
|
||||
Model(&entity.ProjectFlockKandang{}).
|
||||
Where("project_flock_id = ?", projectFlockID)
|
||||
if kandangID != nil {
|
||||
query = query.Where("kandang_id = ?", *kandangID)
|
||||
}
|
||||
err := query.Order("id ASC").Pluck("id", &ids).Error
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -690,10 +689,16 @@ func (s closingService) GetClosingDataProduksi(c *fiber.Ctx, projectFlockID uint
|
||||
return nil, fiber.NewError(fiber.StatusBadRequest, "Invalid project flock id")
|
||||
}
|
||||
|
||||
projectFlockKandangIDs, err := s.getProjectFlockKandangIDs(c.Context(), projectFlockID, kandangID)
|
||||
if err != nil {
|
||||
s.Log.Errorf("Failed to fetch project flock kandangs for %d: %+v", projectFlockID, err)
|
||||
return nil, fiber.NewError(fiber.StatusInternalServerError, "Failed to fetch project flock kandangs")
|
||||
var projectFlockKandangIDs []uint
|
||||
if kandangID != nil && *kandangID > 0 {
|
||||
projectFlockKandangIDs = []uint{*kandangID}
|
||||
} else {
|
||||
var err error
|
||||
projectFlockKandangIDs, err = s.getProjectFlockKandangIDs(c.Context(), projectFlockID)
|
||||
if err != nil {
|
||||
s.Log.Errorf("Failed to fetch project flock kandangs for %d: %+v", projectFlockID, err)
|
||||
return nil, fiber.NewError(fiber.StatusInternalServerError, "Failed to fetch project flock kandangs")
|
||||
}
|
||||
}
|
||||
|
||||
if len(projectFlockKandangIDs) == 0 {
|
||||
@@ -954,16 +959,16 @@ func (s closingService) GetClosingDataProduksi(c *fiber.Ctx, projectFlockID uint
|
||||
}
|
||||
if !isGrowing {
|
||||
if productionStandardDetail.TargetHenDayProduction != nil {
|
||||
performance.HendayStd = productionStandardDetail.TargetHenDayProduction
|
||||
performance.HendayStd = *productionStandardDetail.TargetHenDayProduction
|
||||
}
|
||||
if productionStandardDetail.TargetHenHouseProduction != nil {
|
||||
performance.HenHouseStd = productionStandardDetail.TargetHenHouseProduction
|
||||
performance.HenHouseStd = *productionStandardDetail.TargetHenHouseProduction
|
||||
}
|
||||
if productionStandardDetail.TargetEggWeight != nil {
|
||||
performance.EggWeightStd = productionStandardDetail.TargetEggWeight
|
||||
performance.EggWeightStd = *productionStandardDetail.TargetEggWeight
|
||||
}
|
||||
if productionStandardDetail.TargetEggMass != nil {
|
||||
performance.EggMassStd = productionStandardDetail.TargetEggMass
|
||||
performance.EggMassStd = *productionStandardDetail.TargetEggMass
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user