Newspaper před 1 rokem
rodič
revize
f30e616817

+ 26 - 0
huimv-env-admin/src/main/java/com/huimv/env/admin/controller/TerminalPortController.java

@@ -3,16 +3,21 @@ package com.huimv.env.admin.controller;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.huimv.env.admin.common.utils.Result;
 import com.huimv.env.admin.common.utils.ResultCode;
+import com.huimv.env.admin.entity.BasePigpen;
 import com.huimv.env.admin.entity.TerminalPort;
 import com.huimv.env.admin.entity.vo.PortListByTerminalIdParam;
+import com.huimv.env.admin.entity.vo.PortPageByLocationIdParam;
 import com.huimv.env.admin.entity.vo.TerminalPortConfigParam;
+import com.huimv.env.admin.service.IBasePigpenService;
 import com.huimv.env.admin.service.ITerminalPortService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -28,6 +33,8 @@ import java.util.List;
 public class TerminalPortController {
     @Autowired
     private ITerminalPortService portService;
+    @Autowired
+    private IBasePigpenService basePigpenService;
 
     @PostMapping("/listByTerminalId")
     public Result list(@RequestBody PortListByTerminalIdParam portListByTerminalIdParam){
@@ -50,4 +57,23 @@ public class TerminalPortController {
         return Result.SUCCESS();
     }
 
+    @PostMapping("/pageByLocationId")
+    public Result pageByLocationId(@RequestBody PortPageByLocationIdParam portPageByLocationIdParam){
+        Page<TerminalPort> page = new Page<>(portPageByLocationIdParam.getPageNum(),portPageByLocationIdParam.getPageSize());
+        Integer locationId = portPageByLocationIdParam.getLocationId();
+        Page<TerminalPort> terminalPortPage = new Page<>();
+        if (ObjectUtil.isEmpty(locationId)){
+            terminalPortPage = portService.page(page, new QueryWrapper<TerminalPort>().lambda()
+                    .eq(ObjectUtil.isNotEmpty(portPageByLocationIdParam.getStatus()), TerminalPort::getStatus, portPageByLocationIdParam.getStatus()));
+        }else {
+            BasePigpen basePigpen = basePigpenService.getById(locationId);
+            List<BasePigpen> list = basePigpenService.list(new QueryWrapper<BasePigpen>().lambda().like(BasePigpen::getOther2, basePigpen.getId()));
+            List<Integer> idList = list.stream().map(BasePigpen::getId).collect(Collectors.toList());
+            terminalPortPage = portService.page(page, new QueryWrapper<TerminalPort>().lambda()
+                    .in(TerminalPort::getLocationId,idList)
+                    .eq(ObjectUtil.isNotEmpty(portPageByLocationIdParam.getStatus()), TerminalPort::getStatus, portPageByLocationIdParam.getStatus()));
+        }
+        return new Result(ResultCode.SUCCESS,terminalPortPage);
+    }
+
 }

+ 9 - 3
huimv-env-admin/src/main/java/com/huimv/env/admin/entity/TerminalPort.java

@@ -40,11 +40,13 @@ public class TerminalPort {
      * 终端ID
      */
     @TableField("terminal_id")
+    @Trans(type = TransType.SIMPLE, target = Terminal.class, fields = "deviceName", alias = "terminal", refs = "terminalName")
     private Integer terminalId;
 
-    /**
-     * 终端ID
-     */
+    @TableField(exist = false)
+    private Integer terminalName;
+
+
     @TableField("location_id")
     @Trans(type = TransType.SIMPLE, target = BasePigpen.class, fields = "buildName", alias = "build", refs = "locationName")
     private Integer locationId;
@@ -56,8 +58,12 @@ public class TerminalPort {
      * 小区ID
      */
     @TableField("farm_id")
+    @Trans(type = TransType.SIMPLE, target = BaseFarm.class, fields = "farmName", alias = "farm", refs = "farmName")
     private Integer farmId;
 
+    @TableField(exist = false)
+    private String farmName;
+
     @TableField("voltage")
     private String voltage;
 

+ 18 - 0
huimv-env-admin/src/main/java/com/huimv/env/admin/entity/vo/PortPageByLocationIdParam.java

@@ -0,0 +1,18 @@
+package com.huimv.env.admin.entity.vo;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+@Data
+public class PortPageByLocationIdParam {
+    private Integer locationId;
+
+    private Integer status;
+
+    @NotNull(message = "pageNum不能为空")
+    private Integer pageNum;
+
+    @NotNull(message = "pageSize不能为空")
+    private Integer pageSize;
+}