浏览代码

Merge branch 'server-165' of uskycloud/usky-modules into master

gez 1 年之前
父节点
当前提交
95f04ec9e8
共有 25 个文件被更改,包括 354 次插入96 次删除
  1. 6 1
      service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/BaseAlarmServiceImpl.java
  2. 3 2
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/annotation/aspect/FaceAspect.java
  3. 2 1
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingAttendeeController.java
  4. 6 2
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingFaceController.java
  5. 2 1
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingInfoController.java
  6. 54 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingRoomController.java
  7. 9 1
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingAttendee.java
  8. 9 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingDevice.java
  9. 5 5
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingFace.java
  10. 2 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingFloor.java
  11. 9 10
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingRoom.java
  12. 2 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/mapper/MeetingRoomMapper.java
  13. 17 9
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingAttendeeRepository.java
  14. 4 4
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingInfoRepository.java
  15. 2 2
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingRoomRepository.java
  16. 2 1
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingFaceService.java
  17. 3 2
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingInfoService.java
  18. 12 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingRoomService.java
  19. 34 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingDeviceServiceImpl.java
  20. 43 37
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingFaceServiceImpl.java
  21. 4 4
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingInfoServiceImpl.java
  22. 80 12
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingRoomServiceImpl.java
  23. 43 0
      service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/vo/MeetingFaceVO.java
  24. 1 1
      service-meeting/service-meeting-biz/src/main/resources/mapper/meeting/MeetingFaceMapper.xml
  25. 0 1
      service-meeting/service-meeting-biz/src/main/resources/mapper/meeting/MeetingRoomMapper.xml

+ 6 - 1
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/BaseAlarmServiceImpl.java

@@ -21,6 +21,8 @@ import com.usky.iot.service.config.websocket.WebSocket;
 import com.usky.iot.service.vo.BaseAlarmListVO;
 import com.usky.iot.service.vo.BaseAlarmRequestVO;
 import com.usky.iot.service.vo.BaseAlarmResponeVO;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -46,6 +48,8 @@ import java.util.stream.Collectors;
 @Service
 public class BaseAlarmServiceImpl extends AbstractCrudService<BaseAlarmMapper, BaseAlarm> implements BaseAlarmService {
 
+    private static final Logger LOGGER = LoggerFactory.getLogger(BaseAlarmServiceImpl.class);
+
     @Autowired
     private DmpProductInfoService dmpProductInfoService;
 
@@ -551,10 +555,11 @@ public class BaseAlarmServiceImpl extends AbstractCrudService<BaseAlarmMapper, B
             this.updateBatchById(list);
 
         }else {  // 单一
+            LOGGER.info("alarmceshi+++++++++"+SecurityUtils.getLoginUser().getSysUser());
             baseAlarm.setHandleStatus(1);
             baseAlarm.setHandleBy(SecurityUtils.getUsername());
             baseAlarm.setHandleTime(LocalDateTime.now());
-            baseAlarm.setHandlePhone(SecurityUtils.getLoginUser().getSysUser().getPhonenumber());
+//            baseAlarm.setHandlePhone(SecurityUtils.getLoginUser().getSysUser().getPhonenumber());
             this.updateById(baseAlarm);
         }
     }

+ 3 - 2
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/annotation/aspect/FaceAspect.java

@@ -5,6 +5,7 @@ package com.usky.meeting.annotation.aspect;
 import com.usky.meeting.domain.MeetingFaceVefLog;
 import com.usky.meeting.service.MeetingFaceVefLogService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceVO;
 import org.aspectj.lang.JoinPoint;
 import org.aspectj.lang.annotation.AfterReturning;
 import org.aspectj.lang.annotation.Aspect;
