dao/src/main/java/com/sandu/ximon/dao/mapper/WaterQualityEquipmentMapper.java
@@ -10,5 +10,8 @@ @Mapper public interface WaterQualityEquipmentMapper extends BaseMapper<WaterQualityEquipment> { List<WaterQualityEquipmentBo> listWaterQualityEquipment(); List<WaterQualityEquipmentBo> listWaterQualityEquipmentByKeyword(String keyword); List<Long> WaterQualityEquipmentId(String keyword, Long clientId); List<WaterQualityEquipmentBo> listWaterQualityEquipmentByIds(List<Long> waterQualityEquipmentIdList); } dao/src/main/resources/mapper/WaterQualityEquipmentMapper.xml
@@ -12,21 +12,6 @@ <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> </resultMap> <select id="listWaterQualityEquipmentByKeyword" resultType="com.sandu.ximon.dao.bo.WaterQualityEquipmentBo" parameterType="java.lang.String"> SELECT t1.*, t2.pole_id, t3.pole_name FROM water_quality_equipment t1 LEFT JOIN pole_binding t2 ON t1.water_quality_equipment_code = 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> <select id="listWaterQualityEquipment" resultType="com.sandu.ximon.dao.bo.WaterQualityEquipmentBo"> SELECT t1.*, t2.pole_id, @@ -40,4 +25,44 @@ t1.id DESC </select> <select id="WaterQualityEquipmentId" resultType="java.lang.Long"> SELECT MAX(t1.id) AS water_quality_equipment_id FROM water_quality_equipment t1 <if test="keyword != null and keyword != ''"> LEFT JOIN pole_binding t2 ON t1.water_quality_equipment_code = t2.device_code AND t2.device_type = 4 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.water_quality_equipment_code </select> <select id="listWaterQualityEquipmentByIds" resultType="com.sandu.ximon.dao.bo.WaterQualityEquipmentBo"> SELECT t1.*, t2.pole_id, t3.pole_name FROM water_quality_equipment t1 LEFT JOIN pole_binding t2 ON t1.water_quality_equipment_code = t2.device_code AND t2.device_type = 4 LEFT JOIN pole t3 ON t3.id = t2.pole_id <where> t1.id IN <foreach collection="waterQualityEquipmentIdList" open="(" close=")" item="airId" separator=","> #{airId} </foreach> </where> </select> </mapper> ximon-admin/src/main/java/com/sandu/ximon/admin/controller/WaterQualityEquipmentController.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.param.WaterQualityEquipmentParam; import com.sandu.ximon.admin.service.WaterQualityEquipmentService; @@ -20,21 +21,15 @@ public class WaterQualityEquipmentController { private final WaterQualityEquipmentService waterQualityEquipmentService; @GetMapping public ResponseVO<Object> listWaterQualityEquipment() { List<WaterQualityEquipmentBo> list = waterQualityEquipmentService.listWaterQualityEquipment(); return ResponseUtil.success(list); } /** * 模糊查询 * 水质设备列表查询 * * @return */ @GetMapping("/listWaterQualityEquipmentByKeyword/{keyword}") public ResponseVO<Object> listWaterQualityEquipmentByKeyword(@PathVariable String keyword) { List<WaterQualityEquipmentBo> list = waterQualityEquipmentService.listWaterQualityEquipmentByKeyword(keyword); return ResponseUtil.success(list); @GetMapping("/listWaterQualityEquipment") public ResponseVO<Object> listWaterQualityEquipment(BaseConditionVO baseConditionVO, @RequestParam(required = false) String keyword) { List<WaterQualityEquipmentBo> list = waterQualityEquipmentService.listWaterQualityEquipmentByKeyword(baseConditionVO, keyword); return ResponseUtil.successPage(list); } /** ximon-admin/src/main/java/com/sandu/ximon/admin/service/WaterQualityEquipmentService.java
@@ -1,10 +1,15 @@ 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.param.WaterQualityEquipmentParam; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.dao.bo.AirEquipmentBo; import com.sandu.ximon.dao.bo.WaterQualityEquipmentBo; import com.sandu.ximon.dao.domain.AirEquipment; import com.sandu.ximon.dao.domain.Monitor; @@ -32,20 +37,15 @@ /** * 模糊查询 */ public List<WaterQualityEquipmentBo> listWaterQualityEquipmentByKeyword(String keyword) { if (keyword == null || keyword.trim().length() == 0) { return listWaterQualityEquipment(); } else { return waterQualityEquipmentMapper.listWaterQualityEquipmentByKeyword(keyword); public List<WaterQualityEquipmentBo> listWaterQualityEquipmentByKeyword(BaseConditionVO baseConditionVO, String keyword) { Long clientId = SecurityUtils.getClientId(); PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); List<Long> listAirEquipmentId = waterQualityEquipmentMapper.WaterQualityEquipmentId(keyword, clientId); if (CollUtil.isEmpty(listAirEquipmentId)) { return CollUtil.newArrayList(); } // LambdaQueryWrapper<WaterQualityEquipment> wrapper = Wrappers.lambdaQuery(WaterQualityEquipment.class); //// if (keyword != null) { //// wrapper.like(WaterQualityEquipment::getBelongTo, keyword); //// } // List<WaterQualityEquipment> airDataList = list(wrapper); // waterQualityEquipmentMapper.listWaterQualityEquipmentByKeyword(keyword); List<WaterQualityEquipmentBo> waterQualityEquipmentBoList = waterQualityEquipmentMapper.listWaterQualityEquipmentByIds(listAirEquipmentId); return waterQualityEquipmentBoList; } /**