liusheng
5 天以前 0bbbd746e8c39d91ad7b47a4e36e29ab972dc98c
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
package com.ruoyi.outpatientvisit.controller;
 
import com.ruoyi.common.annotation.AddOrgId;
import com.ruoyi.common.annotation.Log;
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.utils.poi.ExcelUtil;
import com.ruoyi.outpatientvisit.domain.PatMedOuthospProvisional;
import com.ruoyi.outpatientvisit.service.OuthospProvisionalService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import javax.servlet.http.HttpServletResponse;
import java.util.List;
 
/**
 * 患者门诊记录(过渡)Controller —— 从 {@code ruoyi-admin} 的
 * {@code PatMedOuthospProvisionalController} <b>整体迁入</b>。
 *
 * <h3>⚠️ URL 一个都不能变</h3>
 * 类级路径仍是 {@code /smartor/provisional},6 个方法级路径逐字照抄:
 * <pre>
 * POST /smartor/provisional/list
 * POST /smartor/provisional/export
 * GET  /smartor/provisional/getInfo/{id}
 * POST /smartor/provisional/add
 * POST /smartor/provisional/edit
 * GET  /smartor/provisional/remove/{ids}
 * </pre>
 * 由 {@code sql/_probe/verify_outhosp_url_equivalence.py} 把关(全集判定 + 重复映射检查)。
 *
 * <h3>迁入时同步删除</h3>
 * 原 {@code PatMedOuthospProvisionalController} 必须整体删除,
 * 否则两个类都映射同一路径,Spring 会因 {@code Ambiguous mapping} <b>直接启动失败</b>。
 *
 * <h3>与原实现的两处等价改写(已登记)</h3>
 * <ol>
 *   <li><b>不再经 smartor 的 Service 接口</b>:原来注入
 *       {@code com.smartor.service.IPatMedOuthospProvisionalService},
 *       现改为本模块的 {@link OuthospProvisionalService}
 *       —— 该 Service 原本只依赖本模块的 Mapper,属纯 CRUD,已整体迁入;</li>
 *   <li><b>分页方式不变</b>:{@code list} 仍用 {@code startPage()}(pageHelper),
 *       与原实现一致,<b>不要</b>改成 {@code PageUtils.startPageByPost}。</li>
 * </ol>
 *
 * <h3>开关</h3>
 * 本类<b>不挂</b>开关拦截器:属基础数据 CRUD(前端"过渡记录"管理页在用),
 * {@code outpatientvisit.enabled} 只该控制"要不要生成门诊随访"。
 */
@Slf4j
@Api("患者门诊记录(过渡)")
@RestController
@RequestMapping("/smartor/provisional")
public class OuthospProvisionalController extends BaseController {
 
    @Autowired
    private OuthospProvisionalService service;
 
    /**
     * 查询患者门诊记录(过渡)列表。
     */
    @ApiOperation("查询患者门诊记录(过渡)列表")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:list')")
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("list")
    public TableDataInfo list(@RequestBody PatMedOuthospProvisional patMedOuthospProvisional) {
        startPage();
        List<PatMedOuthospProvisional> list = service.selectList(patMedOuthospProvisional);
        return getDataTable(list);
    }
 
    /**
     * 导出患者门诊记录(过渡)列表。
     */
    @ApiOperation("导出患者门诊记录(过渡)列表")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:export')")
    @Log(title = "患者门诊记录(过渡)", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, PatMedOuthospProvisional patMedOuthospProvisional) {
        List<PatMedOuthospProvisional> list = service.selectList(patMedOuthospProvisional);
        ExcelUtil<PatMedOuthospProvisional> util = new ExcelUtil<PatMedOuthospProvisional>(PatMedOuthospProvisional.class);
        util.exportExcel(response, list, "患者门诊记录(过渡)数据");
    }
 
    /**
     * 获取患者门诊记录(过渡)详细信息。
     */
    @ApiOperation("获取患者门诊记录(过渡)详细信息")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:query')")
    @GetMapping(value = "/getInfo/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(service.selectById(id));
    }
 
    /**
     * 新增患者门诊记录(过渡)。
     */
    @ApiOperation("新增患者门诊记录(过渡)")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:add')")
    @Log(title = "患者门诊记录(过渡)", businessType = BusinessType.INSERT)
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/add")
    public AjaxResult add(@RequestBody PatMedOuthospProvisional patMedOuthospProvisional) {
        return toAjax(service.insert(patMedOuthospProvisional));
    }
 
    /**
     * 修改患者门诊记录(过渡)。
     */
    @ApiOperation("修改患者门诊记录(过渡)")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:edit')")
    @Log(title = "患者门诊记录(过渡)", businessType = BusinessType.UPDATE)
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/edit")
    public AjaxResult edit(@RequestBody PatMedOuthospProvisional patMedOuthospProvisional) {
        return toAjax(service.update(patMedOuthospProvisional));
    }
 
    /**
     * 删除患者门诊记录(过渡)。
     */
    @ApiOperation("删除患者门诊记录(过渡)")
    //@PreAuthorize("@ss.hasPermi('smartor:provisional:remove')")
    @Log(title = "患者门诊记录(过渡)", businessType = BusinessType.DELETE)
    @GetMapping("/remove/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(service.deleteByIds(ids));
    }
}