package com.gkhy.assess.admin.controller.web; import com.gkhy.assess.common.annotation.RepeatSubmit; import com.gkhy.assess.common.api.CommonResult; import com.gkhy.assess.system.domain.SysNotice; import com.gkhy.assess.system.service.SysNoticeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @Api(tags = "通知公告前端控制器") @RestController @RequestMapping("/system/notice") public class SysNoticeController { @Autowired private SysNoticeService noticeService; @ApiOperation(value = "通知列表(分页)") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"), @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10") }) @GetMapping("/noticeList") public CommonResult noticeList(SysNotice notice){ return CommonResult.success(noticeService.noticeList(notice)); } @ApiOperation(value = "根据id获取通知详情") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "noticeId", dataType = "int", required = true, value = "通知id") }) @GetMapping("/getNoticeById") public CommonResult getNoticeById(@RequestParam(required = true)Long noticeId){ return CommonResult.success(noticeService.getNoticeById(noticeId)); } @RepeatSubmit @RequiresPermissions("system:assess:monitor") @ApiOperation(value = "新增通知") @PostMapping("/addNotice") public CommonResult addNotice(@Validated @RequestBody SysNotice notice){ return CommonResult.success(noticeService.addNotice(notice)); } @RepeatSubmit @RequiresPermissions("system:assess:monitor") @ApiOperation(value = "编辑通知") @PutMapping("/editNotice") public CommonResult editNotice(@Validated @RequestBody SysNotice notice){ return CommonResult.success(noticeService.editNotice(notice)); } @RepeatSubmit @RequiresPermissions("system:assess:monitor") @ApiOperation(value = "删除通知") @DeleteMapping("/remove/{noticeId}") public CommonResult removeNotice(@PathVariable(name = "noticeId")Long noticeId){ return CommonResult.success(noticeService.deleteNoticeById(noticeId)); } @RepeatSubmit @RequiresPermissions("system:assess:monitor") @ApiOperation(value = "通知状态修改,停用/启用") @PostMapping("/changeStatus") public CommonResult changeStatus(@RequestBody SysNotice notice) { return CommonResult.success(noticeService.changeNoticeStatus(notice)); } }