database_dto_ConsultantDto.js
const EmployeurDto = require("../dto/EmployeurDto");
const ConnectedUser = require("./ConnectedUser");
/**
* @swagger
* components:
* schemas:
* newConsultant:
* type: object
* properties:
* birthDate:
* type: string
* description: L'email de l'administrateur a créer.
* example: 04/03/2000
* birthPlace:
* type: string
* description: observations sur l'administrateur.
* example: Poissy
* secuNum:
* type: string
* description: le Nom de l'admin.
* example: 993039399393939
* address:
* type: string
* description: le Prénom de l'admin.
* example: 29 rue charles
* zipCode:
* type: string
* description: le numero de téléphone de l'admin..
* example: O619629393
* city:
* type: string
* description: le Prénom de l'admin.
* example: ayoub
* createdAt:
* type: string
* description: le numero de téléphone de l'admin..
* example: 09/04/4884
* Employeurs:
* type: string
* description: le Prénom de l'admin.
* example: ayoub
* Missions:
* type: string
* description: le numero de téléphone de l'admin..
* example: devops
* Utilisateur:
* type: string
* description: le numero de téléphone de l'admin..
* example: 3
* Consultant:
* allOf:
* - type: object
* properties:
* id:
* type: integer
* description: The user ID.
* example: 0
* - $ref: '#/components/schemas/newEmployeur'
*/
/**
* @memberof Myintranet.DTOS
*/
class ConsultantDto {
constructor(consultant, light = false) {
this.id = consultant.id;
this.birthDate = consultant.birthDate;
this.birthPlace = consultant.birthPlace;
this.secuNum = consultant.secuNum;
this.address = consultant.address;
this.zipCode = consultant.zipCode;
this.status = consultant.status;
this.city = consultant.city;
this.codePlace = consultant.codePlace;
this.birthPlace= consultant.birthPlace
this.createdAt = consultant.createdAt;
//TODO : create consultantValidateDto for validation wthout consultantFiles
if(consultant.consultantFiles){
this.consultantFiles = consultant.consultantFiles;
}
if (!light) {
this.Employeurs = consultant.Employeurs.map((employeur) => {
return new EmployeurDto(employeur);
});
delete consultant.Missions.deletedAt;
this.Missions = consultant.Missions;
this.Missionfiles = consultant.Missionfiles;
}
this.Utilisateur = new ConnectedUser(consultant.Utilisateur);
}
}
module.exports = ConsultantDto;