コード例 #1
0
 public function getClassXById(Request $request)
 {
     onlyAllowPostRequest($request);
     $id_user = intval($request->input('id'));
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     $users = User::all()->where('id', $id_user);
     if ($users->count() == 0) {
         //
         $response->error = true;
         $response->error_msg = 'Không tồn tại người dùng này!';
         return response()->json($response);
     }
     $user = $users->first();
     $id_class = $user->class;
     $classX = ClassX::all()->where('id', $id_class)->first();
     $response->error = false;
     $class_x = new stdClass();
     $class_x->id = $classX->id;
     $class_x->name = $classX->khoa . $classX->lop;
     $class_x->soSV = ClassX::getCountStudentByClassId($id_class);
     $response->class = $class_x;
     return response()->json($response);
 }
 public function vote(Request $request)
 {
     onlyAllowPostRequest($request);
     $comment_id = $request['id'];
     $user_id = $request['user'];
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     $user = User::getInfoById($user_id);
     if ($user == null) {
         $response->error = true;
         $response->error_msg = 'Đã có lỗi gì đó xảy ra!';
         return response()->json($response);
     }
     if ($user->type != 'teacher') {
         $response->error = true;
         $response->error_msg = 'Bạn không có quyền này!!';
         return response()->json($response);
     }
     $p = DB::table('comments')->where('id', intval($comment_id))->update(['confirmed' => 1]);
     $response->error = false;
     $response->error_msg = 'Cảm ơn bạn đã xác nhận đây là bình luận hay!';
     return response()->json($response);
 }
コード例 #3
0
 public function commentToClassX(Request $request)
 {
     onlyAllowPostRequest($request);
     $all = $request->only(['post_id', 'author_id', 'content']);
     $comment = Comment::create(['post' => intval($all['post_id']), 'author' => intval($all['author_id']), 'content' => $all['content']]);
     $c = Comment::getCommentInfoById($comment->id);
     return response()->json($c);
 }
 public function comment(Request $request)
 {
     onlyAllowPostRequest($request);
     $all = $request->only(['post', 'author', 'content']);
     $comment = Comment::create(['post' => intval($all['post']), 'author' => intval($all['author']), 'content' => $all['content']]);
     $c = Comment::getCommentInfoById($comment->id);
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     $response->error = false;
     $response->comment = $c;
     return response()->json($response);
 }
コード例 #5
0
 public function getPosts(Request $request)
 {
     onlyAllowPostRequest($request);
     $id_classX = $request->input('id');
     $base = $request->input('base');
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     /**
      * Lớp khóa học
      */
     if ($base == 'class_xes') {
         $classXes = ClassX::all()->where('id', intval($id_classX));
         if ($classXes->count() == 0) {
             //Không tồn tại lớp học này
             $response->error = true;
             $response->error_msg = 'Đã có lỗi gì đó xảy ra!';
             return response()->json($response);
         }
     }
     $postClassXes = Post::all()->where('base', $base)->where('group', intval($id_classX));
     if ($postClassXes->count() == 0) {
         //Chưa có bài viết nào
         $response->error = true;
         $response->error_msg = 'Chưa có bài viết nào trong lớp!';
         return response()->json($response);
     }
     /**
      * Danh sách các bài viết
      */
     $arrPost = [];
     foreach ($postClassXes as $index => $post) {
         /**
          * Post
          */
         $p = Post::getPostInfoById($post->id);
         $arrPost[] = $p;
     }
     $arrPost = array_reverse($arrPost);
     $response->error = false;
     $response->posts = $arrPost;
     return response()->json($response);
 }
