Exemplo n.º 1
0
        private static PersonViewModel PersonToViewModel(Person person, IEnumerable <PersonCareerViewModel> personCareers)
        {
            if (person == null)
            {
                return(null);
            }

            Guid?tempGuid = person.Id == 0 ? Guid.NewGuid() : (Guid?)null;

            PersonInfoView infoView;

            if (!string.IsNullOrWhiteSpace(person.Info))
            {
                try
                {
                    infoView = JsonConvert.DeserializeObject <PersonInfoView>(person.Info);
                }
                catch (JsonReaderException)
                {
                    // TODO: Add item to event log
                    infoView = new PersonInfoView();
                }
            }
            else
            {
                infoView = new PersonInfoView();
            }

            return(new PersonViewModel()
            {
                id = person.Id,
                active = person.Active,
                age = person.BirthDate.HasValue ? DateTimeHelper.GetAge(person.BirthDate.Value) : 0,
                birthDate = person.BirthDate,
                career = personCareers ?? new PersonCareerViewModel[0],
                cityId = person.cityId,
                customIntValue = person.CustomIntValue,
                height = person.Height,
                image = person.Image,
                info = infoView,
                nameFirst = person.NameFirst,
                nameLast = person.NameLast,
                nameMiddle = person.NameMiddle,
                nameNick = person.NameNick,
                nameDefault = person.NameFirst + " " + person.NameLast,
                number = person.Number,
                personStatusId = person.personStatusId,
                roleId = person.roleId,
                teamId = person.teamId,
                weight = person.Weight,
                tempGuid = tempGuid,
                team = person.team.ToViewModel(),
                city = person.city.ToViewModel(),
                role = person.role.ToViewModel()
            });
        }
        public PersonInfoWindow(AppUser currentUser, string name)
        {
            InitializeComponent();
            Title = name;
            PersonInfoView view = new PersonInfoView
            {
                DataContext  = this,
                UserName     = { Text = currentUser.Name },
                UserPhone    = { Text = currentUser.Phone },
                UserEmail    = { Text = currentUser.Email },
                UserTelegram = { Text = currentUser.Telegram }
            };

            MainGrid.Children.Add(view);
        }