/// <summary> /// Gets CustomTerminology /// </summary> /// <param name="consumerSecretToken"></param> /// <param name="dataAccessToken"></param> /// <param name="version"></param> /// <returns>CustomTerminologyBO</returns> private CustomTerminologyBO GetCustomTerminology(string consumerSecretToken, string dataAccessToken, string apiVersion) { TimeEntryService integrationService = new TimeEntryService(); CustomTerminologyBO customTerminologyBO = new CustomTerminologyBO(); // Calls GetCustomTerminology of Integration layer customTerminologyBO = integrationService.GetCustomTerminology(Constants.CONSUMER_SECRET_TOKEN, UtilityService.DecryptedText(dataAccessToken), apiVersion); return(customTerminologyBO); }
/// <summary> /// Gets CustomTerminology /// </summary> /// <param name="consumerSecretToken"></param> /// <param name="dataAccessToken"></param> /// <param name="version"></param> /// <returns>CustomTerminologyBO</returns> public CustomTerminologyBO GetCustomTerminology(string consumerSecretToken, string dataAccessToken, string version) { // Create uri to hit and make request using Dovico.CommonLibrary CRestApiHelper.MakeAPIRequest method string uri = CRestApiHelper.BuildURI("CustomTerminology", null, version); string result = CRestApiHelper.MakeAPIRequest(uri, "GET", CRestApiHelper.MIME_TYPE_APPLICATION_JSON, string.Empty, consumerSecretToken, dataAccessToken); // Check for errors in return value UtilityService.CheckErrorsInDovicoAPI(result); JavaScriptSerializer objJavaScriptSerializer = new JavaScriptSerializer(); objJavaScriptSerializer.MaxJsonLength = int.MaxValue; // Convert data to CustomTerminologyBO CustomTerminologyBO objJsonResultRootObject = (CustomTerminologyBO)objJavaScriptSerializer.Deserialize(result, typeof(CustomTerminologyBO)); return(objJsonResultRootObject); }
/// <summary> /// For Validating the time entry before saving /// </summary> /// <param name="dataAccessToken"></param> /// <param name="timeEntrySubmissionDetails"></param> /// <returns>ErrorBO</returns> private ErrorBO SubmitValidation(string dataAccessToken, string apiVersion, TimeEntrySubmissionBO timeEntrySubmissionDetails) { ErrorBO error = new ErrorBO(); try { CustomTerminologyBO customTerminology = GetCustomTerminology(Constants.CONSUMER_SECRET_TOKEN, dataAccessToken, apiVersion); // Validate Clientid, ProjectId, TaskId for required if (customTerminology != null) { if (string.IsNullOrEmpty(timeEntrySubmissionDetails.ClientId)) { error.Message = "Please select" + customTerminology.Client.Singular; return(error); } if (string.IsNullOrEmpty(timeEntrySubmissionDetails.ProjectId)) { error.Message = "Please select" + customTerminology.Project.Singular; return(error); } if (string.IsNullOrEmpty(timeEntrySubmissionDetails.TaskId)) { error.Message = "Please select" + customTerminology.Task.Singular; return(error); } } // Check Description for 4000 lenght if (!string.IsNullOrEmpty(timeEntrySubmissionDetails.Description)) { if (timeEntrySubmissionDetails.Description.Length > 4000) { error.Message = "Description cannot be greater than 4000 Characters."; return(error); } } // Check hours for greater than 0 if (!timeEntrySubmissionDetails.CalendarEntry) { if (timeEntrySubmissionDetails.Hours == 0.0) { error.Message = "Please Enter Total Hours"; return(error); } } // If Calendar entry check start/stop time for required and validity if (timeEntrySubmissionDetails.CalendarEntry) { if (string.IsNullOrEmpty(timeEntrySubmissionDetails.StartTime)) { error.Message = "Please Enter Start Time."; return(error); } if (string.IsNullOrEmpty(timeEntrySubmissionDetails.StopTime)) { error.Message = "Please Enter Stop Time."; return(error); } if (!Utility.IsValidTimeFormat(timeEntrySubmissionDetails.StartTime)) { error.Message = "Please enter valid start time."; return(error); } if (!Utility.IsValidTimeFormat(timeEntrySubmissionDetails.StopTime)) { error.Message = "Please enter valid stop time."; return(error); } if (!Utility.IsValidTime(Convert.ToDateTime(timeEntrySubmissionDetails.StartDate.ToShortDateString() + " " + timeEntrySubmissionDetails.StartTime), Convert.ToDateTime(timeEntrySubmissionDetails.EndDate.ToShortDateString() + " " + timeEntrySubmissionDetails.StopTime))) { error.Message = "Stop Time should be greater than Start Time"; return(error); } } return(error); } catch (Exception e) { logger.Log(LogLevel.Error, e); error.Message = e.Message; return(error); } }