Commit 2ea72dd3 authored by yinxiaoling's avatar yinxiaoling

每天、一天两次,两个时间点、一个话术或者两个话术;日期前一天和当天、一天一次, 一个时间点两个话术

parent 0490b55f
......@@ -48,6 +48,8 @@ class CreatedTaskCommand extends Command
$url = "https://test117.ciopaas.com/api/addJsonNoLogin";
//dd($taskInfo);
foreach ($taskInfo as $k=>$v){//批量调用接口新建任务
$failLabTemp = 0;
$failReason = '';
//处理参数
dump($v['project_sn']);
if (empty($v['project_sn'])){
......@@ -75,6 +77,7 @@ class CreatedTaskCommand extends Command
'is_auto_fail_recall'=>'1', //是否自动重呼,是
'total_fail_recall_times'=>'3', //重呼次数
'fail_recall_interval'=>'3',//重呼间隔时间
'recall_auto'=>1, //重呼方式; 0新建任务1原任务重呼
'mark'=>'值班策略创建任务',
'fail_recall_of_reason'=>'关机,来电提醒,稍后再拨,停机,无法接通,正在通话中,用户正忙,用户拒接,欠费,无人应答,其他,对方示忙',
'is_auto_stop'=>2, //0非自动暂停,1自动暂停 2 定时启动任务
......@@ -91,9 +94,24 @@ class CreatedTaskCommand extends Command
dd($requestReturn);
$requestReturnArr = json_decode($requestReturn,true);
if (isset($requestReturnArr['code'])){
if ($requestReturnArr['code'] == 0){//接口请求返回成功
if ($requestReturnArr['data']['total'] == $requestReturnArr['data']['success']){//全部成功
StrategyTask::where('id',$v['id'])->update(['is_created'=>1]); //设为已创建
}else{//存在失败数据
$failLabTemp = 1;
$failReason = substr($requestReturnArr['msg'],0,490);
}
}else{ //接口请求返回异常
$failLabTemp = 1;
$failReason = substr($requestReturnArr['msg'],0,490);
}
}else{
$failLabTemp = 1;
$failReason = substr($requestReturn,0,490);
}
if ($failLabTemp == 1){
StrategyTask::where('id',$v['id'])->update(['created_fail_number'=>($v['created_fail_number'] + 1),'create_fail_reason'=>$failReason]); //设为已创建
}
}
......
......@@ -55,14 +55,18 @@ class StrategySetController extends Controller
return $this->errorWithInfo('表单验证失败', 401);
}
$params = $request->all();
if ($params['frequency_type'] == 2){ //日期前一天和当天,一天两次时间、项目格式验证,#号分割
if ($params['day_type'] == 0){ //每天、一天两次,两个时间点、一个话术或者两个话术
$checkCallTimeSet = explode("#", $params['call_time_set']);
if (!isset($checkCallTimeSet[1]) || empty($checkCallTimeSet[1])){
return $this->errorWithInfo('呼叫设置验证失败', 401);
}
}else{//日期前一天和当天、一天一次, 一个时间点两个话术
$checkProjectSn = explode("#", $params['project_sn']);
if (!isset($checkCallTimeSet[1]) || empty($checkCallTimeSet[1]) || !isset($checkProjectSn[1]) || empty($checkProjectSn[1])){
if (!isset($checkProjectSn[1]) || empty($checkProjectSn[1])){
return $this->errorWithInfo('呼叫设置验证失败', 401);
}
}
$successTotal = $failTotal = 0;
$failDataFile = '';
if (isset($params['upload'])){ //excel文件上传
......
......@@ -227,6 +227,7 @@ class StrategyService
$project_sn = explode("#", $strategyInfo['project_sn']);
$tempi = 0;
////每天、一天两次,两个时间点、一个话术或者两个话术;日期前一天和当天、一天一次, 一个时间点两个话术
if ($strategyInfo['day_type'] == 0 && $strategyInfo['frequency_type'] == 2){//每天拨打,一天两次
$doubleTotal = $total*2;
$startDay = date('Y-m-d'); //执行当天时间
......@@ -244,10 +245,10 @@ class StrategyService
'import_date'=>$v->created_at,
'parent_sn'=>$strategyInfo['parent_sn'],
'call_number'=>$strategyInfo['call_number'],
'project_sn'=>isset($project_sn[0]) ? $project_sn[0] : '',//$strategyInfo['project_sn'],
'project_sn'=>$project_sn[0],//$strategyInfo['project_sn'],
'user_sn'=>$strategyInfo['user_sn'],
'call_date'=>$i,
'call_time'=>isset($call_time[0]) ? $call_time[0] : '',//$strategyInfo['call_time'],
'call_time'=>$call_time[0],//$strategyInfo['call_time'],
'created_at'=>$now
];
......@@ -259,10 +260,10 @@ class StrategyService
'import_date'=>$v->created_at,
'parent_sn'=>$strategyInfo['parent_sn'],
'call_number'=>$strategyInfo['call_number'],
'project_sn'=>isset($project_sn[1]) ? $project_sn[1] : '',
'project_sn'=>isset($project_sn[1]) ? $project_sn[1] : $project_sn[0],
'user_sn'=>$strategyInfo['user_sn'],
'call_date'=>$v['duty_date'],
'call_time'=>isset($call_time[1]) ? $call_time[1] : '',
'call_date'=>$i,
'call_time'=>isset($call_time[1]) ? $call_time[1] : $call_time[0],
'created_at'=>$now
];
......@@ -288,13 +289,26 @@ class StrategyService
'import_date'=>$v->created_at,
'parent_sn'=>$strategyInfo['parent_sn'],
'call_number'=>$strategyInfo['call_number'],
'project_sn'=>isset($project_sn[0]) ? $project_sn[0] : '',
'project_sn'=>$project_sn[0],
'user_sn'=>$strategyInfo['user_sn'],
'call_date'=>$yesterday,
'call_time'=>isset($call_time[0]) ? $call_time[0] : '',
'call_time'=>$call_time[0],
'created_at'=>$now
];
$taskData[] = [
'strategy_sn'=>$strategySn,
'name'=>$v->name,
'phone'=>$v->phone,
'duty_date'=>$v->duty_date,
'import_date'=>$v->created_at,
'parent_sn'=>$strategyInfo['parent_sn'],
'call_number'=>$strategyInfo['call_number'],
'project_sn'=>isset($project_sn[1]) ? $project_sn[1] : $project_sn[0],
'user_sn'=>$strategyInfo['user_sn'],
'call_date'=>$v->duty_date,
'call_time'=>$call_time[0],
'created_at'=>$now
];
if(count($taskData) == $batch || $total == $batch || $tempi == $total){
if (!empty($taskData)){
StrategyTask::insert($taskData);
......
......@@ -79,7 +79,7 @@ class DatabaseSeeder extends Seeder
$table->unsignedSmallInteger('is_created')->default(0)->comment('是否新建任务(0未建 1已建)');
$table->unsignedSmallInteger('created_fail_number')->default(0)->comment('任务创建失败尝试次数');
$table->string('create_fail_reason',500)->comment('记录接口返回失败原因');
$table->timestamp('created_at')->nullable();
});
//加索引
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment