/*
* 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
{
///
/// DTO concernant un objectif du dernier EP effectué par le collaborateur.
///
[DataContract]
public partial class ObjectifPrecedentDTO : IEquatable
{
///
/// Id de l'objectif précédent
///
/// Id de l'objectif précédent
[Required]
[DataMember(Name="id")]
public long? Id { get; set; }
///
/// Objectif précédent du collaborateur
///
/// Objectif précédent du collaborateur
[Required]
[DataMember(Name="libelle")]
public string Libelle { get; set; }
///
/// Gets or Sets StatutObjectif
///
[DataMember(Name="statutObjectif")]
public StatutObjectif StatutObjectif { get; set; }
///
/// Commentaire du collaborateur sur l'objectif
///
/// Commentaire du collaborateur sur l'objectif
[DataMember(Name="commentaire")]
public string Commentaire { get; set; }
///
/// Returns the string presentation of the object
///
/// String presentation of the object
public override string ToString()
{
var sb = new StringBuilder();
sb.Append("class ObjectifPrecedentDTO {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Libelle: ").Append(Libelle).Append("\n");
sb.Append(" StatutObjectif: ").Append(StatutObjectif).Append("\n");
sb.Append(" Commentaire: ").Append(Commentaire).Append("\n");
sb.Append("}\n");
return sb.ToString();
}
///
/// Returns the JSON string presentation of the object
///
/// JSON string presentation of the object
public string ToJson()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
///
/// Returns true if objects are equal
///
/// Object to be compared
/// Boolean
public override bool Equals(object obj)
{
if (ReferenceEquals(null, obj)) return false;
if (ReferenceEquals(this, obj)) return true;
return obj.GetType() == GetType() && Equals((ObjectifPrecedentDTO)obj);
}
///
/// Returns true if ObjectifPrecedentDTO instances are equal
///
/// Instance of ObjectifPrecedentDTO to be compared
/// Boolean
public bool Equals(ObjectifPrecedentDTO other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return
(
Id == other.Id ||
Id != null &&
Id.Equals(other.Id)
) &&
(
Libelle == other.Libelle ||
Libelle != null &&
Libelle.Equals(other.Libelle)
) &&
(
StatutObjectif == other.StatutObjectif ||
StatutObjectif != null &&
StatutObjectif.Equals(other.StatutObjectif)
) &&
(
Commentaire == other.Commentaire ||
Commentaire != null &&
Commentaire.Equals(other.Commentaire)
);
}
///
/// Gets the hash code
///
/// Hash code
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 (Libelle != null)
hashCode = hashCode * 59 + Libelle.GetHashCode();
if (StatutObjectif != null)
hashCode = hashCode * 59 + StatutObjectif.GetHashCode();
if (Commentaire != null)
hashCode = hashCode * 59 + Commentaire.GetHashCode();
return hashCode;
}
}
#region Operators
#pragma warning disable 1591
public static bool operator ==(ObjectifPrecedentDTO left, ObjectifPrecedentDTO right)
{
return Equals(left, right);
}
public static bool operator !=(ObjectifPrecedentDTO left, ObjectifPrecedentDTO right)
{
return !Equals(left, right);
}
#pragma warning restore 1591
#endregion Operators
}
}