package com.ruoyi.collaborativeApproval.controller; 
 | 
  
 | 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 
 | 
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 
 | 
import com.ruoyi.collaborativeApproval.mapper.ReadingStatusMapper; 
 | 
import com.ruoyi.collaborativeApproval.pojo.ReadingStatus; 
 | 
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement; 
 | 
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement; 
 | 
import com.ruoyi.collaborativeApproval.service.RulesRegulationsManagementService; 
 | 
import com.ruoyi.common.utils.poi.ExcelUtil; 
 | 
import com.ruoyi.framework.web.domain.AjaxResult; 
 | 
import io.swagger.annotations.Api; 
 | 
import io.swagger.annotations.ApiOperation; 
 | 
import lombok.AllArgsConstructor; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.util.CollectionUtils; 
 | 
import org.springframework.web.bind.annotation.*; 
 | 
  
 | 
import javax.servlet.http.HttpServletResponse; 
 | 
import java.util.List; 
 | 
  
 | 
@RestController 
 | 
@RequestMapping("/rulesRegulationsManagement") 
 | 
@AllArgsConstructor 
 | 
@Api(tags = "制度管理") 
 | 
public class RulesRegulationsManagementController { 
 | 
    @Autowired 
 | 
    private RulesRegulationsManagementService rulesRegulationsManagementService; 
 | 
    @Autowired 
 | 
    private ReadingStatusMapper readingStatusMapper; 
 | 
  
 | 
    @GetMapping("/getList") 
 | 
    @ApiOperation("分页查询") 
 | 
    public AjaxResult listPage(Page page, RulesRegulationsManagement rulesRegulationsManagement){ 
 | 
        return AjaxResult.success(rulesRegulationsManagementService.listPage(page, rulesRegulationsManagement)); 
 | 
    } 
 | 
  
 | 
    @PostMapping("/add") 
 | 
    @ApiOperation("新增") 
 | 
    public AjaxResult add(@RequestBody RulesRegulationsManagement rulesRegulationsManagement){ 
 | 
        return AjaxResult.success(rulesRegulationsManagementService.save(rulesRegulationsManagement)); 
 | 
    } 
 | 
  
 | 
    @PostMapping("/update") 
 | 
    @ApiOperation("修改") 
 | 
    public AjaxResult update(@RequestBody RulesRegulationsManagement rulesRegulationsManagement){ 
 | 
        return AjaxResult.success(rulesRegulationsManagementService.updateById(rulesRegulationsManagement)); 
 | 
    } 
 | 
  
 | 
    @DeleteMapping("/delete") 
 | 
    @ApiOperation("删除") 
 | 
    public AjaxResult delete(@PathVariable("ids") List<Long> ids){ 
 | 
        if (CollectionUtils.isEmpty(ids)) { 
 | 
            throw new RuntimeException("请传入要删除的ID"); 
 | 
        } 
 | 
        return AjaxResult.success(rulesRegulationsManagementService.removeBatchByIds(ids)); 
 | 
    } 
 | 
    //规则查看时新增阅读状态 
 | 
    @PostMapping("/addReadingStatus") 
 | 
    @ApiOperation("新增阅读状态") 
 | 
    public AjaxResult addReadingStatus(@RequestBody ReadingStatus readingStatus){ 
 | 
        return AjaxResult.success(readingStatusMapper.insert(readingStatus)); 
 | 
    } 
 | 
    @PostMapping("/updateReadingStatus") 
 | 
    @ApiOperation("修改阅读状态") 
 | 
    public AjaxResult updateReadingStatus(@RequestBody ReadingStatus readingStatus){ 
 | 
        return AjaxResult.success(readingStatusMapper.updateById(readingStatus)); 
 | 
    } 
 | 
    @GetMapping("/getReadingStatusList") 
 | 
    @ApiOperation("分页查询阅读状态") 
 | 
    public AjaxResult listPage(Page page, ReadingStatus readingStatus){ 
 | 
        return AjaxResult.success(readingStatusMapper.selectPage(page,new QueryWrapper<ReadingStatus>(readingStatus))); 
 | 
    } 
 | 
    @GetMapping("/getReadingStatusByRuleId/{ruleId}") 
 | 
    @ApiOperation("根据制度id查询阅读状态") 
 | 
    public AjaxResult getReadingStatusByRuleId(@PathVariable Long ruleId){ 
 | 
        return AjaxResult.success(readingStatusMapper.selectList(new QueryWrapper<ReadingStatus>().eq("rule_id", ruleId))); 
 | 
    } 
 | 
  
 | 
    @ApiOperation(value = "规章制度管理导出") 
 | 
    @PostMapping("/export") 
 | 
    public void export(HttpServletResponse response) { 
 | 
        List<RulesRegulationsManagement> accountExpenses = rulesRegulationsManagementService.list(); 
 | 
        ExcelUtil<RulesRegulationsManagement> util = new ExcelUtil<RulesRegulationsManagement>(RulesRegulationsManagement.class); 
 | 
        util.exportExcel(response, accountExpenses, "规章制度管理导出"); 
 | 
    } 
 | 
} 
 |