package org.egl_cepgl.pm.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.egl_cepgl.pm.model.Enterprise;

import java.util.List;
import java.util.stream.Collectors;

@Data
@Builder
public class EnterpriseDto
{
    private Long id;

    private String namep;

    private String email;

    private String phone;

    private String address;

    private CountryDto country;

    private EnterpriseQualificationDto qualification;

    private Integer experience;

    private List<FileDto> files;

    private Boolean status;

    public static EnterpriseDto fromEntity(Enterprise obj)
    {
        if(obj == null){
            return null;
        }
        return EnterpriseDto.builder()
                .id(obj.getId())
                .email(obj.getEmail())
                .namep(obj.getNamep())
                .phone(obj.getPhone())
                .address(obj.getAddress())
                .country(CountryDto.fromEntity(obj.getCountry()))
                .experience(obj.getExperience())
                .qualification(EnterpriseQualificationDto.fromEntity(obj.getQualification()))
                .files(obj.getFiles().stream().map(FileDto::fromEntity).collect(Collectors.toList()))
                .status(obj.getStatus())
                .build();
    }
}
