Exemplo n.º 1
0
        public void OnDoneEntry()
        {
            AdminNotification.Done(CurrentProject);
            InvestorNotification.Done(CurrentProject);

            ProcessMoving(ProjectWorkflow.State.Done, "Проект завершен");
        }
        public void OnRealizationEntry()
        {
            InvestorNotification.Realization(CurrentProject);
            AdminNotification.Realization(CurrentProject);

            ProcessMoving(ProjectWorkflow.State.Realization, "Проект теперь реализуется");
        }
Exemplo n.º 3
0
        public void OnInvestorApproveEntry()
        {
            CurrentProject = Repository.GetOne <Project>(p => p._id == CurrentProject._id);
            if (CurrentProject.WorkflowState.CurrentState == ProjectWorkflow.State.OnMap)
            {
                ProcessMoving(ProjectWorkflow.State.InvestorApprove, "Переход с стадии одобрения инвестора");
            }

            AdminNotification.InvestorResponsed(CurrentProject);
            UserNotification.InvestorResponsed(CurrentProject);
            InvestorNotification.InvestorResponsed(CurrentProject);
        }
Exemplo n.º 4
0
        public void OnPlanCreatingEntry()
        {
            if (CurrentProject.WorkflowState.CurrentState == ProjectWorkflow.State.PlanCreating)
            {
                AdminNotification.PlanCreatingUpdate(CurrentProject);
            }
            else
            {
                InvestorNotification.MinEconomyResponsed(CurrentProject);
            }

            ProcessMoving(ProjectWorkflow.State.PlanCreating, "проект перешел в стадию создания дорожной карты");
        }
        public void OnWaitComissionFixesEntry()
        {
            if (CurrentProject.WorkflowState.CurrentState == ProjectWorkflow.State.WaitComissionFixes)
            {
                AdminNotification.UpdateComissionFix(CurrentProject);
                InvestorNotification.UpdateComissionFix(CurrentProject);
            }
            else
            {
                InvestorNotification.ComissionFixNeeded(CurrentProject);
            }

            ProcessMoving(ProjectWorkflow.State.WaitComissionFixes, "Обновление состояния");
        }
        public void OnWaitIspolcomFixesEntry()
        {
            if (CurrentProject.WorkflowState.CurrentState == ProjectWorkflow.State.WaitIspolcomFixes)
            {
                AdminNotification.UpdateIspolcomFix(CurrentProject);
                InvestorNotification.UpdateIspolcomFix(CurrentProject);
            }
            else
            {
                InvestorNotification.IspolcomFixNeeded(CurrentProject);
            }

            ProcessMoving(ProjectWorkflow.State.WaitIspolcomFixes, "Обновление состояния оиждает исправлений");
        }
Exemplo n.º 7
0
        public void OnDocumentSendingEntry()
        {
            if (CurrentProject.WorkflowState.CurrentState == ProjectWorkflow.State.DocumentSending)
            {
                InvestorNotification.DocumentUpdate(CurrentProject);
                AdminNotification.DocumentUpdate(CurrentProject);
            }
            else
            {
                CurrentProject.InvestorUser = CurrentProject.Responses.Find(r => r.IsVerified).InvestorEmail;
                InvestorNotification.ProjectAproved(CurrentProject);
            }

            ProcessMoving(ProjectWorkflow.State.DocumentSending, "Проект в стадии сбора документов");
        }
Exemplo n.º 8
0
        public void OnOnComissionEntry()
        {
            Comission comission =
                Repository.All <Comission>(c => c.CommissionTime > DateTime.Now && c.Type == ComissionType.Comission)
                .First();

            if (comission.ProjectIds == null)
            {
                comission.ProjectIds = new List <string>();
            }
            if (!comission.ProjectIds.Contains(CurrentProject._id))
            {
                comission.ProjectIds.Add(CurrentProject._id);
                Repository.Update(comission);
            }

            InvestorNotification.Comission(comission, CurrentProject);
            AdminNotification.Comission(comission, CurrentProject);
            ProcessMoving(ProjectWorkflow.State.OnComission, "Проект ожидает комиссию");
        }
        public void OnOnIspolcomEntry()
        {
            Comission comission =
                Repository.All <Comission>(c => c.CommissionTime > DateTime.Now && c.Type == ComissionType.Ispolcom)
                .First();

            if (comission.ProjectIds == null)
            {
                comission.ProjectIds = new List <string>();
            }

            if (!comission.ProjectIds.Contains(CurrentProject._id))
            {
                comission.ProjectIds.Add(CurrentProject._id);
                Repository.Update(comission);
            }

            AdminNotification.OnIspolcom(comission, CurrentProject);
            InvestorNotification.OnIspolcom(comission, CurrentProject);
            ProcessMoving(ProjectWorkflow.State.OnIspolcom, "Переход в состояние на исполкоме");
        }
Exemplo n.º 10
0
 public void OnDocumentSendingExit()
 {
     InvestorNotification.DocumentUpdate(CurrentProject);
 }
 public void OnWaitComissionEntry()
 {
     InvestorNotification.WaitComission(CurrentProject);
     AdminNotification.WaitComission(CurrentProject);
     ProcessMoving(ProjectWorkflow.State.WaitComission, "Проект ожидает комиссию");
 }
 public void OnInMinEconomyEntry()
 {
     InvestorNotification.InMinEconomy(CurrentProject);
     ProcessMoving(ProjectWorkflow.State.InMinEconomy,
                   "Проект направлен на рассмотрение в министерство эконмомики");
 }
 public void OnInvolvedOrganizationsEntry()
 {
     InvestorNotification.InvolvedOrganizationUpdate(CurrentProject);
     AdminNotification.InvolvedOrganizationUpdate(CurrentProject);
     ProcessMoving(ProjectWorkflow.State.InvolvedOrganizations, "Обход заинтерисованных организаций");
 }
Exemplo n.º 14
0
 public void OnWaitIspolcomEntry()
 {
     InvestorNotification.WaitIspolcom(CurrentProject);
     AdminNotification.WaitIspolcom(CurrentProject);
     ProcessMoving(ProjectWorkflow.State.WaitIspolcom, "Проект ожидает исполнительный комитет");
 }