public async Task <bool> AddNewTask(TaskViewModel taskViewModel, int ServiceVisitId) { String url = Configuration.baseURL + "/tasks/" + ServiceVisitId.ToString() + "/addNewTask"; TaskClass taskClass = new TaskClass(); taskClass.taskInformation = taskViewModel.TaskInfo; AddNewTaskInformation addNewTaskInformation = new AddNewTaskInformation(taskClass.taskInformation); var json = JsonConvert.SerializeObject(addNewTaskInformation); var content = new StringContent(json, Encoding.UTF8, "application/json"); //set token String token = CrossSecureStorage.Current.GetValue("Token"); _httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token); var current = Connectivity.NetworkAccess; if (current == NetworkAccess.Internet) { var respond = await _httpClient.PostAsync(url, content); if (respond.StatusCode == System.Net.HttpStatusCode.OK) { Console.WriteLine("OK"); return(true); } else { return(false); } } else { TaskDBInfo taskDBInfo = new TaskDBInfo(taskClass); taskDBInfo.AddNewTaskFlag = true; var result = await App.TaskDatabase.SaveTaskAsync(taskDBInfo); if (result != 0) { Console.WriteLine(taskDBInfo.barcode); return(true); } return(false); } }
public async Task <bool> EditTaskInformation(int serviceVisitItemId, TaskInformation tasInfo) { String url = Configuration.baseURL + "/tasks/" + serviceVisitItemId.ToString() + "/editInformation"; var json = JsonConvert.SerializeObject(tasInfo); var content = new StringContent(json, Encoding.UTF8, "application/json"); var current = Connectivity.NetworkAccess; if (current == NetworkAccess.Internet) { //set token String token = CrossSecureStorage.Current.GetValue("Token"); _httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token); var respond = await _httpClient.PutAsync(url, content); if (respond.StatusCode == System.Net.HttpStatusCode.OK) { return(true); } else { return(false); } } else { TaskDBInfo taskDBInfo = await App.TaskDatabase.GetTaskAsync(serviceVisitItemId); taskDBInfo.barcode = tasInfo.Barcode; taskDBInfo.contractor = tasInfo.Contractor; taskDBInfo.isMoving2012Standard = tasInfo.IsMoving2012Standard; taskDBInfo.maintainedStandard = tasInfo.MaintainedStandard; taskDBInfo.lastServicedBy = tasInfo.LastServicedBy; taskDBInfo.location = tasInfo.Location; taskDBInfo.taskTypeDescription = tasInfo.TaskTypeDescription; taskDBInfo.opNumber = tasInfo.OPNumber; taskDBInfo.EditTaskFlag = true; var result = await App.TaskDatabase.SaveTaskAsync(taskDBInfo, tasInfo.Barcode, tasInfo.OPNumber); return(true); } }
/// <summary> /// This is used to request the task list during initialization /// </summary> public async Task InitializeGettingTasks() { //var fieldsOne = new ObservableCollection<CheckItemFieldViewModel>() //{ // new CheckItemFieldViewModel("Presure","kPa",""), // new CheckItemFieldViewModel("Water Pressure", "kPa", ""), //}; //var checklists = new List<CheckItemViewModel>() //{ // new CheckItemViewModel(1, 1, "INSPECT fire door panel to ensure it is free of any visible delamination, and other damage", ChecklistStatus.NoTest, // new CommentViewModel("https://5.imimg.com/data5/IC/IC/MY-25107910/fire-doors-shakti-met-door-500x500.png", "The seal on the fire door at G20 theatre needs to be replaced"), // fieldsOne), // new CheckItemViewModel(2, 2, "INSPECT that the perimeter seal is in good condition and not damaged", ChecklistStatus.NoTest, null, null) //}; //var comments = new List<CommentViewModel>() //{ // new CommentViewModel("https://5.imimg.com/data5/IC/IC/MY-25107910/fire-doors-shakti-met-door-500x500.png", "The fire door needs to be fixed ASAP"), // new CommentViewModel("https://firesafe-au.com/wp-content/uploads/2016/06/fire-doors.jpg", "The fire door outside the building needs to be reinstalled") //}; //ToDoTasks = new ObservableCollection<TaskViewModel> //{ // new TaskViewModel() // { // // new API // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Building elements to sarisy fire", // Location = "Near Front Office", // Barcode = 1234456, // OPNumber = 12345, // IsMoving2012Standard = true, // MaintainedStandard = "Earlier than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Pass, // ThisResult = TaskResultStatus.NoTest, // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234234", // EquipmentName = "Building elements to sarisy fire", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "12345678", // Checklists = checklists, // Comments = comments // }, // new TaskViewModel() // { // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Fire indices for materials", // Location = "Throughout", // Barcode = 1234457, // OPNumber = 12346, // IsMoving2012Standard = true, // MaintainedStandard = "Earlier than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Failed, // ThisResult = TaskResultStatus.NoTest, // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234236", // EquipmentName = "Fire indices for materials", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "123456789", // Checklists = checklists, // Comments = comments // }, // new TaskViewModel() // { // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Fire indices for materials", // Location = "Throughout", // Barcode = 1234457, // OPNumber = 12346, // IsMoving2012Standard = true, // MaintainedStandard = "Earlier than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Failed, // ThisResult = TaskResultStatus.NoTest, // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234236", // EquipmentName = "Fire indices for materials", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "123456789", // Checklists = checklists, // Comments = comments // } //}; //TODO initialise done tasks - for now this is empty //DoneTasks = new ObservableCollection<TaskViewModel> //{ // new TaskViewModel() // { // // new API // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Penetrations in fire rated structures", // Location = "Near Front Office", // Barcode = 1234456, // OPNumber = 12345, // IsMoving2012Standard = true, // MaintainedStandard = "Later than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Pass, // ThisResult = TaskResultStatus.Failed, // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234234", // EquipmentName = "Building elements to sarisy fire", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "12345678", // Checklists = checklists, // Comments = comments // }, // new TaskViewModel() // { // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Fire resisting structures", // Location = "Throughout", // Barcode = 1234457, // OPNumber = 12346, // IsMoving2012Standard = true, // MaintainedStandard = "Later than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Failed, // ThisResult = TaskResultStatus.Pass, // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234236", // EquipmentName = "Fire indices for materials", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "123456789", // Checklists = checklists, // Comments = comments // }, // new TaskViewModel() // { // TaskInfo = new TaskInformation() // { // Contractor = "FBS", // TaskTypeDescription = "Fire resisting structures", // Location = "Throughout", // Barcode = 1234457, // OPNumber = 12346, // IsMoving2012Standard = true, // MaintainedStandard = "Later than 2005", // LastServicedBy = "John" // }, // LastService = new DateTime(2019, 8, 20), // LastResult = TaskResultStatus.Failed, // ThisResult = TaskResultStatus.Pass , // TaskType = "passive", // ServiceVisitItemNumber = 700006, // TaskName = "Test Fire Door", // SiteEquipmentLineNumber = 21, // ServiceVisitId = 7000001, // SiteId = 61435214, // // old API // TaskNumber = "234236", // EquipmentName = "Fire indices for materials", // EquipmentLocation = "Throughout", // LastServiceDate = new DateTime(2019, 10, 31), // ReferenceNumber = "23434", // LastTestResult = "Passed", // Barcode = "123456789", // Checklists = checklists, // Comments = comments // } //}; //also record the full tasks in case user starts to filter down the list by searching if (IsBusy) { return; } IsBusy = true; _fullUndoneTasks = new List <TaskViewModel>(); _fullDoneTasks = new List <TaskViewModel>(); List <TaskViewModel> taskViewModelFromAPI = new List <TaskViewModel>(); try { var result = await _taskService.GetTaskForServiceVisit(_serviceVisitID.ToString()); if (result != null) { Console.WriteLine(result[0].lastService); taskViewModelFromAPI = new List <TaskClass>(result).Select(s => new TaskViewModel(s)).ToList(); List <TaskClass> tasks = new List <TaskClass>(result); Console.WriteLine(tasks.Count); foreach (TaskClass t in tasks) { TaskDBInfo taskDBInfo = new TaskDBInfo(t); _ = App.TaskDatabase.SaveTaskAsync(taskDBInfo); foreach (CheckItem checkItem in t.checkLists) { CheckItemDBInfo checkItemDBInfo = new CheckItemDBInfo(t.serviceVisitItemNumber, checkItem); //Console.WriteLine(checkItemDBInfo.taskTypeDescription + " " + checkItemDBInfo.serviceVisitID); await App.CheckItemDatabase.SaveCheckListInfoAsync(checkItemDBInfo); } foreach (DefectReport defect in t.defectReport) { DefectReportDBInfo defectDBInfo = new DefectReportDBInfo(defect, t.serviceVisitItemNumber); await App.DefectReportDatabase.SaveDefectReportInfoAsync(defectDBInfo); } } } } catch (Exception e) { Console.WriteLine(e.StackTrace); } finally { IsBusy = false; Console.WriteLine("In task list vm" + taskViewModelFromAPI[0].TaskInfo.Barcode); } if (taskViewModelFromAPI != null) { foreach (TaskViewModel taskvm in taskViewModelFromAPI) { if (taskvm.ThisResult.Equals(TaskResultStatus.NoTest)) { Console.WriteLine("todo"); _fullUndoneTasks.Add(taskvm); } else { Console.WriteLine("done"); _fullDoneTasks.Add(taskvm); } } } ToDoTasks = new ObservableCollection <TaskViewModel>(_fullUndoneTasks); DoneTasks = new ObservableCollection <TaskViewModel>(_fullDoneTasks); }