package com.seatel.mobilehall.ui.home.model

import com.seatel.mobilehall.ui.login.model.PromotionHomeModel
import com.seatel.mobilehall.ui.login.model.ContactService

class MainDataModel {

    private var custName: String = ""

    private var planCode: String = ""

    private var planName: String = ""

    private var balance: Double = 0.0

    private var expDate: String = ""

    private var valueExpDate: String = ""

    private var type: String = ""

    private var dataExpDate: String = ""

    private var status: String = ""

    private var phoneNumber: String = ""

    private var profilePicture: String = ""

    private var textUnlimted: String = ""

    private var mainButtonText: String = ""

    private var remainingData: Double = 0.0

    private var remainingValue: Double = 0.0

    private var totalData: Double = 0.0

    private var totalValue: Double = 0.0

    private var simPriceDefault: Double = 0.5

    private var useValue: Boolean = false

    private var snowfall: Boolean = false

    private var forceUpdate: Boolean = false

    private var isNewUpdateAvailable: Boolean = false

    private var fallEffectType: String = ""

    private var unlimitedInternet: Boolean = false

    private var shipmentInsuranceRate: Double = 0.0

    private var orderIdUnSuccess: ArrayList<Int> = ArrayList()

    private var contactService: ArrayList<ContactService> = ArrayList()

    private var promotions: ArrayList<PromotionHomeModel> = ArrayList()

    private var hasInstalmentPlan: Boolean = false

    private var eventGame: Boolean = false

    private var roamingActivation: Boolean = false
    private var specialSimcard: Boolean = false

    private var bannerBuySim: String = ""
    private var bannerBuyTopup: String = ""


    fun setSpecialSimcard(value: Boolean) {
        this.specialSimcard = value
    }

    fun getSpecialSimcard(): Boolean {
        return specialSimcard
    }

    fun setRoamingActivation(value: Boolean) {
        this.roamingActivation = value
    }

    fun getRoamingActivation(): Boolean {
        return roamingActivation
    }

    fun setEventGame(eventGame: Boolean) {
        this.eventGame = eventGame
    }

    fun isEventGame(): Boolean {
        return eventGame
    }

    fun setHasInstallmentPlan(value: Boolean) {
        this.hasInstalmentPlan = value
    }

    fun isHasInstallmentPlan(): Boolean {
        return this.hasInstalmentPlan
    }

    fun setRemainingValue(value: Double) {
        this.remainingValue = value
    }

    fun getRemainingValue(): Double {
        return this.remainingValue
    }

    fun setTotalValue(value: Double) {
        this.totalValue = value
    }

    fun getTotalValue(): Double {
        return this.totalValue
    }

    fun setSimPriceDefault(price: Double) {
        this.simPriceDefault = price
    }

    fun getSimPriceDefault(): Double {
        return simPriceDefault
    }

    fun getTextGetMore(): String {
        return mainButtonText
    }

    fun setTextGetMore(str: String) {
        mainButtonText = str
    }

    fun setTextUnlimted(str: String) {
        this.textUnlimted = str
    }

    fun getTextUnlimted(): String {
        return textUnlimted
    }

    fun setUnlimitedInternet(unlimitedInternet: Boolean) {
        this.unlimitedInternet = unlimitedInternet
    }

    fun getUnlimtedInternet(): Boolean {
        return unlimitedInternet
    }

    fun setSnowFall(falling: Boolean) {
        this.snowfall = falling
    }

    fun getSnowFall(): Boolean {
        return snowfall
    }

    fun setFallEffectType(str: String) {
        this.fallEffectType = str
    }

    fun getFallEffectType(): String {
        return fallEffectType
    }

    fun setIsUseValue(falling: Boolean) {
        this.useValue = falling
    }

    fun getIsUseValue(): Boolean {
        return useValue
    }

    fun setForceUpdate(forceUpdate: Boolean) {
        this.forceUpdate = forceUpdate
    }

    fun getForceUpdate(): Boolean {
        return forceUpdate
    }

    fun setIsNewUpdateAvailable(isNewUpdateAvailable: Boolean) {
        this.isNewUpdateAvailable = isNewUpdateAvailable
    }

    fun getIsNewUpdateAvailable(): Boolean {
        return isNewUpdateAvailable
    }


    fun setShipmentInsuranceRate(rate: Double) {
        shipmentInsuranceRate = rate
    }

    fun getShipmentInsuranceRate(): Double {
        return shipmentInsuranceRate
    }

    fun setPromotions(promo: ArrayList<PromotionHomeModel>) {
        this.promotions = promo
    }

    fun getPromotions(): ArrayList<PromotionHomeModel> {
        return promotions
    }

    fun setOrderIdUnSuccess(idOrder: ArrayList<Int>) {
        orderIdUnSuccess = idOrder
    }

    fun getOrderIdUnSuccess(): ArrayList<Int> {
        return orderIdUnSuccess
    }

    fun setTypeAccount(typeAcc: String) {
        this.type = typeAcc
    }

    fun geTypeAccount(): String {
        return type
    }

    fun setCustName(custName: String) {
        this.custName = custName
    }

    fun getCustName(): String {
        return custName
    }

    fun setPlanCode(planCode: String) {
        this.planCode = planCode
    }

    fun getPlanCode(): String {
        return planCode
    }

    fun setPlanName(planName: String) {
        this.planName = planName
    }

    fun getPlanName(): String {
        return planName
    }

    fun setPhoneNumber(planName: String) {
        this.phoneNumber = planName
    }

    fun getPhonNumber(): String {
        return phoneNumber
    }

    fun setBalance(balance: Double) {
        this.balance = balance
    }

    fun getBalance(): Double? {
        return balance
    }

    fun setRemainingData(remainingData: Double) {
        this.remainingData = remainingData
    }

    fun getRemainingData(): Double? {
        return remainingData
    }

    fun setTotalData(totalData: Double) {
        this.totalData = totalData
    }

    fun getTotalData(): Double? {
        return totalData
    }

    fun setExpDate(expDate: String) {
        this.expDate = expDate
    }

    fun getExpDate(): String {
        return expDate
    }

    fun setValueExpDate(valueExpDate: String) {
        this.valueExpDate = valueExpDate
    }

    fun getValueExpDate(): String {
        return valueExpDate
    }

    fun setDataExpDate(dataExpDate: String) {
        this.dataExpDate = dataExpDate
    }

    fun getDataExpDate(): String {
        return dataExpDate
    }

    fun setStatus(status: String) {
        this.status = status
    }

    fun getStatus(): String {
        return status
    }

    fun setProfilePicture(pic: String) {
        this.profilePicture = pic
    }

    fun getProfilePicture(): String {
        return profilePicture
    }

    fun setBannerBuySim(bannerBuySim: String) {
        this.bannerBuySim = bannerBuySim
    }

    fun getBannerBuySim(): String {
        return bannerBuySim
    }

    fun setBannerBuyTopup(bannerBuyTopup: String) {
        this.bannerBuyTopup = bannerBuyTopup
    }

    fun getBannerBuyTopup(): String {
        return bannerBuyTopup
    }

    fun setContactService(contactService: ArrayList<ContactService>) {
        this.contactService = contactService
    }

    fun getContactService(): ArrayList<ContactService> {
        return contactService
    }
}