TariffV2CommandMapperImpl.java

package com.github.jenkaby.bikerental.tariff.web.command.mapper;

import com.github.jenkaby.bikerental.tariff.application.usecase.CreateTariffV2UseCase;
import com.github.jenkaby.bikerental.tariff.application.usecase.UpdateTariffV2UseCase;
import com.github.jenkaby.bikerental.tariff.domain.model.PricingType;
import com.github.jenkaby.bikerental.tariff.web.command.dto.TariffV2Request;
import java.time.LocalDate;
import java.util.Map;
import javax.annotation.processing.Generated;
import org.springframework.stereotype.Component;

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    comments = "version: 1.6.3, compiler: IncrementalProcessingEnvironment from gradle-language-java-9.4.1.jar, environment: Java 21.0.10 (Amazon.com Inc.)"
)
@Component
public class TariffV2CommandMapperImpl implements TariffV2CommandMapper {

    @Override
    public CreateTariffV2UseCase.CreateTariffV2Command toCreateCommand(TariffV2Request request) {
        if ( request == null ) {
            return null;
        }

        Map<String, Object> params = null;
        String name = null;
        String description = null;
        String equipmentTypeSlug = null;
        PricingType pricingType = null;
        LocalDate validFrom = null;
        LocalDate validTo = null;

        params = paramsToMap( request.params() );
        name = request.name();
        description = request.description();
        equipmentTypeSlug = request.equipmentTypeSlug();
        pricingType = request.pricingType();
        validFrom = request.validFrom();
        validTo = request.validTo();

        CreateTariffV2UseCase.CreateTariffV2Command createTariffV2Command = new CreateTariffV2UseCase.CreateTariffV2Command( name, description, equipmentTypeSlug, pricingType, params, validFrom, validTo );

        return createTariffV2Command;
    }

    @Override
    public UpdateTariffV2UseCase.UpdateTariffV2Command toUpdateCommand(Long id, TariffV2Request request) {
        if ( id == null && request == null ) {
            return null;
        }

        Map<String, Object> params = null;
        String name = null;
        String description = null;
        String equipmentTypeSlug = null;
        PricingType pricingType = null;
        LocalDate validFrom = null;
        LocalDate validTo = null;
        if ( request != null ) {
            params = paramsToMap( request.params() );
            name = request.name();
            description = request.description();
            equipmentTypeSlug = request.equipmentTypeSlug();
            pricingType = request.pricingType();
            validFrom = request.validFrom();
            validTo = request.validTo();
        }
        Long id1 = null;
        id1 = id;

        UpdateTariffV2UseCase.UpdateTariffV2Command updateTariffV2Command = new UpdateTariffV2UseCase.UpdateTariffV2Command( id1, name, description, equipmentTypeSlug, pricingType, params, validFrom, validTo );

        return updateTariffV2Command;
    }
}