package com.ruoyi.web.controller.smartor; 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.domain.entity.SysUser; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.StringUtils; import com.smartor.domain.ServiceSubTaskDetailReq; import com.smartor.domain.ServiceSubtask; import com.smartor.domain.ServiceSubtaskDetail; import com.smartor.service.IServiceSubtaskDetailService; import com.smartor.service.IServiceSubtaskService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.*; /** * 语音任务结果明细Controller * * @author smartor * @date 2023-03-24 */ @Api(description = "语音任务结果明细") @RestController @RequestMapping("/smartor/serviceSubtaskDetail") public class ServiceSubtaskDetailController extends BaseController { @Autowired private IServiceSubtaskDetailService ServiceSubtaskDetailService; @Autowired private IServiceSubtaskService serviceSubtaskService; /** * 查询单个人的语音信息 */ @ApiOperation("查询单个人的语音信息通过子任务ID") @PostMapping("/getPersonVoice") public Map getPersonVoice(@RequestBody ServiceSubtaskDetail serviceSubtaskDetail) { Map map = new HashMap<>(); if (serviceSubtaskDetail.getSubId() == null) { map.put("code", 500); map.put("msg", "查询失败,请查检入参"); } else map = ServiceSubtaskDetailService.selectServiceSubtaskDetailList(serviceSubtaskDetail); return map; } /** * 获取语音任务呼叫明细详细信息 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:query')") @ApiOperation("获取任务结果明细详细信息") @GetMapping(value = "/getInfo/{calldetailid}") public AjaxResult getInfo(@PathVariable("calldetailid") String calldetailid) { return success(ServiceSubtaskDetailService.selectServiceSubtaskDetailByCalldetailid(calldetailid)); } /** * 新增任务结果明细 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:add')") @ApiOperation("新增任务结果明细") @Log(title = "语音任务呼叫明细", businessType = BusinessType.INSERT) @PostMapping("/add") public AjaxResult add(@RequestBody ServiceSubtaskDetail serviceSubtaskDetail) { SysUser user = getLoginUser().getUser(); serviceSubtaskDetail.setOrgid(user.getOrgid()); return toAjax(ServiceSubtaskDetailService.insertServiceSubtaskDetail(serviceSubtaskDetail)); } /** * 新增任务结果明细 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:add')") @ApiOperation("批量新增任务结果明细") @Log(title = "语音任务呼叫明细", businessType = BusinessType.INSERT) @PostMapping("/batchAdd") public AjaxResult batchAdd(@RequestBody ServiceSubTaskDetailReq serviceSubTaskDetailReq) { if (CollectionUtils.isEmpty(serviceSubTaskDetailReq.getServiceSubtaskDetailList()) && serviceSubTaskDetailReq.getSubId() == null) { return error("参数不全,请检查入参"); } int i = ServiceSubtaskDetailService.batchInsertServiceSubtaskDetail(serviceSubTaskDetailReq.getServiceSubtaskDetailList()); Boolean aBoolean = false; if (i == 1) { ServiceSubtask serviceSubtask = new ServiceSubtask(); serviceSubtask.setSendstate(6L); serviceSubtask.setId(serviceSubTaskDetailReq.getSubId()); serviceSubtask.setRemark("数据补充完成"); serviceSubtask.setUpdateTime(new Date()); serviceSubtask.setFinishtime(new Date()); serviceSubtask.setPreachform("1"); serviceSubtask.setResult("success"); aBoolean = serviceSubtaskService.updateServiceSubtask(serviceSubtask); } return toAjax(aBoolean); } /** * 修改语音任务呼叫明细 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:edit')") @Log(title = "语音任务呼叫明细", businessType = BusinessType.UPDATE) @ApiOperation("修改任务结果明细") @PostMapping("/edit") public AjaxResult edit(@RequestBody ServiceSubtaskDetail serviceSubtaskDetail) { return toAjax(ServiceSubtaskDetailService.updateServiceSubtaskDetail(serviceSubtaskDetail)); } /** * 修改语音任务呼叫明细 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:edit')") @Log(title = "语音任务呼叫明细", businessType = BusinessType.UPDATE) @ApiOperation("修改任务结果明细") @PostMapping("/batchEdit") public AjaxResult batchEdit(@RequestBody List serviceSubtaskDetails) { if (CollectionUtils.isEmpty(serviceSubtaskDetails)) { return error("需要修改语音详情为空"); } for (ServiceSubtaskDetail serviceSubtaskDetail : serviceSubtaskDetails) { ServiceSubtaskDetailService.updateServiceSubtaskDetail(serviceSubtaskDetail); } return toAjax(1); } @ApiOperation("修改任务结果明细通过条件") @PostMapping("/editByCondition") public AjaxResult updateSSDByCondition(@RequestBody ServiceSubtaskDetail serviceSubtaskDetail) { return toAjax(ServiceSubtaskDetailService.updateSSDByCondition(serviceSubtaskDetail)); } /** * 删除语音任务呼叫明细 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:remove')") @Log(title = "语音任务呼叫明细", businessType = BusinessType.DELETE) @GetMapping("/remove/{calldetailids}") public AjaxResult remove(@PathVariable String[] calldetailids) { return toAjax(ServiceSubtaskDetailService.deleteServiceSubtaskDetailByCalldetailids(calldetailids)); } /** * 指标统计 */ //@PreAuthorize("@ss.hasPermi('smartor:ServiceSubtaskDetail:add')") @ApiOperation("指标统计") @GetMapping(value = "/countPatByTarget/{targetid}") public AjaxResult countPatByTarget(@PathVariable("targetid") Long targetid) { return success(ServiceSubtaskDetailService.countPatByTarget(targetid)); } }