Files
cbsnexora/src/app/shared/models/general.model.ts
T

114 lines
2.5 KiB
TypeScript

/**
* Copyright since 2025 Mifos Initiative
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
import { OptionData } from './option-data.model';
export interface Currency {
code: string;
name: string;
decimalPlaces?: number;
inMultiplesOf?: number;
displaySymbol?: string;
nameCode?: string;
displayLabel?: string;
}
export interface GLAccount {
id: number;
name: string;
glCode: string;
description: string;
nameDecorated?: string;
disabled: boolean;
manualEntriesAllowed: boolean;
type: OptionData;
usage: OptionData;
parentId?: number;
}
export interface AccountingMapping {
id: number;
name: string;
glCode: string;
}
export interface ChargeToIncomeAccountMapping {
charge: Charge;
incomeAccount: AccountingMapping;
}
export interface PaymentChannelToFundSourceMapping {
paymentType: PaymentType;
fundSourceAccount: AccountingMapping;
}
export interface ChargeOffReasonToExpenseAccountMapping {
chargeOffReasonCodeValueId?: number;
writeOffReasonCodeValueId?: number;
expenseAccountId?: number;
reasonCodeValue?: CodeValue;
writeOffReasonCodeValue?: CodeValue;
expenseAccount?: AccountingMapping;
}
export interface AccountMapping {
codeValueId?: number;
glAccountId?: number;
codeValue?: CodeValue;
glAccount?: AccountingMapping;
}
export interface ClassificationToIncomeAccountMapping {
classificationCodeValueId?: number;
incomeAccountId?: number;
classificationCodeValue?: CodeValue;
incomeAccount?: AccountingMapping;
}
export interface CodeValue {
active: boolean;
description: string;
id: number;
mandatory: boolean;
name: string;
position?: number;
}
export interface PaymentType {
id: number;
name: string;
isSystemDefined: boolean;
}
export interface PaymentTypeOption {
id: number;
name: string;
description: string;
isCashPayment: boolean;
isSystemDefined: boolean;
position: number;
}
export interface Charge {
id: number;
name: string;
active?: boolean;
penalty: boolean;
freeWithdrawal?: boolean;
freeWithdrawalChargeFrequency?: number;
restartFrequency?: number;
restartFrequencyEnum?: number;
isPaymentType?: boolean;
currency?: Currency;
amount?: number;
chargeTimeType?: OptionData;
chargeAppliesTo?: OptionData;
chargeCalculationType?: OptionData;
chargePaymentMode?: OptionData;
}