Trendsic Platform Service

<back to all web services

SafetyIncidentUpdateRequest

Requires Authentication
The following routes are available for this service:
PUT,OPTIONS/v1/safety/incidents/{SafetyIncidentID}
import 'package:servicestack/servicestack.dart';

class SafetyIncident implements IConvertible
{
    int? SafetyIncidentID;
    String? SafetyIncidentUID;
    String? BranchId;
    int? ProjectID;
    String? IncidentNo;
    String? IncidentType;
    String? Severity;
    String? Status;
    String? Title;
    String? Location;
    String? CrewLabel;
    String? Description;
    String? ReportedBy;
    bool? IsRecordable;
    DateTime? OccurredAt;
    DateTime? ClosedAt;
    String? SourceRef;
    String? CreatedBy;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;
    int? DaysAgo;

    SafetyIncident({this.SafetyIncidentID,this.SafetyIncidentUID,this.BranchId,this.ProjectID,this.IncidentNo,this.IncidentType,this.Severity,this.Status,this.Title,this.Location,this.CrewLabel,this.Description,this.ReportedBy,this.IsRecordable,this.OccurredAt,this.ClosedAt,this.SourceRef,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.DaysAgo});
    SafetyIncident.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SafetyIncidentID = json['SafetyIncidentID'];
        SafetyIncidentUID = json['SafetyIncidentUID'];
        BranchId = json['BranchId'];
        ProjectID = json['ProjectID'];
        IncidentNo = json['IncidentNo'];
        IncidentType = json['IncidentType'];
        Severity = json['Severity'];
        Status = json['Status'];
        Title = json['Title'];
        Location = json['Location'];
        CrewLabel = json['CrewLabel'];
        Description = json['Description'];
        ReportedBy = json['ReportedBy'];
        IsRecordable = json['IsRecordable'];
        OccurredAt = JsonConverters.fromJson(json['OccurredAt'],'DateTime',context!);
        ClosedAt = JsonConverters.fromJson(json['ClosedAt'],'DateTime',context!);
        SourceRef = json['SourceRef'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        DaysAgo = json['DaysAgo'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SafetyIncidentID': SafetyIncidentID,
        'SafetyIncidentUID': SafetyIncidentUID,
        'BranchId': BranchId,
        'ProjectID': ProjectID,
        'IncidentNo': IncidentNo,
        'IncidentType': IncidentType,
        'Severity': Severity,
        'Status': Status,
        'Title': Title,
        'Location': Location,
        'CrewLabel': CrewLabel,
        'Description': Description,
        'ReportedBy': ReportedBy,
        'IsRecordable': IsRecordable,
        'OccurredAt': JsonConverters.toJson(OccurredAt,'DateTime',context!),
        'ClosedAt': JsonConverters.toJson(ClosedAt,'DateTime',context!),
        'SourceRef': SourceRef,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
        'DaysAgo': DaysAgo
    };

    getTypeName() => "SafetyIncident";
    TypeContext? context = _ctx;
}

class SafetyIncidentResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    SafetyIncident? Incident;

    SafetyIncidentResponse({this.ResponseStatus,this.Incident});
    SafetyIncidentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Incident = JsonConverters.fromJson(json['Incident'],'SafetyIncident',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Incident': JsonConverters.toJson(Incident,'SafetyIncident',context!)
    };

    getTypeName() => "SafetyIncidentResponse";
    TypeContext? context = _ctx;
}

class SafetyIncidentUpdateRequest implements IConvertible
{
    int? SafetyIncidentID;
    String? IncidentType;
    String? Severity;
    String? Title;
    String? Location;
    String? CrewLabel;
    String? Description;
    String? ReportedBy;
    bool? IsRecordable;
    DateTime? OccurredAt;

    SafetyIncidentUpdateRequest({this.SafetyIncidentID,this.IncidentType,this.Severity,this.Title,this.Location,this.CrewLabel,this.Description,this.ReportedBy,this.IsRecordable,this.OccurredAt});
    SafetyIncidentUpdateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SafetyIncidentID = json['SafetyIncidentID'];
        IncidentType = json['IncidentType'];
        Severity = json['Severity'];
        Title = json['Title'];
        Location = json['Location'];
        CrewLabel = json['CrewLabel'];
        Description = json['Description'];
        ReportedBy = json['ReportedBy'];
        IsRecordable = json['IsRecordable'];
        OccurredAt = JsonConverters.fromJson(json['OccurredAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SafetyIncidentID': SafetyIncidentID,
        'IncidentType': IncidentType,
        'Severity': Severity,
        'Title': Title,
        'Location': Location,
        'CrewLabel': CrewLabel,
        'Description': Description,
        'ReportedBy': ReportedBy,
        'IsRecordable': IsRecordable,
        'OccurredAt': JsonConverters.toJson(OccurredAt,'DateTime',context!)
    };

    getTypeName() => "SafetyIncidentUpdateRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'SafetyIncident': TypeInfo(TypeOf.Class, create:() => SafetyIncident()),
    'SafetyIncidentResponse': TypeInfo(TypeOf.Class, create:() => SafetyIncidentResponse()),
    'SafetyIncidentUpdateRequest': TypeInfo(TypeOf.Class, create:() => SafetyIncidentUpdateRequest()),
});

Dart SafetyIncidentUpdateRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /v1/safety/incidents/{SafetyIncidentID} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	SafetyIncidentID: 0,
	IncidentType: String,
	Severity: String,
	Title: String,
	Location: String,
	CrewLabel: String,
	Description: String,
	ReportedBy: String,
	IsRecordable: False,
	OccurredAt: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	Incident: 
	{
		SafetyIncidentID: 0,
		SafetyIncidentUID: 00000000000000000000000000000000,
		BranchId: 00000000000000000000000000000000,
		ProjectID: 0,
		IncidentNo: String,
		IncidentType: String,
		Severity: String,
		Status: String,
		Title: String,
		Location: String,
		CrewLabel: String,
		Description: String,
		ReportedBy: String,
		IsRecordable: False,
		OccurredAt: 0001-01-01,
		ClosedAt: 0001-01-01,
		SourceRef: String,
		CreatedBy: String,
		CreatedAt: 0001-01-01,
		UpdatedAt: 0001-01-01,
		DaysAgo: 0
	}
}