# -*- coding: utf-8 -*-

"""
    easybimehlanding

    This file was automatically generated by APIMATIC v2.0 ( https://apimatic.io ).
"""


class EverySquareMeterCoverage(object):

    """Implementation of the 'EverySquareMeterCoverage' model.

    TODO: type model description here.

    Attributes:
        id (int): TODO: type description here.
        fiscal_year_id (int): TODO: type description here.
        insurance_coverage_id (int): TODO: type description here.
        coverage_rial (int): TODO: type description here.
        coverage_euro (string): TODO: type description here.
        from_price (string): TODO: type description here.
        to_price (string): TODO: type description here.
        is_discount (string): TODO: type description here.
        coverage_value_type (string): TODO: type description here.
        coverage_string_value (string): TODO: type description here.
        insurance_type_ids (string): TODO: type description here.
        insurance_company_ids (string): TODO: type description here.
        selected (bool): TODO: type description here.
        is_visible (string): TODO: type description here.
        insurance_type_id (string): TODO: type description here.
        insurance_plans_ids (string): TODO: type description here.
        is_active (string): TODO: type description here.
        insurance_type_titles (string): TODO: type description here.
        insurance_company_titles (string): TODO: type description here.
        insurance_plan_titles (string): TODO: type description here.
        insurance_type_title (string): TODO: type description here.
        created_by (string): TODO: type description here.
        is_plan (string): TODO: type description here.

    """

    # Create a mapping from Model property names to API property names
    _names = {
        "id":'id',
        "fiscal_year_id":'fiscalYearId',
        "insurance_coverage_id":'insuranceCoverageId',
        "coverage_rial":'coverageRial',
        "coverage_string_value":'coverageStringValue',
        "selected":'selected',
        "coverage_euro":'coverageEuro',
        "from_price":'fromPrice',
        "to_price":'toPrice',
        "is_discount":'isDiscount',
        "coverage_value_type":'coverageValueType',
        "insurance_type_ids":'insuranceTypeIds',
        "insurance_company_ids":'insuranceCompanyIds',
        "is_visible":'isVisible',
        "insurance_type_id":'insuranceTypeId',
        "insurance_plans_ids":'insurancePlansIds',
        "is_active":'isActive',
        "insurance_type_titles":'insuranceTypeTitles',
        "insurance_company_titles":'insuranceCompanyTitles',
        "insurance_plan_titles":'insurancePlanTitles',
        "insurance_type_title":'insuranceTypeTitle',
        "created_by":'createdBy',
        "is_plan":'isPlan'
    }

    def __init__(self,
                 id=None,
                 fiscal_year_id=None,
                 insurance_coverage_id=None,
                 coverage_rial=None,
                 coverage_string_value=None,
                 selected=None,
                 coverage_euro=None,
                 from_price=None,
                 to_price=None,
                 is_discount=None,
                 coverage_value_type=None,
                 insurance_type_ids=None,
                 insurance_company_ids=None,
                 is_visible=None,
                 insurance_type_id=None,
                 insurance_plans_ids=None,
                 is_active=None,
                 insurance_type_titles=None,
                 insurance_company_titles=None,
                 insurance_plan_titles=None,
                 insurance_type_title=None,
                 created_by=None,
                 is_plan=None):
        """Constructor for the EverySquareMeterCoverage class"""

        # Initialize members of the class
        self.id = id
        self.fiscal_year_id = fiscal_year_id
        self.insurance_coverage_id = insurance_coverage_id
        self.coverage_rial = coverage_rial
        self.coverage_euro = coverage_euro
        self.from_price = from_price
        self.to_price = to_price
        self.is_discount = is_discount
        self.coverage_value_type = coverage_value_type
        self.coverage_string_value = coverage_string_value
        self.insurance_type_ids = insurance_type_ids
        self.insurance_company_ids = insurance_company_ids
        self.selected = selected
        self.is_visible = is_visible
        self.insurance_type_id = insurance_type_id
        self.insurance_plans_ids = insurance_plans_ids
        self.is_active = is_active
        self.insurance_type_titles = insurance_type_titles
        self.insurance_company_titles = insurance_company_titles
        self.insurance_plan_titles = insurance_plan_titles
        self.insurance_type_title = insurance_type_title
        self.created_by = created_by
        self.is_plan = is_plan


    @classmethod
    def from_dictionary(cls,
                        dictionary):
        """Creates an instance of this model from a dictionary

        Args:
            dictionary (dictionary): A dictionary representation of the object as
            obtained from the deserialization of the server's response. The keys
            MUST match property names in the API description.

        Returns:
            object: An instance of this structure class.

        """
        if dictionary is None:
            return None

        # Extract variables from the dictionary
        id = dictionary.get('id')
        fiscal_year_id = dictionary.get('fiscalYearId')
        insurance_coverage_id = dictionary.get('insuranceCoverageId')
        coverage_rial = dictionary.get('coverageRial')
        coverage_string_value = dictionary.get('coverageStringValue')
        selected = dictionary.get('selected')
        coverage_euro = dictionary.get('coverageEuro')
        from_price = dictionary.get('fromPrice')
        to_price = dictionary.get('toPrice')
        is_discount = dictionary.get('isDiscount')
        coverage_value_type = dictionary.get('coverageValueType')
        insurance_type_ids = dictionary.get('insuranceTypeIds')
        insurance_company_ids = dictionary.get('insuranceCompanyIds')
        is_visible = dictionary.get('isVisible')
        insurance_type_id = dictionary.get('insuranceTypeId')
        insurance_plans_ids = dictionary.get('insurancePlansIds')
        is_active = dictionary.get('isActive')
        insurance_type_titles = dictionary.get('insuranceTypeTitles')
        insurance_company_titles = dictionary.get('insuranceCompanyTitles')
        insurance_plan_titles = dictionary.get('insurancePlanTitles')
        insurance_type_title = dictionary.get('insuranceTypeTitle')
        created_by = dictionary.get('createdBy')
        is_plan = dictionary.get('isPlan')

        # Return an object of this model
        return cls(id,
                   fiscal_year_id,
                   insurance_coverage_id,
                   coverage_rial,
                   coverage_string_value,
                   selected,
                   coverage_euro,
                   from_price,
                   to_price,
                   is_discount,
                   coverage_value_type,
                   insurance_type_ids,
                   insurance_company_ids,
                   is_visible,
                   insurance_type_id,
                   insurance_plans_ids,
                   is_active,
                   insurance_type_titles,
                   insurance_company_titles,
                   insurance_plan_titles,
                   insurance_type_title,
                   created_by,
                   is_plan)


