| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- namespace app\admin\command;
- use think\console\Command;
- use think\console\Input;
- use think\console\Output;
- use app\admin\model\OperationData as OperationDataModel;
- use app\admin\model\KefuTime;
- use app\admin\model\KefuWork;
- use app\admin\model\User;
- use app\manage\model\Config;
- /**
- * Worker 命令行类
- */
- class OperationData extends Command
- {
- public function configure()
- {
- $this->setName('operation:data')
- ->setDescription('每日0点统计前一天的数据');
- }
- public function execute(Input $input, Output $output)
- {
- //创建机器人客服的数据
- $autoTask=Config::autoTask();
- if ($autoTask &&!empty($autoTask['user_id'])) {
- $admin_id = User::getAdminId($autoTask['user_id']);
- $exists = KefuWork::where('admin_id', $admin_id)->where("created_at", '>=', date('Y-m-d'))->find();
- if (!$exists) {
- KefuWork::create([
- 'admin_id'=>$admin_id,
- ]);
- }
- }
- //统计前一天的接线总数
- $exists = OperationDataModel::where('type', 1)->where("date", date("Y-m-d", strtotime("-1 day")))->find();
- if (!$exists) {
- OperationDataModel::create([
- 'type' => 1,
- 'num' => $this->chatNum(),
- 'date' => date('Y-m-d', strtotime('-1 day')),
- ]);
- }
- }
- /**
- * 统计前一天的接线总数
- */
- public function chatNum()
- {
- return KefuTime::where('type', 3)
- ->where('created_at', '>=', date('Y-m-d 00:00:00', strtotime('-1 day')))
- ->where('created_at', '<=', date('Y-m-d 23:59:59', strtotime('-1 day')))
- ->count();
- }
- }
|