liusuyi
2024-07-06 0ab014198a8b4e40fa26da394373a4bcdb571148
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package com.ruoyi.call.controller;
 
import java.util.List;
import javax.servlet.http.HttpServletResponse;
 
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.ruoyi.call.service.IArdCallUnreadMessagesService;
import com.ruoyi.common.annotation.Anonymous;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.call.domain.ArdCallSessionUser;
import com.ruoyi.call.service.IArdCallSessionUserService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
 
/**
 * 会话用户中间表Controller
 *
 * @author ard
 * @date 2024-07-04
 */
@Api(tags = "群聊-会话接口")
@RestController
@RequestMapping("/call/sessionuser")
@Anonymous
public class ArdCallSessionUserController extends BaseController {
    @Autowired
    private IArdCallSessionUserService ardCallSessionUserService;
    @Autowired
    private IArdCallUnreadMessagesService ardCallUnreadMessagesService;
    /**
     * 获取会话列表
     */
    @ApiOperation("获取会话列表")
    @ApiOperationSupport(ignoreParameters  = {"id","unReadCount","sessionId","targetId","type","params","ardCallHistory"})
    @GetMapping("/list")
    public TableDataInfo list(ArdCallSessionUser ardCallSessionUser) {
        startPage();
        List<ArdCallSessionUser> list = ardCallSessionUserService.selectArdCallSessionUserList(ardCallSessionUser);
        return getDataTable(list);
    }
 
    /**
     * 获取会话用户中间表详细信息
     */
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id) {
        return success(ardCallSessionUserService.selectArdCallSessionUserById(id));
    }
 
    /**
     * 新增会话用户中间表
     */
    @PostMapping
    public AjaxResult add(@RequestBody ArdCallSessionUser ardCallSessionUser) {
        return toAjax(ardCallSessionUserService.insertArdCallSessionUser(ardCallSessionUser));
    }
 
    /**
     * 修改会话用户中间表
     */
    @PutMapping
    public AjaxResult edit(@RequestBody ArdCallSessionUser ardCallSessionUser) {
        return toAjax(ardCallSessionUserService.updateArdCallSessionUser(ardCallSessionUser));
    }
 
    /**
     * 删除会话用户中间表
     */
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids) {
        return toAjax(ardCallSessionUserService.deleteArdCallSessionUserByIds(ids));
    }
 
    /**
     * 清除会话未读数量
     */
    @ApiOperation("清除会话未读数量")
    @PostMapping("/clearUnReadCount")
    @ApiImplicitParams({@ApiImplicitParam(name = "sessionId", value = "会话id", required = true, dataType = "String"),
                        @ApiImplicitParam(name = "userId", value = "用户id", required = true, dataType = "String")})
    public AjaxResult clearUnReadCount(String sessionId, String userId) {
        return toAjax(ardCallUnreadMessagesService.clearUnReadCount(sessionId, userId));
    }
}