def get_all_addresses( self, page: int = 1, per_page: int = 20, address_type: str = None) -> (List[Dict[str, Any]], int): """ get all addresses :params page int :params per_page int :params address_type int :return: """ try: if address_type: addresses, address_records = self.__return_address_types( page, per_page, address_type) else: addresses = AddressModel.get_all_addresses(page, per_page) address_records = self.__get_all_address_records(addresses) if address_records is None: self.logger.error( "Address type should be school or user or student") raise ThingahaCustomError( "Address type should be school or user or student") return self.__return_addresses_with_format(addresses, address_records) except SQLAlchemyError: self.logger.error("Get all addresses fail. error %s", traceback.format_exc()) raise SQLCustomError(description="GET address SQL ERROR")
def get_all_addresses(self) -> List[Dict[str, Any]]: """ get all addresses :return: """ self.logger.info("Get all addresses list") try: return self.__return_address_list(AddressModel.get_all_addresses()) except SQLAlchemyError: self.logger.error("Get all addresses fail. error %s", traceback.format_exc()) raise SQLCustomError(description="GET address SQL ERROR")