<?php /** * Created by PhpStorm. * User: zhonglei * Date: 17/8/22 * Time: 14:13 */ namespace Frontend\Controller\Callback; use Think\Log; use Common\Common\Constant; use Common\Common\TaskHelper; use Common\Service\CustomtaskService; class SendCustomtaskStopMsgController extends AbstractController { /** * 定时发送常规任务终止消息回调接口 * @author zhonglei */ public function Index() { $stream_data = file_get_contents('php://input'); $stream_data = empty($stream_data) ? [] : json_decode($stream_data, true); Log::record('---SendNewCustomtaskMsg stream data:' . var_export($stream_data, true), Log::INFO); $customtask_id = I('get.customtask_id', 0, 'intval'); $uids = isset($stream_data['uids']) ? $stream_data['uids'] : []; $this->_sendMsg($customtask_id, $uids); exit('SUCCESS'); } /** * 发送消息 * @author zhonglei * @param int $customtask_id 常规任务ID * @param array $uids 用户ID数组 * @return bool */ private function _sendMsg($customtask_id, $uids) { if (empty($customtask_id) || !is_array($uids) || empty($uids)) { Log::record('not found customtask_id or uids'); return false; } $customtaskServ = new CustomtaskService(); $customtask = $customtaskServ->get_by_conds([ 'customtask_id' => $customtask_id, 'task_status' => Constant::CUSTOMTASK_STATUS_STOP, ]); if (empty($customtask)) { Log::record('not found customtask'); return false; } $taskHelper = &TaskHelper::instance(); $taskHelper->sendCustomtaskStopMsg($customtask, $uids); return true; } }