121 lines
4.4 KiB
Java
121 lines
4.4 KiB
Java
|
|
package com.whdc.model.entity.autocall;
|
|||
|
|
|
|||
|
|
import com.alibaba.fastjson.annotation.JSONField;
|
|||
|
|
import lombok.Data;
|
|||
|
|
import lombok.experimental.Accessors;
|
|||
|
|
|
|||
|
|
import java.text.SimpleDateFormat;
|
|||
|
|
import java.util.Date;
|
|||
|
|
import java.util.List;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @author lyf
|
|||
|
|
* @since 2025-06-20
|
|||
|
|
*/
|
|||
|
|
@Data
|
|||
|
|
public class AICCUploadTask {
|
|||
|
|
/*
|
|||
|
|
JSONObject data = new JSONObject();
|
|||
|
|
data.put("taskName", taskName);
|
|||
|
|
data.put("processId", processId);
|
|||
|
|
data.put("callerGroup", callerGroup);
|
|||
|
|
data.put("requestId", requestId);
|
|||
|
|
data.put("calleeType", 2);
|
|||
|
|
data.put("repeatTimes", 2);
|
|||
|
|
data.put("autoCall", "0");
|
|||
|
|
data.put("spanSeconds", 60);
|
|||
|
|
data.put("processType", "3");
|
|||
|
|
data.put("mutiTimeRange", timeRange);
|
|||
|
|
JSONArray params = new JSONArray();
|
|||
|
|
JSONObject param = new JSONObject();
|
|||
|
|
param.put("@common_user_name", custName);
|
|||
|
|
param.put("@NUMBER", number);
|
|||
|
|
if (bakNumbers != null && bakNumbers.length > 0) {
|
|||
|
|
for (int i = 0; i < bakNumbers.length; i++) {
|
|||
|
|
if (i == 3) break;
|
|||
|
|
param.put("备用号码" + (i + 1), bakNumbers[i]);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
param.put("custId", custId);
|
|||
|
|
param.put("content", "我是省防办智能外呼系统," + content + "如需咨询请拨打02787221781");
|
|||
|
|
params.add(param);
|
|||
|
|
data.put("param", params);
|
|||
|
|
*/
|
|||
|
|
private String taskName;
|
|||
|
|
private String processId;
|
|||
|
|
private String callerGroup;
|
|||
|
|
private String requestId;
|
|||
|
|
private int calleeType = 1; //默认0 重乎1 顺乎2 默认为0
|
|||
|
|
private int repeatTimes = 1;//呼叫次数,CallType=0不传; CalleeType=1重乎必传; CalleeType=2顺乎并且autoCall为0必传
|
|||
|
|
private String autoCall = "0";//顺乎未接通是否重乎,开启=0; 关闭=1; CalleeType=2顺乎必传
|
|||
|
|
private int spanSeconds = 3;//重乎间隔时间(秒),CallType=0不传; CalleeType=1重乎必传; CalleeType=2顺乎并且autoCall为0必传
|
|||
|
|
private String processType = "3";
|
|||
|
|
private String mutiTimeRange;
|
|||
|
|
private List<Cust> param;
|
|||
|
|
// private String smsSend = "1"; //1不发短信,0发短信
|
|||
|
|
// private String smsSendType = "0"; //挂机短信0,未接通短信1,smsSend为0必传
|
|||
|
|
// private String templateId; //短信模板id,smsSend为0必传
|
|||
|
|
|
|||
|
|
@Data
|
|||
|
|
public static class Cust {
|
|||
|
|
@JSONField(name = "@common_user_name")
|
|||
|
|
private String custName;
|
|||
|
|
@JSONField(name = "@NUMBER")
|
|||
|
|
private String number;
|
|||
|
|
@JSONField(name = "备用号码1")
|
|||
|
|
private String backNumber1;
|
|||
|
|
@JSONField(name = "备用号码2")
|
|||
|
|
private String backNumber2;
|
|||
|
|
@JSONField(name = "备用号码3")
|
|||
|
|
private String backNumber3;
|
|||
|
|
private String custId;
|
|||
|
|
private String content;
|
|||
|
|
@JSONField(serialize = false, deserialize = false)
|
|||
|
|
private List<String> _numbers;
|
|||
|
|
|
|||
|
|
public static CustBuilder builder() {
|
|||
|
|
return new CustBuilder();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@Data
|
|||
|
|
@Accessors(chain = true)
|
|||
|
|
public static class CustBuilder {
|
|||
|
|
private String custName;
|
|||
|
|
private String custId;
|
|||
|
|
private String content;
|
|||
|
|
@JSONField(serialize = false, deserialize = false)
|
|||
|
|
private List<String> _numbers;
|
|||
|
|
|
|||
|
|
public Cust build() {
|
|||
|
|
Cust cust = new Cust();
|
|||
|
|
cust.setCustName(custName);
|
|||
|
|
cust.setCustId(custId);
|
|||
|
|
cust.setContent(content);
|
|||
|
|
for (int i = 0; i < _numbers.size(); i++) {
|
|||
|
|
switch (i) {
|
|||
|
|
case 0:
|
|||
|
|
cust.setNumber(_numbers.get(i));
|
|||
|
|
break;
|
|||
|
|
case 1:
|
|||
|
|
cust.setBackNumber1(_numbers.get(i));
|
|||
|
|
break;
|
|||
|
|
case 2:
|
|||
|
|
cust.setBackNumber2(_numbers.get(i));
|
|||
|
|
break;
|
|||
|
|
case 3:
|
|||
|
|
cust.setBackNumber3(_numbers.get(i));
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return cust;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void genMutiTimeRange() {
|
|||
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|||
|
|
this.mutiTimeRange = sdf.format(new Date()) + "_" + sdf.format(new Date(System.currentTimeMillis() + 1000 * 60 * 60));
|
|||
|
|
}
|
|||
|
|
}
|