mirror of
https://github.com/whekin/household-bot.git
synced 2026-03-31 20:54:03 +00:00
feat(payments): add transparent balance guidance
This commit is contained in:
@@ -345,6 +345,7 @@ function App() {
|
||||
const [addingPayment, setAddingPayment] = createSignal(false)
|
||||
const [billingForm, setBillingForm] = createSignal({
|
||||
settlementCurrency: 'GEL' as 'USD' | 'GEL',
|
||||
paymentBalanceAdjustmentPolicy: 'utilities' as 'utilities' | 'rent' | 'separate',
|
||||
rentAmountMajor: '',
|
||||
rentCurrency: 'USD' as 'USD' | 'GEL',
|
||||
rentDueDay: 20,
|
||||
@@ -530,6 +531,7 @@ function App() {
|
||||
}))
|
||||
setBillingForm({
|
||||
settlementCurrency: payload.settings.settlementCurrency,
|
||||
paymentBalanceAdjustmentPolicy: payload.settings.paymentBalanceAdjustmentPolicy,
|
||||
rentAmountMajor: payload.settings.rentAmountMinor
|
||||
? (Number(payload.settings.rentAmountMinor) / 100).toFixed(2)
|
||||
: '',
|
||||
@@ -2273,6 +2275,29 @@ function App() {
|
||||
<option value="USD">USD</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="settings-field settings-field--wide">
|
||||
<span>{copy().paymentBalanceAdjustmentPolicy}</span>
|
||||
<select
|
||||
value={billingForm().paymentBalanceAdjustmentPolicy}
|
||||
onChange={(event) =>
|
||||
setBillingForm((current) => ({
|
||||
...current,
|
||||
paymentBalanceAdjustmentPolicy: event.currentTarget.value as
|
||||
| 'utilities'
|
||||
| 'rent'
|
||||
| 'separate'
|
||||
}))
|
||||
}
|
||||
>
|
||||
<option value="utilities">
|
||||
{copy().paymentBalanceAdjustmentUtilities}
|
||||
</option>
|
||||
<option value="rent">{copy().paymentBalanceAdjustmentRent}</option>
|
||||
<option value="separate">
|
||||
{copy().paymentBalanceAdjustmentSeparate}
|
||||
</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="settings-field">
|
||||
<span>{copy().rentAmount}</span>
|
||||
<input
|
||||
|
||||
@@ -108,6 +108,10 @@ export const dictionary = {
|
||||
topicUnbound: 'Unbound',
|
||||
billingSettingsTitle: 'Billing settings',
|
||||
settlementCurrency: 'Settlement currency',
|
||||
paymentBalanceAdjustmentPolicy: 'Purchase balance adjustment',
|
||||
paymentBalanceAdjustmentUtilities: 'Adjust through utilities',
|
||||
paymentBalanceAdjustmentRent: 'Adjust through rent',
|
||||
paymentBalanceAdjustmentSeparate: 'Keep purchases separate',
|
||||
billingCycleTitle: 'Current billing cycle',
|
||||
billingCycleEmpty: 'No open cycle',
|
||||
billingCycleStatus: 'Current cycle currency: {currency}',
|
||||
@@ -286,6 +290,10 @@ export const dictionary = {
|
||||
topicUnbound: 'Не привязан',
|
||||
billingSettingsTitle: 'Настройки биллинга',
|
||||
settlementCurrency: 'Валюта расчёта',
|
||||
paymentBalanceAdjustmentPolicy: 'Зачёт баланса по покупкам',
|
||||
paymentBalanceAdjustmentUtilities: 'Зачитывать через коммуналку',
|
||||
paymentBalanceAdjustmentRent: 'Зачитывать через аренду',
|
||||
paymentBalanceAdjustmentSeparate: 'Держать покупки отдельно',
|
||||
billingCycleTitle: 'Текущий billing cycle',
|
||||
billingCycleEmpty: 'Нет открытого цикла',
|
||||
billingCycleStatus: 'Валюта текущего цикла: {currency}',
|
||||
|
||||
@@ -60,6 +60,7 @@ export interface MiniAppMember {
|
||||
export interface MiniAppBillingSettings {
|
||||
householdId: string
|
||||
settlementCurrency: 'USD' | 'GEL'
|
||||
paymentBalanceAdjustmentPolicy: 'utilities' | 'rent' | 'separate'
|
||||
rentAmountMinor: string | null
|
||||
rentCurrency: 'USD' | 'GEL'
|
||||
rentDueDay: number
|
||||
@@ -410,6 +411,7 @@ export async function updateMiniAppBillingSettings(
|
||||
initData: string,
|
||||
input: {
|
||||
settlementCurrency?: 'USD' | 'GEL'
|
||||
paymentBalanceAdjustmentPolicy?: 'utilities' | 'rent' | 'separate'
|
||||
rentAmountMajor?: string
|
||||
rentCurrency: 'USD' | 'GEL'
|
||||
rentDueDay: number
|
||||
|
||||
Reference in New Issue
Block a user