package app import "strings" func attachTransportOwnershipLockState(items []TransportOwnershipRecord, clients []TransportClient) (out []TransportOwnershipRecord, lockCount int) { if len(items) == 0 { return nil, 0 } statusByClientID := map[string]TransportClientStatus{} for _, client := range clients { id := strings.TrimSpace(client.ID) if id == "" { continue } statusByClientID[id] = client.Status } out = make([]TransportOwnershipRecord, len(items)) for i := range items { rec := items[i] st := statusByClientID[strings.TrimSpace(rec.ClientID)] rec.OwnerStatus = string(st) rec.LockActive = isTransportClientOwnerLockActive(st) if rec.LockActive { lockCount++ } out[i] = rec } return out, lockCount }