From dd975d50ee8a7b221dbec0904e5fc514156fc8e1 Mon Sep 17 00:00:00 2001 From: hunan Date: Tue, 2 Aug 2022 16:45:34 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BD=BF=E7=94=A8map=E6=8E=A5=E6=94=B6?= =?UTF-8?q?=E5=A3=B0=E7=BD=91=E5=9B=9E=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + .../java/com/zhangshu/chat/demo/Solution.java | 9 ++++++ .../chat/demo/controller/EventController.java | 8 +++-- .../chat/demo/service/EventService.java | 4 ++- .../chat/demo/service/EventServiceImpl.java | 31 ++++++++++++------- 5 files changed, 38 insertions(+), 15 deletions(-) create mode 100644 .gitignore create mode 100644 src/main/java/com/zhangshu/chat/demo/Solution.java diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..85e7c1d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.idea/ diff --git a/src/main/java/com/zhangshu/chat/demo/Solution.java b/src/main/java/com/zhangshu/chat/demo/Solution.java new file mode 100644 index 0000000..461e1f3 --- /dev/null +++ b/src/main/java/com/zhangshu/chat/demo/Solution.java @@ -0,0 +1,9 @@ +package com.zhangshu.chat.demo; + +public class Solution { + + public int[] findDiagonalOrder(int[][] mat) { + int + } + +} diff --git a/src/main/java/com/zhangshu/chat/demo/controller/EventController.java b/src/main/java/com/zhangshu/chat/demo/controller/EventController.java index 5fe2770..2e724cb 100644 --- a/src/main/java/com/zhangshu/chat/demo/controller/EventController.java +++ b/src/main/java/com/zhangshu/chat/demo/controller/EventController.java @@ -13,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.Map; + @Slf4j @RestController @RequestMapping("/event") @@ -23,9 +25,9 @@ public class EventController { @PostMapping("/agora") @ApiOperation(value = "agora") - public CommonResult agora(@RequestBody AgoraEventDto dto) { - log.info("事件回调:{}", dto); - eventService.agora(dto); + public CommonResult agora(@RequestBody Map body) { + log.info("事件回调:{}", body); + eventService.agora(body); return CommonResult.success(); } } diff --git a/src/main/java/com/zhangshu/chat/demo/service/EventService.java b/src/main/java/com/zhangshu/chat/demo/service/EventService.java index 506b50e..616c1d8 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/EventService.java +++ b/src/main/java/com/zhangshu/chat/demo/service/EventService.java @@ -2,6 +2,8 @@ package com.zhangshu.chat.demo.service; import com.zhangshu.chat.demo.dto.AgoraEventDto; +import java.util.Map; + public interface EventService { - void agora(AgoraEventDto dto); + void agora(Map body); } diff --git a/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java b/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java index c79ed36..7d4b04b 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java +++ b/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java @@ -1,11 +1,12 @@ package com.zhangshu.chat.demo.service; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import com.zhangshu.chat.demo.config.AgoraProperties; +import com.zhangshu.chat.demo.constant.EAgoraEventType; import com.zhangshu.chat.demo.constant.ERoomUserType; import com.zhangshu.chat.demo.dto.AgoraChannelEventDto; import com.zhangshu.chat.demo.dto.AgoraChannelUserEventDto; -import com.zhangshu.chat.demo.dto.AgoraEventDto; -import com.zhangshu.chat.demo.entity.Room; import com.zhangshu.chat.demo.entity.User; import com.zhangshu.chat.demo.mapper.UserMapper; import com.zhangshu.chat.demo.vo.RoomUserVo; @@ -13,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.stereotype.Service; +import java.util.Map; import java.util.Objects; @Service @@ -24,22 +26,29 @@ public class EventServiceImpl implements EventService { RoomCache roomCache; @Autowired UserMapper userMapper; + + T mapToBean(Map map, Class targetClass) { + return BeanUtil.mapToBean(map, targetClass, false, CopyOptions.create()); + } @Override - public void agora(AgoraEventDto dto) { - switch (dto.getEventType()) { + public void agora(Map body) { + + Object eventTypeObj = body.get("eventType"); + EAgoraEventType eventType = EAgoraEventType.getByType((Integer) eventTypeObj); + switch (eventType) { case channel_create: { - AgoraChannelEventDto eventDto = dto.convert(AgoraChannelEventDto.class); + AgoraChannelEventDto eventDto = mapToBean(body, AgoraChannelEventDto.class); roomCache.add(eventDto.getChannelName()); } break; case channel_destroy: { - AgoraChannelEventDto eventDto = dto.convert(AgoraChannelEventDto.class); + AgoraChannelEventDto eventDto = mapToBean(body, AgoraChannelEventDto.class); roomCache.remove(eventDto.getChannelName()); } break; case broadcaster_join_channel: { - AgoraChannelUserEventDto eventDto = dto.convert(AgoraChannelUserEventDto.class); + AgoraChannelUserEventDto eventDto = mapToBean(body, AgoraChannelUserEventDto.class); User user = userMapper.selectById(eventDto.getUid()); if (Objects.isNull(user)) { break; @@ -54,12 +63,12 @@ public class EventServiceImpl implements EventService { break; case broadcaster_leave_channel: case audience_leave_channel: { - AgoraChannelUserEventDto eventDto = dto.convert(AgoraChannelUserEventDto.class); + AgoraChannelUserEventDto eventDto = mapToBean(body, AgoraChannelUserEventDto.class); roomCache.removeUser(eventDto.getChannelName(), eventDto.getUid()); } break; case audience_join_channel: { - AgoraChannelUserEventDto eventDto = dto.convert(AgoraChannelUserEventDto.class); + AgoraChannelUserEventDto eventDto = mapToBean(body, AgoraChannelUserEventDto.class); User user = userMapper.selectById(eventDto.getUid()); if (Objects.isNull(user)) { break; @@ -73,12 +82,12 @@ public class EventServiceImpl implements EventService { } break; case client_role_change_to_audience: { - AgoraChannelUserEventDto eventDto = dto.convert(AgoraChannelUserEventDto.class); + AgoraChannelUserEventDto eventDto = mapToBean(body, AgoraChannelUserEventDto.class); roomCache.changeUserType(eventDto.getChannelName(), eventDto.getUid(), ERoomUserType.audience); } break; case client_role_change_to_broadcaster: { - AgoraChannelUserEventDto eventDto = dto.convert(AgoraChannelUserEventDto.class); + AgoraChannelUserEventDto eventDto = mapToBean(body, AgoraChannelUserEventDto.class); roomCache.changeUserType(eventDto.getChannelName(), eventDto.getUid(), ERoomUserType.broadcaster); } break; From 6a18faa6da8b82fc6c07bf74a69a64a9e4845692 Mon Sep 17 00:00:00 2001 From: hunan Date: Tue, 2 Aug 2022 16:46:42 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BD=BF=E7=94=A8map=E6=8E=A5=E6=94=B6?= =?UTF-8?q?=E5=A3=B0=E7=BD=91=E5=9B=9E=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/zhangshu/chat/demo/Solution.java | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 src/main/java/com/zhangshu/chat/demo/Solution.java diff --git a/src/main/java/com/zhangshu/chat/demo/Solution.java b/src/main/java/com/zhangshu/chat/demo/Solution.java deleted file mode 100644 index 461e1f3..0000000 --- a/src/main/java/com/zhangshu/chat/demo/Solution.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.zhangshu.chat.demo; - -public class Solution { - - public int[] findDiagonalOrder(int[][] mat) { - int - } - -} From dfe6871dc9566036a83ea30a70e0942221d70a58 Mon Sep 17 00:00:00 2001 From: hunan Date: Tue, 2 Aug 2022 16:51:39 +0800 Subject: [PATCH 3/4] remove aop --- src/main/java/com/zhangshu/chat/demo/config/WebLogAspect.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/zhangshu/chat/demo/config/WebLogAspect.java b/src/main/java/com/zhangshu/chat/demo/config/WebLogAspect.java index d0ed44b..2a9aa72 100644 --- a/src/main/java/com/zhangshu/chat/demo/config/WebLogAspect.java +++ b/src/main/java/com/zhangshu/chat/demo/config/WebLogAspect.java @@ -14,7 +14,7 @@ import javax.servlet.http.HttpServletRequest; @Slf4j @Aspect -@Component +//@Component public class WebLogAspect { @Autowired From 3c07e49d05ce1140de71a4ceb5d24a9646072309 Mon Sep 17 00:00:00 2001 From: hunan Date: Tue, 2 Aug 2022 16:53:08 +0800 Subject: [PATCH 4/4] remove aop --- .gitignore | 1 + .../java/com/zhangshu/chat/demo/controller/EventController.java | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 85e7c1d..2d513a0 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /.idea/ +/target/ diff --git a/src/main/java/com/zhangshu/chat/demo/controller/EventController.java b/src/main/java/com/zhangshu/chat/demo/controller/EventController.java index 2e724cb..6b67a1f 100644 --- a/src/main/java/com/zhangshu/chat/demo/controller/EventController.java +++ b/src/main/java/com/zhangshu/chat/demo/controller/EventController.java @@ -1,9 +1,7 @@ package com.zhangshu.chat.demo.controller; -import com.zhangshu.chat.demo.dto.AgoraEventDto; import com.zhangshu.chat.demo.dto.CommonResult; import com.zhangshu.chat.demo.service.EventService; -import com.zhangshu.chat.demo.vo.LoginVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j;