diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java new file mode 100644 index 0000000..6bf168f --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java @@ -0,0 +1,66 @@ +package cn.iocoder.yudao.module.member.controller.admin.chat; + +import cn.hutool.core.util.ObjectUtil; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.member.client.service.ChatApi; +import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageCountReqVO; +import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageInfoReqVO; +import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageReqVO; +import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageRespVO; +import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveRespVO; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +import java.util.List; +import java.util.Map; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 私聊") +@RestController +@RequestMapping("/chat/private-msg") +@Validated +public class ChatPrivateMsgController { + + @Resource + private ChatApi chatApi; + + @PostMapping("/page") + @Operation(summary = "查询私聊消息列表", description = "查询私聊消息列表") + public CommonResult> page(@Valid @RequestBody ChatPrivateMessageReqVO dto) { + ChatTableRespVO vo = chatApi.privateMsgPage(dto); + + PageResult pageResult = new PageResult(); + if (ObjectUtil.isNotEmpty(vo) && ObjectUtil.isNotEmpty(vo.getRows())) { + pageResult.setTotal(vo.getTotal()); + pageResult.setList(vo.getRows()); + } + + return success(pageResult); + } + + @GetMapping("/getById") + @Operation(summary = "获取敏感词详细信息", description = "获取敏感词详细信息") + public CommonResult getInfo(@RequestParam("id") Long id) { + ChatPrivateMessageInfoReqVO dto = new ChatPrivateMessageInfoReqVO(); + dto.setMsgId(id); + ChatPrivateMessageRespVO vo = chatApi.privateMsgGetInfo(dto); + return success(vo); + } + + @GetMapping("/getById") + @Operation(summary = "私聊消息统计", description = "私聊消息统计") + public CommonResult> dailyCount(@RequestParam("days") Integer days) { + ChatPrivateMessageCountReqVO dto = new ChatPrivateMessageCountReqVO(); + dto.setDays(days); + return success(chatApi.privateCount(dto)); + } + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java new file mode 100644 index 0000000..7e44dee --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java @@ -0,0 +1,71 @@ +package cn.iocoder.yudao.module.member.controller.admin.chat; + +import cn.hutool.core.util.ObjectUtil; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.member.client.service.ChatApi; +import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveDelReqVO; +import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveInfoReqVo; +import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveReqVo; +import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveRespVO; +import cn.iocoder.yudao.module.member.client.vo.user.ChatCreateOrUpdateUserReqVo; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +import java.util.List; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 敏感词") +@RestController +@RequestMapping("/chat/sensitive") +@Validated +public class ChatSensitiveController { + + @Resource + private ChatApi chatApi; + + @PostMapping("/page") + @Operation(summary = "查询敏感词列表", description = "查询敏感词列表") + public CommonResult> page(@Valid @RequestBody ChatSensitiveReqVo dto) { + ChatTableRespVO vo = chatApi.sensitivePage(dto); + + PageResult pageResult = new PageResult(); + if (ObjectUtil.isNotEmpty(vo) && ObjectUtil.isNotEmpty(vo.getRows())) { + pageResult.setTotal(vo.getTotal()); + pageResult.setList(vo.getRows()); + } + + return success(pageResult); + } + + @GetMapping("/getById") + @Operation(summary = "获取敏感词详细信息", description = "获取敏感词详细信息") + public CommonResult getInfo(@RequestParam("id") Long id) { + ChatSensitiveInfoReqVo dto = new ChatSensitiveInfoReqVo(); + dto.setSensitiveId(id); + ChatSensitiveRespVO vo = chatApi.sensitiveGetInfo(dto); + return success(vo); + } + + @PostMapping("/createOrUpdate") + @Operation(summary = "创建或者更新敏感词", description = "创建或者更新敏感词") + public CommonResult createOrUpdate(@Valid @RequestBody ChatCreateOrUpdateUserReqVo dto) { + return success(chatApi.createOrUpdate(dto)); + } + + @DeleteMapping("/delByIds") + @Operation(summary = "删除敏感词", description = "删除敏感词") + public CommonResult delByIds(@RequestParam("id") List ids) { + ChatSensitiveDelReqVO dto = new ChatSensitiveDelReqVO(); + dto.setSensitiveIds(ids); + return success(chatApi.sensitiveDelByIds(dto)); + } + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppMemeberChatController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java similarity index 95% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppMemeberChatController.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java index 6f08dab..b92fed6 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppMemeberChatController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java @@ -15,9 +15,9 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti @Tag(name = "用户 App - 聊天相关") @RestController -@RequestMapping("/member/chat") +@RequestMapping("/chat") @Validated -public class AppMemeberChatController { +public class AppChatController { @Resource private ChatApi chatApi;