public IActionResult GetStudentSubject(string studentId)
        {
            CheckValid valid = new CheckValid();

            try
            {
                if (!valid.IsExistedStudentId(studentId))
                {
                    valid.IsValid = false;
                }
                if (valid.IsValid)
                {
                    var listClassSubject = GetClassSubjectByStudentId(studentId);

                    if (listClassSubject.Count > 0)
                    {
                        return(Ok(new BaseResponse(listClassSubject, "Get list class subject success", true)));
                    }
                    else
                    {
                        return(NotFound(new BaseResponse(listClassSubject, "Student havent study anything", false)));
                    }
                }

                return(NotFound(new BaseResponse(null, valid.ErrorMessage, false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
示例#2
0
        private async void Handle_SignUp(object sender, RoutedEventArgs e)
        {
            CheckValid valid = new CheckValid();

            currentMember.firstName = this.FirstName.Text;
            currentMember.lastName  = this.LastName.Text;
            currentMember.email     = this.Email.Text;
            currentMember.password  = this.Password.Password.ToString();
            currentMember.avatar    = this.Avatar_Url.Text;
            currentMember.phone     = this.Phone.Text;
            currentMember.address   = this.Address.Text;
            Debug.WriteLine("First Name" + this.FirstName.Text);
            Debug.WriteLine(this.LastName.Text);
            Debug.WriteLine(this.Address.Text);
            if (!valid.CheckValidAll(currentMember))
            {
                List <TextBlock> listMessage = new List <TextBlock>();
                foreach (KeyValuePair <string, string> entry in valid.listError)
                {
                    var       message   = this.FindName(entry.Key);
                    TextBlock textBlock = message as TextBlock;
                    textBlock.Text       = entry.Value;
                    textBlock.Visibility = Visibility.Visible;
                }
            }
            else
            {
                string response = await ApiHandle.Sign_Up(currentMember);

                Debug.WriteLine(response);
                Debug.WriteLine("OK");
            }
        }
        public IActionResult UpdateProfile(Users user)
        {
            CheckValid valid = new CheckValid();

            try
            {
                valid.IsExistedUsername(user.Username);
                if (valid.IsValid)
                {
                    FaceIOContext context = new FaceIOContext();

                    context.Users.Update(user);

                    context.SaveChanges();

                    return(Ok(new BaseResponse(user, "Update success", true)));
                }

                return(NotFound(new BaseResponse(null, "User not found", false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public IActionResult GetProfile(string username)
        {
            CheckValid valid = new CheckValid();

            try
            {
                valid.IsExistedUsername(username);

                if (valid.IsValid)
                {
                    FaceIOContext context = new FaceIOContext();

                    var user = context.Users.Where(x => x.Username == username).FirstOrDefault();

                    if (user != null)
                    {
                        return(Ok(new BaseResponse(user, "Get profile success", true)));
                    }

                    return(NotFound(new BaseResponse(null, "Not found", false)));
                }

                return(NotFound(new BaseResponse(null, "Username not found", false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public IActionResult CreateTicket(string studentId, string teacherId, string content)
        {
            CheckValid valid = new CheckValid();

            try
            {
                if (!valid.IsExistedTeacherId(teacherId))
                {
                    valid.IsValid = false;
                }
                if (!valid.IsExistedStudentId(studentId))
                {
                    valid.IsValid = false;
                }

                if (valid.IsValid)
                {
                    var context = new FaceIOContext();
                    var student = context.Users.Where(q => q.Username == studentId).FirstOrDefault();
                    var teacher = context.Teacher.Where(t => t.Id == teacherId).FirstOrDefault();

                    if (student == null || teacher == null || string.IsNullOrEmpty(content))
                    {
                        return(NotFound(new BaseResponse(null, "Teacher or student not found or content is blank", false)));
                    }
                    else
                    {
                        context.Ticket.Add(new Ticket()
                        {
                            Content   = content,
                            StartDate = DateTime.Now,
                            EndDate   = DateTime.Now.AddDays(10),
                            Status    = "Open"
                        });


                        context.SaveChanges();

                        context.StudentTeacherTicket.Add(new StudentTeacherTicket()
                        {
                            StudentId = studentId,
                            TeacherId = teacherId,
                            TicketId  = context.Ticket.Where(t => t.Content == content).FirstOrDefault().Id
                        });

                        context.SaveChanges();
                    }

                    return(Ok(new BaseResponse(null, "Create ticket success", true)));
                }

                return(NotFound(new BaseResponse(null, valid.ErrorMessage, false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public IActionResult GetTicketByStudentId(string studentId)
        {
            CheckValid valid = new CheckValid();

            try
            {
                if (!valid.IsExistedStudentId(studentId))
                {
                    valid.IsValid = false;
                }

                if (valid.IsValid)
                {
                    var context = new FaceIOContext();


                    var listIdTicket = context.StudentTeacherTicket.Where(x => x.StudentId == studentId).Select(x => x.TicketId)
                                       .ToList();

                    var tickets = context.Ticket.Where(x => listIdTicket.Contains(x.Id)).ToList();

                    var result = new List <Object>();

                    foreach (var ticket in tickets)
                    {
                        result.Add(new
                        {
                            id        = ticket.Id,
                            content   = ticket.Content,
                            startDate = ticket.StartDate,
                            endDate   = ticket.EndDate,
                            status    = ticket.Status,
                            teacherId = context.StudentTeacherTicket.Where(x => x.TicketId == ticket.Id).FirstOrDefault()
                                        .TeacherId
                        });
                    }

                    return(Ok(new BaseResponse(result, "Success", true)));
                }

                return(NotFound(new BaseResponse(null, valid.ErrorMessage, false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public static void Main(string[] args)
        {
            SecretGenerator  secretGenerator = new SecretGenerator();
            CheckValid       checkValid      = new CheckValid();
            BullsAndCowsGame game            = new BullsAndCowsGame(secretGenerator);

            while (game.CanContinue)
            {
                var input = Console.ReadLine();
                while (!checkValid.IsValid(input))
                {
                    Console.WriteLine("Wrong Input, input again");
                    input = Console.ReadLine();
                }

                var output = game.Guess(input);
                Console.WriteLine(output);
                game.CountInputTimes();
            }

            Console.WriteLine("Game Over");
        }
        public IActionResult GetScheduleOnWeek(string studentId, DateTime date)
        {
            CheckValid valid = new CheckValid();

            try
            {
                if (!valid.IsExistedStudentId(studentId))
                {
                    valid.IsValid = false;
                }
                if (valid.StringIsNullOrEmpty(date.ToString()))
                {
                    valid.IsValid = false;
                }

                if (valid.IsValid)
                {
                    var listClassSubject = GetClassSubjectByStudentId(studentId);

                    if (listClassSubject != null)
                    {
                        Dictionary <string, Object> dicClassSubjectSchedule = new Dictionary <string, object>();

                        var mondayInWeek = date.StartOfWeek(DayOfWeek.Monday);

                        var sundayInWeek = mondayInWeek.AddDays(6.0);

                        foreach (var classSubject in listClassSubject)
                        {
                            var ds = GetScheduleByClassSubjectId(classSubject.Id);

                            var scheduleOfClassSubject = GetScheduleByClassSubjectId(classSubject.Id).Where(x => x.Date >= mondayInWeek && x.Date <= sundayInWeek).ToList();

                            foreach (var schedule in scheduleOfClassSubject)
                            {
                                string s = $"{schedule.Date.DayOfWeek.ToString()}/{schedule.Slot}";

                                int a = schedule.ClassSubjectSchedule.ToList()[0].Id;

                                var attendance = GetAttendance(studentId, schedule.ClassSubjectSchedule.ToList()[0].Id,
                                                               classSubject.Id);

                                dicClassSubjectSchedule.Add(s, new
                                {
                                    subject = classSubject.SubjectId,
                                    classId = classSubject.ClassId,
                                    atten   = attendance.Attendance
                                });
                            }
                        }

                        if (dicClassSubjectSchedule.Count > 0)
                        {
                            return(Ok(new BaseResponse(dicClassSubjectSchedule, "Success with schedule", true)));
                        }

                        return(Ok(new BaseResponse(dicClassSubjectSchedule, "Success but not have any schedule on this week", true)));
                    }

                    return(NotFound(new BaseResponse(null, "Student is not study any subject", false)));
                }

                return(NotFound(new BaseResponse(null, valid.ErrorMessage, false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public IActionResult UpdateAttendance(string studentId, bool attendance)
        {
            CheckValid valid       = new CheckValid();
            var        timeRequest = DateTime.Now;
            var        slotJoin    = getSlot(timeRequest);
            var        check       = false;

            try
            {
                if (!valid.IsExistedStudentId(studentId))
                {
                    valid.IsValid = false;
                }
                if (valid.StringIsNullOrEmpty(attendance.ToString()))
                {
                    valid.IsValid = false;
                }

                if (valid.IsValid)
                {
                    var listClassSubject = GetClassSubjectByStudentId(studentId);

                    if (listClassSubject.Count > 0)
                    {
                        foreach (var classSubject in listClassSubject)
                        {
                            var ListSchedule = GetScheduleByClassSubjectId(classSubject.Id).Where(x => x.Date == timeRequest.Date);
                            foreach (var schedule in ListSchedule)
                            {
                                if (schedule.Slot == slotJoin)
                                {
                                    var context = new FaceIOContext();
                                    var classSubjectSchedule = context.ClassSubjectSchedule.Where(x =>
                                                                                                  x.ClassSubjectId == classSubject.Id && x.ScheduleId == schedule.Id).FirstOrDefault();

                                    var studentStudyAttendance =
                                        context.StudentStudyAttendance.Where(x =>
                                                                             x.ClassSubjectScheduleId == classSubjectSchedule.Id).FirstOrDefault();

                                    if (studentStudyAttendance != null)
                                    {
                                        studentStudyAttendance.Attendance = true;

                                        context.StudentStudyAttendance.Update(studentStudyAttendance);

                                        context.SaveChanges();

                                        check = true;
                                        break;
                                    }
                                }

                                else
                                {
                                    continue;
                                }
                            }

                            if (check)
                            {
                                break;
                            }
                        }

                        if (check == false)
                        {
                            return(NotFound(new BaseResponse(null, "Attendance failed", false)));
                        }
                        else
                        {
                            return(Ok(new BaseResponse(null, "Update attendance success", true)));
                        }
                    }

                    return(NotFound(new BaseResponse(null, "Not found any subject by student ID", false)));
                }

                return(NotFound(new BaseResponse(null, valid.ErrorMessage, false)));
            }
            catch (Exception e)
            {
                return(BadRequest(new BaseResponse(null, e.Message, false)));
            }
        }
        public void Should_Return_False_For_Valid_Guess(string guess)
        {
            var checkValid = new CheckValid();

            Assert.False(checkValid.IsValid(guess));
        }
示例#11
0
        private async void BtnLogin_Click(object sender, RoutedEventArgs e)
        {
            CheckValid valid    = new CheckValid();
            string     email    = this.Email.Text;
            string     password = this.Password.Password;

            if (valid.CheckValidEmail(email) == false)
            {
                this.Email_Message.Text       = valid.Email_Message;
                this.Email_Message.Visibility = Visibility.Visible;
            }
            if (valid.CheckValidPassword(password) == false)
            {
                this.Password_Message.Text       = valid.Password_Message;
                this.Password_Message.Visibility = Visibility.Visible;
            }
            else
            {
                Dictionary <string, string> LoginInfo = new Dictionary <string, string>();
                LoginInfo.Add("email", this.Email.Text);
                LoginInfo.Add("password", this.Password.Password);

                Debug.WriteLine(this.Email.Text);
                Debug.WriteLine(this.Password.Password);

                // Lay token
                HttpClient    httpClient      = new HttpClient();
                StringContent content         = new StringContent(JsonConvert.SerializeObject(LoginInfo), System.Text.Encoding.UTF8, "application/json");
                var           response        = httpClient.PostAsync(API_LOGIN, content).Result;
                var           responseContent = await response.Content.ReadAsStringAsync();

                if (response.StatusCode == System.Net.HttpStatusCode.Created)
                {
                    // save file...
                    Debug.WriteLine(responseContent);
                    // Doc token
                    TokenResponse token = JsonConvert.DeserializeObject <TokenResponse>(responseContent);

                    // Luu token
                    StorageFolder folder = ApplicationData.Current.LocalFolder;
                    StorageFile   file   = await folder.CreateFileAsync("token.txt", CreationCollisionOption.ReplaceExisting);

                    await FileIO.WriteTextAsync(file, responseContent);

                    // Lay thong tin ca nhan bang token.
                    HttpClient client2 = new HttpClient();
                    client2.DefaultRequestHeaders.Add("Authorization", "Basic " + token.token);
                    var resp = client2.GetAsync("http://2-dot-backup-server-002.appspot.com/_api/v2/members/information").Result;
                    Debug.WriteLine(await resp.Content.ReadAsStringAsync());
                    (Window.Current.Content as Frame).Navigate(typeof(Views.Main));
                }
                else
                {
                    // Xu ly loi.
                    ErrorResponse errorObject = JsonConvert.DeserializeObject <ErrorResponse>(responseContent);
                    Debug.WriteLine(responseContent);
                    if (errorObject != null && errorObject.error.Count > 0)
                    {
                        foreach (var key in errorObject.error.Keys)
                        {
                            var textMessage = this.FindName(key);
                            if (textMessage == null)
                            {
                                continue;
                            }
                            TextBlock textBlock = textMessage as TextBlock;
                            textBlock.Text       = errorObject.error[key.ToLower() + "_Message"];
                            textBlock.Visibility = Visibility.Visible;
                        }
                    }
                }
            }
        }