示例#1
0
        static async Task Main(string[] args)
        {
            IAccount account = new StudentAccount()
            {
                Status   = Status.Student,
                Subjects = new List <ISubject>()
                {
                    new Subject {
                        Key = "SortedSet", Name = "Teacher"
                    }
                },
                Key      = "tt",
                Password = "******",
                ToDos    = new List <IToDo>()
                {
                },
                User = new User()
                {
                    Age = 10
                },
                UserName = "******"
            };

            LoginUserHelperManager.LoginUser(account);
            var user = LoginUserHelperManager.GetCurrentUser();
            var Type = user.GetType();

            Console.WriteLine("heelo");
        }
示例#2
0
        public async Task <IActionResult> Addstudent([FromServices] IUserStudentService studentService, [FromServices] IPhotoService photoService, string name, string surname, int day, int month, int year, int gender, string email, int number, string address, IFormFile image)
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            IStudent student = new Student()
            {
                Address   = address,
                Surname   = surname,
                Gender    = (Gender)gender,
                Mail      = email,
                Name      = name,
                Number    = number,
                BirthDay  = new DateTime(year, month, day),
                TeacherID = user.Key
            };

            if (image != null)
            {
                student.Img = photoService.PhotoLink(image.FileName.Split('\\').LastOrDefault().Split('.').FirstOrDefault());
                photoService.Upload(image.FileName);
            }
            else
            {
                student.Img = photoService.PhotoLink("person2_s1nfj5");
            }
            await studentService.AddStudentAsync(student);

            return(RedirectToAction("StudentView"));
        }
        public async Task <bool> SentMail(MailUserDto Sender, MailUserDto receiver, MailMessageDto messageDto)
        {
            try
            {
                var LoginedAccount = await LoginUserHelperManager.GetCurrentUser();

                var message = new MimeMessage();
                message.From.Add(new MailboxAddress(Sender.Username, Sender.Mail));
                message.To.Add(new MailboxAddress(receiver.Username, receiver.Mail));
                message.Subject = messageDto.subject;
                message.Body    = new TextPart("plain")
                {
                    Text = messageDto.text
                };

                using (SmtpClient client = new SmtpClient())
                {
                    client.Connect("smtp.gmail.com", 587, false);
                    client.Authenticate("*****@*****.**", "asdasd123A@");
                    client.Send(message);
                    client.Disconnect(true);
                }

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
示例#4
0
        public async Task <IEnumerable <IStudent> > GetStudentsAsync()
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            var data = await _studentService.GetStudentsFromDbAsync();

            var UserStudents = data.ToList().Where(o => o.TeacherID == user.Key);

            return(UserStudents);
        }
        public async Task <IEnumerable <ISubject> > GetSubjectsAsync()
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            var data = await _subjectService.GetSubjectsFromDBAsync();

            var usersubjects = data.Where(o => o.StudentId == user.Key);

            return(user.Subjects);
        }
示例#6
0
        public async Task <IActionResult> AddSubject([FromServices] IUserSubjectService subjectService, string name, string teachername)
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            ISubject subject = new Subject()
            {
                Name        = name,
                TeacherName = teachername,
                StudentId   = user.Key,
            };
            await subjectService.AddSubjectAsync(subject);

            return(View("SubjectsView"));
        }
示例#7
0
        public async Task <bool> UpdateStudentAsync(string key, IStudent student)
        {
            try
            {
                var user = await LoginUserHelperManager.GetCurrentUser();

                await _studentService.UpdateStudentAsync(key, student);

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
示例#8
0
        public async Task <bool> AddStudentAsync(IStudent student)
        {
            try
            {
                var user = await LoginUserHelperManager.GetCurrentUser();

                await _studentService.AddStudentDbAsync(student);

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
        public async Task <bool> DeleteSubjectAsync(string Key)
        {
            try
            {
                var user = await LoginUserHelperManager.GetCurrentUser();

                await _subjectService.DeleteSubjectAsync(Key);

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
示例#10
0
        public async Task <IActionResult> Delete(int id, string key)
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            if (user.Status == Status.Student)
            {
                user.Subjects
                .FirstOrDefault(o => o.Key == key)
                .Grades.ToList()
                .RemoveAt(id);
            }
            else
            {
                user.Students
                .FirstOrDefault(o => o.Key == key)
                .Grades.ToList()
                .RemoveAt(id);
            }
            return(RedirectToAction("Grading"));
        }
示例#11
0
        public async Task <IActionResult> SendMail([FromServices] ISendMailService mailService, string mail, string name, string subject, string maintext)
        {
            var user = await LoginUserHelperManager.GetCurrentUser();

            MailUserDto Receiver = new MailUserDto()
            {
                Mail     = mail,
                Username = mail,
            };
            MailUserDto Sender = new MailUserDto()
            {
                Mail     = user.User.Mail,
                Username = user.UserName
            };
            MailMessageDto Message = new MailMessageDto
            {
                subject = subject,
                text    = maintext,
            };
            await mailService.SentMail(Sender, Receiver, Message);

            return(RedirectToAction("StudentView"));
        }
示例#12
0
        public async Task <IActionResult> Grading(string key)
        {
            ViewBag.Message = key;
            var user = await LoginUserHelperManager.GetCurrentUser();

            ISubject subject = null;
            IStudent student = null;

            if (user.Status == Status.Student)
            {
                subject = user.Subjects.FirstOrDefault(o => o.Key == key);
                if (subject.Grades != null)
                {
                    for (int i = 0; i < subject.Grades.Count(); i++)
                    {
                        subject.Grades.ToList()[i].Id = i;
                    }
                    {
                        subject.Grades = new List <IGrade>();
                    }
                }
            }
            else
            {
                student = user.Students.FirstOrDefault(o => o.Key == key);
                if (student != null)
                {
                    if (student.Grades != null)
                    {
                        for (int i = 0; i < student.Grades.Count(); i++)
                        {
                            student.Grades.ToList()[i].Id = i;
                        }
                    }
                    else
                    {
                        student.Grades = new List <IGrade>();
                    }
                }
            }
            AllGradeDto allGradedto = default;

            if (student != null)
            {
                if (student.Grades == null)
                {
                    allGradedto = new AllGradeDto()
                    {
                        SubjectGrades = subject.Grades
                    };
                }
                else
                {
                    allGradedto = new AllGradeDto()
                    {
                        StudentGrades = student.Grades
                    };
                }
            }
            else if (student != null)
            {
                allGradedto = new AllGradeDto()
                {
                    StudentGrades = student.Grades
                };
            }

            return(View(allGradedto));
        }