eaa0673d by G Manojkumar

Call Log report to fetch from Local to Central

1 parent 9cf21838
...@@ -42,134 +42,140 @@ class CreportEight extends Command { ...@@ -42,134 +42,140 @@ class CreportEight extends Command {
42 echo "\n".date('Y-m-d H:i:s')."\n"; 42 echo "\n".date('Y-m-d H:i:s')."\n";
43 43
44 $logdate=strtotime('0 day'); 44 $logdate=strtotime('0 day');
45 45 $slist=DB::select(DB::raw("select * from server_details"));
46 $tcol=0;$fieldsarr=array();$extrahdrarr=array(); 46 $server_ip='';
47 $central_ip=env('central_ip'); 47 $std_code='';
48 $server_ip=env('app_ip'); 48 $conn='';
49 $calllog_report = "calllog_report_".$date; 49 $dayone=date('Y-m-');
50 $conn = array( 50 $firstdate=$dayone."01";
51 'driver' => 'mysql', 51 //$calllog_report = "calllog_report_".$date;
52 'host' => $central_ip, 52 $calllog_report = "calllog_report_October_2018_bbbb";
53 'database' => env('DB_DATABASE', 'kstych_flexydial'), 53 foreach($slist as $sline)
54 'username' => env('DB_USERNAME', 'root'), 54 {
55 'password' => env('DB_PASSWORD', ''), 55 $tcol=0;$fieldsarr=array();$extrahdrarr=array();
56 'charset' => 'utf8', 56 $server_ip=$sline->server_ip;
57 'collation' => 'utf8_unicode_ci', 57 $server_id=$sline->id;
58 'prefix' => '', 58 $std_code=$sline->std_code;
59 'options' => array( 59 $conn = array(
60 PDO::ATTR_TIMEOUT => 5, 60 'driver' => 'mysql',
61 'host' => $server_ip,
62 'database' => env('DB_DATABASE', 'kstych_flexydial'),
63 'username' => env('DB_USERNAME', 'root'),
64 'password' => env('DB_PASSWORD', ''),
65 'charset' => 'utf8',
66 'collation' => 'utf8_unicode_ci',
67 'prefix' => '',
68 'options' => array(
69 PDO::ATTR_TIMEOUT => 5,
61 ), 70 ),
62 ); 71 );
63 Config::set("database.connections.conn", $conn); 72 Config::set("database.connections.conn", $conn);
64 73
65 DB::connection("conn")->getDatabaseName(); 74 if(DB::connection("conn")->getDatabaseName())
75 {
76 echo ",".$server_ip;
77 if($server_id<10){
78 $server_id="0".$server_id;
79 }
80
66 81
67 $serverclist=DB::connection("conn")->select(DB::raw("select id from server_details where server_ip='$server_ip'")); 82 $maxid=DB::select(DB::raw("SELECT max(crmcall_id) as maxid from $calllog_report where server='$server_id'"));
68 $server_id=$serverclist[0]->id;
69 if($server_id<10){
70 $server_id="0".$server_id;
71 }
72 83
84 $maxids=$maxid[0]->maxid;
73 85
74 $maxid=DB::connection("conn")->select(DB::raw("SELECT max(crmcall_id) as maxid from $calllog_report where server='$server_id'")); 86 $alist=DB::connection("conn")->select(DB::raw("SELECT * from crmcalls_archive where id>'$maxids' and created_at>='2018-10-01' and created_at<'2018-11-01'"));
75 87 $countnumber=count($alist);
76 $maxids=$maxid[0]->maxid; 88 $finalnumber=$countnumber/50;
77 89 $finalnumber=floor($finalnumber);
78 //$alist=DB::select(DB::raw("SELECT * from crmcalls where id>'$maxids' and created_at<'".date("Y-m-d H:i:s",$logdate-(60*60))."'")); 90 $datainser='';
79 $alist=DB::select(DB::raw("SELECT * from crmcalls where id>'$maxids'")); 91 $iii=1;
80 $countnumber=count($alist); 92 $kkk=1;
81 $finalnumber=$countnumber/50; 93 $shortinsert="";
82 $finalnumber=floor($finalnumber); 94 $userarr=array();
83 $datainser=''; 95 foreach($alist as $aline)
84 $iii=1;
85 $kkk=1;
86 $shortinsert="";
87 $userarr=array();
88 foreach($alist as $aline)
89 {
90 $clientcode="";$currentstatus="";$legalstatus="";$record_id="";
91 if($aline->crm_id>0)
92 {
93 $user=DB::select(DB::raw("select id,clientcode,currentstatus,legalstatus from records where id='".$aline->crm_id."' limit 1;"));
94 if(isset($user[0]))
95 { 96 {
96 $record_id=$user[0]->id; 97 $clientcode="";$currentstatus="";$legalstatus="";$record_id="";
97 $clientcode=$user[0]->clientcode; 98 if($aline->crm_id>0)
98 $currentstatus=$user[0]->currentstatus; 99 {
99 $legalstatus=$user[0]->legalstatus; 100 $user=DB::connection("conn")->select(DB::raw("select id,clientcode,currentstatus,legalstatus from records where id='".$aline->crm_id."' limit 1;"));
101 if(isset($user[0]))
102 {
103 $record_id=$user[0]->id;
104 $clientcode=$user[0]->clientcode;
105 $currentstatus=$user[0]->currentstatus;
106 $legalstatus=$user[0]->legalstatus;
107 }
100 } 108 }
101 } 109 $tpostdata=json_decode($aline->data,true);
102 $tpostdata=json_decode($aline->data,true); 110 $fulldate=date("Y-m-d H:i:s",strtotime($aline->created_at)+330*60);
103 $fulldate=date("Y-m-d H:i:s",strtotime($aline->created_at)+330*60); 111 $talktime=$aline->talkSec+$aline->recstartSec+$aline->recendSec;
104 $talktime=$aline->talkSec+$aline->recstartSec+$aline->recendSec; 112 $length=round(($aline->waitSec+$aline->callSec+$talktime+$aline->dispoSec)/1000,2);
105 $length=round(($aline->waitSec+$aline->callSec+$talktime+$aline->dispoSec)/1000,2); 113
106 114 if(!isset($userarr[$aline->user_id])&&$aline->user_id>0)$userarr[$aline->user_id]=User::find($aline->user_id);
107 if(!isset($userarr[$aline->user_id])&&$aline->user_id>0)$userarr[$aline->user_id]=User::find($aline->user_id); 115 $dispname="";if(isset($userarr[$aline->user_id]))$dispname=$userarr[$aline->user_id]->dispname();
108 $dispname="";if(isset($userarr[$aline->user_id]))$dispname=$userarr[$aline->user_id]->dispname(); 116 $username="";if(isset($userarr[$aline->user_id]))$username=$userarr[$aline->user_id]->username;
109 $username="";if(isset($userarr[$aline->user_id]))$username=$userarr[$aline->user_id]->username; 117 $globalid=$server_id.$record_id;
110 $globalid=$server_id.$record_id; 118 $server = $server_id;
111 $server = $server_id; 119 $record_id = $record_id;
112 $record_id = $record_id; 120 $crmcall_id = $aline->id;
113 $crmcall_id = $aline->id; 121 $globalid = $globalid;
114 $globalid = $globalid; 122 $created_at = $aline->created_at;
115 $created_at = $aline->created_at; 123 $start = $fulldate;
116 $start = $fulldate; 124 $length = $length;
117 $length = $length; 125 $user = $username;
118 $user = $username; 126 $name = $dispname;
119 $name = $dispname; 127 $dispo = $aline->userstatus;
120 $dispo = $aline->userstatus; 128 $subdispo = $aline->usersubstatus;
121 $subdispo = $aline->usersubstatus; 129 $callback = $aline->usercallback;
122 $callback = $aline->usercallback; 130 $number = $aline->number;
123 $number = $aline->number; 131 $clientcode = $clientcode;
124 $clientcode = $clientcode; 132 $currentstatus = $currentstatus;
125 $currentstatus = $currentstatus; 133 $legalstatus = $legalstatus;
126 $legalstatus = $legalstatus; 134 $client = $aline->client;
127 $client = $aline->client; 135 $department = $aline->department;
128 $department = $aline->department; 136 $state = $aline->state;
129 $state = $aline->state; 137 $hsource = $aline->hsource;
130 $hsource = $aline->hsource; 138 $type = $aline->type;
131 $type = $aline->type; 139 $status = $aline->status;
132 $status = $aline->status; 140 $statuscode = $aline->statuscode;
133 $statuscode = $aline->statuscode; 141 $statusstr = $aline->substatus;
134 $statusstr = $aline->substatus; 142 $dialline = $aline->dialline_id;
135 $dialline = $aline->dialline_id; 143 $did = $aline->did;
136 $did = $aline->did; 144 $waitsec = round($aline->waitSec/1000,2);
137 $waitsec = round($aline->waitSec/1000,2); 145 $callsec = round($aline->callSec/1000,2);
138 $callsec = round($aline->callSec/1000,2); 146 $talksec = round($talktime/1000,2);
139 $talksec = round($talktime/1000,2); 147 $disposec = round($aline->dispoSec/1000,2);
140 $disposec = round($aline->dispoSec/1000,2); 148 $remarks = str_replace("'","",$aline->userremarks);
141 $remarks = str_replace("'","",$aline->userremarks); 149 $userdata = $aline->userdata;
142 $userdata = $aline->userdata; 150 $attempt = $aline->attempt;
143 $attempt = $aline->attempt; 151 $priority = $aline->priority;
144 $priority = $aline->priority; 152 $question = $aline->question;
145 $question = $aline->question; 153
146 154
147 155 $shortinsert.="('$server', '$record_id', '$crmcall_id', '$globalid','$created_at', '$start', '$length', '$user', '$name', '$dispo', '$subdispo', '$callback', '$number', '$clientcode', '$currentstatus', '$legalstatus', '$client', '$department', '$state', '$hsource', '$type', '$status', '$statuscode', '$statusstr', '$dialline', '$did', '$waitsec', '$callsec', '$talksec', '$disposec', '$remarks', '$userdata', '$attempt', '$priority', '$question'),";
148
149 $shortinsert.="('$server', '$record_id', '$crmcall_id', '$globalid','$created_at', '$start', '$length', '$user', '$name', '$dispo', '$subdispo', '$callback', '$number', '$clientcode', '$currentstatus', '$legalstatus', '$client', '$department', '$state', '$hsource', '$type', '$status', '$statuscode', '$statusstr', '$dialline', '$did', '$waitsec', '$callsec', '$talksec', '$disposec', '$remarks', '$userdata', '$attempt', '$priority', '$question'),";
150 156
151 if($kkk<=$finalnumber){ 157 if($kkk<=$finalnumber){
152 if($iii%50==0){ 158 if($iii%50==0){
153 159
154 $shortinsert=substr($shortinsert,0,-1); 160 $shortinsert=substr($shortinsert,0,-1);
155 DB::connection("conn")->insert(DB::raw("INSERT INTO $calllog_report (`server`, `record_id`, `crmcall_id`, `globalid`, `created_at`, `start`, `length`, `user`, `name`, `dispo`, `subdispo`, `callback`, `number`, `clientcode`, `currentstatus`, `legalstatus`, `client`, `department`, `state`, `hsource`, `type`, `status`, `statuscode`, `statusstr`, `dialline`, `did`, `waitsec`, `callsec`, `talksec`, `disposec`, `remarks`, `userdata`, `attempt`, `priority`, `question`) VALUES $shortinsert")); 161 DB::insert(DB::raw("INSERT INTO $calllog_report (`server`, `record_id`, `crmcall_id`, `globalid`, `created_at`, `start`, `length`, `user`, `name`, `dispo`, `subdispo`, `callback`, `number`, `clientcode`, `currentstatus`, `legalstatus`, `client`, `department`, `state`, `hsource`, `type`, `status`, `statuscode`, `statusstr`, `dialline`, `did`, `waitsec`, `callsec`, `talksec`, `disposec`, `remarks`, `userdata`, `attempt`, `priority`, `question`) VALUES $shortinsert"));
156 $kkk++; 162 $kkk++;
163 }
164 }else{
165 DB::insert(DB::raw("INSERT INTO $calllog_report set server='$server', record_id='$record_id', crmcall_id='$crmcall_id', globalid='$globalid', created_at='$created_at', start='$start', length='$length', user='$user', name='$name', dispo='$dispo', subdispo='$subdispo', callback='$callback', number='$number', clientcode='$clientcode', currentstatus='$currentstatus', legalstatus='$legalstatus', client='$client', department='$department', state='$state', hsource='$hsource', type='$type', status='$status', statuscode='$statuscode', statusstr='$statusstr', dialline='$dialline', did='$did', waitsec='$waitsec', callsec='$callsec', talksec='$talksec', disposec='$disposec', remarks='$remarks', userdata='$userdata', attempt='$attempt', priority='$priority', question='$question'"));
166
167 }
168 if($iii%50==0){
169 $shortinsert="";
170 }
171 $iii++;
157 } 172 }
158 }else{ 173 DB::connection("conn")->disconnect();
159 DB::connection("conn")->insert(DB::raw("INSERT INTO $calllog_report set server='$server', record_id='$record_id', crmcall_id='$crmcall_id', globalid='$globalid', created_at='$created_at', start='$start', length='$length', user='$user', name='$name', dispo='$dispo', subdispo='$subdispo', callback='$callback', number='$number', clientcode='$clientcode', currentstatus='$currentstatus', legalstatus='$legalstatus', client='$client', department='$department', state='$state', hsource='$hsource', type='$type', status='$status', statuscode='$statuscode', statusstr='$statusstr', dialline='$dialline', did='$did', waitsec='$waitsec', callsec='$callsec', talksec='$talksec', disposec='$disposec', remarks='$remarks', userdata='$userdata', attempt='$attempt', priority='$priority', question='$question'")); 174 echo "\n".date('Y-m-d H:i:s')."\n";
160 175
161 } 176 }
162 if($iii%50==0){
163 $shortinsert="";
164 }
165 $iii++;
166
167 //$update=DB::connection("conn")->select(DB::raw("SELECT crmcall_id as updateid from $calllog_report where server='$server_id' and `state` IN ('DialBegin','DialEnd')"));
168 //echo $update;
169 DB::update(DB::raw("UPDATE crmcalls set call_flag='C' where id=$crmcall_id"));
170 } 177 }
171 echo "\n".date('Y-m-d H:i:s')."\n"; 178
172 DB::connection("conn")->disconnect();
173 } 179 }
174 180
175 } 181 }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!