package com.ycl.platform.controller; import annotation.Log; import com.ycl.platform.domain.entity.ContractResult; import com.ycl.platform.domain.entity.ContractResultRecord; import com.ycl.platform.domain.vo.ContractResultVO; import com.ycl.platform.service.IContractResultService; import com.ycl.system.AjaxResult; import com.ycl.system.controller.BaseController; import com.ycl.system.page.TableDataInfo; import com.ycl.utils.poi.ExcelUtil; import enumeration.BusinessType; import jakarta.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 考核结果Controller * * @author ruoyi * @date 2024-04-01 */ @RestController @RequestMapping("/contract/result") public class ContractResultController extends BaseController { @Autowired private IContractResultService checkResultService; /** * 查询考核结果列表 */ @PreAuthorize("@ss.hasPermi('contract:result:list')") @PostMapping("/list") public TableDataInfo list(@RequestBody ContractResultVO contractResult) { startPage(); List list = checkResultService.selectCheckResultList(contractResult); return getDataTable(list); } /** * 查询考核结果列表 */ @PreAuthorize("@ss.hasPermi('contract:result:query')") @GetMapping("/record/list") public TableDataInfo recordList(Long resultId, Long contractId) { List list = checkResultService.selectCheckResultRecordList(resultId, contractId); return getDataTable(list); } /** * 导出考核结果列表 */ @PreAuthorize("@ss.hasPermi('contract:result:export')") @Log(title = "考核结果", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, ContractResultVO contractResult) { List list = checkResultService.selectCheckResultList(contractResult); ExcelUtil util = new ExcelUtil<>(ContractResultVO.class); util.exportExcel(response, list, "考核结果数据"); } /** * 获取考核结果详细信息 */ @PreAuthorize("@ss.hasPermi('contract:result:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return success(checkResultService.selectCheckResultById(id)); } /** * 新增考核结果 */ @PreAuthorize("@ss.hasPermi('contract:result:add')") @Log(title = "考核结果", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ContractResult contractResult) { return toAjax(checkResultService.insertCheckResult(contractResult)); } /** * 修改考核结果 */ @PreAuthorize("@ss.hasPermi('contract:result:edit')") @Log(title = "考核结果", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ContractResult contractResult) { return toAjax(checkResultService.updateCheckResult(contractResult)); } /** * 发布考核结果 */ @PreAuthorize("@ss.hasPermi('contract:result:publish')") @PutMapping("/publish/{id}") public AjaxResult publish(@PathVariable("id") Long id) { return toAjax(checkResultService.publish(id)); } /** * 删除考核结果 */ @PreAuthorize("@ss.hasPermi('contract:result:remove')") @Log(title = "考核结果", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(checkResultService.deleteCheckResultByIds(ids)); } }