lxw
2023-07-03 126df247aa6acf76db3ca6535a84a0eb0093e07c
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
package com.whyc.service;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.whyc.mapper.AirconditionerStateMapper;
import com.whyc.mapper.EnvirStateMapper;
import com.whyc.mapper.EnvironmentInfMapper;
import com.whyc.pojo.AirconditionerState;
import com.whyc.pojo.EnvirState;
import com.whyc.pojo.EnvironmentInf;
import com.whyc.pojo.Response;
import com.whyc.util.DevTypeUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.List;
 
@Service
public class EnvironmentInfService {
    @Autowired(required = false)
    private EnvironmentInfMapper mapper;
 
    @Autowired(required = false)
    private EnvirStateMapper eStateMapper;
 
    @Autowired(required = false)
    private AirconditionerStateMapper aStateMapper;
 
    //获取所有房间的实时数据
    public Response getEnvirInfSocket() {
        QueryWrapper wrapper= Wrappers.query();
        wrapper.orderByAsc("room_id");
        List<EnvironmentInf> list=mapper.selectList(wrapper);
        list.stream().forEach(einf -> {
            int devId=einf.getDevId();
            QueryWrapper wrapperDev= Wrappers.query();
            wrapperDev.eq("dev_id",devId);
            wrapperDev.last("limit 1");
            if(devId/10000000== DevTypeUtil.eState){
                EnvirState eState=eStateMapper.selectOne(wrapperDev);
                einf.setEnvirState(eState);
            }else if(devId/10000000== DevTypeUtil.aState){
                AirconditionerState aState=aStateMapper.selectOne(wrapperDev);
                einf.setEnvirAirState(aState);
            }
        });
        return new Response().setII(1,true,list,"获取所有房间的实时数据");
    }
}