From 2160f80eaa4a9a2b62fc58bb06335493cee4528f Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Thu, 28 Aug 2025 02:33:03 +0800
Subject: [PATCH] 1
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/group/ImGroupController.java | 11 +++--
ruoyi-admin/src/main/java/com/ruoyi/im/dto/UpdateUserBusinessDto.java | 3 +
ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/GroupVo.java | 8 ++++
ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/UserAccountUpdateVo.java | 2 +
ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/NeteaseTeamServiceImpl.java | 4 +
ruoyi-admin/src/main/java/com/ruoyi/im/config/UpdateUserInfoRequest.java | 38 ++++++++++++++++--
ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/ImApiServcieImpl.java | 20 ++--------
7 files changed, 58 insertions(+), 28 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/im/config/UpdateUserInfoRequest.java b/ruoyi-admin/src/main/java/com/ruoyi/im/config/UpdateUserInfoRequest.java
index f457ce8..a4b0a90 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/im/config/UpdateUserInfoRequest.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/im/config/UpdateUserInfoRequest.java
@@ -18,16 +18,20 @@
@JsonProperty("mobile")
private String mobile;
+ @JsonProperty("gender")
+ private Integer gender;
+
// 无参构造函数
public UpdateUserInfoRequest() {}
- // 全参构造函数(可选)
- public UpdateUserInfoRequest(String avatar, String name, String sign, String email, String mobile) {
+ // 全参构造函数
+ public UpdateUserInfoRequest(String avatar, String name, String sign, String email, String mobile, Integer gender) {
this.avatar = avatar;
this.name = name;
this.sign = sign;
this.email = email;
this.mobile = mobile;
+ this.gender = gender;
}
// Getter 和 Setter 方法
@@ -71,7 +75,15 @@
this.mobile = mobile;
}
- // toString 方法(可选,便于调试)
+ public Integer getGender() {
+ return gender;
+ }
+
+ public void setGender(Integer gender) {
+ this.gender = gender;
+ }
+
+ // toString 方法
@Override
public String toString() {
return "UpdateUserInfoRequest{" +
@@ -79,11 +91,12 @@
", name='" + name + '\'' +
", sign='" + sign + '\'' +
", email='" + email + '\'' +
- ", mobile=" + mobile +
+ ", mobile='" + mobile + '\'' +
+ ", gender=" + gender +
'}';
}
- // Builder 模式(可选,便于链式调用)
+ // Builder 模式方法
public UpdateUserInfoRequest avatar(String avatar) {
this.avatar = avatar;
return this;
@@ -108,4 +121,19 @@
this.mobile = mobile;
return this;
}
+
+ public UpdateUserInfoRequest gender(Integer gender) {
+ this.gender = gender;
+ return this;
+ }
+
+ // 可以添加一个构建方法
+ public static UpdateUserInfoRequest builder() {
+ return new UpdateUserInfoRequest();
+ }
+
+ // 可以添加一个构建完成的方法
+ public UpdateUserInfoRequest build() {
+ return this;
+ }
}
\ No newline at end of file
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/im/dto/UpdateUserBusinessDto.java b/ruoyi-admin/src/main/java/com/ruoyi/im/dto/UpdateUserBusinessDto.java
index 6dc3d2f..10bb425 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/im/dto/UpdateUserBusinessDto.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/im/dto/UpdateUserBusinessDto.java
@@ -1,5 +1,6 @@
package com.ruoyi.im.dto;
+import io.swagger.models.auth.In;
import lombok.Data;
@Data
@@ -11,7 +12,7 @@
private String email;//用户邮箱地址
private String birthday;//用户生日
private String mobile;//用户手机号码
- private String gender;//用户性别
+ private Integer gender;//用户性别
private String token;//用户账号对应的登录密钥 Token
private Boolean enabled;//该账号是否可用。默认可用,若设为 false,则表示禁用该账号。
private String p2p_chat_banned;//单聊禁言标记。true:禁言。
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/ImApiServcieImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/ImApiServcieImpl.java
index 3019413..ada2ea4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/ImApiServcieImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/ImApiServcieImpl.java
@@ -276,23 +276,8 @@
httpPatch.setHeader("CurTime", curTime);
httpPatch.setHeader("CheckSum", checkSum);
- // 构建请求体
-// UpdateUserInfoRequest builder = new UpdateUserInfoRequest();
-// if(StringUtils.isNotEmpty(dto.getMobile())){
-// builder.setMobile(dto.getMobile());
-// }
-// if(StringUtils.isNotEmpty(dto.getName())){
-// builder.setName(dto.getName());
-// }
-// if(StringUtils.isNotEmpty(dto.getSign())){
-// builder.setSign(dto.getSign());
-// }
-// if(StringUtils.isNotEmpty(dto.getAvatar())){
-// builder.setAvatar(dto.getAvatar());
-// }
-// String body = builder.build();
UpdateUserInfoRequest requestBody = new UpdateUserInfoRequest(dto.getAvatar(),
- dto.getName(),dto.getSign(),dto.getEmail(),dto.getMobile());
+ dto.getName(),dto.getSign(),dto.getEmail(),dto.getMobile(),dto.getGender());
String jsonBody = objectMapper.writeValueAsString(requestBody);
httpPatch.setEntity(new StringEntity(jsonBody, StandardCharsets.UTF_8));
@@ -346,6 +331,9 @@
if(StringUtils.isNotEmpty(vo.getSignature())){
dto.setSign(vo.getSignature());
}
+ if(ObjectUtil.isNotEmpty(vo.getGender())){
+ dto.setGender(vo.getGender());
+ }
Map<String, Object> map = updateUserAvatar(vo.getAccountId(), dto);
//更新用户属性 状态 密码
if ((Boolean) map.get("success")) {
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/NeteaseTeamServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/NeteaseTeamServiceImpl.java
index f3ea738..b79cfbf 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/NeteaseTeamServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/im/service/impl/NeteaseTeamServiceImpl.java
@@ -270,7 +270,9 @@
@Override
public AjaxResult inviteTeamMembers(AddTeamMembersRequest request) {
try {
-
+ if(null != request.getNumber() && request.getNumber() > 99){
+ return AjaxResult.error("拉人数量单次最多99!");
+ }
NeteaseTeam neteaseTeam = neteaseTeamMapper.selectById(request.getGroupId());
if(ObjectUtil.isEmpty(neteaseTeam)){
return AjaxResult.error("群不存在!");
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/group/ImGroupController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/group/ImGroupController.java
index df9b793..d823fa6 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/group/ImGroupController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/group/ImGroupController.java
@@ -13,6 +13,7 @@
import com.ruoyi.im.service.NeteaseTeamService;
import com.ruoyi.system.domain.NeteaseTeam;
import com.ruoyi.system.domain.UserAccount;
+import com.ruoyi.system.domain.vo.GroupVo;
import com.ruoyi.system.domain.vo.UserAccountVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -54,19 +55,19 @@
*/
// @PreAuthorize("@ss.hasPermi('im:group:list')")
@GetMapping("/list")
- public TableDataInfo list(@PathVariable(value = "keywords", required = false) String keywords)
+ public TableDataInfo list(GroupVo vo)
{
// 创建查询条件包装器
LambdaQueryWrapper<NeteaseTeam> queryWrapper = new LambdaQueryWrapper<>();
// 只有当 keyword 不为空时才添加 OR 条件
- if (ObjectUtil.isNotEmpty(keywords)) {
+ if (ObjectUtil.isNotEmpty(vo.getKeywords())) {
queryWrapper.and(wrapper -> wrapper
- .eq(NeteaseTeam::getTid, keywords)
+ .eq(NeteaseTeam::getTid, vo.getKeywords())
.or()
- .eq(NeteaseTeam::getOwnerAccountId, keywords)
+ .eq(NeteaseTeam::getOwnerAccountId, vo.getKeywords())
.or()
- .eq(NeteaseTeam::getName,keywords)
+ .eq(NeteaseTeam::getName,vo.getKeywords())
);
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/GroupVo.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/GroupVo.java
new file mode 100644
index 0000000..f626e30
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/GroupVo.java
@@ -0,0 +1,8 @@
+package com.ruoyi.system.domain.vo;
+
+import lombok.Data;
+
+@Data
+public class GroupVo {
+ private String keywords;
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/UserAccountUpdateVo.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/UserAccountUpdateVo.java
index 20c3522..dd7e7dc 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/UserAccountUpdateVo.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/UserAccountUpdateVo.java
@@ -42,6 +42,8 @@
// 个性签名
private String signature;
+ // 用户性别,0-未知,1-男,2-女。
+ private Integer gender;
// // 是否支持昵称搜索
// private Boolean supportNicknameSearch = true;
--
Gitblit v1.9.3