From 592720573d6b194bbac25b25b6c619376cb9c0a4 Mon Sep 17 00:00:00 2001
From: hdw <496960745@qq.com>
Date: 星期四, 13 十二月 2018 13:38:34 +0800
Subject: [PATCH] 修改电池查询面板中正则的验证
---
gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 217 insertions(+), 11 deletions(-)
diff --git a/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java b/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
index 4153aee..bf9c9c2 100644
--- a/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
+++ b/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
@@ -10,9 +10,12 @@
import com.fgkj.dao.CallBack;
import com.fgkj.dao.DAOHelper;
import com.fgkj.dao.LimitNumberFactory;
+import com.fgkj.dao.UinfDaoFactory;
import com.fgkj.db.DBUtil;
import com.fgkj.dto.BattInf;
+import com.fgkj.dto.BattMap_information;
import com.fgkj.dto.Page;
+import com.fgkj.dto.User_inf;
import com.fgkj.dto.ram.Bts_station_state;
public class Bts_station_stateImpl implements BaseDAO,CallBack{
@@ -48,14 +51,77 @@
Connection conn=DBUtil.getConn();
String numberSql="SELECT FOUND_ROWS() number";//瀛樻斁鎬绘暟
String sql="select SQL_CALC_FOUND_ROWS distinct station_id,dev_id,record_datetime,station_stat,station_poff_start_time,station_fadian_start_time" +
- " ,station_diaozhan_start_time,station_temp,station_damp,station_dooropen_start_time,station_xuhang_start_time" +
- " ,tb_battinf.stationname,tb_battinf.stationname1,tb_battinf.stationname2,tb_battinf.stationname3 " +
+ " ,station_diaozhan_start_time,station_temp,station_damp,station_dooropen_start_time,station_xuhang_start_time,station_xuhang_end_time" +
+ " ,tb_battinf.stationname,tb_battinf.stationname1,tb_battinf.stationname2,tb_battinf.stationname3,tb_battinf.stationname5 " +
" from db_ram_db.tb_bts_station_state,db_battinf.tb_battinf " +
" where tb_bts_station_state.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
- " and tb_bts_station_state.station_id=db_battinf.tb_battinf.StationId " +
- " and tb_battinf.stationname1 like ? and tb_battinf.stationname2 like ? and tb_battinf.stationname3 like ? " +
- " and stationid like ? limit ? ,? ";
- List<Bts_station_state> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{"%"+binf.getStationName1()+"%","%"+binf.getStationName2()+"%","%"+binf.getStationName3()+"%","%"+binf.getStationId()+"%",(p.getPageCurr()-1)*p.getPageSize(),p.getPageSize()},new CallBack() {
+ " and tb_battinf.stationname1 like ? and tb_battinf.stationname2 like ? and tb_battinf.stationname3 like ? and tb_battinf.stationname5 like ? " +
+ " and stationid like ? and Station_install=1 " ;
+ /*" and tb_bts_station_state.station_id 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=? and tb_battinf.stationname1 like ? and tb_battinf.stationname2 like ? and tb_battinf.stationname3 like ? ) " +
+ " and stationid like ? " ;*/
+ //鐢ㄦ埛绠$悊
+ String userSql=" and 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=?" +
+ " ) ";
+ sql+=userSql;
+ if(binf.getBattGroupNum()>1){
+ sql+=" and ( ";
+ }
+ //鎺夌珯
+ String diaozhanSql=" ((station_stat&32)>1) ";
+ if((binf.getBattGroupNum()&32)>1){
+ sql+=diaozhanSql;
+ }
+ if((binf.getBattGroupNum()&16)>1&&(binf.getBattGroupNum()>32)){
+ sql+=" or ";
+ }
+ //寮�闂�
+ String dooropenSql=" ((station_stat&16)>1) ";
+ if((binf.getBattGroupNum()&16)>1){
+ sql+=dooropenSql;
+ }
+ if((binf.getBattGroupNum()&8)>1&&(binf.getBattGroupNum()>16)){
+ sql+=" or ";
+ }
+ //鍙戠數
+ String fadianSql=" ((station_stat&8)>1) ";
+ if((binf.getBattGroupNum()&8)>1){
+ sql+=fadianSql;
+ }
+ if((binf.getBattGroupNum()&4)>1&&(binf.getBattGroupNum()>8)){
+ sql+=" or ";
+ }
+ //缁埅
+ String xuhangSql=" ((station_stat&4)>1) ";
+ if((binf.getBattGroupNum()&4)>1){
+ sql+=xuhangSql;
+ }
+ if((binf.getBattGroupNum()&2)>1&&(binf.getBattGroupNum()>4)){
+ sql+=" or ";
+ }
+ //鍋滅數
+ String poffSql=" ((station_stat&2)>1) ";
+ if((binf.getBattGroupNum()&2)>1){
+ sql+=poffSql;
+ }
+
+ if(binf.getBattGroupNum()>1){
+ sql+=" ) ";
+ }
+ if(binf.getBattGroupNum()==0){
+ sql+=" and station_stat<0 "; //褰撴病鏈夐�夋嫨鎯宠鏌ョ湅鐨勬満鎴垮紓甯哥姸鎬佹槸绛涢��
+ }
+ //鍒嗛〉
+ String orderSql=" limit ? ,? ";
+ sql+=orderSql;
+ //System.out.println(sql);
+ List<Bts_station_state> list=DAOHelper.executeQueryLimit(sql, conn, new Object[]{"%"+binf.getStationName1()+"%","%"+binf.getStationName2()+"%","%"+binf.getStationName3()+"%","%"+binf.getStationName5()+"%","%"+binf.getStationId()+"%",binf.getNum(),(p.getPageCurr()-1)*p.getPageSize(),p.getPageSize()},new CallBack() {
public List getResults(ResultSet rs) {
List list=new ArrayList();
@@ -88,10 +154,12 @@
b.setStation_damp(rs.getFloat("station_damp"));
b.setStation_dooropen_start_time(rs.getTimestamp("station_dooropen_start_time"));
b.setStation_xuhang_start_time(rs.getTimestamp("station_xuhang_start_time"));
+ b.setStation_xuhang_end_time(rs.getTimestamp("station_xuhang_end_time"));
b.setStationName(rs.getString("stationName"));
b.setStationName1(rs.getString("stationName1"));
b.setStationName2(rs.getString("stationName2"));
b.setStationName3(rs.getString("stationName3"));
+ b.setStationName5(rs.getString("stationName5"));
Page page=new Page();
b.setPage(page);
list.add(b);
@@ -111,27 +179,165 @@
}
return list;
}
-
+ //鏌ヨ褰撳墠鏈烘埧鍋滅數鏁�
+ public int serchByState(Object obj) {
+ User_inf uinf=(User_inf) obj;
+ String sql=" select count(*) as nums from db_ram_db.tb_bts_station_state where station_stat&2>1 " +
+ " and tb_bts_station_state.station_id 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=? and Station_install=1 ) ";
+ List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
+
+ public List getResults(ResultSet rs) {
+ List list=new ArrayList();
+ try {
+ while(rs.next()){
+ list.add(rs.getInt("nums"));
+ }
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return list;
+ }
+ });
+ int nums=0;//鎬绘暟
+ if(list!=null&&list.size()>0){
+ nums=(Integer) list.get(list.size()-1);
+ }
+ return nums;
+ }
+ //鏌ヨ褰撳墠鏈烘埧鎺夋垬鏁�
+ public int serchByState_diaozhan(Object obj) {
+ User_inf uinf=(User_inf) obj;
+ String sql=" select count(*) as nums from db_ram_db.tb_bts_station_state where station_stat&32>1 " +
+ " and tb_bts_station_state.station_id 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=? and Station_install=1 ) ";
+ List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
+
+ public List getResults(ResultSet rs) {
+ List list=new ArrayList();
+ try {
+ while(rs.next()){
+ list.add(rs.getInt("nums"));
+ }
+ } catch (SQLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return list;
+ }
+ });
+ int nums=0;//鎬绘暟
+ if(list!=null&&list.size()>0){
+ nums=(Integer) list.get(list.size()-1);
+ }
+ return nums;
+ }
+ //鏌ヨ鍏蜂綋鏌愭満鎴垮仠鐢垫暟(鏍规嵁station_id )
+ public int serchByStationId(Object obj) {
+ BattMap_information binformation=(BattMap_information) obj;
+ String sql="select count(num) as nums from db_ram_db.tb_bts_station_state " +
+ " where station_stat&2>1 " +
+ " and station_id=? " +
+ " limit 1 ";
+ //System.out.println(sql);
+ List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binformation.getStationId()}, new CallBack() {
+
+ public List getResults(ResultSet rs) {
+ List list=new ArrayList();
+ try {
+ while(rs.next()){
+ int nums=rs.getInt("nums");
+ list.add(nums);
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return list;
+ }
+ });
+ int nums=0;//鏈�鍚庣殑缁撴灉
+ if(list!=null&&list.size()>0){
+ nums=(Integer) list.get(list.size()-1);
+ }
+ return nums;
+ }
+ //鏌ヨ鍏蜂綋鏌愭満鎴挎帀绔欐暟(鏍规嵁station_id )
+ public int serchByStationId_diaozhan(Object obj) {
+ BattMap_information binformation=(BattMap_information) obj;
+ String sql="select count(num) as nums from db_ram_db.tb_bts_station_state " +
+ " where station_stat&32>1 " +
+ " and station_id=? " +
+ " limit 1 ";
+ //System.out.println(sql);
+ List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binformation.getStationId()}, new CallBack() {
+
+ public List getResults(ResultSet rs) {
+ List list=new ArrayList();
+ try {
+ while(rs.next()){
+ int nums=rs.getInt("nums");
+ list.add(nums);
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return list;
+ }
+ });
+ int nums=0;//鏈�鍚庣殑缁撴灉
+ if(list!=null&&list.size()>0){
+ nums=(Integer) list.get(list.size()-1);
+ }
+ return nums;
+ }
public List serchByInfo(Object obj) {
// TODO Auto-generated method stub
return null;
}
-
public static void main(String[] args) {
Bts_station_stateImpl bimpl=new Bts_station_stateImpl();
BattInf binf=new BattInf();
+ binf.setNum(1002);
binf.setStationName1("");
binf.setStationName2("");
binf.setStationName3("");
+ binf.setStationName5("");
binf.setStationId("");
+ binf.setBattGroupNum(62);
+ User_inf uinf=new User_inf();
+ uinf.setUId(1002);
Page p=new Page();
p.setPageCurr(1);
- p.setPageSize(1);
+ p.setPageSize(10);
binf.setPage(p);
- List<Bts_station_state> list=bimpl.serchByCondition(binf);
+ /*List<Bts_station_state> list=bimpl.serchByCondition(binf);
for (Bts_station_state bs : list) {
//System.out.println(bs.getStation_stat_diaozhan()+" "+bs.getStation_stat_dooropen()+" "+bs.getStation_stat_fadian()+" "+bs.getStation_stat_xuhang()+" "+bs.getStation_stat_poff());
System.out.println(bs);
- }
+ }*/
+ //System.out.println(list.size());
+ //int nums=bimpl.serchByState(uinf);
+ /*BattMap_information bm=new BattMap_information();
+ bm.setStationId("42000570");
+ int nums=bimpl.serchByStationId(bm);*/
+ int nums=bimpl.serchByState_diaozhan(uinf);
+ /*BattMap_information bm=new BattMap_information();
+ bm.setStationId("42000366");
+ int nums=bimpl.serchByStationId_diaozhan(bm);*/
+
+ System.out.println(nums);
}
+
+
}
--
Gitblit v1.9.1