/*
* 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;
namespace IO.Swagger.DTO
{
///
/// DTO contenant les données du collaborateur.
///
[DataContract]
public partial class CollaborateurDTO : IEquatable
{
///
/// Id du collaborateur
///
/// Id du collaborateur
[Required]
[DataMember(Name="id")]
public Guid? Id { get; set; }
///
/// Nom du collaborateur
///
/// Nom du collaborateur
[Required]
[DataMember(Name="nom")]
public string Nom { get; set; }
///
/// Prénom du collaborateur
///
/// Prénom du collaborateur
[Required]
[DataMember(Name="prenom")]
public string Prenom { get; set; }
///
/// Mail Apside du collaborateur
///
/// Mail Apside du collaborateur
[Required]
[DataMember(Name="mailApside")]
public string MailApside { get; set; }
///
/// Date à laquelle le collaborateur a été embauché
///
/// Date à laquelle le collaborateur a été embauché
[Required]
[DataMember(Name="dateArrivee")]
public DateTime? DateArrivee { get; set; }
///
/// Date à laquelle le collaborateur a quitté l'entreprise
///
/// Date à laquelle le collaborateur a quitté l'entreprise
[DataMember(Name="dateDepart")]
public DateTime? DateDepart { get; set; }
///
/// Gets or Sets BusinessUnit
///
[DataMember(Name="businessUnit")]
public BusinessUnitDTO BusinessUnit { get; set; }
///
/// Gets or Sets Referent
///
[DataMember(Name="referent")]
public CollaborateurDTO Referent { 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 CollaborateurDTO {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Nom: ").Append(Nom).Append("\n");
sb.Append(" Prenom: ").Append(Prenom).Append("\n");
sb.Append(" MailApside: ").Append(MailApside).Append("\n");
sb.Append(" DateArrivee: ").Append(DateArrivee).Append("\n");
sb.Append(" DateDepart: ").Append(DateDepart).Append("\n");
sb.Append(" BusinessUnit: ").Append(BusinessUnit).Append("\n");
sb.Append(" Referent: ").Append(Referent).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((CollaborateurDTO)obj);
}
///
/// Returns true if CollaborateurDTO instances are equal
///
/// Instance of CollaborateurDTO to be compared
/// Boolean
public bool Equals(CollaborateurDTO other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return
(
Id == other.Id ||
Id != null &&
Id.Equals(other.Id)
) &&
(
Nom == other.Nom ||
Nom != null &&
Nom.Equals(other.Nom)
) &&
(
Prenom == other.Prenom ||
Prenom != null &&
Prenom.Equals(other.Prenom)
) &&
(
MailApside == other.MailApside ||
MailApside != null &&
MailApside.Equals(other.MailApside)
) &&
(
DateArrivee == other.DateArrivee ||
DateArrivee != null &&
DateArrivee.Equals(other.DateArrivee)
) &&
(
DateDepart == other.DateDepart ||
DateDepart != null &&
DateDepart.Equals(other.DateDepart)
) &&
(
BusinessUnit == other.BusinessUnit ||
BusinessUnit != null &&
BusinessUnit.Equals(other.BusinessUnit)
) &&
(
Referent == other.Referent ||
Referent != null &&
Referent.Equals(other.Referent)
);
}
///
/// 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 (Nom != null)
hashCode = hashCode * 59 + Nom.GetHashCode();
if (Prenom != null)
hashCode = hashCode * 59 + Prenom.GetHashCode();
if (MailApside != null)
hashCode = hashCode * 59 + MailApside.GetHashCode();
if (DateArrivee != null)
hashCode = hashCode * 59 + DateArrivee.GetHashCode();
if (DateDepart != null)
hashCode = hashCode * 59 + DateDepart.GetHashCode();
if (BusinessUnit != null)
hashCode = hashCode * 59 + BusinessUnit.GetHashCode();
if (Referent != null)
hashCode = hashCode * 59 + Referent.GetHashCode();
return hashCode;
}
}
#region Operators
#pragma warning disable 1591
public static bool operator ==(CollaborateurDTO left, CollaborateurDTO right)
{
return Equals(left, right);
}
public static bool operator !=(CollaborateurDTO left, CollaborateurDTO right)
{
return !Equals(left, right);
}
public static implicit operator CollaborateurDTO(Guid? v)
{
throw new NotImplementedException();
}
#pragma warning restore 1591
#endregion Operators
}
}