示例#1
0
        public static ProjectVersionModel MapProjectVersion(ProjectVersion version)
        {
            var uiModel = new ProjectVersionModel();

            uiModel.ProjectId       = version.ProjectId;
            uiModel.Id              = version.Id;
            uiModel.Comment         = version.Comment;
            uiModel.PublishedDate   = version.PublishedDate.GetMyLocalTime();
            uiModel.PublishedBy     = version.PublishedBy;
            uiModel.PublishedByName = version.PublishedByName;
            uiModel.Phase           = EnumHelper.GetEnumDescription((Phase)version.PhaseId);

            ISerializer  xmlSerializer  = new SerializeXml();
            Project      project        = xmlSerializer.Deserialize <Project>(version.ProjectData);
            ProjectModel projectcontent = null;

            //Mapp to UI model
            if (project != null)
            {
                projectcontent = ApplicationMapper.MapProjectContent(project);
            }
            uiModel.Data            = projectcontent;
            uiModel.PublishedByName = version.PublishedByName;

            return(ObjectTextTrim.TrimStringProperties(uiModel));
        }
示例#2
0
        public static RoleModel MapProjectRoleView(ProjectRoleView role)
        {
            var roleModel = new RoleModel
            {
                Id   = role.ProjectRoleId,
                Name = role.ProjectRoleName,
            };

            return(ObjectTextTrim.TrimStringProperties(roleModel));
        }
示例#3
0
        public static IEnumerable <AdminUserModel> MapAdminUserList(IEnumerable <UserView> adminList)
        {
            var adminUserList = new List <AdminUserModel>();

            foreach (UserView userView in adminList)
            {
                var adminUser = new AdminUserModel {
                    Id = userView.Id, Name = userView.Name
                };
                adminUser = ObjectTextTrim.TrimStringProperties(adminUser);
                adminUserList.Add(adminUser);
            }
            return(adminUserList);
        }
示例#4
0
        public static MemberModel MapProjectMember(ProjectMember member)
        {
            var memberModel = new MemberModel
            {
                Id             = member.Id,
                ProjectId      = member.ProjectId,
                UserId         = member.UserId,
                Email          = member.Email,
                Name           = member.Name,
                ProjectRoleIds = member.ProjectRoleIds
            };

            return(ObjectTextTrim.TrimStringProperties(memberModel));
        }
示例#5
0
        public static ProjectViewModel MapProjectViewContent(Core.Model.ProjectView p)
        {
            ProjectViewModel uiModel = new ProjectViewModel();

            uiModel.Id           = p.Id;
            uiModel.Name         = p.Name;
            uiModel.Phase        = EnumHelper.GetEnumDescription((Phase)p.PhaseId);
            uiModel.Area         = p.ProjectArea.Name;
            uiModel.Favorite     = p.Favorite;
            uiModel.Member       = p.Member;
            uiModel.Municipality = p.Organization.Name;
            uiModel.County       = p.Organization.County;
            uiModel.Active       = p.Active;
            return(ObjectTextTrim.TrimStringProperties(uiModel));
        }
示例#6
0
        public static MemberModel MapProjectMemberView(ProjectMemberView pmv)
        {
            var memberModel = new MemberModel
            {
                Id           = pmv.ProjectMemberId,
                UserId       = pmv.UserId,
                Email        = pmv.UserEmail,
                Municipality = pmv.County,
                Name         = pmv.UserName,
                ProjectId    = pmv.ProjectId,
                Domain       = pmv.Domain,
                Organization = pmv.Organization
            };

            memberModel.MemberRoles = new List <RoleModel>();
            foreach (ProjectRoleView roleView in pmv.ProjectRoles)
            {
                memberModel.MemberRoles.Add(MapProjectRoleView(roleView));
            }
            return(ObjectTextTrim.TrimStringProperties(memberModel));
        }
示例#7
0
        public static UserViewModel MapUserView(UserView userView)
        {
            UserViewModel userViewModel = new UserViewModel();


            if (string.IsNullOrEmpty(userView.Name))
            {
                userView.Name = "";
            }

            userViewModel.Id                = userView.Id;
            userViewModel.Name              = string.IsNullOrEmpty(userView.Name.Trim()) ? userView.Email.Trim() : userView.Name.Trim();
            userViewModel.Organization      = string.IsNullOrEmpty(userView.Organization) ? "Extern" : userView.Organization;
            userViewModel.OrganizationId    = userView.OrganizationId;
            userViewModel.RoleId            = userView.RoleId;
            userViewModel.County            = userView.County;
            userViewModel.Domain            = userView.Domain;
            userViewModel.Email             = string.IsNullOrEmpty(userView.Email.Trim()) ? "Epost saknas" : userView.Email.Trim();
            userViewModel.OrganizationState = userView.OrganizationState;
            return(ObjectTextTrim.TrimStringProperties(userViewModel));
        }
