import json
from npayroll.settings import micro_userservice
import requests


class ApiToken:
    def Apitoken_post_method(self, value, url, token=None, method='POST'):
        if token is None:
            token_val = "Token " + str(self._token())
        else:
            token_val = "Token " + str(token)
        headers = {"content-type": "application/json", "Authorization": "" + token_val + ""}
        if method == "POST":
            jsonData = json.dumps(value)
            resp_data = requests.post(str(micro_userservice) + url, data=jsonData,
                                      headers=headers, verify=False)
            if resp_data.status_code == 200:
                try:
                    ven_obj_arr = (json.loads(resp_data.content))
                    return ven_obj_arr
                except:
                    return None
            else:
                return None
        else:
            resp_data = requests.get(str(micro_userservice) + url, headers=headers, verify=False)
            if resp_data.status_code == 200:
                try:
                    ven_obj_arr = (json.loads(resp_data.content))
                    return ven_obj_arr
                except:
                    return None
            else:
                return None
