PrivateController.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.ym.controller;
  2. import com.ym.mec.common.entity.ImMessageDto;
  3. import com.ym.mec.common.entity.ImPrivateMessage;
  4. import com.ym.mec.common.entity.ImTxtMessage;
  5. import com.ym.pojo.NoticeMessage;
  6. import com.ym.service.MessageService;
  7. import io.rong.messages.FileMessage;
  8. import io.rong.messages.ImgMessage;
  9. import io.rong.messages.TxtMessage;
  10. import io.rong.messages.UserInfo;
  11. import io.rong.models.message.PrivateMessage;
  12. import io.rong.models.message.RecallMessage;
  13. import io.rong.models.message.TemplateMessage;
  14. import org.springframework.beans.BeanUtils;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.RequestBody;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RequestMethod;
  19. import org.springframework.web.bind.annotation.RestController;
  20. /**
  21. * Created by weiqinxiao on 2019/2/25.
  22. */
  23. @RestController
  24. @RequestMapping("/private")
  25. public class PrivateController {
  26. @Autowired
  27. MessageService messageService;
  28. @RequestMapping(value = "/send", method = RequestMethod.POST)
  29. public Object send(@RequestBody ImMessageDto imMessageDto) throws Exception {
  30. PrivateMessage privateMessage = new PrivateMessage();
  31. String objectName = imMessageDto.getObjectName();
  32. UserInfo userInfo = new UserInfo();
  33. if(imMessageDto.getUserInfo() != null){
  34. BeanUtils.copyProperties(imMessageDto.getUserInfo(),userInfo);
  35. }
  36. if("RC:ImgMsg".equals(objectName)){
  37. ImgMessage imgMessage = new ImgMessage(imMessageDto.getMessageContent(),imMessageDto.getExtra(),imMessageDto.getFileUrl());
  38. imgMessage.setUser(userInfo);
  39. privateMessage.setContent(imgMessage);
  40. }else if("RC:FileMsg".equals(objectName)){
  41. FileMessage imgMessage = new FileMessage(imMessageDto.getFileName(),imMessageDto.getFileSize(),imMessageDto.getFileUrl(),imMessageDto.getExtra());
  42. privateMessage.setContent(imgMessage);
  43. }else {
  44. TxtMessage txtMessage = new TxtMessage(imMessageDto.getMessageContent(),imMessageDto.getExtra());
  45. txtMessage.setUser(userInfo);
  46. privateMessage.setContent(txtMessage);
  47. }
  48. privateMessage.setTargetId(imMessageDto.getTargetIds());
  49. privateMessage.setSenderId(imMessageDto.getSenderId());
  50. privateMessage.setObjectName(imMessageDto.getObjectName());
  51. privateMessage.setIsIncludeSender(1);
  52. return messageService.privateSend(privateMessage);
  53. }
  54. /*@RequestMapping(value = "/sendCustom", method = RequestMethod.POST)
  55. public Object sendCustom(@RequestBody ImGroupMessage imGroupMessage) throws Exception {
  56. GroupMessage groupMessage = new GroupMessage();
  57. ImTxtMessage content = (ImTxtMessage)imGroupMessage.getContent();
  58. CustomMessage customMessage = new CustomMessage(content.getContent(),content.getExtra());
  59. customMessage.setTYPE(imGroupMessage.getType());
  60. groupMessage.setContent(customMessage);
  61. groupMessage.setTargetId(imGroupMessage.getTargetId());
  62. groupMessage.setSenderId(imGroupMessage.getSenderId());
  63. groupMessage.setObjectName(imGroupMessage.getType());
  64. return messageService.groupSend(groupMessage);
  65. }*/
  66. @RequestMapping(value = "/recall", method = RequestMethod.POST)
  67. public Object recall(@RequestBody RecallMessage recallMessage) throws Exception {
  68. return messageService.privateRecall(recallMessage);
  69. }
  70. @RequestMapping(value = "/sendTemplate", method = RequestMethod.POST)
  71. public Object sendTemplate(@RequestBody TemplateMessage templateMessage) throws Exception {
  72. return messageService.privateSendTemplate(templateMessage);
  73. }
  74. }