Пример #1
0
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function getList($criteria = Null)
 {
     //dd("A");
     $message_list = Message::orderBy('created_at', 'desc')->paginate($this->show_per_page);
     //echo "<pre>";
     //print_r($message_list->toArray());
     //echo "</pre>";
     //exit;
     //
     return view('admin.message.list', ['message_list' => $message_list]);
 }
 public function create(Request $request)
 {
     $clientId = Authorizer::getClientId();
     $operatorId = (int) Authorizer::getResourceOwnerId();
     $data = $request->only('type', 'title', 'content', 'receiver_id', 'status');
     $validator = Validator::make($data, ['type' => 'in:0,1', 'title' => 'required', 'content' => 'required', 'status' => 'required|in:0,1']);
     if ($validator->fails() === true) {
         return response()->json(['error' => $validator->errors()], 400);
     }
     if (empty($data['type'])) {
         $data['type'] = 0;
     }
     $data['app_id'] = $clientId;
     $data['author_id'] = $operatorId;
     $lastMessage = Message::orderBy('message_id', 'DESC')->first();
     $newMessageId = $lastMessage ? $lastMessage->message_id + 1 : 1;
     $status = 0;
     if (isset($data['status']) && is_numeric($data['status'])) {
         $status = (int) $data['status'];
     }
     if ($status === 1 && empty($data['receiver_id'])) {
         return response()->json(['error' => '发送消息时收件人不能为空'], 422);
     }
     if (!empty($data['receiver_id'])) {
         $allReceiverIds = [];
         $allReceiverIds = array_unique(explode(',', $data['receiver_id']));
         $data['all_receiver_ids'] = implode(',', $allReceiverIds);
     }
     $data['receiver_id'] = 0;
     $data['message_id'] = $newMessageId;
     $data['content'] = preg_replace('/<(.+?)>|<(\\/.+?)>/', '&lt;$1&gt;', $data['content']);
     $message = new Message($data);
     $message->save();
     if ($status === 1) {
         $failedList = $this->send($message, $data['all_receiver_ids']);
         if (count($failedList) > 0) {
             return response()->json(['error' => '消息已发送,部分接收人不存在:' . implode(',', $failedList)], 422);
         }
     }
     $message = $this->unfoldMessageInfo($message);
     return response()->json($message, 201);
 }
 /**
  * @return Collection
  */
 public function getAllMessages()
 {
     return $this->messages->orderBy('messages.created_at', 'DESC')->get([self::ID, self::USER_ID, self::CURRENCY_FROM, self::CURRENCY_TO, self::AMOUNT_SELL, self::AMOUNT_BUY, self::RATE, self::TIME_PLACED, self::ORIGINATING_COUNTRY]);
 }