import json

from payrollservice.util.payrollutil import get_pf_type


class EmployeePaystructureResponse:
    id = None
    employee_id = None
    standard_ctc = None
    disability = None
    pf_type = None
    is_tds = None
    gross_pay = None

    def get(self):
        return json.dumps(self, default=lambda o: o.__dict__,
                          sort_keys=True, indent=4)
    def set_id(self, id):
        self.id = id

    def set_employee_id(self, employee_id):
        self.employee_id = employee_id

    def set_standard_ctc(self, standard_ctc):
        self.standard_ctc = str(standard_ctc)

    def set_standard_yearly_ctc(self, standard_ctc):
        self.standard_yearly_ctc = str(standard_ctc * 12)

    def set_disability(self, disability):
        self.disability = disability

    def set_pf_type(self, pf_type):
        self.pf_type = get_pf_type(pf_type)

    def set_is_tds(self,is_tds):
        self.is_tds = str(is_tds)

    def set_gross_pay(self,gross_pay):
        self.gross_pay = str(gross_pay)

    def set_yearly_gross_pay(self,gross_pay):
        self.yearly_gross_pay = str(gross_pay * 12)

    def set_take_home(self, take_home):
        self.take_home = str(take_home)
    def set_take_home_yearly(self, take_home):
        self.yearly_take_home = str(take_home * 12)

