| | |
| | | }
|
| | | });
|
| | | }
|
| | |
|
| | | //历史数据查询<-------跨域----------->
|
| | | public List serchByCondition_ky(Object obj) {
|
| | | final Batttestdata_inf bti=(Batttestdata_inf)obj;
|
| | | String sql="select num,BattGroupId,test_record_count,test_record_count_ex,test_type,record_time_interval,data_new,data_available,record_num,test_starttime,test_starttime_ex,test_starttype,record_time,test_timelong,test_stoptype,group_vol,test_curr,test_cap,max_monnum,max_monvol,min_monnum,min_monvol,mon_num,mon_vol,upload_usr_id " +
|
| | | " from db_batt_testdata.tb_batttestdata_inf where BattGroupId=? " +
|
| | | " and db_batt_testdata.tb_batttestdata_inf.data_available=1 " +
|
| | | " order by test_type asc,test_starttime desc ";
|
| | | return DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{bti.getBattGroupId()}, new CallBack() {
|
| | | |
| | | public List getResults(ResultSet rs) {
|
| | | List list=new ArrayList();
|
| | | try {
|
| | | while(rs.next()){
|
| | | Batttestdata_inf b=new Batttestdata_inf();
|
| | | b.setNum(rs.getInt("num"));
|
| | | b.setBattGroupId(rs.getInt("BattGroupId"));
|
| | | b.setTest_record_count(rs.getInt("test_record_count"));
|
| | | b.setTest_record_count_ex(rs.getInt("test_record_count_ex"));
|
| | | b.setTest_type(rs.getInt("test_type"));
|
| | | b.setRecord_time_interval(rs.getInt("record_time_interval"));
|
| | | b.setData_new(rs.getInt("data_new"));
|
| | | b.setData_available(rs.getInt("data_available")); |
| | | b.setRecord_num(rs.getInt("record_num"));
|
| | | b.setTest_starttime(rs.getTimestamp("test_starttime"));
|
| | | b.setTest_starttime_ex(rs.getTimestamp("test_starttime_ex"));
|
| | | b.setTest_starttype(rs.getInt("test_starttype"));
|
| | | b.setRecord_time(rs.getTimestamp("record_time"));
|
| | | b.setTest_timelong(rs.getInt("test_timelong"));
|
| | | b.setTest_stoptype(rs.getInt("test_stoptype"));
|
| | | //放电终止原因
|
| | | |
| | | if(bti.getNum()/100000==6185){
|
| | | b.setTest_stoptype_reason(BattTestData.getStopType_6185(b.getTest_stoptype())); |
| | | }else if(bti.getNum()/100000==4016){
|
| | | b.setTest_stoptype_reason(BattTestData.getStopType_4016(b.getTest_stoptype()));
|
| | | }else{
|
| | | b.setTest_stoptype_reason(BattTestData.getStopType(b.getTest_starttype(), b.getTest_stoptype()));
|
| | | }
|
| | | b.setGroup_vol(rs.getFloat("group_vol"));
|
| | | b.setTest_curr(rs.getFloat("test_curr"));
|
| | | b.setTest_cap(rs.getFloat("test_cap"));
|
| | | b.setMax_monnum(rs.getInt("max_monnum"));
|
| | | b.setMax_monvol(rs.getFloat("max_monvol"));
|
| | | b.setMin_monnum(rs.getInt("min_monnum"));
|
| | | b.setMin_monvol(rs.getFloat("min_monvol"));
|
| | | b.setMon_num(rs.getInt("mon_num"));
|
| | | b.setMon_vol(rs.getFloat("mon_vol"));
|
| | | b.setUpload_usr_id(rs.getInt("upload_usr_id"));
|
| | | list.add(b);
|
| | | }
|
| | | } catch (SQLException e) {
|
| | | e.printStackTrace();
|
| | | } |
| | | return list;
|
| | | }
|
| | | });
|
| | | }
|
| | | //6.2根据battgroupi和test_starttime查test_record_count
|
| | | public List serchTest_record_count(Object obj) {
|
| | | Batttestdata_inf tdata=(Batttestdata_inf)obj;
|
| | |
| | | String baseSql=" SELECT DISTINCT(tb_batttestdata_inf.BattGroupId),tb_batttestdata_inf.test_starttime,tb_batttestdata_inf.record_time,tb_batttestdata_inf.test_cap," +
|
| | | " tb_batttestdata_inf.max_monvol,tb_batttestdata_inf.min_monvol,tb_batttestdata_inf.test_record_count,tb_batttestdata_inf.test_curr " +
|
| | | ",db_battinf.tb_battinf.load_curr AS curr " +
|
| | | ",db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.MonCapStd,db_battinf.tb_battinf.monvolstd,db_battinf.tb_battinf.battgroupname " +
|
| | | ",db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.stationname2,db_battinf.tb_battinf.stationname5,db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.MonCapStd,db_battinf.tb_battinf.monvolstd,db_battinf.tb_battinf.battgroupname " +
|
| | | " FROM db_batt_testdata.tb_batttestdata_inf " +
|
| | | " LEFT OUTER JOIN db_battinf.tb_battinf ON db_batt_testdata.tb_batttestdata_inf.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
|
| | | " WHERE tb_batttestdata_inf.test_starttime>=? and tb_batttestdata_inf.test_starttime<=? " +
|
| | | " and db_batt_testdata.tb_batttestdata_inf.data_available=1 ";
|
| | | //机房维护区选择
|
| | | String stationSql=" AND db_battinf.tb_battinf.stationname like ? and db_battinf.tb_battinf.stationname1 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 ? ";
|
| | | baseSql+=stationSql;
|
| | | String endSql=" ORDER BY db_battinf.tb_battinf.stationid asc,tb_batttestdata_inf.BattGroupId asc,db_batt_testdata.tb_batttestdata_inf.test_starttime desc ";
|
| | | sql=baseSql+endSql;
|
| | |
| | | List list=DAOHelper.executeQuery(sql, DBUtil.getConn(),
|
| | | new Object[]{
|
| | | binf.getBattProductDate(),binf.getBattProductDate1(),
|
| | | "%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%"
|
| | | "%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%","%"+binf.getStationName2()+"%","%"+binf.getStationName5()+"%"
|
| | | }, new CallBack() {
|
| | |
|
| | | public List getResults(ResultSet rs) {
|
| | |
| | | BattInf binf=new BattInf();
|
| | | binf.setStationId(rs.getString("stationId"));
|
| | | binf.setStationName1(rs.getString("stationName1"));
|
| | | binf.setStationName2(rs.getString("stationName2"));
|
| | | binf.setStationName5(rs.getString("stationName5"));
|
| | | binf.setStationName(rs.getString("stationName"));
|
| | | binf.setMonVolStd(rs.getFloat("monVolStd"));
|
| | | binf.setMonCapStd(rs.getFloat("monCapStd"));
|
| | |
| | | "mon_res,mon_ser,mon_conn_res,mon_cap " +
|
| | | ",BINARY(curr1+curr2+curr3) AS curr " +
|
| | | ",db_battinf.tb_battinf.stationid,db_battinf.tb_battinf.moncapstd,db_battinf.tb_battinf.monvolstd " +
|
| | | ",db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.BattGroupName,db_battinf.tb_battinf.deviceName " +
|
| | | ",db_battinf.tb_battinf.stationname,db_battinf.tb_battinf.stationname1,db_battinf.tb_battinf.stationname2,db_battinf.tb_battinf.stationname5,db_battinf.tb_battinf.BattGroupName,db_battinf.tb_battinf.deviceName " +
|
| | | ",MAX(binary tb_batt_rtdata.mon_vol) as maxmonvol,MIN(binary tb_batt_rtdata.mon_vol) as minmonvol " +
|
| | | "FROM db_ram_db.tb_batt_rtstate " +
|
| | | "LEFT OUTER JOIN db_ram_db.tb_batt_rtdata ON tb_batt_rtstate.BattGroupId = tb_batt_rtdata.BattGroupId " +
|
| | |
| | | "LEFT OUTER JOIN db_ram_db.cmcc_power_data ON db_battinf.tb_battinf.fbsdeviceid=cmcc_power_data.dev_id " +
|
| | | "where ";
|
| | | //机房维护区选择
|
| | | String stationSql=" db_battinf.tb_battinf.stationname like ? AND db_battinf.tb_battinf.stationname1 like ? ";
|
| | | String stationSql=" 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 ? ";
|
| | | baseSql+=stationSql;
|
| | | //电池状态
|
| | | String stateSqlT=" AND batt_state=? ";
|
| | |
| | | String orderSql=" order by db_battinf.tb_battinf.stationid asc";
|
| | | sql=baseSql+endSql+orderSql;
|
| | | //System.out.println(sql);
|
| | | List<Batt_State> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{"%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%"
|
| | | List<Batt_State> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{"%"+binf.getStationName()+"%","%"+binf.getStationName1()+"%","%"+binf.getStationName2()+"%","%"+binf.getStationName5()+"%"
|
| | | ,binf.getNum()}, new CallBack() {
|
| | |
|
| | | public List getResults(ResultSet rs) {
|
| | |
| | | binf.setDeviceName(rs.getString("deviceName"));
|
| | | binf.setStationName(rs.getString("stationName"));
|
| | | binf.setStationName1(rs.getString("stationName1"));
|
| | | binf.setStationName2(rs.getString("stationName2"));
|
| | | binf.setStationName5(rs.getString("stationName5"));
|
| | | binf.setStationName9(BattTestData.battState(rs.getInt("batt_state")));
|
| | |
|
| | | state.setBstate(bstate);
|
| | |
| | | });
|
| | | return list;
|
| | | }
|
| | |
|
| | | //电池配组用到(筛选出有效的最近的一次节能放电技术)
|
| | | public List Batt_selecteffectiveBatt(Object obj,float param){
|
| | | BattInf binf=(BattInf) obj;
|
| | | String sql="SELECT distinct battGroupId,test_starttime,record_time,test_cap,max_monvol,min_monvol,test_record_count,test_curr FROM db_batt_testdata.tb_batttestdata_inf "
|
| | | + " WHERE BattGroupId =? " |
| | | + " AND data_available=1 AND data_new = 1 AND " |
| | | + " test_type = 3 AND test_starttype = 3 AND " //判断是节能放电
|
| | | + " abs(test_cap) >?*? " //判断测试数据容量是否有效
|
| | | + " ORDER BY test_record_count DESC LIMIT 1 ";
|
| | | |
| | | List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId(),binf.getMonCapStd(),param}, new CallBack() {
|
| | | |
| | | public List getResults(ResultSet rs) {
|
| | | List list=new ArrayList();
|
| | | try {
|
| | | while(rs.next()){
|
| | | Batttestdata_inf tinf=new Batttestdata_inf();
|
| | | tinf.setBattGroupId(rs.getInt("battGroupId"));
|
| | | if(rs.getString("test_starttime")!=null)
|
| | | tinf.setTest_starttime(rs.getTimestamp("test_starttime"));
|
| | | if(rs.getString("record_time")!=null)
|
| | | tinf.setRecord_time(rs.getTimestamp("record_time"));
|
| | | tinf.setTest_cap(rs.getFloat("test_cap"));
|
| | | tinf.setMax_monvol(rs.getFloat("max_monvol"));
|
| | | tinf.setMin_monvol(rs.getFloat("min_monvol"));
|
| | | tinf.setTest_record_count(rs.getInt("test_record_count"));
|
| | | tinf.setTest_curr(rs.getFloat("test_curr"));
|
| | | list.add(tinf);
|
| | | }
|
| | | } catch (SQLException e) {
|
| | | // TODO Auto-generated catch block
|
| | | e.printStackTrace();
|
| | | }
|
| | | return list;
|
| | | }
|
| | | });
|
| | | return list;
|
| | | }
|
| | | |
| | | public static void main(String[] args) throws ParseException {
|
| | | Batttestdata_infDAOImpl bimpl=new Batttestdata_infDAOImpl();
|
| | | Batttestdata_inf tdata=new Batttestdata_inf();
|
| | |
| | | Batt_Maint_Dealarm bmd=new Batt_Maint_Dealarm();
|
| | | bmd.setTdata(tdata);
|
| | | bmd.setBinf(binf);
|
| | | List<Batt_Maint_Dealarm> list=bimpl.serchByInfo(bmd);
|
| | | /*List<Batt_Maint_Dealarm> list=bimpl.serchByInfo(bmd);
|
| | | for (Batt_Maint_Dealarm b : list) {
|
| | | System.out.println(b);
|
| | | }
|
| | | System.out.println(list.size());
|
| | | */
|
| | | Batttestdata_inf tinf=new Batttestdata_inf();
|
| | | tinf.setBattGroupId(1002095);
|
| | | tinf.setNum(910000577);
|
| | | List<Batttestdata_inf> list=bimpl.serchByCondition_ky(tinf);
|
| | | for (Batttestdata_inf b : list) {
|
| | | System.out.println(b);
|
| | | }
|
| | | System.out.println(list.size());
|
| | |
|
| | | }
|
| | |
|