Administrator
2018-09-29 a9507855a1f0f2449eac1decb0113b4f16efa362
gx_tieta/src/com/fgkj/dao/impl/Batt_enduranceImpl.java
@@ -1,5 +1,6 @@
package com.fgkj.dao.impl;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
@@ -8,8 +9,10 @@
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.CallBack;
import com.fgkj.dao.DAOHelper;
import com.fgkj.dao.LimitNumberFactory;
import com.fgkj.db.DBUtil;
import com.fgkj.dto.Batt_endurance;
import com.fgkj.dto.Page;
import com.mysql.fabric.xmlrpc.base.Array;
public class Batt_enduranceImpl implements BaseDAO,CallBack{
@@ -38,10 +41,13 @@
      // TODO Auto-generated method stub
      return null;
   }
    //续航时间的查询
   //续航时间的查询
   public List serchByCondition(Object obj) {
      Batt_endurance bendurance=(Batt_endurance) obj;
      String sql="select distinct tb_batt_endurance.num,tb_batt_endurance.deviceid,tb_batt_endurance.stationid,real_cap,tb_batt_endurance.moncapstd,real_curr,endurance_theory_timelong,endurance_actual_timelong,is_out_stand " +
      Page page=bendurance.getPage();
      Connection conn=DBUtil.getConn();
      String numberSql=" SELECT FOUND_ROWS() number";
      String sql="select SQL_CALC_FOUND_ROWS distinct tb_batt_endurance.num,tb_batt_endurance.deviceid,tb_batt_endurance.stationid,real_cap,tb_batt_endurance.moncapstd,real_curr,endurance_theory_timelong,endurance_actual_timelong,is_out_stand " +
            ",db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.StationName1,db_battinf.tb_battinf.StationName2 " +
            " from web_site.tb_batt_endurance,db_battinf.tb_battinf " +
            " where tb_batt_endurance.stationid=db_battinf.tb_battinf.stationid " ;
@@ -50,7 +56,7 @@
      sql+=stationSql;
      //实际续航时间
      String timelongSqlT=" and endurance_actual_timelong<=? ";//小于某一时间
      String timelongSqlF=" and endurance_actual_timelong>=? ";//全部
      String timelongSqlF=" and endurance_actual_timelong>-1? ";//全部
      if(bendurance.getEndurance_actual_timelong()==0){
         sql+=timelongSqlF;
      }else{
@@ -67,8 +73,14 @@
      //排序时间
      String orderSql=" order by endurance_actual_timelong asc ";
      sql+=orderSql;
      //分页
      String limitSql=" limit ?,? ";
      sql+=limitSql;
      //System.out.println(sql);
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{"%"+bendurance.getStationName()+"%","%"+bendurance.getStationName1()+"%","%"+bendurance.getStationName2()+"%",bendurance.getEndurance_actual_timelong(),bendurance.getIs_out_stand()}, new CallBack() {
      List<Batt_endurance> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{"%"+bendurance.getStationName()+"%","%"+bendurance.getStationName1()+"%","%"+bendurance.getStationName2()+"%",bendurance.getEndurance_actual_timelong(),bendurance.getIs_out_stand()
                                     ,(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()}, new CallBack() {
         
         public List getResults(ResultSet rs) {
            List list=new ArrayList();
@@ -86,6 +98,8 @@
                  b.setStationName(rs.getString("stationname"));
                  b.setStationName1(rs.getString("stationname1"));
                  b.setStationName2(rs.getString("stationname2"));
                  Page p=new Page();
                  b.setPage(p);
                  list.add(b);
               }
            } catch (SQLException e) {
@@ -95,6 +109,12 @@
            return list;
         }
      });
      //去掉limit条件后的总数
      int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
      //System.out.println("number: "+number);
      if(list!=null&&list.size()>0){
         list.get(list.size()-1).getPage().setPageAll(number);
      }
      return list;
   }
@@ -108,10 +128,18 @@
      ben.setStationName("");
      ben.setStationName1("");
      ben.setStationName2("");
      ben.setEndurance_actual_timelong(60);
      ben.setEndurance_actual_timelong(120);
      ben.setIs_out_stand(100);
      List list=bimpl.serchByCondition(ben);
      Page page=new Page();
      page.setPageCurr(1);
      page.setPageSize(10);
      ben.setPage(page);
      List<Batt_endurance> list=bimpl.serchByCondition(ben);
      for (Batt_endurance b : list) {
         System.out.println(b);
      }
      System.out.println(list.size());
   }
}