main will search zips if Broker.UseZips, ntg does its own filtering by city-state dist from search-zips

This commit is contained in:
Bel LaPointe
2022-01-27 18:20:52 -07:00
parent d2cf8c74a2
commit bb8e2a18ef
2 changed files with 45 additions and 12 deletions

View File

@@ -204,7 +204,21 @@ func (ntg NTGVision) SearchZips(zips []string) ([]Job, error) {
if len(states) == 0 {
return nil, fmt.Errorf("failed to map zipcodes %+v to any states", zips)
}
return ntg.SearchStates(states)
jobs, err := ntg.SearchStates(states)
if err != nil {
return nil, err
}
for i := len(jobs) - 1; i >= 0; i-- {
ok := false
for _, z := range zips {
ok = ok || zip.Get(z).MilesTo(zip.FromCityState(jobs[i].Pickup.City, jobs[i].Pickup.State)) <= radius
}
if !ok {
jobs[i], jobs[len(jobs)-1] = jobs[len(jobs)-1], jobs[i]
jobs = jobs[:len(jobs)-1]
}
}
return jobs, nil
}
func (ntg NTGVision) SearchStates(states []config.State) ([]Job, error) {