package com.qsoft.rs.sincoar.dominio.mapper;

import com.qsoft.rs.sincoar.dto.MdUsersDTO;
import com.qsoft.rs.sincoar.model.MdSchemas;
import com.qsoft.rs.sincoar.model.MdUsers;
import java.math.BigDecimal;
import java.math.BigInteger;
import javax.annotation.processing.Generated;

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2022-09-02T16:14:46-0500",
    comments = "version: 1.5.2.Final, compiler: javac, environment: Java 17.0.4 (Private Build)"
)
public class MdUsersMapperImpl implements MdUsersMapper {

    @Override
    public MdUsers getEntidad(MdUsersDTO mdUsers) {
        if ( mdUsers == null ) {
            return null;
        }

        MdUsers mdUsers1 = new MdUsers();

        mdUsers1.setSchemaIdFk( mdUsersDTOToMdSchemas( mdUsers ) );
        if ( mdUsers.getId() != null ) {
            mdUsers1.setId( BigDecimal.valueOf( mdUsers.getId() ) );
        }
        mdUsers1.setUsername( mdUsers.getUsername() );
        mdUsers1.setPassword( mdUsers.getPassword() );
        mdUsers1.setNativeSql( mdUsers.getNativeSql() );
        mdUsers1.setNativeKey( mdUsers.getNativeKey() );
        mdUsers1.setComments( mdUsers.getComments() );
        if ( mdUsers.getSecurityGroupId() != null ) {
            mdUsers1.setSecurityGroupId( BigInteger.valueOf( mdUsers.getSecurityGroupId() ) );
        }
        mdUsers1.setCreatedOn( mdUsers.getCreatedOn() );
        mdUsers1.setCreatedBy( mdUsers.getCreatedBy() );
        mdUsers1.setLastUpdatedOn( mdUsers.getLastUpdatedOn() );
        mdUsers1.setLastUpdatedBy( mdUsers.getLastUpdatedBy() );

        return mdUsers1;
    }

    @Override
    public MdUsersDTO getDto(MdUsers mdUsers) {
        if ( mdUsers == null ) {
            return null;
        }

        MdUsersDTO mdUsersDTO = new MdUsersDTO();

        BigDecimal id = mdUsersSchemaIdFkId( mdUsers );
        if ( id != null ) {
            mdUsersDTO.setSchemaIdFk( id.intValue() );
        }
        if ( mdUsers.getId() != null ) {
            mdUsersDTO.setId( mdUsers.getId().intValue() );
        }
        mdUsersDTO.setUsername( mdUsers.getUsername() );
        mdUsersDTO.setPassword( mdUsers.getPassword() );
        mdUsersDTO.setNativeSql( mdUsers.getNativeSql() );
        mdUsersDTO.setNativeKey( mdUsers.getNativeKey() );
        mdUsersDTO.setComments( mdUsers.getComments() );
        if ( mdUsers.getSecurityGroupId() != null ) {
            mdUsersDTO.setSecurityGroupId( mdUsers.getSecurityGroupId().intValue() );
        }
        mdUsersDTO.setCreatedOn( mdUsers.getCreatedOn() );
        mdUsersDTO.setCreatedBy( mdUsers.getCreatedBy() );
        mdUsersDTO.setLastUpdatedOn( mdUsers.getLastUpdatedOn() );
        mdUsersDTO.setLastUpdatedBy( mdUsers.getLastUpdatedBy() );

        return mdUsersDTO;
    }

    protected MdSchemas mdUsersDTOToMdSchemas(MdUsersDTO mdUsersDTO) {
        if ( mdUsersDTO == null ) {
            return null;
        }

        MdSchemas mdSchemas = new MdSchemas();

        if ( mdUsersDTO.getSchemaIdFk() != null ) {
            mdSchemas.setId( BigDecimal.valueOf( mdUsersDTO.getSchemaIdFk() ) );
        }

        return mdSchemas;
    }

    private BigDecimal mdUsersSchemaIdFkId(MdUsers mdUsers) {
        if ( mdUsers == null ) {
            return null;
        }
        MdSchemas schemaIdFk = mdUsers.getSchemaIdFk();
        if ( schemaIdFk == null ) {
            return null;
        }
        BigDecimal id = schemaIdFk.getId();
        if ( id == null ) {
            return null;
        }
        return id;
    }
}
