81041
2019-06-24 797038b15180e4f757e4ef84ae4e5cb323fd99ee
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
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=(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=(List) simpl.searchAll();
        /*for (Sensor_mapinfo s : list) {
            System.out.println(s);
        }*/
    }
}