liusheng
2024-05-13 fd9c3d5901354076b9abe59dcccd26bf7a1083bd
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
135
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.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.BaseOrganization;
import com.ruoyi.project.service.IBaseOrganizationService;
import com.ruoyi.web.controller.common.OnlyValueCommon;
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.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
 
import java.util.Arrays;
import java.util.List;
 
/**
 * 机构管理Controller
 *
 * @author ruoyi
 * @date 2021-11-05
 */
@Slf4j
@Api("机构信息管理")
@RestController
@RequestMapping("/project/organization")
public class BaseOrganizationController extends BaseController {
    @Autowired
    private IBaseOrganizationService baseOrganizationService;
 
    @Autowired
    private OnlyValueCommon onlyValueCommon;
 
    /**
     * 查询机构管理列表
     */
    @ApiOperation("获取机构列表")
    //// @PreAuthorize("@ss.hasPermi('project:organization:list')")
    @GetMapping("/list")
    public TableDataInfo list(BaseOrganization baseOrganization) {
        log.info("获取机构列表{}:", baseOrganization);
        startPage();
        List<BaseOrganization> list = baseOrganizationService.queryList(baseOrganization);
        return getDataTable(list);
    }
 
    /**
     * 导出机构管理列表
     */
    @ApiOperation("导出机构信息")
    //// @PreAuthorize("@ss.hasPermi('project:organization:export')")
    @Log(title = "机构管理", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(BaseOrganization baseOrganization) {
        log.info("导出机构信息{}:", baseOrganization);
        List<BaseOrganization> list = baseOrganizationService.queryList(baseOrganization);
        ExcelUtil<BaseOrganization> util = new ExcelUtil<BaseOrganization>(BaseOrganization.class);
        return util.exportExcel(list, "机构管理数据");
    }
 
    /**
     * 获取机构管理详细信息
     */
    @ApiOperation("通过机构id获取机构信息")
    //// @PreAuthorize("@ss.hasPermi('project:organization:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        log.info("获取机构管理详细信息{}:", id);
        return AjaxResult.success(baseOrganizationService.getById(id));
    }
 
    /**
     * 新增机构管理
     */
    @ApiOperation("新增机构信息")
    //// @PreAuthorize("@ss.hasPermi('project:organization:add')")
    @Log(title = "机构管理", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    @RepeatSubmit
    public AjaxResult add(@RequestBody BaseOrganization baseOrganization) {
        log.info("新增机构信息{}:", baseOrganization);
        //"0"+地市编码+医院类型
        String str = "0" + baseOrganization.getRegionallevel() + baseOrganization.getHospitalnature();
        String maxOrganizationID = baseOrganizationService.getMaxOrganizationID(str + "__");
        if (StringUtils.isNotBlank(maxOrganizationID)) {
            String result = maxOrganizationID.substring(str.length());
            //获取序号,+1,生成新的序号
            int xh = Integer.valueOf(result) + 1;
            if (String.valueOf(xh).length() > 1) {
                baseOrganization.setOrganizationid(str + xh);
            } else {
                baseOrganization.setOrganizationid(str + "0" + xh);
            }
        } else {
            baseOrganization.setOrganizationid(str + str + "01");
        }
        boolean save = baseOrganizationService.save(baseOrganization);
        log.info("新增机构信息baseOrganization的ID{}:", baseOrganization.getId());
        return AjaxResult.success(baseOrganization);
    }
 
    /**
     * 修改机构管理
     */
    @ApiOperation("修改机构信息")
    //// @PreAuthorize("@ss.hasPermi('project:organization:edit')")
    @Log(title = "机构管理", businessType = BusinessType.UPDATE)
    @PostMapping("/edit")
    @RepeatSubmit
    public AjaxResult edit(@RequestBody BaseOrganization baseOrganization) {
        log.info("修改机构信息{}:", baseOrganization);
        return toAjax(baseOrganizationService.updateById(baseOrganization));
    }
 
    /**
     * 删除机构管理
     */
    @ApiOperation("删除机构信息")
    //// @PreAuthorize("@ss.hasPermi('project:organization:remove')")
    @Log(title = "机构管理", businessType = BusinessType.DELETE)
    @GetMapping("/remove/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        log.info("删除机构信息{}:", ids);
        return toAjax(baseOrganizationService.removeByIds(Arrays.asList(ids)));
    }
 
 
}