浏览代码

1.完成小程序查询异常事件列表 根据设备名称模糊搜索
2.完成小程序查询被分享用户服务权限
3.修改上传文件大小改为10M

hxd 2 月之前
父节点
当前提交
4606c91455

+ 7 - 0
portal-service-application/src/main/java/com/hfln/portal/application/controller/wap/ShareController.java

@@ -2,6 +2,7 @@ package com.hfln.portal.application.controller.wap;
 
 import cn.hfln.framework.catchlog.CatchAndLog;
 import cn.hfln.framework.dto.ApiResult;
+import com.hfln.portal.common.dto.data.share.QueryUserPermissionDTO;
 import com.hfln.portal.common.dto.data.share.ShareDto;
 import com.hfln.portal.common.request.share.*;
 import com.hfln.portal.domain.gateway.DeviceGateway;
@@ -70,4 +71,10 @@ public class ShareController {
         deviceGateway.updateDeviceShare(param);
         return ApiResult.success();
     }
+
+    @PostMapping("/queryUserVoipPermission")
+    @Operation(summary = "查询用户被分享设备的服务权限")
+    public ApiResult<QueryUserPermissionDTO> queryUserPermission(@RequestBody @Valid QueryUserVoipParam param) {
+        return ApiResult.success(deviceGateway.queryUserPermission(param));
+    }
 }

+ 19 - 0
portal-service-common/src/main/java/com/hfln/portal/common/dto/data/share/QueryUserPermissionDTO.java

@@ -0,0 +1,19 @@
+package com.hfln.portal.common.dto.data.share;
+
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+@Schema(description = "用户被分享设备权限")
+@Data
+public class QueryUserPermissionDTO {
+
+    @Schema(description = "短信推送权限:0-授权,1-拒绝")
+    private Integer messageFlag;
+
+    @Schema(description = "服务号推送权限:0-授权,1-拒绝")
+    private Integer serviceNumberFlag;
+
+    @Schema(description = "语音推送权限:0-授权,1-拒绝")
+    private Integer voipFlag;
+}

+ 3 - 0
portal-service-common/src/main/java/com/hfln/portal/common/request/event/AlarmEventParams.java

@@ -18,6 +18,9 @@ public class AlarmEventParams extends PageVo {
     @Schema(description = "租户id")
     private Long tenantId;
 
+    @Schema(description = "设备名称")
+    private String devName;
+
     @Schema(description = "起始时间 格式yyyy-MM-dd")
     private LocalDate createTimeStart;
 

+ 23 - 0
portal-service-common/src/main/java/com/hfln/portal/common/request/share/QueryUserVoipParam.java

@@ -0,0 +1,23 @@
+package com.hfln.portal.common.request.share;
+
+import com.hfln.portal.common.vo.BaseVO;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotNull;
+
+
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "查询用户被分享设备的服务权限")
+@Data
+public class QueryUserVoipParam extends BaseVO {
+
+    @Schema(description = "用户ID")
+    @NotNull
+    private Long userId;
+
+    @Schema(description = "设备ID")
+    @NotNull
+    private Long devId;
+}

+ 3 - 0
portal-service-domain/src/main/java/com/hfln/portal/domain/gateway/DeviceGateway.java

@@ -3,6 +3,7 @@ package com.hfln.portal.domain.gateway;
 import com.hfln.portal.common.dto.data.device.DeviceDTO;
 import com.hfln.portal.common.dto.data.home.HomeInfoDTO;
 import com.hfln.portal.common.dto.data.room.RoomDTO;
+import com.hfln.portal.common.dto.data.share.QueryUserPermissionDTO;
 import com.hfln.portal.common.dto.data.share.ShareDto;
 import com.hfln.portal.common.request.device.*;
 import com.hfln.portal.common.request.room.RoomParam;
