【应急】IM视频通话

This commit is contained in:
2025-11-07 15:30:34 +08:00
parent 6d747c49fb
commit 92033a17cb
22 changed files with 865 additions and 161 deletions
@@ -2,7 +2,9 @@ package com.renkang.im.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.renkang.im.api.fallback.IMHelloFallback;
import com.renkang.im.dto.AddGroupMemberDTO;
import com.renkang.im.entity.*;
import com.renkang.im.vo.AddGroupMemberVO;
import org.jeecg.common.api.vo.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
@@ -66,5 +68,12 @@ public interface IMHelloApi {
Result<Page<ImMsgRecordAll>> selectImMessagePageList(@RequestParam("groupId") String groupId,
@RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize);
/**
* @description: 添加群成员
* @author PengJ
* @date 2025/11/4 15:30
*/
@PostMapping(value = "/wnapp/addGroupMember")
Result<AddGroupMemberVO> addGroupMember(@RequestBody @Validated AddGroupMemberDTO dto);
}
@@ -0,0 +1,54 @@
package com.renkang.im.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @author Huawei
* @version 1.0
* @description: 添加群成员dto
* @date 2025/11/4 15:12
*/
@NoArgsConstructor
@Data
public class AddGroupMemberDTO {
/**
* 要操作的群组(必填)
*/
@NotNull(message = "群组ID不能为空")
@JsonProperty("GroupId")
private String groupId;
/**
* 是否静默加人。
* 0:非静默加人。
* 1:静默加人。
* 不填该字段默认为0。
* 当 Silence 为 1 时,成员添加成功后,不会给任何人下发系统通知。
*/
@JsonProperty("Silence")
private Integer silence;
/**
* 一次最多添加100个成员
*/
@JsonProperty("MemberList")
private List<MemberListDTO> memberList;
@NoArgsConstructor
@Data
public static class MemberListDTO {
/**
* 要添加的群成员 ID(必填)
*/
@NotNull(message = "群成员ID不能为空")
@JsonProperty("Member_Account")
private String memberAccount;
}
}
@@ -0,0 +1,67 @@
package com.renkang.im.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author Huawei
* @version 1.0
* @description: 添加群成员响应VO
* @date 2025/11/4 15:16
*/
@NoArgsConstructor
@Data
public class AddGroupMemberVO {
/**
* 请求处理的结果
* OK:表示处理成功。
* FAIL:表示失败。
*/
@JsonProperty("ActionStatus")
private String actionStatus;
/**
* 错误信息
*/
@JsonProperty("ErrorInfo")
private String errorInfo;
/**
* 错误码
* 0:表示成功。
* 非0:表示失败。
*/
@JsonProperty("ErrorCode")
private Integer errorCode;
/**
* 返回添加的群成员结果。
*/
@JsonProperty("MemberList")
private List<MemberListDTO> memberList;
@NoArgsConstructor
@Data
public static class MemberListDTO {
/**
* 返回的群成员 UserID。
*/
@JsonProperty("Member_Account")
private String memberAccount;
/**
* 加人结果:
* 0:失败。
* 1:成功。
* 2:已经是群成员。
* 3:等待被邀请者或者管理员审核。
*/
@JsonProperty("Result")
private Integer result;
}
}
@@ -0,0 +1,45 @@
package com.renkang.im.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author PengJ
* @description: IM返回VO
* @date 2025/10/31 9:55
*/
@NoArgsConstructor
@Data
public class ImResult {
/**
* 请求处理的结果
* OK 表示处理成功
* FAIL 表示失败
*/
@JsonProperty("ActionStatus")
private String actionStatus;
/**
* 错误码
* 0表示成功
* 非0表示失败
*/
@JsonProperty("ErrorCode")
private Integer errorCode;
/**
* 错误信息
*/
@JsonProperty("ErrorInfo")
private String errorInfo;
/**
* 导入失败的账号列表
*/
@JsonProperty("FailAccounts")
private List<String> failAccounts;
}