mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-04 17:38:10 +00:00
cleanup
This commit is contained in:
1 parent
13ac5eb12b
commit
4348d1da42
2 files changed
+7
-40
No files matched your search
+5
-6
@@ -1,7 +1,7 @@
|
||||
use anyhow::anyhow;
|
||||
use log::warn;
|
||||
use sqlx::MySqlPool;
|
||||
|
||||
use crate::errors::select_optional_record_error::SelectOptionalRecordError;
|
||||
use tokens::tokens::users::UserToken;
|
||||
|
||||
pub struct UsernameDetails {
|
||||
@@ -14,7 +14,7 @@ pub struct UsernameDetails {
|
||||
pub async fn get_username_by_user_token(
|
||||
user_token: &UserToken,
|
||||
pool: &MySqlPool,
|
||||
) -> Result<Option<UsernameDetails>, anyhow::Error> {
|
||||
) -> Result<Option<UsernameDetails>, SelectOptionalRecordError> {
|
||||
let result = sqlx::query_as!(
|
||||
UsernameDetails,
|
||||
r#"
|
||||
@@ -32,15 +32,14 @@ LIMIT 1
|
||||
"#,
|
||||
user_token.as_str(),
|
||||
)
|
||||
.fetch_one(pool)
|
||||
.fetch_optional(pool)
|
||||
.await;
|
||||
|
||||
match result {
|
||||
Ok(record) => Ok(Some(record)),
|
||||
Err(sqlx::Error::RowNotFound) => Ok(None),
|
||||
Ok(maybe_record) => Ok(maybe_record),
|
||||
Err(err) => {
|
||||
warn!("get_username_by_user_token query error: {:?}", err);
|
||||
Err(anyhow!("query error"))
|
||||
Err(err.into())
|
||||
}
|
||||
}
|
||||
}
|
||||
+2
-34
@@ -1,44 +1,12 @@
|
||||
use crate::queries::wallet_ledger_entries::internal_insert_wallet_created_ledger_entry::internal_insert_wallet_created_ledger_entry;
|
||||
use crate::queries::wallets::create_new_wallet_for_owner_user::create_new_wallet_for_owner_user;
|
||||
use enums::common::payments_namespace::PaymentsNamespace;
|
||||
use errors::AnyhowResult;
|
||||
use log::error;
|
||||
use sqlx::MySql;
|
||||
use tokens::tokens::users::UserToken;
|
||||
use tokens::tokens::wallets::WalletToken;
|
||||
|
||||
const ARTCRAFT_NAMESPACE: &str = PaymentsNamespace::Artcraft.to_str();
|
||||
|
||||
pub async fn create_new_artcraft_wallet_for_owner_user(
|
||||
user_token: &UserToken,
|
||||
transaction: &mut sqlx::Transaction<'_, MySql>,
|
||||
) -> Result<WalletToken, sqlx::Error> {
|
||||
let token = WalletToken::generate();
|
||||
|
||||
let result = sqlx::query!(
|
||||
r#"
|
||||
INSERT INTO wallets
|
||||
SET
|
||||
token = ?,
|
||||
wallet_namespace = ?,
|
||||
|
||||
owner_user_token = ?,
|
||||
|
||||
banked_credits = 0,
|
||||
monthly_credits = 0
|
||||
"#,
|
||||
token.as_str(),
|
||||
ARTCRAFT_NAMESPACE,
|
||||
user_token.as_str()
|
||||
)
|
||||
.execute(&mut **transaction)
|
||||
.await;
|
||||
|
||||
if let Err(err) = result {
|
||||
error!("Error while inserting wallet: {}", err);
|
||||
return Err(err);
|
||||
}
|
||||
|
||||
internal_insert_wallet_created_ledger_entry(&token, transaction).await?;
|
||||
|
||||
Ok(token)
|
||||
create_new_wallet_for_owner_user(user_token, PaymentsNamespace::Artcraft, transaction).await
|
||||
}
|
||||
Reference in new issue
Block a user