示例#1
0
        private ReportByProjectModel BuildReportByProjectModel(string projectId)
        {
            var projectService = controller.GetService <ProjectService>();
            var userService    = controller.GetService <UserService>();

            var project = projectService.Get(projectId);

            var projectException = ProjectException.Normal.ToString();

            if ((project.Status == Status.Done && project.ActualDateRange.EndDate > project.PlanDateRange.EndDate) ||
                (project.Status != Status.Done && DateTime.Today > project.PlanDateRange.EndDate))
            {
                projectException = ProjectException.Expired.ToString();
            }
            else if (project.GetTotalActualHour() > project.GetTotalPlanHour())
            {
                projectException = ProjectException.Overtime.ToString();
            }

            var model = new ReportByProjectModel(projectId, project.Name, project.GetTotalPlanHour(), project.GetPlanDevHour(),
                                                 project.GetPlanTestHour(), project.GetTotalActualHour(), project.GetActualDevHour(), project.GetActualTestHour(),
                                                 project.PlanDateRange, project.ActualDateRange, project.Status.ToString(), projectException);

            return(model);
        }
    public override bool Equals(System.Object obj)
    {
        if (obj == null)
        {
            return(false);
        }

        // If parameter is the wrong type then return false.
        ReportByProjectModel p = obj as TwoDPoint;

        if (p == null)
        {
            return(false);
        }

        // Return true if the fields match:
        return(obj.projectID == p.projectID &&
               obj.month == p.month &&
               obj.year == p.year &&
               obj.type == p.type);
    }