TNoticeController.java 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.szwl.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  4. import com.szwl.constant.ResponseCodesEnum;
  5. import com.szwl.model.bo.R;
  6. import com.szwl.model.bo.ResponseModel;
  7. import com.szwl.model.entity.TAdmin;
  8. import com.szwl.model.entity.TNotice;
  9. import com.szwl.service.TAdminService;
  10. import com.szwl.service.TNoticeService;
  11. import io.swagger.annotations.ApiOperation;
  12. import org.apache.commons.lang.StringUtils;
  13. import org.checkerframework.checker.units.qual.A;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.http.HttpStatus;
  16. import org.springframework.http.ResponseEntity;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.Date;
  19. import java.util.List;
  20. /**
  21. * <p>
  22. * 前端控制器
  23. * </p>
  24. *
  25. * @author wuhs
  26. * @since 2022-11-23
  27. */
  28. @RestController
  29. @RequestMapping("/tNotice")
  30. public class TNoticeController {
  31. @Autowired
  32. TAdminService tAdminService;
  33. @Autowired
  34. TNoticeService noticeService;
  35. @ApiOperation(value = "添加公告")
  36. @GetMapping("/addNotice")
  37. public ResponseModel<?> addNotice(@RequestBody TNotice notice) {
  38. if(StringUtils.isEmpty(notice.getNote())){
  39. return R.fail(ResponseCodesEnum.A0001,"内容为空");
  40. }
  41. TNotice tNotice = new TNotice();
  42. tNotice.setCreateDate(new Date());
  43. tNotice.setModifyDate(new Date());
  44. tNotice.setTitle(notice.getTitle());
  45. tNotice.setNote(notice.getNote());
  46. tNotice.setStatus("0");
  47. noticeService.save(tNotice);
  48. return R.ok(tNotice,"添加成功");
  49. }
  50. @ApiOperation(value = "获取公告")
  51. @GetMapping("/getNotice")
  52. public ResponseModel<?> getNotice(String adminId) {
  53. if(StringUtils.isEmpty(adminId)){
  54. return R.fail(ResponseCodesEnum.A0001,"数据有空");
  55. }
  56. TAdmin admin = tAdminService.getById(adminId);
  57. LambdaQueryWrapper<TNotice> query = Wrappers.lambdaQuery();
  58. query.eq(TNotice::getStatus,0);
  59. query.orderByDesc(TNotice::getCreateDate);
  60. List<TNotice> notices = noticeService.list(query);
  61. if(notices == null){
  62. return R.fail(ResponseCodesEnum.A0700,"没有公告");
  63. }
  64. TNotice tNotice = notices.get(0);
  65. Long noticeId = admin.getNoticeId();
  66. long time = tNotice.getCreateDate().getTime();
  67. if (noticeId!=null) {
  68. if(noticeId > time) {
  69. return R.ok(null,"公告已读");
  70. }
  71. }
  72. return R.ok(tNotice,"获取成功");
  73. }
  74. @GetMapping("/updateNotice")
  75. public ResponseModel<?> updateNotice(String adminId) {
  76. if(StringUtils.isEmpty(adminId)){
  77. return R.fail(ResponseCodesEnum.A0001,"数据有空");
  78. }
  79. TAdmin admin = tAdminService.getById(adminId);
  80. Long dateNow = System.currentTimeMillis();
  81. admin.setNoticeId(dateNow);
  82. tAdminService.updateById(admin);
  83. return R.ok(null,"公告已读");
  84. }
  85. }