package com.whyc.service;
|
|
import com.whyc.mapper.CallBack;
|
import com.whyc.pojo.db_batt_testdata.BatttestdataId;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.sql.ResultSet;
|
import java.sql.SQLException;
|
import java.util.ArrayList;
|
import java.util.LinkedList;
|
import java.util.List;
|
|
@Service
|
public class SubTablePageInfoService {
|
@Autowired
|
private MybatisSqlExecuteService sqlExecuteService;
|
//获取设备某次记录详细的单体放电过程
|
public List<BatttestdataId> getTdataById(Integer devId, Integer testRecordCount) {
|
String sql="select * from db_batt_testdata.tb_batttestdata_" +devId
|
+" where test_record_count="+testRecordCount;
|
sql+=" ORDER BY test_starttime asc ";
|
System.out.println(sql);
|
List list = sqlExecuteService.executeQuery_call(sql, new CallBack() {
|
@Override
|
public List getResults(ResultSet rs) throws SQLException {
|
List<BatttestdataId> list=new ArrayList<>();
|
while (rs.next()){
|
BatttestdataId tdata=new BatttestdataId();
|
tdata.setNum(rs.getInt("num"));
|
tdata.setDevId(rs.getInt("dev_id"));
|
tdata.setBattIdx(rs.getInt("batt_idx"));
|
tdata.setTestRecordCount(rs.getInt("test_record_count"));
|
tdata.setTestType(rs.getInt("test_type"));
|
tdata.setRecordNum(rs.getInt("record_num"));
|
tdata.setTestStarttime(rs.getTimestamp("test_starttime"));
|
tdata.setRecordTime(rs.getTimestamp("record_time"));
|
tdata.setTestTimelong(rs.getInt("test_timelong"));
|
tdata.setGroupVol(rs.getDouble("group_vol"));
|
tdata.setTestCurr(rs.getDouble("test_curr"));
|
tdata.setTestCap(rs.getDouble("test_cap"));
|
tdata.setMonNum(rs.getInt("mon_num"));
|
tdata.setMonVol(rs.getDouble("mon_vol"));
|
tdata.setMonTmp(rs.getDouble("mon_tmp"));
|
tdata.setMonCurr(rs.getDouble("mon_curr"));
|
tdata.setMonCap(rs.getDouble("mon_cap"));
|
tdata.setMonWh(rs.getDouble("mon_wh"));
|
tdata.setMonState(rs.getInt("mon_state"));
|
tdata.setMonFault(rs.getInt("mon_fault"));
|
list.add(tdata);
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
|
|
/*//查询DevAlm历史告警数量
|
public int getCountForDevAlm(DevAlarmHisDto alm) {
|
String sql="select count(distinct num) as number from db_ckpwrdev_alarm." +alm.getRecordYear()
|
+" where 1=1 ";
|
|
if(alm.getAlmStartTime()!=null){
|
sql+=" and alm_starttime >='"+ DateUtil.format_YYYY_MM_DD_HH_MM_SS(alm.getAlmStartTime())+"' ";
|
}
|
if(alm.getAlmEndTime()!=null){
|
sql+=" and alm_endtime <='"+DateUtil.format_YYYY_MM_DD_HH_MM_SS(alm.getAlmEndTime())+"' ";
|
}
|
if(alm.getDevType()!=0){
|
sql+=" and dev_type="+alm.getDevType();
|
}
|
if(alm.getAlmLevel()!=0){
|
sql+=" and alm_level="+alm.getAlmLevel();
|
}
|
List list = sqlExecuteService.executeQuery_call(sql, new CallBack() {
|
@Override
|
public List getResults(ResultSet rs) throws SQLException {
|
LinkedList<Object> temp = new LinkedList<>();
|
try {
|
while (rs.next())
|
temp.add(rs.getInt("number"));
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
return temp;
|
}
|
});
|
int num =0;
|
if(list!=null){
|
num= (int) list.get(0);
|
}
|
return num;
|
}
|
//查询devalm历史告警
|
public List getListDevAlm(DevAlarmHisDto alm){
|
String sql="select * from db_ckpwrdev_alarm." +alm.getRecordYear()
|
+" where 1=1 ";
|
if(alm.getAlmStartTime()!=null){
|
sql+=" and alm_starttime >='"+ DateUtil.format_YYYY_MM_DD_HH_MM_SS(alm.getAlmStartTime())+"' ";
|
}
|
if(alm.getAlmEndTime()!=null){
|
sql+=" and alm_endtime <='"+DateUtil.format_YYYY_MM_DD_HH_MM_SS(alm.getAlmEndTime())+"' ";
|
}
|
if(alm.getDevType()!=0){
|
sql+=" and dev_type="+alm.getDevType();
|
}
|
if(alm.getAlmLevel()!=0){
|
sql+=" and alm_level="+alm.getAlmLevel();
|
}
|
sql+=" ORDER BY alm_starttime desc limit "+alm.getLimitStart()+","+alm.getLimitEnd()+" ";
|
List list = sqlExecuteService.executeQuery_call(sql, new CallBack() {
|
@Override
|
public List getResults(ResultSet rs) throws SQLException {
|
List<CKPowerDevAlarmHistory> list=new ArrayList<>();
|
while (rs.next()){
|
CKPowerDevAlarmHistory ph=new CKPowerDevAlarmHistory();
|
ph.setNum(rs.getLong("num"));
|
ph.setPowerDeviceId(rs.getInt("power_device_id"));
|
ph.setAlmId(rs.getInt("alm_id"));
|
ph.setAlmName(rs.getString("alm_name"));
|
ph.setDevType(rs.getInt("dev_type"));
|
ph.setAlmLevel(rs.getInt("alm_level"));
|
ph.setAlmStartTime(rs.getTimestamp("alm_starttime"));
|
ph.setAlmEndTime(rs.getTimestamp("alm_endtime"));
|
ph.setAlmIsConfirmed(rs.getInt("alm_is_confirmed"));
|
ph.setAlmConfirmedTime(rs.getTimestamp("alm_confirmed_time"));
|
ph.setAlmClearedType(rs.getInt("alm_cleared_type"));
|
list.add(ph);
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//查询所有的历史时间表
|
public List getDevAlmHisList() {
|
String sql="SELECT table_name FROM information_schema.tables WHERE table_name LIKE 'tb_ckpowerdev_alarm_history_%'";
|
List list = sqlExecuteService.executeQuery_call(sql, new CallBack() {
|
@Override
|
public List getResults(ResultSet rs) throws SQLException {
|
List<String> list=new ArrayList<>();
|
while (rs.next()){
|
list.add(rs.getString("table_name"));
|
}
|
return list;
|
}
|
});
|
return list;
|
}*/
|
|
}
|