81041
2019-06-24 a7cdf717e2ad9f3c7a8dcff5ecfa499e2fd372e8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package com.fgkj.dao.impl;
 
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
 
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.CallBack;
import com.fgkj.dao.DAOHelper;
import com.fgkj.db.DBUtil;
import com.fgkj.dto.Sensor_inf;
import com.fgkj.dto.Sensor_mapinfo;
import com.fgkj.dto.Sensor_state;
 
 
public class Sensor_mapinfoImpl implements BaseDAO,CallBack{
 
    @Override
    public List getResults(ResultSet rs) {
        // TODO Auto-generated method stub
        return null;
    }
 
    @Override
    public boolean add(Object obj) {
        // TODO Auto-generated method stub
        return false;
    }
    //修改定位信息
    @Override
    public boolean update(Object obj) {
        Sensor_mapinfo sinfo=(Sensor_mapinfo) obj;
        String sql=" repalce into db_sensor.tb_sensor_mapinfo(sensor_dev_id,longitude,latitude,address)"
                + "  values(?,?,?,?)";
        boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{sinfo.getSensor_dev_id(),sinfo.getLongitude(),sinfo.getLatitude(),sinfo.getAddress()});
        return bl;
    }
    //删除定位信息
    @Override
    public boolean del(Object obj) {
        Sensor_mapinfo sinfo=(Sensor_mapinfo) obj;
        String sql=" delete from  db_sensor.tb_sensor_mapinfo where sensor_dev_id=? ";
        boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{sinfo.getSensor_dev_id()});
        return bl;
    }
    //查询所有传感器的定位信息
    @Override
    public List searchAll() {
        String sql=" select distinct db_sensor.tb_sensor_mapinfo.num,db_sensor.tb_sensor_mapinfo.sensor_dev_id,longitude,latitude,address "
                + "  ,record_time,airtmp,airhum,smoke,water,lightintensity "
                + "  ,province,city,county,device_name,airtmp_alarm,airhum_alarm,smoke_alarm  "
                + " ,CO2concentration,COconcentration,CH4concentration,O2concentration,dev_commcount,dev_errcommcount "
                + "  from db_sensor.tb_sensor_mapinfo,db_sensor.tb_sensor_state,db_sensor.tb_sensor_inf "
                + "  where db_sensor.tb_sensor_mapinfo.sensor_dev_id=db_sensor.tb_sensor_state.sensor_dev_id  "
                + "  and  db_sensor.tb_sensor_mapinfo.sensor_dev_id=db_sensor.tb_sensor_inf.sensor_dev_id ";
        
        List list= DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
            
            @Override
            public List getResults(ResultSet rs) {
                List list=new ArrayList();
                try {
                    while(rs.next()){
                        Sensor_mapinfo sinfo=new Sensor_mapinfo();
                        sinfo.setNum(rs.getInt("num"));
                        sinfo.setSensor_dev_id(rs.getInt("sensor_dev_id"));
                        sinfo.setLongitude(rs.getDouble("longitude"));
                        sinfo.setLatitude(rs.getDouble("latitude"));
                        sinfo.setAddress(rs.getString("address"));
                        
                        Sensor_inf sinf=new Sensor_inf();
                        sinf.setProvince(rs.getString("province"));
                        sinf.setCity(rs.getString("city"));
                        sinf.setCounty(rs.getString("county"));
                        sinf.setDevice_name(rs.getString("device_name"));
                        sinf.setAirtmp_alarm(rs.getFloat("airtmp_alarm"));
                        sinf.setAirhum_alarm(rs.getFloat("airhum_alarm"));
                        sinf.setSmoke_alarm(rs.getInt("smoke_alarm"));
                        
                        sinfo.setSinf(sinf);
                        
                        Sensor_state s=new Sensor_state();
                        s.setRecord_time(rs.getTimestamp("record_time"));
                        s.setAirtmp(rs.getFloat("airtmp"));
                        s.setAirhum(rs.getFloat("airhum"));
                        s.setSmoke(rs.getInt("smoke"));
                        s.setWater(rs.getInt("water"));
                        s.setLightintensity(rs.getInt("lightintensity"));
                        s.setCO2concentration(rs.getInt("cO2concentration"));
                        s.setCOconcentration(rs.getInt("cOconcentration"));
                        s.setCH4concentration(rs.getInt("cH4concentration"));
                        s.setO2concentration(rs.getInt("o2concentration"));
                        s.setDev_commcount(rs.getInt("dev_commcount"));
                        s.setDev_errcommcount(rs.getInt("dev_errcommcount"));
                        sinfo.setState(s);
                        list.add(sinfo);
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                return list;
            }
        });
        return list;
    }
    
    @Override
    public List serchByCondition(Object obj) {
        // TODO Auto-generated method stub
        return null;
    }
 
    @Override
    public List serchByInfo(Object obj) {
        // TODO Auto-generated method stub
        return null;
    }
    
    public static void main(String[] args) {
        Sensor_mapinfoImpl simpl=new Sensor_mapinfoImpl();
        List<Sensor_mapinfo> list=simpl.searchAll();
        for (Sensor_mapinfo s : list) {
            System.out.println(s);
        }
    }
}