浏览代码

智诺云智慧灯杆设备列表、2.0云盒详细信息

zhj 2 年之前
父节点
当前提交
c512d7844e

+ 2 - 2
src/main/java/com/welampiot/controller/MapController.java

@@ -1677,8 +1677,8 @@ public class MapController{
         } else if (type == 4) {
             LampPoleDTO lampPoleDTO = new LampPoleDTO();
             lampPoleDTO.setId(id);
-            lampPoleDTO.setLongitude(Float.valueOf(longitude));
-            lampPoleDTO.setLatitude(Float.valueOf(latitude));
+            lampPoleDTO.setLongitude(longitude);
+            lampPoleDTO.setLatitude(latitude);
             lampPoleService.changeLampPoleLocationById(lampPoleDTO);
         } else if (type == 3) {
             EnvmonitorDTO envmonitorDTO = new EnvmonitorDTO();

+ 129 - 6
src/main/java/com/welampiot/controller/NewLampPoleController2.java

@@ -2,11 +2,10 @@ package com.welampiot.controller;
 
 import com.welampiot.common.BaseResult;
 import com.welampiot.common.InterfaceResultEnum;
-import com.welampiot.dto.EmergencyInfoLogDTO;
-import com.welampiot.dto.LampPoleDTO;
-import com.welampiot.dto.WeatherDTO;
+import com.welampiot.dto.*;
 import com.welampiot.service.EmergencyInfoLogService;
 import com.welampiot.service.LampPoleService;
+import com.welampiot.service.WifiService;
 import com.welampiot.utils.ToolUtils;
 import com.welampiot.utils.WeatherUtil;
 import com.welampiot.vo.EmergencyInfoLogVO;
@@ -18,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletRequest;
+import java.text.DecimalFormat;
 import java.util.List;
 
 /**
@@ -39,6 +39,8 @@ public class NewLampPoleController2 {
     private LampPoleService lampPoleService;
     @Autowired
     private EmergencyInfoLogService emergencyInfoLogService;
+    @Autowired
+    private WifiService wifiService;
 
     /**
      * 智诺云智慧灯杆列表
@@ -98,11 +100,11 @@ public class NewLampPoleController2 {
         lampPoleVO.setId(id);
         LampPoleDTO lampPoleDTO = lampPoleService.getLampPoleDetails(lampPoleVO);
         if (lampPoleDTO == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
-        Float longitude = lampPoleDTO.getLongitude();
-        Float latitude = lampPoleDTO.getLatitude();
+        String longitude = lampPoleDTO.getLongitude();
+        String latitude = lampPoleDTO.getLatitude();
 
         // 获取实时天气信息
-        WeatherDTO weatherDTO = WeatherUtil.getNowWeatherInfo(String.valueOf(longitude), String.valueOf(latitude));
+        WeatherDTO weatherDTO = WeatherUtil.getNowWeatherInfo(longitude, latitude);
         lampPoleDTO.setTemp(weatherDTO.getTemp());         // 实时温度
         lampPoleDTO.setWeatherCode(weatherDTO.getIcon());  // 天气状况图标代码
         lampPoleDTO.setWeatherText(weatherDTO.getText());  // 天气状况描述
@@ -119,4 +121,125 @@ public class NewLampPoleController2 {
         lampPoleVO1.setLampPoleInfo(lampPoleDTO);
         return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,lampPoleVO1);
     }
+
+    /**
+     * 灯杆设备列表
+     * @param request sectionList
+     * @return 灯杆设备列表
+     */
+    @RequestMapping(value = "/lampPoleDevList", method = RequestMethod.POST)
+    public BaseResult<?> lampPoleDevList(HttpServletRequest request) throws Exception {
+        Integer version = (Integer) toolUtils.getRequestContent(request, "version", 1);
+        Integer areaId = (Integer) toolUtils.getRequestContent(request, "areaId", 1);
+        Integer sectionId = (Integer) toolUtils.getRequestContent(request, "sectionId", 1);
+        Integer type = (Integer) toolUtils.getRequestContent(request, "type", 1);
+        Integer lampId = (Integer) toolUtils.getRequestContent(request, "lampId", 1);
+
+        LampPoleVO lampPoleVO = new LampPoleVO();
+        lampPoleVO.setAreaId(areaId);
+        lampPoleVO.setSectionId(sectionId);
+        lampPoleVO.setType(type);
+        lampPoleVO.setLampId(lampId);
+        lampPoleVO.setSectionList(toolUtils.getSectionList(request));
+        List<LampPoleDTO> lampPoleDevList = lampPoleService.getLampPoleDevList(lampPoleVO);
+        if (type == 5) { // 气象站
+            DecimalFormat decimalFormat = new DecimalFormat("0.00");
+            for (LampPoleDTO dto : lampPoleDevList) {
+                String longitude = dto.getLongitude();
+                String latitude = dto.getLatitude();
+                String format1 = decimalFormat.format(Float.parseFloat(longitude));
+                String format2 = decimalFormat.format(Float.parseFloat(latitude));
+                // 获取实时天气信息
+                WeatherDTO weatherDTO = WeatherUtil.getNowWeatherInfo(format1, format2);
+                dto.setTemp(weatherDTO.getTemp());           // 实时温度
+                dto.setWeatherCode(weatherDTO.getIcon());   // 天气状况图标代码
+                dto.setWeatherText(weatherDTO.getText());  // 天气状况描述
+                dto.setAirLevel(weatherDTO.getLevel());   // 实时空气指数级数
+                dto.setAirCount(weatherDTO.getAqi());    // 实时空气质量指数
+            }
+        } else if (type == 9) { // 云盒
+            for (LampPoleDTO dto : lampPoleDevList) {
+                if (dto.getOnline() != null) {
+                    dto.setLED1(dto.getOnline());
+                }
+                if (dto.getACI() != null) {
+                    dto.setLED8(dto.getACI());
+                }
+                if (dto.getLedStatus() != null && !dto.getLedStatus().isEmpty()) {
+                    String ledStatus = dto.getLedStatus();
+                    int decimal = Integer.parseInt(ledStatus, 16);
+                    String number = String.format("%8s", Integer.toBinaryString(decimal)).replace(' ', '0');
+                    char c8 = number.charAt(7); // LED2
+                    int number8 = Character.getNumericValue(c8);
+                    dto.setLED2(number8);
+                    char c7 = number.charAt(6); // LED4
+                    int number7 = Character.getNumericValue(c7);
+                    dto.setLED4(number7);
+                    char c6 = number.charAt(5); // LED3
+                    int number6 = Character.getNumericValue(c6);
+                    dto.setLED3(number6);
+                    char c4 = number.charAt(3); // LED5
+                    int number4 = Character.getNumericValue(c4);
+                    dto.setLED5(number4);
+                    char c3 = number.charAt(2); // LED6
+                    int number3 = Character.getNumericValue(c3);
+                    dto.setLED6(number3);
+                    char c2 = number.charAt(1); // LED7
+                    int number2 = Character.getNumericValue(c2);
+                    dto.setLED7(number2);
+                }
+            }
+        }
+        LampPoleVO lampPoleVO1 = new LampPoleVO();
+        lampPoleVO1.setLampPoleDevList(lampPoleDevList);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,lampPoleVO1);
+    }
+
+    /**
+     * 2.0云盒详细信息
+     * @param request id
+     * @return 2.0云盒详细信息
+     */
+    @RequestMapping(value = "/cloudBoxInfo", method = RequestMethod.POST)
+    public BaseResult<?> cloudBoxInfo(HttpServletRequest request) {
+        Integer version = (Integer) toolUtils.getRequestContent(request, "version", 1);
+        Integer id = (Integer) toolUtils.getRequestContent(request, "id", 1);
+        Integer lampPoleId = (Integer) toolUtils.getRequestContent(request, "lampPoleId", 1);
+        if (id == 0 && lampPoleId == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        WifiDTO wifiDTO = new WifiDTO();
+        wifiDTO.setLampPoleId(lampPoleId);
+        wifiDTO.setId(id);
+        WifiDTO dto = wifiService.getWifiInfoDetails(wifiDTO);
+        if (dto == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
+        if (dto.getOnline() != null) {
+            dto.setLED1(dto.getOnline());
+        }
+        if (dto.getACI() != null) {
+            dto.setLED8(dto.getACI());
+        }
+        if (dto.getLedStatus() != null && !dto.getLedStatus().isEmpty()) {
+            String ledStatus = dto.getLedStatus();
+            int decimal = Integer.parseInt(ledStatus, 16);
+            String number = String.format("%8s", Integer.toBinaryString(decimal)).replace(' ', '0');
+            char c8 = number.charAt(7); // LED2
+            int number8 = Character.getNumericValue(c8);
+            dto.setLED2(number8);
+            char c7 = number.charAt(6); // LED4
+            int number7 = Character.getNumericValue(c7);
+            dto.setLED4(number7);
+            char c6 = number.charAt(5); // LED3
+            int number6 = Character.getNumericValue(c6);
+            dto.setLED3(number6);
+            char c4 = number.charAt(3); // LED5
+            int number4 = Character.getNumericValue(c4);
+            dto.setLED5(number4);
+            char c3 = number.charAt(2); // LED6
+            int number3 = Character.getNumericValue(c3);
+            dto.setLED6(number3);
+            char c2 = number.charAt(1); // LED7
+            int number2 = Character.getNumericValue(c2);
+            dto.setLED7(number2);
+        }
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,dto);
+    }
 }

