package org.egl_cepgl.pm.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.egl_cepgl.pm.model.user.User;

@Data
@Builder
public class UserDto
{
    private Long id;
    private String id_kcloak;
    private String first_name;
    private String last_name;
    private String email;
    private String phone;
    private Boolean is_admin;

    public static UserDto fromEntity(User user)
    {
        if(user == null){
            return null;
        }
        return UserDto.builder()
                .id(user.getId())
                .id_kcloak(user.getId_kcloak())
                .email(user.getEmail())
                .first_name(user.getFirst_name())
                .last_name(user.getLast_name())
                .email(user.getEmail())
                .phone(user.getPhone())
                .is_admin(user.getIs_admin())
                .build();
    }

    public static User toEntity(UserDto userDto)
    {
        if(userDto == null){
            return null;
        }
        User user= new User();
        user.setId_kcloak(userDto.getId_kcloak());
        user.setEmail(userDto.getEmail());
        user.setFirst_name(userDto.getFirst_name());
        user.setLast_name(userDto.getLast_name());
        user.setEmail(userDto.getEmail());
        user.setPhone(userDto.getPhone());
        user.setIs_admin(userDto.getIs_admin());
        return user;
    }
}
