liusheng
2024-05-28 500130efe30180fe635ba4482e097e848d37c7e3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/IvrLibaTemplateController.java
@@ -1,5 +1,7 @@
package com.ruoyi.web.controller.smartor;
import com.alibaba.fastjson2.JSON;
import com.github.pagehelper.util.StringUtil;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
@@ -7,11 +9,15 @@
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.config.PhoneUtils;
import com.smartor.config.RabbitMqCallPhoneConfig;
import com.smartor.domain.IvrLibaTemplate;
import com.smartor.domain.IvrLibaTemplateVO;
import com.smartor.domain.Test1Vo;
import com.smartor.service.IIvrLibaTemplateService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -26,12 +32,22 @@
 * @author ruoyi
 * @date 2023-12-23
 */
@Slf4j
@Api(description = "随访模板库")
@RestController
@RequestMapping("/smartor/template")
public class IvrLibaTemplateController extends BaseController {
    @Autowired
    private IIvrLibaTemplateService ivrLibaTemplateService;
//    @Autowired
//    private RabbitTemplate rabbitTemplate;
    @Autowired
    private PhoneUtils phoneUtils;
    @Autowired
    private RabbitMqCallPhoneConfig rabbitMqCallPhoneConfig;
    /**
     * 查询模板库列表
@@ -102,10 +118,9 @@
    }
    /**
     * 新增或修改问题详情
     * 新增或修改随访模板库详情
     */
    @ApiOperation("新增或修改随访模板库详情")
    @PreAuthorize("@ss.hasPermi('smartor:script:list')")
    @PostMapping("/saveOrUpdateScript")
    public AjaxResult saveOrUpdateScript(@RequestBody IvrLibaTemplateVO ivrLibaTemplateVO) {
        if (ObjectUtils.isEmpty(ivrLibaTemplateVO)) {
@@ -120,9 +135,32 @@
    @ApiOperation("查询模板详情根据条件")
    @PostMapping("/selectInfoByCondition")
    public AjaxResult selectInfoByCondition(@RequestBody IvrLibaTemplateVO ivrLibaTemplateVO) {
        if (ObjectUtils.isEmpty(ivrLibaTemplateVO)) {
            throw new BaseException("查询模板详情入参为空,请检查入参");
        if (ivrLibaTemplateVO.getID() == null) {
            return success();
        }
        return success(ivrLibaTemplateService.selectInfoByCondition(ivrLibaTemplateVO));
    }
    /**
     * 开始执行(测试用)
     */
    @PostMapping("/queryRabbitmq")
    public AjaxResult queryRabbitmq(@RequestBody Test1Vo test1Vo) {
        log.info("-------------启动咨询应答超时提醒延迟队列-------------");
        String data = JSON.toJSONString(test1Vo.getTestVo());
        String substring = data.substring(1, data.length() - 1);
        rabbitMqCallPhoneConfig.sendMessage("phone_exchange", "phone.123", substring, test1Vo.getTimes());
        log.info("-------------延迟队列{}ms后执行.-------------", test1Vo.getTimes());
        return success();
    }
    @GetMapping("/tts")
    public AjaxResult tts(@RequestParam("fileText") String fileText, @RequestParam("uuid") String uuid) {
        new PhoneUtils().ttsPlayback(fileText, uuid);
        return success();
    }
}