| GET,OPTIONS | /v1/pm/project/{Uid} |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports CRM.AgencyPlatform.API.Internal
Namespace Global
Namespace CRM.AgencyPlatform.API.Internal
Public Partial Class PmCalendarBar
Public Overridable Property JobID As Integer
Public Overridable Property Name As String
Public Overridable Property StartDate As String
Public Overridable Property EndDate As String
Public Overridable Property Status As String
End Class
Public Partial Class PmCatalogItem
Public Overridable Property Id As Integer
Public Overridable Property Name As String
Public Overridable Property Amount As Double
End Class
Public Partial Class PmConflict
Public Overridable Property ProjectName As String
Public Overridable Property JobName As String
Public Overridable Property StartDate As String
Public Overridable Property EndDate As String
End Class
Public Partial Class PmEquipmentRow
Public Overridable Property EquipmentID As Integer
Public Overridable Property Name As String
Public Overridable Property EquipmentType As String
Public Overridable Property SerialNumber As String
Public Overridable Property UsedByJobs As String
Public Overridable Property Available As Boolean
Public Overridable Property Conflicts As List(Of PmConflict) = New List(Of PmConflict)
Public Overridable Property MaintenanceIntervalDays As Integer?
Public Overridable Property LastServiceDate As String
Public Overridable Property NextServiceDate As String
Public Overridable Property MaintenanceState As String
End Class
Public Partial Class PmFinance
Public Overridable Property Budget As Double
Public Overridable Property Spent As Double
Public Overridable Property EstimatedCost As Double
Public Overridable Property CrewCost As Double
Public Overridable Property EquipCost As Double
Public Overridable Property MatCost As Double
Public Overridable Property Variance As Double
Public Overridable Property HealthPct As Integer
Public Overridable Property SpentPct As Integer
Public Overridable Property ProgressPct As Integer
End Class
Public Partial Class PmJob
Public Overridable Property JobID As Integer
Public Overridable Property Name As String
Public Overridable Property Description As String
Public Overridable Property Status As String
Public Overridable Property StartDate As String
Public Overridable Property EndDate As String
Public Overridable Property CrewCount As Integer
Public Overridable Property BudgetedHours As Double
Public Overridable Property EquipmentCount As Integer
Public Overridable Property MaterialCount As Integer
Public Overridable Property CrewCost As Double
Public Overridable Property EquipCost As Double
Public Overridable Property MatCost As Double
Public Overridable Property Cost As Double
Public Overridable Property NoCrew As Boolean
Public Overridable Property EquipConflict As Boolean
Public Overridable Property MaterialGap As Boolean
Public Overridable Property ReadyPct As Integer
Public Overridable Property Crew As List(Of PmJobCrew) = New List(Of PmJobCrew)
Public Overridable Property Equipment As List(Of PmJobResource) = New List(Of PmJobResource)
Public Overridable Property Materials As List(Of PmJobResource) = New List(Of PmJobResource)
End Class
Public Partial Class PmJobCrew
Public Overridable Property ContactID As Integer
Public Overridable Property Name As String
Public Overridable Property Rate As Double
Public Overridable Property BudgetedHours As Double
Public Overridable Property IsOpen As Boolean
End Class
Public Partial Class PmJobResource
Public Overridable Property Id As Integer
Public Overridable Property Name As String
Public Overridable Property Amount As Double
Public Overridable Property Qty As Integer
End Class
Public Partial Class PmMaterialRow
Public Overridable Property MaterialID As Integer
Public Overridable Property Name As String
Public Overridable Property MaterialType As String
Public Overridable Property OnHand As Integer
Public Overridable Property NeededByJobs As Integer
Public Overridable Property QtyNeeded As Integer
Public Overridable Property ToOrder As Integer
Public Overridable Property UnitCost As Double
Public Overridable Property LineCost As Double
Public Overridable Property ProjectMaterialID As Integer
Public Overridable Property StatusID As Integer
Public Overridable Property Status As String
Public Overridable Property Supplier As String
Public Overridable Property OrderDate As String
Public Overridable Property DeliveryDate As String
Public Overridable Property Shortfall As Boolean
End Class
Public Partial Class PmProjectDetail
Public Overridable Property ProjectID As Integer
Public Overridable Property ProjectUID As String
Public Overridable Property Name As String
Public Overridable Property Client As String
Public Overridable Property ProjectType As String
Public Overridable Property Status As String
Public Overridable Property Branch As String
Public Overridable Property StartDate As String
Public Overridable Property EndDate As String
Public Overridable Property Description As String
Public Overridable Property Finance As PmFinance
Public Overridable Property Readiness As PmReadiness
Public Overridable Property Jobs As List(Of PmJob) = New List(Of PmJob)
Public Overridable Property Equipment As List(Of PmEquipmentRow) = New List(Of PmEquipmentRow)
Public Overridable Property Materials As List(Of PmMaterialRow) = New List(Of PmMaterialRow)
Public Overridable Property Calendar As List(Of PmCalendarBar) = New List(Of PmCalendarBar)
Public Overridable Property ProjectStatuses As List(Of PmCatalogItem) = New List(Of PmCatalogItem)
Public Overridable Property ResponseStatus As ResponseStatus
End Class
Public Partial Class PmProjectDetailRequest
Public Overridable Property Uid As String
End Class
Public Partial Class PmReadiness
Public Overridable Property JobsNoCrew As Integer
Public Overridable Property OpenRoles As Integer
Public Overridable Property EquipmentConflicts As Integer
Public Overridable Property MaterialGaps As Integer
Public Overridable Property TotalGaps As Integer
Public Overridable Property ReadyPct As Integer
End Class
End Namespace
End Namespace
VB.NET PmProjectDetailRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/pm/project/{Uid} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"ProjectID":0,"ProjectUID":"String","Name":"String","Client":"String","ProjectType":"String","Status":"String","Branch":"String","StartDate":"String","EndDate":"String","Description":"String","Finance":{"Budget":0,"Spent":0,"EstimatedCost":0,"CrewCost":0,"EquipCost":0,"MatCost":0,"Variance":0,"HealthPct":0,"SpentPct":0,"ProgressPct":0},"Readiness":{"JobsNoCrew":0,"OpenRoles":0,"EquipmentConflicts":0,"MaterialGaps":0,"TotalGaps":0,"ReadyPct":0},"Jobs":[{"JobID":0,"Name":"String","Description":"String","Status":"String","StartDate":"String","EndDate":"String","CrewCount":0,"BudgetedHours":0,"EquipmentCount":0,"MaterialCount":0,"CrewCost":0,"EquipCost":0,"MatCost":0,"Cost":0,"NoCrew":false,"EquipConflict":false,"MaterialGap":false,"ReadyPct":0,"Crew":[{"ContactID":0,"Name":"String","Rate":0,"BudgetedHours":0,"IsOpen":false}],"Equipment":[{"Id":0,"Name":"String","Amount":0,"Qty":0}],"Materials":[{"Id":0,"Name":"String","Amount":0,"Qty":0}]}],"Equipment":[{"EquipmentID":0,"Name":"String","EquipmentType":"String","SerialNumber":"String","UsedByJobs":"String","Available":false,"Conflicts":[{"ProjectName":"String","JobName":"String","StartDate":"String","EndDate":"String"}],"MaintenanceIntervalDays":0,"LastServiceDate":"String","NextServiceDate":"String","MaintenanceState":"String"}],"Materials":[{"MaterialID":0,"Name":"String","MaterialType":"String","OnHand":0,"NeededByJobs":0,"QtyNeeded":0,"ToOrder":0,"UnitCost":0,"LineCost":0,"ProjectMaterialID":0,"StatusID":0,"Status":"String","Supplier":"String","OrderDate":"String","DeliveryDate":"String","Shortfall":false}],"Calendar":[{"JobID":0,"Name":"String","StartDate":"String","EndDate":"String","Status":"String"}],"ProjectStatuses":[{"Id":0,"Name":"String","Amount":0}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}