@@ -26,12 +27,12 @@ public class FaceAspect {
 
     @AfterReturning(value = "@annotation(com.usky.meeting.annotation.FaceLog)",returning = "res")
     public void addLog(JoinPoint joinPoint ,Object res){
-        FaceResultVO result = (FaceResultVO)res;
+        MeetingFaceVO result = (MeetingFaceVO)res;
         MeetingFaceVefLog faceVefLog = new MeetingFaceVefLog();
         faceVefLog.setVefTime(LocalDateTime.now());
         faceVefLog.setVefCode(result.getCode());
         faceVefLog.setVefMsg(result.getMsg());
-        faceVefLog.setLoginName(result.getName());
+        faceVefLog.setLoginName(result.getFaceName());
         faceVefLogService.save(faceVefLog);
     }
 

+ 2 - 1
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingAttendeeController.java

@@ -4,6 +4,7 @@ package com.usky.meeting.controller.web;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RestController;
 
 /**
  * <p>
@@ -13,7 +14,7 @@ import org.springframework.stereotype.Controller;
  * @author zyj
  * @since 2024-03-08
  */
-@Controller
+@RestController
 @RequestMapping("/meetingAttendee")
 public class MeetingAttendeeController {
 

+ 6 - 2
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingFaceController.java

@@ -7,10 +7,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.bean.CommonPage;
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.meeting.annotation.FaceLog;
 import com.usky.meeting.domain.MeetingFace;
 import com.usky.meeting.service.MeetingFaceService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
@@ -40,7 +42,7 @@ public class MeetingFaceController {
     @PostMapping("/vef")
     @ApiOperation(value="人脸验证", notes="根据传入的base64编码和数据的base64编码进行对比")
     @FaceLog
-    public FaceResultVO faceVef(@RequestBody String imageBase){
+    public MeetingFaceVO faceVef(@RequestBody String imageBase){
         return faceService.vef(imageBase);
     }
 
@@ -54,7 +56,8 @@ public class MeetingFaceController {
     ){
         IPage<MeetingFace> page = faceService.page(new Page(current, size), new QueryWrapper<MeetingFace>()
                 .like(StrUtil.isNotBlank(faceName),"face_name",faceName)
-                .like(StrUtil.isNotBlank(faceStatus),"face_status",faceStatus));
+                .like(StrUtil.isNotBlank(faceStatus),"face_status",faceStatus)
+                .eq("tenant_id", SecurityUtils.getTenantId()));
         return ApiResult.success(new CommonPage<>(page.getRecords(),page.getTotal(),size,current));
     }
 
@@ -77,6 +80,7 @@ public class MeetingFaceController {
     public FaceResultVO save(@RequestBody MeetingFace face){
         face.setVefNum(0);
         face.setCreateTime(LocalDateTime.now());
+        face.setTenantId(SecurityUtils.getTenantId());
         faceService.save(face);
         return FaceResultVO.success("添加成功");
     }

+ 2 - 1
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingInfoController.java

@@ -4,6 +4,7 @@ package com.usky.meeting.controller.web;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RestController;
 
 /**
  * <p>
@@ -13,7 +14,7 @@ import org.springframework.stereotype.Controller;
  * @author zyj
  * @since 2024-03-08
  */
-@Controller
+@RestController
 @RequestMapping("/meetingInfo")
 public class MeetingInfoController {
 

+ 54 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingRoomController.java

@@ -10,6 +10,7 @@ import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -49,5 +50,58 @@ public class MeetingRoomController {
 
     }
 
+    /**
+     * 会议室下拉框信息
+     * @return
+     */
+    @PostMapping("MeetingRoomList")
+    public ApiResult<List<MeetingRoom>> MeetingRoomList(){
+        return ApiResult.success(meetingRoomService.MeetingRoomList());
+    }
+
+    /**
+     * 新增
+     * @param meetingRoom
+     * @return
+     */
+    @PostMapping
+    public ApiResult<Void> add(@RequestBody MeetingRoom meetingRoom){
+        meetingRoomService.add(meetingRoom);
+        return ApiResult.success();
+    }
+
+    /**
+     * 修改
+     * @param meetingRoom
+     * @return
+     */
+    @PutMapping
+    public ApiResult<Void> edit(@RequestBody MeetingRoom meetingRoom){
+        meetingRoomService.edit(meetingRoom);
+        return ApiResult.success();
+    }
+
+    /**
+     * 删除
+     * @param roomId
+     * @return
+     */
+    @DeleteMapping
+    public ApiResult<Void> remove(@RequestParam Long roomId){
+        meetingRoomService.remove(roomId);
+        return ApiResult.success();
+    }
+
+    /**
+     * 会议人员权限审核
+     * @param meetingId
+     * @param userId
+     * @param userName
+     * @return
+     */
+    @GetMapping("attendee")
+    public ApiResult<Map<String,Object>> attendee(Long meetingId, Long userId, String userName){
+        return ApiResult.success(meetingRoomService.attendee(meetingId,userId,userName));
+    }
 }
 

+ 9 - 1
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingAttendee.java

@@ -4,9 +4,14 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import java.time.LocalDateTime;
 import java.io.Serializable;
+
+import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import javax.persistence.Entity;
+import javax.persistence.Id;
+
 /**
  * <p>
  * 会议参会人员关联表
@@ -16,11 +21,14 @@ import lombok.EqualsAndHashCode;
  * @since 2024-03-08
  */
 @Data
+@Entity
+@TableName("meeting_attendee")
 @EqualsAndHashCode(callSuper = false)
 public class MeetingAttendee implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
+    @Id
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
@@ -32,7 +40,7 @@ public class MeetingAttendee implements Serializable {
     /**
      * 参与人id
      */
-    private String userId;
+    private Long userId;
 
     /**
      * 是否签到(0-否 1-是)

+ 9 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingDevice.java

@@ -3,8 +3,10 @@ package com.usky.meeting.domain;
 import java.time.LocalDateTime;
 import java.io.Serializable;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -29,6 +31,7 @@ public class MeetingDevice implements Serializable {
 
     @Id
     @TableId
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
     private Long deviceId;
 
     /**
@@ -106,5 +109,11 @@ public class MeetingDevice implements Serializable {
      */
     private Integer tenantId;
 
+    /**
+     * 会议室名称
+     */
+    @TableField(exist = false)
+    private String roomName;
+
 
 }

+ 5 - 5
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingFace.java

@@ -57,11 +57,6 @@ public class MeetingFace implements Serializable {
      */
     private Integer faceStatus;
 
-    /**
-     * 扩展字段1(user_id)
-     */
-    private String updateExtend1;
-
     /**
      * 扩展字段2
      */
@@ -82,5 +77,10 @@ public class MeetingFace implements Serializable {
      */
     private Integer tenantId;
 
+    /**
+     * 用户ID
+     */
+    private Long userId;
+
 
 }

+ 2 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingFloor.java

@@ -5,6 +5,7 @@ import java.io.Serializable;
 
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -29,6 +30,7 @@ public class MeetingFloor implements Serializable {
 
     @Id
     @TableId
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
     private Long floorId;
 
     /**

+ 9 - 10
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/domain/MeetingRoom.java

@@ -4,12 +4,14 @@ import java.time.LocalDateTime;
 import java.io.Serializable;
 
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import javax.persistence.Entity;
 import javax.persistence.Id;
+import javax.persistence.ManyToOne;
 
 /**
  * <p>
@@ -28,6 +30,7 @@ public class MeetingRoom implements Serializable {
     private static final long serialVersionUID = 1L;
 
     @Id
+    @TableId
     private Long roomId;
 
     /**
@@ -45,11 +48,6 @@ public class MeetingRoom implements Serializable {
      */
     private String description;
 
-    /**
-     * 文件存储id(tool_local_storage)
-     */
-    private String storageId;
-
     /**
      * 会议室图片
      */
@@ -83,17 +81,17 @@ public class MeetingRoom implements Serializable {
     /**
      * 会议室使用状态(0-未使用 1-使用中)
      */
-    private Long roomStatus;
+    private Integer roomStatus;
 
     /**
      * 会议室预约状态(0-未预约 1-已预约)
      */
-    private Long reserveStatus;
+    private Integer reserveStatus;
 
     /**
-     * 会议室状态(00.启用 01.停用)
+     * 会议室状态(0.启用 1.停用)
      */
-    private String status;
+    private Integer status;
 
     /**
      * 会议室环境
@@ -128,11 +126,12 @@ public class MeetingRoom implements Serializable {
     /**
      * 是否需要审批(0-否 1-是)
      */
-    private Long isApprove;
+    private Integer isApprove;
 
     /**
      * 楼层信息
      */
+    @ManyToOne
     @TableField(exist = false)
     private MeetingFloor meetingFloor;
 

+ 2 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/mapper/MeetingRoomMapper.java

@@ -2,6 +2,7 @@ package com.usky.meeting.mapper;
 
 import com.usky.meeting.domain.MeetingRoom;
 import com.usky.common.mybatis.core.CrudMapper;
+import org.springframework.stereotype.Repository;
 
 /**
  * <p>
@@ -11,6 +12,7 @@ import com.usky.common.mybatis.core.CrudMapper;
  * @author zyj
  * @since 2024-03-08
  */
+@Repository
 public interface MeetingRoomMapper extends CrudMapper<MeetingRoom> {
 
 }

+ 17 - 9
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingAttendeeRepository.java

@@ -1,14 +1,22 @@
 
 package com.usky.meeting.repository;
 
+import com.usky.meeting.domain.MeetingAttendee;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.List;
+
 /**
-* @website https://el-admin.vip
-* @author shiguangji
-* @date 2021-03-17
+*
+* @author zyj
+* @date 2024-03-13
 **/
-//public interface DmMeetingAttendeeRepository extends JpaRepository<DmMeetingAttendee, String>, JpaSpecificationExecutor<DmMeetingAttendee> {
-//    @Query(value = "SELECT a.* FROM dm_meeting_attendee a WHERE " +
-//            "if(:meetingId != '',a.meeting_id = :meetingId,1=1)" + "and if(:userId != '',a.user_id = :userId,1=1)",nativeQuery = true)
-//    List<DmMeetingAttendee> findMeetingAttendeeList(@Param("meetingId") Long meetingId, @Param("userId") String userId);
-//
-//}
+public interface MeetingAttendeeRepository extends JpaRepository<MeetingAttendee, String>, JpaSpecificationExecutor<MeetingAttendee> {
+    @Query(value = "SELECT a.* FROM meeting_attendee a WHERE a.tenant_id = :tenantId " +
+            "and if(:meetingId != '',a.meeting_id = :meetingId,1=1)" + "and if(:userId != '',a.user_id = :userId,1=1)",nativeQuery = true)
+    List<MeetingAttendee> findMeetingAttendeeList(@Param("meetingId") Long meetingId, @Param("userId") Long userId, @Param("tenantId") Integer tenantId);
+
+}

+ 4 - 4
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingInfoRepository.java

@@ -489,11 +489,11 @@ public interface MeetingInfoRepository extends JpaRepository<MeetingInfo, Long>,
 //    @Query(value = "insert into dm_meeting_attendee (meeting_id, user_id) values (:meetingId,:userId) ",nativeQuery = true)
 //    void createMeetingAttendee(@Param("meetingId") Long meetingId, @Param("userId") String userId);
 
-    @Query(value = "select count(a.meeting_id) as total,if(ISNULL(sum(if(a.meeting_status=0,1,0))),0,sum(if(a.meeting_status=0,1,0))) as notStarted,if(ISNULL(sum(if(a.meeting_status=1,1,0))),0,sum(if(a.meeting_status=1,1,0))) as haveInHand,if(ISNULL(sum(if(a.meeting_status=2,1,0))),0,sum(if(a.meeting_status=2,1,0))) as `end` from meeting_info as a where to_days(a.start_date) = to_days(now()) and a.approve_status=1 and is_cancel != 1" ,nativeQuery = true)
-    Map<String,Object> meetingSummary();
+    @Query(value = "select count(a.meeting_id) as total,if(ISNULL(sum(if(a.meeting_status=0,1,0))),0,sum(if(a.meeting_status=0,1,0))) as notStarted,if(ISNULL(sum(if(a.meeting_status=1,1,0))),0,sum(if(a.meeting_status=1,1,0))) as haveInHand,if(ISNULL(sum(if(a.meeting_status=2,1,0))),0,sum(if(a.meeting_status=2,1,0))) as `end` from meeting_info as a where a.tenant_id=:tenantId and to_days(a.start_date) = to_days(now()) and a.approve_status=1 and is_cancel != 1" ,nativeQuery = true)
+    Map<String,Object> meetingSummary(@Param("tenantId") Integer tenantId);
 
-    @Query(value = "select sum(MONTH(start_date)=1) as one,sum(MONTH(start_date)=2) as two,sum(MONTH(start_date)=3) as three,sum(MONTH(start_date)=4) as four,sum(MONTH(start_date)=5) as five,sum(MONTH(start_date)=6) as six,sum(MONTH(start_date)=7) as seven,sum(MONTH(start_date)=8) as eight,sum(MONTH(start_date)=9) as nine,sum(MONTH(start_date)=10) as ten,sum(MONTH(start_date)=11) as eleven,sum(MONTH(start_date)=12) as twelve from meeting_info where YEAR(start_date)=:year and approve_status=1 and is_cancel != 1" ,nativeQuery = true)
-    Map<String,Object> meetingSummaryByYear(@Param("year") String year);
+    @Query(value = "select sum(MONTH(start_date)=1) as one,sum(MONTH(start_date)=2) as two,sum(MONTH(start_date)=3) as three,sum(MONTH(start_date)=4) as four,sum(MONTH(start_date)=5) as five,sum(MONTH(start_date)=6) as six,sum(MONTH(start_date)=7) as seven,sum(MONTH(start_date)=8) as eight,sum(MONTH(start_date)=9) as nine,sum(MONTH(start_date)=10) as ten,sum(MONTH(start_date)=11) as eleven,sum(MONTH(start_date)=12) as twelve from meeting_info where tenant_id=:tenantId and YEAR(start_date)=:year and approve_status=1 and is_cancel != 1" ,nativeQuery = true)
+    Map<String,Object> meetingSummaryByYear(@Param("year") String year,@Param("tenantId") Integer tenantId);
 
 //    @Query(value = "select meeting_id as meetingId from dm_meeting_attendee where user_id = :userId" , nativeQuery = true)
 //    List<BigInteger> queryMeetingIdsByUserId(@Param("userId") String userId);

+ 2 - 2
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/repository/MeetingRoomRepository.java

@@ -56,8 +56,8 @@ public interface MeetingRoomRepository extends JpaRepository<MeetingRoom, Long>,
             " count(a.room_id) as total," +
             " sum(if(a.room_status=0,1,0)) as idle," +
             " sum(if(a.room_status=1,1,0)) as in_use " +
-            " from meeting_room as a" ,nativeQuery = true)
-    Map<String,Object> roomSummary();
+            " from meeting_room as a where a.tenant_id=:tenantId" ,nativeQuery = true)
+    Map<String,Object> roomSummary(@Param("tenantId") Integer tenantId);
 
 //    //查询所有参会人和签到人数
 //    @Query(value = "select count(m.user_id) as attendeeTotal,sum(if(m.is_sign=1,1,0)) as attendeeInUse from dm_meeting_attendee as m" ,nativeQuery = true)

+ 2 - 1
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingFaceService.java

@@ -3,6 +3,7 @@ package com.usky.meeting.service;
 import com.usky.meeting.domain.MeetingFace;
 import com.usky.common.mybatis.core.CrudService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceVO;
 
 /**
  * <p>
@@ -19,5 +20,5 @@ public interface MeetingFaceService extends CrudService<MeetingFace> {
      * @param imageBase
      * @return
      */
-    FaceResultVO vef(String imageBase);
+    MeetingFaceVO vef(String imageBase);
 }

+ 3 - 2
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingInfoService.java

@@ -2,6 +2,7 @@ package com.usky.meeting.service;
 
 import com.usky.meeting.domain.MeetingInfo;
 import com.usky.common.mybatis.core.CrudService;
+import org.springframework.data.repository.query.Param;
 
 import java.util.Map;
 
@@ -19,11 +20,11 @@ public interface MeetingInfoService extends CrudService<MeetingInfo> {
      * 获取当日会议预约数量
      * @return  Map<String,Object>
      */
-    Map<String,Object> meetingSummary();
+    Map<String,Object> meetingSummary(Integer tenantId);
 
     /**
      * 获取当年会议预约数量
      * @return  Map<String,Object>
      */
-    Map<String,Object> meetingSummaryByYear(String year);
+    Map<String,Object> meetingSummaryByYear(String year, Integer tenantId);
 }

+ 12 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingRoomService.java

@@ -4,7 +4,9 @@ import com.usky.common.core.bean.CommonPage;
 import com.usky.meeting.domain.MeetingRoom;
 import com.usky.common.mybatis.core.CrudService;
 import com.usky.meeting.service.vo.MeetingRoomRequestVO;
+import org.springframework.web.bind.annotation.RequestBody;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -21,4 +23,14 @@ public interface MeetingRoomService extends CrudService<MeetingRoom> {
     Map<String,Object> FirstPageStatistic(String year);
 
     CommonPage<MeetingRoom> dmMeetingRoomList(MeetingRoomRequestVO requestVO);
+
+    List<MeetingRoom> MeetingRoomList();
+
+    void add(MeetingRoom meetingRoom);
+
+    void edit(MeetingRoom meetingRoom);
+
+    void remove(Long roomId);
+
+    Map<String,Object> attendee(Long meetingId, Long userId, String userName);
 }

+ 34 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingDeviceServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.lang.Snowflake;
 import cn.hutool.core.util.IdUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -12,19 +13,27 @@ import com.usky.common.core.exception.BusinessException;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.meeting.domain.MeetingDevice;
 import com.usky.meeting.domain.MeetingFloor;
+import com.usky.meeting.domain.MeetingRoom;
 import com.usky.meeting.mapper.MeetingDeviceMapper;
+import com.usky.meeting.mapper.MeetingRoomMapper;
 import com.usky.meeting.service.MeetingDeviceService;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.meeting.service.MeetingRoomService;
 import com.usky.meeting.service.vo.MeetingDeviceRequestVO;
 import net.bytebuddy.implementation.bytecode.Throw;
 import org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut;
 import org.bouncycastle.jcajce.provider.symmetric.AES;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.util.Optionals;
+import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Service;
 
 import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -36,6 +45,8 @@ import java.util.Optional;
  */
 @Service
 public class MeetingDeviceServiceImpl extends AbstractCrudService<MeetingDeviceMapper, MeetingDevice> implements MeetingDeviceService {
+    @Autowired
+    private MeetingRoomMapper meetingRoomMapper;
 
     @Override
     public CommonPage<MeetingDevice> meetingDeviceList(MeetingDeviceRequestVO requestVO){
@@ -48,8 +59,31 @@ public class MeetingDeviceServiceImpl extends AbstractCrudService<MeetingDeviceM
                 .like(StringUtils.isNotBlank(requestVO.getMaintainer()),MeetingDevice::getMaintainer,requestVO.getMaintainer())
                 .like(StringUtils.isNotBlank(requestVO.getContacts()),MeetingDevice::getContacts,requestVO.getContacts())
                 .like(StringUtils.isNotBlank(requestVO.getRemark()),MeetingDevice::getRemark,requestVO.getRemark())
+                .eq(MeetingDevice::getTenantId,SecurityUtils.getTenantId())
                 .orderByAsc(MeetingDevice::getDeviceId);
         page = this.page(page,queryWrapper);
+        if(page.getRecords().size()>0){
+            List<Long> roomIdList = new ArrayList<>();
+            for (int i = 0; i < page.getRecords().size(); i++) {
+                roomIdList.add(Long.valueOf(page.getRecords().get(i).getRoomId()));
+            }
+            List<Long> list = roomIdList.stream().distinct().collect(Collectors.toList());
+
+            LambdaQueryWrapper<MeetingRoom> queryWrapper1 = Wrappers.lambdaQuery();
+            queryWrapper1.in(MeetingRoom::getRoomId,list).eq(MeetingRoom::getTenantId,SecurityUtils.getTenantId());
+            List<MeetingRoom> meetingRoomList = meetingRoomMapper.selectList(queryWrapper1);
+            if(CollectionUtils.isNotEmpty(meetingRoomList)){
+                for (int i = 0; i < page.getRecords().size(); i++) {
+                    Long RId = Long.valueOf(page.getRecords().get(i).getRoomId());
+                    for (int j = 0; j < meetingRoomList.size(); j++) {
+                        if(RId.equals(meetingRoomList.get(j).getRoomId())){
+                            page.getRecords().get(i).setRoomName(meetingRoomList.get(j).getRoomName());
+                            break;
+                        }
+                    }
+                }
+            }
+        }
 
         return new CommonPage<>(page.getRecords(),page.getTotal(),size,current);
     }

+ 43 - 37
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingFaceServiceImpl.java

@@ -1,6 +1,7 @@
 package com.usky.meeting.service.impl;
 
 import cn.hutool.json.JSONUtil;
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.meet.utils.JwtUtils;
 import com.usky.meet.utils.TimeUtils;
 import com.usky.meeting.domain.MeetingFace;
@@ -9,6 +10,7 @@ import com.usky.meeting.server.FaceContrastServer;
 import com.usky.meeting.service.MeetingFaceService;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -32,42 +34,41 @@ public class MeetingFaceServiceImpl extends AbstractCrudService<MeetingFaceMappe
     FaceContrastServer faceContrastServer;
 
     @Override
-    public FaceResultVO vef(String imageBase) {
+    public MeetingFaceVO vef(String imageBase) {
         imageBase = JSONUtil.parseObj(imageBase).getStr("imageBase");
-        List<MeetingFace> faceList = lambdaQuery().orderByDesc(MeetingFace::getVefNum).list();
-        FaceResultVO faceState = null;
+        List<MeetingFace> faceList = lambdaQuery().eq(MeetingFace::getTenantId,SecurityUtils.getTenantId()).orderByDesc(MeetingFace::getVefNum).list();
+        MeetingFaceVO faceState = new MeetingFaceVO();
+        MeetingFaceVO faceState1 = new MeetingFaceVO();
         // 如果人脸库为空,则第一次登录为录入人脸
-        if (faceList.size() == 0){
-            return initFace(imageBase);
-        }else {
+        if (faceList.size() > 0){
+//            return initFace(imageBase);
+//        }else {
             int faceLength = faceList.size();
             for (MeetingFace face : faceList) {
                 FaceResultVO faceResult = faceContrastServer.faceContrast(face.getFaceBase(), imageBase);
                 // 是否比对成功
-                if (faceResult.getCode() == FaceResultVO.SUCCESS_CODE ){
+                if (faceResult.getCode() == MeetingFaceVO.SUCCESS_CODE ){
                     // 相似度是否大于80
-                    if (faceResult.getScore() > FaceResultVO.SATISFY_SCORE){
+                    if (faceResult.getScore() > MeetingFaceVO.SATISFY_SCORE){
                         if (face.getFaceStatus() == 0){
                             // 成功
                             lambdaUpdate().set(MeetingFace::getVefNum,face.getVefNum()+1).eq(MeetingFace::getFid,face.getFid()).update();
-                            faceResult.setMsg(TimeUtils.timeQuantum()+"好,"+face.getFaceName());
-                            faceResult.setName(face.getFaceName());
-                            Map<String,String> map = new HashMap<>();
-                            map.put("score",String.valueOf(faceResult.getScore()));
-                            map.put("faceName",faceResult.getName());
-                            faceResult.setToken(JwtUtils.genereteToken(map));
-                            return faceResult;
+                            faceState.setMsg(TimeUtils.timeQuantum()+"好,"+face.getFaceName());
+                            faceState.setFaceName(face.getFaceName());
+                            faceState.setUserId(face.getUserId());
+                            faceState.setCode(MeetingFaceVO.SUCCESS_CODE);
+                            return faceState;
                         }else {
                             // 失败 人脸被禁用
                             lambdaUpdate().set(MeetingFace::getVefNum,face.getVefNum()+1).eq(MeetingFace::getFid,face.getFid()).update();
-                            faceResult.setMsg(face.getFaceName()+",当前人脸被禁用");
-                            faceResult.setName(face.getFaceName());
-                            faceResult.setCode(FaceResultVO.FORBIDDEN_FACE);
-                            faceState = faceResult;
+                            faceState1.setMsg(face.getFaceName()+MeetingFaceVO.FORBIDDEN_FACE+"当前人脸被禁用");
+                            faceState1.setFaceName(face.getFaceName());
+                            faceState1.setUserId(face.getUserId());
+                            faceState1.setCode(MeetingFaceVO.SUCCESS_CODE);
                             // 就算上一张人脸被禁用还得往下执行
                             // 可能当前用户存在多张人脸,
                             if (faceLength == 1){
-                                return faceResult;
+                                return faceState1;
                             }
                             faceLength --;
                         }
@@ -76,33 +77,38 @@ public class MeetingFaceServiceImpl extends AbstractCrudService<MeetingFaceMappe
                         if (faceLength == 1){
                             // 判断当前人脸是否被禁用,如被禁用,提示被禁用
                             // 禁用优先级大于 没有检测到人脸
-                            return faceState != null?faceState: FaceResultVO.error(FaceResultVO.NOT_FOUND_FACE,"人脸库不存在该人脸",faceResult.getScore());
+                            faceState.setMsg(MeetingFaceVO.NOT_FOUND_FACE+"人脸库不存在该人脸");
+                            faceState.setCode(MeetingFaceVO.SUCCESS_CODE);
+                            return faceState;
                         }
                         faceLength --;
                     }
                 }else {
                     // 接口返回异常
-                    return faceResult;
+                    faceState.setMsg("人脸验证接口返回异常");
+                    faceState.setCode(MeetingFaceVO.FACE_ERROR);
+                    return faceState;
                 }
             }
         }
         // 空异常
-        return FaceResultVO.error(FaceResultVO.NULL_ERROR,"空指针异常");
+        faceState.setMsg(MeetingFaceVO.NULL_ERROR+"空指针异常");
+        faceState.setCode(MeetingFaceVO.NULL_ERROR);
+        return faceState;
     }
 
 
-    public FaceResultVO initFace(String imageBase){
-        FaceResultVO faceResult = new FaceResultVO();
-        MeetingFace face = new MeetingFace();
-        face.setFaceBase(imageBase);
-        face.setCreateTime(LocalDateTime.now());
-        face.setVefNum(0);
-        face.setFaceName("admin");
-        face.setFaceStatus(0);
-        boolean save = save(face);
-        faceResult.setCode(FaceResultVO.INIT_FACE);
-        faceResult.setMsg("人脸初始化"+(save?"成功":"失败")+","+(save?"请验证登录":"请稍后再试"));
-        faceResult.setName(face.getFaceName());
-        return faceResult;
-    }
+//    public MeetingFaceVO initFace(String imageBase){
+//        MeetingFaceVO faceResult = new MeetingFaceVO();
+//        MeetingFace face = new MeetingFace();
+//        face.setFaceBase(imageBase);
+//        face.setCreateTime(LocalDateTime.now());
+//        face.setVefNum(0);
+//        face.setFaceName("admin");
+//        face.setFaceStatus(0);
+//        boolean save = save(face);
+//        faceResult.setMsg("人脸初始化"+(save?"成功":"失败")+","+(save?"请验证登录":"请稍后再试"));
+//        faceResult.setFaceName(face.getFaceName());
+//        return faceResult;
+//    }
 }

+ 4 - 4
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingInfoServiceImpl.java

@@ -27,12 +27,12 @@ public class MeetingInfoServiceImpl extends AbstractCrudService<MeetingInfoMappe
     private MeetingInfoRepository dmMeetingRepository;
 
     @Override
-    public Map<String, Object> meetingSummary() {
-        return dmMeetingRepository.meetingSummary();
+    public Map<String, Object> meetingSummary(Integer tenantId) {
+        return dmMeetingRepository.meetingSummary(tenantId);
     }
 
     @Override
-    public Map<String, Object> meetingSummaryByYear(String year) {
-        return dmMeetingRepository.meetingSummaryByYear(year);
+    public Map<String, Object> meetingSummaryByYear(String year,Integer tenantId) {
+        return dmMeetingRepository.meetingSummaryByYear(year,tenantId);
     }
 }

+ 80 - 12
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingRoomServiceImpl.java

@@ -8,9 +8,13 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.usky.common.core.bean.CommonPage;
+import com.usky.common.core.exception.BusinessException;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.meeting.domain.MeetingAttendee;
 import com.usky.meeting.domain.MeetingFloor;
 import com.usky.meeting.domain.MeetingRoom;
 import com.usky.meeting.mapper.MeetingRoomMapper;
+import com.usky.meeting.repository.MeetingAttendeeRepository;
 import com.usky.meeting.repository.MeetingRoomRepository;
 import com.usky.meeting.service.MeetingFloorService;
 import com.usky.meeting.service.MeetingInfoService;
@@ -18,14 +22,13 @@ import com.usky.meeting.service.MeetingRoomService;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.meeting.service.vo.MeetingRoomRequestVO;
 import lombok.RequiredArgsConstructor;
+import org.apache.tomcat.jni.Local;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.time.LocalDateTime;
+import java.util.*;
 
 /**
  * <p>
@@ -42,6 +45,8 @@ public class MeetingRoomServiceImpl extends AbstractCrudService<MeetingRoomMappe
     @Autowired
     private MeetingRoomRepository dmMeetingRoomRepository;
     @Autowired
+    private MeetingAttendeeRepository meetingAttendeeRepository;
+    @Autowired
     private MeetingInfoService dmMeetingService;
     @Autowired
     private MeetingFloorService dmFloorService;
@@ -49,11 +54,12 @@ public class MeetingRoomServiceImpl extends AbstractCrudService<MeetingRoomMappe
     @Override
     public Map<String,Object> FirstPageStatistic(String year){
         Map<String,Object> map = new HashMap<>();
-        Map<String,Object> roomSummary = dmMeetingRoomRepository.roomSummary();
+        Integer tenantId = SecurityUtils.getTenantId();
+        Map<String,Object> roomSummary = dmMeetingRoomRepository.roomSummary(tenantId);
         map.put("roomSummary",roomSummary);
-        Map<String,Object> meetingSummary = dmMeetingService.meetingSummary();
+        Map<String,Object> meetingSummary = dmMeetingService.meetingSummary(tenantId);
         map.put("meetingSummary",meetingSummary);
-        Map<String,Object> meetingSummaryByYear = dmMeetingService.meetingSummaryByYear(year);
+        Map<String,Object> meetingSummaryByYear = dmMeetingService.meetingSummaryByYear(year,tenantId);
         map.put("meetingSummaryByYear",meetingSummaryByYear);
 
         return map;
@@ -78,21 +84,17 @@ public class MeetingRoomServiceImpl extends AbstractCrudService<MeetingRoomMappe
                 .eq(StringUtils.isNotBlank(floorId),MeetingRoom::getFloorId,floorId)
                 .eq(StringUtils.isNotBlank(requestVO.getStatus()),MeetingRoom::getStatus,requestVO.getStatus())
                 .eq(null != requestVO.getRoomStatus(),MeetingRoom::getRoomStatus,requestVO.getRoomStatus())
+                .eq(MeetingRoom::getTenantId, SecurityUtils.getTenantId())
                 .orderByDesc(MeetingRoom::getRoomId);
         page = this.page(page,queryWrapper);
         if(CollectionUtils.isNotEmpty(page.getRecords())){
             //查询楼层信息和本地存储信息
             List<BigInteger> floorIdList = new ArrayList<>();
-            List<BigInteger> storageIdList = new ArrayList<>();
             for (int i = 0; i < page.getRecords().size(); i++) {
                 BigInteger floorId1 = new BigInteger(page.getRecords().get(i).getFloorId());
-                BigInteger storageId = new BigInteger(page.getRecords().get(i).getStorageId());
                 if(!floorIdList.contains(floorId1)){
                     floorIdList.add(floorId1);
                 }
-                if(!storageIdList.contains(storageId)){
-                    storageIdList.add(storageId);
-                }
             }
             LambdaQueryWrapper<MeetingFloor> floorQuery = Wrappers.lambdaQuery();
             floorQuery.in(CollectionUtils.isNotEmpty(floorIdList), MeetingFloor::getFloorId,floorIdList);
@@ -115,4 +117,70 @@ public class MeetingRoomServiceImpl extends AbstractCrudService<MeetingRoomMappe
 
         return new CommonPage<>(page.getRecords(),page.getTotal(),requestVO.getSize(),requestVO.getCurrent());
     }
+
+    @Override
+    public List<MeetingRoom> MeetingRoomList(){
+        LambdaQueryWrapper<MeetingRoom> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(MeetingRoom::getTenantId, SecurityUtils.getTenantId());
+        List<MeetingRoom> list = this.list(queryWrapper);
+
+        return list;
+    }
+
+    @Override
+    public void add(MeetingRoom meetingRoom){
+        if(checkNameUnique(meetingRoom)){
+            throw new BusinessException("新增会议室房间失败,"+meetingRoom.getRoomName()+"已经存在");
+        }
+        meetingRoom.setRoomStatus(0);
+        meetingRoom.setReserveStatus(0);
+        meetingRoom.setCreateBy(SecurityUtils.getUsername());
+        meetingRoom.setCreateTime(LocalDateTime.now());
+        meetingRoom.setIsApprove(0);
+        meetingRoom.setTenantId(SecurityUtils.getTenantId());
+        this.save(meetingRoom);
+    }
+
+    @Override
+    public void edit(MeetingRoom meetingRoom){
+        if(checkNameUnique(meetingRoom)){
+            throw new BusinessException("修改会议室房间失败,"+meetingRoom.getRoomName()+"已经存在");
+        }
+        meetingRoom.setUpdateBy(SecurityUtils.getUsername());
+        meetingRoom.setUpdateTime(LocalDateTime.now());
+
+        this.updateById(meetingRoom);
+    }
+
+    @Override
+    public void remove(Long roomId){
+        MeetingRoom one = this.getById(roomId);
+        Optional.ofNullable(one).orElseThrow(() -> new BusinessException("该会议室房间不存在"));
+
+        this.removeById(roomId);
+    }
+
+    @Override
+    public Map<String,Object> attendee(Long meetingId, Long userId, String userName){
+        Map<String, Object> map = new HashMap<>();
+        Integer tenantId = SecurityUtils.getTenantId();
+        map.put("userName",userName);
+        List<MeetingAttendee> list = meetingAttendeeRepository.findMeetingAttendeeList(meetingId,userId,tenantId);
+        if(org.springframework.util.CollectionUtils.isEmpty(list)){
+            map.put("msg","没有会议");
+        }else{
+            map.put("msg","验证成功");
+        }
+        return map;
+    }
+
+    public boolean checkNameUnique(MeetingRoom meetingRoom){
+        Long id = null == meetingRoom.getRoomId()?-1:meetingRoom.getRoomId();
+        LambdaQueryWrapper<MeetingRoom> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(MeetingRoom::getRoomName,meetingRoom.getRoomName())
+                .eq(MeetingRoom::getTenantId, SecurityUtils.getTenantId());
+        MeetingRoom one = this.getOne(queryWrapper);
+        return null != one && !Objects.equals(one.getRoomId(),id);
+
+    }
 }

+ 43 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/vo/MeetingFaceVO.java

@@ -0,0 +1,43 @@
+package com.usky.meeting.service.vo;
+
+import lombok.Data;
+
+@Data
+public class MeetingFaceVO {
+
+    /**
+     * 返回消息
+     */
+    private String msg;
+
+    /**
+     * 人脸名称
+     */
+    private String faceName;
+
+    /**
+     * 用户ID
+     */
+    private Long userId;
+
+    /**
+     * 状态码
+     */
+    private int code;
+
+
+    /*成功*/
+    public static final Integer SUCCESS_CODE = 200;
+    /*相似匹配度*/
+    public static final Integer SATISFY_SCORE = 80;
+    /*调用腾讯云接口发生的异常*/
+    public static final Integer FACE_ERROR = -1;
+    /*数据库没有该人脸*/
+    public static final Integer NOT_FOUND_FACE = -2;
+    /*人脸数据为空*/
+    public static final Integer NULL_ERROR = -3;
+    /*当前人脸被禁用*/
+    public static final Integer FORBIDDEN_FACE = -4;
+    /*初始化人脸*/
+    public static final Integer INIT_FACE = 201;
+}

+ 1 - 1
service-meeting/service-meeting-biz/src/main/resources/mapper/meeting/MeetingFaceMapper.xml

@@ -11,11 +11,11 @@
         <result column="face_name" property="faceName" />
         <result column="remark" property="remark" />
         <result column="face_status" property="faceStatus" />
-        <result column="update_extend1" property="updateExtend1" />
         <result column="update_extend2" property="updateExtend2" />
         <result column="update_extend3" property="updateExtend3" />
         <result column="dept_id" property="deptId" />
         <result column="tenant_id" property="tenantId" />
+        <result column="user_id" property="userId" />
     </resultMap>
 
 </mapper>

+ 0 - 1
service-meeting/service-meeting-biz/src/main/resources/mapper/meeting/MeetingRoomMapper.xml

@@ -8,7 +8,6 @@
         <result column="room_name" property="roomName" />
         <result column="floor_id" property="floorId" />
         <result column="description" property="description" />
-        <result column="storage_id" property="storageId" />
         <result column="img_path" property="imgPath" />
         <result column="capacity" property="capacity" />
         <result column="position" property="position" />