public virtual ActionResult ChangeState(string operationNumber, string opNum, string state) { var operation = _operationRepository.GetOne(x => x.OperationNumber == opNum); var cmb = CMBusiness.Get(operation); cmb .Context .ActivityPlanItems .Where(x => x.Code.ToLower() != CMConstants.DefaultActivityItems.ON) .ToList() .ForEach(x => x.StatusId = CMConstants.ActivityItemStatus.NotStarted.MasterId); var activityItemAppr = cmb.Context.APPRMilestone; switch (state) { case "draft": var draftCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.DRAFT); operation.OperationData.OperationStageId = draftCode; break; case "preparation": var preparationCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.PREP); operation.OperationData.OperationStageId = preparationCode; break; case "approved": var approvedCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.APPR); activityItemAppr.SetAsCompleted(); operation.OperationData.OperationStageId = approvedCode; break; case "expired": var expiredCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.OVSTGEXP); activityItemAppr.SetAsCompleted(); operation.OperationData.OperationStageId = expiredCode; break; case "closed": var closedCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.CL); activityItemAppr.SetAsCompleted(); operation.OperationData.OperationStageId = closedCode; break; case "cancelled": var cancelledCode = _enumMappingService.GetMappingCode(CSOverallStageEnum.CA); activityItemAppr.SetAsCompleted(); operation.OperationData.OperationStageId = cancelledCode; break; default: break; } cmb.UpdateActivityItem(activityItemAppr); _operationRepository.Update(operation); var message = "Operation State changed to " + state; return(View(viewName: "ChangeOperationState", model: message)); }
private string ChangeStatePCRMilestone( bool published, Operation operation, ActivityItem activityItemInter, ActivityItem activityItemIntra) { var result = string.Empty; // PCRINTER if (activityItemInter != null) { if (activityItemInter.StatusId == CMConstants.ActivityItemStatus.Completed.MasterId && !published) { activityItemInter.StatusId = CMConstants.ActivityItemStatus.NotStarted.MasterId; } else if (activityItemInter.StatusId != CMConstants.ActivityItemStatus.Completed.MasterId && published) { activityItemInter.StatusId = CMConstants.ActivityItemStatus.Completed.MasterId; } if (published) { result = "1- PCR Published: Operation PCRINTER - Complete"; } else { result = "1- PCR Published: Operation PCRINTER - NotStarted"; } CMBusiness.Get(operation).UpdateActivityItem(activityItemInter); } // PCRINTRA if (activityItemIntra != null && activityItemInter != null) { if (activityItemInter.StatusId == CMConstants.ActivityItemStatus.Completed.MasterId && !published) { activityItemIntra.StatusId = CMConstants.ActivityItemStatus.NotStarted.MasterId; } else if (activityItemInter.StatusId != CMConstants.ActivityItemStatus.Completed.MasterId && published) { activityItemIntra.StatusId = CMConstants.ActivityItemStatus.Completed.MasterId; } if (published) { result = "1- PCR Published: Operation PCRINTRA - Complete"; } else { result = "1- PCR Published: Operation PCRINTRA - NotStarted"; } CMBusiness.Get(operation).UpdateActivityItem(activityItemInter); } return(result); }
public virtual ActionResult Index(string operationNumber) { var typeResponse = _operationDataService.GetOperationType(operationNumber); ViewBag.TypeOperation = typeResponse.OperationType; if (!TestMode) { GlobalCommonLogic.SetLastOperation(operationNumber); } var modelOverview = _operationOverviewModelRepository.GetOverviews(operationNumber, Localization.CurrentLanguage); modelOverview.Objetive = _operationOverviewModelRepository.GetObjetive(operationNumber, Localization.CurrentLanguage); modelOverview.BasicData.Responsible = _operationOverviewModelRepository.GetResponsible(operationNumber); ViewBag.OperationNumber = operationNumber; ViewBag.showLoader = true; string[] masterTypeList = new string[] { MasterType.SECTOR }; var masterDataListByTypeCode = _catalogService .GetMasterDataListByTypeCode(typeCodes: masterTypeList); var operationSectorList = _catalogService.GetListMasterData( MasterType.SECTOR, listRepository: masterDataListByTypeCode); modelOverview.BasicData.Sector = GetSectorOverview(modelOverview.BasicData.SectorID, operationSectorList); try { modelOverview.EventsData.PartialEligibilityDate = _clientLoan.GetMinElegibilityDateByLoans(operationNumber); } catch { modelOverview.EventsData.PartialEligibilityDate = new DateTime(); } var attributes = _operationDataService.GetAttributesBasicResponse(operationNumber); if (!TestMode) { ViewBag.IsAppr = CMBusiness.Get().Context.APPRMilestone.IsCompleted(false); } ViewBag.FormBasicAttributes = attributes.IsValid ? attributes.Attributes.FormAttributes : new FormDataViewModel(); ViewBag.operationRelated = _overviewService.GetRelation(operationNumber); ViewBag.EventData = _overviewService.GetEventData(operationNumber); return(View(modelOverview)); }
public virtual ActionResult MissionCompleteView(int missionId, int?ispartial) { ViewBag.New = false; var missionResponse = _viewModelMapperHelper.GetMissionbyId(missionId); if (!missionResponse.IsValid) { throw new Exception(missionResponse.ErrorMessage); } var model = missionResponse.MissionbyId; ViewBag.OrganizationalUnit = model.Header.OrganizationalUnit; ViewBagMission(model.operationNumber); var isACTOperation = _viewModelMapperHelper.IsOperationType(model.operationNumber, OperationType.ACT); SetMissionPermission(isACTOperation); string codeStatusMission = missionResponse.Mission.ConvergenceMasterDataStatus.Code; if (codeStatusMission == MissionStatusCode.MISSION_STATUS_CANCELLED || codeStatusMission == MissionStatusCode.MISSION_STATUS_POSTPONED) { model.IsRead = codeStatusMission == MissionStatusCode.MISSION_STATUS_CANCELLED || MissionPostponedAllowedToRead(codeStatusMission); } var activityItem = new CMBusiness(model.operationNumber) .GetActivityItem(CMConstants.DefaultActivityItems.ESD1); model.Header.HasActivityItemESD1 = activityItem != null; var groupCode = _missionService.DetermineGroupCode(missionResponse.Mission); model.Header.IsGroupCodeVps = groupCode == DivisionOpusGroup.VPS; var workflowTypeCode = _missionService.DetermineWorkflowCode(groupCode); var workflowActive = _missionService.HasWorkflowActive( model.operationNumber, missionId, workflowTypeCode); if (workflowActive.IsValid) { model.Header.HasWorkflowActive = workflowActive.HasCondition; } if (ispartial == null) { return(View(model)); } return(PartialView("Partials/MissionPage", model)); }
public virtual ActionResult SetExpiredStage(string operationNumber) { var message = string.Empty; var operation = _operationRepository.GetOne(x => x.OperationNumber == operationNumber); var cmNotStared = _enumMappingService.GetMasterData <CSMilestoneStateEnum>(CSMilestoneStateEnum.NotStarted); var cmComplete = _enumMappingService.GetMasterData <CSMilestoneStateEnum>(CSMilestoneStateEnum.Completed); var cmNotStaredModel = new MasterDataModel() { Code = cmNotStared.Code, MasterId = cmNotStared.MasterDataId, MasterTypeId = cmNotStared.MasterType.MasterTypeId, Name = cmNotStared.NameEn, TypeName = cmNotStared.MasterType.Type }; var cmCompleteModel = new MasterDataModel() { Code = cmComplete.Code, MasterId = cmComplete.MasterDataId, MasterTypeId = cmComplete.MasterType.MasterTypeId, Name = cmComplete.NameEn, TypeName = cmComplete.MasterType.Type }; if (operation != null) { var cmb = CMBusiness.Get(operation); var activityItems = cmb.Context.ActivityPlanItems; foreach (var activityItem in activityItems) { activityItem.EndDate = null; activityItem.StartDate = null; activityItem.StatusId = CMConstants.ActivityItemStatus.NotStarted.MasterId; cmb.UpdateActivityItem(activityItem); } var transMilestone = cmb.Context.GetActivityItem("CSCW"); transMilestone.EndDate = null; transMilestone.StartDate = null; transMilestone.StatusId = CMConstants.ActivityItemStatus.Completed.MasterId; cmb.UpdateActivityItem(transMilestone); transMilestone = cmb.Context.GetActivityItem("CSVP"); transMilestone.EndDate = null; transMilestone.StartDate = null; transMilestone.StatusId = CMConstants.ActivityItemStatus.Completed.MasterId; cmb.UpdateActivityItem(transMilestone); message = "Operation " + operationNumber + " is in Expired Stage."; } else { message = "Operation " + operationNumber + " doesn´t exist."; } return(View("FakeLifeCycle", model: message)); }
public virtual ActionResult IndexOperationBudget(string operationNumber, string year) { var stageCode = CMBusiness.Get(IDBContext.Current.Operation).Context.APPRMilestone .IsCompleted(false) ? OperationBudgetValues.OPERATION_PHASE_EXECUTION : OperationBudgetValues.OPERATION_PHASE_PREPARATION; string stage = stageCode == OperationBudgetValues.OPERATION_PHASE_EXECUTION ? Localization.GetText("TCP.FirmProcurement.Tabs.Execution") : Localization.GetText("TCP.FirmProcurement.Tabs.Preparation"); var service = Globals.Resolve <ISPOperationBudget>(); var responseYears = service.GetSpYearsByOperationNumber( new GetSPYearsByOperationNumberRequest { OperationNumber = operationNumber }); if (!responseYears.IsValid) { throw new Exception(responseYears.ErrorMessage); } var responseConvert = service.ConvertListItems(responseYears.Years); var selectYear = string.IsNullOrEmpty(year) ? responseYears.Years.FirstOrDefault() : Convert.ToInt32(year); var response = service.GetBudget(new PSPBudgetRequest { Year = selectYear, OperationNumber = operationNumber, Stage = stage, StageCode = stageCode }); if (!response.IsValid) { throw new Exception(response.ErrorMessage); } var result = new SPOperationBudgetViewModel { SpOperationBudgetDto = response.PreparationOperationBudget, SpTotalValuesDto = response.SpTotalValuesDto, SelectedYear = selectYear.ToString(), Years = responseConvert, SupervisionPlanDashboardRoute = ConfigurationServiceFactory .Current.GetApplicationSettings().SupervisionPlanDashboardRoute }; return(PartialView(result)); }
public virtual ActionResult Index() { var cmBusiness = new CMBusiness(IDBContext.Current.Operation); if (cmBusiness.Context.HasActivityPlan && cmBusiness.Context.ActivityPlan.CaseTemplateId.HasValue) { return(RedirectToAction("ActivityItems")); } else { return(RedirectToAction("SelectTemplate")); } }
public virtual ActionResult EditPCR(string opNum, bool published, bool required) { var message = string.Empty; if (opNum == null || opNum == string.Empty) { message = "Operation Number is Empty"; return(View(viewName: "TestPCR", model: message)); } var operation = _operationRepository.GetOne(x => x.OperationNumber == opNum); if (operation == null) { message = "Operation Null"; return(View(viewName: "TestPCR", model: message)); } if (!OperationTypeHelper.GetOperationTypes(operation.OperationId).Contains(OperationType.LON) && !OperationTypeHelper.GetOperationTypes(operation.OperationId).Contains(OperationType.GUA) && !OperationTypeHelper.GetOperationTypes(operation.OperationId).Contains(OperationType.IGR)) { message = "Operation Not SG"; return(View(viewName: "TestPCR", model: message)); } var cmb = CMBusiness.Get(operation); var activityItemInter = cmb.GetActivityItem(CMConstants.DefaultActivityItems.PCRINTER); var activityItemIntra = cmb.GetActivityItem(CMConstants.DefaultActivityItems.PCRINTRA); if (activityItemInter == null && activityItemIntra == null) { message = "Operation Not Have PCRINTRA/PCRINTER"; return(View(viewName: "TestPCR", model: message)); } var message1 = ChangeStatePCRMilestone(published, operation, activityItemInter, activityItemIntra); var message2 = ChangeWorkflowRequired(operation, required); if (published && required) { var message3 = CreateAverageScore(operation); } //Test message = TestPCRForDebugg(operation); return(View(viewName: "TestPCR", model: "Result Value: " + message)); }
public virtual ActionResult CreateActivityPlan(int selectedTemplate) { var cmb = CMBusiness.Get(IDBContext.Current.Operation); var items = cmb.Context.ActivityPlanItems; int activityPlanId = cmb.Context.ActiveActivityPlan.Id; var cofinancingService = Globals.Resolve <ICofinancingService>(); var cofinCounterpartFundDetailIds = GetCofinCounterpartFundDetail(cofinancingService, activityPlanId); if (cofinCounterpartFundDetailIds.Any()) { cofinancingService.UpdateActivityPlan(cofinCounterpartFundDetailIds, null); } cmb.DeleteCurrentActivityPlan(); int newActivityPlanId = cmb.CreateActivityPlan(selectedTemplate, items, true).Id; if (cofinCounterpartFundDetailIds.Any()) { cofinancingService .UpdateActivityPlan(cofinCounterpartFundDetailIds, newActivityPlanId); } cmb = CMBusiness.Get(IDBContext.Current.Operation); if (cmb.Context.LastCompletedActivityItem != null) { cmb.UpdateActivityItem(cmb.Context.LastCompletedActivityItem, true); } UpdateActivityPlanCompAppr(cmb); UpdateReferencesToNewActivityPlan( cmb.Context.ActiveActivityPlan.OperationId, newActivityPlanId, activityPlanId); return(Content("ok")); }
public virtual ActionResult AssociateTemplate(string operationNumber) { var message = string.Empty; var operation = _operationRepository.GetOne(x => x.OperationNumber == operationNumber); if (operation != null) { var cmb = new CMBusiness(operation); var items = cmb.Context.ActivityPlanItems; cmb.DeleteCurrentActivityPlan(); cmb.CreateActivityPlan(76, items, true); message = "Activity Plan 'Country Strategy' created for operation " + operationNumber; } else { message = "Operation " + operationNumber + " doesn´t exist."; } return(View("FakeLifeCycle", model: message)); }
private void UpdateActivityPlanCompAppr(CMBusiness cmb) { if (CheckActivityPlanCode(cmb.Context.ActivityPlan.CaseTemplate.Code)) { var demBusinessService = Globals.Resolve <IDEMService>(); var isDemRequired = demBusinessService.IsDEMRequired(IDBContext.Current.Operation); if (isDemRequired) { if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.DEMV)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.DEMV, CMConstants.ActivityItemStatus.NotStarted.MasterId); } } var operationFund = cmb.Context.Operation.FundOperation; if (operationFund != null && operationFund.Any()) { if (operationFund.Any(q => q.Fund.FundCode == FundCode.SCX || q.Fund.FundCode == FundCode.CTF)) { if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CGCM)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CGCM, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.FASIP)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.FASIP, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.VBFC)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.VBFC, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CERT)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CERT, CMConstants.ActivityItemStatus.NotStarted.MasterId); } } if (operationFund.Any(q => q.Fund.FundCode == FundCode.CHC || q.Fund.FundCode == FundCode.KIF)) { if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CGCM)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CGCM, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.SPPD)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.SPPD, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.FAS)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.FAS, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.VBFC)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.VBFC, CMConstants.ActivityItemStatus.NotStarted.MasterId); } if (!cmb.Context.ActivityPlan.ActivityItems.Any(q => q.Code == CMConstants.DefaultActivityItems.CERT)) { cmb.InsertSubTemplate(CMConstants.DefaultActivityItems.CERT, CMConstants.ActivityItemStatus.NotStarted.MasterId); } } } } }