| POST,OPTIONS | /v1/Equipment/{EquipmentID}/dvir/signoff |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;
namespace CRM.AgencyPlatform.API.Internal
{
public partial class DvirDefectView
{
public virtual int DvirDefectID { get; set; }
public virtual string ClientKey { get; set; }
public virtual int? DvirReportID { get; set; }
public virtual string ReportNumber { get; set; }
public virtual int EquipmentID { get; set; }
public virtual string Unit { get; set; }
public virtual string ItemKey { get; set; }
public virtual string Label { get; set; }
public virtual string FormLine { get; set; }
public virtual bool IsCustom { get; set; }
public virtual string Severity { get; set; }
public virtual string SeverityText { get; set; }
public virtual string Note { get; set; }
public virtual string Source { get; set; }
public virtual string ReportedByName { get; set; }
public virtual DateTime? ReportedAtUtc { get; set; }
public virtual int? EquipmentMaintenanceID { get; set; }
public virtual string Outcome { get; set; }
public virtual string OutcomeText { get; set; }
public virtual string OutcomeNote { get; set; }
public virtual string ScheduledFor { get; set; }
public virtual string SignedOffByName { get; set; }
public virtual DateTime? SignedOffAtUtc { get; set; }
public virtual bool IsOpen { get; set; }
public virtual bool Withdrawn { get; set; }
public virtual int PhotoCount { get; set; }
public virtual List<DvirPhotoView> Photos { get; set; } = [];
}
public partial class DvirPhotoView
{
public virtual int WorkPhotoID { get; set; }
public virtual string DefectKey { get; set; }
public virtual string Url { get; set; }
public virtual string MarkedUrl { get; set; }
public virtual DateTime? CapturedAtUtc { get; set; }
public virtual decimal? Lat { get; set; }
public virtual decimal? Lng { get; set; }
}
public partial class DvirReportView
{
public virtual int DvirReportID { get; set; }
public virtual string Number { get; set; }
public virtual string Kind { get; set; }
public virtual string KindText { get; set; }
public virtual int EquipmentID { get; set; }
public virtual string Unit { get; set; }
public virtual List<DvirUnitRef> Trailers { get; set; } = [];
public virtual int ContactID { get; set; }
public virtual string DriverName { get; set; }
public virtual string Board { get; set; }
public virtual string ForDate { get; set; }
public virtual DateTime FiledAtUtc { get; set; }
public virtual DateTime? SavedAtUtc { get; set; }
public virtual bool IsLate { get; set; }
public virtual bool IsAway { get; set; }
public virtual bool IsSatisfactory { get; set; }
public virtual int? Odometer { get; set; }
public virtual string LocationText { get; set; }
public virtual string Remarks { get; set; }
public virtual string ReviewedByName { get; set; }
public virtual DateTime? ReviewedAtUtc { get; set; }
public virtual string Chip { get; set; }
public virtual List<DvirDefectView> Defects { get; set; } = [];
public virtual List<DvirSignatureView> Signatures { get; set; } = [];
}
public partial class DvirSignatureView
{
public virtual int SignatureRecordID { get; set; }
public virtual string Role { get; set; }
public virtual string SignerName { get; set; }
public virtual DateTime? SignedAt { get; set; }
public virtual string ImageUrl { get; set; }
}
public partial class DvirSignOffItem
{
public virtual int DvirDefectID { get; set; }
public virtual string Outcome { get; set; }
public virtual string Note { get; set; }
public virtual string ScheduledFor { get; set; }
}
public partial class DvirUnitRef
{
public virtual int EquipmentID { get; set; }
public virtual string Unit { get; set; }
}
public partial class DvirVehicleDetail
: DvirVehicleView
{
public virtual string Plate { get; set; }
public virtual string VIN { get; set; }
public virtual int? GvwrLbs { get; set; }
public virtual string BranchName { get; set; }
public virtual DateTime? InspectionDue { get; set; }
public virtual DateTime? InsuranceExpires { get; set; }
public virtual List<DvirDefectView> RecentlyFixed { get; set; } = [];
public virtual List<DvirReportView> ReviewReports { get; set; } = [];
public virtual List<DvirReportView> History { get; set; } = [];
}
public partial class DvirVehicleView
{
public virtual int EquipmentID { get; set; }
public virtual string Unit { get; set; }
public virtual string Name { get; set; }
public virtual string VehicleType { get; set; }
public virtual bool IsTrailer { get; set; }
public virtual string VehicleStatus { get; set; }
public virtual string Status { get; set; }
public virtual string StatusText { get; set; }
public virtual string Line { get; set; }
public virtual string FirstUnsafeReport { get; set; }
public virtual int OpenCount { get; set; }
public virtual string LocalToday { get; set; }
public virtual bool NeedsPreTrip { get; set; }
public virtual bool NeedsReview { get; set; }
public virtual List<int> ReviewReportIds { get; set; } = [];
public virtual List<DvirUnitRef> Trailers { get; set; } = [];
public virtual int? LastOdometer { get; set; }
public virtual string InUseBy { get; set; }
public virtual bool DrivingNow { get; set; }
public virtual int? TodayPreTripId { get; set; }
public virtual int? TodayPostTripId { get; set; }
public virtual List<DvirDefectView> OpenDefects { get; set; } = [];
}
public partial class EquipmentDvirSignOffRequest
{
public virtual int EquipmentID { get; set; }
public virtual List<DvirSignOffItem> Defects { get; set; } = [];
public virtual string MechanicName { get; set; }
public virtual string SignaturePng { get; set; }
}
public partial class EquipmentDvirSignOffResponse
{
public virtual DvirVehicleDetail Vehicle { get; set; }
public virtual bool Returned { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
C# EquipmentDvirSignOffRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Equipment/{EquipmentID}/dvir/signoff HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
EquipmentID: 0,
Defects:
[
{
DvirDefectID: 0,
Outcome: String,
Note: String,
ScheduledFor: String
}
],
MechanicName: String,
SignaturePng: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Vehicle:
{
Plate: String,
VIN: String,
GvwrLbs: 0,
BranchName: String,
InspectionDue: 0001-01-01,
InsuranceExpires: 0001-01-01,
RecentlyFixed:
[
{
DvirDefectID: 0,
ClientKey: String,
DvirReportID: 0,
ReportNumber: String,
EquipmentID: 0,
Unit: String,
ItemKey: String,
Label: String,
FormLine: String,
IsCustom: False,
Severity: String,
SeverityText: String,
Note: String,
Source: String,
ReportedByName: String,
ReportedAtUtc: 0001-01-01,
EquipmentMaintenanceID: 0,
Outcome: String,
OutcomeText: String,
OutcomeNote: String,
ScheduledFor: String,
SignedOffByName: String,
SignedOffAtUtc: 0001-01-01,
IsOpen: False,
Withdrawn: False,
PhotoCount: 0,
Photos:
[
{
WorkPhotoID: 0,
DefectKey: String,
Url: String,
MarkedUrl: String,
CapturedAtUtc: 0001-01-01,
Lat: 0,
Lng: 0
}
]
}
],
ReviewReports:
[
{
DvirReportID: 0,
Number: String,
Kind: String,
KindText: String,
EquipmentID: 0,
Unit: String,
Trailers:
[
{
EquipmentID: 0,
Unit: String
}
],
ContactID: 0,
DriverName: String,
Board: String,
ForDate: String,
FiledAtUtc: 0001-01-01,
SavedAtUtc: 0001-01-01,
IsLate: False,
IsAway: False,
IsSatisfactory: False,
Odometer: 0,
LocationText: String,
Remarks: String,
ReviewedByName: String,
ReviewedAtUtc: 0001-01-01,
Chip: String,
Defects:
[
{
DvirDefectID: 0,
ClientKey: String,
DvirReportID: 0,
ReportNumber: String,
EquipmentID: 0,
Unit: String,
ItemKey: String,
Label: String,
FormLine: String,
IsCustom: False,
Severity: String,
SeverityText: String,
Note: String,
Source: String,
ReportedByName: String,
ReportedAtUtc: 0001-01-01,
EquipmentMaintenanceID: 0,
Outcome: String,
OutcomeText: String,
OutcomeNote: String,
ScheduledFor: String,
SignedOffByName: String,
SignedOffAtUtc: 0001-01-01,
IsOpen: False,
Withdrawn: False,
PhotoCount: 0,
Photos:
[
{
WorkPhotoID: 0,
DefectKey: String,
Url: String,
MarkedUrl: String,
CapturedAtUtc: 0001-01-01,
Lat: 0,
Lng: 0
}
]
}
],
Signatures:
[
{
SignatureRecordID: 0,
Role: String,
SignerName: String,
SignedAt: 0001-01-01,
ImageUrl: String
}
]
}
],
History:
[
{
DvirReportID: 0,
Number: String,
Kind: String,
KindText: String,
EquipmentID: 0,
Unit: String,
Trailers:
[
{
EquipmentID: 0,
Unit: String
}
],
ContactID: 0,
DriverName: String,
Board: String,
ForDate: String,
FiledAtUtc: 0001-01-01,
SavedAtUtc: 0001-01-01,
IsLate: False,
IsAway: False,
IsSatisfactory: False,
Odometer: 0,
LocationText: String,
Remarks: String,
ReviewedByName: String,
ReviewedAtUtc: 0001-01-01,
Chip: String,
Defects:
[
{
DvirDefectID: 0,
ClientKey: String,
DvirReportID: 0,
ReportNumber: String,
EquipmentID: 0,
Unit: String,
ItemKey: String,
Label: String,
FormLine: String,
IsCustom: False,
Severity: String,
SeverityText: String,
Note: String,
Source: String,
ReportedByName: String,
ReportedAtUtc: 0001-01-01,
EquipmentMaintenanceID: 0,
Outcome: String,
OutcomeText: String,
OutcomeNote: String,
ScheduledFor: String,
SignedOffByName: String,
SignedOffAtUtc: 0001-01-01,
IsOpen: False,
Withdrawn: False,
PhotoCount: 0,
Photos:
[
{
WorkPhotoID: 0,
DefectKey: String,
Url: String,
MarkedUrl: String,
CapturedAtUtc: 0001-01-01,
Lat: 0,
Lng: 0
}
]
}
],
Signatures:
[
{
SignatureRecordID: 0,
Role: String,
SignerName: String,
SignedAt: 0001-01-01,
ImageUrl: String
}
]
}
],
EquipmentID: 0,
Unit: String,
Name: String,
VehicleType: String,
IsTrailer: False,
VehicleStatus: String,
Status: String,
StatusText: String,
Line: String,
FirstUnsafeReport: String,
OpenCount: 0,
LocalToday: String,
NeedsPreTrip: False,
NeedsReview: False,
ReviewReportIds:
[
0
],
Trailers:
[
{
EquipmentID: 0,
Unit: String
}
],
LastOdometer: 0,
InUseBy: String,
DrivingNow: False,
TodayPreTripId: 0,
TodayPostTripId: 0,
OpenDefects:
[
{
DvirDefectID: 0,
ClientKey: String,
DvirReportID: 0,
ReportNumber: String,
EquipmentID: 0,
Unit: String,
ItemKey: String,
Label: String,
FormLine: String,
IsCustom: False,
Severity: String,
SeverityText: String,
Note: String,
Source: String,
ReportedByName: String,
ReportedAtUtc: 0001-01-01,
EquipmentMaintenanceID: 0,
Outcome: String,
OutcomeText: String,
OutcomeNote: String,
ScheduledFor: String,
SignedOffByName: String,
SignedOffAtUtc: 0001-01-01,
IsOpen: False,
Withdrawn: False,
PhotoCount: 0,
Photos:
[
{
WorkPhotoID: 0,
DefectKey: String,
Url: String,
MarkedUrl: String,
CapturedAtUtc: 0001-01-01,
Lat: 0,
Lng: 0
}
]
}
]
},
Returned: False,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}