package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.project.domain.ServiceDonatecomporgan; import com.ruoyi.project.service.IServiceDonatecomporganService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Arrays; import java.util.List; /** * 捐献器官移植Controller * * @author ruoyi * @date 2023-12-25 */ @Slf4j @Api("捐献器官移植") @RestController @RequestMapping("/project/donatecomporgan") public class ServiceDonatecomporganController extends BaseController { @Autowired private IServiceDonatecomporganService serviceDonatecomporganService; /** * 查询捐献器官移植列表 */ @ApiOperation("查询捐献器官移植列表") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:list')") @GetMapping("/list") public TableDataInfo list(ServiceDonatecomporgan serviceDonatecomporgan) { startPage(); List list = serviceDonatecomporganService.queryList(serviceDonatecomporgan); return getDataTable(list); } /** * 导出捐献器官移植列表 */ @ApiOperation("导出捐献器官移植列表") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:export')") @Log(title = "捐献器官移植", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult export(ServiceDonatecomporgan serviceDonatecomporgan) { List list = serviceDonatecomporganService.queryList(serviceDonatecomporgan); ExcelUtil util = new ExcelUtil(ServiceDonatecomporgan.class); return util.exportExcel(list, "捐献器官移植数据"); } /** * 获取捐献器官移植详细信息 */ @ApiOperation("获取捐献器官移植详细信息") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return AjaxResult.success(serviceDonatecomporganService.getById(id)); } /** * 新增捐献器官移植 */ @ApiOperation("新增捐献器官移植") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:add')") @Log(title = "捐献器官移植", businessType = BusinessType.INSERT) @PostMapping("/add") @RepeatSubmit public AjaxResult add(@RequestBody ServiceDonatecomporgan serviceDonatecomporgan) { boolean save = serviceDonatecomporganService.save(serviceDonatecomporgan); return AjaxResult.success(serviceDonatecomporgan); } /** * 修改捐献器官移植 */ @ApiOperation("修改捐献器官移植") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:edit')") @Log(title = "捐献器官移植", businessType = BusinessType.UPDATE) @PostMapping("/edit") @RepeatSubmit public AjaxResult edit(@RequestBody ServiceDonatecomporgan serviceDonatecomporgan) { return toAjax(serviceDonatecomporganService.updateById(serviceDonatecomporgan)); } /** * 删除捐献器官移植 */ @ApiOperation("删除捐献器官移植") // // @PreAuthorize("@ss.hasPermi('project:donatecomporgan:remove')") @Log(title = "捐献器官移植", businessType = BusinessType.DELETE) @GetMapping("/remove/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceDonatecomporganService.removeByIds(Arrays.asList(ids))); } @ApiOperation("新增或修改捐献器官移植") @PostMapping("/saveOrUpdateDonatecomporgan") public AjaxResult saveOrUpdateDonatecomporgan(@RequestBody List serviceDonatecomporganList) { if (CollectionUtils.isEmpty(serviceDonatecomporganList)) { throw new BaseException("请检查需要新增或修改的参数是否完整"); } Boolean i = null; for (ServiceDonatecomporgan serviceDonatecompletion : serviceDonatecomporganList) { log.info("捐献器官移植id是否为空 : {},基础表的id为 : {}", serviceDonatecompletion.getId(), serviceDonatecompletion.getInfoid()); ServiceDonatecomporgan sd = new ServiceDonatecomporgan(); sd.setInfoid(serviceDonatecompletion.getInfoid()); sd.setOrganno(serviceDonatecompletion.getOrganno()); sd.setDel_flag(0); List serviceDonatecomporgans = serviceDonatecomporganService.queryList(sd); if (serviceDonatecompletion.getId() == null && CollectionUtils.isEmpty(serviceDonatecomporgans)) { i = serviceDonatecomporganService.save(serviceDonatecompletion); } else { serviceDonatecompletion.setId(serviceDonatecomporgans.get(0).getId()); i = serviceDonatecomporganService.updateById(serviceDonatecompletion); } } return toAjax(i); } }