/** * @Route("/getUnSeen", methods = {"GET", "OPTIONS"}) */ public function GetUnSeenAction() { $uid = $this->request->get('uid'); //$uid = $this->session->get('user_id'); $unSeenMails = ReceiveMail::find(['conditions' => 'isSeen=?1 AND dispatcher_id=?2', 'bind' => [1 => 0, 2 => $uid], 'column' => 'id, mail_id, fromAddress, subject']); $mailList = array(); foreach ($unSeenMails as $mail) { $id = $mail->id; $mail_id = base64_decode($mail->mail_id); $fromAddress = $mail->fromAddress; $subject = base64_decode($mail->subject); $receiveDate = $mail->receiveDate; $mailList[] = ['id' => $id, 'mail_id' => $mail_id, 'fromAddress' => $fromAddress, 'subject' => $subject, 'receiveDate' => $receiveDate]; } $this->response->setJsonContent(['count' => count($mailList), 'mailList' => $mailList]); $this->response->send(); return; }
/** * @Route("/getHandled", methods = {"GET", "OPTIONS"}) */ public function GetHandledAction() { $uid = $this->request->get('uid'); //$uid = $this->session->get('user_id'); $handledMails = ReceiveMail::find(['conditions' => 'status=?1 AND handler_id=?2', 'bind' => [1 => 2, 2 => $uid], 'column' => 'id, mail_id, fromAddress, subject, receiveDate']); if ($handledMails->getFirst() == null) { $this->response->setJsonContent(['count' => 0, 'uid' => $this->session->get('user_id')]); } else { $mailList = array(); foreach ($handledMails as $mail) { $id = $mail->id; $mail_id = base64_decode($mail->mail_id); $fromAddress = $mail->fromAddress; $subject = base64_decode($mail->subject); $receiveDate = $mail->receiveDate; $mailList[] = ['id' => $id, 'mail_id' => $mail_id, 'fromAddress' => $fromAddress, 'subject' => $subject, 'receiveDate' => $receiveDate]; } $this->response->setJsonContent(['count' => count($mailList), 'mailList' => $mailList]); } $this->response->send(); return; }
/** * @Route("/deleteUser", methods = {"GET", "DELETE", "OPTIONS"}) */ public function DeleteUserAction() { $user_id = $this->request->get('user_id'); $inheritor_id = $this->request->get('inheritor_id'); if ($user_id == null) { $this->response->setJsonContent(['message' => 'No User_id!']); $this->response->send(); return; } $user = User::findFirst(['conditions' => 'id=?1', 'bind' => [1 => $user_id]]); if ($user == null) { $this->response->setJsonContent(['message' => 'id not exist!']); $this->response->send(); return; } $method = $this->request->getMethod(); $user_array = $user->toArray(); if ($method == 'GET') { $inheritors = User::find(['conditions' => 'role=?1 AND id<>?2', 'bind' => [1 => $user_array['role'], 2 => $user_id]]); if ($inheritors->getFirst() == null) { $this->response->setJsonContent(['message' => '该成员无法替代!']); } else { $inheritorList = array(); foreach ($inheritors as $inheritor) { $inheritorList[] = ['id' => $inheritor->id, 'role' => $inheritor->role, 'username' => $inheritor->name, 'created_at' => $inheritor->created_at]; } $this->response->setJsonContent(['inheritorList' => $inheritorList]); } } elseif ($method == 'DELETE') { if ($inheritor_id == null) { $this->response->setJsonContent(['message' => 'No Inheritor_id']); } elseif ($user->delete() == false) { $messages = "Delete Error:<br/>"; foreach ($user->getMessages() as $message) { $messages = $messages . $message . "<br/>"; } $this->response->setJsonContent(['message' => $messages]); } else { if ($user_array['role'] == 'dispatcher') { $receiveMail = ReceiveMail::find(['conditions' => 'dispatcher_id=?1', 'bind' => [1 => $user_id]]); foreach ($receiveMail as $mail) { $mail->dispatcher_id = $inheritor_id; $mail->save(); } } elseif ($user_array['role'] == 'handler') { $receiveMail = ReceiveMail::find(['conditions' => 'handler_id=?1', 'bind' => [1 => $user_id]]); $replyMail = ReplyMail::find(['conditions' => 'handler_id=?1', 'bind' => [1 => $user_id]]); foreach ($receiveMail as $mail) { $mail->handler_id = $inheritor_id; $mail->save(); } foreach ($replyMail as $mail) { $mail->handler_id = $inheritor_id; $mail->save(); } } elseif ($user_array['role'] == 'assessor') { $replyMail = ReplyMail::find(['conditions' => 'assessor_id=?1', 'bind' => [1 => $user_id]]); foreach ($replyMail as $mail) { $mail['assessor_id'] = $inheritor_id; $mail->save(); } } $this->response->setJsonContent(['message' => 'Success!']); } } $this->response->send(); return; }