コード例 #6
0
 public function login(Request $request)
 {
     onlyAllowPostRequest($request);
     $all = $request->only(['email', 'password']);
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     $users = User::all()->where('email', $all['email']);
     if ($users->count() < 0) {
         //Không tồn tại người dùng
         $response->error = true;
         $response->error_msg = 'Không tồn tại người dùng này';
         return response()->json($response);
     }
     $user = $users->first();
     $pass_encode = md5($all['password']);
     if ($user->getAttribute('password') != $pass_encode) {
         //Sai mật khẩu
         $response->error = true;
         $response->error_msg = 'Mật khẩu của bạn không đúng!';
         return response()->json($response);
     }
     $response->error = false;
     $response->uid = $user->getAttribute('id');
     /**
      * Trả về dữ liệu người dùng
      */
     $user_x = new stdClass();
     $user_x->name = $user->getAttribute('name');
     $user_x->email = $user->getAttribute('email');
     $user_x->type = $user->getAttribute('type');
     $user_x->lop = $user->getAttribute('class');
     $user_x->mssv = $user->getAttribute('msv');
     $user_x->created_at = $user->getAttribute('created_at')->setTimezone(new DateTimeZone('Asia/Ho_Chi_Minh'))->format('Y-m-d H:m:i');
     $user_x->updated_at = $user->getAttribute('updated_at')->setTimezone(new DateTimeZone('Asia/Ho_Chi_Minh'))->format('Y-m-d H:m:i');
     $response->user = $user_x;
     return response()->json($response);
 }
コード例 #7
0
 /**
  * Update information user
  *
  * @param Request $request
  *
  * @return \Illuminate\Http\JsonResponse
  */
 public function update(Request $request)
 {
     onlyAllowPostRequest($request);
     $all = $request->only(['email', 'name', 'mssv', 'lop']);
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     /**
      * Xử lý lớp khóa học
      */
     $classX = $all['lop'];
     $id_class = ClassX::getIdByClassName($classX);
     if ($id_class == false) {
         //Lớp khóa học không tồn tại
         $response->error = true;
         $response->error_msg = 'Lớp khóa học không tồn tại';
         return response()->json($response);
     }
     /**
      * Tìm user bằng email
      */
     $users = DB::table('users')->where('email', $all['email']);
     if ($users->count() == 0) {
         $response->error = true;
         $response->error_msg = 'Đã có lỗi gì đó xảy ra!';
         return response()->json($response);
     }
     $updated = $users->update(['name' => ucwords($all['name']), 'msv' => $all['mssv'], 'class' => $id_class]);
     if ($updated == 0) {
         $response->error = true;
         $response->error_msg = 'Cập nhật không có gì thay đổi!';
         return response()->json($response);
     }
     $user = $users->first();
     $response->error = false;
     $response->uid = $user->id;
     $response->user = User::getInfoById($user->id);
     return response()->json($response);
 }
コード例 #8
0
 /**
  * Update information user
  *
  * @param Request $request
  *
  * @return \Illuminate\Http\JsonResponse
  */
 public function update(Request $request)
 {
     onlyAllowPostRequest($request);
     $all = $request->only(['email', 'name', 'mssv', 'lop']);
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     /**
      * Xử lý lớp khóa học
      */
     $classX = $all['lop'];
     $id_class = ClassX::getIdByClassName($classX);
     if ($id_class == false) {
         //Lớp khóa học không tồn tại
         $response->error = true;
         $response->error_msg = 'Lớp khóa học không tồn tại';
         return response()->json($response);
     }
     /**
      * Tìm user bằng email
      */
     $users = DB::table('users')->where('email', $all['email']);
     if ($users->count() == 0) {
         $response->error = true;
         $response->error_msg = 'Đã có lỗi gì đó xảy ra!';
         return response()->json($response);
     }
     $updated = $users->update(['name' => ucwords($all['name']), 'msv' => $all['mssv'], 'class' => $id_class]);
     if ($updated == 0) {
         $response->error = true;
         $response->error_msg = 'Cập nhật không có gì thay đổi!';
         return response()->json($response);
     }
     $user = $users->first();
     $response->error = false;
     $response->uid = $user->id;
     $user_x = new stdClass();
     $user_x->name = $user->name;
     $user_x->email = $user->email;
     $user_x->type = $user->type;
     $user_x->lop = ClassX::getClassName($user->class);
     $user_x->mssv = $user->msv;
     $user_x->created_at = date_create($user->created_at)->setTimezone(new DateTimeZone('Asia/Ho_Chi_Minh'))->format('Y-m-d H:m:i');
     $user_x->updated_at = date_create($user->updated_at)->setTimezone(new DateTimeZone('Asia/Ho_Chi_Minh'))->format('Y-m-d H:m:i');
     $response->user = $user_x;
     return response()->json($response);
 }
