// GetAllTeachers public async Task <List <TeacherViewModel> > GetAllTeachers() { var teachers = await _teacherRepository.GetAllTeachers(); return(teachers.Select(x => new TeacherViewModel() { TeacherId = _hashids.Encode(x.Id), TeacherFirstName = x.FirstName, TeacherLastName = x.LastName }).ToList()); }
public List <SchoolClassViewModel> GetAllSchoolClass() { var SchoolClassList = _schoolClassRepository.GetSchoolClassList(); return(SchoolClassList.Select(p => new SchoolClassViewModel { SchoolClassName = p.Name, SchoolClassNumber = _hashidsService.Encode(p.Id) }).ToList()); }
public static void RegisterMappings() { Mapper.Initialize(cfg => { cfg.CreateMap <SchoolClass, SchoolClassViewModel>() .ForMember(dest => dest.SchoolClassName, opt => opt.MapFrom(source => source.Name)); cfg.CreateMap <Mark, MarkViewModel>() .ForMember(dest => dest.StudentId, opt => opt.MapFrom(src => _hashidService.Encode(src.StudentId))) .ForMember(dest => dest.SubjectId, opt => opt.MapFrom(src => _hashidService.Encode(src.SubjectId))); cfg.CreateMap <MarkPostViewModel, Mark>() .ForMember(dest => dest.StudentId, opt => opt.MapFrom(src => _hashidService.Decode(src.StudentId))) .ForMember(dest => dest.SubjectId, opt => opt.MapFrom(src => _hashidService.Decode(src.SubjectId))); }); }
////CHECHKING PART OF CODE//// //Get Teacher by Class and Subject //получить учителя по классу и предмету (не зная id этой связки в таблице-развязке) public async Task <TeacherViewModel> GetTeacherBySubjectAndSchoolClass(string subjectNumber, string schoolClassNumber) { var teacher = await _teacherSclClsSubjRepository.GetTeacherBySubjectAndSchoolClass(_hashidsService.Decode(subjectNumber), _hashidsService.Decode(schoolClassNumber)); if (teacher != null) { return(new TeacherViewModel { TeacherFirstName = teacher.FirstName, TeacherLastName = teacher.LastName, TeacherId = _hashidsService.Encode(teacher.Id) }); } else { return(null); //TODO - как красиво кинуть ошибку что нет такой связки? } }