Method GetAutoApprove

Summary

Get auto approved permits

Remarks

After paying permit fees, call this method to check the status of existing permits to see if they are now approved. The system may automatically approve a permit once the fees are paid.

This returns a row for each permit, with PermitIssued returning Y/N to show if the permit was issued.

Input Parameters

NameTypeLengthDescription
applicationYear numeric 2 [Required] Application Year. 2 digit
applicationNumber numeric 8 [Required] Application Number

Example

GET http://localhost/FusionServices/v3/Naviline/Permit/Application/AutoApprove/{applicationYear}/{applicationNumber}

Return Values

NameDescription
PermitType Permit Type
PermitSeqNo Permit Sequence number
PermitDesc Permit Description
PermitIssued Permit Issued (Y/N). Y if the permit has now been issued. N if there was an error.
PermitPin Permit PIN. Permit Printing may be set up to require a PIN to view/print. This is the PIN the customer would need to enter.
ErrorCode 0000 if successful, but not all permits may have been issued. 2003 or 2004 indicates the application was not approved. Check the Error Message for details.
ErrorMessage Message if not successful. Example: 2004 indicates "Application not approved - required fees have not been paid".
ApplicationYear Application Year - should be same as applicationYear from input.
ApplicationNumber Application Number - should be same as applicationNumber from input.
ApplicationPIN Application PIN. Private applications may be set up to require a PIN to view/print. This is the PIN the customer would need to enter.
ApplicationDesc Application Description

Sample Responses

Sample Code

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

public void MethodName(parms)
{
    string uri = "http://localhost/FusionServices/v3/Naviline/Permit/Application/AutoApprove/11/237";
    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")
    {
       // TODO - YOUR CODE HERE
    }
}

$.get('http://localhost/FusionServices/v3/Naviline/Permit/Application/AutoApprove/11/237', 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 GetAutoApprove
   {
       // Add property for each input param in order to map a field to it
       [Required(ErrorMessage = "Required")]
       [RegularExpression("[0-9]{0,2}", ErrorMessage = "Numeric values only. Must be 2 digits or less. ")]
       public string applicationYear{get; set;}

       [Required(ErrorMessage = "Required")]
       [RegularExpression("[0-9]{0,8}", ErrorMessage = "Numeric values only. Must be 8 digits or less. ")]
       public string applicationNumber{get; set;}

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

@{
   ViewBag.Title = "GetAutoApprove";
   string myUrl = "http://localhost/FusionServices/v3/Naviline/Permit/Application/AutoApprove/" + Model.applicationYear + "/" + Model.applicationNumber;
}

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

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

// 
// POST: /MyController/GetAutoApprove
[HttpPost]
public ActionResult GetAutoApprove(FormCollection collection)
{
   string url = "v3/Naviline/Permit/Application/AutoApprove/{applicationYear}/{applicationNumber}";
   // Get the value from each input field
   NameValueCollection inputParms = new NameValueCollection();
   inputParms.Add("applicationYear", collection["applicationYear"]);
   inputParms.Add("applicationNumber", collection["applicationNumber"]);

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