public async Task <ApiResult <bool> > Create(CreateNotificationRequest request) { var query = from n in _context.Notifications where n.Id_BLE == request.Id_BLE && n.Status == true select new { n }; if (query.Count() > 0) { return(new ApiSuccessResult <bool>("thiết bị đang được xử lý")); } var equipment = await _context.Equipment.FindAsync(request.Id_BLE); if (equipment == null || equipment.Id_Student != request.Id_User) { return(new ApiErrorResult <bool>("Không tìm thấy thiết bị")); } var notification = new Notification() { Id_BLE = request.Id_BLE, Id_User = request.Id_User, Reason = request.Reason, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7), Status = true }; equipment.Status = false; _context.Notifications.Add(notification); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Tạo thành thành công")); }
public async Task <ApiResult <bool> > Register(RegisterUserRequest request) { var user = await _userManager.FindByNameAsync(request.UserName); if (user != null) { return(new ApiErrorResult <bool>("Tài khoản đã tồn tài")); } if (await _userManager.FindByEmailAsync(request.Email) != null) { return(new ApiErrorResult <bool>("Email đã tồn tài")); } var role = await _roleManager.FindByIdAsync(request.Type); if (role == null || role.Name == "student") { return(new ApiErrorResult <bool>("Loại người dùng không tồn tại")); } user = new AppUser() { UserName = request.UserName, Email = request.Email, FullName = request.FullName, Type = role.Name, //UrlImg = await this.SaveFile(request.ThumbnailImage), DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7) }; var resultCreateUser = await _userManager.CreateAsync(user, request.Password); var resultRole = await _userManager.AddToRoleAsync(user, role.Name); if (resultCreateUser.Succeeded && resultRole.Succeeded) { var newUser = await _userManager.FindByNameAsync(request.UserName); if (newUser != null) { if (role.Name == "teacher") { var teacher = new Teacher() { Id = newUser.Id, FullName = request.FullName, Email = request.Email, //UrlImg = newUser.UrlImg, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7) }; _context.Teachers.Add(teacher); await _context.SaveChangesAsync(); } } return(new ApiSuccessResult <bool>("Đăng ký tài khoản thành công")); } else { return(new ApiErrorResult <bool>("Đăng ký tài khoản không thành công")); } }
public async Task <ApiResult <bool> > CreateCourse(CreateCourseRequest request) { if (await _context.Teachers.FindAsync(request.Id_Teacher) == null) { return(new ApiErrorResult <bool>("Không tìm thấy Giáo viên ")); } if (await _context.Subjects.FindAsync(request.Id_Subject) == null) { return(new ApiErrorResult <bool>("Không tìm thấy Môn học phù hợp ")); } var subject = await _context.Subjects.FindAsync(request.Id_Subject); var course = new Course() { Id_Subject = request.Id_Subject, Id_Teacher = request.Id_Teacher, Name = request.Name, Semester = request.Semester, SchoolYear = request.SchoolYear, DateBegin = request.DateBegin.Date, DateEnd = request.DateBegin.AddDays(subject.Lesson * 7).Date, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7), }; _context.Courses.Add(course); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Tạo thành công")); }
public async Task <ApiResult <bool> > CreatebyStudent(CreateAttendancebyStudent request) { var schdule = await _context.Schedules.FindAsync(request.Id_Schedule); if (schdule == null) { return(new ApiErrorResult <bool>("Không tìm thấy dữ liệu")); } var repo = await _context.HistoryAttendances.FindAsync(request.Id_Schedule); if (repo == null) { return(new ApiErrorResult <bool>("Lỗi điểm danh")); } var queryStudent = from e in _context.Equipment join st in _context.Students on e.Id_Student equals st.Id join rc in _context.RegisterCourses on st.Id equals rc.Id_Student where schdule.Id_Course == rc.Id_Course select new { e, st, rc }; var dataStudent = await queryStudent.Select(x => x.e.Id_BLE).ToListAsync(); var query = from d in _context.DetailHAs where d.Id_HistoryAttendance == request.Id_Schedule select new { d }; var data = await query.Select(x => x.d.Id_Student).ToListAsync(); var equipment = await _context.Equipment.FindAsync(request.Id_BLE); int check = data.IndexOf(equipment.Id_Student); int checkStudent = dataStudent.IndexOf(request.Id_BLE); if (check == -1 && checkStudent > -1) { var detailHa = new DetailHA() { Id_HistoryAttendance = request.Id_Schedule, Id_Student = equipment.Id_Student, DateCreate = DateTime.UtcNow.AddHours(7) }; _context.DetailHAs.Add(detailHa); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Đã được điểm danh ")); } return(new ApiSuccessResult <bool>("Điểm danh thành công")); }
public async Task <ApiResult <bool> > CreateClass(CreateClassRequest request) { var classes = new Class() { Name = request.Name, Description = request.Description, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7), }; _context.Classes.Add(classes); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Tạo thành Lớp học thành công")); }
public async Task <ApiResult <bool> > CreateRepo(CreateRepoRequest request) { var schedule = await _context.Schedules.FindAsync(request.Id_Schedule); //if (schedule.Date != DateTime.UtcNow.AddHours(7).Date) //{ // return new ApiErrorResult<bool>("Ngày tạo Không hợp lệ"); //} if (await _context.HistoryAttendances.FindAsync(request.Id_Schedule) != null) { return(new ApiSuccessResult <bool>("Kho chứa đã được tạo")); } if (schedule.Id_Course != request.Id_Course) { return(new ApiErrorResult <bool>("Không tồn tại khóa học")); } var data = new HistoryAttendance() { Id_HistoryAttendace = request.Id_Schedule, Id_Schedule = request.Id_Schedule, Id_Course = request.Id_Course, DateAttendance = DateTime.UtcNow.AddHours(7).Date, Id_EquipmentTeacher = request.Id_EquipmentTeacher, }; _context.HistoryAttendances.Add(data); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Bạn đã tạo thành công")); }
public async Task <ApiResult <bool> > CreateSubject(CreateSubjectRequest request) { var subject = new Subject() { Name = request.Name, Description = request.Description, NumberOfCredits = request.NumberOfCredits, Lesson = request.Lesson, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7), }; _context.Subjects.Add(subject); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Tạo thành công")); }
public async Task <ApiResult <bool> > CreateSchedule(CreateSchduleRequest request) { var course = await _context.Courses.FindAsync(request.Id_Course); if (course == null) { return(new ApiErrorResult <bool>("Không tìm thấy dữ liệu")); } var subject = await _context.Subjects.FindAsync(course.Id_Subject); if (subject == null) { return(new ApiErrorResult <bool>("Không tìm thấy dữ liệu")); } var query = from s in _context.Schedules where s.Id_Course == request.Id_Course && s.Date == request.DateBegin.Date && s.TimeBegin == request.TimeBegin select new { s }; var scheduleData = await _context.Schedules.FirstOrDefaultAsync(x => x.Id_Course == request.Id_Course && x.Date == request.DateBegin.Date && x.TimeBegin == request.TimeBegin); if (scheduleData != null) { return(new ApiErrorResult <bool>("Lịch trình đã tồn tại")); } var schedule = new Schedule() { Id_Course = request.Id_Course, Id_Class = request.Id_Class, Date = request.DateBegin.Date, TimeBegin = request.TimeBegin, TimeEnd = request.TimeEnd, DateCreate = DateTime.UtcNow.AddHours(7), DateUpdate = DateTime.UtcNow.AddHours(7) }; _context.Schedules.Add(schedule); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>("Tạo mới thành công")); }