Handle new special route listing for mtr buses
This commit is contained in:
@@ -1,62 +1,63 @@
|
||||
package bus
|
||||
|
||||
import (
|
||||
i18n "github.com/tgckpg/golifehk/i18n"
|
||||
i18n "github.com/tgckpg/golifehk/i18n"
|
||||
)
|
||||
|
||||
type BusStop struct {
|
||||
RouteId string
|
||||
Direction string
|
||||
StationSeq int
|
||||
StationId string
|
||||
Latitude float64
|
||||
Longtitude float64
|
||||
Name_zh string
|
||||
Name_en string
|
||||
RouteId string
|
||||
ReferenceId string
|
||||
Direction string
|
||||
StationSeq int
|
||||
StationId string
|
||||
Latitude float64
|
||||
Longtitude float64
|
||||
Name_zh string
|
||||
Name_en string
|
||||
|
||||
// RouteStops[ StationSeq ] = BusStop
|
||||
RouteStops *map[int] *BusStop
|
||||
// RouteStops[ StationSeq ] = BusStop
|
||||
RouteStops *map[int]*BusStop
|
||||
|
||||
i18n.Generics
|
||||
i18n.Generics
|
||||
}
|
||||
|
||||
func ( this *BusStop ) PrevStop() *BusStop {
|
||||
if v, hasKey := (*this.RouteStops)[ this.StationSeq - 1 ]; hasKey {
|
||||
return v
|
||||
}
|
||||
return nil
|
||||
func (this *BusStop) PrevStop() *BusStop {
|
||||
if v, hasKey := (*this.RouteStops)[this.StationSeq-1]; hasKey {
|
||||
return v
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ( this *BusStop ) NextStop() *BusStop {
|
||||
if v, hasKey := (*this.RouteStops)[ this.StationSeq + 1 ]; hasKey {
|
||||
return v
|
||||
}
|
||||
return nil
|
||||
func (this *BusStop) NextStop() *BusStop {
|
||||
if v, hasKey := (*this.RouteStops)[this.StationSeq+1]; hasKey {
|
||||
return v
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ( this *BusStop ) Reload() {
|
||||
i18n_Name := map[string] string{}
|
||||
i18n_Name["en"] = this.Name_en
|
||||
i18n_Name["zh-Hant"] = this.Name_zh
|
||||
func (this *BusStop) Reload() {
|
||||
i18n_Name := map[string]string{}
|
||||
i18n_Name["en"] = this.Name_en
|
||||
i18n_Name["zh-Hant"] = this.Name_zh
|
||||
|
||||
searchData := [] *string{}
|
||||
searchData = append( searchData, &this.Name_en )
|
||||
searchData = append( searchData, &this.Name_zh )
|
||||
searchData := []*string{}
|
||||
searchData = append(searchData, &this.Name_en)
|
||||
searchData = append(searchData, &this.Name_zh)
|
||||
|
||||
this.Name = &i18n_Name
|
||||
this.Key = &this.RouteId
|
||||
this.SearchData = &searchData
|
||||
this.Name = &i18n_Name
|
||||
this.Key = &this.RouteId
|
||||
this.SearchData = &searchData
|
||||
}
|
||||
|
||||
type ByRoute [] *BusStop
|
||||
type ByRoute []*BusStop
|
||||
|
||||
func (a ByRoute) Len() int { return len(a) }
|
||||
func (a ByRoute) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
|
||||
func (a ByRoute) Len() int { return len(a) }
|
||||
func (a ByRoute) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
|
||||
func (a ByRoute) Less(i, j int) bool {
|
||||
_a := *a[i]
|
||||
_b := *a[j]
|
||||
if _a.RouteId == _b.RouteId {
|
||||
return _a.Direction < _b.Direction
|
||||
}
|
||||
return _a.RouteId < _b.RouteId
|
||||
_a := *a[i]
|
||||
_b := *a[j]
|
||||
if _a.RouteId == _b.RouteId {
|
||||
return _a.Direction < _b.Direction
|
||||
}
|
||||
return _a.RouteId < _b.RouteId
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user