liusheng
10 小时以前 e180e3a496d6f29d3a3b34016400de9d997c6bd9
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
package com.ruoyi.web.controller.smartor;
 
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.PageUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.DTO.DetailTraceDealDTO;
import com.smartor.domain.ServiceSubtaskDetailTrace;
import com.smartor.domain.VO.DetailTraceDealVO;
import com.smartor.domain.VO.SatisfactionExceptConfigQuestionReqVO;
import com.smartor.service.IServiceSubtaskDetailTraceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
 
/**
 * 随访任务异常记录跟踪Controller
 *
 * @author lihu
 * @date 2026-03-24
 */
@Slf4j
@Api("随访任务异常记录跟踪")
@RestController
@RequestMapping("/smartor/trace")
public class ServiceSubtaskDetailTraceController extends BaseController {
    @Autowired
    private IServiceSubtaskDetailTraceService serviceSubtaskDetailTraceService;
 
    /**
     * 查询随访任务异常记录跟踪列表
     */
    @ApiOperation("查询随访任务异常记录跟踪列表")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:list')")
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/list")
    public Map<String, Object> list(@RequestBody ServiceSubtaskDetailTrace serviceSubtaskDetailTrace) {
        Integer offset = PageUtils.getOffset(serviceSubtaskDetailTrace.getPageNum(), serviceSubtaskDetailTrace.getPageSize());
        serviceSubtaskDetailTrace.setPageNum(offset);
        List<ServiceSubtaskDetailTrace> list = serviceSubtaskDetailTraceService.selectServiceSubtaskDetailTtraceList(serviceSubtaskDetailTrace);
 
        serviceSubtaskDetailTrace.setPageNum(null);
        serviceSubtaskDetailTrace.setPageSize(null);
        List<ServiceSubtaskDetailTrace> total = serviceSubtaskDetailTraceService.selectServiceSubtaskDetailTtraceList(serviceSubtaskDetailTrace);
 
        return getDataTable3(CollectionUtils.isNotEmpty(total) ? total.size() : 0, list);
    }
 
 
    @ApiOperation("异常问题处理情况查询")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:list')")
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/tracedeallist")
    public Map<String, Object> tracedeallist(@RequestBody DetailTraceDealVO detailTraceDealVO) {
        Integer offset = PageUtils.getOffset(detailTraceDealVO.getPageNum(), detailTraceDealVO.getPageSize());
        detailTraceDealVO.setPageNum(offset);
        List<DetailTraceDealDTO> list = serviceSubtaskDetailTraceService.tracedeallist(detailTraceDealVO);
 
        detailTraceDealVO.setPageNum(null);
        detailTraceDealVO.setPageSize(null);
        List<DetailTraceDealDTO> total = serviceSubtaskDetailTraceService.tracedeallist(detailTraceDealVO);
 
        return getDataTable3(CollectionUtils.isNotEmpty(total) ? total.size() : 0, list);
    }
 
    /**
     * 获取满意度异常配置题目
     */
    @ApiOperation("获取满意度异常配置题目")
    @PostMapping("/getSatisfactionExceptConfigQuestion")
    public Map<String, Object> getSatisfactionExceptConfigQuestion(@RequestBody SatisfactionExceptConfigQuestionReqVO questionReqVO) {
        log.info("获取满意度异常配置题目的入参: {}", questionReqVO);
        Map<String, Object> satisfactionExceptConfigQuestion = serviceSubtaskDetailTraceService.getSatisfactionExceptConfigQuestion(questionReqVO);
        return satisfactionExceptConfigQuestion;
    }
 
    /**
     * 导出随访任务异常记录跟踪列表
     */
    @ApiOperation("导出随访任务异常记录跟踪列表")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:export')")
    @Log(title = "随访任务异常记录跟踪", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ServiceSubtaskDetailTrace serviceSubtaskDetailTrace) {
        List<ServiceSubtaskDetailTrace> list = serviceSubtaskDetailTraceService.selectServiceSubtaskDetailTtraceList(serviceSubtaskDetailTrace);
        ExcelUtil<ServiceSubtaskDetailTrace> util = new ExcelUtil<ServiceSubtaskDetailTrace>(ServiceSubtaskDetailTrace.class);
        util.exportExcel(response, list, "随访任务异常记录跟踪数据");
    }
 
    /**
     * 获取随访任务异常记录跟踪详细信息
     */
    @ApiOperation("获取随访任务异常记录跟踪详细信息")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:query')")
    @GetMapping(value = "/getInfo/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(serviceSubtaskDetailTraceService.selectServiceSubtaskDetailTtraceById(id));
    }
 
    /**
     * 新增随访任务异常记录跟踪
     */
    @ApiOperation("新增随访任务异常记录跟踪")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:add')")
    @Log(title = "随访任务异常记录跟踪", businessType = BusinessType.INSERT)
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/add")
    public AjaxResult add(@RequestBody ServiceSubtaskDetailTrace serviceSubtaskDetailTrace) {
        return toAjax(serviceSubtaskDetailTraceService.insertServiceSubtaskDetailTtrace(serviceSubtaskDetailTrace));
    }
 
    /**
     * 修改随访任务异常记录跟踪
     */
    @ApiOperation("修改随访任务异常记录跟踪")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:edit')")
    @Log(title = "随访任务异常记录跟踪", businessType = BusinessType.UPDATE)
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/edit")
    public AjaxResult edit(@RequestBody ServiceSubtaskDetailTrace serviceSubtaskDetailTrace) {
        return toAjax(serviceSubtaskDetailTraceService.updateServiceSubtaskDetailTtrace(serviceSubtaskDetailTrace));
    }
 
    /**
     * 删除随访任务异常记录跟踪
     */
    @ApiOperation("删除随访任务异常记录跟踪")
    //@PreAuthorize("@ss.hasPermi('smartor:ltrace:remove')")
    @Log(title = "随访任务异常记录跟踪", businessType = BusinessType.DELETE)
    @GetMapping("/remove/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(serviceSubtaskDetailTraceService.deleteServiceSubtaskDetailTtraceByIds(ids));
    }
}