package com.szwl.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.szwl.constant.ResponseCodesEnum; import com.szwl.model.bo.R; import com.szwl.model.bo.ResponseModel; import com.szwl.model.entity.TAdmin; import com.szwl.model.entity.TNotice; import com.szwl.service.TAdminService; import com.szwl.service.TNoticeService; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.Date; import java.util.List; /** *

* 前端控制器 *

* * @author wuhs * @since 2022-11-23 */ @RestController @RequestMapping("/tNotice") public class TNoticeController { @Autowired TAdminService tAdminService; @Autowired TNoticeService noticeService; @ApiOperation(value = "添加公告") @PostMapping("/addNotice") public ResponseModel addNotice(@RequestBody TNotice notice) { if(StringUtils.isEmpty(notice.getNote())){ return R.fail(ResponseCodesEnum.A0001,"内容为空"); } TNotice tNotice = new TNotice(); tNotice.setCreateDate(new Date()); tNotice.setModifyDate(new Date()); tNotice.setTitle(notice.getTitle()); tNotice.setNote(notice.getNote()); tNotice.setStatus("0"); tNotice.setCompanyType(notice.getCompanyType()); noticeService.save(tNotice); return R.ok(tNotice,"添加成功"); } @ApiOperation(value = "获取公告") @GetMapping("/getNotice") public ResponseModel getNotice(String adminId) { if(StringUtils.isEmpty(adminId)){ return R.fail(ResponseCodesEnum.A0001,"数据有空"); } TAdmin admin = tAdminService.getById(adminId); String companyType = admin.getCompanyType(); if(StringUtils.isEmpty(companyType)) { companyType = "0"; } LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TNotice::getStatus,"0"); query.eq(TNotice::getCompanyType,companyType); query.orderByDesc(TNotice::getCreateDate); List notices = noticeService.list(query); if(notices.size() > 0){ TNotice tNotice = notices.get(0); Long noticeId = admin.getNoticeId(); long time = tNotice.getCreateDate().getTime(); if (noticeId!=null) { if(noticeId > time) { return R.ok(null,"公告已读"); } } return R.ok(tNotice,"获取成功"); } else { return R.fail(ResponseCodesEnum.A0700,"没有公告"); } } @GetMapping("/updateNotice") public ResponseModel updateNotice(String adminId) { if(StringUtils.isEmpty(adminId)){ return R.fail(ResponseCodesEnum.A0001,"数据有空"); } TAdmin admin = tAdminService.getById(adminId); Long dateNow = System.currentTimeMillis(); admin.setNoticeId(dateNow); tAdminService.updateById(admin); return R.ok(null,"公告已读"); } }