From 1f87bccbf4095f4b7427412968ba7b289fba95e8 Mon Sep 17 00:00:00 2001 From: areeqakbr Date: Wed, 2 Jul 2025 09:47:27 +0700 Subject: [PATCH] adding update fileds for olt on usecase --- usecase/device_details.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/usecase/device_details.go b/usecase/device_details.go index 156dae2..4f2de14 100644 --- a/usecase/device_details.go +++ b/usecase/device_details.go @@ -554,6 +554,21 @@ func (u *deviceDetailsUseCase) UpdateDeviceDetails(id uuid.UUID, deviceDTO req.U } updates["tower_id"] = *deviceDTO.TowerID } + + if deviceDTO.OLTID != nil { + // Validate OLT exists + oltExists, err := u.ValidateOLTExists(*deviceDTO.OLTID) + if err != nil { + return fmt.Errorf("failed to validate OLT: %w", err) + } + if !oltExists { + return fmt.Errorf("OLT with ID %s not found", deviceDTO.OLTID.String()) + } + + updates["olt_id"] = *deviceDTO.OLTID + } + + log.Printf("Updating device %s with fields: %+v", id, updates) if len(updates) == 0 { return errors.New("no fields to update")