From 4b309ae0a61b115e432b3aa9bc150feb9f5a16f9 Mon Sep 17 00:00:00 2001 From: 81041 <81041@192.168.10.14> Date: 星期三, 28 十一月 2018 15:35:18 +0800 Subject: [PATCH] 头部查询出已安装设备数和已安装单体个数 --- gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java | 214 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 191 insertions(+), 23 deletions(-) diff --git a/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java b/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java index 15e221f..4b6c4c8 100644 --- a/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java +++ b/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java @@ -72,12 +72,12 @@ String sql = "insert into db_battinf.tb_battinf(" + "StationId,StationName,StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp,FbsDeviceIp_YM,FbsDeviceIp_WG," + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" + - ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,DisCurrMax,station_phone" + + ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone" + ") values('"+binf.getStationId()+"','"+binf.getStationName()+"','"+binf.getStationName1()+"','"+binf.getStationName2()+"','"+binf.getStationName3()+"','"+binf.getStationName4()+"','"+binf.getStationName5()+ "','"+binf.getStationIp()+"',"+binf.getFBSDeviceId()+",'"+binf.getFbsDeviceIp()+"','"+binf.getFbsDeviceIp_YM()+"','"+binf.getFbsDeviceIp_WG()+"','"+binf.getFBSDeviceName()+"',"+binf.getGroupIndexInFBSDevice()+ ","+binf.getBattGroupId()+","+binf.getBattGroupNum()+",'"+binf.getBattGroupName()+"',"+binf.getFloatVolLevel()+","+binf.getOfflineVolLevel()+","+binf.getBattFloatCurrent()+ ","+binf.getMonCount()+","+binf.getMonCapStd()+","+binf.getMonVolStd()+","+binf.getMonResStd()+","+binf.getMonSerStd()+","+binf.getMonVolLowToAvg()+ - ",'"+binf.getBattProducer()+"','"+binf.getBattModel()+"','"+DAOHelper.sdf.format(binf.getBattProductDate())+"','"+DAOHelper.sdf.format(binf.getBattInUseDate())+"',"+binf.getLoad_curr()+","+binf.getDisCurrMax()+",'"+binf.getStation_phone()+"')"; + ",'"+binf.getBattProducer()+"','"+binf.getBattModel()+"','"+DAOHelper.sdf.format(binf.getBattProductDate())+"','"+DAOHelper.sdf.format(binf.getBattInUseDate())+"',"+binf.getLoad_curr()+",'"+binf.getInstall_user()+"',"+binf.getDisCurrMax()+",'"+binf.getStation_phone()+"')"; if(binf.getStationId().equals(maxs)){ maxs++; @@ -119,7 +119,7 @@ String sql = "update db_battinf.tb_battinf set StationId='"+binf.getStationId()+"',StationName='"+binf.getStationName()+"',StationName1='"+binf.getStationName1()+"',StationName2='"+binf.getStationName2()+"',StationName3='"+binf.getStationName3()+"',StationName4='"+binf.getStationName4()+"',StationName5='"+binf.getStationName5()+"',StationIp='"+binf.getStationIp()+"',FBSDeviceId="+binf.getFBSDeviceId()+",FbsDeviceIp='"+binf.getFbsDeviceIp()+"'," + "FBSDeviceName='"+binf.getFBSDeviceName()+"',GroupIndexInFBSDevice="+binf.getGroupIndexInFBSDevice()+",BattGroupNum="+binf.getBattGroupNum()+",BattGroupName='"+binf.getBattGroupName()+"',FloatVolLevel="+binf.getFloatVolLevel()+",OfflineVolLevel="+binf.getOfflineVolLevel()+",BattFloatCurrent="+binf.getBattFloatCurrent()+"," + "MonCount="+binf.getMonCount()+",MonCapStd="+binf.getMonCapStd()+",monVolStd="+binf.getMonVolStd()+",monResStd="+binf.getMonResStd()+",MonSerStd="+binf.getMonSerStd()+",MonVolLowToAvg="+binf.getMonVolLowToAvg()+",BattProducer='"+binf.getBattProducer()+"',BattModel='"+binf.getBattModel()+"',BattProductDate='"+DAOHelper.sdf.format(binf.getBattProductDate())+"',BattInUseDate='"+DAOHelper.sdf.format(binf.getBattInUseDate())+"', " - +" Load_curr="+binf.getLoad_curr()+",DisCurrMax="+binf.getDisCurrMax()+",station_phone='"+binf.getStation_phone()+"' where battgroupId="+binf.getBattGroupId(); + +" Load_curr="+binf.getLoad_curr()+",install_user='"+binf.getInstall_user()+"',DisCurrMax="+binf.getDisCurrMax()+",station_phone='"+binf.getStation_phone()+"' where battgroupId="+binf.getBattGroupId(); sql_str.add(sql); { String msg="淇敼"+binf.getStationName()+"鏈烘埧"+binf.getBattGroupId()+"鐢垫睜缁勭殑淇℃伅"; @@ -139,7 +139,13 @@ boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, null); return bl; } - + //璁剧疆鐢垫睜缁勫厖鐢电數娴侀槇鍊� + public boolean update_charge(Object obj){ + BattInf binf=(BattInf) obj; + String sql = "update db_battinf.tb_battinf set charge_curr_max=? where BattGroupId=?"; + boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{binf.getCharge_curr_max(),binf.getBattGroupId()}); + return bl; + } //鍒犻櫎鐢垫睜缁�(澶氫釜) public boolean del(Object obj) { List<BattInf> list=(List<BattInf>) obj; @@ -170,7 +176,7 @@ String numberSql=" SELECT FOUND_ROWS() number"; String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp_YM,FbsDeviceIp_WG,FbsDeviceIp," + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" + - ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,DisCurrMax,station_phone " + + ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone " + " From db_battinf.tb_battinf " + " Where StationName like ? and StationName1 like ? and StationName2 like ? and StationName5 like ? " + " order by StationId " + @@ -215,6 +221,7 @@ binf.setBattProductDate(rs.getDate("battProductDate")); binf.setBattInUseDate(rs.getDate("battInUseDate")); binf.setLoad_curr(rs.getFloat("load_curr")); + binf.setInstall_user(rs.getString("install_user")); binf.setDisCurrMax(rs.getFloat("disCurrMax")); binf.setStation_phone(rs.getString("station_phone")); list.add(binf); @@ -233,6 +240,76 @@ } return list; } + //鏍规嵁缁存姢鍖哄拰鏈烘埧鍚嶇О鏌ヨ鐢垫睜缁勪俊鎭�(鐢垫睜缁勪俊鎭厤缃�)<-------璺ㄥ煙-----------> + public List searchInform_ky(){ + String sql="select distinct(StationId),StationId_ex,StationName,StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp_YM,FbsDeviceIp_WG,FbsDeviceIp," + + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" + + ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,battGuarantDayCount,SignalId,CInterFaceId,Load_curr,install_user,DisCurrMax,SignalName,Station_install,station_phone " + + " From db_battinf.tb_battinf " + + " order by StationId "; + List<BattInf> list=DAOHelper.executeQueryLimit(sql,DBUtil.getConn(), null,new CallBack() { + + public List getResults(ResultSet rs) { + List list = new ArrayList<BattInf>(); + int id=0; + + try { + while (rs.next()) { + BattInf binf = new BattInf(); + binf.setStationId(rs.getString("stationId")); + binf.setStationId_ex(rs.getString("stationId_ex")); + binf.setStationName(rs.getString("stationName")); + binf.setStationName1(rs.getString("stationName1")); + binf.setStationName2(rs.getString("stationName2")); + binf.setStationName3(rs.getString("stationName3")); + binf.setStationName4(rs.getString("stationName4")); + binf.setStationName5(rs.getString("stationName5")); + binf.setStationIp(rs.getString("stationIp")); + binf.setFBSDeviceId(rs.getInt("fBSDeviceId")); + + binf.setFbsDeviceIp(rs.getString("fbsDeviceIp")); + + binf.setFbsDeviceIp_YM(rs.getString("fbsDeviceIp_YM")); + + binf.setFbsDeviceIp_WG(rs.getString("fbsDeviceIp_WG")); + + binf.setFBSDeviceName(rs.getString("fBSDeviceName")); + binf.setGroupIndexInFBSDevice(rs.getInt("groupIndexInFBSDevice")); + binf.setBattGroupId(rs.getInt("battGroupId")); + binf.setBattGroupNum(rs.getInt("battGroupNum")); + binf.setBattGroupName(rs.getString("battGroupName")); + binf.setFloatVolLevel(rs.getFloat("floatVolLevel")); + binf.setOfflineVolLevel(rs.getFloat("offlineVolLevel")); + binf.setBattFloatCurrent(rs.getFloat("battFloatCurrent")); + binf.setMonCount(rs.getInt("monCount")); + binf.setMonCapStd(rs.getFloat("monCapStd")); + binf.setMonVolStd(rs.getFloat("monVolStd")); + binf.setMonResStd(rs.getFloat("monResStd")); + binf.setMonSerStd(rs.getFloat("monSerStd")); + binf.setMonVolLowToAvg(rs.getFloat("monVolLowToAvg")); + binf.setBattProducer(rs.getString("battProducer")); + binf.setBattModel(rs.getString("battModel")); + binf.setBattProductDate(rs.getDate("battProductDate")); + binf.setBattInUseDate(rs.getDate("battInUseDate")); + binf.setBattGuarantDayCount(rs.getInt("battGuarantDayCount")); + binf.setSignalId(rs.getString("signalId")); + binf.setCInterFaceId(rs.getInt("cInterFaceId")); + binf.setStation_install(rs.getInt("station_install")); + binf.setLoad_curr(rs.getFloat("load_curr")); + binf.setInstall_user(rs.getString("install_user")); + binf.setDisCurrMax(rs.getFloat("disCurrMax")); + binf.setStation_phone(rs.getString("station_phone")); + list.add(binf); + + } + } catch (SQLException e) { + e.printStackTrace(); + } + return list; + } + }); + return list; + } //鏍规嵁缁存姢鍖哄拰鏈烘埧鍚嶇О鏌ヨ鐢垫睜缁勪俊鎭�(鐢垫睜缁勪俊鎭厤缃�) public List searchInform1(Object obj){ Batt_Maint_Dealarm bmd=(Batt_Maint_Dealarm) obj; @@ -240,7 +317,7 @@ Page page=bmd.getPage(); Connection conn= DBUtil.getConn(); String numberSql=" SELECT FOUND_ROWS() number"; - String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationId_ex,StationName1,StationName2,StationName3,StationName,FBSDeviceId " + + String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationId_ex,StationName1,StationName2,StationName3,StationName5,StationName,FBSDeviceId " + " From db_battinf.tb_battinf " + " limit ?,?"; List<BattInf> list=DAOHelper.executeQueryLimit(sql,conn, new Object[]{(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()},new CallBack() { @@ -256,6 +333,7 @@ binf.setStationName1(rs.getString("stationName1")); binf.setStationName2(rs.getString("stationName2")); binf.setStationName3(rs.getString("stationName3")); + binf.setStationName5(rs.getString("stationName5")); binf.setFBSDeviceId(rs.getInt("fBSDeviceId")); binf.setStationName(rs.getString("stationName")); binf.setStationId_ex(rs.getString("stationId_ex")); @@ -975,7 +1053,7 @@ return list; } - //鏌ヨ澶囨�绘暟 + //鏌ヨ澶囨�绘暟(宸茬粡瀹夎) /*public int serchByDeviceId(){ String sql=" SELECT COUNT(DISTINCT fbsdeviceid) number FROM db_battinf.tb_battinf limit 1"; List<BattInf> list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{}, new CallBack() { @@ -1005,11 +1083,11 @@ public int serchByDeviceId(Object obj){ User_inf uinf=(User_inf) obj; String sql=" SELECT COUNT(DISTINCT fbsdeviceid) number FROM db_battinf.tb_battinf " + - " left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " + - " 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=? " + - " limit 1"; + " where StationId in(" + + " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id " + + " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " + + " ) " + + " and db_battinf.tb_battinf.station_install=1"; List<BattInf> list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { public List getResults(ResultSet rs) { @@ -1033,6 +1111,93 @@ number=list.get(list.size()-1).getNum(); } return number; + } + //鏌ュ崟浣撴�绘暟(宸插畨瑁呯殑鍗曚綋) + public int serchByInstall_count(Object obj){ + User_inf uinf=(User_inf) obj; + String sql=" SELECT sum(moncount) as nums FROM db_battinf.tb_battinf " + + " where StationId in(" + + " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id " + + " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " + + " ) " + + " and db_battinf.tb_battinf.station_install=1"; + //System.out.println(sql); + List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { + + public List getResults(ResultSet rs) { + List list=new ArrayList(); + int nums=0;//鍗曚綋鎬绘暟 + try { + while(rs.next()){ + nums=rs.getInt("nums"); + list.add(nums); + } + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + return list; + } + + }); + int number=0;//瀛樻斁鎬绘暟 + if(list!=null&&list.size()>0){ + number=(Integer) list.get(list.size()-1); + } + return number; + } + //鏌ヨ璁惧鎬绘暟(鍏ㄩ儴) + public List serchByDeviceId_all(Object obj){ + User_inf uinf=(User_inf) obj; + String sql=" SELECT DISTINCT fbsdeviceid,station_install,monvolstd FROM db_battinf.tb_battinf " + + " where StationId in(" + + " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id " + + " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " + + " ) "; + List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { + + public List getResults(ResultSet rs) { + List list=new ArrayList(); + int num_2_install=0;//2v宸插畨瑁� + int num_2=0;//2v鍏ㄩ儴 + int num_12_install=0;//12v宸插畨瑁� + int num_12=0;//12v鍏ㄩ儴 + int num_install=0;//宸插畨瑁� + int num=0;//鍏ㄩ儴 + try { + while(rs.next()){ + int insatll=rs.getInt("station_install"); + float monvolstd=rs.getFloat("monvolstd"); + if(insatll==1){ + num_install+=1; + if(monvolstd==2.0){ + num_2_install+=1; + }else{ + num_12_install+=1; + } + } + if(monvolstd==2.0){ + num_2+=1; + }else{ + num_12+=1; + } + num+=1; + } + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + list.add(num_2_install); + list.add(num_2); + list.add(num_12_install); + list.add(num_12); + list.add(num_install); + list.add(num); + return list; + } + + }); + return list; } //-----------鏍规嵁钃勭數姹犵粍鏌ヤ笉閲嶅鐨凪onCount(monNum)锛堝崟浣撶紪鍙凤級 public List serchByMonNum(Object obj){ @@ -1061,7 +1226,7 @@ }); return list; } - + //瀹炴椂鍘嗗彶鏈哄巻鍗� public List serchByBattgroupId(Object obj){ BattInf binf=(BattInf)obj; String sql="select * from db_battinf.tb_battinf where battgroupid=?"; @@ -1162,7 +1327,7 @@ batt.setSignalId(rs.getString("SignalId")); batt.setCInterFaceId(Integer.parseInt(rs.getString("CInterFaceId"))); - + batt.setInstall_user(rs.getString("install_user")); batt.setSignalName(rs.getString("SignalName")); int BattGuarantDayCount=rs.getInt("BattGuarantDayCount")-ActionUtil.daysBetween(rs.getDate("BattInUseDate"), new Date());//鍓╀綑淇濅慨澶╂暟 batt.setBattGuarantDayCount(BattGuarantDayCount); @@ -3246,7 +3411,7 @@ " where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " + " and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " + " and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " + - " and db_user.tb_user_inf.uid=?" + + " and db_user.tb_user_inf.uid=? and db_battinf.tb_battinf.Station_install=1 " + " limit 1"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { @@ -3910,9 +4075,9 @@ //棣栭〉涓婃牴鎹畇tationid鏌ヨ鐢垫睜缁勭殑鏈哄巻鍗� public List serchBattAllInfoByStationId(Object obj){ BattInf binf=(BattInf) obj; - String sql="select * from db_battinf.tb_battinf,db_battinf.tb_battinf_ex " + - " where db_battinf.tb_battinf.stationId=db_battinf.tb_battinf_ex.stationid " + - " and db_battinf.tb_battinf.stationId=? " + + String sql="select * from db_battinf.tb_battinf " + + " left outer join db_battinf.tb_battinf_ex on db_battinf.tb_battinf.stationId=db_battinf.tb_battinf_ex.stationid " + + " where db_battinf.tb_battinf.stationId=? " + " order by db_battinf.tb_battinf.battgroupid"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getStationId()}, new CallBack() { @@ -4011,7 +4176,7 @@ batt.setSignalId(rs.getString("SignalId")); batt.setCInterFaceId(Integer.parseInt(rs.getString("CInterFaceId"))); - + batt.setInstall_user(rs.getString("install_user")); batt.setSignalName(rs.getString("SignalName")); int BattGuarantDayCount=rs.getInt("BattGuarantDayCount")-ActionUtil.daysBetween(rs.getDate("BattInUseDate"), new Date());//鍓╀綑淇濅慨澶╂暟 batt.setBattGuarantDayCount(BattGuarantDayCount); @@ -4096,7 +4261,7 @@ binf.setStationName3(""); binf.setBattGroupName(""); binf.setBattProducer("1"); - binf.setStationId("42000002"); + binf.setStationId("42000575"); User_inf uinf=new User_inf(); uinf.setUId(1002); @@ -4125,11 +4290,14 @@ //List<BattInf> list=biml.serchGroupByInfor(binf); //List<BattInf> list=biml.searchInform1(bmd); //<BattInf> list=biml.serchStationName5(binf); - List<BattInf> list=biml.serchBattAllInfoByStationId(binf); + /*List<BattInf> list=biml.serchBattAllInfoByStationId(binf); + //List<BattInf> list=biml.searchInform_ky(); for (BattInf b : list) { System.out.println(b); } - System.out.println(list.size()); + System.out.println(list.size());*/ + int nums=biml.serchByInstall_count(uinf); + System.out.println(nums); } public List getResults(ResultSet rs) { @@ -4163,7 +4331,7 @@ binf.setBattProducer(rs.getString("battProducer")); binf.setBattProductDate(rs.getDate("battProductDate")); binf.setBattInUseDate(rs.getDate("battInUseDate")); - + //minf.setFault_type(rs.getString("fault_type")); if (rs.getString("maint_done_time") != null) mainf.setMaint_done_time(DAOHelper.sdf.parse(rs -- Gitblit v1.9.1