<?php
/*
 * Developer : John D'Alto (jdalto@yahoo.com)
 * Date : 9/1/2012
 * All code (c)2012 JLS Consulting, all rights reserved
 */

namespace Dorcas\TabithaBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity(repositoryClass="Dorcas\TabithaBundle\Repository\TabithaRepository")
 * @ORM\Table(name="finance")
 */

class Finance
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $finance_id;
    
    /**
     * @ORM\Column(type="integer")
     */
    protected $client_id;
    
    /**
     * @ORM\OneToOne(targetEntity="Client", inversedBy="finance")
     * @ORM\JoinColumn(name="client_id", referencedColumnName="client_id")
     */
    protected $client;
    
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $takeHome_pay;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $spouseOther_pay;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $unemployment_compensation;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $workers_compensation;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $childSupport_alimony;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $socialSecurity_income;    
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $ssi_disability;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $work_first;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $food_stamps;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $other_income;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $rent;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $water;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $childcare;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $child_support;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $electric;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $natural_gas;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $cable_tv;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $telephone;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $cell_phone;
    
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */  
    protected $education;
	
	/**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $clothing;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $laundry;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $pets;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $gifts;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
    protected $food;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $medical_insurance;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $otherMedical_expense;
     
     /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */     
     protected $car_payment_one;
	
	/**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */	 
     protected $car_payment_two;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $car_insurance;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */ 
     protected $gasoline;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $otherTransportation_expense;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $creditCard_payment;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $other_loans;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */
     protected $savings;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */     
     protected $other_one;
	
    /**
     * @ORM\Column(type="decimal", scale=2, nullable=true)
     */	 
     protected $other_two;
	
     /**
     * @ORM\Column(type="string", nullable=true)
     */	 
     protected $other_one_label;
     
     /**
     * @ORM\Column(type="string", nullable=true)
     */	 
     protected $other_two_label;

         /**
     * @ORM\Column(type="datetime")
     */
    protected $created_dt;
    
    /**
     * @ORM\Column(type="datetime")
     */
    protected $modified_dt;
     
    /**
     * Get finance_id
     *
     * @return integer 
     */
    public function getFinanceId()
    {
        return $this->finance_id;
    }

    /**
     * Set takeHome_pay
     *
     * @param string $takeHomePay
     */
    public function setTakeHomePay($takeHomePay)
    {
        $this->takeHome_pay = $takeHomePay;
    }

    /**
     * Get takeHome_pay
     *
     * @return string 
     */
    public function getTakeHomePay()
    {
        return $this->takeHome_pay;
    }

    /**
     * Set spouseOther_pay
     *
     * @param decimal $spouseOtherPay
     */
    public function setSpouseOtherPay($spouseOtherPay)
    {
        $this->spouseOther_pay = $spouseOtherPay;
    }

    /**
     * Get spouseOther_pay
     *
     * @return decimal 
     */
    public function getSpouseOtherPay()
    {
        return $this->spouseOther_pay;
    }

    /**
     * Set unemployment_compensation
     *
     * @param decimal $unemploymentCompensation
     */
    public function setUnemploymentCompensation($unemploymentCompensation)
    {
        $this->unemployment_compensation = $unemploymentCompensation;
    }

    /**
     * Get unemployment_compensation
     *
     * @return decimal 
     */
    public function getUnemploymentCompensation()
    {
        return $this->unemployment_compensation;
    }

    /**
     * Set workers_compensation
     *
     * @param decimal $workersCompensation
     */
    public function setWorkersCompensation($workersCompensation)
    {
        $this->workers_compensation = $workersCompensation;
    }

    /**
     * Get workers_compensation
     *
     * @return decimal 
     */
    public function getWorkersCompensation()
    {
        return $this->workers_compensation;
    }

    /**
     * Set childSupport_alimony
     *
     * @param decimal $childSupportAlimony
     */
    public function setChildSupportAlimony($childSupportAlimony)
    {
        $this->childSupport_alimony = $childSupportAlimony;
    }

    /**
     * Get childSupport_alimony
     *
     * @return decimal 
     */
    public function getChildSupportAlimony()
    {
        return $this->childSupport_alimony;
    }

    /**
     * Set socialSecurity_income
     *
     * @param decimal $socialSecurityIncome
     */
    public function setSocialSecurityIncome($socialSecurityIncome)
    {
        $this->socialSecurity_income = $socialSecurityIncome;
    }

    /**
     * Get socialSecurity_income
     *
     * @return decimal 
     */
    public function getSocialSecurityIncome()
    {
        return $this->socialSecurity_income;
    }

    /**
     * Set ssi_disability
     *
     * @param decimal $ssiDisability
     */
    public function setSsiDisability($ssiDisability)
    {
        $this->ssi_disability = $ssiDisability;
    }

    /**
     * Get ssi_disability
     *
     * @return decimal 
     */
    public function getSsiDisability()
    {
        return $this->ssi_disability;
    }

    /**
     * Set work_first
     *
     * @param decimal $workFirst
     */
    public function setWorkFirst($workFirst)
    {
        $this->work_first = $workFirst;
    }

    /**
     * Get work_first
     *
     * @return decimal 
     */
    public function getWorkFirst()
    {
        return $this->work_first;
    }

    /**
     * Set food_stamps
     *
     * @param decimal $foodStamps
     */
    public function setFoodStamps($foodStamps)
    {
        $this->food_stamps = $foodStamps;
    }

    /**
     * Get food_stamps
     *
     * @return decimal 
     */
    public function getFoodStamps()
    {
        return $this->food_stamps;
    }

    /**
     * Set other_income
     *
     * @param decimal $otherIncome
     */
    public function setOtherIncome($otherIncome)
    {
        $this->other_income = $otherIncome;
    }

    /**
     * Get other_income
     *
     * @return decimal 
     */
    public function getOtherIncome()
    {
        return $this->other_income;
    }

    /**
     * Set rent
     *
     * @param decimal $rent
     */
    public function setRent($rent)
    {
        $this->rent = $rent;
    }

    /**
     * Get rent
     *
     * @return decimal 
     */
    public function getRent()
    {
        return $this->rent;
    }

    /**
     * Set water
     *
     * @param decimal $water
     */
    public function setWater($water)
    {
        $this->water = $water;
    }

    /**
     * Get water
     *
     * @return decimal 
     */
    public function getWater()
    {
        return $this->water;
    }

    /**
     * Set childcare
     *
     * @param decimal $childcare
     */
    public function setChildcare($childcare)
    {
        $this->childcare = $childcare;
    }

    /**
     * Get childcare
     *
     * @return decimal 
     */
    public function getChildcare()
    {
        return $this->childcare;
    }

    /**
     * Set child_support
     *
     * @param decimal $childSupport
     */
    public function setChildSupport($childSupport)
    {
        $this->child_support = $childSupport;
    }

    /**
     * Get child_support
     *
     * @return decimal 
     */
    public function getChildSupport()
    {
        return $this->child_support;
    }

    /**
     * Set electric
     *
     * @param decimal $electric
     */
    public function setElectric($electric)
    {
        $this->electric = $electric;
    }

    /**
     * Get electric
     *
     * @return decimal 
     */
    public function getElectric()
    {
        return $this->electric;
    }

    /**
     * Set natural_gas
     *
     * @param decimal $naturalGas
     */
    public function setNaturalGas($naturalGas)
    {
        $this->natural_gas = $naturalGas;
    }

    /**
     * Get natural_gas
     *
     * @return decimal 
     */
    public function getNaturalGas()
    {
        return $this->natural_gas;
    }

    /**
     * Set cable_tv
     *
     * @param decimal $cableTv
     */
    public function setCableTv($cableTv)
    {
        $this->cable_tv = $cableTv;
    }

    /**
     * Get cable_tv
     *
     * @return decimal 
     */
    public function getCableTv()
    {
        return $this->cable_tv;
    }

    /**
     * Set telephone
     *
     * @param decimal $telephone
     */
    public function setTelephone($telephone)
    {
        $this->telephone = $telephone;
    }

    /**
     * Get telephone
     *
     * @return decimal 
     */
    public function getTelephone()
    {
        return $this->telephone;
    }

    /**
     * Set cell_phone
     *
     * @param decimal $cellPhone
     */
    public function setCellPhone($cellPhone)
    {
        $this->cell_phone = $cellPhone;
    }

    /**
     * Get cell_phone
     *
     * @return decimal 
     */
    public function getCellPhone()
    {
        return $this->cell_phone;
    }

    /**
     * Set education
     *
     * @param decimal $education
     */
    public function setEducation($education)
    {
        $this->education = $education;
    }

    /**
     * Get education
     *
     * @return decimal 
     */
    public function getEducation()
    {
        return $this->education;
    }

    /**
     * Set clothing
     *
     * @param decimal $clothing
     */
    public function setClothing($clothing)
    {
        $this->clothing = $clothing;
    }

    /**
     * Get clothing
     *
     * @return decimal 
     */
    public function getClothing()
    {
        return $this->clothing;
    }

    /**
     * Set laundry
     *
     * @param decimal $laundry
     */
    public function setLaundry($laundry)
    {
        $this->laundry = $laundry;
    }

    /**
     * Get laundry
     *
     * @return decimal 
     */
    public function getLaundry()
    {
        return $this->laundry;
    }

    /**
     * Set pets
     *
     * @param decimal $pets
     */
    public function setPets($pets)
    {
        $this->pets = $pets;
    }

    /**
     * Get pets
     *
     * @return decimal 
     */
    public function getPets()
    {
        return $this->pets;
    }

    /**
     * Set gifts
     *
     * @param decimal $gifts
     */
    public function setGifts($gifts)
    {
        $this->gifts = $gifts;
    }

    /**
     * Get gifts
     *
     * @return decimal 
     */
    public function getGifts()
    {
        return $this->gifts;
    }

    /**
     * Set food
     *
     * @param decimal $food
     */
    public function setFood($food)
    {
        $this->food = $food;
    }

    /**
     * Get food
     *
     * @return decimal 
     */
    public function getFood()
    {
        return $this->food;
    }

    /**
     * Set medical_insurance
     *
     * @param decimal $medicalInsurance
     */
    public function setMedicalInsurance($medicalInsurance)
    {
        $this->medical_insurance = $medicalInsurance;
    }

    /**
     * Get medical_insurance
     *
     * @return decimal 
     */
    public function getMedicalInsurance()
    {
        return $this->medical_insurance;
    }

    /**
     * Set otherMedical_expense
     *
     * @param decimal $otherMedicalExpense
     */
    public function setOtherMedicalExpense($otherMedicalExpense)
    {
        $this->otherMedical_expense = $otherMedicalExpense;
    }

    /**
     * Get otherMedical_expense
     *
     * @return decimal 
     */
    public function getOtherMedicalExpense()
    {
        return $this->otherMedical_expense;
    }

    /**
     * Set car_insurance
     *
     * @param decimal $carInsurance
     */
    public function setCarInsurance($carInsurance)
    {
        $this->car_insurance = $carInsurance;
    }

    /**
     * Get car_insurance
     *
     * @return decimal 
     */
    public function getCarInsurance()
    {
        return $this->car_insurance;
    }

    /**
     * Set gasoline
     *
     * @param decimal $gasoline
     */
    public function setGasoline($gasoline)
    {
        $this->gasoline = $gasoline;
    }

    /**
     * Get gasoline
     *
     * @return decimal 
     */
    public function getGasoline()
    {
        return $this->gasoline;
    }

    /**
     * Set otherTransportation_expense
     *
     * @param decimal $otherTransportationExpense
     */
    public function setOtherTransportationExpense($otherTransportationExpense)
    {
        $this->otherTransportation_expense = $otherTransportationExpense;
    }

    /**
     * Get otherTransportation_expense
     *
     * @return decimal 
     */
    public function getOtherTransportationExpense()
    {
        return $this->otherTransportation_expense;
    }

    /**
     * Set creditCard_payment
     *
     * @param decimal $creditCardPayment
     */
    public function setCreditCardPayment($creditCardPayment)
    {
        $this->creditCard_payment = $creditCardPayment;
    }

    /**
     * Get creditCard_payment
     *
     * @return decimal 
     */
    public function getCreditCardPayment()
    {
        return $this->creditCard_payment;
    }

    /**
     * Set other_loans
     *
     * @param decimal $otherLoans
     */
    public function setOtherLoans($otherLoans)
    {
        $this->other_loans = $otherLoans;
    }

    /**
     * Get other_loans
     *
     * @return decimal 
     */
    public function getOtherLoans()
    {
        return $this->other_loans;
    }

    /**
     * Set savings
     *
     * @param decimal $savings
     */
    public function setSavings($savings)
    {
        $this->savings = $savings;
    }

    /**
     * Get savings
     *
     * @return decimal 
     */
    public function getSavings()
    {
        return $this->savings;
    }

    /**
     * Set car_payment_one
     *
     * @param decimal $carPaymentOne
     */
    public function setCarPaymentOne($carPaymentOne)
    {
        $this->car_payment_one = $carPaymentOne;
    }

    /**
     * Get car_payment_one
     *
     * @return decimal 
     */
    public function getCarPaymentOne()
    {
        return $this->car_payment_one;
    }

    /**
     * Set car_payment_two
     *
     * @param decimal $carPaymentTwo
     */
    public function setCarPaymentTwo($carPaymentTwo)
    {
        $this->car_payment_two = $carPaymentTwo;
    }

    /**
     * Get car_payment_two
     *
     * @return decimal 
     */
    public function getCarPaymentTwo()
    {
        return $this->car_payment_two;
    }

    /**
     * Set other_one
     *
     * @param decimal $otherOne
     */
    public function setOtherOne($otherOne)
    {
        $this->other_one = $otherOne;
    }

    /**
     * Get other_one
     *
     * @return decimal 
     */
    public function getOtherOne()
    {
        return $this->other_one;
    }

    /**
     * Set other_two
     *
     * @param decimal $otherTwo
     */
    public function setOtherTwo($otherTwo)
    {
        $this->other_two = $otherTwo;
    }

    /**
     * Get other_two
     *
     * @return decimal 
     */
    public function getOtherTwo()
    {
        return $this->other_two;
    }

    /**
     * Set client_id
     *
     * @param integer $clientId
     */
    public function setClientId($clientId)
    {
        $this->client_id = $clientId;
    }

    /**
     * Get client_id
     *
     * @return integer 
     */
    public function getClientId()
    {
        return $this->client_id;
    }

    /**
     * Set client
     *
     * @param Dorcas\TabithaBundle\Entity\Client $client
     */
    public function setClient(\Dorcas\TabithaBundle\Entity\Client $client)
    {
        $this->client = $client;
    }

    /**
     * Get client
     *
     * @return Dorcas\TabithaBundle\Entity\Client 
     */
    public function getClient()
    {
        return $this->client;
    }

    /**
     * Set other_two_label
     *
     * @param string $otherTwoLabel
     */
    public function setOtherTwoLabel($otherTwoLabel)
    {
        $this->other_two_label = $otherTwoLabel;
    }

    /**
     * Get other_two_label
     *
     * @return string 
     */
    public function getOtherTwoLabel()
    {
        return $this->other_two_label;
    }
    
        /**
     * @ORM\preUpdate
     */
    public function setUpdatedValue()
    {
       $this->setModifiedDt(new \DateTime());
    }

   public function __construct()
    {
        $this->setCreatedDt(new \DateTime());
        $this->setModifiedDt(new \DateTime());
    }
    

    /**
     * Set created_dt
     *
     * @param datetime $createdDt
     */
    public function setCreatedDt($createdDt)
    {
        $this->created_dt = $createdDt;
    }

    /**
     * Get created_dt
     *
     * @return datetime 
     */
    public function getCreatedDt()
    {
        return $this->created_dt;
    }

    /**
     * Set modified_dt
     *
     * @param datetime $modifiedDt
     */
    public function setModifiedDt($modifiedDt)
    {
        $this->modified_dt = $modifiedDt;
    }

    /**
     * Get modified_dt
     *
     * @return datetime 
     */
    public function getModifiedDt()
    {
        return $this->modified_dt;
    }

    /**
     * Set other_one_label
     *
     * @param string $otherOneLabel
     */
    public function setOtherOneLabel($otherOneLabel)
    {
        $this->other_one_label = $otherOneLabel;
    }

    /**
     * Get other_one_label
     *
     * @return string 
     */
    public function getOtherOneLabel()
    {
        return $this->other_one_label;
    }
}