+ 1 - 0
src/main/java/com/welampiot/dao/LampPoleDao.java

@@ -43,4 +43,5 @@ public interface LampPoleDao {
     void updateLampPoleIcon(LampPoleDTO dto);
     List<LampPoleDTO> getNewLampPoleList2(LampPoleVO vo);
     LampPoleDTO getLampPoleDetails(LampPoleVO vo);
+    List<LampPoleDTO> getLampPoleDevList(LampPoleVO vo);
 }

+ 1 - 0
src/main/java/com/welampiot/dao/WifiDao.java

@@ -31,4 +31,5 @@ public interface WifiDao {
     void updateWifiStatus(WifiDTO wifiDTO);
     void updateWifiByLampPoleId(WifiDTO dto);
     Integer checkWifiData(WifiDTO dto);
+    WifiDTO getWifiInfoDetails(WifiDTO dto);
 }

+ 1 - 0
src/main/java/com/welampiot/dao/WifiInfoLogDao.java

@@ -23,4 +23,5 @@ public interface WifiInfoLogDao {
     List<WifiInfoLogDTO> getWifiStatisticsListByDTO(WifiInfoLogDTO dto);
 
     List<WifiInfoLogDTO> getWifiInfoLogListByDTO(WifiInfoLogDTO dto);
+    WifiInfoLogDTO getWifiDayTotalCom(@Param("id") Integer id, @Param("startDate") String startDate);
 }

