Beispiel #1
0
        /// <see cref="IPersonService.GetListDescriptions" />
        public IEnumerable <PersonDescriptionModel> GetListDescriptions(int id)
        {
            var list = PersonModelHelper.GetDescriptionModels(_personRepository.GetDescriptions(id));

            foreach (var item in list)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePersonDescription(item.id_Person, item.Id));
            }
            return(list);
        }
Beispiel #2
0
        /// <see cref="IPersonService.GetFacts" />
        public IEnumerable <PersonFactModel> GetFacts(int id)
        {
            var list = PersonModelHelper.GetFactModels(_personRepository.GetPersonFacts(id));

            foreach (var item in list)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePersonFact(item.id_Person, item.Id));
            }
            //var types = list.GroupBy(o => o.id_FactType).Select(o => o.Key);
            //return types.Select(tp => new EntityCollection<PersonFactModel> { List = list.Where(o => o.id_FactType == tp), Type = tp });
            return(list);
        }
Beispiel #3
0
        /// <summary>
        /// Возвращает список моделей описаний
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IEnumerable <EventDescriptionModel> GetDescriptions(int id)
        {
            var list = EventModelHelper.GetDescriptionModels(_eventRepository.GetDescriptions(id));

            foreach (var item in list)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangeEventDescription(item.id_Event, item.Id));
            }
            return(list);
            //var types = list.GroupBy(o => o.id_DescriptionType).Select(o => o.Key);
            //return types.Select(tp => new Models.Events.EntityCollection<EventDescriptionModel> { List = list.Where(o => o.id_DescriptionType == tp), Type = tp });
        }
Beispiel #4
0
        /// <summary>
        /// Возвращает список моделей описаний
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IEnumerable <EntityCollection <PersonDescriptionModel> > GetDescriptions(int id)
        {
            var list = PersonModelHelper.GetDescriptionModels(_personRepository.GetDescriptions(id));

            foreach (var item in list)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePersonDescription(item.id_Person, item.Id));
            }
            var types = list.GroupBy(o => o.id_DescriptionType).Select(o => o.Key);

            return(types.Select(tp => new EntityCollection <PersonDescriptionModel> {
                List = list.Where(o => o.id_DescriptionType == tp), Type = tp
            }));
        }
Beispiel #5
0
        /// <summary>
        /// Возвращает список моделей антропометрических характеристик
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IList <PersonAntroModel> GetPersonAntros(int id)
        {
            var result = PersonModelHelper.GetPersonAntroModels(_personRepository.GetPersonAntros(id));

            foreach (var item in result)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePersonAntro(item.IdPerson, item.Id));
                item.Links      = new LinksModel
                {
                    PersonLinks = PersonModelHelper.GetPersonModels(_personRepository.GetAntroPersonLinks(item.Id)),
                    EventLinks  = EventModelHelper.GetEventModels(_personRepository.GetAntroEventLinks(item.Id))
                };
            }
            return(result);
        }
Beispiel #6
0
        /// <summary>
        /// Воозвращает всех Persons
        /// </summary>
        /// <returns></returns>
        public IList <PersonModel> GetAll()
        {
            var persons    = _personRepository.FindAllPerson();
            var listPerson = PersonModelHelper.GetPersonModels(persons);

            foreach (var item in listPerson)
            {
                var models = _personRepository.GetConnections(item.Id);
                item.Connections = PersonModelHelper.GetConnectionModels(models);
                var con = item.Connections.FirstOrDefault(o => o.Event != null);
                item.EventName  = con?.Event?.Name;
                item.EventType  = con?.Event?.EventCategory;
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePerson(item.Id));
            }
            return(listPerson);
        }
Beispiel #7
0
        /// <summary>
        /// Возвращает страницу списка Persons с учетом параметров поиска <paramref name="searchParams"/>
        /// </summary>
        /// <param name="pageNumber"></param>
        /// <param name="pageSize"></param>
        /// <param name="searchParams"></param>
        /// <returns></returns>
        public IList <PersonModel> GetPersons(int pageNumber, int pageSize, PersonSearchParams searchParams = null)
        {
            var page       = new PageInfo(pageNumber, pageSize);
            var sex        = searchParams?.SexId;
            var persons    = _personRepository.FindPerson(page, searchParams?.Alphabetically, sex);
            var listPerson = PersonModelHelper.GetPersonModels(persons);

            foreach (var item in listPerson)
            {
                var models = _personRepository.GetConnections(item.Id);
                item.Connections = PersonModelHelper.GetConnectionModels(models);
                var con = item.Connections.FirstOrDefault(o => o.Event != null);
                item.EventName  = con?.Event?.Name;
                item.EventType  = con?.Event?.EventCategory;
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePerson(item.Id));
            }
            return(listPerson);
        }
Beispiel #8
0
        /// <summary>
        /// Возвращает список моделей медиа
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IEnumerable <EntityCollection <PersonMediaModel> > GetMedia(int id)
        {
            var list = PersonModelHelper.GetMediaModels(_personRepository.GetMedia(id));

            foreach (var item in list)
            {
                item.LastChange = LogModelHelper.GetLastChangeModel(_logRepository.GetLastChangePersonMedia(item.id_Person, item.Id));
                item.Tags       = TagModelHelper.GeTagModels(_tagRepository.GetPersonMediaTags(item.Id));
                item.Links      = new LinksModel
                {
                    PersonLinks = PersonModelHelper.GetPersonModels(_personRepository.GetMediaPersonLinks(item.Id)),
                    EventLinks  = EventModelHelper.GetEventModels(_personRepository.GetMediaEventLinks(item.Id))
                };
            }
            var types = list.GroupBy(o => o.id_MediaType).Select(o => o.Key);

            return(types.Select(tp => new EntityCollection <PersonMediaModel> {
                List = list.Where(o => o.id_MediaType == tp), Type = tp
            }));
        }