diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..7b016a8 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.compile.nullAnalysis.mode": "automatic" +} \ No newline at end of file diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketContactController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketContactController.java index c12bdd9..2227912 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketContactController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketContactController.java @@ -2,12 +2,12 @@ package com.ruoyi.web.controller.system; import java.util.List; import java.util.Arrays; -import java.util.concurrent.TimeUnit; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.*; -import cn.dev33.satoken.annotation.SaCheckPermission; + +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import com.ruoyi.common.annotation.RepeatSubmit; @@ -15,14 +15,16 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.EditGroup; -import com.ruoyi.common.core.validate.QueryGroup; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.vo.SocketContactVo; import com.ruoyi.system.domain.bo.SocketContactBo; import com.ruoyi.system.service.ISocketContactService; +import com.ruoyi.system.service.ISysUserService; +import com.ruoyi.system.service.impl.SysUserServiceImpl; import com.ruoyi.common.core.page.TableDataInfo; /** @@ -39,6 +41,9 @@ public class SocketContactController extends BaseController { private final ISocketContactService iSocketContactService; + @Autowired + private ISysUserService userService; + /** * 查询通信目录列表 */ @@ -100,4 +105,22 @@ public class SocketContactController extends BaseController { @PathVariable Long[] ids) { return toAjax(iSocketContactService.deleteWithValidByIds(Arrays.asList(ids), true)); } + + @GetMapping("/script") + public R script() { + List selectUserList = userService.selectUserList(new SysUser()); + for (int i = 0; i < selectUserList.size(); i++) { + SysUser sysUser = selectUserList.get(i); + Long userId = sysUser.getUserId(); + for (int i1 = i+1; i1 < selectUserList.size(); i1++) { + SocketContactBo socketContactBo = new SocketContactBo(); + socketContactBo.setUserId(userId); + socketContactBo.setRoomId(0L); + socketContactBo.setContactUserId(selectUserList.get(i1).getUserId()); + iSocketContactService.insertByBo(socketContactBo); + } + + } + return R.ok(); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketMessageController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketMessageController.java index 5278989..3a61b2a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketMessageController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SocketMessageController.java @@ -1,4 +1,4 @@ -package com.ruoyi.system.controller; +package com.ruoyi.web.controller.system; import java.util.List; import java.util.Arrays; diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index cbcee68..8766b4c 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -57,7 +57,7 @@ logging: user: password: # 密码最大错误次数 - maxRetryCount: 5 + maxRetryCount: 999 # 密码锁定时间(默认10分钟) lockTime: 10 diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/webSocket/WebSocketServer.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/webSocket/WebSocketServer.java index f79c5fa..0144392 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/webSocket/WebSocketServer.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/webSocket/WebSocketServer.java @@ -73,7 +73,6 @@ public class WebSocketServer { String userId = jsonObject.getString("userId"); String type = jsonObject.getString("type"); if (type.equals(MessageType.CHAT.getType())) { - log.debug("聊天消息推送"); sendToUser(userId, JSONObject.toJSONString(jsonObject)); } } diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaArticleController.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaArticleController.java index b60eaed..44c483c 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaArticleController.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/SysOaArticleController.java @@ -78,6 +78,7 @@ public class SysOaArticleController extends BaseController { @GetMapping("/{articleId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long articleId) { SysOaArticle sysOaArticle = iSysOaArticleService.selectArticleById(articleId); + return R.ok(sysOaArticle); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SocketContactServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SocketContactServiceImpl.java index 480e9ce..0721caa 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SocketContactServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SocketContactServiceImpl.java @@ -2,6 +2,7 @@ package com.ruoyi.system.service.impl; import cn.hutool.core.bean.BeanUtil; import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.helper.LoginHelper; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.domain.PageQuery; @@ -15,6 +16,7 @@ import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.service.ISysUserService; import liquibase.pro.packaged.S; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.system.domain.bo.SocketContactBo; @@ -26,6 +28,7 @@ import com.ruoyi.system.service.ISocketContactService; import java.util.List; import java.util.Map; import java.util.Collection; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -34,6 +37,7 @@ import java.util.stream.Collectors; * @author hdka * @date 2024-10-21 */ +@Slf4j @RequiredArgsConstructor @Service public class SocketContactServiceImpl implements ISocketContactService { @@ -53,12 +57,10 @@ public class SocketContactServiceImpl implements ISocketContactService { LambdaQueryWrapper socketMessageLambdaQueryWrapper = new LambdaQueryWrapper<>(); socketMessageLambdaQueryWrapper.eq(SocketMessage::getRoomId, socketContactVo.getRoomId()) .and(item -> - item.eq(SocketMessage::getUserId, socketContactVo.getContactUserId()) - .or() - .eq(SocketMessage::getUserId, socketContactVo.getUserId()) + item.eq(SocketMessage::getContactId,id) ); - - socketContactVo.setUser(sysUserMapper.selectUserById(socketContactVo.getContactUserId())); + Long userId = LoginHelper.getUserId(); + socketContactVo.setUser(sysUserMapper.selectUserById(Objects.equals(socketContactVo.getContactUserId(), userId) ?socketContactVo.getUserId():socketContactVo.getContactUserId())); List socketMessageVos = socketMessageMapper.selectVoList(socketMessageLambdaQueryWrapper); socketMessageVos.stream() .peek(item->{ @@ -77,7 +79,7 @@ public class SocketContactServiceImpl implements ISocketContactService { LambdaQueryWrapper socketContactLambdaQueryWrapper = buildQueryWrapper(bo); Page result = baseMapper.selectVoPage(pageQuery.build(), socketContactLambdaQueryWrapper); for (SocketContactVo record : result.getRecords()) { - SysUser sysUser = sysUserMapper.selectUserById(record.getContactUserId()); + SysUser sysUser = sysUserMapper.selectUserById(Objects.equals(record.getContactUserId(), bo.getUserId()) ? record.getUserId() : record.getContactUserId()); record.setUser(sysUser); } return TableDataInfo.build(result); @@ -95,8 +97,9 @@ public class SocketContactServiceImpl implements ISocketContactService { private LambdaQueryWrapper buildQueryWrapper(SocketContactBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(bo.getContactUserId() != null, SocketContact::getContactUserId, bo.getContactUserId()); - lqw.eq(bo.getUserId() != null, SocketContact::getUserId, bo.getUserId()); + lqw.eq(bo.getUserId() != null, SocketContact::getContactUserId, bo.getUserId()) + .or() + .eq(bo.getUserId() != null, SocketContact::getUserId, bo.getUserId()); return lqw; } @@ -116,15 +119,15 @@ public class SocketContactServiceImpl implements ISocketContactService { bo.setId(add.getId()); } - - // 反向存 - add.setContactUserId(bo.getUserId()); - add.setUserId(bo.getContactUserId()); - validEntityBeforeSave(add); - flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setId(add.getId()); - } +// +// // 反向存 +// add.setContactUserId(bo.getUserId()); +// add.setUserId(bo.getContactUserId()); +// validEntityBeforeSave(add); +// flag = baseMapper.insert(add) > 0; +// if (flag) { +// bo.setId(add.getId()); +// } return flag; } diff --git a/ruoyi-ui/src/layout/components/Navbar.vue b/ruoyi-ui/src/layout/components/Navbar.vue index fbbba08..44101e0 100644 --- a/ruoyi-ui/src/layout/components/Navbar.vue +++ b/ruoyi-ui/src/layout/components/Navbar.vue @@ -1,6 +1,7 @@