protected async void CloseTicket() { ViewModel_PhoneUI.UIFunctions.showProgressIndicator("Closing your ticket..."); ViewModel_PhoneUI.UIFunctions.ShowOverlay(ContentOverlay); disableApplicationBar(); vm = new ViewModel.VM_faq_PastIssues(); int i = await vm.CloseTicket(ParentId); ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); if (i > 0) { enableApplicationBar(); ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); ViewModel_PhoneUI.UIFunctions.HideOverlay(ContentOverlay); //successfuly closed showMessage("Success", "Ticket closed", 2);// With code for suitable Navigation // showMessage("Success", "Ticket closed ."); } else ViewModel_PhoneUI.UIFunctions.showMessage(Network.SOMETHING_WENT_WRONG); }
protected async void ReOpenTicket(string UserText) { try { if (Account.isLoggedIn()) { if (Network.checkNetwork()) { mobileNumber = Account.readLocalData(Connection.KEY_LOCAL_STORAGE_PRIMARY_NUM); if (MKValidations.isValidMobileNumber(mobileNumber) && UserText.Length > 0 && !UserText.Equals(placeholderQuery)) { ViewModel_PhoneUI.UIFunctions.showProgressIndicator("Submitting your query..."); ViewModel_PhoneUI.UIFunctions.ShowOverlay(ContentOverlay); disableApplicationBar(); BackEnabled = false; Model.RootObject_ReOpenIssue response = new Model.RootObject_ReOpenIssue(); vm = new ViewModel.VM_faq_PastIssues(); response = await vm.ReOpenTicket(UserText.Trim(), ParentId); ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); if (response != null) { if (response.failure == true) { showMessage("Sorry!", response.description, 0); } else { GetNewQueryData(ParentId.ToString(), response.data); } } else ViewModel_PhoneUI.UIFunctions.showMessage(Network.CHECK_CONNECTION_MESSAGE); enableApplicationBar(); ViewModel_PhoneUI.UIFunctions.HideOverlay(ContentOverlay); BackEnabled = true; } } } else { this.Frame.Navigate(typeof(MainPage)); //NavigationService.Navigate(new Uri("/MainPage.xaml?goto=1&from=1", UriKind.Relative)); } } catch (Exception ex) { //List<Parameter> Params = new List<Parameter>(); //Params.Add(AccountFunctions.createParameter("Location", "FaqChat")); //Params.Add(AccountFunctions.createParameter("Method", "ReOpenTicket, Error:" + ex.Message)); //FlurryWP8SDK.Api.LogEvent("FAQ Exception", Params); } }
private async void GetPastIssues() { try { if (Account.isLoggedIn()) { if (Network.checkNetwork())// If no Network,This Method will show Connection msg itself { ViewModel.VM_faq_PastIssues vm = new ViewModel.VM_faq_PastIssues(); Model.RootObject_Chat response = await vm.GetFAQ_PastIssues(); if (response.failure.Equals(false)) { response.data.Reverse(0, response.data.Count); lstPastIssues.DataContext = response.data; } else { //No Ticket History showMessage("Ticket History", response.description, 0);// code for suitable Navigation } } else ViewModel_PhoneUI.UIFunctions.showMessage(Network.CHECK_CONNECTION_MESSAGE); ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); enableApplicationBar(); ViewModel_PhoneUI.UIFunctions.HideOverlay(ContentOverlay); } else { ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); enableApplicationBar(); ViewModel_PhoneUI.UIFunctions.HideOverlay(ContentOverlay); // showMessage("Login", "Please log in to view your ticket history", NavigationService); showMessage("Login", "Please log in to view your ticket history", 2); //if (r.Equals(MessageBoxResult.OK)) // NavigationService.Navigate(new Uri("/MainPage.xaml?goto=" + ViewModel_PhoneUI.UIFunctions.NAVIGATION_ID_LOGIN + "&from=1", UriKind.Relative)); } } catch (Exception ex) { //List<Parameter> Params = new List<Parameter>(); //Params.Add(AccountFunctions.createParameter("Location", "Faq Home")); //Params.Add(AccountFunctions.createParameter("Method", "GetPastIssues, Error:" + ex.Message)); //FlurryWP8SDK.Api.LogEvent("FAQ Exception", Params); } }
protected void GetChatByParentTicket() { try { bool Last_CommentByMobikwik = false; stpn_ChatPanel.Children.Clear(); CustomControls.UC_Chat_User uc;//chat by user CustomControls.UC_Chat_Mobikwik ucM;// Chat by mobikwik vm = new ViewModel.VM_faq_PastIssues(); Model.Datum data = vm.GetTicketDetailByID(ParentId);// get history by Ticket ID txtTicket.Text = "TICKET #" + data.parentTicket.id; uc = new CustomControls.UC_Chat_User(); uc.DataContext = data.parentTicket; stpn_ChatPanel.Children.Add(uc);// Chat initiated by user if (data.parentTicket.resolution != null)//if Some resolution sent by Mobikwik { //ucM = new UserControl.UC_Chat_Mobikwik(); //ucM.DataContext = data.comment; //stpn_ChatPanel.Children.Add(ucM); ucM = new CustomControls.UC_Chat_Mobikwik(); Model.Model_Chat ch = new Model.Model_Chat(); ch.Text = data.parentTicket.resolution; ch.ChatTime = data.parentTicket.resDate; ucM.DataContext = ch; stpn_ChatPanel.Children.Add(ucM); Last_CommentByMobikwik = true; } if (data.comment != null)// Ticket ReOpened { for (int i = 0; i < data.comment.Count; i++) { uc = new CustomControls.UC_Chat_User(); uc.DataContext = data.comment[i]; stpn_ChatPanel.Children.Add(uc);// Added Reopened Ticket Issue Last_CommentByMobikwik = false; if (data.comment[i].resolved == true || data.comment[i].resolution != null)// some solution sent by Mobikwik { ucM = new CustomControls.UC_Chat_Mobikwik(); Model.Model_Chat ch = new Model.Model_Chat(); ch.Text = data.comment[i].resolution; ch.ChatTime = data.comment[i].resDate; ucM.DataContext = ch; stpn_ChatPanel.Children.Add(ucM); Last_CommentByMobikwik = true; } } } ///There could be a scenerio where Mobikwik asks User some question,although this is rare.In Such case Last response is by Mobikwik but Ticket.resolution=false if (data.parentTicket.resolved == false & Last_CommentByMobikwik == false)//Ticket not resolved and Last Chat is not by Mobikwik, then show static data GetMobikwikStaticRespone(DateTime.Now); ////-------------------------------------------------- UC_Query = new CustomControls.UC_QueryMore(); if (data.parentTicket.resolved) UC_Query.DataContext = 2; else UC_Query.DataContext = 1; stpnQueryMore.Children.Add(UC_Query); GetMoreQurery(); } catch (Exception ex) { //List<Parameter> Params = new List<Parameter>(); //Params.Add(AccountFunctions.createParameter("Location", "Faq Chat")); //Params.Add(AccountFunctions.createParameter("Method", "GetChatByParentTicket, Error:" + ex.Message)); //FlurryWP8SDK.Api.LogEvent("FAQ Exception", Params); } }
public async void SendUserQuery() { try { if (MKValidations.isValidMobileNumber(mobileNo) && fieldQuery.Text.Trim().Length > MinimumCharacter && !fieldQuery.Text.Equals(placeholderQuery)) { ViewModel_PhoneUI.UIFunctions.showProgressIndicator("Submitting your query..."); ViewModel_PhoneUI.UIFunctions.ShowOverlay(ContentOverlay); disableApplicationBar(); // BackEnabled = false; // need to update if (Account.Category == string.Empty) Account.Category = "Others"; Model.RootObject_QuerySubmitResponse response = new Model.RootObject_QuerySubmitResponse(); vm = new ViewModel.VM_faq_PastIssues(); response = await vm.SendQuery(Account.Category, mobileNo, email, fieldQuery.Text.Trim(), placeholderQuery); enableApplicationBar(); ViewModel_PhoneUI.UIFunctions.HideOverlay(ContentOverlay); ViewModel_PhoneUI.UIFunctions.hideProgressIndicator(); BackEnabled = true; if (response.status != null) if (String.Equals(response.status, "error", StringComparison.OrdinalIgnoreCase)) { showMessage("Sorry", response.body.id, 0); //if (res != null) // this.NavigationService.GoBack(); } else//response.status, "ok" { showMessage("Ticket id: " + response.body.id, "Thank you, We will get back to you shortly!", 1); //NavigationService.Navigate(new Uri("/Views/FAQ_Chat.xaml?Ticket=" + response.body.id + "&UserChat=" + fieldQuery.Text.Trim() + "&MobikwikChat=" + response.body.message, UriKind.Relative)); } else ViewModel_PhoneUI.UIFunctions.showMessage(Network.CHECK_CONNECTION_MESSAGE); } else { showMessage("Invalid input", "Please enter a valid query with minimum 20 characters. ", 0);//Code for suitable Navigation } } catch (Exception ex) { //List<Parameter> Params = new List<Parameter>(); //Params.Add(AccountFunctions.createParameter("Location", "Help")); //Params.Add(AccountFunctions.createParameter("Method", "Send User Query, Error:" + ex.Message)); //FlurryWP8SDK.Api.LogEvent("FAQ Exception", Params); } }