Exemple #1
0
 /**
  * ページ番号で取得
  *
  * @param pageSource
  * @return
  */
 @Override
 public Option<List<Station>> findWithPage(Integer pageSource) {
   Integer page = PageUtil.rightPage(pageSource);
   Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
   return OptionUtil.apply(
       find.order().asc("createDate").findPagingList(10).getPage(page).getList());
 }
Exemple #2
0
  // 現在地から指定された範囲内の駅を取得する
  public Option<List<Station>> findByGeoCode(
      Double latitudeFrom, Double longitudeFrom, Double latitudeTo, Double longitudeTo) {

    // Integer page                   = PageUtil.rightPage(pageSource);
    Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
    return OptionUtil.apply(
        find.fetch("line")
            .where()
            .ge("lat", latitudeTo)
            .le("lat", latitudeFrom)
            .ge("lon", longitudeFrom)
            .le("lon", longitudeTo)
            .findList());
  }
Exemple #3
0
 /**
  * 県で検索
  *
  * @param id
  * @return
  */
 public Option<List<Station>> findByPref(Long id) {
   Option<Long> idOps = OptionUtil.apply(id);
   if (idOps.isDefined()) {
     Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
     return OptionUtil.apply(
         find.fetch("line")
             .fetch("line.company")
             .fetch("prefecture")
             .where()
             .eq("prefecture_id", id)
             .findList());
   }
   return new None<List<Station>>();
 }
Exemple #4
0
 /**
  * IDで検索
  *
  * @param id
  * @return
  */
 @Override
 public Option<Station> findById(Long id) {
   Option<Long> idOps = OptionUtil.apply(id);
   if (idOps.isDefined()) {
     Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
     // return OptionUtil.apply(find.byId(id));
     return OptionUtil.apply(
         find.fetch("line")
             .fetch("line.company")
             .fetch("prefecture")
             .where()
             .eq("id", id)
             .findUnique());
   }
   return new None<Station>();
 }
Exemple #5
0
  // 駅名から駅リストを取得する
  public Option<List<Station>> findByName(String station_name) {
    String repStationName = station_name;
    repStationName = repStationName.replaceAll(" ", ",");
    repStationName = repStationName.replaceAll(" ", ",");
    String[] whereVals = repStationName.split(",");

    String whereStr = "";
    for (String v : whereVals) {
      if (whereStr.length() == 0) {
        whereStr += "station_name like'%" + v + "%' ";
      } else {
        whereStr += " or station_name like'%" + v + "%'";
      }
    }

    Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
    return OptionUtil.apply(
        // find.fetch("line").where().like("station_name", "%" + station_name + "%").findList()
        find.fetch("line").where().raw(whereStr).findList());
  }
Exemple #6
0
 // 路線から駅リストを取得する
 public Option<List<Station>> findByLine(Long line_id) {
   Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
   return OptionUtil.apply(
       find.fetch("line").where().eq("line_id", line_id).orderBy("e_sort").findList());
 }
Exemple #7
0
 /**
  * 最大ページ数を取得
  *
  * @return
  */
 public Option<Integer> getMaxPage() {
   Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
   return OptionUtil.apply(find.order().asc("createDate").findPagingList(10).getTotalPageCount());
 }
Exemple #8
0
 public Option<List<Station>> findAll() {
   Model.Finder<Long, Station> find = ModelUtil.getFinder(Station.class);
   return OptionUtil.apply(find.all());
 }