Method SearchByTag

Summary

Search for Parking Ticket by tag and state

Input Parameters

NameTypeLengthDescription
tagNumber System.String 12 [Required] License Tag number
tagState System.String 2 [Required] State

Example

GET http://localhost/FusionServices/v3/NaviLine/ParkingTicket/SearchByTag/{tagNumber}/{tagState}

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/SearchByTag/spar005/fl";
    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/SearchByTag/spar005/fl', 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 SearchByTag
   {
       // Add property for each input param in order to map a field to it
       [Required(ErrorMessage = "Required")]
       [RegularExpression("^(?=.{0,12}$).*", ErrorMessage = "Must be 12 characters or less. ")]
       public string tagNumber{get; set;}

       [Required(ErrorMessage = "Required")]
       [RegularExpression("^(?=.{0,2}$).*", ErrorMessage = "Must be 2 characters or less. ")]
       public string tagState{get; set;}

       public SearchByTag()
       {
           //Set any defaults here
           tagNumber = DefaultData.Get("tagNumber");
           tagState = DefaultData.Get("tagState");
       }
   }
}
@* NOTE: Use Add->View to add the View. *@
@* NOTE: Check the 'Create strongly-typed view checkbox, and select the SearchByTag 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.SearchByTag

@{
   ViewBag.Title = "SearchByTag";
   string myUrl = "http://localhost/FusionServices/v3/NaviLine/ParkingTicket/SearchByTag/" + Model.tagNumber + "/" + Model.tagState;
}

<h2>SearchByTag</h2>
@using (Html.BeginForm()) {
   @Html.AntiForgeryToken()
   @Html.ValidationSummary(true)
   <fieldset>
   <legend>SearchByTag</legend>
       <div class="editor-label">Use the fields below to change the values and resubmit.</div>
       <div class="editor-label">
           @Html.LabelFor(model => model.tagNumber)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.tagNumber)
           @Html.ValidationMessageFor(model => model.tagNumber)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.tagState)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.tagState)
           @Html.ValidationMessageFor(model => model.tagState)
       </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/SearchByTag
public ActionResult SearchByTag()
{
   // Create a new instance of the model to pick up any default values.
   SearchByTag model =  new SearchByTag();

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

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

   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", "SearchByTag");
       return View("Error", info);
   }
}