package de.ivu.elect.business.entschaedigung.entity;

import de.ivu.elect.jee.presentation.dynamicform.Property;

@javax.enterprise.inject.Vetoed
public class EntschaedigungsartProperties
{

private final Entschaedigungsart entity;


    
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
                  anzahlInitialProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
                  anzahlMaximalProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
                  anzahlMinimalProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart>
                  berechnungsartProperty;

                private de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart> berechnungsartMitLeererAuswahlProperty;
        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  beschreibungProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  bezeichnungProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
                  einzelbetragInitialProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
                  einzelbetragMaximalProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
                  einzelbetragMinimalProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  templateProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  kriteriumEinsatzfunktionProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  kriteriumEinsatzortProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  kriteriumPersonendatenArtProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  waehrungAlsIsoCodeProperty;

        
    

public EntschaedigungsartProperties(Entschaedigungsart entity) {
this.entity = entity;

}

private static EntschaedigungsartMeta getMetaData() {
return de.ivu.elect.jee.cdi.BeanManagerUtil.getBeanByClass( EntschaedigungsartMeta.class);
}


    

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractLongProperty
                getAnzahlInitialProperty() {
        if (anzahlInitialProperty == null) {
        anzahlInitialProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
        
        (
        getMetaData().getAnzahlInitialEinzahlMessage(),
        getMetaData().getAnzahlInitialDefaultValue(),
        getMetaData().isAnzahlInitialRequired(),
                entity::setAnzahlInitial,
        entity::getAnzahlInitial

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_INITIAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_INITIAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_INITIAL_MAX_LENGTH
                );

        }


        return anzahlInitialProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractLongProperty
                getAnzahlMaximalProperty() {
        if (anzahlMaximalProperty == null) {
        anzahlMaximalProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
        
        (
        getMetaData().getAnzahlMaximalEinzahlMessage(),
        getMetaData().getAnzahlMaximalDefaultValue(),
        getMetaData().isAnzahlMaximalRequired(),
                entity::setAnzahlMaximal,
        entity::getAnzahlMaximal

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MAXIMAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MAXIMAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MAXIMAL_MAX_LENGTH
                );

        }


        return anzahlMaximalProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractLongProperty
                getAnzahlMinimalProperty() {
        if (anzahlMinimalProperty == null) {
        anzahlMinimalProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
        
        (
        getMetaData().getAnzahlMinimalEinzahlMessage(),
        getMetaData().getAnzahlMinimalDefaultValue(),
        getMetaData().isAnzahlMinimalRequired(),
                entity::setAnzahlMinimal,
        entity::getAnzahlMinimal

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MINIMAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MINIMAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ANZAHL_MINIMAL_MAX_LENGTH
                );

        }


        return anzahlMinimalProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart>
                getBerechnungsartProperty() {
        if (berechnungsartProperty == null) {
        berechnungsartProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
        
        (
        getMetaData().getBerechnungsartEinzahlMessage(),
        getMetaData().getBerechnungsartDefaultValue(),
        getMetaData().isBerechnungsartRequired(),
                entity::setBerechnungsart,
        entity::getBerechnungsart

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart.class,
            java.util.Arrays.asList(de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                );

        }


        return berechnungsartProperty;
        }





        

            public de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart> getBerechnungsartMitLeererAuswahlProperty() {
               if (berechnungsartMitLeererAuswahlProperty == null) {
                 berechnungsartMitLeererAuswahlProperty = new
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
                    (
                        getMetaData().getBerechnungsartEinzahlMessage(),
        				getMetaData().getBerechnungsartDefaultValue(),
                        getMetaData().isBerechnungsartRequired(),
                        entity::setBerechnungsart,
                        entity::getBerechnungsart
                        , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart.class,
                        java.util.Arrays.asList(de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartBerechnungsart.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                        ,true
                    );
            }

               return berechnungsartMitLeererAuswahlProperty;
            }
        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getBeschreibungProperty() {
        if (beschreibungProperty == null) {
        beschreibungProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getBeschreibungEinzahlMessage(),
        getMetaData().getBeschreibungDefaultValue(),
        getMetaData().isBeschreibungRequired(),
                entity::setBeschreibung,
        entity::getBeschreibung

                    , 0 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.BESCHREIBUNG_MAX_LENGTH
                );

        }


        return beschreibungProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getBezeichnungProperty() {
        if (bezeichnungProperty == null) {
        bezeichnungProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getBezeichnungEinzahlMessage(),
        getMetaData().getBezeichnungDefaultValue(),
        getMetaData().isBezeichnungRequired(),
                entity::setBezeichnung,
        entity::getBezeichnung

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.BEZEICHNUNG_MAX_LENGTH
                );

        }


        return bezeichnungProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractBigDecimalProperty
                getEinzelbetragInitialProperty() {
        if (einzelbetragInitialProperty == null) {
        einzelbetragInitialProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
        
        (
        getMetaData().getEinzelbetragInitialEinzahlMessage(),
        getMetaData().getEinzelbetragInitialDefaultValue(),
        getMetaData().isEinzelbetragInitialRequired(),
                    "#######0.00",
                entity::setEinzelbetragInitial,
        entity::getEinzelbetragInitial

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_INITIAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_INITIAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_INITIAL_MAX_LENGTH
                );

        }


        return einzelbetragInitialProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractBigDecimalProperty
                getEinzelbetragMaximalProperty() {
        if (einzelbetragMaximalProperty == null) {
        einzelbetragMaximalProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
        
        (
        getMetaData().getEinzelbetragMaximalEinzahlMessage(),
        getMetaData().getEinzelbetragMaximalDefaultValue(),
        getMetaData().isEinzelbetragMaximalRequired(),
                    "#######0.00",
                entity::setEinzelbetragMaximal,
        entity::getEinzelbetragMaximal

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MAXIMAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MAXIMAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MAXIMAL_MAX_LENGTH
                );

        }


        return einzelbetragMaximalProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractBigDecimalProperty
                getEinzelbetragMinimalProperty() {
        if (einzelbetragMinimalProperty == null) {
        einzelbetragMinimalProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaBigDecimalProperty
        
        (
        getMetaData().getEinzelbetragMinimalEinzahlMessage(),
        getMetaData().getEinzelbetragMinimalDefaultValue(),
        getMetaData().isEinzelbetragMinimalRequired(),
                    "#######0.00",
                entity::setEinzelbetragMinimal,
        entity::getEinzelbetragMinimal

                    , de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MINIMAL_MIN_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MINIMAL_MAX_VALUE,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.EINZELBETRAG_MINIMAL_MAX_LENGTH
                );

        }


        return einzelbetragMinimalProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getTemplateProperty() {
        if (templateProperty == null) {
        templateProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getTemplateEinzahlMessage(),
        getMetaData().getTemplateDefaultValue(),
        getMetaData().isTemplateRequired(),
                entity::setTemplate,
        entity::getTemplate

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.ENTSCHAEDIGUNGSART_TEMPLATE_MAX_LENGTH
                );

        }


        return templateProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getKriteriumEinsatzfunktionProperty() {
        if (kriteriumEinsatzfunktionProperty == null) {
        kriteriumEinsatzfunktionProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getKriteriumEinsatzfunktionEinzahlMessage(),
        getMetaData().getKriteriumEinsatzfunktionDefaultValue(),
        getMetaData().isKriteriumEinsatzfunktionRequired(),
                entity::setKriteriumEinsatzfunktion,
        entity::getKriteriumEinsatzfunktion

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.KRITERIUM_EINSATZFUNKTION_MAX_LENGTH
                );

        }


        return kriteriumEinsatzfunktionProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getKriteriumEinsatzortProperty() {
        if (kriteriumEinsatzortProperty == null) {
        kriteriumEinsatzortProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getKriteriumEinsatzortEinzahlMessage(),
        getMetaData().getKriteriumEinsatzortDefaultValue(),
        getMetaData().isKriteriumEinsatzortRequired(),
                entity::setKriteriumEinsatzort,
        entity::getKriteriumEinsatzort

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.KRITERIUM_EINSATZORT_MAX_LENGTH
                );

        }


        return kriteriumEinsatzortProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getKriteriumPersonendatenArtProperty() {
        if (kriteriumPersonendatenArtProperty == null) {
        kriteriumPersonendatenArtProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getKriteriumPersonendatenArtEinzahlMessage(),
        getMetaData().getKriteriumPersonendatenArtDefaultValue(),
        getMetaData().isKriteriumPersonendatenArtRequired(),
                entity::setKriteriumPersonendatenArt,
        entity::getKriteriumPersonendatenArt

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.KRITERIUM_PERSONENDATEN_ART_MAX_LENGTH
                );

        }


        return kriteriumPersonendatenArtProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getWaehrungAlsIsoCodeProperty() {
        if (waehrungAlsIsoCodeProperty == null) {
        waehrungAlsIsoCodeProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getWaehrungAlsIsoCodeEinzahlMessage(),
        getMetaData().getWaehrungAlsIsoCodeDefaultValue(),
        getMetaData().isWaehrungAlsIsoCodeRequired(),
                entity::setWaehrungAlsIsoCode,
        entity::getWaehrungAlsIsoCode

                    ,  1 ,
            de.ivu.elect.business.entschaedigung.entity.EntschaedigungsartConstants.WAEHRUNG_MAX_LENGTH
                );

        }


        return waehrungAlsIsoCodeProperty;
        }





        
        }