Fineract-1411 Allow charges to map to all types of Ledgers (#3436)

This commit is contained in:
ankita10r 2021-10-27 17:19:07 +05:30 committed by GitHub
parent be46264a6e
commit d66d52d95a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 52 additions and 10 deletions

View File

@ -21,6 +21,26 @@
scope.incomeAccountOptions = data.incomeOrLiabilityAccountOptions.incomeAccountOptions || [];
scope.liabilityAccountOptions = data.incomeOrLiabilityAccountOptions.liabilityAccountOptions || [];
scope.incomeAndLiabilityAccountOptions = scope.incomeAccountOptions.concat(scope.liabilityAccountOptions);
scope.assetAccountOptions = data.assetAccountOptions || [];
scope.expenseAccountOptions = data.expenseAccountOptions;
scope.accountMappingForChargeConfig = data.accountMappingForChargeConfig;
scope.accountMappingForCharge = [];
var accountMappingForChargeConfigVar = scope.accountMappingForChargeConfig.toLowerCase();
if(accountMappingForChargeConfigVar.indexOf("asset") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.assetAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("liability") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.liabilityAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("expense") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.expenseAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("income") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.incomeAccountOptions);
}
});
scope.chargeAppliesToSelected = function (chargeAppliesId) {
@ -36,7 +56,7 @@
scope.chargeCalculationTypeOptions = scope.template.savingsChargeCalculationTypeOptions;
scope.chargeTimeTypeOptions = scope.template.savingsChargeTimeTypeOptions;
scope.addfeefrequency = false;
scope.showGLAccount = false;
scope.showGLAccount = true;
break ;
case 3:
scope.showChargePaymentByField = false;
@ -52,8 +72,10 @@
scope.addfeefrequency = false;
scope.showGLAccount = false;
scope.showPenalty = false ;
break ;
break ;
}
}
//when chargeAppliesTo is savings, below logic is
//to display 'Due date' field, if chargeTimeType is

View File

@ -13,6 +13,25 @@
scope.incomeAccountOptions = data.incomeOrLiabilityAccountOptions.incomeAccountOptions || [];
scope.liabilityAccountOptions = data.incomeOrLiabilityAccountOptions.liabilityAccountOptions || [];
scope.incomeAndLiabilityAccountOptions = scope.incomeAccountOptions.concat(scope.liabilityAccountOptions);
scope.assetAccountOptions = data.assetAccountOptions || [];
scope.expenseAccountOptions = data.expenseAccountOptions;
scope.accountMappingForChargeConfig = data.accountMappingForChargeConfig;
scope.accountMappingForCharge= [];
var accountMappingForChargeConfigVar = scope.accountMappingForChargeConfig.toLowerCase();
if(accountMappingForChargeConfigVar.indexOf("asset") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.assetAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("liability") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.liabilityAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("expense") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.expenseAccountOptions);
}
if(accountMappingForChargeConfigVar.indexOf("income") > -1){
scope.accountMappingForCharge = scope.accountMappingForCharge.concat(scope.incomeAccountOptions);
}
if (data.chargeAppliesTo.value === "Loan") {
scope.chargeTimeTypeOptions = data.loanChargeTimeTypeOptions;
@ -24,6 +43,7 @@
scope.template.chargeCalculationTypeOptions = scope.template.savingsChargeCalculationTypeOptions;
scope.flag = true;
scope.showFrequencyOptions = false;
scope.showGLAccount = true;
}else if(data.chargeAppliesTo.value === 'Shares') {
scope.showChargePaymentByField = false;
scope.chargeCalculationTypeOptions = scope.template.shareChargeCalculationTypeOptions;
@ -52,8 +72,8 @@
};
if(data.incomeOrLiabilityAccount){
scope.formData.incomeAccountId = data.incomeOrLiabilityAccount.id;
}
scope.formData.incomeAccountId = data.accountMappingForCharge.id;
}
if(data.taxGroup){
scope.formData.taxGroupId = data.taxGroup.id;

View File

@ -191,9 +191,9 @@
<label class="control-label col-sm-2">{{ 'label.input.incomefromcharges' | translate }}</label>
<div class="col-sm-3">
<select id="incomeOrLiabilityAccountId" ng-model="formData.incomeAccountId"
chosen="incomeAndLiabilityAccountOptions"
ng-options="incomeAccount.id as incomeAccount.name for incomeAccount in incomeAndLiabilityAccountOptions"
value="{{incomeAccount.id}}">
chosen="accountMappingForCharge"
ng-options="accountMappingForCharge.id as accountMappingForCharge.name for accountMappingForCharge in accountMappingForCharge"
value="{{accountMappingForCharge.id}}">
</select>
</div>
</div>

View File

@ -157,9 +157,9 @@
<label class="control-label col-sm-2">{{ 'label.input.incomefromcharges' | translate }}</label>
<div class="col-sm-3">
<select id="incomeOrLiabilityAccountId" ng-model="formData.incomeAccountId"
chosen="incomeAndLiabilityAccountOptions"
ng-options="incomeAccount.id as incomeAccount.name for incomeAccount in incomeAndLiabilityAccountOptions"
value="{{incomeAccount.id}}">
chosen="accountMappingForCharge"
ng-options="accountMappingForCharge.id as accountMappingForCharge.name for accountMappingForCharge in accountMappingForCharge"
value="{{accountMappingForCharge.id}}">
</select>
</div>
</div>