import json

from payrollservice.util.masterutil import payrolldeduction_val


class EmployeePaystructure_deductionsResponse:
    id = None
    employee_id = None
    paycomponent_id = None
    type = None
    from_date = None
    to_date = None
    amount=None
    deduction_amount = 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_type(self, type):
        self.type = payrolldeduction_val(type)

    def set_from_date(self, from_date):
        self.from_date = str(from_date)

    def set_to_date(self, to_date):
        self.to_date = str(to_date)

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

    def set_paycomponent_id(self, paycomponent_id):
        self.paycomponent_id = paycomponent_id

    def set_paycomponent_val(self,paycomponent,arr):
        self.paycomponent = None
        for i in arr:
            if i.id == paycomponent:
                self.paycomponent =i
                break
            else:
                pass

    def set_employee_val(self, employee_id, arr):
        self.employee = None
        for i in arr:
            if i.id == employee_id:
                self.employee = i
                break
            else:
                pass

    def set_amount(self, amount):
        self.amount=str(amount)

    def set_total(self, total):
        self.dd_total=str(total)
    def set_YEARLY_total(self, total):
        self.dd_yearly_total=str(total * 12)
    def set_emp_name(self, emp_name):
        self.employee_name  = emp_name
    def set_YEARLY_amount(self, amount):
        self.yearly_amount=str(amount * 12)

    def set_deduction_amount(self, amount):
        self.deduction_amount = str(amount)
    def set_deduction_id(self,id):
        self.deduction_id = id