jinpengyong
2023-11-10 c64ca12b8679d73fc7f8109f0e08fa8c74352164
screen-api/src/main/java/com/moral/api/service/impl/MonitorPointServiceImpl.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.moral.api.config.Interceptor.UserHelper;
import com.moral.api.dto.MonitoringStationDTO;
import com.moral.api.entity.*;
import com.moral.api.mapper.DeviceMapper;
@@ -10,6 +11,7 @@
import com.moral.api.mapper.MonitorPointMapper;
import com.moral.api.mapper.SensorMapper;
import com.moral.api.pojo.form.device.MonitorPointQueryForm;
import com.moral.api.pojo.vo.user.QxUser;
import com.moral.api.service.DeviceService;
import com.moral.api.service.HistoryDailyService;
import com.moral.api.service.HistoryHourlyService;
@@ -24,6 +26,7 @@
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import springfox.documentation.schema.Entry;
import java.math.BigDecimal;
@@ -518,6 +521,33 @@
        return resultList;
    }
    /**
     * 根据用户查询站点
     *
     * @return
     */
    @Override
    public List<MonitorPoint> getOrganizations() {
        QueryWrapper<MonitorPoint> wrapper = new QueryWrapper<>();
        wrapper.select("id","name");
        QxUser user = UserHelper.getCurrentUser();
        Integer organizationId = user.getOrganizationId();
        List<Integer> monitorPointiIds = monitorPointMapper.getMonitorPointiId(organizationId);
        if (organizationId!=24){
            wrapper.in("id",monitorPointiIds);
        }
        wrapper.eq("is_delete",Constants.NOT_DELETE);
        List<MonitorPoint> monitorPoints = monitorPointMapper.selectList(wrapper);
        for (int i = 0; i < monitorPoints.size(); i++) {
            List<Device> organizationDevice = deviceService.getOrganizationDevice(monitorPoints.get(i).getId());
            if (ObjectUtils.isEmpty(organizationDevice)){
                monitorPoints.remove(i);
                i--;
            }
        }
        return monitorPoints;
    }
    private List<MonitoringStationDTO> resultList(List<HistoryDaily> historyDailyByMacAndTimeSlot){
        List<MonitoringStationDTO> list = new ArrayList<>();