/// <summary> /// Save Lost Times from Mobile /// </summary> /// <param name="historyID">Jop History ID</param> private void SaveHistoryLostTimes(int historyID, int jobInstanceNumber, EngineerFeedback jobFeedback) { if (jobFeedback != null && jobFeedback.LostTime != null) { FinalBuild.DataAccess dataAccess = new DataAccess(); ArrayList colParameters = new ArrayList(); try { foreach (LostTimeUpdate lostTimeUpdate in jobFeedback.LostTime) { if (lostTimeUpdate.Reason != null) // If it is null then it is bad data { // Job History ID colParameters.Add(new SqlParameter("@JobHistoryID", historyID)); // Lost Time ID colParameters.Add(new SqlParameter("@LostTimeID", lostTimeUpdate.Reason.ID)); // Lost Time Description ... check for null value as not mandatory string description = lostTimeUpdate.Comments != null ? lostTimeUpdate.Comments : ""; colParameters.Add(new SqlParameter("@Description", description)); // Lost Time Minutes colParameters.Add(new SqlParameter("@Minutes", lostTimeUpdate.Minutes)); // Job Instance Number colParameters.Add(new SqlParameter("@JobInstanceNumber", jobInstanceNumber)); // Update dataAccess.ExecuteSQL("insJobLostTime", (SqlParameter[])colParameters.ToArray(typeof(SqlParameter))); // Clear Parameters ready for next Lost Time colParameters.Clear(); } } } catch (Exception exception) { throw exception; } finally { dataAccess = null; colParameters = null; } } }
public int UpdateJobHistoryAndLostTime(string userID, int jobInstanceNumber, EngineerFeedback jobFeedback) { int historyID = SaveHistory(userID, jobInstanceNumber, jobFeedback != null && jobFeedback.Travel != null ? jobFeedback.Travel.MileageAtEndOfDay : 0); SaveHistoryLostTimes(historyID, jobInstanceNumber, jobFeedback); return historyID; }