package com.ruoyi.collaborativeApproval.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.collaborativeApproval.dto.NoticeDTO; import com.ruoyi.collaborativeApproval.service.NoticeService; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @AllArgsConstructor @Api(tags = "通知公告") @RequestMapping("/collaborativeApproval/notice") public class NoticeController extends BaseController { private final NoticeService noticeService; @GetMapping("/page") @Log(title = "分页查询", businessType = BusinessType.OTHER) @ApiOperation("分页查询") public AjaxResult listPage(Page page, NoticeDTO noticeDTO){ return AjaxResult.success(noticeService.listPage(page, noticeDTO)); } @PostMapping("/add") @Log(title = "新增", businessType = BusinessType.INSERT) @ApiOperation("新增") public AjaxResult add(@RequestBody NoticeDTO noticeDTO){ return AjaxResult.success(noticeService.save(noticeDTO)); } @PutMapping("/update") @Log(title = "修改", businessType = BusinessType.UPDATE) @ApiOperation("修改") public AjaxResult update(@RequestBody NoticeDTO noticeDTO){ return AjaxResult.success(noticeService.updateById(noticeDTO)); } @DeleteMapping("/{ids}") @Log(title = "删除", businessType = BusinessType.DELETE) @ApiOperation("删除") public AjaxResult delete(@PathVariable("ids") List ids){ if (CollectionUtils.isEmpty(ids)) { throw new RuntimeException("请传入要删除的ID"); } return AjaxResult.success(noticeService.removeBatchByIds(ids)); } @GetMapping("/count") @Log(title = "获取公告数量", businessType = BusinessType.OTHER) @ApiOperation("获取公告数量") public AjaxResult count(){ return AjaxResult.success(noticeService.selectCount()); } }