6,//软文 'report' => 7,//报表 'inquiry' => 8,//8询盘 ]; /** * Create a new command instance. * * @return void */ public function __construct() { parent::__construct(); } /** * Execute the console command. * 任务计划 * @return mixed */ public function handle() { $messageStatus = DB::table('message_status'); $softTextNoticeList = DB::table('articles_notice')->get()->toArray(); //软文推送任务表 foreach ($softTextNoticeList as $key => $value) { $messageStencil = DB::table('message')->where('id', self::MESSAGE_STENCIL['softText'])->first(); $info = [ 'type' => $messageStencil->type, 'site_id' => $value->site_id, 'title' => $messageStencil->title ?? '', 'message' => $messageStencil->message ?? '', 'message_id' => $messageStencil->id, 'url' => $messageStencil->url ?? '', 'img' => $messageStencil->img ?? '', 'date' => strtotime(date('Y-m 00:00:00')), ]; $messageStatus->insert($info); $deleteCondition = [ ['site_id', '=', $value->site_id], ]; DB::table('articles_notice')->where($deleteCondition)->delete(); } $reportNoticeList = DB::table('report_notice')->get()->toArray(); foreach ($reportNoticeList as $key => $value) { //报表推送任务表 $messageStencil = DB::table('message')->where('id', self::MESSAGE_STENCIL['report'])->first(); $info = [ 'type' => $messageStencil->type, 'site_id' => $value->site_id, 'title' => $messageStencil->title ?? '', 'message' => $messageStencil->message ?? '', 'message_id' => $messageStencil->id, 'url' => $messageStencil->url ?? '', 'img' => $messageStencil->img ?? '', 'date' => strtotime(date('Y-m 00:00:00')), ]; $messageStatus->insert($info); $deleteCondition = [ ['site_id', '=', $value->site_id], ]; DB::table('report_notice')->where($deleteCondition)->delete(); } $inquiryNoticeList = DB::table('inquiry_notice')->get()->toArray(); foreach ($inquiryNoticeList as $key => $value) { //询盘推送任务表 $siteId = DB::table('sites')->where('database', $value->website)->value('id'); if (!empty($siteId)) { $messageStencil = DB::table('message')->where('id', self::MESSAGE_STENCIL['inquiry'])->first(); $info = [ 'type' => $messageStencil->type, 'site_id' => $siteId, 'title' => $messageStencil->title ?? '', 'message' => $messageStencil->message ?? '', 'message_id' => $messageStencil->id, 'url' => $messageStencil->url ?? '', 'img' => $messageStencil->img ?? '', 'date' => strtotime(date('Y-m 00:00:00')), ]; $messageStatus->insert($info); $deleteCondition = [ ['website', '=', $value->website], ]; DB::table('inquiry_notice')->where($deleteCondition)->delete(); } } $messageList = DB::table('message_status') ->where('status', 0) ->whereIn('type', [6, 7, 8]) ->get()->toArray(); $youMenGApiService = new YouMenGApiService(); foreach ($messageList as $key => $value) { $message = [ 'title' => $value->title, 'subtitle' => $value->message, 'body' => '' ]; $youMenGApiService->pushIosDevice($value->site_id, $message); $youMenGApiService->pushAndroidDevice($value->site_id, $message); DB::table('message_status')->where('id', $value->id)->update(['push_time' => date('Y-m-d H:i:s'), 'status' => 1]); } } }