@@ -73,6 +74,8 @@ public interface DeviceGateway {
 
     void updateDeviceShare(updateShareParam param);
 
+    QueryUserPermissionDTO queryUserPermission(QueryUserVoipParam param);
+
     /**
      *  mqtt 雷达
      */

+ 20 - 0
portal-service-infrastructure/src/main/java/com/hfln/portal/infrastructure/gateway/impl/DeviceGatewayImpl.java

@@ -19,6 +19,7 @@ import com.hfln.portal.common.dto.data.oss.OssFileDTO;
 import com.hfln.portal.common.dto.data.room.RegionDTO;
 import com.hfln.portal.common.dto.data.room.RoomDTO;
 import com.hfln.portal.common.dto.data.room.SubRegionDTO;
+import com.hfln.portal.common.dto.data.share.QueryUserPermissionDTO;
 import com.hfln.portal.common.dto.data.share.ShareDto;
 import com.hfln.portal.common.request.device.*;
 import com.hfln.portal.common.request.room.RoomParam;
@@ -837,6 +838,25 @@ public class DeviceGatewayImpl implements DeviceGateway {
     }
 
     @Override
+    public QueryUserPermissionDTO queryUserPermission(QueryUserVoipParam param){
+        LambdaQueryWrapper<DevShare> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(DevShare::getDevId, param.getDevId());
+        queryWrapper.eq(DevShare::getSharedUserId, param.getUserId());
+        queryWrapper.eq(DevShare::getState, DevShare.Constants.ShareStatus.SHARED);
+        DevShare devShare = devShareService.getOne(queryWrapper);
+
+        if (devShare == null){
+            throw new BizException(ErrorEnum.SHARE_RECORD_IS_NOT_EXIST.getErrorCode(), ErrorEnum.SHARE_RECORD_IS_NOT_EXIST.getErrorMessage());
+        }
+
+        QueryUserPermissionDTO dto = new QueryUserPermissionDTO();
+        dto.setMessageFlag(devShare.getMessageFlag());
+        dto.setServiceNumberFlag(devShare.getServiceNumberFlag());
+        dto.setVoipFlag(devShare.getVoipFlag());
+        return dto;
+    }
+
+    @Override
     public void getVersion(String clientId) {
 
         String topic = String.format(TopicConstants.TOPIC_DEV_GET_VERSION, clientId);

+ 2 - 2
portal-service-infrastructure/src/main/java/com/hfln/portal/infrastructure/gateway/impl/WebGatewayImpl.java

@@ -143,7 +143,7 @@ public class WebGatewayImpl implements WebGateway {
             DevInfo devInfo = new DevInfo();
             devInfo.setClientId(item.getClientId());
             devInfo.setDevType(item.getDevType());
-            devInfo.setHardware(item.getHardware());
+            devInfo.setSoftware(item.getHardware());
             devInfo.setStatusLight(1);
             devInfo.setOnline(0);
             devInfo.setIsDeleted(BasePO.DeleteFlag.NOT_DELETED);
@@ -248,7 +248,7 @@ public class WebGatewayImpl implements WebGateway {
         DevInfo saveInfo = new DevInfo();
         saveInfo.setClientId(deviceAddParam.getClientId());
         saveInfo.setDevType(deviceAddParam.getDevType());
-        saveInfo.setHardware(deviceAddParam.getHardware());
+        saveInfo.setSoftware(deviceAddParam.getHardware());
         saveInfo.setTenantId(deviceAddParam.getTenantId());
         saveInfo.setStatusLight(1);
         saveInfo.setOnline(0);

+ 13 - 0
portal-service-infrastructure/src/main/java/com/hfln/portal/infrastructure/mapper/AlarmEventMapper.java

@@ -1,9 +1,22 @@
 package com.hfln.portal.infrastructure.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.hfln.portal.infrastructure.po.AlarmEvent;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
 
 @Mapper
 public interface AlarmEventMapper extends BaseMapper<AlarmEvent> {
+
+    /**
+     * 根据设备名称查询异常事件记录
+     */
+    @Select("SELECT ae.* " +
+            "FROM alarm_event ae " +
+            "INNER JOIN dev_info di ON ae.dev_id = di.dev_id " +
+            "WHERE di.dev_name = #{devName}")
+    Page<AlarmEvent> findAlarmEventsByDevName(Page<AlarmEvent> page,
+                                              @Param("devName") String devName);
 } 

+ 5 - 0
portal-service-infrastructure/src/main/java/com/hfln/portal/infrastructure/service/impl/AlarmEventServiceImpl.java

@@ -22,6 +22,11 @@ public class AlarmEventServiceImpl extends ServiceImpl<AlarmEventMapper, AlarmEv
     public Page<AlarmEvent> QueryAlarmEvent(AlarmEventParams params, List<Long> devIdList) {
         Page<AlarmEvent> page = new Page<>(params.getPageNo(), params.getPageSize());
 
+        // 1.如果入参有devName,调用联表查询
+        if (params.getDevName() != null && !params.getDevName().trim().isEmpty()) {
+            return this.baseMapper.findAlarmEventsByDevName(page,params.getDevName());
+        }
+
         // 2. 构建查询条件
         LambdaQueryWrapper<AlarmEvent> queryWrapper = new LambdaQueryWrapper<>();
         if (devIdList != null && !devIdList.isEmpty()){

+ 4 - 0
portal-service-server/src/main/resources/bootstrap-dev.yml

@@ -10,6 +10,10 @@ spring:
         group: DEFAULT_GROUP
         namespace: dev
         file-extension: yaml
+  servlet:
+    multipart:
+      max-file-size: 10MB
+      max-request-size: 10MB
   redis:
     # 地址
     host: 8.130.28.21

+ 4 - 0
portal-service-server/src/main/resources/bootstrap-local.yml

@@ -10,6 +10,10 @@ spring:
         group: DEFAULT_GROUP
         namespace: local
         file-extension: yaml
+  servlet:
+    multipart:
+      max-file-size: 10MB
+      max-request-size: 10MB
   redis:
     # 地址
     host: 8.130.28.21

+ 4 - 0
portal-service-server/src/main/resources/bootstrap-test.yml

@@ -10,6 +10,10 @@ spring:
         group: DEFAULT_GROUP
         namespace: test
         file-extension: yaml
+  servlet:
+    multipart:
+      max-file-size: 10MB
+      max-request-size: 10MB
   redis:
     # 地址
     host: 127.0.0.1