You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Digitalisation_EPA_Serveur/EPAServeur/DTO/EngagementDTO.cs

230 lines
8.0 KiB

/*
* API du serveur de l'application de digitalisation des EP
*
* API qui sra utilisée afin de faire communiquer le client et le serveur ainsi que le serveur et la boîte noire.
*
* OpenAPI spec version: 1.3.6
*
* Generated by: https://github.com/swagger-api/swagger-codegen.git
*/
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using IO.Swagger.Enum;
namespace IO.Swagger.DTO
{
/// <summary>
/// DTO concernant les engagements pris par le référent lors de l&#x27;EP.
/// </summary>
[DataContract]
public partial class EngagementDTO : IEquatable<EngagementDTO>
{
/// <summary>
/// Id de l&#x27;engagement
/// </summary>
/// <value>Id de l&#x27;engagement</value>
[Required]
[DataMember(Name="id")]
public long? Id { get; set; }
/// <summary>
/// Action de l&#x27;engagement
/// </summary>
/// <value>Action de l&#x27;engagement</value>
[Required]
[DataMember(Name="action")]
public string Action { get; set; }
/// <summary>
/// Dispositif à mettre en place pour respecter l&#x27;engagement dans les temps
/// </summary>
/// <value>Dispositif à mettre en place pour respecter l&#x27;engagement dans les temps</value>
[Required]
[DataMember(Name="dispositif")]
public string Dispositif { get; set; }
/// <summary>
/// ”Sur temps de travail” ou ”Hors-temps”
/// </summary>
/// <value>”Sur temps de travail” ou ”Hors-temps”</value>
[Required]
[DataMember(Name="modalite")]
public string Modalite { get; set; }
/// <summary>
/// Date limite pour respecter l&#x27;engagement
/// </summary>
/// <value>Date limite pour respecter l&#x27;engagement</value>
[Required]
[DataMember(Name="dateLimite")]
public DateTime? DateLimite { get; set; }
/// <summary>
/// Gets or Sets EtatEngagement
/// </summary>
[DataMember(Name="etatEngagement")]
public EtatEngagement EtatEngagement { get; set; }
/// <summary>
/// Raison pour laquelle l&#x27;engagement ne sera pas respecté
/// </summary>
/// <value>Raison pour laquelle l&#x27;engagement ne sera pas respecté</value>
[DataMember(Name="raisonNonRealisable")]
public string RaisonNonRealisable { get; set; }
/// <summary>
/// Gets or Sets Ep
/// </summary>
[DataMember(Name="ep")]
public EpInformationDTO Ep { get; set; }
/// <summary>
/// Returns the string presentation of the object
/// </summary>
/// <returns>String presentation of the object</returns>
public override string ToString()
{
var sb = new StringBuilder();
sb.Append("class EngagementDTO {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Action: ").Append(Action).Append("\n");
sb.Append(" Dispositif: ").Append(Dispositif).Append("\n");
sb.Append(" Modalite: ").Append(Modalite).Append("\n");
sb.Append(" DateLimite: ").Append(DateLimite).Append("\n");
sb.Append(" EtatEngagement: ").Append(EtatEngagement).Append("\n");
sb.Append(" RaisonNonRealisable: ").Append(RaisonNonRealisable).Append("\n");
sb.Append(" Ep: ").Append(Ep).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
/// <summary>
/// Returns the JSON string presentation of the object
/// </summary>
/// <returns>JSON string presentation of the object</returns>
public string ToJson()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
/// <summary>
/// Returns true if objects are equal
/// </summary>
/// <param name="obj">Object to be compared</param>
/// <returns>Boolean</returns>
public override bool Equals(object obj)
{
if (ReferenceEquals(null, obj)) return false;
if (ReferenceEquals(this, obj)) return true;
return obj.GetType() == GetType() && Equals((EngagementDTO)obj);
}
/// <summary>
/// Returns true if EngagementDTO instances are equal
/// </summary>
/// <param name="other">Instance of EngagementDTO to be compared</param>
/// <returns>Boolean</returns>
public bool Equals(EngagementDTO other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return
(
Id == other.Id ||
Id != null &&
Id.Equals(other.Id)
) &&
(
Action == other.Action ||
Action != null &&
Action.Equals(other.Action)
) &&
(
Dispositif == other.Dispositif ||
Dispositif != null &&
Dispositif.Equals(other.Dispositif)
) &&
(
Modalite == other.Modalite ||
Modalite != null &&
Modalite.Equals(other.Modalite)
) &&
(
DateLimite == other.DateLimite ||
DateLimite != null &&
DateLimite.Equals(other.DateLimite)
) &&
(
EtatEngagement == other.EtatEngagement ||
EtatEngagement != null &&
EtatEngagement.Equals(other.EtatEngagement)
) &&
(
RaisonNonRealisable == other.RaisonNonRealisable ||
RaisonNonRealisable != null &&
RaisonNonRealisable.Equals(other.RaisonNonRealisable)
) &&
(
Ep == other.Ep ||
Ep != null &&
Ep.Equals(other.Ep)
);
}
/// <summary>
/// Gets the hash code
/// </summary>
/// <returns>Hash code</returns>
public override int GetHashCode()
{
unchecked // Overflow is fine, just wrap
{
var hashCode = 41;
// Suitable nullity checks etc, of course :)
if (Id != null)
hashCode = hashCode * 59 + Id.GetHashCode();
if (Action != null)
hashCode = hashCode * 59 + Action.GetHashCode();
if (Dispositif != null)
hashCode = hashCode * 59 + Dispositif.GetHashCode();
if (Modalite != null)
hashCode = hashCode * 59 + Modalite.GetHashCode();
if (DateLimite != null)
hashCode = hashCode * 59 + DateLimite.GetHashCode();
if (EtatEngagement != null)
hashCode = hashCode * 59 + EtatEngagement.GetHashCode();
if (RaisonNonRealisable != null)
hashCode = hashCode * 59 + RaisonNonRealisable.GetHashCode();
if (Ep != null)
hashCode = hashCode * 59 + Ep.GetHashCode();
return hashCode;
}
}
#region Operators
#pragma warning disable 1591
public static bool operator ==(EngagementDTO left, EngagementDTO right)
{
return Equals(left, right);
}
public static bool operator !=(EngagementDTO left, EngagementDTO right)
{
return !Equals(left, right);
}
#pragma warning restore 1591
#endregion Operators
}
}