video/src/main/java/com/teriteri/backend/controller/ChatDetailedController.java

51 lines
1.9 KiB
Java
Raw Normal View History

2024-11-11 14:15:26 +08:00
package com.teriteri.backend.controller;
import com.teriteri.backend.pojo.CustomResponse;
import com.teriteri.backend.service.message.ChatDetailedService;
import com.teriteri.backend.service.utils.CurrentUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ChatDetailedController {
@Autowired
private ChatDetailedService chatDetailedService;
@Autowired
private CurrentUser currentUser;
/**
* 获取更多历史消息记录
* @param uid 聊天对象的UID
* @param offset 偏移量即已经获取过的消息数量从哪条开始获取更多
* @return CustomResponse对象包含更多消息记录的map
*/
@GetMapping("/msg/chat-detailed/get-more")
public CustomResponse getMoreChatDetails(@RequestParam("uid") Integer uid,
@RequestParam("offset") Long offset) {
Integer loginUid = currentUser.getUserId();
CustomResponse customResponse = new CustomResponse();
customResponse.setData(chatDetailedService.getDetails(uid, loginUid, offset));
return customResponse;
}
/**
* 删除消息
* @param id 消息ID
* @return CustomResponse对象
*/
@PostMapping("/msg/chat-detailed/delete")
public CustomResponse delDetail(@RequestParam("id") Integer id) {
Integer loginUid = currentUser.getUserId();
CustomResponse customResponse = new CustomResponse();
if (!chatDetailedService.deleteDetail(id, loginUid)) {
customResponse.setCode(500);
customResponse.setMessage("删除消息失败");
}
return customResponse;
}
}