Example #1
0
        public PersonLayout GetByAspNetUserId(string AspNetUserId)
        {
            PersonLayout       pLayout  = null;
            TimecardEntryBase  teb      = null;
            List <ProjectBase> projects = null;

            DataProvider.ExecuteCmd(GetConnection, "dbo.Person_SelectByAspNetUserId",
                                    inputParamMapper : delegate(SqlParameterCollection paramCollection)
            {
                paramCollection.AddWithValue("@AspNetUserId", AspNetUserId);
            }
                                    , map : delegate(IDataReader reader, short set)
            {
                switch (set)
                {
                case 0:
                    pLayout = new PersonLayout();
                    int ord = 0;

                    pLayout.Id          = reader.GetSafeInt32(ord++);
                    pLayout.FirstName   = reader.GetSafeString(ord++);
                    pLayout.MiddleName  = reader.GetSafeString(ord++);
                    pLayout.LastName    = reader.GetSafeString(ord++);
                    pLayout.PhoneNumber = reader.GetSafeString(ord++);
                    pLayout.Email       = reader.GetSafeString(ord++);
                    pLayout.JobTitle    = reader.GetSafeString(ord++);
                    break;

                case 1:

                    ProjectBase pb = MapProjectList(reader);
                    if (projects == null)
                    {
                        projects = new List <ProjectBase>();
                    }
                    projects.Add(pb);
                    break;

                case 2:
                    teb         = new TimecardEntryBase();
                    int ordinal = 0;

                    teb.Id               = reader.GetSafeInt32(ordinal++);
                    teb.ProjectId        = reader.GetSafeInt32(ordinal++);
                    teb.StartDateTimeUtc = reader.GetSafeDateTimeNullable(ordinal++);
                    teb.EndDateTimeUtc   = reader.GetSafeDateTimeNullable(ordinal++);

                    break;
                }
            }
                                    );
            pLayout.Projects      = projects;
            pLayout.TimecardEntry = teb;
            return(pLayout);
        }
Example #2
0
        protected T DecorateViewModel <T>(T model) where T : BaseViewModel
        {
            //the below method checks if the user is logged in when it gets their UserId
            string aspNetUserId = UserService.GetCurrentUserId();

            if (!string.IsNullOrEmpty(aspNetUserId))
            {
                model.IsLoggedIn = true;

                IPersonService _personService = new PersonService();
                PersonLayout   person         = _personService.GetByAspNetUserId(aspNetUserId);

                model.FirstName       = person.FirstName;
                model.MiddleName      = person.MiddleName;
                model.LastName        = person.LastName;
                model.UserPhoneNumber = person.PhoneNumber;
                model.UserEmail       = person.Email;
                model.Id            = person.Id;
                model.projects      = person.Projects;
                model.TimecardEntry = person.TimecardEntry;
                model.Roles         = UserService.GetRoles();
            }
            return(model);
        }