zhongrj
2023-10-12 39b3d16e78a22e70e99341f366dcfa2c3e6519b9
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java
@@ -4,12 +4,14 @@
import cn.gistack.sm.intelligentCall.constant.CallConstant;
import cn.gistack.sm.intelligentCall.constant.ZtConstant;
import cn.gistack.sm.intelligentCall.entity.Scene;
import cn.gistack.sm.intelligentCall.excel.CallExcel;
import cn.gistack.sm.intelligentCall.mapper.CallTaskMapper;
import cn.gistack.sm.intelligentCall.service.CallService;
import cn.gistack.sm.intelligentCall.vo.CallTaskResultVO;
import cn.gistack.sm.intelligentCall.vo.CallTaskStatistic;
import cn.gistack.sm.sjztmd.entity.AttAdBase;
import cn.gistack.sm.sjztmd.service.IAttAdBaseService;
import cn.gistack.sm.sjztmd.service.IAttResManagePersonService;
import cn.gistack.sm.sjztmd.vo.AttAdBaseVO;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@@ -20,6 +22,7 @@
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.springblade.core.redis.cache.BladeRedis;
import org.springblade.core.tool.api.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.*;
import org.springframework.stereotype.Service;
@@ -53,6 +56,9 @@
   @Autowired
   private BladeRedis bladeRedis;
   @Autowired
   private IAttResManagePersonService attResManagePersonService;
   @Autowired
   private AsyncCallService asyncCallService;
@@ -1225,4 +1231,37 @@
      // 不分页
      return callTaskMapper.getCallResultListTemp(null,callTaskResult,list);
   }
   /**
    * 导入表格发送智能外呼
    * @param list
    * @param time
    * @return
    */
   @Override
   public Object importCall(List<CallExcel> list,String time) {
      // 转换
      List<String> stringList = list.stream().map(CallExcel::getWaterCode).collect(Collectors.toList());
      // 通过水库代码获取水库及巡查责任人信息
      Set<Scene>  personList = attResManagePersonService.getPatrolPersonListByWaterCodeList(stringList);
      Map<String, Object> params = new HashMap<>();
      //传入调度时间和随机得到的人员信息进行任务的创建并返回
      params.put("list",setForListMap(personList));
      // 调度时间处理
      if (null!=time && !time.equals("")){
         params.put("taskScheduleTime",new SimpleDateFormat("yyyy-MM-dd").format(new Date())+ " " + time + ":00");
      }else {
         params.put("taskScheduleTime",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
      }
      // 创建任务并返回结果
      List<String> task = createTask(params);
      if (null!=task.get(1) && !task.get(1).equals("")){
         String successMsg = "外呼任务创建成功";
         // 返回
         return R.data(200,successMsg,null);
      }
      String errorMsg = task.get(0);
      // 返回
      return R.data(400,errorMsg,null);
   }
}