/*
* 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 contenant l'ensemble des informations d'un EP.
///
[DataContract]
public partial class EpDTO : IEquatable
{
///
/// Id de l’EP
///
/// Id de l’EP
[Required]
[DataMember(Name="id")]
public long? Id { get; set; }
///
/// Gets or Sets Type
///
[Required]
[DataMember(Name="type")]
public TypeEp Type { get; set; }
///
/// Date à partir de laquelle l'EP peut être saisi
///
/// Date à partir de laquelle l'EP peut être saisi
[Required]
[DataMember(Name="dateDisponibilite")]
public DateTime? DateDisponibilite { get; set; }
///
/// Date à laquelle l'EP est prévu, la date par défaut est celle de l'anniversaire du collaborateur (+6 mois pour EPS)
///
/// Date à laquelle l'EP est prévu, la date par défaut est celle de l'anniversaire du collaborateur (+6 mois pour EPS)
[Required]
[DataMember(Name="datePrevisionnelle")]
public DateTime? DatePrevisionnelle { get; set; }
///
/// Date à laquelle le collaborateur a signé l'EP
///
/// Date à laquelle le collaborateur a signé l'EP
[DataMember(Name="dateSignatureCollaborateur")]
public DateTime? DateSignatureCollaborateur { get; set; }
///
/// Date à laquelle le référent a signé l'EP
///
/// Date à laquelle le référent a signé l'EP
[DataMember(Name="dateSignatureReferent")]
public DateTime? DateSignatureReferent { get; set; }
///
/// Date à laquelle l’EP a été saisi par le collaborateur
///
/// Date à laquelle l’EP a été saisi par le collaborateur
[DataMember(Name="dateSaisie")]
public DateTime? DateSaisie { get; set; }
///
/// Gets or Sets Statut
///
[Required]
[DataMember(Name="statut")]
public StatutEp Statut { get; set; }
///
/// Nom du CV Apside du collaborateur
///
/// Nom du CV Apside du collaborateur
[Required]
[DataMember(Name="cv")]
public string Cv { get; set; }
///
/// Gets or Sets PropositionsEntretien
///
[DataMember(Name="propositionsEntretien")]
public List PropositionsEntretien { get; set; }
///
/// Gets or Sets RdvEntretien
///
[DataMember(Name="rdvEntretien")]
public RDVEntretienDTO RdvEntretien { get; set; }
///
/// Gets or Sets ChoixTypeEntretien
///
[DataMember(Name="choixTypeEntretien")]
public TypeEntretienDTO ChoixTypeEntretien { get; set; }
///
/// Indique si oui ou non l'EP doit obligatoirement être effectué
///
/// Indique si oui ou non l'EP doit obligatoirement être effectué
[Required]
[DataMember(Name="obligatoire")]
public bool? Obligatoire { get; set; }
///
/// Gets or Sets Objectifs
///
[Required]
[DataMember(Name="objectifs")]
public List Objectifs { get; set; }
///
/// Gets or Sets ObjectifsPrecedent
///
[DataMember(Name="objectifsPrecedent")]
public List ObjectifsPrecedent { get; set; }
///
/// Gets or Sets Collaborateur
///
[DataMember(Name="collaborateur")]
public CollaborateurDTO Collaborateur { get; set; }
///
/// Gets or Sets Referent
///
[DataMember(Name="referent")]
public CollaborateurDTO Referent { get; set; }
///
/// Gets or Sets DemandesFormation
///
[DataMember(Name="demandesFormation")]
public List DemandesFormation { get; set; }
///
/// Gets or Sets Participants
///
[DataMember(Name="participants")]
public List Participants { get; set; }
///
/// Gets or Sets Engagements
///
[DataMember(Name="engagements")]
public List Engagements { get; set; }
///
/// Gets or Sets AugmentationSalaire
///
[DataMember(Name="augmentationSalaire")]
public AugmentationSalaireDTO AugmentationSalaire { get; set; }
///
/// Gets or Sets DemandesDelegation
///
[DataMember(Name="demandesDelegation")]
public List DemandesDelegation { get; set; }
///
/// Gets or Sets DemandeEPI
///
[DataMember(Name="demandeEPI")]
public DemandeEPIDTO DemandeEPI { get; set; }
///
/// Gets or Sets Documents
///
[Required]
[DataMember(Name="documents")]
public List Documents { get; set; }
///
/// Gets or Sets CommentairesAssistant
///
[DataMember(Name="commentairesAssistant")]
public List CommentairesAssistant { 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 EpDTO {\n");
sb.Append(" Id: ").Append(Id).Append("\n");
sb.Append(" Type: ").Append(Type).Append("\n");
sb.Append(" DateDisponibilite: ").Append(DateDisponibilite).Append("\n");
sb.Append(" DatePrevisionnelle: ").Append(DatePrevisionnelle).Append("\n");
sb.Append(" DateSignatureCollaborateur: ").Append(DateSignatureCollaborateur).Append("\n");
sb.Append(" DateSignatureReferent: ").Append(DateSignatureReferent).Append("\n");
sb.Append(" DateSaisie: ").Append(DateSaisie).Append("\n");
sb.Append(" Statut: ").Append(Statut).Append("\n");
sb.Append(" Cv: ").Append(Cv).Append("\n");
sb.Append(" PropositionsEntretien: ").Append(PropositionsEntretien).Append("\n");
sb.Append(" RdvEntretien: ").Append(RdvEntretien).Append("\n");
sb.Append(" ChoixTypeEntretien: ").Append(ChoixTypeEntretien).Append("\n");
sb.Append(" Obligatoire: ").Append(Obligatoire).Append("\n");
sb.Append(" Objectifs: ").Append(Objectifs).Append("\n");
sb.Append(" ObjectifsPrecedent: ").Append(ObjectifsPrecedent).Append("\n");
sb.Append(" Collaborateur: ").Append(Collaborateur).Append("\n");
sb.Append(" Referent: ").Append(Referent).Append("\n");
sb.Append(" DemandesFormation: ").Append(DemandesFormation).Append("\n");
sb.Append(" Participants: ").Append(Participants).Append("\n");
sb.Append(" Engagements: ").Append(Engagements).Append("\n");
sb.Append(" AugmentationSalaire: ").Append(AugmentationSalaire).Append("\n");
sb.Append(" DemandesDelegation: ").Append(DemandesDelegation).Append("\n");
sb.Append(" DemandeEPI: ").Append(DemandeEPI).Append("\n");
sb.Append(" Documents: ").Append(Documents).Append("\n");
sb.Append(" CommentairesAssistant: ").Append(CommentairesAssistant).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((EpDTO)obj);
}
///
/// Returns true if EpDTO instances are equal
///
/// Instance of EpDTO to be compared
/// Boolean
public bool Equals(EpDTO other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return
(
Id == other.Id ||
Id != null &&
Id.Equals(other.Id)
) &&
(
Type == other.Type ||
Type != null &&
Type.Equals(other.Type)
) &&
(
DateDisponibilite == other.DateDisponibilite ||
DateDisponibilite != null &&
DateDisponibilite.Equals(other.DateDisponibilite)
) &&
(
DatePrevisionnelle == other.DatePrevisionnelle ||
DatePrevisionnelle != null &&
DatePrevisionnelle.Equals(other.DatePrevisionnelle)
) &&
(
DateSignatureCollaborateur == other.DateSignatureCollaborateur ||
DateSignatureCollaborateur != null &&
DateSignatureCollaborateur.Equals(other.DateSignatureCollaborateur)
) &&
(
DateSignatureReferent == other.DateSignatureReferent ||
DateSignatureReferent != null &&
DateSignatureReferent.Equals(other.DateSignatureReferent)
) &&
(
DateSaisie == other.DateSaisie ||
DateSaisie != null &&
DateSaisie.Equals(other.DateSaisie)
) &&
(
Statut == other.Statut ||
Statut != null &&
Statut.Equals(other.Statut)
) &&
(
Cv == other.Cv ||
Cv != null &&
Cv.Equals(other.Cv)
) &&
(
PropositionsEntretien == other.PropositionsEntretien ||
PropositionsEntretien != null &&
PropositionsEntretien.SequenceEqual(other.PropositionsEntretien)
) &&
(
RdvEntretien == other.RdvEntretien ||
RdvEntretien != null &&
RdvEntretien.Equals(other.RdvEntretien)
) &&
(
ChoixTypeEntretien == other.ChoixTypeEntretien ||
ChoixTypeEntretien != null &&
ChoixTypeEntretien.Equals(other.ChoixTypeEntretien)
) &&
(
Obligatoire == other.Obligatoire ||
Obligatoire != null &&
Obligatoire.Equals(other.Obligatoire)
) &&
(
Objectifs == other.Objectifs ||
Objectifs != null &&
Objectifs.SequenceEqual(other.Objectifs)
) &&
(
ObjectifsPrecedent == other.ObjectifsPrecedent ||
ObjectifsPrecedent != null &&
ObjectifsPrecedent.SequenceEqual(other.ObjectifsPrecedent)
) &&
(
Collaborateur == other.Collaborateur ||
Collaborateur != null &&
Collaborateur.Equals(other.Collaborateur)
) &&
(
Referent == other.Referent ||
Referent != null &&
Referent.Equals(other.Referent)
) &&
(
DemandesFormation == other.DemandesFormation ||
DemandesFormation != null &&
DemandesFormation.SequenceEqual(other.DemandesFormation)
) &&
(
Participants == other.Participants ||
Participants != null &&
Participants.SequenceEqual(other.Participants)
) &&
(
Engagements == other.Engagements ||
Engagements != null &&
Engagements.SequenceEqual(other.Engagements)
) &&
(
AugmentationSalaire == other.AugmentationSalaire ||
AugmentationSalaire != null &&
AugmentationSalaire.Equals(other.AugmentationSalaire)
) &&
(
DemandesDelegation == other.DemandesDelegation ||
DemandesDelegation != null &&
DemandesDelegation.SequenceEqual(other.DemandesDelegation)
) &&
(
DemandeEPI == other.DemandeEPI ||
DemandeEPI != null &&
DemandeEPI.Equals(other.DemandeEPI)
) &&
(
Documents == other.Documents ||
Documents != null &&
Documents.SequenceEqual(other.Documents)
) &&
(
CommentairesAssistant == other.CommentairesAssistant ||
CommentairesAssistant != null &&
CommentairesAssistant.SequenceEqual(other.CommentairesAssistant)
);
}
///
/// 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 (Type != null)
hashCode = hashCode * 59 + Type.GetHashCode();
if (DateDisponibilite != null)
hashCode = hashCode * 59 + DateDisponibilite.GetHashCode();
if (DatePrevisionnelle != null)
hashCode = hashCode * 59 + DatePrevisionnelle.GetHashCode();
if (DateSignatureCollaborateur != null)
hashCode = hashCode * 59 + DateSignatureCollaborateur.GetHashCode();
if (DateSignatureReferent != null)
hashCode = hashCode * 59 + DateSignatureReferent.GetHashCode();
if (DateSaisie != null)
hashCode = hashCode * 59 + DateSaisie.GetHashCode();
if (Statut != null)
hashCode = hashCode * 59 + Statut.GetHashCode();
if (Cv != null)
hashCode = hashCode * 59 + Cv.GetHashCode();
if (PropositionsEntretien != null)
hashCode = hashCode * 59 + PropositionsEntretien.GetHashCode();
if (RdvEntretien != null)
hashCode = hashCode * 59 + RdvEntretien.GetHashCode();
if (ChoixTypeEntretien != null)
hashCode = hashCode * 59 + ChoixTypeEntretien.GetHashCode();
if (Obligatoire != null)
hashCode = hashCode * 59 + Obligatoire.GetHashCode();
if (Objectifs != null)
hashCode = hashCode * 59 + Objectifs.GetHashCode();
if (ObjectifsPrecedent != null)
hashCode = hashCode * 59 + ObjectifsPrecedent.GetHashCode();
if (Collaborateur != null)
hashCode = hashCode * 59 + Collaborateur.GetHashCode();
if (Referent != null)
hashCode = hashCode * 59 + Referent.GetHashCode();
if (DemandesFormation != null)
hashCode = hashCode * 59 + DemandesFormation.GetHashCode();
if (Participants != null)
hashCode = hashCode * 59 + Participants.GetHashCode();
if (Engagements != null)
hashCode = hashCode * 59 + Engagements.GetHashCode();
if (AugmentationSalaire != null)
hashCode = hashCode * 59 + AugmentationSalaire.GetHashCode();
if (DemandesDelegation != null)
hashCode = hashCode * 59 + DemandesDelegation.GetHashCode();
if (DemandeEPI != null)
hashCode = hashCode * 59 + DemandeEPI.GetHashCode();
if (Documents != null)
hashCode = hashCode * 59 + Documents.GetHashCode();
if (CommentairesAssistant != null)
hashCode = hashCode * 59 + CommentairesAssistant.GetHashCode();
return hashCode;
}
}
#region Operators
#pragma warning disable 1591
public static bool operator ==(EpDTO left, EpDTO right)
{
return Equals(left, right);
}
public static bool operator !=(EpDTO left, EpDTO right)
{
return !Equals(left, right);
}
#pragma warning restore 1591
#endregion Operators
}
}