zjh
2025-02-05 c176d20e59d15d137ab783e260d704b864b6ced0
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
package com.ltkj.web.controller.system;
 
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ltkj.common.excelConfig.ExcelUtils;
import com.ltkj.hosp.domain.TjAdvice;
import com.ltkj.hosp.domain.TjReservation;
import com.ltkj.hosp.service.ITjAdviceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import jodd.util.StringUtil;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.ltkj.common.annotation.Log;
import com.ltkj.common.core.controller.BaseController;
import com.ltkj.common.core.domain.AjaxResult;
import com.ltkj.common.enums.BusinessType;
import com.ltkj.hosp.domain.TjProAdvicerules;
import com.ltkj.hosp.service.ITjProAdvicerulesService;
import com.ltkj.common.utils.poi.ExcelUtil;
import com.ltkj.common.core.page.TableDataInfo;
import org.springframework.web.multipart.MultipartFile;
 
/**
 * 体检项目建议规则新表Controller
 *
 * @author ltkj_赵佳豪&李格
 * @date 2025-01-17
 */
@RestController
@RequestMapping("/hosp/advicerules")
@Api(tags = "A体检项目建议规则新表Controller")
public class TjProAdvicerulesController extends BaseController {
    @Autowired
    private ITjProAdvicerulesService tjProAdvicerulesService;
    @Resource
    private ITjAdviceService adviceService;
 
    /**
     * 查询体检项目建议规则新表列表
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:list')")
    @GetMapping("/list")
    @ApiOperation(value = "查询体检项目建议规则新表列表")
    public TableDataInfo list(TjProAdvicerules tjProAdvicerules) {
        startPage();
        List<TjProAdvicerules> list = tjProAdvicerulesService.selectTjProAdvicerulesList(tjProAdvicerules);
        return getDataTable(list);
    }
 
    /**
     * 导出体检项目建议规则新表列表
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:export')")
    @Log(title = "体检项目建议规则新表", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    @ApiOperation(value = "导出体检项目建议规则新表列表")
    public void export(HttpServletResponse response, TjProAdvicerules tjProAdvicerules) {
//        List<TjProAdvicerules> list = tjProAdvicerulesService.selectTjProAdvicerulesList(tjProAdvicerules);
//        ExcelUtil<TjProAdvicerules> util = new ExcelUtil<TjProAdvicerules>(TjProAdvicerules.class);
        ExcelUtils.exportTemplate(response,"体检项目建议规则新表数据",TjProAdvicerules.class);
//        ExcelUtils.expor
//        util.exportExcel(response, list, "体检项目建议规则新表数据");
    }
 
    @PostMapping("/tjimport")
    @ApiOperation(value = "导入体检项目建议规则新表列表")
    public AjaxResult tjimport(@RequestPart(value = "file") @ApiParam(value = "Excel文件") MultipartFile file) {
        try {
 
 
 
            List<TjProAdvicerules> proAdvicerules  = ExcelUtils.readMultipartFile(file, TjProAdvicerules.class);
            if(!proAdvicerules.isEmpty()){
                for (TjProAdvicerules advicerules : proAdvicerules) {
//                    LambdaQueryWrapper<TjAdvice> wq=new LambdaQueryWrapper<>();
//                    wq.eq(TjAdvice::getTitle,advicerules.getZyzd());
//                    List<TjAdvice> list = adviceService.list(wq);
//                    if(null !=list && !list.isEmpty() && StringUtil.isBlank(advicerules.getJynr())){
//                        advicerules.setJynr(list.get(0).getAdvice());
//                    }
 
                      if(StringUtil.isNotBlank(advicerules.getFwz())){
                          if(advicerules.getFwz().contains("-")){
                              String[] split = advicerules.getFwz().split("-");
                              advicerules.setFwzdz(split[1]);
                              advicerules.setFwzxz(split[0]);
                          }
                      }
 
                }
                 proAdvicerules  = proAdvicerules.stream().distinct().collect(Collectors.toList());
                tjProAdvicerulesService.saveBatch(proAdvicerules);
            }
            return AjaxResult.success();
 
        } catch (Exception e) {
            e.getMessage();
            return AjaxResult.error("导入文件有误请检查导入文件!");
        }
    }
 
    /**
     * 获取体检项目建议规则新表详细信息
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:query')")
    @GetMapping(value = "/{id}")
    @ApiOperation(value = "获取体检项目建议规则新表详细信息")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(tjProAdvicerulesService.selectTjProAdvicerulesById(id));
    }
 
    /**
     * 新增体检项目建议规则新表
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:add')")
    @Log(title = "体检项目建议规则新表", businessType = BusinessType.INSERT)
    @PostMapping
    @ApiOperation(value = "新增体检项目建议规则新表")
    public AjaxResult add(@RequestBody TjProAdvicerules advicerules) {
        if(StringUtil.isNotBlank(advicerules.getFwz())){
            if(advicerules.getFwz().contains("-")){
                String[] split = advicerules.getFwz().split("-");
                advicerules.setFwzdz(split[1]);
                advicerules.setFwzxz(split[0]);
            }
        }
        return toAjax(tjProAdvicerulesService.save(advicerules));
    }
 
    /**
     * 修改体检项目建议规则新表
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:edit')")
    @Log(title = "体检项目建议规则新表", businessType = BusinessType.UPDATE)
    @PutMapping
    @ApiOperation(value = "修改体检项目建议规则新表")
    public AjaxResult edit(@RequestBody TjProAdvicerules advicerules) {
        if(StringUtil.isNotBlank(advicerules.getFwz())){
            if(advicerules.getFwz().contains("-")){
                String[] split = advicerules.getFwz().split("-");
                advicerules.setFwzdz(split[1]);
                advicerules.setFwzxz(split[0]);
            }
        }
        return toAjax(tjProAdvicerulesService.updateById(advicerules));
    }
 
    /**
     * 删除体检项目建议规则新表
     */
    @PreAuthorize("@ss.hasPermi('hosp:advicerules:remove')")
    @Log(title = "体检项目建议规则新表", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    @ApiOperation(value = "删除体检项目建议规则新表")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(tjProAdvicerulesService.deleteTjProAdvicerulesByIds(ids));
    }
}