//Active Requests To show Fill Daily Timesheet //DailyTimesheets public IActionResult DailyTimesheets() { var userid = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var total_accepted_invitation = _context.ProjectAssignment.Where(x => x.Status == "Accepted").ToList(); List <DailyTimesheetViewModel> daily_timesheets = new List <DailyTimesheetViewModel>(); foreach (var a in total_accepted_invitation) { var dailyTimesheet = new DailyTimesheetViewModel(); if (a.EmployeeId == userid) { dailyTimesheet.ProjectName = _context.Projects.SingleOrDefault(x => x.ProjectId == a.ProjectId).Name; dailyTimesheet.ProjectDescription = _context.Projects.SingleOrDefault(x => x.ProjectId == a.ProjectId).Description; dailyTimesheet.ProjectId = _context.Projects.SingleOrDefault(x => x.ProjectId == a.ProjectId).ProjectId; daily_timesheets.Add(dailyTimesheet); } } return(View(daily_timesheets)); }
private async void SendToOffice_Clicked(object sender, EventArgs e) { SaveDailyTimesheetToDatabase(false); var isConfirmed = false; var helpers = new Helpers(); if (helpers.IsDeviceOnline()) { isConfirmed = await DisplayAlert("Confirm", "Are you sure you want to submit this daily timesheet?", "Yes", "Cancel"); } else { ResetActivityIndicator(); await DisplayAlert("No Internet Connection", "You need to be connected to the internet in order to submit this daily timesheet.", "Acknowledge"); } if (isConfirmed) { var dailyTimesheet = App.DailyTimesheetsDatabase.GetDailyTimesheetById(Convert.ToInt32(Id.Text)); var client = new HttpClient { BaseAddress = new Uri(_url), }; client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var ma = new DailyTimesheetViewModel() { DailyMileage = dailyTimesheet.DailyMileage, Date = dailyTimesheet.Date, IsDeleted = false, LineItems = dailyTimesheet.LineItems, LunchEndTime = dailyTimesheet.LunchEndTime, LunchStartTime = dailyTimesheet.LunchStartTime, MileageEnd = dailyTimesheet.MileageEnd, MileageStart = dailyTimesheet.MileageStart, SentToOffice = false, StaffId = dailyTimesheet.StaffId, StaffSignature = dailyTimesheet.StaffSignature, CallOut = dailyTimesheet.CallOut, TotalHours = dailyTimesheet.TotalHours, WeekNumber = dailyTimesheet.WeekNumber }; var jsonObject = JsonConvert.SerializeObject(ma).ToString(); var response = await client.PostAsync("PostDailyTimesheet", new StringContent(jsonObject, Encoding.UTF8, "application/json")); if (response.IsSuccessStatusCode) { var contents = await response.Content.ReadAsStringAsync(); var jsonResponse = JsonConvert.DeserializeObject <CreateDailyTimesheetResponseViewModel>(contents); if (jsonResponse.Id == -1) { ResetActivityIndicator(); await DisplayAlert("Error", jsonResponse.ErrorMessage, "Acknowledge"); } else { App.DailyTimesheetsDatabase.DailyTimesheetsentToOffice(dailyTimesheet.Id, jsonResponse.Id); await DisplayAlert("Success", "Your daily timesheet has been successfully sent to the office.", "Back to Daily Timesheets"); await Navigation.PopAsync(true); } } else { ResetActivityIndicator(); await DisplayAlert("Error", "An error has occurred.", "Acknowledge"); } } else { ResetActivityIndicator(); } }