+ 29 - 2
src/main/java/com/welampiot/dto/LampPoleDTO.java

@@ -10,8 +10,8 @@ public class LampPoleDTO {
     private Integer id;
     private String name;
     private String number;
-    private Float longitude;
-    private Float latitude;
+    private String longitude;
+    private String latitude;
     private String devType;
     private String createTime;
     private Integer online;
@@ -69,6 +69,7 @@ public class LampPoleDTO {
     private Integer alarmStatus;
     private String num;
     private String usedEnergyTotal; // 累计用电量
+    private String totalEleSave;
     private String powerSave; // 累计省电量
     private Integer workTimeTotal; // 累计亮灯时间
     private String temp;
@@ -91,4 +92,30 @@ public class LampPoleDTO {
     private Integer cloudModel;
     private List<EmergencyInfoLogDTO> nowEmList;
     private List<EmergencyInfoLogDTO> hisEmList;
+    private Integer lampPoleId;
+    private String rtmp; // 标清播放地址
+    private String rtmpHd; // 高清播放地址
+    private String proName;
+    private Integer light;
+    private String screenId;
+    private String time;
+    private Integer broadcastId;
+    private String voltage;
+    private String current;
+    private String powerFactor;
+    private Integer wifiCount;
+    private String totalFlow;
+    private String fireVersion;
+    private String softVersion;
+    private String ledStatus;
+    private String totalCom;
+    private Integer ACI;
+    private Integer LED1;
+    private Integer LED2;
+    private Integer LED3;
+    private Integer LED4;
+    private Integer LED5;
+    private Integer LED6;
+    private Integer LED7;
+    private Integer LED8;
 }

+ 8 - 0
src/main/java/com/welampiot/dto/WifiDTO.java

@@ -304,4 +304,12 @@ public class WifiDTO implements Serializable {
     private Float dayFlaw;
     private String upFlaw;
     private String downFlaw;
+    private Integer LED1;
+    private Integer LED2;
+    private Integer LED3;
+    private Integer LED4;
+    private Integer LED5;
+    private Integer LED6;
+    private Integer LED7;
+    private Integer LED8;
 }

+ 1 - 0
src/main/java/com/welampiot/service/LampPoleService.java

@@ -37,4 +37,5 @@ public interface LampPoleService {
     void updateLampPoleIcon(LampPoleDTO dto);
     List<LampPoleDTO> getNewLampPoleList2(LampPoleVO vo);
     LampPoleDTO getLampPoleDetails(LampPoleVO vo);
+    List<LampPoleDTO> getLampPoleDevList(LampPoleVO vo);
 }

+ 2 - 0
src/main/java/com/welampiot/service/WifiInfoLogService.java

@@ -23,4 +23,6 @@ public interface WifiInfoLogService {
     List<WifiInfoLogDTO> getWifiStatisticsListByDTO(WifiInfoLogDTO dto);
 
     List<WifiInfoLogDTO> getWifiInfoLogListByDTO(WifiInfoLogDTO dto);
+
+    WifiInfoLogDTO getWifiDayTotalCom(Integer id, String startDate);
 }

+ 1 - 0
src/main/java/com/welampiot/service/WifiService.java

@@ -33,4 +33,5 @@ public interface WifiService {
     void updateWifiStatus(WifiDTO wifiDTO);
     void updateWifiByLampPoleId(WifiDTO dto);
     Integer checkWifiData(WifiDTO dto);
+    WifiDTO getWifiInfoDetails(WifiDTO dto);
 }

+ 9 - 4
src/main/java/com/welampiot/service/impl/LampPoleServiceImpl.java

@@ -139,8 +139,8 @@ public class LampPoleServiceImpl implements LampPoleService {
         lampPoleDTO.setAreaId(lampPoleVO.getAreaId());
         lampPoleDTO.setSectionId(lampPoleVO.getSectionId());
         lampPoleDTO.setHeight(lampPoleVO.getHeight() == null ? 0 : lampPoleVO.getHeight());
-        lampPoleDTO.setLatitude(lampPoleVO.getLatitude());
-        lampPoleDTO.setLongitude(lampPoleVO.getLongitude());
+        lampPoleDTO.setLatitude(lampPoleVO.getLatitude().toString());
+        lampPoleDTO.setLongitude(lampPoleVO.getLongitude().toString());
         lampPoleDTO.setInstallDate(lampPoleVO.getInstallDate());
         lampPoleDTO.setExpirationDate(lampPoleVO.getExpirationDate());
         Date endDate = new Date(System.currentTimeMillis());
@@ -291,8 +291,8 @@ public class LampPoleServiceImpl implements LampPoleService {
         lampPoleDTO.setAreaId(lampPoleVO.getAreaId());
         lampPoleDTO.setSectionId(lampPoleVO.getSectionId());
         lampPoleDTO.setHeight(lampPoleVO.getHeight() == null ? 0 : lampPoleVO.getHeight());
-        lampPoleDTO.setLatitude(lampPoleVO.getLatitude());
-        lampPoleDTO.setLongitude(lampPoleVO.getLongitude());
+        lampPoleDTO.setLatitude(lampPoleVO.getLatitude().toString());
+        lampPoleDTO.setLongitude(lampPoleVO.getLongitude().toString());
         lampPoleDTO.setInstallDate(lampPoleVO.getInstallDate());
         lampPoleDTO.setExpirationDate(lampPoleVO.getExpirationDate());
         lampPoleDao.update(lampPoleDTO);
@@ -519,6 +519,11 @@ public class LampPoleServiceImpl implements LampPoleService {
         return lampPoleDao.getComBySectionList(lampPoleVO);
     }
 
+    @Override
+    public List<LampPoleDTO> getLampPoleDevList(LampPoleVO vo) {
+        return lampPoleDao.getLampPoleDevList(vo);
+    }
+
     @Override
     public Integer getAlarmCountByVO(LampPoleCountVO lampPoleCountVO) {
         return lampPoleDao.getAlarmCountByVO(lampPoleCountVO);

+ 5 - 0
src/main/java/com/welampiot/service/impl/WifiInfoLogServiceImpl.java

@@ -48,4 +48,9 @@ public class WifiInfoLogServiceImpl implements WifiInfoLogService {
         return wifiInfoLogDao.getWifiInfoLogListByDTO(dto);
     }
 
+    @Override
+    public WifiInfoLogDTO getWifiDayTotalCom(Integer id, String startDate) {
+        return wifiInfoLogDao.getWifiDayTotalCom(id, startDate);
+    }
+
 }

+ 5 - 0
src/main/java/com/welampiot/service/impl/WifiServiceImpl.java

@@ -197,4 +197,9 @@ public class WifiServiceImpl implements WifiService {
     public Integer checkWifiData(WifiDTO dto) {
         return wifiDao.checkWifiData(dto);
     }
+
+    @Override
+    public WifiDTO getWifiInfoDetails(WifiDTO dto) {
+        return wifiDao.getWifiInfoDetails(dto);
+    }
 }

+ 5 - 0
src/main/java/com/welampiot/utils/WeatherUtil.java

@@ -84,4 +84,9 @@ public class WeatherUtil {
             throw new Exception(e);
         }
     }
+
+    public static void main(String[] args) throws Exception {
+        WeatherDTO nowWeatherInfo = getNowWeatherInfo("-0.000231", "-0.000341");
+        System.out.println(nowWeatherInfo);
+    }
 }

+ 3 - 0
src/main/java/com/welampiot/vo/LampPoleVO.java

@@ -45,4 +45,7 @@ public class LampPoleVO implements Serializable {
     private Map weatherDev;
     private List<LampPoleDTO> list;
     private LampPoleDTO lampPoleInfo;
+    private Integer type; // 灯杆绑定的设备类型
+    private Integer lampId; // 灯控id
+    private List<LampPoleDTO> lampPoleDevList;
 }

+ 142 - 0
src/main/resources/mapper/LampPoleMapper.xml

@@ -699,5 +699,147 @@
         left join wifi w on lp.id = w.lamp_pole_id
         where lp.id = #{id}
     </select>
+
+    <select id="getLampPoleDevList" resultType="LampPoleDTO">
+        <choose>
+            <when test="type == 1">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                vm.rtmp,
+                vm.rtmpHd,
+                vm.deviceType,
+                vm.net_type as netType,
+                vm.id as videoId,
+                vm.image
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join video_monitor vm on lp.id = vm.lamp_pole_id
+            </when>
+            <when test="type == 2">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                s.light,
+                s.status,
+                p.name as proName,
+                s.id as screenId,
+                vm.image
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join screen s on lp.id = s.lamp_pole_id
+                left join video_monitor vm on s.videoid = vm.id
+                left join program p on p.id = s.playingid
+            </when>
+            <when test="type == 4">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                b.id as broadcastId,
+                p.time,
+                p.name as proName
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join broadcast b on lp.id = b.lamp_pole_id
+                left join program  p on b.itemId = p.id
+            </when>
+            <when test="type == 5">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                lp.latitude,
+                lp.longitude
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+            </when>
+            <when test="type == 6">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                e.status,
+                s.name as section,
+                eil.beginDate as updateTime
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join section s on l.sectionid = s.id
+                left join emergency e on lp.id = e.lamp_pole_id
+                left join emergency_info_log eil on e.id = eil.deviceid
+            </when>
+            <when test="type == 7">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                c.status,
+                c.bill_amt as billAmt,
+                c.energy
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join charge c on lp.id = c.lamp_pole_id
+            </when>
+            <when test="type == 8">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                w.day_flow as dayFlow,
+                w.day_device_count as dayDeviceCount,
+                w.device_count as deviceCount,
+                w.flow
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join wifi w on lp.id = w.lamp_pole_id
+            </when>
+            <when test="type == 9">
+                select
+                lp.id as lampPoleId,
+                lp.name,
+                w.id,
+                w.voltage,
+                w.current,
+                w.power,
+                w.power_factor as powerFactor,
+                w.device_count as wifiCount,
+                w.day_flow as dayFlow,
+                w.day_device_count as dayDeviceCount,
+                w.device_count as deviceCount,
+                w.flow,
+                w.online,
+                w.ledStatus,
+                w.ACI,
+                w.fir_version as firVersion,
+                w.version as softVersion,
+                w.total_com as totalCom
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join wifi w on lp.id = w.lamp_pole_id
+            </when>
+            <otherwise>
+                select
+                    lp.id as lampPoleId,
+                    lp.name,
+                    l2.total_gener_energy_cache as usedEnergyTotal,
+                    l2.total_ele_save_cache as powerSave,
+                    l2.work_time_total as workTimeTotal
+                from lamp_pole lp
+                left join lampinfo l on lp.id = l.lamp_pole_id
+                left join lamp_info_log_new l2 on l2.lampid = l.id
+            </otherwise>
+        </choose>
+        where 1=1
+        <if test="lampId != null and lampId != 0">
+            and l.id = #{lampId}
+        </if>
+        <if test="sectionList != null and !sectionList.isEmpty()">
+            and lp.sectionid in
+            <foreach collection="sectionList" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        <if test="areaId != null and areaId != 0">
+            and lp.areaid = #{areaId}
+        </if>
+        <if test="sectionId != null and sectionId != 0">
+            and lp.sectionid = #{sectionId}
+        </if>
+    </select>
     
 </mapper>

+ 8 - 0
src/main/resources/mapper/WifiInfoLogMapper.xml

@@ -78,4 +78,12 @@
         ORDER BY w.updatetime DESC
     </select>
 
+    <select id="getWifiDayTotalCom" resultType="WifiInfoLogDTO">
+        select w.total_com as totalCom
+        from wifi_info_log w
+        where w.wifiid = #{id} and date(w.updatetime) = #{startDate}
+        order by w.updatetime desc
+        limit 1
+    </select>
+
 </mapper>

+ 24 - 4
src/main/resources/mapper/WifiMapper.xml

@@ -62,10 +62,12 @@
     </select>
 
     <select id="getWifiOutInfoByDTO" resultType="WifiDTO">
-        select w.remark1,w.remark2,w.remark3,w.remark4,w.remark5,w.remark6,w.AC1,w.AC2,w.AC3,
-               w.lna1_status lna1Status,w.lna2_status lna2Status,w.lna3_status lna3Status,w.type1,
-               w.type2,w.type3,w.type4,w.type5,w.type6,w.close_time1 closeTime1,w.close_time2 closeTime2,
-               w.close_time3 closeTime3,w.close_time4 closeTime4,w.close_time5 closeTime5,w.close_time6 closeTime6,
+        select w.remark1,w.remark2,w.remark3,w.remark4,w.remark5,w.remark6,w.AC1,w.AC2,w.AC3,w.voltage,w.current,w.power,
+               w.lna1_status lna1Status,w.lna2_status lna2Status,w.lna3_status lna3Status,w.type1,w.power_factor as powerFactor,
+               w.type2,w.type3,w.type4,w.type5,w.type6,w.close_time1 closeTime1,w.close_time2 closeTime2,w.flow as totalFlow,w.fir_version as firVersion,
+               w.version as softVesion,w.ledStatus,w.online,w.ACI,w.lna1_vol as lna1Vol,w.lna1_cur as lna1Cur,w.lna2_vol as lna2Vol,w.lna2_cur as lna2Cur,
+               w.lna3_vol as lna3Vol,w.lna3_cur as lna3Cur,
+               w.close_time3 closeTime3,w.close_time4 closeTime4,w.close_time5 closeTime5,w.close_time6 closeTime6,w.device_count as wifiCount,
                w.open_time1 openTime1,w.open_time2 openTime2,w.open_time3 openTime3,w.open_time4 openTime4,w.open_time5 openTime5,w.open_time6 openTime6
         from wifi w left join lamp_pole lp on w.lamp_pole_id = lp.id
         where w.id = #{id}
@@ -242,4 +244,22 @@
             and w.id != #{id}
         </if>
     </select>
+
+    <select id="getWifiInfoDetails" resultType="WifiDTO">
+        select w.remark1,w.remark2,w.remark3,w.remark4,w.remark5,w.remark6,w.AC1,w.AC2,w.AC3,w.voltage,w.current,w.power,
+        w.lna1_status lna1Status,w.lna2_status lna2Status,w.lna3_status lna3Status,w.type1,w.power_factor as powerFactor,
+        w.type2,w.type3,w.type4,w.type5,w.type6,w.close_time1 closeTime1,w.close_time2 closeTime2,w.flow as totalFlow,w.fir_version as firVersion,
+        w.version as softVesion,w.ledStatus,w.online,w.ACI,w.lna1_vol as lna1Vol,w.lna1_cur as lna1Cur,w.lna2_vol as lna2Vol,w.lna2_cur as lna2Cur,
+        w.lna3_vol as lna3Vol,w.lna3_cur as lna3Cur,
+        w.close_time3 closeTime3,w.close_time4 closeTime4,w.close_time5 closeTime5,w.close_time6 closeTime6,w.device_count as wifiCount,
+        w.open_time1 openTime1,w.open_time2 openTime2,w.open_time3 openTime3,w.open_time4 openTime4,w.open_time5 openTime5,w.open_time6 openTime6
+        from wifi w
+        where 1=1
+        <if test="id != null and id != 0">
+            and w.id = #{id}
+        </if>
+        <if test="lampPoleId != null and lampPoleId != 0">
+            and w.lamp_pole_id = #{lampPoleId}
+        </if>
+    </select>
 </mapper>