Method to retrieve the KYC status of a merchant.
This commit is contained in:
parent
7c94a71def
commit
cd2538efb5
@ -1294,13 +1294,20 @@ postgres_prepare (PGconn *db_conn)
|
|||||||
*
|
*
|
||||||
* 1 Sum money flow for a (unchecked) merchant.
|
* 1 Sum money flow for a (unchecked) merchant.
|
||||||
* 2 Change KYC status for a merchant.
|
* 2 Change KYC status for a merchant.
|
||||||
* 3 Get KYC status for a merchant.
|
* 3 Get KYC status for a merchant. --
|
||||||
* 4 Put money flow event for a merchant.
|
* 4 Put money flow event for a merchant.
|
||||||
* 5 Delete money flow records for a fresh-checked merchant.
|
* 5 Delete money flow records for a fresh-checked merchant.
|
||||||
* 6 Put a merchant.
|
* 6 Put a merchant. V
|
||||||
* 7 Change KYC status flag for a merchant.
|
* 7 Change KYC status flag for a merchant. V
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
GNUNET_PQ_make_prepare ("get_kyc_status",
|
||||||
|
"SELECT"
|
||||||
|
" (kyc_checked)"
|
||||||
|
" FROM kyc_merchants"
|
||||||
|
" WHERE payto_url=$1",
|
||||||
|
1),
|
||||||
|
|
||||||
GNUNET_PQ_make_prepare ("insert_kyc_merchant",
|
GNUNET_PQ_make_prepare ("insert_kyc_merchant",
|
||||||
"INSERT INTO kyc_merchants "
|
"INSERT INTO kyc_merchants "
|
||||||
"(payto_url, kyc_checked) VALUES "
|
"(payto_url, kyc_checked) VALUES "
|
||||||
@ -6548,6 +6555,39 @@ postgres_mark_kyc_merchant (void *cls,
|
|||||||
params);
|
params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve KYC-check status related to a particular merchant.
|
||||||
|
*
|
||||||
|
* @param payto_url URL identifying a merchant bank account,
|
||||||
|
* whose KYC is going to be retrieved.
|
||||||
|
* @param[out] status store the result.
|
||||||
|
* @return transaction status.
|
||||||
|
*/
|
||||||
|
static enum GNUNET_DB_QueryStatus
|
||||||
|
postgres_get_kyc_status (void *cls,
|
||||||
|
struct TALER_EXCHANGEDB_Session *session,
|
||||||
|
const char *payto_url,
|
||||||
|
uint8_t *status)
|
||||||
|
{
|
||||||
|
struct GNUNET_PQ_QueryParam params[] = {
|
||||||
|
GNUNET_PQ_query_param_string (payto_url),
|
||||||
|
GNUNET_PQ_query_param_end
|
||||||
|
};
|
||||||
|
|
||||||
|
struct GNUNET_PQ_ResultSpec rs[] = {
|
||||||
|
GNUNET_PQ_result_spec_auto_from_type ("kyc_checked",
|
||||||
|
status),
|
||||||
|
GNUNET_PQ_result_spec_end
|
||||||
|
};
|
||||||
|
|
||||||
|
return GNUNET_PQ_eval_prepared_singleton_select
|
||||||
|
(session->conn,
|
||||||
|
"get_kyc_status",
|
||||||
|
params,
|
||||||
|
rs);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Insert a merchant into the KYC monitor table.
|
* Insert a merchant into the KYC monitor table.
|
||||||
@ -6707,6 +6747,7 @@ libtaler_plugin_exchangedb_postgres_init (void *cls)
|
|||||||
|
|
||||||
plugin->insert_kyc_merchant = postgres_insert_kyc_merchant;
|
plugin->insert_kyc_merchant = postgres_insert_kyc_merchant;
|
||||||
plugin->mark_kyc_merchant = postgres_mark_kyc_merchant;
|
plugin->mark_kyc_merchant = postgres_mark_kyc_merchant;
|
||||||
|
plugin->get_kyc_status = postgres_get_kyc_status;
|
||||||
|
|
||||||
return plugin;
|
return plugin;
|
||||||
}
|
}
|
||||||
|
@ -2190,6 +2190,18 @@ run (void *cls)
|
|||||||
plugin->mark_kyc_merchant (NULL,
|
plugin->mark_kyc_merchant (NULL,
|
||||||
session,
|
session,
|
||||||
"payto://mock"));
|
"payto://mock"));
|
||||||
|
|
||||||
|
{
|
||||||
|
uint8_t kyc_checked;
|
||||||
|
|
||||||
|
FAILIF (GNUNET_OK !=
|
||||||
|
plugin->get_kyc_status (NULL,
|
||||||
|
session,
|
||||||
|
"payto://mock",
|
||||||
|
&kyc_checked));
|
||||||
|
FAILIF (GNUNET_YES != kyc_checked);
|
||||||
|
|
||||||
|
}
|
||||||
plugin->preflight (plugin->cls,
|
plugin->preflight (plugin->cls,
|
||||||
session);
|
session);
|
||||||
|
|
||||||
|
@ -2248,6 +2248,19 @@ struct TALER_EXCHANGEDB_Plugin
|
|||||||
struct TALER_EXCHANGEDB_Session *session,
|
struct TALER_EXCHANGEDB_Session *session,
|
||||||
const char *payto_url);
|
const char *payto_url);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve KYC-check status related to a particular merchant.
|
||||||
|
*
|
||||||
|
* @param payto_url URL identifying a merchant bank account,
|
||||||
|
* whose KYC is going to be retrieved.
|
||||||
|
* @param[out] status store the result.
|
||||||
|
* @return transaction status.
|
||||||
|
*/
|
||||||
|
enum GNUNET_DB_QueryStatus
|
||||||
|
(*get_kyc_status) (void *cls,
|
||||||
|
struct TALER_EXCHANGEDB_Session *session,
|
||||||
|
const char *payto_url,
|
||||||
|
uint8_t *status);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _TALER_EXCHANGE_DB_H */
|
#endif /* _TALER_EXCHANGE_DB_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user