urembo-hub-api
Preparing search index...
commission/commission.service
CommissionService
Class CommissionService
Index
Constructors
constructor
Methods
calculate
Commission
create
Commission
Transaction
get
Commission
Setting
By
Role
get
Commission
Settings
get
Commission
Stats
get
Commission
Transactions
get
User
Commission
Stats
get
User
Commission
Transactions
update
Commission
Setting
update
Commission
Transaction
Status
Constructors
constructor
new
CommissionService
(
prisma
:
PrismaService
)
:
CommissionService
Parameters
prisma
:
PrismaService
Returns
CommissionService
Methods
calculate
Commission
calculateCommission
(
transactionAmount
:
number
,
role
:
string
,
)
:
Promise
<
{
commissionAmount
:
number
;
commissionRate
:
number
}
>
Parameters
transactionAmount
:
number
role
:
string
Returns
Promise
<
{
commissionAmount
:
number
;
commissionRate
:
number
}
>
create
Commission
Transaction
createCommissionTransaction
(
data
:
{
businessRole
:
string
;
businessUserId
:
string
;
commissionAmount
:
number
;
commissionRate
:
number
;
metadata
?:
any
;
paymentMethodId
?:
string
;
paymentStatus
:
string
;
stripePaymentIntentId
?:
string
;
transactionAmount
:
number
;
transactionId
:
string
;
transactionType
:
string
;
}
,
)
:
Promise
<
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
,
>
Parameters
data
:
{
businessRole
:
string
;
businessUserId
:
string
;
commissionAmount
:
number
;
commissionRate
:
number
;
metadata
?:
any
;
paymentMethodId
?:
string
;
paymentStatus
:
string
;
stripePaymentIntentId
?:
string
;
transactionAmount
:
number
;
transactionId
:
string
;
transactionType
:
string
;
}
Returns
Promise
<
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
,
>
get
Commission
Setting
By
Role
getCommissionSettingByRole
(
role
:
string
,
)
:
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
,
>
Parameters
role
:
string
Returns
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
,
>
get
Commission
Settings
getCommissionSettings
()
:
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
[]
,
>
Returns
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
[]
,
>
get
Commission
Stats
getCommissionStats
(
role
?:
string
,
dateFrom
?:
string
,
dateTo
?:
string
,
)
:
Promise
<
{
paidCommissionAmount
:
number
;
paidTransactions
:
number
;
pendingCommissionAmount
:
number
;
pendingTransactions
:
number
;
totalCommissionAmount
:
number
;
totalTransactions
:
number
;
}
,
>
Parameters
Optional
role
:
string
Optional
dateFrom
:
string
Optional
dateTo
:
string
Returns
Promise
<
{
paidCommissionAmount
:
number
;
paidTransactions
:
number
;
pendingCommissionAmount
:
number
;
pendingTransactions
:
number
;
totalCommissionAmount
:
number
;
totalTransactions
:
number
;
}
,
>
get
Commission
Transactions
getCommissionTransactions
(
page
?:
number
,
limit
?:
number
,
role
?:
string
,
status
?:
string
,
dateFrom
?:
string
,
dateTo
?:
string
,
)
:
Promise
<
{
pagination
:
{
limit
:
number
;
page
:
number
;
pages
:
number
;
total
:
number
;
}
;
transactions
:
(
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
)
[]
;
}
,
>
Parameters
page
:
number
= 1
limit
:
number
= 10
Optional
role
:
string
Optional
status
:
string
Optional
dateFrom
:
string
Optional
dateTo
:
string
Returns
Promise
<
{
pagination
:
{
limit
:
number
;
page
:
number
;
pages
:
number
;
total
:
number
;
}
;
transactions
:
(
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
)
[]
;
}
,
>
get
User
Commission
Stats
getUserCommissionStats
(
userId
:
string
,
)
:
Promise
<
{
paidCommissionAmount
:
number
;
pendingCommissionAmount
:
number
;
totalCommissionAmount
:
number
;
totalTransactions
:
number
;
}
,
>
Parameters
userId
:
string
Returns
Promise
<
{
paidCommissionAmount
:
number
;
pendingCommissionAmount
:
number
;
totalCommissionAmount
:
number
;
totalTransactions
:
number
;
}
,
>
get
User
Commission
Transactions
getUserCommissionTransactions
(
userId
:
string
,
page
?:
number
,
limit
?:
number
,
)
:
Promise
<
{
pagination
:
{
limit
:
number
;
page
:
number
;
pages
:
number
;
total
:
number
;
}
;
transactions
:
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
[]
;
}
,
>
Parameters
userId
:
string
page
:
number
= 1
limit
:
number
= 10
Returns
Promise
<
{
pagination
:
{
limit
:
number
;
page
:
number
;
pages
:
number
;
total
:
number
;
}
;
transactions
:
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
[]
;
}
,
>
update
Commission
Setting
updateCommissionSetting
(
role
:
string
,
commissionRate
:
number
,
isActive
?:
boolean
,
)
:
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
,
>
Parameters
role
:
string
commissionRate
:
number
isActive
:
boolean
= true
Returns
Promise
<
{
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
isActive
:
boolean
;
role
:
user_role
;
updatedAt
:
Date
;
updatedBy
:
string
;
}
,
>
update
Commission
Transaction
Status
updateCommissionTransactionStatus
(
id
:
string
,
paymentStatus
:
string
,
)
:
Promise
<
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
,
>
Parameters
id
:
string
paymentStatus
:
string
Returns
Promise
<
{
businessUser
:
{
businessName
:
string
;
email
:
string
;
fullName
:
string
;
id
:
string
;
}
;
}
&
{
businessRole
:
user_role
;
businessUserId
:
string
;
commissionAmount
:
Decimal
;
commissionRate
:
Decimal
;
createdAt
:
Date
;
id
:
string
;
metadata
:
JsonValue
;
paymentMethodId
:
string
;
paymentStatus
:
string
;
processedAt
:
Date
;
stripePaymentIntentId
:
string
;
transactionAmount
:
Decimal
;
transactionId
:
string
;
transactionType
:
string
;
}
,
>
Settings
Member Visibility
Protected
Inherited
External
Theme
OS
Light
Dark
On This Page
Constructors
constructor
Methods
calculate
Commission
create
Commission
Transaction
get
Commission
Setting
By
Role
get
Commission
Settings
get
Commission
Stats
get
Commission
Transactions
get
User
Commission
Stats
get
User
Commission
Transactions
update
Commission
Setting
update
Commission
Transaction
Status
urembo-hub-api
Loading...