Method SearchByTicketNumber

Summary

Search for Parking Ticket by ticket number

Remarks

Search for partking ticket by ticket number, and return the ticket info.

Input Parameters

NameTypeLengthDescription
ticketNumber System.String 10 [Required] Ticket number

Example

GET http://localhost/FusionServices/v3/Naviline/ParkingTicket/SearchByTicketNumber/{ticketNumber}

Return Values

NameDescription
LicenseTag License Tag number
LicenseState Tag State
TicketNumber Ticket number
ViolationCode Violatin Code
ViolationDescription Violatin Description
Date Date ticket issued
Time time
Location Location
Name Name
Address Address
City City
State State
Zip Zip
CountyCode County Code
Amount Amount due
CitationID Citation ID used for payment
MRNUM MRNUM used for payment
MRCSID Citation ID used for payment

Sample Responses

Sample Code

using System.Net;
using Newtonsoft.Json.Linq;

public void MethodName(parms)
{
    string uri = "http://localhost/FusionServices/v3/Naviline/ParkingTicket/SearchByTicketNumber/srs3330001";
    WebClient wc = new WebClient();
    wc.Headers.Set("X-APPID", "YOURID");
    wc.Headers.Set("X-APPKEY", "YOURKEY");
    string stringResult = wc.DownloadString(new Uri(uri));
    
    JObject response = JObject.Parse(stringResult);
    string error = response["OutputParms"]["ErrorCode"].ToString();
    if (error == "0000")
    {
        JArray jRows = (JArray)response["Rows"];
        foreach (JObject row in jRows)
        {
             string LicenseTag = row["LicenseTag"].ToString();
             string LicenseState = row["LicenseState"].ToString();
             string TicketNumber = row["TicketNumber"].ToString();
             string ViolationCode = row["ViolationCode"].ToString();
             string ViolationDescription = row["ViolationDescription"].ToString();
             string Date = row["Date"].ToString();
             string Time = row["Time"].ToString();
             string Location = row["Location"].ToString();
             string Name = row["Name"].ToString();
             string Address = row["Address"].ToString();
             string City = row["City"].ToString();
             string State = row["State"].ToString();
             string Zip = row["Zip"].ToString();
             string CountyCode = row["CountyCode"].ToString();
             string Amount = row["Amount"].ToString();
             string CitationID = row["CitationID"].ToString();
             string MRNUM = row["MRNUM"].ToString();
             string MRCSID = row["MRCSID"].ToString();
             // TODO - YOUR CODE HERE
        }
    }
}

$.get('http://localhost/FusionServices/v3/Naviline/ParkingTicket/SearchByTicketNumber/srs3330001', function(response) {
    $('#resultDiv).html(response); 
 });

C# Razor MVC Sample Code

using System;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Collections.Specialized;
using FusionServiceHelper.Models;

// NOTE: Use the namespace generated when you add the class, so that it is correct.
namespace FusionRazor.Models
{
   public class SearchByTicketNumber
   {
       // Add property for each input param in order to map a field to it
       [Required(ErrorMessage = "Required")]
       [RegularExpression("^(?=.{0,10}$).*", ErrorMessage = "Must be 10 characters or less. ")]
       public string ticketNumber{get; set;}

       public SearchByTicketNumber()
       {
           //Set any defaults here
           ticketNumber = DefaultData.Get("ticketNumber");
       }
   }
}
@* NOTE: Use Add->View to add the View. *@
@* NOTE: Check the 'Create strongly-typed view checkbox, and select the SearchByTicketNumber class. *@
@* NOTE: Select Edit as the Scaffold template. *@
@* NOTE: Use the @model line that is generated at the top.  Replace the rest with the lines below.
@model FusionRazor.Models.SearchByTicketNumber

@{
   ViewBag.Title = "SearchByTicketNumber";
   string myUrl = "http://localhost/FusionServices/v3/Naviline/ParkingTicket/SearchByTicketNumber/" + Model.ticketNumber;
}

<h2>SearchByTicketNumber</h2>
@using (Html.BeginForm()) {
   @Html.AntiForgeryToken()
   @Html.ValidationSummary(true)
   <fieldset>
   <legend>SearchByTicketNumber</legend>
       <div class="editor-label">Use the fields below to change the values and resubmit.</div>
       <div class="editor-label">
           @Html.LabelFor(model => model.ticketNumber)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.ticketNumber)
           @Html.ValidationMessageFor(model => model.ticketNumber)
       </div>
       <p>
       <input type="submit" value="Submit"/>
       </p>
   </fieldset>

}

@section Scripts {
   @Scripts.Render("~/bundles/jqueryval")
}
using System;
using System.Collections.Specialized;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using FusionServiceHelper.Models;

// NOTE: Replace 'MyController' with the name of your controller.

// 
// GET: /MyController/SearchByTicketNumber
public ActionResult SearchByTicketNumber()
{
   // Create a new instance of the model to pick up any default values.
   SearchByTicketNumber model =  new SearchByTicketNumber();

   // pass model to set to default values
   // NOTE: Change 'MyFolderPath' to the path to the .cshtml file.
   return View("~/Views/MyFolderPath/SearchByTicketNumber.cshtml", model);
}

// 
// POST: /MyController/SearchByTicketNumber
[HttpPost]
public ActionResult SearchByTicketNumber(FormCollection collection)
{
   string url = "v3/Naviline/ParkingTicket/SearchByTicketNumber/{ticketNumber}";
   // Get the value from each input field
   NameValueCollection inputParms = new NameValueCollection();
   inputParms.Add("ticketNumber", collection["ticketNumber"]);

   try
   {
       // Send the request
       FusionServiceRequest request = new FusionServiceRequest();
       FusionServiceResult result = request.Get(url, inputParms);

       return View("Result", result);
   }
   catch(Exception e)
   {
       HandleErrorInfo info = new HandleErrorInfo(e, "MyController", "SearchByTicketNumber");
       return View("Error", info);
   }
}