Example #1
0
    def _delete_role_permission(self, url, params_to_delete):
        headers = self._get_headers()
        self.logger.info("Header: [{}]".format(headers))
        is_success_delete, status_code_delete, status_message_delete = RestFulClient.delete(url=url,
                                                                                            headers=headers,
                                                                                            loggers=self.logger,
                                                                                            params=params_to_delete)

        if (status_code_delete == "access_token_expire") or (status_code_delete == 'authentication_fail') or (
                    status_code_delete == 'invalid_access_token'):
            self.logger.info("{} for {} username".format(status_message_delete, self.request.user))
            raise InvalidAccessToken(status_message_delete)
        return is_success_delete
Example #2
0
    def delete_permission(cls, id, headers, logger):
        url = api_settings.PERMISSION_DETAIL_PATH.format(permission_id=id)
        is_success, status_code, status_message = RestFulClient.delete(
            url=url, headers=headers, loggers=logger)

        if not is_success:
            if status_code in [
                    "access_token_expire", 'authentication_fail',
                    'invalid_access_token'
            ]:
                logger.info("{}".format(status_message))
                raise InvalidAccessToken(status_message)

        return is_success, status_code, status_message
Example #3
0
    def send(cls, method, url, params, request, description=None, log_count_field=None):
        loggers = build_logger(request, __name__)

        if description:
            loggers.info("===== Start {} =====".format(description))

        headers = build_auth_header_from_request(request)

        if len(params) > 0:
            loggers.info("Request data: {} ".format(params))

        if method == 'GET':
            is_success, status_code, data = RestFulClient.get(url, loggers, headers)
            status_message = None
        elif method == 'POST':
            is_success, status_code, status_message, data = RestFulClient.post(url, headers, loggers, params)
        elif method == 'PUT':
            is_success, status_code, status_message, data = RestFulClient.put(url, headers, loggers, params)
        elif method == 'DELETE':
            is_success, status_code, status_message = RestFulClient.delete(url, headers, loggers, params)
            data = None

        if status_code in ["access_token_expire", 'authentication_fail', 'invalid_access_token']:
            raise InvalidAccessToken(status_message)

        if log_count_field:
            log_data = data
            for field in log_count_field.split('.'):
                if field == "data":
                    continue
                if log_data:
                    log_data = log_data.get(field, {})
                else:
                    log_data = {}

            count = len(log_data)
            loggers.info('Response count: {}'.format(count))
        else:
            loggers.info('Response data: {}'.format(data))

        if description:
            loggers.info("===== Finish {} =====".format(description))

        return is_success, status_code, status_message, data
    def post(self, request, *args, **kwargs):
        self.logger.info('========== Start delete role entity ==========')
        role_id = kwargs['role_id']
        url = api_settings.ROLE_DELETE_PATH.format(role_id=role_id)

        is_success, status_code, status_message = RestFulClient.delete(
            url=url, headers=self._get_headers(), loggers=self.logger)
        if is_success:
            messages.add_message(request, messages.SUCCESS,
                                 'Deleted role entity successfully')
            self.logger.info('========== End delete role entity ==========')
            return redirect('authentications:role_list')
        elif (status_code == "access_token_expire") or (
                status_code
                == 'authentication_fail') or (status_code
                                              == 'invalid_access_token'):
            self.logger.info("{} for {} username".format(
                status_message, self.request.user))
            raise InvalidAccessToken(status_message)
        else:
            messages.add_message(request, messages.ERROR, status_message)
            self.logger.info('========== End delete role entity ==========')
            return redirect('authentications:delete_role', role_id=role_id)
    def _do_reject(self, request):
        self.logger.info(
            '========== Start Reject balance adjustment order ==========')
        reference_id = request.POST.get('reference_id')
        url = api_settings.APPROVE_BAL_ADJUST_PATH.format(
            reference_id=reference_id)
        #url = 'http://localhost:43938/general_error_reject'
        body = {'reason': request.POST.get('reason_for_approval_or_reject')}

        is_success, status_code, status_message = RestFulClient.delete(
            url=url,
            headers=self._get_headers(),
            loggers=self.logger,
            params=body)
        API_Logger.delete_logging(loggers=self.logger,
                                  params=body,
                                  response={},
                                  status_code=status_code)

        self.logger.info(
            '========== Finish Reject balance adjustment order ==========')
        if is_success:
            messages.add_message(request, messages.SUCCESS,
                                 'Payment is rejected successfully')
            return redirect('balance_adjustment:balance_adjustment_list')
        elif status_code.lower() in ["general_error"]:
            error_msg = 'Other error, please contact system administrator'
            return self._handle_error(error_msg, reference_id)
        elif status_message == 'timeout':
            messages.add_message(
                request, messages.ERROR,
                'Request timed-out, please try again or contact system administrator'
            )
            return redirect('balance_adjustment:balance_adjustment_detail',
                            ReferenceId=reference_id)
        else:
            return self._handle_error(status_message, reference_id)
Example #6
0
    def delete_agent_types(self, product_id):
        self.logger.info(
            '========== Start get product - agent types relations ==========')
        params = {'product_id': product_id}
        is_success, status_code, status_message, data = RestFulClient.post(
            url=api_settings.PRODUCT_AGENT_TYPE,
            headers=self._get_headers(),
            loggers=self.logger,
            params=params)
        API_Logger.post_logging(loggers=self.logger,
                                params=params,
                                response=data,
                                status_code=status_code,
                                is_getting_list=False)
        self.logger.info(
            '========== Finished get product - agent types relations =========='
        )

        relations = data['relations']
        for item in relations:
            product_agent_type_relation_id = item['id']
            self.logger.info(
                '========== Start delete agent type relation ==========')
            is_success, status_code, status_message = RestFulClient.delete(
                url=api_settings.DELETE_PRODUCT_AGENT_TYPE_RELATION.format(
                    product_agent_type_relation_id=
                    product_agent_type_relation_id),
                headers=self._get_headers(),
                loggers=self.logger,
                params={})
            API_Logger.delete_logging(loggers=self.logger,
                                      params={},
                                      response={},
                                      status_code=status_code)
            self.logger.info(
                '========== Finished delete agent type relation ==========')
Example #7
0
 def _delete_user_role(self, role_id, user_id):
     url = api_settings.ROLE_USER_PATH.format(user_id=user_id)
     params = {'role_id': int(role_id)}
     is_success_delete, status_code_delete, status_message_delete = RestFulClient.delete(
         url, self._get_headers(), self.logger, params=params)
     return is_success_delete