| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2019/7/6
- * Time: 16:59
- */
- namespace App\common;
- use app\admin\model\Kfonlline;
- use app\admin\model\Users;
- use think\Db;
- /**
- * [
- * 用户名:
- * 会话量:今日客服累计的的会话量 hyl
- * 接待量:当前客服正在接待的会话数 jdl
- * 平均会话时长:今日客服的平均会话时长,即访客进入到会话结束时时间间隔的平均值 pjhusc
- * 参评率:今日客服的累计参评率,即参加评价的数量和接入会话数量的比值 cpl
- * 满意度率:今日客服的累计满意度率,即满意的数量和评价会话数量的比值 mydl
- * 平均响应时长:今日客服的平均响应时长,即访客访问和客服回复时间间隔的平均值。 pjxysc
- * 今日休息时长:今日客服的休息时长的累计值 jrxxsc
- * ]
- */
- class KfjkLogic
- {
- public function getAllData($uidarray)
- {
- if (empty($uidarray)) {
- return false;
- }
- $todayall = $this->getTodayServiceData($uidarray);
- if (!$todayall){
- return false ;
- }
- }
- public function getValiKF($groupid, $onlinestatus)
- {
- $groupusers = [];
- $kfgroup = (new Users)->getByGroup($groupid);
- if (!$kfgroup) {
- return [];
- }
- foreach ($kfgroup as $val) {
- $groupusers[] = $val['id'];
- }
- if ($onlinestatus) {
- $m = (new Kfonlline())->getOnlineAll();
- if (!$m) {
- return [];
- }
- $statuukfs = [];
- foreach ($m as $sval) {
- if (($sval['status']) == $onlinestatus) {
- $statuukfs[] = $sval['uid'];
- }
- }
- if (!$statuukfs) {
- return [];
- }
- return $statuukfs;
- }
- return $groupusers;
- }
- public function hyl($kfuid)
- {
- }
- public function jdl($kfuid)
- {
- }
- public function pjhusc($kfuid)
- {
- }
- public function cpl($kfuid)
- {
- }
- public function mydl($kfuid)
- {
- }
- public function pjxysc($kfuid)
- {
- }
- public function jrxxsc($kfuid)
- {
- }
- public function getTodayServiceData($kfuidArray = [])
- {
- $today_begin = strtotime(date("Y-m-d"));
- $today_end = $today_begin + 86400;
- $filds = "group_id,kf_id,user_id,status,start_time,intime,end_time,evaluate_id" ;
- if ($kfuidArray) {
- $ret = Db::name('service_log')->field($filds)->where(['start_time' => ['>=', $today_begin], 'kf_id' => ['IN', $kfuidArray]])->where(['start_time' => ['<', $today_end]])->select();
- } else {
- $ret = Db::name('service_log')->field($filds)->where(['start_time' => ['>=', $today_begin]])->where(['start_time' => ['<', $today_end]])->select();
- }
- return $ret;
- }
- }
|