liusheng
2026-01-28 0bb9f6c3e894e56ff58d335110fbe4cfa87b64b2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
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.enums.BusinessType;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.ServiceDeathinfo;
import com.ruoyi.project.domain.dto.DeathBaseInfoDTO;
import com.ruoyi.project.domain.vo.DeathBaseInfoVO;
import com.ruoyi.project.service.IServiceDeathinfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
 
import java.util.Arrays;
import java.util.List;
import java.util.Map;
 
/**
 * 患者死亡信息Controller
 *
 * @author ls
 * @date 2026-01-20
 */
@Api(description = "患者死亡信息")
@RestController
@RequestMapping("/project/deathinfo")
public class ServiceDeathinfoController extends BaseController {
    @Autowired
    private IServiceDeathinfoService serviceDeathinfoService;
 
    /**
     * 查询患者死亡信息列表
     */
    @ApiOperation("查询患者死亡基本信息")
    @PostMapping("/queryDathInfoBaseInfo")
    public Map<String, Object> queryDathInfoBaseInfo(@RequestBody DeathBaseInfoVO deathBaseInfoVO) {
        Integer offset = PageUtils.getOffset(deathBaseInfoVO.getPageNum(), deathBaseInfoVO.getPageSize());
        deathBaseInfoVO.setPageNum(offset);
        List<DeathBaseInfoDTO> deathBaseInfoDTOS = serviceDeathinfoService.dathInfoBaseInfoList(deathBaseInfoVO);
 
        //获取总数
        deathBaseInfoVO.setPageNum(null);
        deathBaseInfoVO.setPageSize(null);
        Integer totalCount = 0;
        List<DeathBaseInfoDTO> total = serviceDeathinfoService.dathInfoBaseInfoList(deathBaseInfoVO);
        if (!CollectionUtils.isEmpty(total)) totalCount = total.size();
        return getDataTable(deathBaseInfoDTOS, totalCount);
    }
 
    /**
     * 导出患者死亡信息列表
     */
    @ApiOperation("导出患者死亡信息列表")
    // @PreAuthorize("@ss.hasPermi('project:deathinfo:export')")
    @Log(title = "患者死亡信息", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(ServiceDeathinfo serviceDeathinfo) {
        List<ServiceDeathinfo> list = serviceDeathinfoService.exportQueryList(serviceDeathinfo);
        ExcelUtil<ServiceDeathinfo> util = new ExcelUtil<ServiceDeathinfo>(ServiceDeathinfo.class);
        return util.exportExcel(list, "患者死亡信息数据");
    }
 
    /**
     * 获取患者死亡信息详细信息
     */
    @ApiOperation("获取患者死亡信息详细信息")
    // @PreAuthorize("@ss.hasPermi('project:deathinfo:query')")
    @GetMapping(value = "/getInfo/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return AjaxResult.success(serviceDeathinfoService.getById(id));
    }
 
    /**
     * 新增患者死亡信息
     */
    @ApiOperation("新增患者死亡信息")
    // @PreAuthorize("@ss.hasPermi('project:deathinfo:add')")
    @Log(title = "患者死亡信息", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    @RepeatSubmit
    public AjaxResult add(@RequestBody ServiceDeathinfo serviceDeathinfo) {
        return toAjax(serviceDeathinfoService.save(serviceDeathinfo));
    }
 
    /**
     * 修改患者死亡信息
     */
    @ApiOperation("修改患者死亡信息")
    // @PreAuthorize("@ss.hasPermi('project:deathinfo:edit')")
    @Log(title = "患者死亡信息", businessType = BusinessType.UPDATE)
    @PostMapping("/edit")
    @RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceDeathinfo serviceDeathinfo) {
        return toAjax(serviceDeathinfoService.updateById(serviceDeathinfo));
    }
 
    /**
     * 删除患者死亡信息
     */
    @ApiOperation("删除患者死亡信息")
    // @PreAuthorize("@ss.hasPermi('project:deathinfo:remove')")
    @Log(title = "患者死亡信息", businessType = BusinessType.DELETE)
    @GetMapping("/remove/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(serviceDeathinfoService.removeByIds(Arrays.asList(ids)));
    }
}