From 1c25524f12918b63af745a79f59d0e94f1ec6d3c Mon Sep 17 00:00:00 2001 From: 81041 <81041@192.168.10.16> Date: 星期二, 11 十二月 2018 15:25:44 +0800 Subject: [PATCH] 修改 --- gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java | 223 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 188 insertions(+), 35 deletions(-) diff --git a/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java b/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java index f11a5a4..1fad757 100644 --- a/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java +++ b/gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java @@ -12,11 +12,13 @@ import javax.persistence.Id; import javax.sql.ConnectionEvent; +import javax.swing.text.StyledEditorKit.BoldAction; import sun.security.action.GetBooleanAction; import com.fgkj.actions.ActionUtil; import com.fgkj.dao.BaseDAO; +import com.fgkj.dao.BattinfGroupFactory; import com.fgkj.dao.CallBack; import com.fgkj.dao.DAOHelper; import com.fgkj.dao.FBS9100_ComBase; @@ -34,6 +36,7 @@ import com.fgkj.dto.Batttestdata; import com.fgkj.dto.Batttestdata_inf; import com.fgkj.dto.Batttestdatastop; +import com.fgkj.dto.Database_backup; import com.fgkj.dto.Limit; import com.fgkj.dto.Page; import com.fgkj.dto.RoleLimit; @@ -53,11 +56,12 @@ //鑾峰彇褰撳墠鏈�澶х殑stationid鍜宐attgroupid int maxs=42000000;//鏈�澶tationid int maxb=1000001;//鏈�澶attgroupid - List maxList=(new BattInfImpl()).searchMaxId(); - if(maxList!=null&&maxList.size()>0){ + maxs=BattinfGroupFactory.searchStationId(); + maxb=BattinfGroupFactory.searchMaxBattgroupId(); + /*if(maxList!=null&&maxList.size()>0){ maxs=(Integer) maxList.get(0)+1; - maxb=(Integer) maxList.get(1)+1; - } + //maxb=(Integer) maxList.get(1)+1; + }*/ if(list!=null && list.size()>0){ for (int i = 0; i < list.size(); i++) { BattInf binf=list.get(i); @@ -72,12 +76,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,install_user,DisCurrMax,station_phone" + + ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone,Station_install" + ") 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.getInstall_user()+"',"+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()+"',"+binf.getStation_install()+")"; if(binf.getStationId().equals(maxs)){ maxs++; @@ -91,7 +95,13 @@ } } } - boolean bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); + Boolean bl=false; + boolean en=BattinfGroupFactory.backup_battinf(); + if(en){ + bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); + }else{ + return false; + } (new User_logService()).addPro(listU);//灏嗙敤鎴风殑鎿嶄綔璁板綍涓嬫潵 return bl; @@ -110,16 +120,17 @@ binf.setStationId((String) listS.get(listS.size()-1)); }else{ //鑾峰彇褰撳墠鏈�澶х殑stationid - List maxList=(new BattInfImpl()).searchMaxId(); - if(maxList!=null&&maxList.size()>0){ + int maxs=BattinfGroupFactory.searchStationId(); + binf.setStationId(String.valueOf(maxs)); + /*if(maxList!=null&&maxList.size()>0){ int maxs=(Integer) maxList.get(0)+1; binf.setStationId(String.valueOf(maxs)); - } + }*/ } 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()+",install_user='"+binf.getInstall_user()+"',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()+"',Station_install="+binf.getStation_install()+" where battgroupId="+binf.getBattGroupId(); sql_str.add(sql); { String msg="淇敼"+binf.getStationName()+"鏈烘埧"+binf.getBattGroupId()+"鐢垫睜缁勭殑淇℃伅"; @@ -128,8 +139,16 @@ } } } + + + Boolean bl=false; + boolean en=BattinfGroupFactory.backup_battinf(); + if(en){ + bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); + }else{ + return false; + } (new User_logService()).addPro(listU);//灏嗙敤鎴风殑鎿嶄綔璁板綍涓嬫潵 - Boolean bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); return bl; } //淇敼鐢垫睜淇℃伅閰嶇疆(ip鍦板潃,鎺╃爜鍜岀綉鍏�) @@ -139,7 +158,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; @@ -157,8 +182,14 @@ } } } + Boolean bl=false; + boolean en=BattinfGroupFactory.backup_battinf(); + if(en){ + bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); + }else{ + return false; + } (new User_logService()).addPro(listU);//灏嗙敤鎴风殑鎿嶄綔璁板綍涓嬫潵 - Boolean bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_str); return bl; } //鏍规嵁缁存姢鍖哄拰鏈烘埧鍚嶇О鏌ヨ鐢垫睜缁勪俊鎭�(鐢垫睜缁勪俊鎭厤缃�) @@ -168,9 +199,9 @@ Page page=bmd.getPage(); Connection conn= DBUtil.getConn(); 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," + String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),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,Load_curr,install_user,DisCurrMax,station_phone " + + ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone,Station_install " + " From db_battinf.tb_battinf " + " Where StationName like ? and StationName1 like ? and StationName2 like ? and StationName5 like ? " + " order by StationId " + @@ -185,6 +216,7 @@ while (rs.next()) { BattInf binf = new BattInf(); binf.setStationId(rs.getString("stationId")); + binf.setStationName(rs.getString("stationName")); binf.setStationName1(rs.getString("stationName1")); binf.setStationName2(rs.getString("stationName2")); binf.setStationName3(rs.getString("stationName3")); @@ -218,6 +250,7 @@ binf.setInstall_user(rs.getString("install_user")); binf.setDisCurrMax(rs.getFloat("disCurrMax")); binf.setStation_phone(rs.getString("station_phone")); + binf.setStation_install(rs.getInt("station_install")); list.add(binf); } @@ -348,8 +381,8 @@ return list; } //娣诲姞鐢垫睜缁勬椂鏌ヨ鍑烘渶澶х殑鏈烘埧id鍜岀數姹犵粍id - public List searchMaxId(){ - String sql="select max(stationid) as maxs,max(battgroupid) as maxb from db_battinf.tb_battinf limit 1"; + public int searchMaxId(){ + String sql="select max(StationId) as id from db_battinf.tb_battinf limit 1"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { public List getResults(ResultSet rs) { @@ -357,16 +390,16 @@ try { while(rs.next()){ - int maxs=42000000; - int maxb=1000001; - if(rs.getString("maxs") != null){ - maxs=Integer.parseInt(rs.getString("maxs")); + int maxs=42010000; + //int maxb=1000001; + if(rs.getString("id") != null){ + maxs=Integer.parseInt(rs.getString("id")); } - if(rs.getInt("maxb")!=0){ + /*if(rs.getInt("maxb")!=0){ maxb=rs.getInt("maxb"); - } + }*/ list.add(maxs); - list.add(maxb); + //list.add(maxb); } } catch (SQLException e) { // TODO Auto-generated catch block @@ -375,7 +408,38 @@ return list; } }); - return list; + int stationid=0; + if(list!=null&&list.size()>0){ + stationid=(Integer) list.get(list.size()-1); + } + return stationid; + } + //鏌ヨ鍑哄綋鍓嶅瓨鍦ㄥ唴瀛樹腑鏈�澶х殑璁惧鐨刬d(寰堥噸瑕�**********) + public int searchMaxdevId_binf(){ + String sql="select max(FbsDeviceId) as id from db_battinf.tb_battinf limit 1"; + List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { + + public List getResults(ResultSet rs) { + List list=new ArrayList(); + try { + while(rs.next()){ + int dev_id=0; + if(rs.getString("id")!=null){} + dev_id=rs.getInt("id"); + list.add(dev_id); + } + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + return list; + } + }); + int dev_id=0; + if(list!=null&&list.size()>0){ + dev_id=(Integer) list.get(list.size()-1); + } + return dev_id; } //鍒ゆ柇鏂板鐨勭數姹犵粍鏄惁瀛樺湪 public List judgeBatt(Object obj){ @@ -1047,7 +1111,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() { @@ -1077,11 +1141,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=? and db_battinf.tb_battinf.Station_install=1 " + - " 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) { @@ -1105,6 +1169,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){ @@ -3318,7 +3469,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() { @@ -4197,12 +4348,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) { -- Gitblit v1.9.1