diff --git a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/Projects/Queries/ProjectBoardList/ProjectBoardListQueryHandler.cs b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/Projects/Queries/ProjectBoardList/ProjectBoardListQueryHandler.cs index 5a085060..18a52853 100644 --- a/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/Projects/Queries/ProjectBoardList/ProjectBoardListQueryHandler.cs +++ b/ProgramManager/src/Application/GozareshgirProgramManager.Application/Modules/Projects/Queries/ProjectBoardList/ProjectBoardListQueryHandler.cs @@ -23,7 +23,7 @@ public class ProjectBoardListQueryHandler : IBaseQueryHandler x.InitialEstimatedHours > TimeSpan.Zero) + .Where(x => x.InitialEstimatedHours > TimeSpan.Zero && x.Status != TaskSectionStatus.Completed) .Include(x => x.Task) .ThenInclude(x => x.Phase) .ThenInclude(x => x.Project) diff --git a/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Entities/ProjectPhase.cs b/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Entities/ProjectPhase.cs index 539ac278..8d7583bc 100644 --- a/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Entities/ProjectPhase.cs +++ b/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Entities/ProjectPhase.cs @@ -23,6 +23,7 @@ public class ProjectPhase : ProjectHierarchyNode ProjectId = projectId; _tasks = new List(); _phaseSections = new List(); + DeployStatus = ProjectDeployStatus.NoTCompleted; AddDomainEvent(new PhaseCreatedEvent(Id, projectId, name)); } @@ -36,6 +37,8 @@ public class ProjectPhase : ProjectHierarchyNode public DateTime? StartDate { get; private set; } public DateTime? EndDate { get; private set; } public int OrderIndex { get; private set; } + public bool IsArchived { get; set; } + public ProjectDeployStatus DeployStatus { get; set; } #region Task Management @@ -196,4 +199,26 @@ public class ProjectPhase : ProjectHierarchyNode } #endregion + + public void SetArchived() + { + IsArchived = true; + } + public void SetUnarchived() + { + IsArchived = false; + } + public void UpdateDeployStatus(ProjectDeployStatus status) + { + DeployStatus = status; + } +} + +public enum ProjectDeployStatus +{ + NoTCompleted, + PendingDevDeploy, + DevDeployed, + PendingDeploy, + Deployed } diff --git a/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Enums/TaskSectionStatus.cs b/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Enums/TaskSectionStatus.cs index d5208bfb..9e63c1f6 100644 --- a/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Enums/TaskSectionStatus.cs +++ b/ProgramManager/src/Domain/GozareshgirProgramManager.Domain/ProjectAgg/Enums/TaskSectionStatus.cs @@ -6,5 +6,6 @@ public enum TaskSectionStatus ReadyToStart = 1, // آماده شروع InProgress = 2, // درحال انجام Incomplete = 3, // ناتمام شده - Completed = 4 // تکمیل شده + PendingForCompletion = 5, // در انتظار تکمیل + Completed = 5 // تکمیل شده } \ No newline at end of file