public virtual ActionResult DeleteYear(int resultsMatrixId, int impactId, int year) { int code = 0; var resultsMatrix = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); try { ClientResultsMatrix.DeleteYear(resultsMatrix, new OutcomeIndicatorYearPlanModel() { Year = year }); code = 505; } catch (Exception) { code = 495; throw; } return(RedirectToAction("Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code })); }
public virtual ActionResult DeleteDisaggregation(int resultsMatrixId, int impactDisaggregationId) { int code = 0; try { OutcomeDisaggregationModel indicatorModel = ClientResultsMatrix.FindOneOutcomeDisaggregationModel(new OutcomeDisaggregationSpecification() { OutcomeDisaggregationId = impactDisaggregationId }); if (indicatorModel != null) { ClientResultsMatrix.DeleteDissagregation(indicatorModel); code = 504; } else { code = 496; } } catch (Exception) { code = 496; } var resultsMatrix = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); return(RedirectToAction("Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code = code })); }
public virtual ActionResult ReassignIndicator(CustomReassignOutcomeIndicatorModel reassignModel) { int code = 0; try { OutcomeIndicatorModel indicatorModel = ClientResultsMatrix.FindOneOutcomeIndicatorModel( new OutcomeIndicatorSpecification { OutcomeIndicatorId = reassignModel.OutcomeIndicatorId }); indicatorModel.AccessedByAdministrator = IDBContext.Current.HasRole(Role.RM_ADMINISTRATOR); indicatorModel.IsThirdInterval = reassignModel.IsThirdInterval; indicatorModel.IntervalId = reassignModel.IntervalId; OutcomeModel currentImpactModel = ClientResultsMatrix.FindOneOutcomeModel( new OutcomeSpecification { OutcomeId = indicatorModel.OutcomeId }); OutcomeModel newImpactModel = ClientResultsMatrix.FindOneOutcomeModel( new OutcomeSpecification { OutcomeId = reassignModel.ImpactId }); if (indicatorModel != null & currentImpactModel != null && newImpactModel != null) { ClientResultsMatrix.ReassignIndicator( currentImpactModel, newImpactModel, indicatorModel, IDBContext.Current.UserName); code = 503; } } catch (Exception) { code = 497; } _cacheData.Remove(_outcomeIndicatorCacheName, System.Web.Caching.CacheItemRemovedReason.Removed); _cacheData.Remove(_outcomesCacheName, System.Web.Caching.CacheItemRemovedReason.DependencyChanged); var resultsMatrix = ClientResultsMatrix.FindOneModel( new ResultsMatrixSpecification { ResultsMatrixId = reassignModel.ResultsMatrixId }); return(RedirectToAction( "Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrix.ResultsMatrixId, code = code })); }
public virtual ActionResult Delete( int resultsMatrixId, int impactIndicatorId, int intervalId, bool accessedByAdmin, bool isThirInterval) { int code = 0; var resultsMatrix = ClientResultsMatrix.FindOneModel( new ResultsMatrixSpecification { ResultsMatrixId = resultsMatrixId }); try { ImpactIndicatorModel indicatorModel = ClientResultsMatrix.FindOneImpactIndicatorModel( new ImpactIndicatorSpecification() { ImpactIndicatorId = impactIndicatorId }); if (indicatorModel != null) { IntervalModel interval = new IntervalModel() { IntervalId = intervalId }; ClientResultsMatrix.DeleteImpactIndicator( new ResultsMatrixModel() { ResultsMatrixId = resultsMatrixId, IsThirdInterval = isThirInterval, AccessedByAdministrator = accessedByAdmin, Interval = interval }, indicatorModel, IDBContext.Current.UserName); code = 502; } } catch (Exception) { code = 498; } return(RedirectToAction( "Edit", "Impacts", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code = code })); }
public virtual ActionResult DeleteYear(int resultsMatrixId, int impactId, int year) { int code = 0; var resultsMatrix = ClientResultsMatrix .FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); try { ClientResultsMatrix.DeleteYear( resultsMatrix, new OutcomeIndicatorYearPlanModel() { Year = year }); code = 505; } catch (Exception) { code = 495; throw; } bool isAjaxRequest = new SysWeb.HttpRequestWrapper(SysWeb.HttpContext.Current.Request) .IsAjaxRequest(); if (isAjaxRequest) { return(Json(new { IsValid = true, Redirect = Url.Action("Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code }) }, JsonRequestBehavior.AllowGet)); } return(RedirectToAction("Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code })); }
public virtual ActionResult Delete(CustomDeleteOutcomeIndicatorModel deletedModel) { int code = 0; var resultsMatrix = ClientResultsMatrix.FindOneModel( new ResultsMatrixSpecification { ResultsMatrixId = deletedModel.ResultsMatrixId }); try { OutcomeIndicatorModel indicatorModel = ClientResultsMatrix.FindOneOutcomeIndicatorModel( new OutcomeIndicatorSpecification { OutcomeIndicatorId = deletedModel.ImpactId }); if (indicatorModel != null) { ClientResultsMatrix.DeleteOutcomeIndicator( new ResultsMatrixModel { ResultsMatrixId = deletedModel.ResultsMatrixId, IsThirdInterval = deletedModel.IsThirdInterval, AccessedByAdministrator = deletedModel.AccessedByAdministrator, Interval = new IntervalModel { IntervalId = deletedModel.IntervalId } }, indicatorModel, IDBContext.Current.UserName); code = 502; } } catch (Exception e) { Logger.GetLogger().WriteError("OutcomeIndicatorController", "Error when delete indicator", e); code = 498; } _cacheData.Remove(_outcomeIndicatorCacheName, System.Web.Caching.CacheItemRemovedReason.Removed); _cacheData.Remove(_outcomesCacheName, System.Web.Caching.CacheItemRemovedReason.DependencyChanged); return(RedirectToAction( "Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrix.ResultsMatrixId, code = code })); }
public virtual ActionResult Delete(CustomDeleteOutcomeIndicatorModel deletedModel) { int code = 0; var resultsMatrix = ClientResultsMatrix.FindOneModel( new ResultsMatrixSpecification { ResultsMatrixId = deletedModel.ResultsMatrixId }); try { OutcomeIndicatorModel indicatorModel = ClientResultsMatrix.FindOneOutcomeIndicatorModel( new OutcomeIndicatorSpecification { OutcomeIndicatorId = deletedModel.ImpactId }); if (indicatorModel != null) { ClientResultsMatrix.DeleteOutcomeIndicator( new ResultsMatrixModel { ResultsMatrixId = deletedModel.ResultsMatrixId, IsThirdInterval = deletedModel.IsThirdInterval, AccessedByAdministrator = deletedModel.AccessedByAdministrator, Interval = new IntervalModel { IntervalId = deletedModel.IntervalId } }, indicatorModel, IDBContext.Current.UserName); code = 502; } } catch (Exception) { code = 498; } return(RedirectToAction( "Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrix.ResultsMatrixId, code = code })); }
public virtual ActionResult DeleteDisaggregation(int resultsMatrixId, int impactDisaggregationId) { // Define Ajax response int code = 0; try { // Retrieve ImpactIndicator ImpactDisaggregationModel indicatorModel = ClientResultsMatrix.FindOneImpactDisaggregationModel(new ImpactDisaggregationSpecification() { ImpactDisaggregationId = impactDisaggregationId }); if (indicatorModel != null /*&& elementTypeModel != null && matrixChangeTypeModel != null*/) { bool deleted = ClientResultsMatrix.DeleteDisaggregation(indicatorModel); ImpactDisaggregationModel deletedModel = ClientResultsMatrix.FindOneImpactDisaggregationModel(new ImpactDisaggregationSpecification() { ImpactDisaggregationId = impactDisaggregationId }); if (deleted == true && deletedModel == null) { code = 504; } else { code = 496; } } else { code = 496; } } catch (Exception) { code = 496; } var resultsMatrix = ClientResultsMatrix.FindOneModel(new IDB.MW.Domain.Contracts.Specifications.ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); return(RedirectToAction("Edit", "Impacts", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code = code })); }
public virtual ActionResult Reassign(int resultsMatrixId, int impactId, int impactIndicatorId, int intervalId, bool accessedByAdmin, bool isThirInterval) { ResultsMatrixModel resultModel = ClientResultsMatrix.FindOneModel(new IDB.MW.Domain.Contracts.Specifications.ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); // Get Interval var interval = ClientResultsMatrix.GetResultsMatrixModel(new OperationModel() { OperationNumber = resultModel.Operation.OperationNumber }).Interval; // Get all impacts associated to the current ResultsMatrix List <ImpactModel> impacts = resultModel.Impacts; // Set statement data ImpactModel currentImpact = impacts.Where(i => i.ImpactId == impactId).SingleOrDefault <ImpactModel>(); // Remove current impact impacts.RemoveAll(i => i.ImpactId == impactId); ViewData["Statement"] = currentImpact.Statement; ViewData["Definition"] = currentImpact.ImpactIndicators.Where(ii => ii.ImpactIndicatorId == impactIndicatorId).SingleOrDefault <ImpactIndicatorModel>().Definition; ViewData["impactIndicatorId"] = impactIndicatorId; ViewData["resultsMatrixId"] = resultsMatrixId; ViewData["thirdIntervalReassignIndicatorMessage"] = Localization.GetText("TCM.RCMW.RegisterChangesMany.TextMessage"); ViewData["accessedByAdmin"] = accessedByAdmin; ViewData["isThirInterval"] = isThirInterval; ViewData["intervalCategory"] = intervalId; resultModel.Impacts = null; // Set the imapcts to set in listbox resultModel.Impacts = impacts; return(PartialView(impacts)); }
public virtual ActionResult EditDetail(int impactIndicatorId) { OutcomeIndicatorModel indicatorModel = ClientResultsMatrix.FindOneOutcomeIndicatorModel(new OutcomeIndicatorSpecification() { OutcomeIndicatorId = impactIndicatorId }); OutcomeModel impactModel = ClientResultsMatrix.FindOneOutcomeModel(new OutcomeSpecification() { OutcomeId = indicatorModel.OutcomeId }); bool isLinked = (indicatorModel.PredefinedIndicator == null) ? false : true; // Start third interval validation var operationNumber = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = impactModel.ResultsMatrixId }).Operation.OperationNumber; // Check if the administrator is accessing var accessedByAdministrator = IDBContext.Current.HasRole(Role.RM_ADMINISTRATOR); var resultsMatrix = ClientResultsMatrix.GetResultsMatrixModel(new OperationModel() { OperationNumber = operationNumber, AccessedByAdministrator = accessedByAdministrator }); // End third interval validation CustomEditOutcomeIndicatorModel editImpactIndicatoModel = new CustomEditOutcomeIndicatorModel { impact = impactModel, impactIndicator = indicatorModel, IsLinkedToPredefinedIndicator = isLinked, IntervalId = resultsMatrix.Interval.IntervalId, AccessedByAdministrator = accessedByAdministrator, IsThirdInterval = resultsMatrix.IsThirdInterval, OperationNumber = operationNumber, IsTcmModule = false }; return(View(editImpactIndicatoModel)); }
public virtual ActionResult EditDetail(int impactIndicatorId) { ImpactIndicatorModel indicatorModel = ClientResultsMatrix.FindOneImpactIndicatorModel(new ImpactIndicatorSpecification() { ImpactIndicatorId = impactIndicatorId }); ImpactModel impactModel = ClientResultsMatrix.FindOneImpactModel(new ImpactSpecification() { ImpactId = indicatorModel.ImpactId }); bool isLinked = (indicatorModel.PredefinedIndicator == null) ? false : true; // Start third interval validation var operationNumber = ClientResultsMatrix.FindOneModel(new IDB.MW.Domain.Contracts.Specifications.ResultsMatrixSpecification() { ResultsMatrixId = impactModel.ResultsMatrixId }).Operation.OperationNumber; // Check if the administrator is accessing var accessedByAdministrator = true; var resultsMatrix = ClientResultsMatrix.GetResultsMatrixModel(new OperationModel() { OperationNumber = operationNumber, AccessedByAdministrator = accessedByAdministrator }); // End third interval validation CustomEditImpactIndicatoModel editImpactIndicatoModel = new CustomEditImpactIndicatoModel { impact = impactModel, impactIndicator = indicatorModel, IsLinkedToPredefinedIndicator = isLinked, IntervalId = resultsMatrix.Interval.IntervalId, AccessedByAdministrator = accessedByAdministrator, IsThirdInterval = resultsMatrix.IsThirdInterval, OperationNumber = operationNumber }; return(View(editImpactIndicatoModel)); }
public virtual ActionResult DeleteDisaggregation(int resultsMatrixId, int impactDisaggregationId) { // Define Ajax response int code = 0; try { // Retrieve ImpactIndicator OutcomeDisaggregationModel indicatorModel = ClientResultsMatrix.FindOneOutcomeDisaggregationModel(new OutcomeDisaggregationSpecification() { OutcomeDisaggregationId = impactDisaggregationId }); if (indicatorModel != null) { ClientResultsMatrix.DeleteDissagregation(indicatorModel); code = 504; } else { code = 496; } } catch (Exception) { code = 496; } _cacheData.Remove(_outcomeIndicatorCacheName, System.Web.Caching.CacheItemRemovedReason.Removed); _cacheData.Remove(_outcomesCacheName, System.Web.Caching.CacheItemRemovedReason.DependencyChanged); var resultsMatrix = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); return(RedirectToAction("Edit", "Outcomes", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code = code })); }
public virtual ActionResult Detail(int resultsMatrixId, int impactId, int impactIndicatorId) { OutcomeModel impactModel = ClientResultsMatrix.FindOneOutcomeModel(new OutcomeSpecification() { OutcomeId = impactId }); var impactIndicatorModel = impactModel.OutcomeIndicators.Where(ii => ii.OutcomeIndicatorId == impactIndicatorId).SingleOrDefault <OutcomeIndicatorModel>(); var resultModel = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); impactModel.OutcomeIndicators.Clear(); impactModel.OutcomeIndicators.Add(impactIndicatorModel); ViewData["operationNumber"] = resultModel.Operation.OperationNumber; var StateDraftId = ClientConvergenceMasterData.GetMasterDataId("VALIDATION_STAGE", "PMI_DRAFT"); var isDraft = false; if (resultModel.ValidationStageId == StateDraftId) { isDraft = true; } ViewBag.isDraft = isDraft; ViewBag.isEditable = ClientResultsMatrix.GetLightResultsMatrixModel(new ResultsMatrixModel() { ResultsMatrixId = resultModel.ResultsMatrixId }).isEditable; return(View(impactModel)); }
public virtual ActionResult Reassign(int resultsMatrixId, int impactId, int impactIndicatorId) { // Check if the administrator is accessing var accessedByAdministrator = IDBContext.Current.HasRole(Role.RM_ADMINISTRATOR); // Get results matrix with interval data associated to administrator var lightResultModel = ClientResultsMatrix.GetLightResultsMatrixModel(new ResultsMatrixModel() { ResultsMatrixId = resultsMatrixId, AccessedByAdministrator = accessedByAdministrator }); // Set impact data OutcomeModel currentImpact = ClientResultsMatrix.FindOneOutcomeModel(new OutcomeSpecification() { OutcomeId = impactId }); // Get outcomes IDB.MW.Domain.Models.Architecture.ResultMatrix.Outcomes.ResultsMatrixModel resultModel = ClientResultsMatrix.FindOneModel(new ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); List <OutcomeModel> outcomes = resultModel.Outcomes; // Remove current outcome outcomes.RemoveAll(i => i.OutcomeId == impactId); // Set reassign model properties CustomReassignOutcomeIndicatorModel reassignModel = new CustomReassignOutcomeIndicatorModel() { Statement = currentImpact.Statement, Definition = currentImpact.OutcomeIndicators.Where(ii => ii.OutcomeIndicatorId == impactIndicatorId).SingleOrDefault <OutcomeIndicatorModel>().Definition, OutcomeIndicatorId = impactIndicatorId, ResultsMatrixId = lightResultModel.ResultsMatrixId, AccessedByAdministrator = accessedByAdministrator, IsThirdInterval = lightResultModel.IsThirdInterval, ImpactId = impactId, Outcomes = outcomes, IntervalId = lightResultModel.Interval.IntervalId }; return(PartialView(reassignModel)); }
public virtual ActionResult ReassignIndicator( int resultsMatrixId, int impactId, int impactIndicatorId, int intervalId, bool accessedByAdmin, bool isThirInterval) { int code = 0; try { ImpactIndicatorModel indicatorModel = ClientResultsMatrix.FindOneImpactIndicatorModel( new ImpactIndicatorSpecification() { ImpactIndicatorId = impactIndicatorId }); ImpactModel currentImpactModel = ClientResultsMatrix.FindOneImpactModel( new ImpactSpecification() { ImpactId = indicatorModel.ImpactId }); ImpactModel newImpactModel = ClientResultsMatrix.FindOneImpactModel( new ImpactSpecification() { ImpactId = impactId }); if (indicatorModel != null && currentImpactModel != null && newImpactModel != null) { IntervalModel interval = new IntervalModel() { IntervalId = intervalId }; ClientResultsMatrix.ReassignIndicator( new ResultsMatrixModel() { ResultsMatrixId = resultsMatrixId, AccessedByAdministrator = accessedByAdmin, IsThirdInterval = isThirInterval, Interval = interval }, currentImpactModel, newImpactModel, indicatorModel, IDBContext.Current.UserName); code = 503; } } catch (Exception) { code = 497; } var resultsMatrix = ClientResultsMatrix.FindOneModel(new IDB.MW.Domain.Contracts.Specifications.ResultsMatrixSpecification() { ResultsMatrixId = resultsMatrixId }); _cacheData.Remove(_impactsIndicatorCacheName, System.Web.Caching.CacheItemRemovedReason.DependencyChanged); return(RedirectToAction("Edit", "Impacts", new { operationId = resultsMatrix.OperationId, resultsMatrixId = resultsMatrixId, code = code })); }