feiyu02
2025-09-30 6904763f0e74d9a9fa4dbc39f635d2aee39416c6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
package cn.flightfeather.supervision.lightshare.service
 
import cn.flightfeather.supervision.domain.entity.MeetingInfo
import cn.flightfeather.supervision.domain.entity.Participant
import cn.flightfeather.supervision.domain.entity.Signature
import cn.flightfeather.supervision.domain.entity.VMRoom
import cn.flightfeather.supervision.websocket.MeetingMsgVo
import com.flightfeather.taizhang.model.bean.ChangedMeetingInfoVo
import cn.flightfeather.supervision.lightshare.vo.MaterialSignStatusVo
import cn.flightfeather.supervision.lightshare.vo.MeetingMaterialVo
import cn.flightfeather.supervision.lightshare.vo.MeetingUserOnlineStatusVo
import cn.flightfeather.supervision.lightshare.vo.UserStatusVo
import cn.flightfeather.supervision.websocket.Processor
import org.springframework.web.multipart.MultipartFile
import javax.servlet.http.HttpServletResponse
 
 
interface MeetingInfoService {
 
    /*****************************会议********************************************/
    fun getMeetingInfo(userId: String, status: Int, page: Int, perPage: Int, response: HttpServletResponse): List<MeetingInfo>
 
    fun getMeetingInfoById(userId: String, meetingId: String):MeetingInfo
 
    fun addMeetingInfo(userId: String, meetingInfo: MeetingInfo): ChangedMeetingInfoVo
 
    fun updateMeetingInfo(userId: String, meetingInfo: MeetingInfo): Int
 
    fun deleteMeetingInfo(userId: String, meetingId: String): Int
 
    /**
     * 获取用户会议签到状态
     * @return 签到状态,0:未签到,1:已签到,2:无需签到
     */
    fun getMeetingRegisterStatus(userId: String, meetingId: String, roomId: String?): Int
 
    fun getMeetingRegisterRecord(userId: String, meetingId: String, roomId: String? = null): List<Signature>
 
    fun meetingRegister(userId: String, meetingId: String, roomId: String?): Boolean
 
    fun getMeetingRoom(userId: String, meetingId: String): List<VMRoom>
 
    /*****************************参会人员********************************************/
    fun addParticipant(userId: String, participantList: List<Participant>): Int
 
    fun deleteParticipant(userId: String, meetingId: String, participantList: List<Participant>): Int
 
    fun getParticipant(userId: String, meetingId: String, roomId: String?, participantType: Int): List<Participant>
 
    fun getOnlineUsers(userId: String, meetingId: String, roomId: String): List<MeetingUserOnlineStatusVo>
 
    fun setMuteStatus(userId: String, meetingId: String, roomId: String, userStatusList: List<UserStatusVo>): Boolean
 
    /*****************************会议文件********************************************/
    fun uploadFile(userId: String, meetingId: String, roomId: String, msgVo: String, files: Array<MultipartFile>, documentType:Int): List<MeetingMsgVo>
 
    fun getMeetingMaterials(userId: String, meetingId: String, mediaType: Int, page: Int, perPage: Int, response: HttpServletResponse): List<MeetingMaterialVo>
 
    fun updateSignState(userId: String, signStateList: List<MeetingMaterialVo>): Boolean
 
    fun getMaterialCount(userId: String, meetingId: String, mediaType: Int, meetingFileType: Int): Int
 
    fun deleteFiles(userId: String, meetingId: String, fileList: List<MeetingMaterialVo>): List<MeetingMaterialVo>
 
    //获取所有会议参会人员的文件签收状态
    fun getAllMaterialSignStatus(userId: String, meetingId: String): List<MaterialSignStatusVo>
 
    /*****************************会议聊天记录********************************************/
    fun saveMeetingRecords(meetingId: String, roomId: String, msgVoList: List<MeetingMsgVo>): Int
 
    fun getMeetingRecords(userId: String, meetingId: String, roomId: String, page: Int, perPage: Int, response: HttpServletResponse): List<MeetingMsgVo>
 
    /*****************************会议推送通知********************************************/
    fun pushMeetingInfo(userId: String, meetingId: String, roomId: String? = null, title: String, body: String): Boolean
}