示例#8
0
        public static ProjectModel MapProjectContent(Core.Model.Project p)
        {
            var uiModel = new ProjectModel();

            uiModel.Id             = p.Id;
            uiModel.Name           = p.Name;
            uiModel.AreaId         = p.ProjectAreaId;
            uiModel.OrganizationId = p.OrganizationId;
            uiModel.PhaseId        = p.PhaseId;
            uiModel.Phase          = EnumHelper.GetEnumDescription((Phase)p.PhaseId);
            uiModel.Program        = p.Program;
            uiModel.YammerGroup    = p.YammerGroup;

            if (p.StartDate.HasValue)
            {
                uiModel.StartDate = p.StartDate.Value.GetMyLocalTime();
            }

            uiModel.CreatedById                   = p.CreatedById;
            uiModel.CreatedBy                     = p.User.Name;
            uiModel.Description                   = p.Description;
            uiModel.FundingEstimate               = p.FundingEstimate;
            uiModel.FundingActual                 = p.FundingActual;
            uiModel.FundingExternal               = p.FundingExternal;
            uiModel.FundingStimulus               = p.FundingStimulus;
            uiModel.IntroductionBackground        = p.PlanIntroductionBackground;
            uiModel.IntroductionDefinition        = p.PlanIntroductionDefinition;
            uiModel.IntroductionComments          = p.PlanIntroductionComments;
            uiModel.DescriptionExtent             = p.PlanDescriptionExtent;
            uiModel.DescriptionDelimitation       = p.PlanDescriptionDelimitation;
            uiModel.DescriptionManagement         = p.PlanDescriptionManagement;
            uiModel.DescriptionEvaluation         = p.PlanDescriptionEvaluation;
            uiModel.ImplementationDescription     = p.PlanImplementationDescription;
            uiModel.CommunicationInterestAnalysis = p.PlanCommunicationInterestAnalysis;
            uiModel.CommunicationDefinition       = p.PlanCommunicationDefinition;
            uiModel.CommunicationPlan             = p.PlanCommunicationPlan;
            uiModel.PublishDate                   = p.PublishedDate.GetMyLocalTime();
            uiModel.Debriefing                    = p.Debriefing;

            uiModel.Members = new List <MemberModel>();
            foreach (ProjectMemberView member in p.ProjectMembers)
            {
                MemberModel memberModel = new MemberModel();
                memberModel.Id           = member.ProjectMemberId;
                memberModel.UserId       = member.UserId;
                memberModel.ProjectId    = p.Id;
                memberModel.Name         = member.UserName;
                memberModel.Email        = member.UserEmail;
                memberModel.Municipality = member.Organization;
                memberModel.isSaved      = true;
                memberModel.MemberRoles  = new List <RoleModel>();
                foreach (ProjectRoleView roleView in member.ProjectRoles)
                {
                    memberModel.MemberRoles.Add(new RoleModel {
                        Id = roleView.ProjectRoleId, Name = roleView.ProjectRoleName, ProjectRoleGroupName = roleView.ProjectRoleGroupName
                    });
                }
                memberModel = ObjectTextTrim.TrimStringProperties(memberModel);
                uiModel.Members.Add(memberModel);
            }

            uiModel.Risks = (from risk in p.ProjectRisks
                             select new RiskModel
            {
                ProjectId = risk.ProjectId,
                Id = risk.Id,
                Name = risk.Name,
                ConsequenceId = risk.ConsequenceId,
                ProbabilityId = risk.ProbabilityId,
                Effect = risk.Effect
            }).ToList();

            uiModel.Goals = (from goal in p.ProjectGoals
                             select new GoalModel
            {
                ProjectId = goal.ProjectId,
                Id = goal.Id,
                Type = goal.Type,
                Achieved = goal.Achieved,
                MesaureMethod = goal.MesaureMethod,
                GoalDefinition = goal.GoalDefinition
            }).ToList();

            uiModel.Activity = (from activity in p.ProjectActivities
                                select new ActivityModel
            {
                ProjectId = activity.ProjectId,
                Id = activity.Id,
                Name = activity.Name,
                StatusId = activity.Status,
                Notes = activity.Notes,
                InternalHours = activity.InternalHours,
                ExternalHours = activity.ExternalHours,
                Cost = activity.Cost,
                SummaryRow = 0,
                SummaryCost = 0,
                SummaryInternalHours = 0,
                SummaryExternalHours = 0,
                SummaryTotal = 0,
            }).ToList();

            if (p.Permissions != null)
            {
                uiModel.ProjectPermissions = (from permission in p.Permissions
                                              select new ProjectPermissionModel
                {
                    Permission = permission.Permission,
                    Section = Enum.GetName(typeof(PermissionSection), (int)permission.Section)
                }).ToList();
            }
            uiModel.FollowUp = (from followUp in p.ProjectFollowUps
                                select new FollowUpModel
            {
                ProjectId = followUp.ProjectId,
                Id = followUp.Id,
                Date = followUp.Date.HasValue ? followUp.Date.Value.GetMyLocalTime() : DateTimeHelper.GetMinDateTime(),
                Notes = followUp.Notes,
                InternalHours = followUp.InternalHours,
                ExternalHours = followUp.ExternalHours,
                OtherCosts = followUp.OtherCosts,
                ActivityTotal = followUp.ActivityTotal,
                Canceled = followUp.Canceled,
                IsOpen = false,
                isSaved = true,
                RowTotalCost = 0
            }).ToList();


            return(ObjectTextTrim.TrimStringProperties(uiModel));
        }