Class Poi

Namespace
SIMDispatcher.Core.Models
Assembly
SIMDispatcher.Core.dll

Represents a point of interest (POI) such as hospitals, fire stations, or other locations.

public record Poi : IComparable<Poi>, IComparable, IEquatable<Poi>
Inheritance
Poi
Implements
Inherited Members

Fields

UnitStationCategories

public static readonly PoiCategory[] UnitStationCategories

Field Value

PoiCategory[]

Properties

Address

The address information of the point of interest.

[Display(Description = "Address", ResourceType = typeof(PoiLocalization))]
public Address? Address { get; set; }

Property Value

Address

BonusMalus

The bonus or malus value associated with the point of interest (POI). Must be a value between -100 or +100 (%). This value affects the calculated distance if the POI is a hospital. Units will always prioritize the nearest hospital with the required hospital departments.

[Display(Description = "BonusMalus", ResourceType = typeof(PoiLocalization))]
public int BonusMalus { get; set; }

Property Value

int

Category

The category of the point of interest.

[Display(Description = "Category", ResourceType = typeof(PoiLocalization))]
public PoiCategory Category { get; set; }

Property Value

PoiCategory

Remarks

CommandcenterId

The identifier of the command center associated with the POI.

[Display(Description = "CommandcenterId", ResourceType = typeof(PoiLocalization))]
public long CommandcenterId { get; set; }

Property Value

long

Coordinates

The coordinates (latitude and longitude) of the point of interest.

[Display(Description = "Coordinates", ResourceType = typeof(PoiLocalization))]
public Coordinates Coordinates { get; set; }

Property Value

Coordinates

GermanGenus

The German genus of the point of interest (der, die, das).

[Display(Description = "GermanGenus", ResourceType = typeof(PoiLocalization))]
public string? GermanGenus { get; set; }

Property Value

string

HospitalDepartments

The hospital departments associated with the hospital POI if IsHospital(). Has no effect if IsMaxCareHospital is true.

[Display(Description = "HospitalDepartments", ResourceType = typeof(PoiLocalization))]
public List<PoiHospitalDepartment>? HospitalDepartments { get; set; }

Property Value

List<PoiHospitalDepartment>

HouseNumber

The house number of the point of interest.

[Display(Description = "HouseNumber", ResourceType = typeof(PoiLocalization))]
public string? HouseNumber { get; set; }

Property Value

string

Id

[Display(Description = "Id", ResourceType = typeof(PoiLocalization))]
public long Id { get; set; }

Property Value

long

IsAutomaticPatientTransmission

Indicates whether patient information transmission is automatic at this POI. Units will transmit patient information to the hospital non-verbally if this property is set to true.

[Display(Description = "IsAutomaticPatientTransmission", ResourceType = typeof(PoiLocalization))]
public bool IsAutomaticPatientTransmission { get; set; }

Property Value

bool

IsExternalHospital

Indicates whether the hospital is an external hospital. External hospitals do not generate patient transports, but units may use them as destinations for patients.

[Display(Description = "IsExternalHospital", ResourceType = typeof(PoiLocalization))]
public bool IsExternalHospital { get; set; }

Property Value

bool

IsMaxCareHospital

Indicates whether the hospital is a maximum care hospital and has all PoiHospitalDepartment.

[Display(Description = "IsMaxCareHospital", ResourceType = typeof(PoiLocalization))]
public bool IsMaxCareHospital { get; set; }

Property Value

bool

IsNameCallerNumber

Indicates whether the object name is shown as the caller number for this POI or a random number is generated. DistrictPhonePrefix.

[Display(Description = "IsNameCallerNumber", ResourceType = typeof(PoiLocalization))]
public bool IsNameCallerNumber { get; set; }

Property Value

bool

IsUnitsMoveOutTogether

Indicates whether units should be dispatched together when assigned to this POI. Should be true if IsStationForUnits() and non-volunteer department.

[Display(Description = "IsUnitsMoveOutTogether", ResourceType = typeof(PoiLocalization))]
public bool IsUnitsMoveOutTogether { get; set; }

Property Value

bool

IsWithFireAlarmSystem

Indicates whether a fire alarm system is present at this POI. The presence of a fire alarm system may generate calls.

[Display(Description = "IsWithFireAlarmSystem", ResourceType = typeof(PoiLocalization))]
public bool IsWithFireAlarmSystem { get; set; }

Property Value

bool

Name

The name of the point of interest. Is unique inside a dispatch center.

[Display(Description = "Name", ResourceType = typeof(PoiLocalization))]
public string? Name { get; set; }

Property Value

string

SearchTags

Tags associated with the point of interest for search purposes. Separate multiple tags with a comma.

[Display(Description = "SearchTags", ResourceType = typeof(PoiLocalization))]
public string? SearchTags { get; set; }

Property Value

string

VerbalName

The verbal name of the point of interest. May be used on radio or calls.

[Display(Description = "VerbalName", ResourceType = typeof(PoiLocalization))]
public string? VerbalName { get; set; }

Property Value

string

Methods

CompareTo(Poi?)

Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.

public int CompareTo(Poi? other)

Parameters

other Poi

An object to compare with this instance.

Returns

int

A value that indicates the relative order of the objects being compared. The return value has these meanings:

Value Meaning
Less than zero This instance precedes other in the sort order.
Zero This instance occurs in the same position in the sort order as other.
Greater than zero This instance follows other in the sort order.

CompareTo(object?)

Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.

public int CompareTo(object? obj)

Parameters

obj object

An object to compare with this instance.

Returns

int

A value that indicates the relative order of the objects being compared. The return value has these meanings:

Value Meaning
Less than zero This instance precedes obj in the sort order.
Zero This instance occurs in the same position in the sort order as obj.
Greater than zero This instance follows obj in the sort order.

Exceptions

ArgumentException

obj is not the same type as this instance.

IsHospital()

Checks if the unit represents a hospital.

public bool IsHospital()

Returns

bool

True if the unit is a hospital; otherwise, false.

IsStationForUnits()

Determines if the Point of Interest (POI) category indicates a station for units. If true, units can be assigned to the POI.

public bool IsStationForUnits()

Returns

bool

True if the POI category indicates a station for emergency units; otherwise, false.

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.