コード例 #9
0
 public function getGroup(Request $request)
 {
     onlyAllowPostRequest($request);
     $id_user = intval($request->input('id'));
     $base = $request->input('base');
     /**
      * Dữ liệu trả về
      */
     $response = new stdClass();
     $users = User::all()->where('id', $id_user);
     if ($users->count() == 0) {
         //
         $response->error = true;
         $response->error_msg = 'Không tồn tại người dùng này!';
         return response()->json($response);
     }
     $user = $users->first();
     $arrGroup = [];
     if ($base == 'class_xes') {
         $id_class = $user->class;
         $classX = ClassX::all()->where('id', $id_class)->first();
         $class_x = new stdClass();
         $class_x->id = $classX->id;
         $class_x->base = $base;
         $class_x->name = $classX->name;
         $class_x->soSV = ClassX::getCountStudentByClassId($id_class);
         $class_x->teacher = User::getInfoById($classX->teacher);
         $arrGroup = [$class_x];
     }
     if ($base == 'classSubject') {
         /**
          * Giáo viên
          */
         if ($user->type == 'teacher') {
             $u_x_id = $user->id;
             $classSubXS = SubClassSubject::all()->where('teacher', intval($u_x_id))->where('nhom', 0);
             if ($classSubXS->count() == 0) {
                 $response->error = true;
                 $response->error_msg = 'Đã có vấn đề xảy ra! Bạn vui long quay lại sau.';
                 return response()->json($response);
             }
             $arrGroup = [];
             foreach ($classSubXS as $k => $cls) {
                 $sub_id = $cls->id;
                 $subClassSubject = SubClassSubject::all()->where('id', intval($sub_id))->first();
                 $teacher_id = $subClassSubject->teacher;
                 $lmh_id = $subClassSubject->classSubject;
                 $classSubject = ClassSubject::all()->where('id', intval($lmh_id))->first();
                 $maLMH = $classSubject->maLMH;
                 $subject_id = $classSubject->subject;
                 $subject = Subject::all()->where('id', intval($subject_id))->first();
                 $cl = new stdClass();
                 $cl->base = 'classSubject';
                 $cl->id = $classSubject->id;
                 $cl->maLMH = $maLMH;
                 $cl->name = $subject->name;
                 $cl->soSV = $subClassSubject->soSV;
                 $cl->teacher = User::getInfoById($teacher_id);
                 $arrGroup[] = $cl;
             }
         } else {
             $timeTables = TimeTable::all()->where('user', $user->id);
             if ($timeTables->count() == 0) {
                 $response->error = true;
                 $response->error_msg = 'Tài khoản chưa có lớp môn học nào!';
                 return response()->json($response);
             }
             foreach ($timeTables as $tt) {
                 $sub_id = $tt->subClass;
                 $subClassSubject = SubClassSubject::all()->where('id', intval($sub_id))->first();
                 $teacher_id = $subClassSubject->teacher;
                 $lmh_id = $subClassSubject->classSubject;
                 $classSubject = ClassSubject::all()->where('id', intval($lmh_id))->first();
                 $maLMH = $classSubject->maLMH;
                 $subject_id = $classSubject->subject;
                 $subject = Subject::all()->where('id', intval($subject_id))->first();
                 $cl = new stdClass();
                 $cl->base = 'classSubject';
                 $cl->id = $classSubject->id;
                 $cl->maLMH = $maLMH;
                 $cl->name = $subject->name;
                 $cl->soSV = $subClassSubject->soSV;
                 $cl->teacher = User::getInfoById($teacher_id);
                 if ($subClassSubject->nhom == 0) {
                     $arrGroup[] = $cl;
                 }
             }
         }
     }
     $filter = [];
     $filter[0] = $arrGroup[0];
     $j = 0;
     for ($i = 1; $i < count($arrGroup); $i++) {
         if ($filter[$j]->maLMH != $arrGroup[$i]->maLMH) {
             $j++;
             $filter[$j] = $arrGroup[$i];
         }
     }
     $arrGroup = $filter;
     $response->error = false;
     $response->group = $arrGroup;
     return response()->json($response);
 }