Skip to content

Instantly share code, notes, and snippets.

@sfletche
Last active June 5, 2017 23:40
Show Gist options
  • Save sfletche/18b49718599de92619bb4fd475cbf168 to your computer and use it in GitHub Desktop.
Save sfletche/18b49718599de92619bb4fd475cbf168 to your computer and use it in GitHub Desktop.

Application Status

Application Phases

The 5 Phases of an application (as presented on the Contractor Portal)

  • Application
  • Financing Docs
  • Install & Completion Certificate
  • Funding
  • Closed

At any time there will be exactly 1 active phase

Each phase contains 1 or more Steps

For a Phase to be complete, all steps in that phase will have been completed

Application Steps

In any given Phase, 1 or more steps can be active (ready for action)

Only steps in the active Phase can be acted on

Active Phase

The active Phase is the phase that contains Steps that are immediately actionable

The Active Phase can be determined from the response object (same for applications and app-details requests)

"active_phase": {
  "name": "financing_documents",
  "index": 1
}

Where the stubbed name can be mapped to the user facing name (see phase-labels.js), and index is 0 based

Active Steps

Within the active Phase, 1 or more steps can be active (some steps are sequential, others can be done in parallel)

The Active Step can be determined from the response object (same for applications and app-details requests)

"active_step": {
  "name": "financing_documents_signing",
  "out_of_sync": false
}

Where the stubbed name can be mapped to the user facing name (see rf-pipeline-steps-values.js, and the out_of_sync flag is true when there exists some confusion in the backend serializer as to which step should be active

Pipeline Index view

The Pipeline Index view provides a list of all applications for a given location

Pipeline Index Tabs

  • Active
  • Closed

Pipeline Index Columns

  • Step - Phase # (active_phase.index+1), Phase name (active_phase.name), first active Step (active_step.names[0])
  • Address - property address (property.address.[street1|city|state|zip]), homeowner (applictants.primary.name.[first|last])
  • Type - program name (program), Id (id)
  • Submitted - date submitted (created_at)
  • Expires - expiration date (expires_at)
  • Sales Rep - name (contractor.sales_rep.name.[first|last])

Request URL /locations/<location_id>/applications?filter=[active|closed]

Sample Response https://gist.github.com/sfletche/fc7a58cfbbaa6211495f219ca5d5ff2e

Application Details view

The application Details view is split up by Phases

Default view shows the Steps for Phase that is currently active

Generally speaking, when looking at the phases and steps arrays in the response object

  • Completed Steps contain a value for completed_at
  • Active Steps contain a value for started_at but not for completed_at
  • Steps that are not yet actionable do not contain a value for started_at

Request URL /programs/<program_name>/applications/<app_id>

Sample Response https://gist.github.com/sfletche/1480747ae949923e146625e051832a89

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment