Exemple #1
0
        /// <summary>
        /// Update Issues.
        /// </summary>
        /// <param name="request">A UpdateIssuesRequest object.</param>
        /// <returns>A UpdateIssuesResponse object</returns>
        public UpdateIssuesResponse UpdateIssues(UpdateIssuesRequest request)
        {
            UpdateIssuesResponse response = new UpdateIssuesResponse();

            if (request.IssuesCD.Issues == null || request.IssuesCD.Issues.Rows.Count == 0)
            {
                response.IssuesCD = request.IssuesCD;
            }
            else
            {
                response.IssuesCD = IssuesCD.UpdateIssues(request.IssuesCD);
            }

            return(response);
        }
        async void SubmitAsync(object sender, System.EventArgs e)
        {
            if (statusPicker.SelectedIndex == 1)
            {
                if (string.IsNullOrEmpty(DaysRequired.Text))
                {
                    await DisplayAlert("Empty Fields", "Estimated Number of days is required for this action.", "ok");

                    return;
                }
            }
            if (statusPicker.SelectedIndex == 2)
            {
                if (string.IsNullOrEmpty(stream))
                {
                    await DisplayAlert("Empty Fields", "A valid Photo proof is required for this action.", "ok");

                    return;
                }
            }
            UpdateIssues         updateIssues         = new UpdateIssues();
            Set                  set                  = new Set();
            UpdateIssuesResponse updateIssuesResponse = new UpdateIssuesResponse();

            set.photo       = issue.photo;
            set.photo_proof = stream;
            set.address     = issue.address;
            set.rating      = issue.rating;
            if (string.IsNullOrEmpty(AdditionalCommentsProof.Text))
            {
                set.additional_comments_ngo = issue.additional_comments;
            }
            else
            {
                set.additional_comments_ngo = AdditionalCommentsProof.Text;
            }
            set.adder             = issue.adder;
            set.event_id          = issue.event_id;
            set.status            = statusPicker.SelectedItem.ToString();
            set.status_changed_by = LoggedInUser.userID;
            //Console.WriteLine("Days Required : " + DaysRequired.Text.Trim());
            try
            {
                set.days_required = DaysRequired.Text.Trim();
            }
            catch (Exception ex)
            {
                set.days_required = "";
            }
            updateIssues.set = set;
            string query = @"{""_id"": {""$oid"": """ + issue._id.oid + @"""}}";

            updateIssuesResponse = await aPIService.UpdateIssue(Constants.mongoDBBName, Constants.mongoDBCollectionIssues, Constants.mongoDBKey, query, updateIssues);

            if (updateIssuesResponse.n >= 1)
            {
                await DisplayAlert("Success", "Status Changed Successfully.", "ok");

                base.OnAppearing();
                return;
            }
            else
            {
                await DisplayAlert("Failed", "Failed To Change The Status.", "ok");

                base.OnAppearing();
                return;
            }
        }