From b6e8fdb6f9bb50d29aeb29aa62b19a75c9a1ef9d Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期五, 02 十一月 2018 17:31:23 +0800 Subject: [PATCH] Merge branch 'dev_lxw' of https://whychdw@gitlab.com/whyclxw1/gx_tieta.git into dev_lxw --- gx_tieta/src/com/fgkj/dao/impl/Batt_enduranceImpl.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 46 insertions(+), 9 deletions(-) diff --git a/gx_tieta/src/com/fgkj/dao/impl/Batt_enduranceImpl.java b/gx_tieta/src/com/fgkj/dao/impl/Batt_enduranceImpl.java index 0f02da4..875d6d5 100644 --- a/gx_tieta/src/com/fgkj/dao/impl/Batt_enduranceImpl.java +++ b/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,19 +41,29 @@ // 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 " + - ",db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.StationName1,db_battinf.tb_battinf.StationName2 " + + 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,db_battinf.tb_battinf.StationName5 " + " from web_site.tb_batt_endurance,db_battinf.tb_battinf " + - " where tb_batt_endurance.stationid=db_battinf.tb_battinf.stationid " ; + " where tb_batt_endurance.stationid=db_battinf.tb_battinf.stationid "+ + " and tb_batt_endurance.stationid in (" + + " select distinct db_battinf.tb_battinf.stationid " + + " from db_battinf.tb_battinf " + + " left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.stationid=db_battinf.tb_battinf.stationid " + + " left outer join db_user.tb_user_battgroup_baojigroup_usr on db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " + + " left outer join db_user.tb_user_inf on tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " + + " where db_user.tb_user_inf.uid=? ) " ; //鏈烘埧绛涢�� - String stationSql=" and db_battinf.tb_battinf.StationName like ? and db_battinf.tb_battinf.StationName1 like ? and db_battinf.tb_battinf.StationName2 like ?"; + String stationSql=" and db_battinf.tb_battinf.StationName like ? and db_battinf.tb_battinf.StationName1 like ? and db_battinf.tb_battinf.StationName2 like ? and db_battinf.tb_battinf.StationName5 like ?"; 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{ @@ -65,10 +78,16 @@ sql+=is_out_standSqlF; } //鎺掑簭鏃堕棿 - String orderSql=" order by endurance_actual_timelong asc "; + String orderSql=" order by endurance_actual_timelong,tb_batt_endurance.deviceid 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.getNum(),"%"+bendurance.getStationName()+"%","%"+bendurance.getStationName1()+"%","%"+bendurance.getStationName2()+"%","%"+bendurance.getStationName5()+"%",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 +105,9 @@ b.setStationName(rs.getString("stationname")); b.setStationName1(rs.getString("stationname1")); b.setStationName2(rs.getString("stationname2")); + b.setStationName5(rs.getString("stationname5")); + Page p=new Page(); + b.setPage(p); list.add(b); } } catch (SQLException e) { @@ -95,6 +117,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; } @@ -105,13 +133,22 @@ public static void main(String[] args) { Batt_enduranceImpl bimpl=new Batt_enduranceImpl(); Batt_endurance ben=new Batt_endurance(); + ben.setNum(1002); ben.setStationName(""); ben.setStationName1(""); ben.setStationName2(""); 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()); } + } -- Gitblit v1.9.1