|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* @remark :
|
|
|
|
* @name :TicketLogic.php
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2025/8/11 10:54
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace App\Http\Logic\Bside\Ticket;
|
|
|
|
|
|
|
|
use App\Http\Logic\Bside\BaseLogic;
|
|
|
|
use App\Models\Ticket\TicketDailyCount;
|
|
|
|
use App\Models\Ticket\TicketDailyDeptCount;
|
|
|
|
use App\Models\Ticket\TicketDailyManageCount;
|
|
|
|
use App\Models\WorkOrder\Tickets;
|
|
|
|
use Illuminate\Support\Carbon;
|
|
|
|
|
|
|
|
class TicketLogic extends BaseLogic
|
|
|
|
{
|
|
|
|
public function __construct()
|
|
|
|
{
|
|
|
|
parent::__construct();
|
|
|
|
$this->param = $this->requestAll;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :获取今日统计数据
|
|
|
|
* @name :getTicketCount
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2025/8/11 10:54
|
|
|
|
*/
|
|
|
|
public function getTicketCount(){
|
|
|
|
$data = [];
|
|
|
|
$ticketModel = new Tickets();
|
|
|
|
$data['ticket_num'] = $ticketModel->count();//工单总数
|
|
|
|
$date = date('Y-m-d');//今日时间
|
|
|
|
$data['add_num'] = $ticketModel->counts(['created_at'=>['between',[$date.' 00:00:00',$date.' 23:59:59']]]);//今日新增工单
|
|
|
|
$data['processed_num'] = $ticketModel->counts(['end_at'=>['between',[$date.' 00:00:00',$date.' 23:59:59']]]);//今日已处理工单
|
|
|
|
$data['untreated_num'] = $ticketModel->counts(['end_at'=>null]);//今日未处理工单
|
|
|
|
return $this->success($data);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :按日统计数据
|
|
|
|
* @name :getDailyTicketCount
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2025/8/11 10:57
|
|
|
|
*/
|
|
|
|
public function getDailyTicketCount(){
|
|
|
|
$dailyModel = new TicketDailyCount();
|
|
|
|
$dailyList = $dailyModel->list([],'average_time',['*'],'desc',5);//取最近5条数据
|
|
|
|
$date = Carbon::yesterday()->toDateString(); //昨日时间
|
|
|
|
$manageModel = new TicketDailyManageCount();
|
|
|
|
$manageList = $manageModel->list(['date'=>$date],'average_time',['*'],'desc',5);//取最近5条数据
|
|
|
|
$deptModel = new TicketDailyDeptCount();
|
|
|
|
$deptList = $deptModel->list(['date'=>$date],'average_time',['*'],'desc',5);
|
|
|
|
$data = ['daily'=>$dailyList,'manage'=>$manageList,'dept'=>$deptList];
|
|
|
|
return $this->success($data);
|
|
|
|
}
|
|
|
|
|
|
|
|
} |
...
|
...
|
|