k94314517
2025-07-04 50fb58286ed3b718c39a97e0987ee7561a295651
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
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
package com.doumee.api.business;
 
import com.doumee.api.BaseController;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
import com.doumee.dao.business.dto.*;
import com.doumee.dao.business.vo.CompensationVO;
import com.doumee.dao.business.vo.RiskConfigVO;
import com.doumee.dao.business.vo.dataBoard.InsuranceDataVO;
import com.doumee.dao.business.vo.dataBoard.SettleClaimsDataVO;
import com.doumee.service.business.InsuranceApplyService;
import com.doumee.service.business.SettleClaimsService;
import com.doumee.service.system.SystemDictDataService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
/**
 * @author 江蹄蹄
 * @date 2024/01/16 10:03
 */
@Api(tags = "报案理赔(新)")
@RestController
@RequestMapping("/business/settleRisk")
public class SettleRiskController extends BaseController {
 
    @Autowired
    private SystemDictDataService systemDictDataService;
 
    @Autowired
    private SettleClaimsService settleClaimsService;
 
 
    @ApiOperation("获取风险配置")
    @GetMapping("/getRiskConfig")
    public ApiResponse<RiskConfigVO> getRiskConfig() {
        return ApiResponse.success(systemDictDataService.getRiskConfig());
    }
 
 
    @ApiOperation("更新风险配置")
    @PostMapping("/updRiskConfig")
    @RequiresPermissions("business:settleRisk:updRiskConfig")
    public ApiResponse updRiskConfig(@RequestBody RiskConfigDTO riskConfigDTO) {
        systemDictDataService.updRiskConfig(riskConfigDTO);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("补充说明")
    @PostMapping("/saveSupplementDescribe")
    @RequiresPermissions("business:settleRisk:saveSupplementFile")
    public ApiResponse saveSupplementDescribe(@RequestBody SaveSupplementDescribeDTO dto) {
        settleClaimsService.saveSupplementDescribe(dto);
        return ApiResponse.success(null);
    }
 
    @PreventRepeat
    @ApiOperation("添加材料")
    @PostMapping("/saveSupplementFile")
    @RequiresPermissions("business:settleRisk:saveSupplementFile")
    public ApiResponse saveSupplementFile(@RequestBody SaveSupplementDescribeDTO dto) {
        settleClaimsService.saveSupplementFile(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("平台立案或退回")
    @PostMapping("/register")
    @RequiresPermissions("business:settleRisk:register")
    public ApiResponse register(@RequestBody OptSettleClaimsDTO dto) {
        settleClaimsService.register(dto);
        return ApiResponse.success(null);
    }
 
 
 
    @PreventRepeat
    @ApiOperation("添加报案号")
    @PostMapping("/addReportNum")
    @RequiresPermissions("business:settleRisk:addReportNum")
    public ApiResponse addReportNum(@RequestBody OptSettleClaimsDTO dto) {
        settleClaimsService.addReportNum(dto);
        return ApiResponse.success(null);
    }
 
 
 
    @PreventRepeat
    @ApiOperation("添加备注")
    @PostMapping("/addRemark")
    @RequiresPermissions("business:settleRisk:addRemark")
    public ApiResponse addRemark(@RequestBody OptSettleClaimsDTO dto) {
        settleClaimsService.addRemark(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("受理业务")
    @PostMapping("/acceptance")
    @RequiresPermissions("business:settleRisk:acceptance")
    public ApiResponse acceptance(@RequestBody AcceptanceSettleClaimsDTO dto) {
        settleClaimsService.acceptance(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("理赔费用项信息")
    @PostMapping("/getCompensation")
    public ApiResponse<List<CompensationVO>> getCompensation(@RequestBody CompensationFeeDTO dto) {
        return ApiResponse.success(settleClaimsService.getCompensation(dto));
    }
 
 
    @PreventRepeat
    @ApiOperation("理算")
    @PostMapping("/compensation")
    @RequiresPermissions("business:settleRisk:compensation")
    public ApiResponse compensation(@RequestBody CompensationDTO dto) {
        settleClaimsService.compensation(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("商议审批")
    @PostMapping("/discussAudit")
    @RequiresPermissions("business:settleRisk:discussAudit")
    public ApiResponse discussAudit(@RequestBody DiscussAuditDTO dto) {
        settleClaimsService.discussAudit(dto);
        return ApiResponse.success(null);
    }
 
 
 
    @PreventRepeat
    @ApiOperation("核赔")
    @PostMapping("/nuclearCompensation")
    @RequiresPermissions("business:settleRisk:nuclearCompensation")
    public ApiResponse nuclearCompensation(@RequestBody CompensationDTO dto) {
        settleClaimsService.nuclearCompensation(dto);
        return ApiResponse.success(null);
    }
 
 
 
    @PreventRepeat
    @ApiOperation("修改金额")
    @PostMapping("/updFee")
    @RequiresPermissions("business:settleRisk:updFee")
    public ApiResponse updFee(@RequestBody CompensationDTO dto) {
        settleClaimsService.updFee(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("修改案件类型")
    @PostMapping("/updCaseType")
    @RequiresPermissions("business:settleRisk:updCaseType")
    public ApiResponse updCaseType(@RequestBody CaseTypeDTO dto) {
        settleClaimsService.updCaseType(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("确认打款")
    @PostMapping("/payCash")
    @RequiresPermissions("business:settleRisk:payCash")
    public ApiResponse payCash(@RequestBody PayCashDTO dto) {
        settleClaimsService.payCash(dto);
        return ApiResponse.success(null);
    }
 
 
    @PreventRepeat
    @ApiOperation("修改伤残类型")
    @PostMapping("/updHurtType")
    @RequiresPermissions("business:settleRisk:updHurtType")
    public ApiResponse updHurtType(@RequestBody UpdHurtTypeDTO dto) {
        settleClaimsService.updHurtType(dto);
        return ApiResponse.success(null);
    }
 
 
    @ApiOperation("获取商议问题类型内容")
    @GetMapping("/getDiscussProblemType")
    public ApiResponse<List<String>> getDiscussProblemType() {
        return ApiResponse.success(settleClaimsService.getDiscussProblemType());
    }
 
 
    @ApiOperation("理赔报案数据报表")
    @GetMapping("/getSettleClaimsDataVO")
    public ApiResponse<SettleClaimsDataVO> getSettleClaimsDataVO() {
        return ApiResponse.success(settleClaimsService.getSettleClaimsDataVO());
    }
 
    @ApiOperation("保单数据报表")
    @GetMapping("/getInsuranceDataVO")
    public ApiResponse<InsuranceDataVO> getInsuranceDataVO() {
        return ApiResponse.success(settleClaimsService.getInsuranceDataVO());
    }
 
 
}