2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-01-04 20cf08efd6f966f53f4dfebafb586b127204415a
大气设备查询
已修改5个文件
103 ■■■■ 文件已修改
dao/src/main/java/com/sandu/ximon/dao/mapper/AirEquipmentMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/resources/mapper/AirEquipmentMapper.xml 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AirEquipmentController.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/mapper/AirEquipmentMapper.java
@@ -12,9 +12,9 @@
 */
@Mapper
public interface AirEquipmentMapper extends BaseMapper<AirEquipment> {
    List<AirEquipmentBo> listAirEquipment();
    List<Long> listAirEquipmentId(String keyword, Long clientId);
    List<AirEquipmentBo> listAirEquipmentByKeyword(String keyword);
    List<AirEquipmentBo> listAirEquipmentByIds(List<Long> airEquipmentIdList);
}
dao/src/main/resources/mapper/AirEquipmentMapper.xml
@@ -16,31 +16,42 @@
        mac
    </sql>
    <select id="listAirEquipment" resultType="com.sandu.ximon.dao.bo.AirEquipmentBo">
    <select id="listAirEquipmentId" resultType="java.lang.Long">
        SELECT
            t1.*, t2.pole_id,
            t3.pole_name
        MAX(t1.id) AS air_equipment_id
        FROM
            air_equipment t1
        LEFT JOIN pole_binding t2 ON t1.mac = t2.device_code
        AND t2.device_type = 4
        LEFT JOIN pole t3 ON t3.id = t2.pole_id
        ORDER BY
            t1.id DESC
        air_equipment t1
        <if test="keyword != null and keyword != ''">
            LEFT JOIN pole_binding t2 ON t1.mac = t2.device_code
            AND t2.device_type = 3
            LEFT JOIN pole t3 ON t3.id = t2.pole_id
        </if>
        <where>
            <if test="keyword != null and keyword != ''">
                AND t3.pole_name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
            </if>
            <if test="clientId != null">
                AND t3.client_id = #{clientId}
            </if>
        </where>
        GROUP BY
        t1.mac
    </select>
    <select id="listAirEquipmentByKeyword" resultType="com.sandu.ximon.dao.bo.AirEquipmentBo">
        SELECT
            t1.*, t2.pole_id,
            t3.pole_name
        FROM
            air_equipment t1
        LEFT JOIN pole_binding t2 ON t1.mac = t2.device_code
        AND t2.device_type = 4
        LEFT JOIN pole t3 ON t3.id = t2.pole_id
        WHERE
            t3.pole_name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
        ORDER BY
            t1.id DESC
    <select id="listAirEquipmentByIds" resultType="com.sandu.ximon.dao.bo.AirEquipmentBo">
        SELECT
        t1.*, t2.pole_id,
        t3.pole_name
        FROM
        air_equipment t1
        LEFT JOIN pole_binding t2 ON t1.mac = t2.device_code
        AND t2.device_type = 3
        LEFT JOIN pole t3 ON t3.id = t2.pole_id
        <where>
            t1.id IN
            <foreach collection="airEquipmentIdList" open="(" close=")" item="airId" separator=",">
                #{airId}
            </foreach>
        </where>
    </select>
</mapper>
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AirEquipmentController.java
@@ -1,6 +1,7 @@
package com.sandu.ximon.admin.controller;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.util.ResponseUtil;
import com.sandu.ximon.admin.service.AirEquipmentService;
import com.sandu.ximon.dao.bo.AirEquipmentBo;
@@ -19,21 +20,15 @@
public class AirEquipmentController {
    private final AirEquipmentService airEquipmentService;
    @GetMapping
    public ResponseVO<Object> listAirEquipment() {
        List<AirEquipmentBo> list = airEquipmentService.listAirEquipment();
        return ResponseUtil.success(list);
    }
    /**
     * 模糊查询
     * 查询大气设备
     *
     * @return
     */
    @GetMapping("/listAirEquipmentByKeyword/{keyword}")
    public ResponseVO<Object> listAirEquipmentByKeyword(@PathVariable String keyword) {
        List<AirEquipmentBo> list = airEquipmentService.listAirEquipmentByKeyword(keyword);
        return ResponseUtil.success(list);
    @GetMapping("/listAirEquipment")
    public ResponseVO<Object> listAirEquipmentByKeyword(BaseConditionVO baseConditionVO, @RequestParam(required = false) String keyword) {
        List<AirEquipmentBo> list = airEquipmentService.listAirEquipmentByKeyword(baseConditionVO, keyword);
        return ResponseUtil.successPage(list);
    }
    @PostMapping("/delete/{id}")
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirDataService.java
@@ -52,7 +52,7 @@
        PageHelper.startPage(baseConditionVO.getPageNo(),baseConditionVO.getPageSize());
        List<Long> listAirId = baseMapper.listAirId(keyword,clientId);
        if(CollUtil.isEmpty(listAirId)){
            return null;
            return CollUtil.newArrayList();
        }
        List<AirDataBo> airDataBos = baseMapper.listAirDataByIds(listAirId);
        return airDataBos;
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AirEquipmentService.java
@@ -1,9 +1,14 @@
package com.sandu.ximon.admin.service;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.dao.bo.AirDataBo;
import com.sandu.ximon.dao.bo.AirEquipmentBo;
import com.sandu.ximon.dao.domain.AirData;
import com.sandu.ximon.dao.domain.AirEquipment;
@@ -21,23 +26,19 @@
    private final AirEquipmentMapper airEquipmentMapper;
    /**
     * 查询全部大气设备数据
     */
    public List<AirEquipmentBo> listAirEquipment() {
        return airEquipmentMapper.listAirEquipment();
    }
    /**
     * 模糊查询
     */
    public List<AirEquipmentBo> listAirEquipmentByKeyword(String keyword) {
        if (keyword == null || keyword.trim().length() == 0) {
            return listAirEquipment();
        } else {
            return airEquipmentMapper.listAirEquipmentByKeyword(keyword);
    public List<AirEquipmentBo> listAirEquipmentByKeyword(BaseConditionVO baseConditionVO, String keyword) {
        Long clientId = SecurityUtils.getClientId();
        PageHelper.startPage(baseConditionVO.getPageNo(),baseConditionVO.getPageSize());
        List<Long> listAirEquipmentId = airEquipmentMapper.listAirEquipmentId(keyword,clientId);
        if(CollUtil.isEmpty(listAirEquipmentId)){
            return CollUtil.newArrayList();
        }
        List<AirEquipmentBo> airEquipmentBos = airEquipmentMapper.listAirEquipmentByIds(listAirEquipmentId);
        return airEquipmentBos;
    }
    /**