pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
@@ -104,4 +104,10 @@ * @return Level 区域等级 */ Integer getLevelByRegionId(long regionId); /** * 获取未绑控制器的取水口列表 * @return */ List<Map<String, Object>> getNoBindingIntakes(); } pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -309,4 +309,13 @@ where region.id = #{regionId,jdbcType=BIGINT} </select> <!--获取未绑控制器的取水口列表--> <select id="getNoBindingIntakes" resultType="java.util.HashMap"> SELECT CAST(inta.id AS char)AS intakeId, name AS intakeName FROM pr_intake inta WHERE id NOT IN(SELECT intakeId FROM pr_controller) AND deleted = 0 </select> </mapper> pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerCtrl.java
@@ -1,5 +1,6 @@ package com.dy.pipIrrProject.controller; import com.alibaba.fastjson2.JSONArray; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.support.ExcelTypeEnum; import com.dy.common.aop.SsoAop; @@ -179,6 +180,34 @@ } /** * 获取未绑控制器的取水口列表 * @return */ @Operation(summary = "获得未绑控制器的取水口记录", description = "返回未绑控制器的取水口数据") @ApiResponses(value = { @ApiResponse( responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, description = "返回控制器数据(BaseResponse.content:QueryResultVo[{}])", content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, schema = @Schema(implementation = BaClient.class))} ) }) @GetMapping(path = "nobinding_intakes") @SsoAop() public BaseResponse<JSONArray> getNoBindingIntakes(){ try { JSONArray array = controllerSv.getNoBindingIntakes(); if(array.size() <= 0) { return BaseResponseUtils.buildFail(ProjectResultCode.NO_BINDING_INTAKE.getMessage()); } return BaseResponseUtils.buildSuccess(array); } catch (Exception e) { log.error("查询控制器异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 导出控制器列表 * @param response * @param vo pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java
@@ -1,7 +1,10 @@ package com.dy.pipIrrProject.controller; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONArray; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoPr.PrControllerMapper; import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper; import com.dy.pipIrrGlobal.pojoPr.PrController; import com.dy.pipIrrGlobal.voPr.VoController; import lombok.extern.slf4j.Slf4j; @@ -12,6 +15,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; /** * @author ZhuBaoMin @@ -25,6 +29,9 @@ public class ControllerSv { @Autowired private PrControllerMapper prControllerMapper; @Autowired private PrIntakeMapper prIntakeMapper; /** * 根据指定获取控制器记录 @@ -119,4 +126,17 @@ public Integer deleteIntakeId(Long controllerId) { return prControllerMapper.deleteIntakeId(controllerId); } /** * 获取未绑控制器的取水口列表 * @return */ public JSONArray getNoBindingIntakes() { List<Map<String, Object>> list = Optional.ofNullable(prIntakeMapper.getNoBindingIntakes()).orElse(new ArrayList<>()); JSONArray array= null; if(list.size() > 0) { array= JSONArray.parseArray(JSON.toJSONString(list)); } return array; } } pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
@@ -28,6 +28,7 @@ UPDATE_INTAKE(20003, "修改取水口数据失败"), PLEASE_INPUT_INTAKE_ID(20004, "取水口编号不为空"), DELETE_INTAKE_FAIL(20005, "取水口删除失败"), NO_BINDING_INTAKE(20006, "没有未绑定的取水口"), /** * 控制器