MsgSysMonitorNoticeServiceImpl.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package com.xy.service;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.xy.dto.MsgSysMonitorNoticeDto;
  6. import com.xy.dto.MsgUserMessageDto;
  7. import com.xy.entity.MsgSysMonitorNotice;
  8. import com.xy.mapper.MsgSysMonitorNoticeMapper;
  9. import com.xy.utils.Emptys;
  10. import com.xy.utils.MybatisPlusQuery;
  11. import com.xy.utils.PageBean;
  12. import com.xy.utils.R;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import lombok.AllArgsConstructor;
  16. import org.springframework.context.annotation.Lazy;
  17. import org.springframework.stereotype.Service;
  18. import org.springframework.validation.annotation.Validated;
  19. import org.springframework.web.bind.annotation.RequestBody;
  20. import java.util.List;
  21. import static com.xy.utils.Beans.copy;
  22. import static com.xy.utils.PlusBeans.toIPage;
  23. import static com.xy.utils.PlusBeans.toPageBean;
  24. /**
  25. * <p>
  26. * 系统消息 服务实现类
  27. * </p>
  28. *
  29. * @author 谭斌
  30. * @since 2023-03-13
  31. */
  32. @Service
  33. @AllArgsConstructor(onConstructor_ = @Lazy)
  34. @Api(tags = "系统消息")
  35. public class MsgSysMonitorNoticeServiceImpl extends ServiceImpl<MsgSysMonitorNoticeMapper, MsgSysMonitorNotice> implements MsgSysMonitorNoticeService {
  36. private MsgUserMessageServiceImpl msgUserMessageService;
  37. @Override
  38. @ApiOperation("对象查询")
  39. public R<MsgSysMonitorNoticeDto.Vo> obj(@RequestBody MsgSysMonitorNoticeDto.Vo vo) {
  40. MsgSysMonitorNoticeDto.SelectList selectList = copy(MsgSysMonitorNoticeDto.SelectList.class, vo);
  41. List<MsgSysMonitorNoticeDto.Vo> list = list(selectList).getData();
  42. if (Emptys.check(list)) {
  43. return R.ok(list.get(0));
  44. }
  45. return R.ok();
  46. }
  47. @Override
  48. @ApiOperation("集合查询")
  49. public R<List<MsgSysMonitorNoticeDto.Vo>> list(@RequestBody MsgSysMonitorNoticeDto.SelectList selectList) {
  50. LambdaQueryWrapper<MsgSysMonitorNotice> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(selectList, MsgSysMonitorNotice.class).build();
  51. List<MsgSysMonitorNotice> list = list(lambdaQueryWrapper);
  52. return R.ok(copy(MsgSysMonitorNoticeDto.Vo.class, list));
  53. }
  54. @Override
  55. @ApiOperation("分页查询")
  56. public R<PageBean<MsgSysMonitorNoticeDto.Vo>> page(@RequestBody MsgSysMonitorNoticeDto.Page page) {
  57. PageBean pageBean = page.getPage();
  58. LambdaQueryWrapper<MsgSysMonitorNotice> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(page, MsgSysMonitorNotice.class).build();
  59. IPage<MsgSysMonitorNotice> iPage = page(toIPage(pageBean), lambdaQueryWrapper);
  60. return R.ok(toPageBean(MsgSysMonitorNoticeDto.Vo.class, iPage));
  61. }
  62. @Override
  63. @ApiOperation("添加")
  64. public R save(@RequestBody @Validated MsgSysMonitorNoticeDto.Save save) {
  65. MsgSysMonitorNotice saveInfo = copy(MsgSysMonitorNotice.class, save);
  66. save(saveInfo);
  67. Long userId = save.getUserId();
  68. if (userId != null) {
  69. String channelType = save.getChannelType();
  70. MsgUserMessageDto.Save mum = new MsgUserMessageDto.Save();
  71. if ("ORDER_CUT".equals(channelType)) {
  72. //补扣设置为已读
  73. mum.setReadState("2");
  74. }
  75. mum.setMsgId(saveInfo.getMsgId());
  76. mum.setMsgType(saveInfo.getMsgType());
  77. mum.setPriority(saveInfo.getPriority());
  78. mum.setUserId(userId);
  79. msgUserMessageService.save(mum);
  80. }
  81. return R.ok();
  82. }
  83. @Override
  84. @ApiOperation("修改")
  85. public R update(@RequestBody @Validated MsgSysMonitorNoticeDto.Update update) {
  86. MsgSysMonitorNotice updateInfo = copy(MsgSysMonitorNotice.class, update);
  87. updateById(updateInfo);
  88. return R.ok();
  89. }
  90. }