Exemplo n.º 1
0
    public async Task <bool> AddCommentsEdit(int id, AddCommentToServiceRequestModel addCm)
    {
        var url    = String.Format(UrlHelper.ServiceRequestView + id);
        var result = await PutAsync <AddCommentToServiceRequestModel>(url, addCm);

        if (result == "{\"success\":true}")
        {
            return(true);
        }
        else
        {
            return(false);
        }
    }
Exemplo n.º 2
0
        protected override async void OnAppearing()
        {
            messages = new ObservableCollection <CommentOrMessageViewModel>();
            try
            {
                _busy = UserDialogs.Instance.Loading(MessageHelper.Loading);
                if (_serviceRequestId != 0)
                {
                    ServiceRequestService _serviceRequestService = new ServiceRequestService();
                    var result = await Task.Run(() => _serviceRequestService.GetServiceRequestById(_serviceRequestId));

                    this.srs = result;
                    Title    = "Service Request ID - " + _serviceRequestId;
                }
                lblCreatedBy.Text   = srs.ServiceReq.CreatedUser.ToString();
                lblCreatedDate.Text = srs.ServiceReq.CreatedDate.Substring(0, 10);
                lblLastUpdate.Text  = getLastUpdated(Convert.ToDateTime(srs.ServiceReq.UpdatedDate));
                lblHouse.Text       = srs.ServiceReq.House.ToString();
                lblPrfDate.Text     = srs.ServiceReq.PreferredDate.Substring(0, 10);
                lblPrfTime.Text     = srs.ServiceReq.PreferredTimings;

                if (srs.ServiceReq.Closed)
                {
                    lblStatus.Text = "Closed";
                }
                else
                {
                    lblStatus.Text = "Open";
                }

                lblCloseDate.Text = srs.ServiceReq.ClosedDate;
                lblSubject.Text   = srs.ServiceReq.Subject;
                var coments = srs.srmessages.Select(c => new CommentOrMessageViewModel
                {
                    Id          = c.Id,
                    ServiceId   = c.ServiceRequest,
                    Title       = c.Content,
                    CreatedBy   = Convert.ToString(c.CreatedUser),
                    CreatedDate = Convert.ToDateTime(c.CreatedDate),
                }).ToList();
                foreach (var item in coments)
                {
                    messages.Add(item);
                }
                ServiceRequestView.ItemsSource = messages;
                var tapGesture = new TapGestureRecognizer();
                tapGesture.Tapped += async(sender, e) =>
                {
                    if (CrossConnectivity.Current.IsConnected)
                    {
                        if (AddComments.Text == null || AddComments.Text == "")
                        {
                            UserDialogs.Instance.Alert(MessageHelper.EnterMessage);
                        }
                        else
                        {
                            AddCommentToServiceRequestModel addcom = new AddCommentToServiceRequestModel();
                            addcom.Content = AddComments.Text;
                            var service = DependencyService.Get <IServiceRequest>();
                            var result  = await service.AddCommentsEdit(srs.ServiceReq.Id, addcom);

                            if (result)
                            {
                                AddComments.Text = "";
                                messages.Add(new CommentOrMessageViewModel
                                {
                                    Title       = addcom.Content,
                                    CreatedBy   = srs.ServiceReq.CreatedUser,
                                    CreatedDate = DateTime.Now
                                });
                                ServiceRequestView.ItemsSource = messages;
                                MessageHelper.ShowToast(ToastNotificationType.Success, MessageHelper.CommentSucess);
                            }

                            else
                            {
                                MessageHelper.ShowToast(ToastNotificationType.Error, "Failure");
                            }
                        }
                    }
                    else
                    {
                        UserDialogs.Instance.ErrorToast(MessageHelper.NoInternet);
                    }
                };
                CommentButton.GestureRecognizers.Add(tapGesture);
            }
            catch (Exception)
            {
                if (!CrossConnectivity.Current.IsConnected)
                {
                    UserDialogs.Instance.ErrorToast(MessageHelper.NoInternet);
                }
            }
            finally
            {
                _busy.Hide();
            }
            base.OnAppearing();
        }