private string GetNextMissionStatusByAction(int missionId, string action) { var missionResponse = _missionService.GetMissionbyId(missionId); var groupCode = _missionService.DetermineGroupCode(missionResponse.Mission); var currentMissionStatus = missionResponse.Mission.ConvergenceMasterDataStatus.Code; var nextMissionStatus = currentMissionStatus; switch (action) { case "StartWorkflow": nextMissionStatus = (groupCode == DivisionOpusGroup.VPS && currentMissionStatus != MissionStatusCode.MISSION_STATUS_DRAFT) ? MissionStatusCode.MISSION_STATUS_PEND_APPR_MODIFICATION : MissionStatusCode.MISSION_STATUS_PENDING_APP; break; case "ApproveWorkflow": nextMissionStatus = (groupCode == DivisionOpusGroup.VPS && currentMissionStatus == MissionStatusCode.MISSION_STATUS_PEND_APPR_MODIFICATION) ? MissionStatusCode.MISSION_STATUS_APPROVED_MOD : MissionStatusCode.MISSION_STATUS_APPROVED; break; case "RejectWorkflow": nextMissionStatus = (groupCode == DivisionOpusGroup.VPS && currentMissionStatus == MissionStatusCode.MISSION_STATUS_PEND_APPR_MODIFICATION) ? MissionStatusCode.MISSION_STATUS_REJECTED_MODIFICATION : MissionStatusCode.MISSION_STATUS_DRAFT; break; default: break; } return(nextMissionStatus); }
public virtual ActionResult MissionCreateWorkflow( string operationNumber, int missionId, bool?isVpsResend, string missionRoles, int?missionTypeId) { var missionModel = _viewModelMapperHelper.GetMissionbyId(missionId); var resendVpsFlow = isVpsResend ?? false; var groupCode = resendVpsFlow ? DivisionOpusGroup.VPS : _missionService.DetermineGroupCode(missionModel.Mission); var taskTypeCode = _missionService.DetermineWorkflowCode(groupCode); var validatorsResponse = _k2DataService.GetValidators(taskTypeCode, null); validatorsResponse.Validators = _viewModelMapperHelper .FilterMandatory( validatorsResponse.Validators, missionModel.MissionbyId.Header.Type, missionModel.MissionbyId.IsHaitiCountry, taskTypeCode, missionModel.Mission.Operation.OperationData.OperationType.Code); Logger.GetLogger().WriteDebug( "ViewController", "Method: MissionCreateWorkflow : UserName: "******"MissionsWorkflow", modelTaskView)); }