lipenghui пре 1 месец
родитељ
комит
d985141871

+ 20 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/yanfan/device/YfIotDeviceController.java

@@ -11,12 +11,17 @@ import cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.DeviceShort
 import cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDevicePageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceSaveReqVO;
+import cn.iocoder.yudao.module.pms.dal.dataobject.IotDeviceDO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.yanfan.device.YfIotDeviceDO;
+import cn.iocoder.yudao.module.pms.service.IotDeviceService;
 import cn.iocoder.yudao.module.pms.service.yanfan.device.YfIotDeviceService;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.quartz.SchedulerException;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -26,6 +31,7 @@ import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import java.io.IOException;
 import java.util.List;
+import java.util.Objects;
 
 import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@@ -39,6 +45,10 @@ public class YfIotDeviceController {
 
     @Resource
     private YfIotDeviceService yfIotDeviceService;
+    @Autowired
+    private DeptApi deptApi;
+    @Autowired
+    private IotDeviceService iotDeviceService;
 
     @PostMapping
     @Operation(summary = "创建设备")
@@ -134,6 +144,16 @@ public class YfIotDeviceController {
             device.setShowChild(false);
         }
         List<DeviceShortOutput> deviceShortOutputs = yfIotDeviceService.selectDeviceShortList(device);
+        deviceShortOutputs.forEach(e ->{
+            DeptRespDTO dept = deptApi.getDept(e.getDeptId());
+            if (!Objects.isNull(dept)) {
+                e.setDeptName(dept.getName());
+            }
+            IotDeviceDO iotDevice = iotDeviceService.getIotDevice(e.getPmsDevice());
+            if (!Objects.isNull(iotDevice)) {
+                e.setDeviceCode(iotDevice.getDeviceCode());
+            }
+        });
         return success(deviceShortOutputs);
     }
     @DeleteMapping("/{deviceIds}")

+ 4 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/yanfan/device/vo/DeviceShortOutput.java

@@ -119,6 +119,10 @@ public class DeviceShortOutput {
     /*设备通讯协议*/
     private String protocolCode;
     private DeviceAlertCount alertCount;
+    private Long deptId;
+    private String deptName;
+    private Long pmsDevice;
+    private String deviceCode;
     /**
      * 产品guid
      */

+ 4 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/resources/mapper/static/yanfan/YfIotDeviceMapper.xml

@@ -41,6 +41,8 @@
     </select>
     <select id="selectDeviceByDeviceId" parameterType="Long" resultType="cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceRespVO">
         select d.device_id,
+                d.dept_id,
+                d.pms_device,
                d.device_name,
                d.product_id,
                p.product_name,
@@ -139,10 +141,10 @@
         from rq_yf_iot_device
         where serial_number = #{deviceNum}
     </select>
-    <select id="selectDeviceShortList" parameterType="cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceSaveReqVO" resultType="cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceRespVO">
+    <select id="selectDeviceShortList" parameterType="cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.YfIotDeviceSaveReqVO" resultType="cn.iocoder.yudao.module.pms.controller.admin.yanfan.device.vo.DeviceShortOutput">
         select d.device_id, d.device_name, p.product_id, p.product_name,p.device_type,
         d.tenant_id, d.tenant_name, d.serial_number,d.gw_dev_code,
-        d.firmware_version, d.status,d.rssi,d.is_shadow,d.is_simulate ,d.location_way,
+        d.firmware_version, d.status,d.rssi,d.is_shadow,d.is_simulate ,d.location_way,d.pms_device,d.dept_id,
         d.things_model_value, d.active_time,d.create_time, if(null = d.img_url or '' = d.img_url, p.img_url, d.img_url)
         as img_url,
         (select count(*) from rq_yf_iot_device d1 where d1.gw_dev_code = d.serial_number) as sub_device_count,