Compare commits

...

534 Commits

Author SHA1 Message Date
translatewiki.net
45ec7b82e9 Localisation updates from https://translatewiki.net. 2024-05-02 14:09:55 +02:00
translatewiki.net
259dfc58b6 Localisation updates from https://translatewiki.net. 2024-04-18 14:11:25 +02:00
translatewiki.net
ca40a219bf Localisation updates from https://translatewiki.net. 2024-04-15 14:10:09 +02:00
translatewiki.net
afc89d8548 Localisation updates from https://translatewiki.net. 2024-04-11 14:10:47 +02:00
translatewiki.net
cf49d574c9 Localisation updates from https://translatewiki.net. 2024-03-25 13:10:13 +01:00
translatewiki.net
a054be5610 Localisation updates from https://translatewiki.net. 2024-03-11 13:09:25 +01:00
translatewiki.net
bfde8ffe7f Localisation updates from https://translatewiki.net. 2024-02-12 13:11:36 +01:00
translatewiki.net
6f603392a1 Localisation updates from https://translatewiki.net. 2024-02-05 13:10:00 +01:00
translatewiki.net
ff3b38bfc1 Localisation updates from https://translatewiki.net. 2024-01-15 13:10:21 +01:00
translatewiki.net
d13afb3de0 Localisation updates from https://translatewiki.net. 2024-01-08 13:10:52 +01:00
translatewiki.net
4bdbe2c200 Localisation updates from https://translatewiki.net. 2023-12-25 13:12:04 +01:00
translatewiki.net
e18ac974f7 Localisation updates from https://translatewiki.net. 2023-12-18 13:11:08 +01:00
translatewiki.net
91f88e8b92 Localisation updates from https://translatewiki.net. 2023-11-23 13:11:31 +01:00
translatewiki.net
3ca5d857b1 Localisation updates from https://translatewiki.net. 2023-11-20 13:13:04 +01:00
translatewiki.net
f5769f93af Localisation updates from https://translatewiki.net. 2023-11-06 13:12:55 +01:00
translatewiki.net
acb53670e0 Localisation updates from https://translatewiki.net. 2023-10-19 13:11:10 +02:00
translatewiki.net
fbf36680a4 Localisation updates from https://translatewiki.net. 2023-10-09 13:12:54 +02:00
translatewiki.net
acb21095fd Localisation updates from https://translatewiki.net. 2023-10-02 13:10:53 +02:00
translatewiki.net
a91b067671 Localisation updates from https://translatewiki.net. 2023-09-28 13:10:47 +02:00
translatewiki.net
6b6dc7d784 Localisation updates from https://translatewiki.net. 2023-09-25 13:10:08 +02:00
translatewiki.net
d6a2f34676 Localisation updates from https://translatewiki.net. 2023-09-21 13:15:19 +02:00
translatewiki.net
0648ad8212 Localisation updates from https://translatewiki.net. 2023-08-17 13:12:44 +02:00
translatewiki.net
653256594d Localisation updates from https://translatewiki.net. 2023-07-31 13:11:31 +02:00
translatewiki.net
70ded01be1 Localisation updates from https://translatewiki.net. 2023-07-27 13:12:34 +02:00
translatewiki.net
cf1d8b5e18 Localisation updates from https://translatewiki.net. 2023-07-10 13:16:39 +02:00
translatewiki.net
3f89908bfa Localisation updates from https://translatewiki.net. 2023-06-05 13:06:55 +02:00
translatewiki.net
89382374cd Localisation updates from https://translatewiki.net. 2023-05-22 13:07:07 +02:00
translatewiki.net
e2f5647d55 Localisation updates from https://translatewiki.net. 2023-04-27 13:09:22 +02:00
translatewiki.net
1b5fc30689 Localisation updates from https://translatewiki.net. 2023-04-17 13:07:44 +02:00
translatewiki.net
61801a3834 Localisation updates from https://translatewiki.net. 2023-04-10 13:08:07 +02:00
translatewiki.net
730bebe5ab Localisation updates from https://translatewiki.net. 2023-03-27 17:35:24 +02:00
translatewiki.net
272105ddcd Localisation updates from https://translatewiki.net. 2023-03-23 13:09:56 +01:00
translatewiki.net
343bdff744 Localisation updates from https://translatewiki.net. 2023-03-09 13:08:41 +01:00
translatewiki.net
8194f3269d Localisation updates from https://translatewiki.net. 2023-02-20 13:08:21 +01:00
translatewiki.net
5a892bc7ec Localisation updates from https://translatewiki.net. 2023-02-16 13:07:57 +01:00
translatewiki.net
dd8acf47a0 Localisation updates from https://translatewiki.net. 2023-01-26 13:10:05 +01:00
translatewiki.net
7b3e1d0d9a Localisation updates from https://translatewiki.net. 2023-01-23 13:07:30 +01:00
translatewiki.net
beb53771a1 Localisation updates from https://translatewiki.net. 2023-01-19 13:09:28 +01:00
translatewiki.net
b731805e0b Localisation updates from https://translatewiki.net. 2023-01-09 13:17:12 +01:00
translatewiki.net
68e3dc9940 Localisation updates from https://translatewiki.net. 2022-12-19 13:07:40 +01:00
translatewiki.net
32936d46e2 Localisation updates from https://translatewiki.net. 2022-12-15 13:08:13 +01:00
translatewiki.net
bc069d7c9a Localisation updates from https://translatewiki.net. 2022-12-12 13:08:00 +01:00
translatewiki.net
1a9d41f814 Localisation updates from https://translatewiki.net. 2022-12-08 13:07:45 +01:00
translatewiki.net
2c91c23c48 Localisation updates from https://translatewiki.net. 2022-12-05 13:07:03 +01:00
translatewiki.net
22fdbb2317 Localisation updates from https://translatewiki.net. 2022-12-01 13:07:37 +01:00
translatewiki.net
acd573bfa9 Localisation updates from https://translatewiki.net. 2022-11-17 13:07:16 +01:00
translatewiki.net
fc33b0d877 Localisation updates from https://translatewiki.net. 2022-11-07 13:17:47 +01:00
translatewiki.net
fd70928060 Localisation updates from https://translatewiki.net. 2022-10-31 13:15:28 +01:00
translatewiki.net
d5f31b62d4 Localisation updates from https://translatewiki.net. 2022-10-27 13:11:25 +02:00
translatewiki.net
0104651a30 Localisation updates from https://translatewiki.net. 2022-10-24 13:07:24 +02:00
translatewiki.net
23d8b533d1 Localisation updates from https://translatewiki.net. 2022-10-20 13:08:53 +02:00
translatewiki.net
89fdde3726 Localisation updates from https://translatewiki.net. 2022-10-17 13:06:54 +02:00
Benura Abeywardena
43b78100a8
Feat: Collateral Module (#3398) 2022-10-14 14:15:33 +05:30
translatewiki.net
4eb953d569 Localisation updates from https://translatewiki.net. 2022-10-10 13:07:14 +02:00
translatewiki.net
2d7bd3877e Localisation updates from https://translatewiki.net. 2022-10-03 13:07:35 +02:00
translatewiki.net
800aeffaa2 Localisation updates from https://translatewiki.net. 2022-09-29 13:07:21 +02:00
translatewiki.net
a3d17940f2 Localisation updates from https://translatewiki.net. 2022-09-26 13:07:58 +02:00
translatewiki.net
c44bceb9cb Localisation updates from https://translatewiki.net. 2022-09-22 13:08:17 +02:00
translatewiki.net
6d8130745f Localisation updates from https://translatewiki.net. 2022-09-19 13:08:40 +02:00
translatewiki.net
1d60316535 Localisation updates from https://translatewiki.net. 2022-09-05 13:07:33 +02:00
translatewiki.net
4288e62b32 Localisation updates from https://translatewiki.net. 2022-09-01 13:08:41 +02:00
translatewiki.net
98b0c0c97f Localisation updates from https://translatewiki.net. 2022-08-29 13:07:52 +02:00
translatewiki.net
3ae4af5576 Localisation updates from https://translatewiki.net. 2022-08-22 13:07:24 +02:00
translatewiki.net
1db0bf60a3 Localisation updates from https://translatewiki.net. 2022-08-15 13:07:29 +02:00
translatewiki.net
95de449d6a Localisation updates from https://translatewiki.net. 2022-08-11 13:08:07 +02:00
Rahul Pawar
ca90d3318d
FINERACT-1663 : fixed-reports-overlapping (#3488) 2022-07-27 15:39:11 +05:30
translatewiki.net
aa99189ef8 Localisation updates from https://translatewiki.net. 2022-07-25 13:09:09 +02:00
translatewiki.net
06c8e14e7c Localisation updates from https://translatewiki.net. 2022-07-21 13:08:07 +02:00
Rahul Pawar
9556eb4728
FINERACT-1658:Fix_GroupFilter_In_Center (#3487) 2022-07-19 19:21:51 +05:30
translatewiki.net
465b2a27e9 Localisation updates from https://translatewiki.net. 2022-07-14 13:08:07 +02:00
rrpawar96
c72fedc9fb FINERACT-1662:Upload-Client-Image-Fix 2022-07-12 11:28:03 +01:00
translatewiki.net
cbc9bca39c Localisation updates from https://translatewiki.net. 2022-07-11 13:08:27 +02:00
translatewiki.net
66e222f09b Localisation updates from https://translatewiki.net. 2022-07-07 13:08:08 +02:00
translatewiki.net
80f4fba0d8 Localisation updates from https://translatewiki.net. 2022-07-04 13:07:55 +02:00
translatewiki.net
869ee3c98b Localisation updates from https://translatewiki.net. 2022-06-16 13:10:35 +02:00
translatewiki.net
e73a3ccea5 Localisation updates from https://translatewiki.net. 2022-06-09 13:09:14 +02:00
translatewiki.net
acb4a88f07 Localisation updates from https://translatewiki.net. 2022-06-06 13:09:45 +02:00
translatewiki.net
faf8738a79 Localisation updates from https://translatewiki.net. 2022-06-02 13:08:54 +02:00
logoutdhaval
93a675181a
FINERACT-1510: Reveasal of transaction (#3477) 2022-05-23 22:11:36 +05:30
translatewiki.net
39e58b5283 Localisation updates from https://translatewiki.net. 2022-05-23 13:08:09 +02:00
translatewiki.net
da0dff9355 Localisation updates from https://translatewiki.net. 2022-05-16 13:07:26 +02:00
translatewiki.net
3061074d78 Localisation updates from https://translatewiki.net. 2022-05-02 13:06:49 +02:00
translatewiki.net
9730457f4e Localisation updates from https://translatewiki.net. 2022-04-25 13:07:49 +02:00
translatewiki.net
9b52caee1c Localisation updates from https://translatewiki.net. 2022-04-21 13:07:45 +02:00
logoutdhaval
e0212decdb
FINERACT-1564: lien fields added and corrected available balance issue (#3467) 2022-04-19 15:57:11 +05:30
translatewiki.net
7ef592a891 Localisation updates from https://translatewiki.net. 2022-04-18 13:07:22 +02:00
translatewiki.net
87fb39843a Localisation updates from https://translatewiki.net. 2022-04-14 13:07:46 +02:00
translatewiki.net
4e0b4f9ce7 Localisation updates from https://translatewiki.net. 2022-04-11 13:07:46 +02:00
rrpawar96
12ccda0cdd FINEACT-130:HoldAccount 2022-04-09 12:53:23 +05:30
translatewiki.net
3eb033e83f Localisation updates from https://translatewiki.net. 2022-04-04 13:07:04 +02:00
translatewiki.net
2dcd5606b4 Localisation updates from https://translatewiki.net. 2022-03-07 13:06:59 +01:00
translatewiki.net
ddcd0ef53d Localisation updates from https://translatewiki.net. 2022-03-03 13:07:23 +01:00
translatewiki.net
9f8063249d Localisation updates from https://translatewiki.net. 2022-02-28 13:07:13 +01:00
Rahul Pawar
080ec80d74
Fix-CreateCharge_EditCharge (#3454)
mergign based on the code review approval
2022-02-25 18:03:17 +05:30
translatewiki.net
d7358d955e Localisation updates from https://translatewiki.net. 2022-02-24 13:07:12 +01:00
translatewiki.net
d29869f4fc Localisation updates from https://translatewiki.net. 2022-02-21 13:06:53 +01:00
translatewiki.net
ada78828fa Localisation updates from https://translatewiki.net. 2022-02-17 13:06:46 +01:00
Rahul Pawar
0232d22ed1
FINERACT-734:CreditBureauPhase-3 (#3302)
thanks for the review @luckyman20  and for the fix @rrpawar96
2022-02-14 11:50:06 +05:30
translatewiki.net
6922eb8c03 Localisation updates from https://translatewiki.net. 2022-02-10 13:06:58 +01:00
translatewiki.net
479ce912f8 Localisation updates from https://translatewiki.net. 2022-02-07 13:06:09 +01:00
translatewiki.net
3b74a7894c Localisation updates from https://translatewiki.net. 2022-02-03 13:06:57 +01:00
translatewiki.net
8b21ff3d0e Localisation updates from https://translatewiki.net. 2022-01-27 13:06:48 +01:00
translatewiki.net
12861381f9 Localisation updates from https://translatewiki.net. 2022-01-24 13:07:50 +01:00
translatewiki.net
0baba06727 Localisation updates from https://translatewiki.net. 2022-01-20 13:06:58 +01:00
translatewiki.net
42df8870da Localisation updates from https://translatewiki.net. 2022-01-17 13:06:43 +01:00
translatewiki.net
ad831f4c01 Localisation updates from https://translatewiki.net. 2022-01-13 13:05:50 +01:00
Rahul Pawar
29057438a7
FiX-View-Charge (#3446) 2022-01-10 18:00:39 +05:30
Rahul Pawar
ed9f555c3c
FINERACT-1375:ClientEntityFix (#3451)
thanks for the code review @luckyman20
2022-01-10 17:59:16 +05:30
Rahul Pawar
88d63ad43e
FINERACT-1432:ClientDocumentDropDown (#3447)
merging after code review. thanks @luckyman20
2022-01-08 16:10:13 +05:30
translatewiki.net
2c610b3f71 Localisation updates from https://translatewiki.net. 2022-01-06 13:05:14 +01:00
Rahul Pawar
da49511968
FINERACT-1391:AccountNumberPrefix (#3450)
thanks for the review @luckyman20
2022-01-03 21:47:45 +05:30
translatewiki.net
e8309643ee Localisation updates from https://translatewiki.net. 2022-01-03 13:05:11 +01:00
translatewiki.net
f23e3ddba5 Localisation updates from https://translatewiki.net. 2021-12-30 13:05:20 +01:00
Rahul Pawar
56f5686379
FINERACT-1375:ClientEntityPersonDataTable (#3444)
Merging as we got approval from @luckyman20
2021-12-28 18:31:42 +05:30
translatewiki.net
39d1897e23 Localisation updates from https://translatewiki.net. 2021-12-27 13:06:14 +01:00
translatewiki.net
394537b2d8 Localisation updates from https://translatewiki.net. 2021-12-23 13:05:51 +01:00
translatewiki.net
bf66271d11 Localisation updates from https://translatewiki.net. 2021-12-16 13:06:54 +01:00
translatewiki.net
d20115a433 Localisation updates from https://translatewiki.net. 2021-12-09 13:07:09 +01:00
translatewiki.net
d5f7d2508d Localisation updates from https://translatewiki.net. 2021-12-06 13:06:34 +01:00
translatewiki.net
6cfe2185ef Localisation updates from https://translatewiki.net. 2021-12-02 13:06:51 +01:00
translatewiki.net
400b1d331c Localisation updates from https://translatewiki.net. 2021-11-29 13:05:32 +01:00
translatewiki.net
7fa2a1ff0c Localisation updates from https://translatewiki.net. 2021-11-25 13:07:13 +01:00
translatewiki.net
72b4c8ee64 Localisation updates from https://translatewiki.net. 2021-11-22 13:21:51 +01:00
rrpawar96
40f3fbb2f5 charge-free-transaction 2021-11-20 09:54:01 +01:00
Manoj
98ecb9446f
FINERACT-1413 : charge-payment-narration (#3443) 2021-11-19 02:45:32 +05:30
translatewiki.net
af85dd6b0a Localisation updates from https://translatewiki.net. 2021-11-18 13:08:31 +01:00
ankita10r
afd9257041
Fineract-1411 - Allow charges to map to all types of Ledgers : added tooltip and fixed searchable dropdown (#3442) 2021-11-16 21:29:56 +05:30
translatewiki.net
bbc0d5f72d Localisation updates from https://translatewiki.net. 2021-11-15 13:07:04 +01:00
translatewiki.net
47ed46b3a1 Localisation updates from https://translatewiki.net. 2021-11-11 13:05:53 +01:00
Manoj
ee03fb962c
Fineract 1349 (#3383)
* FINERACT-1348-fixed-principal-percentage

* FINERACT-1349-reschedule-loan-for-principal-percentage
2021-11-11 15:53:49 +05:30
Manoj
897322facc
FINERACT-1348-fixed-principal-percentage (#3381) 2021-11-11 15:51:12 +05:30
Shemin Anto
8c2ad4d3d0
FINERACT-1414 :Fixed fixed deposit,savings, recurring deposit shpwn in corresponding pages (#3430)
Co-authored-by: hp <shemin@fynarfin.io>
2021-11-11 15:50:15 +05:30
Shemin Anto
fee746c468
added maturity instruction and transfer, to savings account ui for creating Fixed Deposit Account (#3433) 2021-11-11 15:48:13 +05:30
ankita10r
72456b7a55
Fineract-1410 Allow Payment types to map to all types of Ledgers (#3429) 2021-11-11 15:45:46 +05:30
translatewiki.net
fc4f9e3882 Localisation updates from https://translatewiki.net. 2021-11-08 13:08:01 +01:00
translatewiki.net
f218be65bf Localisation updates from https://translatewiki.net. 2021-11-04 13:06:21 +01:00
translatewiki.net
5f55e33c16 Localisation updates from https://translatewiki.net. 2021-11-01 13:05:51 +01:00
bharathcgowda
ac364558a2
Fix/perf 178 (#3438)
* Fix for including state and country options when Client address configuration is enabled

* Not able to create the client address due to missing street field in UI

Co-authored-by: Alberto Hernandez <jose.hernandez@fintecheando.mx>
2021-10-28 10:58:16 +05:30
ankita10r
d66d52d95a
Fineract-1411 Allow charges to map to all types of Ledgers (#3436) 2021-10-27 17:19:07 +05:30
bharathcgowda
be46264a6e
Fix for including state and country options when Client address configuration is enabled (#3434)
Co-authored-by: Alberto Hernandez <jose.hernandez@fintecheando.mx>
2021-10-27 08:44:37 +05:30
translatewiki.net
05d0dc3755 Localisation updates from https://translatewiki.net. 2021-10-25 13:08:26 +02:00
Shemin Anto
32f05013c9
Added external id in client Fixed Deposit (#3427) 2021-10-11 19:38:51 +05:30
Olanipekun Femi
37f75e6a21
Fix issue 3412 (#3426)
* Fix issue 3412

.success was removed from AngularJS $http service

* Fixed Typo in header attribute
2021-10-11 18:54:52 +05:30
translatewiki.net
1faf4ae084 Localisation updates from https://translatewiki.net. 2021-10-04 13:06:36 +02:00
translatewiki.net
0481510ce4 Localisation updates from https://translatewiki.net. 2021-09-27 13:07:12 +02:00
translatewiki.net
f280d11640 Localisation updates from https://translatewiki.net. 2021-09-23 13:07:15 +02:00
translatewiki.net
6ee6b7ca30 Localisation updates from https://translatewiki.net. 2021-09-20 13:06:24 +02:00
translatewiki.net
7ece0fe21d Localisation updates from https://translatewiki.net. 2021-09-16 13:06:00 +02:00
translatewiki.net
6994c33614 Localisation updates from https://translatewiki.net. 2021-09-13 13:06:05 +02:00
translatewiki.net
dd26fdfc47 Localisation updates from https://translatewiki.net. 2021-09-09 13:06:07 +02:00
translatewiki.net
90a76278fd Localisation updates from https://translatewiki.net. 2021-09-06 13:06:06 +02:00
translatewiki.net
d268c79fc3 Localisation updates from https://translatewiki.net. 2021-09-02 13:06:23 +02:00
translatewiki.net
3a2606b809 Localisation updates from https://translatewiki.net. 2021-08-26 13:10:34 +02:00
translatewiki.net
41ed29b001 Localisation updates from https://translatewiki.net. 2021-08-19 13:06:30 +02:00
translatewiki.net
53a689e1d5 Localisation updates from https://translatewiki.net. 2021-08-16 13:06:46 +02:00
translatewiki.net
9b1d394956 Localisation updates from https://translatewiki.net. 2021-08-12 13:06:17 +02:00
lizeth9797
a4c486fab8
Solution for Typos and grammatical errors found in web app #1802 (#3411)
Co-authored-by: Karina Ortiz <karinaortiz@MacBook-Pro-de-Fintecheando.local>

Looks good and merging the same
2021-08-10 14:40:52 +05:30
translatewiki.net
24a9a2b0d6 Localisation updates from https://translatewiki.net. 2021-08-09 13:07:12 +02:00
translatewiki.net
3d2f6d3aa8 Localisation updates from https://translatewiki.net. 2021-07-22 13:07:00 +02:00
translatewiki.net
9f1dd6883c Localisation updates from https://translatewiki.net. 2021-07-01 13:46:05 +02:00
Shreyank Byadagi
076f0da6fa
Update ResourceFactoryProvider.js 2021-06-27 23:27:40 +05:30
Shreyank Byadagi
2f88a22bcd
Update ResourceFactoryProvider.js 2021-06-24 21:28:53 +05:30
habile-technologies
6b05e46d8f
Not able to create the client address due to missing street field in UI (#3385)
* Not able to create the client address due to missing street field in UI
#3249

* address issue fixes

* Edit address and add address bug fix
2021-05-21 18:29:42 +05:30
habile-technologies
396611b003
Unable to Edit the Shares Product #3327 (#3391) 2021-05-20 00:02:32 +05:30
habile-technologies
99d9595071
Unable to Create Fixed Deposit and Recurring Deposit Products #3312 (#3392) 2021-05-20 00:02:12 +05:30
dependabot[bot]
57c6e7a8dd
Bump hosted-git-info from 2.7.1 to 2.8.9 (#3394)
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.7.1 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.7.1...v2.8.9)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-17 16:13:12 -07:00
translatewiki.net
3143df033b Localisation updates from https://translatewiki.net. 2021-05-03 15:25:42 +02:00
translatewiki.net
c49b4e190c Localisation updates from https://translatewiki.net. 2021-04-30 08:57:09 +02:00
translatewiki.net
9f806837fd Localisation updates from https://translatewiki.net. 2021-04-22 15:04:54 +02:00
translatewiki.net
4ef887e9cf Localisation updates from https://translatewiki.net. 2021-04-19 12:49:10 +02:00
translatewiki.net
5b9a75051e Localisation updates from https://translatewiki.net. 2021-04-15 13:07:54 +02:00
translatewiki.net
585db572ed Localisation updates from https://translatewiki.net. 2021-04-08 14:57:51 +02:00
translatewiki.net
d44bb537e2 Localisation updates from https://translatewiki.net. 2021-03-29 17:58:43 +02:00
Benura Abeywardena
dcfecd2681
fix: validation issues in FD product creation (#3362)
fixes: #3361
merging the PR as it is working on local setup
2021-03-26 20:23:36 +05:30
translatewiki.net
9fbefa81d3 Localisation updates from https://translatewiki.net. 2021-03-12 07:01:40 +01:00
balajigitt
3a5b7ea426
Fix #3203 - loan disbursement date field fix (#3357) 2021-03-09 11:09:22 +05:30
Elirehema Paul
3d79e73190
Employee Mobile Number for SMS Validation on creating Employee (#3034) 2021-03-06 11:20:52 +05:30
Shivam7-1
7416e3299a
Updated README.md (#3240)
Co-authored-by: Shreyank Byadagi <57580641+shrunk3@users.noreply.github.com>
2021-03-06 02:03:11 +05:30
Abhay Chawla
688ff149e2
Fix #2899 Inconsistency in the UI of the app (#2902)
Co-authored-by: Shreyank Byadagi <57580641+shrunk3@users.noreply.github.com>
2021-03-06 01:56:55 +05:30
Matt Katz
e942579c1d
Red Tooltip for Loan Account (#2686) 2021-03-06 01:39:44 +05:30
Matt Katz
b9946923ce
Update resourcefactoryprovider (#2725) 2021-03-06 01:27:22 +05:30
Anwesh Nayak
eb1f3a780a
fix #2752-Run report button in Reports section not alligned properly (#2753)
Co-authored-by: Shreyank Byadagi <57580641+shrunk3@users.noreply.github.com>
2021-03-06 01:05:13 +05:30
Anwesh Nayak
89974697aa
fix #2777 : scroll to top feature implemented (#2873)
* scroll to top feature

* small fix

* unwanted commits removed

* unwanted commits removed2

* unwanted commits removed3
2021-03-06 00:54:31 +05:30
BLasan
fb62fb2c49 Fix: edit tax-group field in edit-charge component
Fixes: #3337
2021-03-05 23:48:49 +05:30
translatewiki.net
7b42b71f0b Localisation updates from https://translatewiki.net. 2021-02-25 16:21:37 +01:00
translatewiki.net
bc9679fefb Localisation updates from https://translatewiki.net. 2021-02-15 14:48:10 +01:00
Benura Abeywardena
9ea62d9394
Fix #3343: Missing address street field (#3344)
merging the PRs as it is reviewed and approved
2021-02-14 14:21:07 +05:30
Benura Abeywardena
01e2a400dc
Fix #3336: Client address fields not showing (#3345) 2021-02-14 14:18:46 +05:30
translatewiki.net
cc26c282a6 Localisation updates from https://translatewiki.net. 2021-02-11 18:53:58 +01:00
translatewiki.net
52eff52425 Localisation updates from https://translatewiki.net. 2021-02-04 09:19:03 +01:00
Avik Ganguly
52141732d7
Issue 3312 (#3339) 2021-01-21 05:00:42 +05:30
translatewiki.net
85d35319cd Localisation updates from https://translatewiki.net. 2021-01-04 14:47:53 +01:00
Benura Abeywardena
1d752176b5
Fix #3080 - Fixed Terms step validation (#3321) 2020-12-30 20:48:12 +05:30
francisguchie
15c40c785c undoing fix #3196 2020-12-30 09:27:58 +01:00
francisguchie
187d35d2eb fixing GLIM application when charge is Account transger 2020-12-30 09:03:18 +01:00
translatewiki.net
e881650420 Localisation updates from https://translatewiki.net. 2020-12-17 15:17:16 +01:00
translatewiki.net
bf6836dac3 Localisation updates from https://translatewiki.net. 2020-12-14 15:10:03 +01:00
translatewiki.net
984a477586 Localisation updates from https://translatewiki.net. 2020-12-10 13:51:30 +01:00
translatewiki.net
0b9e0db487 Localisation updates from https://translatewiki.net. 2020-12-07 15:49:08 +01:00
translatewiki.net
ee726bf06d Localisation updates from https://translatewiki.net. 2020-12-03 15:47:47 +01:00
translatewiki.net
297d4956c3 Localisation updates from https://translatewiki.net. 2020-11-30 17:07:32 +01:00
translatewiki.net
15070e9676 Localisation updates from https://translatewiki.net. 2020-11-26 17:57:55 +01:00
translatewiki.net
1cdf39862c Localisation updates from https://translatewiki.net. 2020-11-23 15:25:01 +01:00
translatewiki.net
10bb5dd1aa Localisation updates from https://translatewiki.net. 2020-11-19 15:51:32 +01:00
translatewiki.net
1b4ad29c08 Localisation updates from https://translatewiki.net. 2020-11-16 15:19:56 +01:00
translatewiki.net
3d95936861 Localisation updates from https://translatewiki.net. 2020-11-09 12:41:35 +01:00
translatewiki.net
bf1c4070bc Localisation updates from https://translatewiki.net. 2020-11-05 13:24:50 +01:00
Michael Vorburger ⛑️
52f492b535
Remove duplicate instructions, simply link to README instead where the same is already present (and more up-to-date) 2020-11-04 01:28:22 +01:00
Michael Vorburger ⛑️
af391a70d4
Change online demo URL in README from mifos.io to openmf.github.io + fineract.dev (fixes #3309) 2020-11-04 00:52:20 +01:00
Michael Vorburger ⛑️
1c50e71963 Update Travis CI badge link 2020-11-04 00:38:34 +01:00
Michael Vorburger
e8eb09d6ec
Add GitHub Pages Deployment to .travis.yml (fixes #3309) 2020-11-03 23:31:14 +01:00
Renovate Bot
db51a03f6e Update nginx Docker tag to v1.19.3 2020-11-03 22:42:14 +01:00
translatewiki.net
964cb49077 Localisation updates from https://translatewiki.net. 2020-10-19 14:56:57 +02:00
Awasum Yannick
af0b9835e8 Fix #3314: Error when accessing app due to Name Mismatch exp 2020-10-15 10:11:11 +02:00
translatewiki.net
b9a5de8a49 Localisation updates from https://translatewiki.net. 2020-10-12 15:53:28 +02:00
translatewiki.net
fe8e1c72ae Localisation updates from https://translatewiki.net. 2020-10-08 15:57:13 +02:00
translatewiki.net
028219a3c9 Localisation updates from https://translatewiki.net. 2020-10-05 16:01:03 +02:00
translatewiki.net
261d010906 Localisation updates from https://translatewiki.net. 2020-09-28 17:19:38 +02:00
translatewiki.net
6924d257d8 Localisation updates from https://translatewiki.net. 2020-09-24 15:58:56 +02:00
Michael Vorburger ⛑️
a879e859dc
add Fineract.dev to README 2020-09-23 22:47:19 +02:00
AggyRubelina
3860a79523
Fix #2833 (#2834)
Co-authored-by: Agnessy <agness@singo.co.tz>
Co-authored-by: Abhijeet Singh <abhijeet40308@gmail.com>
2020-09-22 21:43:04 -07:00
Ashutosh Sharma
b8a6de83c4
fix #2736- non uniformity of clients, groups and centers list (#3300)
change layout of centers and groups according to clients view.
2020-09-22 17:21:41 -07:00
dependabot[bot]
fb05c91801
Bump http-proxy from 1.17.0 to 1.18.1 (#3306)
Bumps [http-proxy](https://github.com/http-party/node-http-proxy) from 1.17.0 to 1.18.1.
- [Release notes](https://github.com/http-party/node-http-proxy/releases)
- [Changelog](https://github.com/http-party/node-http-proxy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/http-party/node-http-proxy/compare/1.17.0...1.18.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-09-22 17:21:03 -07:00
Rahul Pawar
23825f663c
GLIM_GSIM_UI (#3244)
* glim_gsim_ui

* fixed gsim_glim ui
2020-09-22 16:47:57 -07:00
Elirehema Paul
32b6ca925f
editting-employee-mobile-Number-for-SMS-Should-only-allow-numeric-issues#2962 (#3033) 2020-09-22 15:53:03 -07:00
translatewiki.net
7b8fbc03d6 Localisation updates from https://translatewiki.net. 2020-09-17 16:44:20 +02:00
translatewiki.net
79605fe617 Localisation updates from https://translatewiki.net. 2020-09-14 17:05:39 +02:00
translatewiki.net
4d8817f00d Localisation updates from https://translatewiki.net. 2020-09-03 16:44:22 +02:00
translatewiki.net
1f006e7072 Localisation updates from https://translatewiki.net. 2020-08-31 16:11:40 +02:00
Muskan Khedia
78e3d790a5
updated bower dependency (#3234) 2020-08-30 18:29:35 +05:30
translatewiki.net
b38ec7ebcf Localisation updates from https://translatewiki.net. 2020-08-27 15:52:15 +02:00
renovate[bot]
ae8964c576
chore(deps): update dependency jshint-stylish to v2 (#3283)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-25 10:23:04 -07:00
renovate[bot]
1aed938745
chore(deps): update dependency karma-firefox-launcher to v1 (#3288)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-25 10:22:41 -07:00
Alex Anto Navis L
6bc5426e08
Fixed #2904 - Recreated from another in-active PR (#3301)
* Fixed #2904 - Recreated from another in-active PR


- https://github.com/openMF/community-app/pull/2905
- Had merge conflicts and branch is inactive
- Tested the scenarios

* Fixed #2904 - Fixed the existing test
2020-08-25 10:21:03 -07:00
Guchie
617c0b6502
Updating read me for Windows Users facing npm Install error (#3257) 2020-08-24 17:12:44 -07:00
renovate[bot]
a0b5a09719
chore(deps): update dependency grunt to v1.3.0 (#3299)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-24 17:10:59 -07:00
renovate[bot]
8017d54a41
chore(deps): update dependency grunt-contrib-connect to v3 (#3269)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-24 17:10:11 -07:00
renovate[bot]
b5e7617e86
Update dependency grunt-string-replace to v1 (#3282)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-24 17:09:53 -07:00
Angel Cajas
ca5bc6325a
Rate Module (#3000)
New pages were added for Rate definition and rates can be added in loan products and accounts

Co-authored-by: Angel Cajas <angel.cajas@bowpi.com>
2020-08-24 13:18:15 -07:00
renovate[bot]
0aa4ad574f
chore(deps): update dependency grunt-contrib-connect to v0.11.2 (#3218)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-24 13:17:09 -07:00
translatewiki.net
ce9a3d94ee Localisation updates from https://translatewiki.net. 2020-08-24 15:27:18 +02:00
Elirehema Paul
9cde5c7f0e
Uniform alignment in Groups and Centers (#3031)
Fixes #2926
2020-08-23 13:33:10 +05:30
Elirehema Paul
84f13606c4
Improper UI display in individual collection sheet (#3032)
Fixes #2923
2020-08-23 13:21:45 +05:30
translatewiki.net
02a4de718f Localisation updates from https://translatewiki.net. 2020-08-21 17:25:12 +02:00
Guchie
99934f3c9e
filtering clients at create guarantor (#3256) 2020-08-17 10:31:33 -07:00
Chirag Gupta
d3e48396e2
chore: replace sqlSearch with status param in checker inbox for clients (#3297)
Co-authored-by: Chirag Gupta <gchirag@apache.org>
2020-08-17 10:30:53 -07:00
renovate[bot]
b092c0d403
Update dependency grunt-karma to v4 (#3280)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-17 10:29:25 -07:00
renovate[bot]
13006e14ed
Update dependency grunt to v1 (#3266)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-17 10:28:44 -07:00
renovate[bot]
14c33ae04c
Update nginx Docker tag to v1.19.2 (#3296)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-17 10:28:22 -07:00
translatewiki.net
2475aac261 Localisation updates from https://translatewiki.net. 2020-08-17 19:21:52 +02:00
aimanoj
fa55cd9a58
fix: FINERACT-802 restrict-client-to-have-single-self-service-user (#3152)
Authored-by: Manoj <manoj@fynarfin.io>
2020-08-17 19:25:34 +05:30
Kiran
2fc2595260
FINERACT-976:Client date of birth can not be greater than the client submitted on date (#3233) 2020-08-16 12:38:53 +07:00
Kiran
4c2a7a56a0
update base API URL (#3251)
update base api URL to new server https://demo.mifos.io
2020-08-15 01:37:30 +05:30
Manoj
22612924b5
AL-9-Custom-installment-in-reshedule (#3259)
Co-authored-by: admin <admin@admins-MacBook-Pro.local>
2020-08-14 02:33:11 +05:30
renovate[bot]
1e3f9010c7
Update dependency grunt-contrib-cssmin to v3 (#3271)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:12:06 -07:00
renovate[bot]
784cb12acb
Update dependency grunt-contrib-requirejs to v1 (#3274)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:11:40 -07:00
renovate[bot]
88ae5c8cb0
Update dependency grunt-contrib-watch to v1 (#3277)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:11:16 -07:00
renovate[bot]
aaf67433b4
Update dependency grunt-replace to v1 (#3281)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:10:43 -07:00
renovate[bot]
12e64aabcb
Update dependency karma-html2js-preprocessor to v1 (#3289)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:09:35 -07:00
renovate[bot]
8b59484d8f
Update dependency load-grunt-tasks to v5 (#3295)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-13 12:08:50 -07:00
Manoj
7da53ac809
AL-2-reschedule-loan-first-pay-day-holiday-fix (#3260)
Co-authored-by: admin <admin@admins-MacBook-Pro.local>
2020-08-14 00:35:07 +05:30
translatewiki.net
a2ed1ed550 Localisation updates from https://translatewiki.net. 2020-08-13 19:19:34 +02:00
renovate[bot]
228111511e
Update dependency karma-junit-reporter to v2 (#3291)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-12 16:43:26 -07:00
renovate[bot]
cee1ae98f8
Update dependency karma-requirejs to v1 (#3292)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-12 16:40:45 -07:00
renovate[bot]
2addd3a10d
Update dependency karma-script-launcher to v1 (#3293)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-12 16:00:14 -07:00
renovate[bot]
bd0409498f
Update dependency karma-coverage to v2 (#3287)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 16:32:31 -07:00
renovate[bot]
3967e3cc33
Update dependency karma-chrome-launcher to v3 (#3285)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 16:32:07 -07:00
renovate[bot]
de427d8eaa
Update dependency karma-coffee-preprocessor to v1 (#3286)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 13:38:03 -07:00
renovate[bot]
51dea972d0
Update timbru31/ruby-node Docker tag to v2.7 (#3279)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:11:00 -07:00
renovate[bot]
b4e544fb56
Update dependency grunt-contrib-copy to v1 (#3270)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:09:50 -07:00
renovate[bot]
f7fcfb3e89
Update dependency grunt-contrib-concat to v1 (#3268)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:09:32 -07:00
renovate[bot]
3db77e3b02
Update dependency karma-script-launcher to v0.2.0 (#3263)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:08:20 -07:00
renovate[bot]
fe6059f995
Update dependency requirejs to v2.3.6 (#3265)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:07:55 -07:00
renovate[bot]
4daac74a69
Update dependency grunt-contrib-uglify to v5 (#3276)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:07:08 -07:00
renovate[bot]
8433676b4d
Update dependency grunt-gh-pages to v4 (#3278)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:06:36 -07:00
renovate[bot]
50b27e2fa3
Update dependency grunt-contrib-nodeunit to v2 (#3273)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:06:18 -07:00
renovate[bot]
6985d86068
Update dependency grunt-contrib-clean to v2 (#3267)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-10 08:05:36 -07:00
renovate[bot]
24af746ee2
Update dependency grunt-contrib-jshint to v2 (#3272)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-07 20:44:21 +05:30
renovate[bot]
8942ca25a5
Update dependency jshint-stylish to v0.4.0 (#3228)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-07 20:19:51 +05:30
Oussema.exe
e2f90b49b4
Fix #3159 - Fixes UI inconsistency in the side navbar (#3180) 2020-08-07 12:48:30 +05:30
renovate[bot]
351b4d834d
Update dependency karma-phantomjs2-launcher to v0.4.0 (#3262)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:50:18 -07:00
Terence Monteiro
3d1c1b693c
Fixes issue #3001. datepicker disables dates before 1st Jan (#3008) 2020-08-06 16:49:22 -07:00
renovate[bot]
2c0ec9cba6
Update dependency grunt-devcode to v0.0.4 (#3213)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:16:48 -07:00
renovate[bot]
c4676b8e9d
Update nginx Docker tag to v1.19.1 (#3214)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:16:16 -07:00
renovate[bot]
1f08a1ee22
Update dependency grunt-contrib-clean to v0.7.0 (#3216)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:15:07 -07:00
renovate[bot]
cb75700d8a
Update dependency grunt-contrib-concat to v0.5.1 (#3217)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:14:48 -07:00
renovate[bot]
85c34648b5
Update dependency karma-chrome-launcher to v0.2.3 (#3229)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:13:10 -07:00
renovate[bot]
e91b2bc7d7
Update dependency grunt-text-replace to v0.4.0 (#3227)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:12:33 -07:00
renovate[bot]
e987f58879
Update dependency grunt-hashres to v0.4.1 (#3225)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:11:50 -07:00
renovate[bot]
39928c1b85
Update dependency karma-junit-reporter to v0.4.2 (#3261)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:10:41 -07:00
renovate[bot]
73323220f8
Update dependency grunt-contrib-requirejs to v0.4.4 (#3222)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:10:14 -07:00
renovate[bot]
1834a3366b
Update dependency grunt-replace to v0.11.0 (#3226)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:09:41 -07:00
renovate[bot]
858512e43b
Update dependency grunt-contrib-copy to v0.8.2 (#3219)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:05:53 -07:00
renovate[bot]
37a33eb219
Update dependency grunt-contrib-jshint to v0.12.0 (#3220)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:04:44 -07:00
renovate[bot]
ab8a1c660e
Update dependency karma-coverage to v0.5.5 (#3231)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-06 16:03:58 -07:00
translatewiki.net
bfb5a7f81a Localisation updates from https://translatewiki.net. 2020-08-03 19:44:46 +02:00
translatewiki.net
dd3182c80a Localisation updates from https://translatewiki.net. 2020-07-30 15:31:32 +02:00
nnatarajan
1f780c43b8 No Validations for username and password length while creating user
Closes #3136
2020-07-28 18:23:35 -07:00
nnatarajan
6c1e65c2c4 Default list of only active employees.
Closes #2432.
2020-07-28 18:23:18 -07:00
translatewiki.net
be130a9521 Localisation updates from https://translatewiki.net. 2020-07-27 18:25:46 +02:00
translatewiki.net
297fe0f9ae Localisation updates from https://translatewiki.net. 2020-07-20 19:49:37 +02:00
nikpawar89
cf3d8a6894 creditbureau_configuration 2020-07-18 04:56:51 +01:00
Natasha Natarajan
97d9770493
Update readme (#3255) 2020-07-16 17:08:33 +01:00
translatewiki.net
a81f19e096 Localisation updates from https://translatewiki.net. 2020-07-14 10:20:43 +02:00
translatewiki.net
9321ea05a8 Localisation updates from https://translatewiki.net. 2020-07-06 18:48:29 +02:00
translatewiki.net
0d646d3e2b Localisation updates from https://translatewiki.net. 2020-06-29 16:24:15 +02:00
Intelligrow-Fintellig
cbefc76f9e
#3239 Date Picker locked till 22-06-2020 Fix (#3242)
merging this PR after discussion with Ed Cable.
2020-06-24 09:54:48 +05:30
Ankit Raj Ojha
5405e2056a
Fix #2862 - Added new form wizard in listed forms (#2875) 2020-06-15 09:44:39 -07:00
Oussema.exe
019b96f67a
Fix #2952 - Fixes ability to uncheck 'all function' checkbox (#3167)
fix

fix

fix

fix

fix
2020-06-14 09:41:29 -07:00
Shivam7-1
cb2f163226
Updated documentation Contributing.md (#3207)
* Updated documentation Contributing.md

* Updated documentation Getting-Started.md
2020-06-13 18:05:09 -07:00
translatewiki.net
301daf7a67 Localisation updates from https://translatewiki.net. 2020-06-08 17:08:46 +02:00
translatewiki.net
f7cfabfa98 Localisation updates from https://translatewiki.net. 2020-06-01 22:34:30 +02:00
fynmanoj
91c0c3bf2f
FINERACT-893-fixed-deposit-rollover (#3194) 2020-05-27 00:04:15 +05:30
translatewiki.net
ab9c606e4c Localisation updates from https://translatewiki.net. 2020-05-18 16:08:05 +02:00
renovate[bot]
ad3a4f6863
Pin dependencies (#3212)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-05-15 07:00:45 -07:00
renovate[bot]
5941e8245f
Add renovate.json (#3210)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-05-14 18:19:48 -07:00
translatewiki.net
2ab1b80c53 Localisation updates from https://translatewiki.net. 2020-05-11 17:39:56 +02:00
translatewiki.net
42c535ba79 Localisation updates from https://translatewiki.net. 2020-05-07 17:12:26 +02:00
Michael Vorburger
7bec087808 add *.cache to .gitignore 2020-05-06 00:31:36 +02:00
Michael Vorburger ⛑️
24d08b4325
add docker run from Hub doc to README 2020-05-02 20:29:32 +02:00
Michael Vorburger ⛑️
af6fc237f4
npm audit fix (#3198)
$ npm audit

found 219 vulnerabilities (103 low, 35 moderate, 80 high, 1 critical) in 3503 scanned packages
  run `npm audit fix` to fix 54 of them.
  100 vulnerabilities require semver-major dependency updates.
  65 vulnerabilities require manual review. See the full report for details.

$ npm audit fix

added 4 packages from 19 contributors, removed 2 packages, updated 16 packages and moved 3 packages in 4.907s

fixed 54 of 219 vulnerabilities in 3503 scanned packages
  65 vulnerabilities required manual review and could not be updated
  12 package updates for 100 vulnerabilities involved breaking changes
2020-04-27 20:07:38 +01:00
translatewiki.net
25cac5aacf Localisation updates from https://translatewiki.net. 2020-04-27 16:50:00 +02:00
Michael Vorburger
85bb211c36 add bin/ to .gitignore (see README) 2020-04-26 18:24:38 +02:00
Michael Vorburger ⛑️
2241f3a200
improveme build steps in README 2020-04-26 18:23:05 +02:00
Michael Vorburger ⛑️
546e015b74 update README.md with link to Docker Hub 2020-04-26 17:38:29 +02:00
translatewiki.net
067ea9709f Localisation updates from https://translatewiki.net. 2020-04-20 16:57:36 +02:00
translatewiki.net
6361ad053f Localisation updates from https://translatewiki.net. 2020-04-17 09:40:48 +02:00
translatewiki.net
c78930d27e Localisation updates from https://translatewiki.net. 2020-04-16 17:11:30 +02:00
Maek Twain
5baf430bf3
Fixed Date For Safari (#3196) 2020-04-16 15:49:35 +01:00
translatewiki.net
4131da054a Localisation updates from https://translatewiki.net. 2020-04-09 16:05:12 +02:00
translatewiki.net
e101fe854d Localisation updates from https://translatewiki.net. 2020-03-09 16:39:48 +01:00
Awasum Yannick
57537cf974
Seperated dependencies into a bulleted list. (#3185)
Earlier both dependencies were following each other in the same sentence. Now they are separated into a bulleted list.
2020-03-05 20:10:47 +01:00
translatewiki.net
b427ba65b7 Localisation updates from https://translatewiki.net. 2020-03-05 17:33:18 +01:00
translatewiki.net
63f12e2091 Localisation updates from https://translatewiki.net. 2020-03-02 14:47:55 +01:00
translatewiki.net
eb1dff7e97 Localisation updates from https://translatewiki.net. 2020-02-27 17:16:16 +01:00
translatewiki.net
d452634446 Localisation updates from https://translatewiki.net. 2020-02-20 16:05:57 +01:00
translatewiki.net
e319393141 Localisation updates from https://translatewiki.net. 2020-02-17 14:58:05 +01:00
translatewiki.net
120ff52c20 Localisation updates from https://translatewiki.net. 2020-02-13 12:37:23 +01:00
translatewiki.net
1b5b967982 Localisation updates from https://translatewiki.net. 2020-02-10 14:55:06 +01:00
Brian C Cooke
02861aa633
fix: remove erroneous error message when uploading client image (#3169)
Per FINERACT-666 bug (https://issues.apache.org/jira/browse/FINERACT-666),
user may get a "field is required" message when trying to upload a valid image
file if they have prevoiusly tried to upload an invalid file type such as .txt.

Root cause seems to be ViewClientController is check the scope phase before
applying scope.  Instead, recommended practice is to apply the scope within
a timeout block (ref https://stackoverflow.com/questions/12729122/angularjs-prevent-error-digest-already-in-progress-when-calling-scope-apply).
Upon changing to use timeout(), the above issue is fixed.

Fixes: FINERACT-666
2020-02-09 12:41:35 +01:00
Sidhant Gupta
f38529e3c9
Fixes issue FINERACT-749 (#3096) 2020-02-08 10:09:11 +01:00
Sidhant Gupta
42a835ea1c Fixes issue FINERACT-701 (#3095) 2020-02-08 10:08:46 +01:00
boyuan12
28e40c61ba
updated package.json (added description, author, repository and homepage) (#3181)
fixC
2020-02-08 10:07:57 +01:00
translatewiki.net
e71c481841 Localisation updates from https://translatewiki.net. 2020-02-03 15:43:26 +01:00
translatewiki.net
06349bf012 Localisation updates from https://translatewiki.net. 2020-01-27 17:43:14 +01:00
translatewiki.net
ff8cc06b93 Localisation updates from https://translatewiki.net. 2020-01-23 16:14:05 +01:00
Gerhard Janse van Rensburg
174cef4f4b fixed unit test 2020-01-23 09:12:14 +01:00
Gerhard Janse van Rensburg
2913deef49 Fixes FINERACT-726 2020-01-23 09:12:14 +01:00
translatewiki.net
652b7e86f3 Localisation updates from https://translatewiki.net. 2020-01-20 11:36:59 +01:00
translatewiki.net
0a58500964 Localisation updates from https://translatewiki.net. 2020-01-13 16:27:26 +01:00
Oussema.exe
dde4d01c59 Fix #3070 - Fixes wrong group display (#3171) 2020-01-07 17:10:44 +05:30
Oussema.exe
2cfc975bd7 Fix #2729 - Fixes edit button not aligned properly (#3170) 2020-01-07 17:10:32 +05:30
translatewiki.net
cd1cbf185a Localisation updates from https://translatewiki.net. 2020-01-06 18:01:02 +01:00
Oussema.exe
d0d257d743 Fix #3140 - Fixes flashing tooltip (#3166) 2019-12-21 20:30:54 +05:30
Mohammad Sameer
4dd8425800 Fix #2965 - Add asterisk to Joined On field to show it mandatory on employee creation (#3023) 2019-12-20 15:45:30 +01:00
translatewiki.net
091e2867e9 Localisation updates from https://translatewiki.net. 2019-12-19 15:13:55 +01:00
translatewiki.net
15a0e858af Localisation updates from https://translatewiki.net. 2019-12-16 16:02:52 +01:00
punwai
db4f8381c8 Fix: #3163 - Fixes Filter by Name boxes searching extra fields (#3165) 2019-12-16 09:33:34 +05:30
Oussema.exe
1498806741 Fix #2932 - Preview not showing the default value (#3162) 2019-12-16 09:33:09 +05:30
translatewiki.net
6dc0251e7b Localisation updates from https://translatewiki.net. 2019-12-12 15:29:55 +01:00
translatewiki.net
289dd60b9e Localisation updates from https://translatewiki.net. 2019-12-09 15:56:23 +01:00
Oussema.exe
8c9b667d41 Fix #3157 - Fixes titles not translating (#3158) 2019-12-08 20:27:43 +05:30
Oussema.exe
d9010c3ff9 Fix #2350 - Disables previous and next month calender dates (#3156) 2019-12-08 15:03:24 +05:30
Oussema.exe
014b3dce39 Fix #3154 - Fixes the UI inconsistency in README.md file (#3155) 2019-12-06 16:21:49 +05:30
translatewiki.net
0e96ece72a Localisation updates from https://translatewiki.net. 2019-12-05 15:28:14 +01:00
DeeJayBro
6a49732e6c Fix #3141 - Removed duplicates from locale-en.json (#3153) 2019-12-05 13:18:25 +05:30
Oussema.exe
9e85d5f45a Fix #3139 - Adds a meaningful label to help link (#3151) 2019-12-04 20:26:48 +05:30
translatewiki.net
c48f89dc33 Localisation updates from https://translatewiki.net. 2019-12-02 09:34:06 +01:00
muskankhedia
7d5935dcbe added error message 2019-12-02 12:34:43 +05:30
muskankhedia
8925afc885 updated UI to match new changes 2019-12-02 10:21:51 +05:30
Awasum Yannick
4a71908b39
Fix release version on develop branch: fix #3147 (#3148) 2019-11-30 12:17:11 +01:00
Awasum Yannick
ec90b708dd
Apply npm audit fix (#3146) 2019-11-29 20:25:19 +01:00
translatewiki.net
a03be18a93 Localisation updates from https://translatewiki.net. 2019-11-28 16:44:19 +01:00
translatewiki.net
a41207d422 Localisation updates from https://translatewiki.net. 2019-11-25 15:38:07 +01:00
muskankhedia
84b06614c7 fixed date-picker 2019-11-24 09:22:33 +05:30
eli
017fe61516 Create Closure Button In Accounting Closures Needs More Padding 2019-11-22 18:38:32 +05:30
eli
e7ae818fd5 Fix #3050 2019-11-22 18:37:05 +05:30
eli
ea038e7601 Checker Box Options 2019-11-22 18:37:05 +05:30
eli
6a8ef3702a checker box Yes' and 'No' buttons needed 2019-11-22 18:37:05 +05:30
ShruthiRajaram
c90f8f63af Fix-2658 specific due date loan charge 2019-11-22 18:33:33 +05:30
ankit01ojha
38813f1316 Fix #2879 - Added fixed and recurring account overview 2019-11-22 18:24:41 +05:30
Elirehema Paul
fd0f77e023 Account Usage is empty when editing the chart of account issue #2966 (#3025) 2019-11-22 18:18:53 +05:30
Akash Bhave
ed029fc59f Fix #2655 - Client address issues (#2699) 2019-11-22 18:16:23 +05:30
translatewiki.net
db2377e6f0 Localisation updates from https://translatewiki.net. 2019-11-21 15:06:04 +01:00
Raunak Sett
a7af0c1742 feat: fix #1820, Added Create Self-Service User Form (#2139)
* feat: fix #1820, Added Create Self-Service User Form

fix #1820, Completed Login Form, API Not Working

Fix #1820, API working for creation of self service

fix 1820, Assigning Client to Self

* Fixed User Role for Self Service User
2019-11-21 08:57:47 +05:30
dependabot[bot]
9ec5f3bdce Bump mixin-deep from 1.3.1 to 1.3.2 (#3132)
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-11-15 16:49:08 +01:00
dependabot[bot]
8b4146237f Bump handlebars from 4.0.11 to 4.5.2 (#3133)
Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.0.11 to 4.5.2.
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.0.11...v4.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-11-15 16:36:24 +01:00
Awasum Yannick
d7cda5091f Update webcam-directive to 3.2.1 to fix webcam not loading on client page issue: #3131 2019-11-15 16:26:42 +01:00
Courage Angeh
cc1e51a61e Add CSS to highlight new notification (#3083) 2019-11-15 09:33:20 +01:00
Aaryan Budhiraja
9d662d99b7 Fix #3002 - Repayment Schedule Alignment (#3081) 2019-11-14 19:59:54 +01:00
Teneng Clifford
cb283cdd1f Modified readme (#3130)
updated the Url port from localhost:9000 to localhost:9002
2019-11-14 19:58:59 +01:00
translatewiki.net
6baca92954 Localisation updates from https://translatewiki.net. 2019-10-24 22:08:26 +02:00
Jonathan Zhang
3cfaba5992 Fix: #3123 README Missing Command (#3124) 2019-10-18 16:40:02 +01:00
translatewiki.net
adcbf80fe5 Localisation updates from https://translatewiki.net. 2019-10-14 17:32:52 +02:00
Jun King P. Miñon
906fb21cb3 Fix #3119 - Enable Hidden Fields When Creating and Updating a Loan Account (#3120) 2019-10-03 13:31:06 +01:00
translatewiki.net
553d694c34 Localisation updates from https://translatewiki.net. 2019-09-23 17:56:31 +02:00
translatewiki.net
d1ff1b6526 Localisation updates from https://translatewiki.net. 2019-09-19 14:30:38 +02:00
translatewiki.net
baf5536593 Localisation updates from https://translatewiki.net. 2019-09-16 18:58:43 +02:00
translatewiki.net
c3de377465 Localisation updates from https://translatewiki.net. 2019-09-12 16:05:42 +02:00
translatewiki.net
ee083c1344 Localisation updates from https://translatewiki.net. 2019-08-29 20:21:42 +02:00
Michael Vorburger ⛑️
bd9c3fcc0f
add Docker Hub badges to README 2019-08-26 21:07:59 +02:00
Diego Camargo
0126464abb Apply grammar corrections 2019-08-23 19:43:38 +02:00
Awasum Yannick
dffcb3f130 Dockerize Community App 2019-08-23 19:43:38 +02:00
translatewiki.net
18bfde36c9 Localisation updates from https://translatewiki.net. 2019-08-15 18:22:18 +02:00
translatewiki.net
00d5fdd126 Localisation updates from https://translatewiki.net. 2019-08-12 12:22:01 +02:00
translatewiki.net
cb7d56c710 Localisation updates from https://translatewiki.net. 2019-08-08 20:16:54 +02:00
translatewiki.net
2e8ce9af49 Localisation updates from https://translatewiki.net. 2019-07-22 14:07:44 +02:00
Awasum Yannick
cb1682456d fix broken Travis build (fixes #3111)
see https://askubuntu.com/questions/722075/no-installation-candidate-for-libicu52-on-15-10

and https://gist.github.com/telbiyski/ec56a92d7114b8631c906c18064ce620
2019-07-16 20:15:11 +02:00
Supreeth Sudhakaran Menon
76f315a79c Getting-Started.md (#3098) 2019-07-16 10:12:51 +01:00
SANMITRA
7e5a908928 Localisation Telugu language added 2019-07-16 09:21:20 +02:00
Michael Vorburger ⛑️
8be131f70c
move badges in README and fix Travis badge (now .com instead of .org) 2019-07-16 09:16:30 +02:00
Palash Bauri
b55922ad11 Added Travis Badge For Develop Branch 2019-07-16 09:14:24 +02:00
translatewiki.net
99618476c1 Localisation updates from https://translatewiki.net. 2019-07-05 07:19:39 +02:00
translatewiki.net
8906f8f0dd Localisation updates from https://translatewiki.net. 2019-06-24 16:56:43 +02:00
translatewiki.net
3bc773d503 Localisation updates from https://translatewiki.net. 2019-06-20 21:42:09 +02:00
translatewiki.net
d00e3eb89f Localisation updates from https://translatewiki.net. 2019-06-17 19:28:46 +02:00
translatewiki.net
14e0342be0 Localisation updates from https://translatewiki.net. 2019-06-13 20:16:56 +02:00
translatewiki.net
3c37029d9b Localisation updates from https://translatewiki.net. 2019-06-10 20:33:22 +02:00
translatewiki.net
de2aa89659 Localisation updates from https://translatewiki.net. 2019-05-27 16:48:43 +02:00
translatewiki.net
4a99e6edc1 Localisation updates from https://translatewiki.net. 2019-05-20 13:57:56 +02:00
translatewiki.net
4913b4d8ff Localisation updates from https://translatewiki.net. 2019-05-17 12:28:49 +02:00
translatewiki.net
a7b8f39c86 Localisation updates from https://translatewiki.net. 2019-04-22 22:21:46 +02:00
translatewiki.net
63fdd695ce Localisation updates from https://translatewiki.net. 2019-04-15 17:47:37 +02:00
translatewiki.net
bc46a08839 Localisation updates from https://translatewiki.net. 2019-04-08 16:54:16 +02:00
ShruthiRajaram
6642d8bee7 Fix-1687 datatable date and time issues 2019-04-03 10:49:11 +05:30
translatewiki.net
c453df8c13 Localisation updates from https://translatewiki.net. 2019-04-01 20:39:00 +02:00
translatewiki.net
08b9e3d428 Localisation updates from https://translatewiki.net. 2019-03-28 19:38:59 +01:00
translatewiki.net
49399d1c2b Localisation updates from https://translatewiki.net. 2019-03-21 11:02:09 +01:00
translatewiki.net
770ddac31c Localisation updates from https://translatewiki.net. 2019-03-18 08:54:11 +01:00
translatewiki.net
588cb5a993 Localisation updates from https://translatewiki.net. 2019-03-07 16:19:36 +01:00
Jov03
af347cd000 #2794-numeric Validation in Create Fixed Deposit Product View
Added Numeric Validation to the textfields in Create Fixed Deposit Product View .Added decimal number attribute to late-validate directive to validate decimal numbers.
2019-03-05 10:57:42 +05:30
shreyank
360492f15b configurations changes related to whitelist on Mifos login page 2019-02-28 12:44:15 +05:30
Vishwas Babu A J
4043291c58 Fixing travis build failures (bump node version to 5) 2019-02-28 12:08:51 +05:30
translatewiki.net
aae419cd60 Localisation updates from https://translatewiki.net. 2019-02-25 10:50:54 +01:00
translatewiki.net
7965031c86 Localisation updates from https://translatewiki.net. 2019-01-14 09:39:24 +01:00
ShruthiRajaram
b38296b48c FIX-1624 temporarily hide fund mapping till the feature is completely built 2019-01-03 11:14:37 +05:30
ShruthiRajaram
fbfd45ebb4 Fix-3073 multiple update calls on submission 2019-01-03 11:14:02 +05:30
translatewiki.net
ae710a0200 Localisation updates from https://translatewiki.net. 2018-12-31 18:01:53 +01:00
translatewiki.net
f869ceb76b Localisation updates from https://translatewiki.net. 2018-12-27 10:55:39 +01:00
Agnessy
3f6b260c58 Fix#3062 2018-12-26 11:32:13 +05:30
ShruthiRajaram
57e727f995 Fix-3066 multiple address created on getting and correcting validation message 2018-12-25 11:28:33 +05:30
Rupeshiya
ebb3993b76 FIXES#3061 -Fixed Cancel button wrong functionalities for Reschedule Loan in Checker Inbox 2018-12-19 11:23:06 +05:30
eli
810c551e78 Country not showing in Client's address page in issue #3019 2018-12-14 12:39:28 +05:30
Mohammad Sameer
1fa54d8fce Feat #2935 - Add UI for editing submitted on date for groups 2018-12-13 11:14:35 +05:30
ShruthiRajaram
41a2db0e1a community:2985 should not restrict interest and such other fields to whole number 2018-12-12 13:14:37 +05:30
translatewiki.net
a10ced9640 Localisation updates from https://translatewiki.net. 2018-12-10 08:15:57 +01:00
eli
211831b0bf Moving Wizard to the next step #3052 2018-12-03 18:51:38 +05:30
Mohammad Sameer
158a88b2cd Fix #2335 - Make description field non-mandatory in create RD/FD product 2018-12-03 14:08:13 +05:30
translatewiki.net
adb5cd3851 Localisation updates from https://translatewiki.net. 2018-11-22 07:34:08 +01:00
translatewiki.net
9fd1c9254f Localisation updates from https://translatewiki.net. 2018-11-19 08:45:29 +01:00
ShruthiRajaram
54dca5242d Community :3043 permissions are not handled properly for loan and savings officer assignment 2018-11-17 07:07:48 +05:30
ShruthiRajaram
d33c6ceeee Community:3005 Back dated client transfer 2018-11-16 15:19:41 +05:30
ShruthiRajaram
1e5f211405 Fix:3020 unable to import client when address is enabled 2018-11-13 11:00:45 +05:30
Palash Bauri
b9a0a9e92b Fix #2965 - Show Joined field as mandatory 2018-11-13 10:58:34 +05:30
ShruthiRajaram
2f22230467 Fix:3004 edit group type activation date 2018-11-13 10:56:03 +05:30
Palash Bauri
cca4f33ec7 Improve ISSUE TEMPLATE by adding comments 2018-11-13 10:54:19 +05:30
Palash Bauri
1110c2d86e Fixes #3047 - Add Staffs count to table and more
* Fixes #3047 by adding staffs to the table
* In Staff Form Center is added to the table
2018-11-12 16:32:30 +05:30
translatewiki.net
b906d79dda Localisation updates from https://translatewiki.net. 2018-11-08 10:06:15 +01:00
Palash Bauri
cca8201694 Fixes #3003 - Penalties Receivable tooltip 2018-11-08 11:24:36 +05:30
Palash Bauri
cd515c2155 Fix #2963 - Fixed Drop-down calender on FDP (#3030) 2018-11-08 09:44:27 +05:30
anweshknayak
4050b8d48b routes changed 2018-11-05 17:32:56 +05:30
ankit01ojha
d88234259b Fix #2890 - Added column name in Incentives 2018-11-05 17:29:40 +05:30
translatewiki.net
92ef12ec45 Localisation updates from https://translatewiki.net. 2018-11-05 08:50:02 +01:00
jivjyotsingh
ec6734d226 fix3013 Readme bundler installation command Typo corrected 2018-10-25 18:55:52 +05:30
ShruthiRajaram
e92523e460 Fix-3010 enable Post As on date for authorized user 2018-10-17 17:51:28 +05:30
jivjyotsingh
5da95b3916 holiday-table-overflow-fixed 2018-10-17 11:29:54 +05:30
Agnessy
6e12d42b92 Fix 2673 2018-10-05 16:58:28 +05:30
trendspotter
817a6bfece Add czech (cs) to Langs.js 2018-10-05 16:39:43 +05:30
translatewiki.net
3e12085e14 Localisation updates from https://translatewiki.net. 2018-10-03 22:13:51 +02:00
Abhay Chawla
55f232da79 Fix #2888 Incorrect Placement of Tooltips 2018-09-27 17:23:35 +05:30
translatewiki.net
a97f4ebc5b Localisation updates from https://translatewiki.net. 2018-09-20 11:13:44 +02:00
translatewiki.net
5bb2692cfe Localisation updates from https://translatewiki.net. 2018-09-17 08:13:14 +02:00
translatewiki.net
80a6b58271 Localisation updates from https://translatewiki.net. 2018-09-13 11:01:58 +02:00
translatewiki.net
90e7998709 Localisation updates from https://translatewiki.net. 2018-09-10 08:27:17 +02:00
translatewiki.net
26f9aa50fc Localisation updates from https://translatewiki.net. 2018-09-06 21:33:24 +02:00
ShruthiRajaram
d7f5ef4bbd community:2994 account options for financial activity mapping corrected (#2995) 2018-09-06 22:12:13 +05:30
ShruthiRajaram
e5b657c9c0 community:2942 instead of RD products FD products are displayed during new RD application (#2990) 2018-09-06 22:05:54 +05:30
ShruthiRajaram
ae065e5e31 community_app:2981 unable to create datatable (#2983) 2018-09-06 22:05:03 +05:30
translatewiki.net
67726f0689 Localisation updates from https://translatewiki.net. 2018-09-03 08:19:33 +02:00
translatewiki.net
2cd5a0f8f6 Localisation updates from https://translatewiki.net. 2018-08-27 07:48:38 +02:00
translatewiki.net
59ac2c0b20 Localisation updates from https://translatewiki.net. 2018-08-23 08:23:52 +02:00
translatewiki.net
ab089868b2 Localisation updates from https://translatewiki.net. 2018-08-17 15:07:11 +02:00
translatewiki.net
611e6e290e Localisation updates from https://translatewiki.net. 2018-08-13 08:17:49 +02:00
translatewiki.net
87a784f846 Localisation updates from https://translatewiki.net. 2018-08-09 09:31:18 +02:00
translatewiki.net
4f9076c666 Localisation updates from https://translatewiki.net. 2018-08-06 07:24:40 +02:00
translatewiki.net
cd8a811e7b Localisation updates from https://translatewiki.net. 2018-08-02 10:20:47 +02:00
translatewiki.net
07245ef94e Localisation updates from https://translatewiki.net. 2018-07-30 08:25:38 +02:00
translatewiki.net
e65bace5e7 Localisation updates from https://translatewiki.net. 2018-07-26 10:11:15 +02:00
Mohit kumar Bajoria
5bcc865024
Fix Link 2018-07-25 21:10:14 +05:30
ShruthiRajaram
b4442f4dd6 community:2980 unable to approve or reject share account applicaion which is already submitted 2018-07-25 17:10:34 +05:30
ShruthiRajaram
ad6780f620 community_app:2988 unable to load index page 2018-07-25 16:52:52 +05:30
mbj36
4860a9ce0e Fix guidelines 2018-07-25 01:03:40 +05:30
mbj36
49f550112b Added CONTRIBUTING Guidelines 2018-07-25 01:01:18 +05:30
translatewiki.net
21d4b068e9 Localisation updates from https://translatewiki.net. 2018-07-23 09:40:53 +02:00
ShruthiRajaram
9bc4ed909c community_app:2591 description is mandatory while creating share product 2018-07-23 11:52:01 +05:30
Gábor Tóth
ea8e49ce34 remove console.log 2018-07-21 11:51:06 +05:30
ShruthiRajaram
4d27cc424b Unable to Edit Group: Clicking on Edit or activate button in Group page leading to blank page 2018-07-21 11:44:24 +05:30
translatewiki.net
5e421d8fa0 Localisation updates from https://translatewiki.net. 2018-07-20 15:08:10 +02:00
translatewiki.net
254063b19e Localisation updates from https://translatewiki.net. 2018-07-16 16:58:56 +02:00
Abhay Chawla
08d00dee30 Fix #2950 Dashboard Chart Tooltips (#2956) 2018-07-02 23:13:41 +05:30
translatewiki.net
9e00d95ed1 Localisation updates from https://translatewiki.net. 2018-07-02 08:02:21 +02:00
translatewiki.net
b9e8ca8b8b Localisation updates from https://translatewiki.net. 2018-06-25 08:17:52 +02:00
translatewiki.net
78324e4342 Localisation updates from https://translatewiki.net. 2018-06-21 08:23:52 +02:00
translatewiki.net
ac70c1ff6f Localisation updates from https://translatewiki.net. 2018-06-18 08:02:29 +02:00
translatewiki.net
a9dc635b50 Localisation updates from https://translatewiki.net. 2018-06-14 12:32:40 +02:00
translatewiki.net
f6372815da Localisation updates from https://translatewiki.net. 2018-06-12 20:45:38 +02:00
Mohit kumar Bajoria
06d27a3716
Added Amharic language 2018-06-12 12:31:36 +05:30
Anh3h
d192052986 Fixed bugs with notification framework 2018-06-04 21:06:50 +05:30
translatewiki.net
8e925fe9b5 Localisation updates from https://translatewiki.net. 2018-06-04 08:02:33 +02:00
translatewiki.net
e01ce6a5af Localisation updates from https://translatewiki.net. 2018-05-31 08:29:24 +02:00
Abhay Chawla
444e5fc7a3 Fix #2870 UI Bugs in Audit Trails Section of System (#2871) 2018-05-29 12:25:06 +05:30
Abhay Chawla
7a5bb6513c Fix #2874 Inconsistency in Button Colours/Icons/Font (#2922) 2018-05-29 11:28:18 +05:30
translatewiki.net
68a19e13b0 Localisation updates from https://translatewiki.net. 2018-05-28 10:59:40 +02:00
translatewiki.net
15de46ddb4 Localisation updates from https://translatewiki.net. 2018-05-21 16:12:19 +02:00
Abhay Chawla
30cfe04123 Fix #2916 Error log Message Overflow (#2919) 2018-05-21 13:40:42 +05:30
Anwesh Nayak
6befa92235 git ignore updated for styles.css (#2958) 2018-05-17 14:37:55 +05:30
Anwesh Nayak
edd93b7aa4 loader animation added (#2947) 2018-05-17 12:08:51 +05:30
translatewiki.net
34faf3264f Localisation updates from https://translatewiki.net. 2018-05-17 08:33:16 +02:00
Anwesh Nayak
8784efea2e readme update for ruby-gem (#2944) 2018-05-16 14:14:55 +05:30
Anwesh Nayak
ad296ae929 grunt compass fixed (#2946) 2018-05-16 14:12:12 +05:30
translatewiki.net
658bb8b4da Localisation updates from https://translatewiki.net. 2018-05-14 08:22:08 +02:00
translatewiki.net
c70f5a01bd Localisation updates from https://translatewiki.net. 2018-05-10 10:25:44 +02:00
translatewiki.net
5d5336646f Localisation updates from https://translatewiki.net. 2018-05-07 08:04:20 +02:00
Ankit Raj Ojha
5e9e94bbac fixed error in pagination (#2943) 2018-05-05 20:21:09 +05:30
translatewiki.net
c04c337997 Localisation updates from https://translatewiki.net. 2018-05-03 09:31:27 +02:00
translatewiki.net
74fa9a13c1 Localisation updates from https://translatewiki.net. 2018-04-30 08:28:13 +02:00
translatewiki.net
3797ebe889 Localisation updates from https://translatewiki.net. 2018-04-26 08:01:08 +02:00
translatewiki.net
b9c534851a Localisation updates from https://translatewiki.net. 2018-04-23 08:59:03 +02:00
translatewiki.net
c7a2d2ad92 Localisation updates from https://translatewiki.net. 2018-04-19 09:27:35 +02:00
translatewiki.net
1bf07fea49 Localisation updates from https://translatewiki.net. 2018-04-12 19:24:20 +02:00
translatewiki.net
d1d04fad9f Localisation updates from https://translatewiki.net. 2018-04-12 09:21:32 +02:00
Abhay Chawla
435db1a31b Fix #2041 Dashboard Charts and Panel Headers (#2869) 2018-04-10 15:32:20 +05:30
translatewiki.net
30cd58563e Localisation updates from https://translatewiki.net. 2018-04-09 08:24:42 +02:00
translatewiki.net
1168020951 Localisation updates from https://translatewiki.net. 2018-04-05 09:27:50 +02:00
378 changed files with 79426 additions and 15842 deletions

View File

@ -1,16 +1,23 @@
<!--- Provide a general summary of the issue in the Title above -->
## Description
Provide a brief overview of the enhancement or issue.
<!--- Provide a brief overview of the enhancement or issue. -->
## Steps to Reproduce
Please add as much detail as possible to reproduce the error/issue.
Don't assume the reader knows anything about the Mifos X Web App.
<!-- Please add as much detail as possible to reproduce the error/issue. -->
<!-- Don't assume the reader knows anything about the Mifos X Web App. -->
## Expected Behaviour
<!--- Tell us what should happen -->
## Actual Behaviour
<!--- Tell us what is happening -->
## Settings
<!-- Provide us the information of your setup -->
- Mifos X version:
- Browser used:
- OS:
## Screenshots, if any
## Screenshots
<!-- If Any -->
<!-- Show us the problem -->

3
.gitignore vendored
View File

@ -5,6 +5,7 @@ lib-cov
lib
.vscode
app/bower_components
app/styles/styles.css
*.seed
*.log
*.csv
@ -35,3 +36,5 @@ Gruntfile-custom.js
.sass-cache
gems.locked
.grunt/
bin/
*.cache

View File

@ -1,11 +1,19 @@
dist: xenial
language: node_js
node_js:
- "0.10"
- "8"
before_install:
- mkdir travis-phantomjs
- wget https://s3.amazonaws.com/travis-phantomjs/phantomjs-2.0.0-ubuntu-12.04.tar.bz2 -O $PWD/travis-phantomjs/phantomjs-2.0.0-ubuntu-12.04.tar.bz2
- tar -xvf $PWD/travis-phantomjs/phantomjs-2.0.0-ubuntu-12.04.tar.bz2 -C $PWD/travis-phantomjs
- export PATH=$PWD/travis-phantomjs:$PATH
- echo "Nothing"
- sudo rm -rf node-modules/
- wget http://mirrors.kernel.org/ubuntu/pool/main/i/icu/libicu52_52.1-3ubuntu0.8_amd64.deb
- sudo dpkg -i libicu52*.deb
- sudo apt-get install libfontconfig1 fontconfig libfontconfig1-dev libfreetype6-dev
- export PHANTOM_JS="phantomjs-2.1.1-linux-x86_64"
- wget https://github.com/Medium/phantomjs/releases/download/v2.1.1/$PHANTOM_JS.tar.bz2
- sudo tar xvjf $PHANTOM_JS.tar.bz2
- sudo mv $PHANTOM_JS /usr/local/share
- sudo ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin
- phantomjs --version
before_script:
- npm install -g grunt-cli
- npm install -g bower
@ -14,6 +22,14 @@ before_script:
- grunt prod
notifications:
email: true
# Taken from: https://github.com/mdix/es6-babel-browserify-karma-boilerplate/blob/master/.travis.yml#L3
# Above is taken from: https://github.com/mdix/es6-babel-browserify-karma-boilerplate/blob/master/.travis.yml#L3
#trying test
# Below is documented at https://docs.travis-ci.com/user/deployment/pages/
deploy:
provider: pages
skip-cleanup: true
local-dir: dist/community-app
github-token: $GITHUB_TOKEN
keep-history: true
on:
branch: develop

View File

@ -1,149 +1,100 @@
# Writing Unit Tests for Mifos Community App
# Contributing to Mifos Community App
## Best Practices:
- Write tests before adding a new feature.
- Make sure to include tests that fail without your code and pass with your code.
- Make sure your changes do not cause other tests to fail.
- Name tests descriptively.
- Only test one piece of functionality at a time.
We would love you to contribute to Community and help make it better than it is today, As a contributor, here are guidelines we would like you to follow:
## What to test?
- Test interactions and expected behavior.
- Avoid testing that a method was run, instead test that the outcome of the method was correct.
- Test only functionality that resides within that class.
- [Building Community App](#build)
- [Question or Problem?](#question)
- [Issues and Bugs](#issue)
- [Feature Requests](#feature)
- [Submission Guidelines](#submit)
- [Commit Message Guidelines](#submit-pr)
- [Communication Channels](#communication)
## Where to test?
- Use a separate test class for each class. Make sure to name the class appropriately.
- Use a corresponding file structure.
## <a name="build"></a> Building the community app
## How to structure a test?
## Building from source
In the below example, we will take a look at SearchController. The purpose of this section of the SearchController is to take in a client ID and return client information, populating the scope to display for the user.
See [README](README.md).
For this section, we want to test that given a client ID for an existing user, we return the correct client information that is populated to the scope.
## <a name="question"></a> Got a Question or Problem?
```javascript
function(module) {
mifosX.controllers = _.extend(module, {
SearchController: function(scope, routeParams , resourceFactory) {
If you have got any questions or problem, please email to our [mailing list](https://lists.sourceforge.net/lists/listinfo/mifos-developer).
scope.searchResults = [];
resourceFactory.globalSearch.search( {query: routeParams.query} , function(data){
scope.searchResults = data;
});
scope.getClientDetails = function(clientId) {
If you would like to chat about the question in real-time, you can reach out via our [Gitter](https://gitter.im/openMF/community-app) channel.
scope.selected = clientId;
resourceFactory.clientResource.get({clientId:clientId} , function(data) {
scope.group = '';
scope.client = data;
scope.center = '';
});
resourceFactory.clientAccountResource.get({clientId: clientId} , function(data) {
scope.clientAccounts = data;
});
};
## <a name="issue"></a> Found a Bug?
}
});
mifosX.ng.application.controller('SearchController', ['$scope','$routeParams','ResourceFactory', mifosX.controllers.SearchController]).run(function($log) {
$log.info("SearchController initialized");
});
}(mifosX.controllers || {}));
```
If you find a bug in the source code, you can help us by submitting an issue to our [GitHub Repository](https://github.com/openMF/community-app). Even better, you can submit a Pull Request with a fix.
### Test Setup:
## <a name="feature"></a> Missing a Feature?
In the below tests, we first set up the controller and mock dependencies, which are scope, route, and resourceFactory. Notice that we are mocking specific service calls, which include resourceFactory.globalSearch.search, etc. These are mocked using Jasmine Spy Objects, which allow us to stub real behavior.
You can _request_ a new feature by [submitting an issue](#submit-issue) to our GitHub
Repository. If you would like to _implement_ a new feature, please submit an issue with
a proposal for your work first, to be sure that we can use it.
Please consider what kind of change it is:
Notice that we did not create a spy for scope, as we want to test how scope is changing.
- For a **Major Feature**, first open an issue and outline your proposal so that it can be
discussed. This will also allow us to better coordinate our efforts, prevent duplication of work,
and help you to craft the change so that it is successfully accepted into the project.
- **Small Features** can be crafted and directly [submitted as a Pull Request](#submit-pr).
```javascript
describe("SearchController", function() {
var resourceCallback, clientGet, clientAccountGet, groupGet, groupAccountGet,centerGet, centerAccountGet;
beforeEach(function() {
this.scope = {};
## <a name="submit"></a> Submission Guidelines
this.route =jasmine.createSpyObj("$routeParams", ['query']);
### <a name="submit-issue"></a> Submitting an Issue
this.resourceFactory = {
globalSearch: {
search: jasmine.createSpy('globalSearch.search()').andCallFake(function(query,callback) {
resourceCallback = callback;
})},
clientResource: {
get: jasmine.createSpy('clientResources.get()').andCallFake(function(params,callback) {
clientGet = callback;
})},
clientAccountResource : {
get: jasmine.createSpy('clientAccountResources.get()').andCallFake(function(params,callback){
clientAccountGet=callback;
})}
}
this.controller = new mifosX.controllers.SearchController(this.scope, this.route, this.resourceFactory);
}
```
### Testing:
Notice the naming conventions below, as each test describes the particular feature that is being tested. Follow naming conventions of the particular project.
Group tests that are similar in behavior. See how "describe" wraps tests that are testing specific outcomes of a single feature or action.
Each test should have an expect statement. In most cases, tests should only have one expect statement.
```javascript
it("should populate the search results on loading", function(){
resourceCallback({"data":"searchResults"});
expect(this.resourceFactory.globalSearch.search).toHaveBeenCalled();
expect(this.scope.searchResults.data).toBe("searchResults");
});
describe("when a clientId is selected",function(){
beforeEach(function() {
this.scope.getClientDetails("123");
clientGet({'clientId':'123'});
});
it("should set the clientId to selected when the clientId is selected",function(){
expect(this.scope.selected).toBe("123");
});
it("should set the group to blank",function(){
expect(this.scope.group).toBe("");
});
it("should set the center to blank",function(){
expect(this.scope.center).toBe("");
});
it("should get the client data",function(){
expect(this.scope.client.clientId).toBe("123");
});
it("should get the client account data",function(){
clientAccountGet({'account':'1'});
expect(this.scope.clientAccounts.account).toBe("1");
});
});
}
```
# Contributing:
### Best Practices for reporting or requesting for Issues/Enhancements:
- Follow the Issue Template while creating the issue.
- Include Screenshots if any (specially for UI related issues)
- For UI enhancements or workflows, include mockups to get a clear idea.
- Follow the Issue Template while creating the issue.
- Include Screenshots if any (specially for UI related issues)
- For UI enhancements or workflows, include mockups to get a clear idea.
### Best Practices for assigning an issue:
- If you would like to work on an issue, inform in the issue ticket by commenting on it.
- Please be sure that you are able to reproduce the issue, before working on it. If not, please ask for clarification by commenting or asking the issue creator.
- Please be sure that you are able to reproduce the issue, before working on it. If not, please ask for clarification by commenting or asking the issue creator.
Note: Please do not work on issues which is already being worked on by another contributor. We don't encourage creating multiple pull requests for the same issue. Also, please allow the assigned person at least 2 days to work on the issue ( The time might vary depending on the difficulty). If there is no progress after the deadline, please comment on the issue asking the contributor whether he/she is still working on it. If there is no reply, then feel free to work on the issue.
## <a name="submit-pr"></a> Submitting a Pull Request (PR)
### Instruction for making a code change
### Best Practices to send Pull Requests:
- Follow the Pull request template.
- Commit messages should follow this template: `Fix #<issue-no> - <issue-desc>`
- Squash all your commits to a single commit.
- Create new branch before adding and commiting your changes ( This allows you to send multiple Pull Requests )
**Working on your first pull requests ?** You can learn how from this free series [How to Contribute to an Open Source Project on GitHub.](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)
Our central development branch is `develop` , which should be clean and ready for release at any time. Feel free to discuss about any issue in gitter channel:
1. **Choose a descriptive branch name** - It should be like `issue-1888` if your are working on issue number 1888.
2. **Create a branch name with this name, starting from develop** -
`git fetch upstream`
`git checkout develop`
`git merge upstream/develop`
`git checkout -b your-branch-name`
3. **Make commit to your feature branch**- Each commit should be self-contained and have a descriptive commit message that helps other developers understand why the changes were made.
- If you are sending PR then it should notify which issue you are solving. Like this `BranchName: Fix #issueno - description`
For example `Fix #1234 - Issue Description`
4.
- If the PR is for solving some Issue related to UI, post 2 pictures, first picture containing the earlier UI and the second picture containing the updated UI.
- Include the URLs to the views that are effected by the PR. For example, if the PR has some improvements in the clients page, have the URL information as: https://demo.mifos.io/newbeta/#/clients
5. Please ensure that the code you write is well-tested.
_Wait for your PR to get reviewed till then you can start working on another issue_
6. Squash all your commits to a single commit.
## <a name="communication"></a> Communication Channels
### Mailing lists
We have several mailing lists in the form of Google groups that you can join:
- [Mifos-Developer](https://lists.sourceforge.net/lists/listinfo/mifos-developer)
- [Chat room](https://gitter.im/openMF/mifos)

19
Dockerfile Normal file
View File

@ -0,0 +1,19 @@
FROM timbru31/ruby-node:2.7 as builder
RUN mkdir /usr/src/app
WORKDIR /usr/src/app
ENV PATH /usr/src/app/node_modules/.bin:$PATH
COPY package.json /usr/src/app/package.json
RUN npm install -g bower
RUN npm install -g grunt-cli
COPY . /usr/src/app
RUN bower --allow-root install
RUN npm install
RUN bundle install
RUN grunt prod
FROM nginx:1.19.3
COPY --from=builder /usr/src/app/dist/community-app /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

105
Getting-Started.md Normal file
View File

@ -0,0 +1,105 @@
# Mifos X Community App
https://github.com/openMF/mifosx
This is the default web application built on top of the MifosX platform for the mifos user community. It is a Single-Page App (SPA) written in web standard technologies like JavaScript, CSS, and HTML5. It leverages common popular frameworks/libraries such as AngularJS, Bootstrap and Font Awesome.
I will be here going through the community-app code mainly as many developers and, students have asked about how they can start working on community-app as our application structure is a bit different. About installation and setting up the application there is already much discussion on mailing lists and you can follow the github Readme file.
Codebaseco
We are using AngularJS and requirejs in our application so that we have proper code organization. Some of the advantages of going this direction include;way are we dont have to worry about including script tags in the right order when building Angular app and. Also, here we can manually bootstrap our AangularJS application. Some Important Files
app/index.html
This is the first file you will start with usually. Here we have the code for the login page and sidenav. So, any changes you want to do in these components it can be directly done here. Also, you will see a script tag below in body of require js.
<script type='text/javascript' data-main="scripts/loader.js" src='bower_components/requirejs/require.js'></script>
## app/scripts/loader.js
Here you will find requirejs config. In paths, we set aliases for the libraries and plugins used and, then we defined that angular should be shimmed. You will see a deps variable which mentioned says that specific plugins dependency. For example: webcam-directive needs angularjs library to load before that. Next, you will see that the angular application is manually bootstrapped rather than using ng-app syntax where you usually see it's done like this belowangular.bootstrap(document, ['MifosX_Application']);
## app/scripts/MifosX.js
Here you will find all the dependency injections for third-party components. Make sure that when you add any library, you inject it here.
## app/scripts/MifosXComponents.js
Here you will find all controllers, services, filters, and directive of the application defined. If you have to add a new controller, service, filter or directive, just mention it here and it will be loaded in your application.
## app/scripts/MifosXStyles.js
Here all the styles files are defined.
## app/scripts/routes.js
As the file name suggests, all the application routes are defined here with their template Url.
## app/scripts/initialTasks.js
As, the file name suggests, all the application initial tasks like setting HTTP header, setting baseurl, and localisation are found here..
## app/styles-dev/main/
The stylesheet of the application is built using the sass preprocessor automated system. All application styling should be done inside this folder.
## app/styles/styles.css
This is the stylesheet file generated after css processing. This file should not be edited because it is overwritten each time the sass files have been updated.
## app/styles-dev/main/styles.css
This is the main preprocessed file used to generate the main style file (app/styles/styles.css) that renders the UIs. The file is just used for importing the other subfiles(app/styles-dev/main/components) that would generate the main style file as such no raw style needs to be added here.
## Application Structure
->community-app
->app
->WEB-INF
->angular
->i18n → angularjs locale definitions
->bower_components → Libraries
->fonts → Font libraries
->global-translations → locale labels file for different languages
->images → images files
->scripts → application files (controller, filters etc)
->styles → Contains css files
->styles-dev → Contains scss files
->views → html template files
->node_modules → node dependencies of application
->test → Contains various test cases
## Localisation
The Community app has support for multiple languages and accordingly, we are using labels inside our application. For example:
{{"label.heading.frequentpostings"| translate}}
In locale-en.json file, you will find similar entry and its value in English. We ensure that Make sure when we are adding any new label, we just create an entry in the locale-en file and dont touch other files.
"label.heading.frequentpostings": "Frequent Postings".
## Working on Issues and Enhancements
Now thats we have a good understanding of about how our application is structured and how each part works, or working. We can now start with some small changes in the application. Its best that before you starting working on the application, you first play around with the code.
Say, you have to change any icon in the application or have to correct some typo error inside the application which has been overwritten. As, our application has 200+ files, so finding from which file the content belongs to is difficult. So, the best way to approach this is to inspect the element using your browser developer tools to and check for some unique id or keyword that you can find in the entire app directory. As, you will continue working, you will get good ideas and can easily traverse through the app.

View File

@ -52,7 +52,7 @@ module.exports = function(grunt) {
port: 9002,
hostname: 'localhost',
livereload: 35729,
open:'http://<%= connect.options.hostname %>:<%= connect.options.port %>?baseApiUrl=https://demo.openmf.org'
open:'http://<%= connect.options.hostname %>:<%= connect.options.port %>?baseApiUrl=https://demo.mifos.io'
},
livereload: {
options: {
@ -374,17 +374,20 @@ module.exports = function(grunt) {
compass: { // Task
dist: { // Target
options: { // Target options
sassDir: 'app/styles-dev/main',
sassDir: 'app/styles-dev/',
cssDir: 'app/styles/',
environment: 'production',
require: 'sass-css-importer'
require: 'sass-css-importer',
outputStyle: 'compressed',
}
},
dev: { // Another target
options: {
sassDir: 'app/styles-dev/main',
sassDir: 'app/styles-dev/',
cssDir: 'app/styles/',
require: 'sass-css-importer'
environment: 'development',
require: 'sass-css-importer',
outputStyle: 'expanded',
}
}
},
@ -415,7 +418,7 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-gh-pages')
// Run development server using grunt serve
grunt.registerTask('serve', ['clean:server', 'copy:server', 'connect:livereload', 'watch']);
grunt.registerTask('serve', ['clean:server', 'copy:server', 'compass:dev', 'connect:livereload', 'watch']);
// Validate JavaScript and HTML files
grunt.registerTask('validate', ['jshint:all', 'validation']);

103
README.md
View File

@ -1,49 +1,68 @@
# MifosX Community App
[![Join the chat at https://gitter.im/openMF/community-app](https://badges.gitter.im/openMF/community-app.svg)](https://gitter.im/openMF/community-app?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
# MifosX Community App [![Join the chat at https://gitter.im/openMF/community-app](https://badges.gitter.im/openMF/community-app.svg)](https://gitter.im/openMF/community-app?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://travis-ci.com/openMF/community-app.svg?branch=develop)](https://travis-ci.com/github/openMF/community-app) [![Docker Hub](https://img.shields.io/docker/pulls/openmf/community-app.svg)](https://hub.docker.com/r/openmf/community-app) [![Docker Build](https://img.shields.io/docker/cloud/build/openmf/community-app.svg)](https://hub.docker.com/r/openmf/community-app/builds)
This is the default web application built on top of the MifosX platform for the mifos user community. It is a Single-Page App (SPA) written in web standard technologies like JavaScript, CSS and HTML5. It leverages common popular frameworks/libraries such as AngularJS, Bootstrap and Font Awesome.
## Build Status
Travis
## Getting started / Online Demo
[![Build Status](https://travis-ci.org/openMF/community-app.png?branch=master)](https://travis-ci.org/openMF/community-app)
## Online Demo
<a target="_blank" href="https://demo.openmf.org">Access the online demo version here</a>
The latest version of this UI is continuously re-deployed immediately (CI/CD) at openmf.github.io/community-app every time a Pull Request with a new feature or bugfix is merged. You should always specify the backend via `baseApiUrl` (see details below), so for example to access the https://www.fineract.dev online demo environment, use:
https://openmf.github.io/community-app?baseApiUrl=https://demo.fineract.dev&tenantIdentifier=default
## Building from source
1. Ensure you have ```npm``` installed - goto http://nodejs.org/download/ to download installer for your OS.
<br/> Note: On Ubuntu Linux you can use 'sudo apt-get install npm nodejs-legacy' (nodejs-legacy is required to avoid the ""/usr/bin/env: node: No such file or directory" problem).
<br/> Tip: If you are using Ubuntu/Linux, then doing ```npm config set prefix ~``` prevents you from having to run npm as root.
1. Ensure you have
1. Clone this repository to your local filesystem (default branch is 'develop')
* ```npm``` installed - goto http://nodejs.org/download/ to download the installer for your OS.
* ```ruby``` installed - goto https://www.ruby-lang.org/en/documentation/installation/ to download the latest version of ruby.
Note: On Ubuntu Linux you can use `sudo apt-get install npm nodejs-legacy`, which avoids the `/usr/bin/env: node: No such file or directory` problem.
Note that on Linux distributions you'll need to install the Ruby Development package (e.g. `sudo dnf install ruby-devel` on Fedora), and not just `ruby`, otherwise `bundle install` below will fail when it gets to installing `ffi` which uses native extensions.
1. Clone this repository to your local filesystem (default branch is 'develop'):
```
git clone https://github.com/openMF/community-app.git
```
1. To download the dependencies, and be able to build, first install bower & grunt:
1. To download the dependencies, and be able to build, first install bower & grunt
```
npm install -g bower
npm install -g grunt-cli
```
1. Next pull the runtime and build time dependencies by running bower and npm install commands on the project root folder
If this fails with `npm WARN checkPermissions Missing write access to /usr/local/lib` and `npm ERR! code EACCES` because you are not running `npm` with `sudo` as `root` (which you rightfully really shouldn't!) then use `npm config set prefix ~` once before doing `npm install`. Note that in that case `bower` and `grunt` will be installed into `./bin/bower` instead of `/usr/local/bin`, and so you need to prefix it in the usages below.
1. Next pull the runtime and build time dependencies by running `bower`, `npm`, and `gem` commands on the project root folder:
```
bower install
```
For Windows PC, before you run `npm install` check in the root folder if any package-lock.json is generated and delete it then you can run `npm install` other wise you will be faced with `Npm ERR! code EPERM error errno -4048 error { Error: EPERM: operation not permitted, rename ....` a permission error even if you are using administrator user
```
npm install
```
```
gem install bundler
```
```
bundle install
```
If you used `npm config set prefix ~`, then you have to use `./bin/bower install` instead of `bower install`.
1. To preview the app, run the following command on the project root folder
1. To preview the app, run the following command on the project root folder:
```
grunt serve
```
If you used `npm config set prefix ~`, then you have to use `./bin/grunt serve` instead of `grunt serve`.
or open the 'index.html' file in FIREFOX browser
Note: If you see a warning similar to the one shown below on running `grunt serve` , try increasing the number of open files limit as per the suggestions at http://stackoverflow.com/questions/34588/how-do-i-change-the-number-of-open-files-limit-in-linux/
@ -52,26 +71,33 @@ Travis
Waiting...Warning: EMFILE, too many open files
```
1. You can use these credentials to log in:
1. Default username/password: mifos/password. This application will hit the demo server by default.
```
Username: mifos
Password: password
```
You are done.
### Connecting to a MifosX Platform using OAuth 2 authentication:
Edit the value of property "security" in <a href="https://github.com/openMF/community-app/blob/develop/app/scripts/modules/configurations.js#L6">configurations.js</a> to "oauth"
Edit the value of property "security" in <a href="https://github.com/openMF/community-app/blob/develop/app/scripts/modules/configurations.js#L6">configurations.js</a> to "oauth".
### Connecting to a MifosX Platform running on a different host:
By default, when the app is running from the local filesystem, it will connect to the platform (mifosng-provider REST API) deployed on demo.openmf.org.
By default, when the app is running from the local filesystem, it will connect to the platform (fineract-provider REST API) deployed on demo.mifos.io, but that environment is no longer actively updated; we recommend using https://www.fineract.dev instead, as above.
The app connects to the platform running on the same host/port when deployed on a server.
If you want to connect to the API running elsewhere, then append the baseApiUrl and tenantIdentifier as query parameters,
If you want to connect to the Fineract API running elsewhere, then append the `baseApiUrl` and `tenantIdentifier` as query parameters, for example:
* http://localhost:9002/?baseApiUrl=https://localhost:8443&tenantIdentifier=default if you are running the Fineract backend locally; note that because of the default self signed SSL certification, on the first time use (or after you have cleared the cookies from your browser), you will need to first bypass the security warning by accepting the SSL in your browser by going once to https://localhost:8443/fineract-provider/api/v1&tenantIdentifier=default and accepting it.
* http://localhost:9002/?baseApiUrl=https://demo.fineract.dev&tenantIdentifier=default to use https://www.fineract.dev which always automatically runs the very latest Fineract back-end
e.g. http://localhost:9000/?baseApiUrl=https://localhost:8443&tenantIdentifier=default
e.g. http://localhost:9000/?baseApiUrl=https://demo.openmf.org&tenantIdentifier=default
## Adding dependencies
You can also add more dependencies on bower.json.
@ -113,6 +139,30 @@ Start a static server and open the project in the default browser. The applicati
grunt serve
```
### Docker
This project publishes a Docker image (since #[3112](https://github.com/openMF/community-app/issues/3112)) available on https://hub.docker.com/r/openmf/community-app/. Our [Dockerfile](Dockerfile) uses a Ruby and Node.JS base image to build the current repo and deploy the app on Nginx, which is exposed on port 80 within the container. It can be used like this to access the webapp on http://localhost:9090 in your browser:
docker run --name community-app -it -p 9090:80 openmf/community-app
To locally build this Docker image from source (after `git clone` this repo), run:
```
docker build -t mifos-community-app .
```
You can then run a Docker Container from the image above like this:
```
docker run --name mifos-ui -it -d -p 80:80 mifos-community-app
```
Access the webapp on http://localhost in your browser.
### Compile sass to css
```
grunt compass:dev
```
## Running the tests
Just open test/SpecRunner.html in the browser.
@ -121,7 +171,8 @@ Just open test/SpecRunner.html in the browser.
https://docs.google.com/document/d/1oXQ2mNojyDFkY_x4RBRPaqS-xhpnDE9coQnbmI3Pobw/edit#heading=h.vhgp8hu9moqn
## Contribution guidelines
Please read the <a href="https://github.com/openMF/community-app/blob/master/Contributing.md" >contribution guidelines</a>
Please read the <a href="https://github.com/openMF/community-app/blob/develop/Contributing.md" >contribution guidelines</a>
Note: This application will hit the demo server by default.

View File

@ -2,18 +2,28 @@
"@metadata": {
"authors": [
"Fohanno",
"Y-M D",
"Fulup",
"Gwenn-Ael"
"Gwenn-Ael",
"Y-M D"
]
},
"label.heading.totalshares": "Hollad an oberoù",
"label.heading.name": "Anv",
"label.heading.amountDue": "Hollad dleet",
"label.heading.country": "Bro",
"label.heading.cbName": "Anv Burev kred",
"label.heading.cbproduct": "Produ kred",
"label.heading.cbsummary": "Burev kred (Anv-Produ-Bro)",
"label.heading.is_creditcheck_mandatory": "Ha ret eo gwiriañ ar c'hred ?",
"label.heading.startdate": "Deiziad kregiñ",
"label.heading.enddate": "Deiziad echuiñ",
"label.heading.accnum": "Kont niv.",
"label.heading.staff": "Skipailh",
"label.heading.office": "Burev",
"label.heading.delete": "Dilemel",
"label.heading.reject": "Disteurel",
"label.heading.disabled": "Diweredekaet",
"label.heading.enabledrole": "Gweredekaet",
"label.heading.unassignstaff": "Deverkañ ar skipailh",
"label.heading.assignstaff": "Deverkañ ar skipailh",
"label.heading.general": "Dre-vras",
@ -30,6 +40,7 @@
"label.heading.approve": "Aprouiñ",
"label.heading.actions": "Oberoù",
"label.heading.loanaccoverview": "Gwel dre vras eus ar gont prest",
"label.heading.upcomingcharges": "Frejoù da zont",
"label.heading.savingsaccoverview": "Gwel dre vras eus ar gont espern",
"label.heading.members": "Izili",
"label.heading.confirm": "Kadarnaat",
@ -62,6 +73,7 @@
"label.heading.paid": "Paeet",
"label.heading.waived": "Dilezet",
"label.heading.outstanding": "N'eo ket paeet",
"label.heading.installmentamount": "Hollad an termen",
"label.heading.resourceid": "ID danvez",
"label.heading.details": "Munudoù",
"label.heading.identitydocuments": "Teulioù identelezh",
@ -78,12 +90,17 @@
"label.heading.next": "Pajennañ : Da-heul",
"label.heading.prev": "Pajennañ : A-raok",
"label.heading.provisioningcategory": "Rummad",
"label.heading.minimumage": "Oad izelañ",
"label.heading.maximumage": "Oad uhelañ",
"label.heading.provisioningpercentage": "Dregantad",
"label.input.between": "etre",
"label.heading.count": "Kont",
"label.heading.percentage": "Dregantad",
"label.heading.loanamount": "Amprest orin",
"label.heading.dueamount": "Hollad paeet",
"label.heading.meetingdetails": "Munudoù an emvod",
"label.heading.address": "Chomlec'h",
"label.heading.createdby": "Krouet gant",
"label.menu.selectloanofficer": "Diuzañ ur skipailh",
"label.menu.selectone": "Diuzañ unan",
"label.anchor.delete": "Dilemel",
@ -92,6 +109,7 @@
"label.anchor.assignstaff": "Deverkañ ar skipailh",
"label.anchor.activate": "Gweredekaat",
"label.anchor.updatedefaultaccount": "Hizivaat ar gont espern dre ziouer",
"label.anchor.editpermissions": "Aozañ an aotreoù",
"label.input.name": "Anv",
"label.input.firstname": "Anv-bihan",
"label.input.lastname": "Anv-familh",
@ -135,6 +153,8 @@
"label.input.dateofbirth": "Deiziad ganedigezh",
"label.input.sqlSearch": "Kask SQL",
"label.input.transfertype": "Doare treuzkas",
"label.input.city": "Kêr",
"label.input.email": "Postel",
"label.button.previous": "Kent",
"label.button.next": "War-lerc'h",
"label.button.save": "Kas",
@ -191,6 +211,8 @@
"label.outstanding.amount": "Sammad dibaeet eus an amprest",
"label.and": "ha",
"label.message.password.expired": "N'eo ket mat ho ker-tremen ken. Deraouekait anezhañ en-dro, mar plij",
"label.selectentity": "Diuzañ un hennad",
"label.selectaction": "Dibab un ober",
"label.error": "Fazi",
"error.login.failed": "Esaeit en-dro, mar plij, direizh eo ho titouroù anaout",
"error.msg.command.unsupported": "Fazi programmiñ : n'eo ket embreget an \"urhiad\"",
@ -353,15 +375,12 @@
"label.button.signin": "Kevreañ",
"label.button.resetPassword": "Adderaouekaat ar ger-tremen",
"label.button.viewpermissions": "Gwelet an aotreoù",
"label.youneedtologintoaccessthisarea": "Ret eo deoc'h kevreañ evit mont d'an takad-mañ",
"label.selectaction": "Dibab un ober",
"label.selectentity": "Diuzañ un hennad",
"label.youneedtologintoaccessthisarea": "Ret eo deoc'h kevreañ evit mont en takad-mañ",
"label.nodata": "Roadenn ebet",
"label.notactivated": "N'eo ket gweredekaet",
"label.unassigned": "N'eo ket deverket",
"label.searchorpress": "Klikit evit gweredekaat, pe pouezit war alt+x evit Klask",
"label.search.query.matched.results.exceeds.max.length": "Ar goulenn klasket en deus roet muioc'h eget 200 disoc'h, an 200 kentañ a vo diskwelet",
"label.heading.address": "Chomlec'h",
"label.heading.uniqueidentification": "# ID dibar",
"label.heading.identitydocs": "Teulioù anavezout",
"label.heading.filename": "Anv ar restr",
@ -465,7 +484,6 @@
"validation.msg.client.closureReasonId.cannot.be.blank": "Ne c'hall ket abeg ar c'hlozadur bezañ goullo",
"label.heading.addmember": "Ouzhpennañ un ezel",
"label.heading.addrole": "Ouzhpennañ ur roll",
"label.heading.meetingdetails": "Munudoù an emvod",
"label.heading.creategroup": "Krouiñ ur strollad",
"label.heading.editgroup": "Aozañ ar strollad",
"label.heading.managemembers": "Merañ an izili",
@ -598,7 +616,6 @@
"label.heading.financial.activity.type": "Obererezh arc'hant",
"label.heading.financial.activity.account.name": "Anv ar gont",
"label.heading.transferredfrom": "Treuzkaset eus",
"label.heading.createdby": "Krouet gant",
"label.heading.entryid": "Niver-anaout an enskivadur",
"label.heading.financialactivity": "Obererezh arc'hant",
"label.menu.filterbyoffice": "Silañ dre vurev",
@ -753,7 +770,7 @@
"label.button.runreport": "Lakaat an danevell da vont en-dro",
"label.button.createreport": "Krouiñ un danevell",
"label.button.parameters": "Arventennoù",
"label.button.exportcsv": "Ezporzhiañ CVS",
"label.button.exportcsv": "Ezporzhiañ CSV",
"label.button.export": "Ezporzhiañ",
"label.selectallowedparameter": "Diuzañ an arventenn aotreet",
"startDateSelect": "Deiziad kregiñ",
@ -861,7 +878,6 @@
"label.input.relationship": "Darempredoù",
"label.input.dob": "Deiziad ganedigezh",
"label.input.address": "Chomlec'h",
"label.input.city": "Kêr",
"label.input.zip": "Kod post",
"label.input.mobile": "Hezoug",
"label.input.residence": "Lec'h annez",
@ -1095,10 +1111,8 @@
"label.heading.roles": "Rolloù",
"label.anchor.users": "Implijerien",
"label.anchor.createuser": "Krouiñ un implijer",
"label.anchor.editpermissions": "Aozañ an aotreoù",
"label.anchor.edituser": "Aozañ an implijer",
"label.input.username": "Anv implijer",
"label.input.email": "Postel",
"label.input.password": "Ger-tremen",
"label.input.repeatpassword": "Adskrivañ ar ger-tremen",
"label.input.selectroles": "Diuzañ rolloù",
@ -1192,6 +1206,7 @@
"label.anchor.manageroleandpermissions": "Merañ ar rolloù hag an aotreoù",
"label.anchor.configuration": "Kefluniadurioù",
"label.anchor.managemembers": "Merañ an izili",
"label.input.town_village": "Kêr / Kêriadenn",
"label.input.type": "Seurt",
"label.input.templatename": "Anv ar patrom",
"label.input.codename": "Anv ar c'hod",
@ -1212,7 +1227,6 @@
"label.button.pending.tasks": "Trevelloù o c'hortoz",
"label.selectstatus": "Diuzañ ar statud",
"label.loan": "Prest",
"label.savingsaccount": "Kont espern",
"label.client": "Arval",
"label.group": "Strollad",
"label.center": "Kreizenn",
@ -1447,5 +1461,5 @@
"endDate": "Deiziad echuiñ",
"startDate": "Deiziad kregiñ",
"label.input.selected": "Diuzet",
"------------------": "------------"
"label.input.wardvillage": "Kêriadenn"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,18 @@
{
"@metadata": {
"authors": [
"Ajeje Brazorf",
"AndreasHerde",
"Andreasburmeister",
"Brettchenweber",
"Das Schäfchen",
"Debenben",
"DraconicDark",
"Eddie",
"Elliot",
"FF-11",
"FF11",
"Flow",
"GeorgeBarnick",
"JJohnson1701",
"Jan7316",
@ -20,25 +27,35 @@
"Rillke",
"Se4598",
"Snocker15",
"SorkDE",
"TMg",
"ThePiscin",
"ThisCarthing",
"Thtranslate",
"Umherirrender",
"Useopensource tobias",
"Xqt",
"Zabien"
"Zabe",
"Zabien",
"ZiqiLiang"
]
},
"label.heading.editcollateral": "Sicherheiten bearbeiten",
"label.heading.collaterals": "Sicherheiten",
"label.heading.minimumactiveperiod": "Minimale aktive Periode",
"label.heading.name": "Name",
"label.heading.quantity": "Menge",
"label.heading.totalValue": "Gesamtwert",
"label.heading.country": "Staat",
"label.heading.cbproduct": "Kreditprodukt",
"label.heading.startdate": "Startdatum",
"label.heading.enddate": "Enddatum",
"label.heading.accnum": "Konto",
"label.heading.is_active": "Ist aktiv?",
"label.heading.accnum": "Kontonummer",
"label.heading.staff": "Mitarbeiter",
"label.heading.office": "Büro",
"label.heading.delete": "Löschen",
"label.heading.reject": "Ablehnen",
"label.heading.delete": "Löschen bestätigen?",
"label.heading.reject": "Ablehnen bestätigen?",
"label.heading.deleterole": "Rolle löschen",
"label.heading.disablerole": "Rolle deaktivieren",
"label.heading.disabled": "Deaktiviert",
@ -57,7 +74,9 @@
"label.heading.savingaccount": "Sparkonto",
"label.heading.description": "Beschreibung",
"label.heading.shortname": "Kurzname",
"label.heading.approve": "Genehmigen",
"label.heading.approve": "Genehmigen bestätigen?",
"label.heading.gsimId": "GSIM-ID",
"label.heading.glimId": "GLIM-ID",
"label.heading.actions": "Aktionen",
"label.heading.loanaccoverview": "Darlehenskontoübersicht",
"label.heading.upcomingcharges": "Bevorstehende Gebühren",
@ -97,19 +116,20 @@
"label.heading.identitydocuments": "Ausweisdokumente",
"label.heading.clientapproval": "Kundengenehmigung",
"label.heading.loanapproval": "Kreditzusage",
"label.heading.enterclientsactivationdate": "Aktivierungsdatum des Kunden eingeben",
"label.heading.enterclientsactivationdate": "Aktivierungsdatum des Kunden eingeben:",
"label.heading.duecollections": "Abgabensammlung",
"label.heading.notprovided": "Nicht unterstützt.",
"label.heading.notavailable": "Nicht verfügbar",
"label.heading.next": "Nummerierung: Nächste",
"label.heading.prev": "Nummerierung: Vorherige",
"label.heading.next": "Nächste",
"label.heading.prev": "Vorherige",
"label.heading.provisioningcategory": "Kategorie",
"label.heading.minimumage": "Minimales Alter",
"label.heading.maximumage": "Maximales Alter",
"label.heading.provisioningpercentage": "Prozentsatz",
"label.heading.fromdate": "Von Datum",
"label.heading.provisioningpercentage": "Prozentsatz:",
"label.heading.fromdate": "Von Datum:",
"label.heading.interestrate": "Zinssatz",
"label.input.between": "zwischen",
"label.input.between": "Zwischen",
"label.input.loanproduct": "Darlehensprodukt",
"label.heading.count": "Anzahl",
"label.heading.percentage": "Prozentsatz",
"label.heading.loanamount": "Originaldarlehen",
@ -121,12 +141,16 @@
"label.input.indays": "In Tagen",
"label.input.minfloatinginterestrate": "Mindest-Zinssatz",
"label.input.defaultfloatinginterestrate": "Standard-Zinssatz",
"label.heading.purchasedsharesoverview": "Transaktionsübersicht",
"label.heading.dividends": "Dividenden",
"label.heading.campaignname": "Name der Kampagne",
"label.heading.templatemsg": "Vorlagennachricht",
"label.heading.campaigntype": "Typ der Kampagne",
"label.heading.message": "Nachricht",
"label.heading.preview": "Vorschau",
"label.heading.messagedetails": "Einzelheiten zur Nachricht",
"label.heading.campaignMessage": "Kampagnennachricht",
"label.heading.address": "Adresse",
"label.menu.selectloanofficer": "Mitarbeiter auswählen",
"label.menu.selectone": "Einen auswählen",
"label.menu.campaignType": "Kampagnentyp auswählen",
@ -135,6 +159,7 @@
"label.anchor.close": "Schließen",
"label.anchor.assignstaff": "Mitarbeiter zuweisen",
"label.anchor.activate": "Aktivieren",
"label.anchor.editpermissions": "Berechtigungen bearbeiten",
"label.input.name": "Name",
"label.input.firstname": "Vorname",
"label.input.lastname": "Nachname",
@ -145,15 +170,16 @@
"label.input.isDependent": "Ist nicht selbstständig?",
"label.input.maritalstatus": "Ehestand",
"label.input.profession": "Beruf",
"label.input.fullname": "Name",
"label.input.accno": "Kontonummer",
"label.input.activationdate": "Aktivierungsdatum",
"label.input.staff": "Mitarbeiter",
"label.input.office": "Büro",
"label.input.client": "Kunde",
"label.input.clients": "Kunden",
"label.input.enternote": "Anmerkung schreiben",
"label.input.enternote": "Anmerkung schreiben:",
"label.input.notes": "Anmerkungen",
"label.input.externalid": "Externe ID",
"label.input.externalid": " Externe ID",
"label.input.active": "Aktiv",
"label.input.is_active": "Ist aktiv?",
"label.input.assignstaff": "Mitarbeiter zuweisen",
@ -163,7 +189,7 @@
"label.input.repeat": "Wiederholen",
"label.input.comments": "Kommentare",
"label.input.closurereasons": "Schließungsgründe",
"label.input.enteractivationdate": "Aktivierungsdatum eingeben",
"label.input.enteractivationdate": "Aktivierungsdatum eingeben:",
"label.input.filterbyname": "Nach Name filtern",
"label.input.transactiondate": "Transaktionsdatum",
"label.input.fromdate": "Ab Datum",
@ -175,7 +201,7 @@
"label.input.meetingcalendar": "Meeting-Kalender",
"label.input.total": "Gesamt",
"label.input.note": "Anmerkung",
"label.input.dueforcollectedon": "Zur Sammlung fällig am",
"label.input.dueforcollectedon": "Zur Sammlung fällig am:",
"label.input.language": "Sprache",
"label.input.dateformat": "Datumsformat",
"label.input.savingsaccount": "Standard-Sparkonto",
@ -183,12 +209,16 @@
"label.input.gender": "Geschlecht",
"label.input.dateofbirth": "Geburtsdatum",
"label.input.sqlSearch": "SQL-Suche",
"label.input.transfertype": "Transfertyp",
"label.input.true": "Wahr",
"label.input.false": "Falsch",
"label.input.repaymentdate": "Tilgungsdatum",
"label.input.campaignName": "Kampagnenname",
"label.input.campaignType": "Kampagnentyp",
"label.nextrepaymentdate": "Nächstes Tilgungsdatum",
"label.input.status": "Status",
"label.input.city": "Stadt",
"label.input.email": "E-Mail",
"label.button.previous": "Vorherige",
"label.button.next": "Nächste",
"label.button.save": "Senden",
@ -227,7 +257,7 @@
"label.button.addjournalentry": "Journaleinträge hinzufügen",
"label.button.pattern": "Muster",
"label.button.dividends": "Dividenden",
"label.uniquelyidentifiedwithid": "Nur mit ID indentifiziert",
"label.uniquelyidentifiedwithid": "Nur mit ID identifiziert",
"label.belongsto": "Gehört zu",
"label.memberof": "Mitglied von",
"label.createdby": "Erstellt von",
@ -246,17 +276,19 @@
"label.mustbenumeric": "Muss numerisch sein",
"label.percentage": "Prozentsatz",
"label.and": "und",
"label.message.password.expired": "Passwort ist abgelaufen, bitte Passwort zurücksetzen",
"label.message.password.expired": "Passwort ist abgelaufen, bitte Passwort zurücksetzen.",
"label.today": "Heute",
"label.relDate": "Mifos-X-Veröffentlichungsdatum:",
"label.relVersion": "Veröffentlichungsversion:",
"label.select": "Eine Option auswählen",
"label.delete": "Löschen",
"label.selectentity": "Objekt auswählen",
"label.selectaction": "Aktion auswählen",
"label.error": "Warnhinweis",
"error.login.failed": "Ihre Anmeldeinformationen waren nicht gültig. Bitte erneut versuchen.",
"error.msg.command.unsupported": "Programmfehler: Der ausgegebene 'Befehl' wird nicht unterstützt",
"error.login.failed": "Ungültige Anmeldeinformationen. Bitte erneut versuchen.",
"error.msg.command.unsupported": "Codefehler: Der ausgegebene 'Befehl' wird nicht unterstützt",
"error.msg.query.parameter.value.unsupported": "'{{Params [1] .value}}' wird als Wert der Abfrageparameter \"{{Params [0] .value}}\" nicht unterstützt.",
"error.msg.not.authorized": "Keine ausreichenden Berechtigungen zum Ausführen dieser Aktion.",
"error.msg.not.authorized": "Du bist nicht berechtigt, diese Aktion durchzuführen.",
"error.msg.header": "Sie haben die folgenden Fehler:",
"validation.msg.validation.errors.exist": "Es sind Validierungsfehler vorhanden.",
"validation.msg.productivecollectionsheet.staffId.cannot.be.blank": "Mitarbeiter ist Pflichtangabe.",
@ -268,7 +300,7 @@
"error.msg.document.file.too.big": "Sie dürfen keine Datei größer als 5 MB hochladen.",
"validation.msg.document.fileName.cannot.be.blank": "Bitte wählen Sie eine Datei.",
"validation.msg.document.name.cannot.be.blank": "Bitte geben Sie den Namen für das Dokument ein.",
"resourceId.not.integer": "Id muss eine ganze Zahl sein.",
"resourceId.not.integer": "ID muss eine ganze Zahl sein.",
"error.msg.resource.not.found": "Die angeforderte Ressource ist nicht verfügbar.",
"validation.msg.calendar.title.cannot.be.blank": "Titel muss angegeben werden.",
"validation.msg.calendar.startDate.cannot.be.blank": "Startdatum muss angegeben werden.",
@ -312,7 +344,7 @@
"label.heading.fullname": "Name",
"label.heading.mifosxclient": "Mifos X Client",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X ist aktuell",
"label.heading.uptodate": " ist aktuell",
"label.heading.resources": "Ressourcen",
"label.heading.community": "Community",
"label.heading.contribute": "Mitmachen",
@ -368,11 +400,13 @@
"label.input.searchbyuser": "Nach Benutzer suchen",
"label.input.searchactivities": "Aktivitäten suchen",
"label.input.additionalinformation": "Zusätzliche Informationen",
"label.input.personalinformation": "Persönliche Informationen",
"label.input.changelanguage": "Sprache ändern:",
"label.search.scope.all": "Alle",
"label.search.scope.clients.and.clientIdentifiers": "Kunden",
"label.search.scope.groups.and.centers": "Gruppen",
"label.search.scope.savings": "Ersparnisse",
"label.search.scope.shares": "Anteile",
"label.button.login": "Anmelden",
"label.button.approve": "Genehmigen",
"label.button.offices": "Büros",
@ -385,12 +419,9 @@
"label.button.signin": "Anmelden",
"label.button.resetPassword": "Passwort zurücksetzen",
"label.youneedtologintoaccessthisarea": "Sie müssen sich anmelden, um diesen Bereich zu betreten.",
"label.selectaction": "Aktion auswählen",
"label.selectentity": "Objekt auswählen",
"label.nodata": "Keine Daten",
"label.notactivated": "Nicht aktiviert",
"label.searchorpress": "Klicke oder drücke ALT+X zum Suchen",
"label.heading.address": "Adresse",
"label.heading.familymembers": "Familienmitglieder",
"label.heading.identities": "Identitäten",
"label.heading.filename": "Dateiname",
@ -413,7 +444,6 @@
"label.anchor.reactivate": "Reaktivieren",
"label.input.selectfile": "Datei wählen",
"label.input.documenttype": "Dokumenttyp",
"label.input.status": "Status",
"label.input.mobilenumber": "Mobilnummer",
"label.input.client.activationdate": "Aktivierungsdatum",
"label.input.client.creationdate": "Erstellungsdatum",
@ -422,6 +452,7 @@
"label.input.clientId": "Kundennummer",
"label.button.createclient": "Kunde erstellen",
"label.button.showall": "Geschlossene anzeigen",
"label.button.importemployees": "Mitarbeiter importieren",
"label.button.print": "Drucken",
"label.button.viewprint": "Bericht erzeugen",
"label.button.loandetails": "Einzelheiten zum Darlehen",
@ -434,7 +465,7 @@
"label.button.viewactiveloans": "Aktive Darlehen ansehen",
"label.button.chargesoverview": "Gebührenübersicht",
"label.button.reactivate": "Reaktivieren",
"label.button.ok": "Okay",
"label.button.ok": "OK",
"label.button.reset": "Zurücksetzen",
"label.lastloanamount": "Letzter Darlehensbetrag",
"label.numofactiveloans": "Anzahl aktiver Darlehen",
@ -526,6 +557,7 @@
"label.heading.reportparameters": "Berichtsparameter",
"label.heading.parameter": "Parameter",
"label.heading.portfolio": "Portfolio",
"label.heading.incomes": "Einkommen",
"label.input.exportexcel": "Excel-format",
"label.input.exportexcel2": "Excel-2007-Format",
"label.input.exportcsv": "CSV-format",
@ -542,6 +574,7 @@
"loanProductIdSelectAll": "Darlehensprodukt auswählen",
"label.heading.groups/clients": "Gruppen/Kunden",
"label.heading.editloanaccount": "Darlehenskonto bearbeiten",
"label.heading.value": "Wert",
"label.heading.days": "Tage",
"label.heading.total": "Gesamt",
"label.heading.loanofficer": "Darlehensberater",
@ -563,7 +596,6 @@
"label.anchor.viewschedule": "Zeitplan",
"label.input.charge": "Gebühr",
"label.input.address": "Adresse",
"label.input.city": "Stadt",
"label.input.zip": "Postleitzahl",
"label.input.mobile": "Mobil",
"label.input.residence": "Telefonnummer des Wohnortes",
@ -582,8 +614,12 @@
"loanStatusType.rejected": "Abgelehnt",
"validation.msg.loan.productId.not.greater.than.zero": "Das ausgewählte Produkt ist ungültig.",
"validation.msg.loan.accountNo.cannot.be.blank": "Kontonummer kann nicht leer sein.",
"validation.msg.Guarantor.firstname.cannot.be.blank": "Vorname ist verpflichtend.",
"validation.msg.Guarantor.lastname.cannot.be.blank": "Nachname ist verpflichtend.",
"label.heading.reasons": "Gründe",
"label.heading.terms": "Bedingungen",
"label.heading.charges": "Gebühren",
"label.input.reasons": "Gründe dafür",
"label.input.interest": "Zinsbetrag",
"label.input.checkValidate": "Validierungsoptionen",
"label.input.accountnumber": "Kontonummer",
@ -595,10 +631,19 @@
"label.input.weeks": "Wochen",
"label.input.onAccountClosure": "Aktion",
"label.button.addcharge": "Gebühr hinzufügen",
"label.button.hold": "Markiert mit „abwarten“",
"label.totalannualfees": "Jährliche Gebühren",
"label.noofdaysinyear": "# Tage im Jahr",
"label.annualfee": "Jahresgebühr",
"label.on": "am",
"label.survey": "Umfrage",
"label.heading.interest.calculation.date": "Zinsneuberechnungsdatum",
"savings.interest.rate.savingsPeriodFrequencyType.days": "Pro Tag",
"savings.interest.rate.savingsPeriodFrequencyType.weeks": "Pro Woche",
"savings.interest.rate.savingsPeriodFrequencyType.months": "Pro Monat",
"savings.interest.rate.savingsPeriodFrequencyType.years": "Pro Jahr",
"savings.lockin.savingsPeriodFrequencyType.days": "Tage",
"savings.lockin.savingsPeriodFrequencyType.weeks": "Wochen",
"savings.lockin.savingsPeriodFrequencyType.months": "Monate",
"savings.lockin.savingsPeriodFrequencyType.years": "Jahre",
"savings.interest.period.savingsCompoundingInterestPeriodType.monthly": "Monatlich",
@ -620,8 +665,8 @@
"label.heading.email": "E-Mail",
"label.heading.changepassword": "Passwort ändern",
"label.anchor.createuser": "Benutzer erstellen",
"label.anchor.editpermissions": "Berechtigungen bearbeiten",
"label.anchor.editconfiguration": "Konfiguration Bearbeiten",
"label.input.username": "Benutzername",
"label.input.password": "Passwort",
"label.input.selectedroles": "Ausgewählte Rollen",
"label.input.availableroles": "Verfügbare Rollen",
@ -657,6 +702,8 @@
"label.selectstatus": "Status auswählen",
"label.loan": "Darlehen",
"label.client": "Kunde",
"label.entity": "ENTITÄT",
"label.person": "PERSON",
"label.group": "Gruppe",
"label.office": "Büro",
"label.string": "Zeichenfolge",
@ -674,6 +721,9 @@
"error.msg.codeValue.in.use": "Dieser Codewert wird verwendet",
"error.msg.invalid.endDate": "Enddatum darf nicht vor dem Startdatum liegen.",
"label.heading.expenses": "Ausgaben",
"label.heading.enablewithdrawtype": "Auszahlungsmöglichkeit aktivieren",
"label.heading.enablepaymenttype": "Zahlungsmöglichkeit aktivieren",
"label.heading.frequencyType": "Frequenztyp",
"label.heading.paymenttype": "Zahlungsart",
"label.heading.fundsource": "Fonds-Quelle",
"label.heading.interestratechart.valid.from": "Gültig ab Datum",
@ -793,7 +843,6 @@
"label.input.teller.cashiertxn.txnDate": "Datum",
"label.input.teller.cashiertxn.txnAmount": "Betrag",
"label.button.addpaymentdetail": "Zahlungsdetail hinzufügen",
"------------------": "------------",
"label.anchor.workingDays": "Arbeitstage",
"label.heading.workingDays": "Arbeitstage",
"label.input.workingDays": "Arbeitstage",
@ -853,5 +902,10 @@
"label.input.query": "SQL-Abfrage",
"label.input.tablename": "In Tabelle einfügen",
"label.input.isactive": "Status",
"label.heading.query": "SQL-Abfrage"
"label.heading.queryname": "Name",
"label.heading.query": "SQL-Abfrage",
"label.heading.activate.group": "Gruppe aktivieren",
"validation.msg.sharesproduct.description.cannot.be.blank": "Die Beschreibung kann nicht leer sein.",
"label.collaterals": "Sicherheiten",
"label.error.rate.already.exist": "Die Rate ist bereits vorhanden."
}

File diff suppressed because it is too large Load Diff

View File

@ -1,54 +1,78 @@
{
"@metadata": {
"authors": [
"Alvaro",
"Astroemi",
"Codynguyen1116",
"Csbotero",
"DDPAT",
"DaynaHarp",
"Destinid10 2",
"Dgstranz",
"Edcable",
"Fernando.hillermann",
"Fgonzalez",
"Fitoschido",
"Francodiaz7",
"Ice bulldog",
"Ihojose",
"Irus",
"Jnistal12",
"Joanmp17",
"KATRINE1992",
"Lacris",
"Lemondoge",
"Macofe",
"Nelthal",
"Rubentl134",
"Translator-x",
"Tusca",
"VegaDark",
"Wifidel",
"Macofe",
"Tusca",
"Csbotero",
"Edcable",
"Lacris",
"Fgonzalez",
"DaynaHarp",
"Yllelder",
"YoViajo",
"Codynguyen1116",
"Lemondoge",
"Rubentl134",
"Irus",
"Dgstranz",
"Jnistal12",
"KATRINE1992"
"YoViajo"
]
},
"label.heading.totalshares": "Cuota Total",
"label.heading.sharenominalprice": "Nominal/Precio Por Unidad",
"label.heading.totalsharestobeissued": "Total de Acciones Emitidas",
"label.heading.sharecapitalvalue": "Participaciones totales Valor Capital",
"label.heading.shareperclient": "Participaciones por Cliente",
"label.heading.minimumactiveperiod": "Periodo Activo mínimo",
"label.heading.suspenseaccount": "Cuenta de suspenso",
"label.heading.totalshares": "Acciones totales",
"label.heading.editcollateral": "Editar garantía",
"label.heading.collaterals": "Garantías",
"label.heading.sharenominalprice": "Precio nominal/unitario",
"label.heading.totalsharestobeissued": "Total de acciones a emitir",
"label.heading.sharecapitalvalue": "Valor total del capital social",
"label.heading.shareperclient": "Acciones por cliente",
"label.heading.minimumactiveperiod": "Período activo mínimo",
"label.heading.suspenseaccount": "Cuenta en suspenso",
"label.heading.equityaccount": "Cuenta patrimonial",
"label.heading.allowdividendsforinactiveclients": "Permitir a los dividendos para los clientes inactivos",
"label.heading.name": "Nombre",
"label.heading.quality": "Calidad / Tipo",
"label.heading.basePrice": "Precio base",
"label.heading.pctToBase": "Porcentaje base",
"label.heading.unitType": "Tipo de unidad",
"label.heading.quantity": "Cantidad",
"label.heading.totalValue": "Valor total",
"label.heading.totalCollateralValue": "Valor total de la garantía",
"label.heading.lastRepayment": "Último reembolso",
"label.heading.remainingAmount": "Monto restante",
"label.heading.lastRepaymentDate": "Última fecha de pago",
"label.heading.alias": "Alias",
"label.heading.amountDue": "Cantidad adeudada",
"label.heading.cbid": "Id. de agencia de crédito",
"label.heading.country": "País",
"label.heading.cbName": "Nombre de agencia de crédito",
"label.heading.cbproduct": "Producto de Crédito",
"label.heading.cbsummary": "Agencia de crédito (Nombre-Producto-País)",
"label.heading.is_creditcheck_mandatory": "Es control de crédito obligatorio?",
"label.heading.skip_credit_check_in_failure": "Omitir control de crédito en fracaso?",
"label.heading.stale_period": "Periodo_pasado",
"label.heading.is_creditcheck_mandatory": "¿El control de crédito es obligatorio?",
"label.heading.skip_credit_check_in_failure": "¿Omitir control de crédito en fallo?",
"label.heading.stale_period": "Periodo Antiguo",
"label.heading.startdate": "Fecha de inicio",
"label.heading.enddate": "Fecha de finalización",
"label.heading.is_active": "Es_activo",
"label.heading.accnum": "Cuenta #",
"label.heading.is_active": "¿Está Activo?",
"label.heading.accnum": "Número de Cuenta",
"label.heading.staff": "Personal",
"label.heading.office": "Oficina",
"label.heading.delete": "Eliminar",
"label.heading.reject": "Rechazar",
"label.heading.delete": "¿Confirmar la eliminación?",
"label.heading.reject": "¿Confirmar el rechazo?",
"label.heading.deleterole": "Eliminar rol",
"label.heading.disablerole": "Deshabilitar rol",
"label.heading.disabled": "Desactivado",
@ -65,21 +89,33 @@
"label.heading.category": "Categoría",
"label.heading.balance": "Balance",
"label.heading.viewreceipts": "Ver recibo",
"label.heading.savingaccount": "Cuenta de ahorro",
"label.heading.savingaccount": "Cuenta de Ahorros",
"label.heading.description": "Descripción",
"label.heading.transferId": "Id de transferencia",
"label.heading.shortname": "Nombre corto",
"label.heading.approve": "Aprobar",
"label.heading.approve": "¿Confirmar la aprobación?",
"label.heading.glimloanaccount": "Nueva solicitud de préstamo GLIM",
"label.heading.glimloanaccoverview": "Resumen de cuenta de préstamo GLIM",
"label.heading.repaymentCollection": "Colección de reembolso",
"label.heading.repayment": "Cantidad de reembolso",
"label.heading.glimloanAccountNo": "Número de cuenta GLIM",
"label.heading.gsimId": "Id GSIM",
"label.heading.glimId": "Id GLIM",
"label.heading.gsimoverview": "Resumen de cuenta de préstamo GLIM",
"label.heading.gsimaccount": "Nuevas cuentas GSIM",
"label.heading.actions": "Acciones",
"label.heading.loanaccoverview": "Resumen de cuenta de préstamo",
"label.heading.upcomingcharges": "Cargas próximas",
"label.heading.savingsaccoverview": "Resumen de cuenta de ahorros",
"label.heading.fixedaccoverview": "Descripción general de los depósitos fijos",
"label.heading.recurringaccoverview": "Descripción general de los depósitos recurrentes",
"label.heading.members": "Miembros",
"label.heading.confirm": "Confirmar",
"label.heading.attendance": "Asistencia",
"label.heading.comments": "Comentarios",
"label.heading.id": "Id.",
"label.heading.activationdate": "Fecha de activación",
"label.heading.externalid": "Id. externo",
"label.heading.externalid": "ID Externo",
"label.heading.summary": "Resumen",
"label.heading.products": "Productos",
"label.heading.branch": "Sucursal",
@ -89,13 +125,15 @@
"label.heading.account": "Cuenta",
"label.heading.debit": "Débito",
"label.heading.credit": "Crédito",
"label.heading.updatedby": "Actualización por",
"label.heading.updatedby": "Actualizado por",
"label.heading.creditreportcheck": "Informe de crédito",
"label.heading.updatedon": "Actualizado el",
"label.heading.error": "Error",
"label.heading.client": "Cliente",
"label.heading.accounttype": "Tipo de cuenta",
"label.heading.user": "Usuario",
"label.heading.loan": "Préstamo",
"label.input.paidloans": "Préstamos pagados",
"label.heading.principal": "Principal",
"label.heading.amount": "Cantidad",
"label.heading.date": "Fecha",
@ -112,34 +150,39 @@
"label.heading.loanapproval": "Aprobación del préstamo",
"label.heading.loandisbursal": "Desembolso del préstamo",
"label.heading.checkerinbox": "Bandeja de entrada del inspector",
"label.heading.enterclientsactivationdate": "Introduzca la fecha de activación de clientes",
"label.heading.enterclientsactivationdate": "Introduzca la fecha de activación de clientes:",
"label.heading.duecollections": "Cobros debidos",
"label.heading.totalduecollections": "Total de cobros debidos",
"label.heading.issueswithdrawls": "Problemas de retiros",
"label.heading.notprovided": "No proporcionado",
"label.heading.notavailable": "No disponible",
"label.heading.next": "Paginación: siguiente",
"label.heading.prev": "Paginación: anterior",
"label.heading.next": "Siguiente",
"label.heading.prev": "Anterior",
"label.heading.provisioningcategory": "Categoría",
"label.heading.minimumage": "Edad mínima",
"label.heading.maximumage": "Edad máxima",
"label.heading.provisioningpercentage": "Porcentaje",
"label.heading.provisioningpercentage": "Porcentaje:",
"label.heading.provisioningliabilityaccount": "Cuenta de responsabilidad",
"label.heading.provisioningexpenseaccount": "Cuenta de Gastos",
"label.heading.provisioningamount": "provisión cuenta",
"label.heading.rateperiods": "Períodos de tasa flotante",
"label.heading.fromdate": "Desde la fecha",
"label.heading.fromdate": "Desde la fecha:",
"label.heading.interestrate": "Tasa de interés",
"label.heading.patternupdate": "Actualización de patrón",
"label.input.between": "entre",
"label.input.collateralName": "Nombre de la garantía",
"label.input.quantity": "Cantidad",
"label.input.collateralSelection": "Garantías",
"label.input.between": "Entre",
"label.input.provisioningcriteria": "Criterios de aprovisionamiento",
"label.input.floatingratename": "nombre de tasa flotante",
"label.input.isbaselendingrate": "Es la Tasa Base de Préstamos",
"label.input.isbaselendingrate": "¿Esta es la tasa base de préstamos?",
"label.input.loanproduct": "Producto de préstamo",
"label.heading.count": "Conteo",
"label.heading.count": "Recuento",
"label.heading.percentage": "Porcentaje",
"label.heading.due.savings.collections": "Debido Colecciones de Ahorros",
"label.heading.due.savings.collections": "Debido a colecciones de ahorros",
"label.heading.loanamount": "Préstamo original",
"label.heading.clientprincipalloan": "Préstamo Principal de Cliente",
"label.heading.grouplprincipalloan": "Préstamo principal del grupo",
"label.heading.outstandingamount": "Saldo del préstamo",
"label.heading.dueamount": "Monto pagado",
"label.heading.principal.outstanding": "Principal Pendiente",
@ -157,7 +200,7 @@
"label.input.maxfloatinginterestrate": "Tasa De Interés Máxima",
"label.input.differentialrate": "Tasa de Interés Diferencial",
"label.heading.sharesaccoverview": "Resumen de cuenta de ahorros",
"label.heading.shareaccount": "Cuenta de participación#",
"label.heading.shareaccount": "Compartir el Número de Cuenta",
"label.heading.approvedshares": "Participaciones Aprobadas",
"label.heading.pendingforapproval": "Pendiente de la Aprobación de Acciones",
"label.heading.purchasedsharesoverview": "Resumen De Transacciones",
@ -165,13 +208,13 @@
"label.heading.linkedsavingsaccountnumber": "Cuenta De Ahorros Vinculada(Dividendo Publicación)",
"label.heading.applyadditionalshares": "Aplicar Participaciones Adicionales",
"label.heading.approveadditionalshares": "Aprobar Participaciones Adicionales",
"label.heading.rejectadditionalshares": "Redimir Participaciones",
"label.heading.rejectadditionalshares": "Rechazar participaciones adicionales",
"label.heading.sharesapplication": "Aplicación de Cuenta de la participación",
"label.heading.dividendperiodstartdate": "Dividendo Fecha De Inicio Del Período",
"label.heading.dividendperiodenddate": "Dividendo Fecha De Inicio Del Período",
"label.heading.dividendamount": "Cantidad de dividendo",
"label.heading.shareequity": "Equidad de participación",
"label.heading.dividends": "dividendos",
"label.heading.dividends": "Dividendos",
"label.heading.savingtransactionreference": "Referencia de transacción",
"label.heading.amountreceivedorreturned": "Cantidad recibida/devuelta",
"label.heading.totalamountreceivedorreturned": "Cantidad Total A Cobrar/Devuelto",
@ -189,40 +232,64 @@
"label.heading.templateparameters": "Parámetros de Plantilla Disponible",
"label.heading.businessRule": "Regla Empresarial",
"label.heading.campaignMessage": "Mensaje de campaña",
"label.heading.selfserivceaccountactivated": "Cuenta de Auto-Servicio Activada",
"label.heading.editsmscampaign": "Editar campaña SMS",
"label.heading.meetingdetails": "Detalles de la reunión",
"label.heading.address": "Dirección",
"label.heading.createdby": "Creado por",
"label.heading.campaign": "Campaña",
"label.heading.isactive": "Estado",
"label.menu.selectloanofficer": "Seleccione personal",
"label.menu.selectone": "Seleccione uno",
"label.menu.constitution": "Seleccione Constitución",
"label.menu.mainBusinessLine": "Seleccione la línea de negocio principal",
"label.menu.legalForm": "Seleccione el formulario legal",
"label.menu.smsProvider": "Seleccionar proveedor de SMS",
"label.menu.campaignType": "Seleccionar tipo de campaña",
"label.menu.legalForm": "Seleccionar el formulario legal",
"label.menu.smsProvider": "Seleccione proveedor de SMS",
"label.menu.campaignType": "Seleccione tipo de campaña",
"label.menu.triggerType": "Selecciona Tipo de Gatillo",
"label.menu.businessRule": "Selecciona Regla Empresarial",
"label.anchor.delete": "Eliminar",
"label.anchor.editCollateral": "Editar garantía",
"label.anchor.createcollateral": "Crear garantía",
"label.achor.activate": "Activar",
"label.anchor.close": "Cerrar",
"label.anchor.assignstaff": "Asignar personal",
"label.anchor.activate": "Activar",
"label.anchor.updatedefaultaccount": "Actualizar cuenta de ahorros predeterminada",
"label.anchor.importclients": "Clientes",
"label.anchor.importcenters": "Centros",
"label.anchor.importoffices": "Oficinas",
"label.anchor.editpermissions": "Editar permisos",
"label.input.name": "Nombre",
"label.input.unittype": "Tipo de unidad",
"label.input.baseprice": "Precio base",
"label.input.firstname": "Nombre",
"label.input.lastname": "Apellido(s)",
"label.input.middlename": "2.º nombre:",
"label.input.fathername": "Nombre de padre",
"label.input.qualification": "Calificación",
"label.input.mobileNumber": "Número de móvil",
"label.input.age": "edad",
"label.input.isDependent": "¿Es dependiente?",
"label.input.maritalstatus": "Estado civil",
"label.input.profession": "Profesión",
"label.input.fullname": "Nombre",
"label.input.legalForm": "Forma legal",
"label.input.accno": "N de cuenta",
"label.input.legalForm": "Formulario legal",
"label.input.accno": "Número de cuenta",
"label.input.activationdate": "Fecha de activación",
"label.input.staff": "Personal",
"label.input.office": "Oficina",
"label.input.client": "Cliente",
"label.input.clients": "Clientes",
"label.input.enternote": "Ingresar nota",
"label.input.enternote": "Introducir nota:",
"label.input.notes": "Notas",
"label.input.externalid": "Id. externo",
"label.input.externalid": " ID externo",
"label.input.active": "Activo",
"label.input.enablepaymenttypes": "Activar",
"label.input.enablefreewithdrawal": "Permitir retiro sin cobro",
"label.input.enablepaymenttype": "Habilitar el tipo de pago",
"label.input.freewithdrawalfrequency": "Número de retiros sin cobro",
"label.input.restartcount": "Reiniciar el conteo cada",
"label.input.is_active": "¿Está activo?",
"label.input.assignstaff": "Asignar personal",
"label.input.closuredate": "Fecha de cierre",
@ -230,21 +297,23 @@
"label.input.description": "Descripción",
"label.input.repeat": "Repetir",
"label.input.comments": "Comentarios",
"label.input.closurereasons": "Motivo de cierre",
"label.input.enteractivationdate": "Introduzca la fecha de activación",
"label.input.filterbynameorstatusoroffice": "Filtrar por nombre/estado/oficina",
"label.input.closurereasons": "Motivos de cierre",
"label.input.enteractivationdate": "Introduzca la fecha de activación:",
"label.input.filterbynameorstatusoroffice": "Filtrar por nombre, estado, u oficina",
"label.input.filterbyname": "Filtrar por nombre",
"label.input.transactiondate": "Fecha de transacción",
"label.input.fromdate": "Desde la fecha",
"label.input.todate": "A la fecha",
"label.input.todate": "Hasta la fecha",
"label.input.amount": "Cantidad",
"label.input.disbursedamount": "Monto desembolsado",
"label.input.branchoffice": "Sucursal",
"label.input.center": "Centro",
"label.input.group": "Grupo",
"label.input.meetingcalendar": "Calendario de reuniones",
"label.input.total": "Total",
"label.input.totalCollateralValue": "Valor total de la garantía",
"label.input.note": "Nota",
"label.input.dueforcollectedon": "Vencimiento para el cobro en",
"label.input.dueforcollectedon": "Vencimiento para el cobro en:",
"label.input.language": "Idioma",
"label.input.dateformat": "Formato de fecha",
"label.input.savingsaccount": "Cuenta de ahorros predeterminada",
@ -259,7 +328,7 @@
"label.input.resetconfirmationtext": "¿Desea quitar todos los cambios hechos hasta ahora y restablecer a la programación original?",
"label.input.incorporationdate": "Fecha de constitución",
"label.input.incorpNumber": "Número de constitución",
"label.input.incorpValidityTillDate": "Fecha de validez de la constitución",
"label.input.incorpValidityTillDate": "Incoporación válida hasta",
"label.input.constitution": "Constitución",
"label.input.mainBusinessLine": "Línea De Negocio Principal",
"label.input.remarks": "Comentarios",
@ -268,20 +337,33 @@
"label.input.triggerType": "Tipo Función",
"label.input.businessRule": "Regla Empresarial",
"label.input.campaignMessage": "Mensaje de campaña",
"label.input.isStaff": "¿Es el personal?",
"label.nextrepaymentdate": "Próxima fecha de reembolso",
"label.input.alias": "Alias",
"label.input.incomefrominterest": "Ingresos por intereses",
"label.input.status": "Estado",
"label.input.city": "Ciudad",
"label.input.email": "Correo electrónico",
"label.button.previous": "Anterior",
"label.button.createcollateral": "Crear garantía",
"label.button.viewcollaterals": "Ver garantías",
"label.button.createclientcollateral": "Crear garantía para el cliente",
"label.button.next": "Siguiente",
"label.button.save": "Enviar",
"label.button.searchdata": "Buscar datos",
"label.button.cancel": "Cancelar",
"label.button.edit": "Editar",
"label.button.addcb": "Añade Agencia de crédito",
"label.button.mapcblp": "Agencia de crédito del mapa para Prestar Producto",
"label.button.addcb": "Añadir Agencia de crédito",
"label.button.mapcblp": "Vincular agencia de crédito a un producto de crédito",
"label.button.creditcheck": "Verificación de crédito",
"label.button.creditbureauconfig": "Configuración del buró de crédito",
"label.button.addconfig": "Añadir nueva configuración",
"label.button.delete": "Eliminar",
"label.button.confirm": "Confirmar",
"label.button.unassignstaff": "Desasignar personal",
"label.button.assignstaff": "Asignar personal",
"label.button.close": "Cerrar",
"label.button.staffassignmenthistory": "Historia de Asignación de Personal",
"label.button.staffassignmenthistory": "Historial de asignación de personal",
"label.button.activate": "Activar",
"label.button.newloan": "Préstamo nuevo",
"label.button.newshareaccount": "Cuenta de Participación nueva",
@ -301,7 +383,7 @@
"label.button.processing": "Procesando",
"label.button.disable": "Desactiver",
"label.button.collectionsheet": "Hoja de recaudación",
"label.button.submitandnextcenter": "Enviar y siguiente centro",
"label.button.submitandnextcenter": "Enviar y continuar con el siguiente centro",
"label.button.viewfullscreen": "Vista de pantalla completa",
"label.button.productivecollectionsheet": "Hoja de recaudación productiva",
"label.button.more": "Más",
@ -322,7 +404,8 @@
"label.button.dividends": "Dividendos",
"label.button.postdividends": "Post Dividendos",
"label.button.proceed": "Continuar",
"label.uniquelyidentifiedwithid": "Exclusivamente identificado con Id",
"label.button.addAddress": "Agregar dirección",
"label.uniquelyidentifiedwithid": "Exclusivamente identificado con ID",
"label.belongsto": "Pertenece a",
"label.memberof": "Miembro de",
"label.createdby": "Creado por",
@ -339,21 +422,25 @@
"label.savesuccessfully": "Guardado correctamente",
"label.nodatafound": "No se encontraron datos relacionados con los parámetros de búsqueda introducidos.",
"label.mustbenumeric": "Debe ser numérico",
"label.usernameminfivechars": "El nombre de usuario debe tener al menos cinco caracteres.",
"label.passwordminsixchars": "La contraseña debe ser de al menos 6 caracteres",
"label.percentage": "Porcentaje",
"label.outstanding.amount": "Monto pendiente del préstamo",
"label.and": "y",
"label.message.password.expired": "Su contraseña ha caducado. Restablézcala",
"label.outstanding.amount": "Monto de préstamo pendiente",
"label.and": "Y",
"label.message.password.expired": "Su contraseña ha caducado. Por favor restablézcala.",
"label.today": "Hoy",
"label.relDate": "Fecha de lanzamiento de Mifos X:",
"label.relVersion": "Versión:",
"label.select": "Selecciona una opción",
"label.delete": "Eliminar",
"label.selectentity": "Seleccionar entidad",
"label.selectaction": "Seleccionar acción",
"label.error": "Error",
"error.login.failed": "Inténtelo de nuevo. Sus credenciales no son válidas.",
"error.login.failed": "Credenciales inválidas. Por favor, vuelva a intentarlo.",
"error.connection.failed": "No se pudo conectar con el servidor. Asegúrate de que utilizas la configuración correcta.",
"error.msg.command.unsupported": "Error de programación: la orden `command` emitida no se admite.",
"error.msg.command.unsupported": "Error de código: No se admite el `comando emitido.",
"error.msg.query.parameter.value.unsupported": "`{{params[1].value}}` no es compatible como un valor de parámetro de consulta `{{params[0].value}}`.",
"error.msg.not.authorized": "Privilegios insuficientes para realizar esta acción.",
"error.msg.not.authorized": "No está autorizado para realizar esta acción.",
"error.msg.invalid.request.body": "El JSON que se proporciona en el cuerpo de la solicitud no es válido o está faltante.",
"error.msg.parameter.unsupported": "El parámetro `{{params[0].value}}`, ha sido superado y no es compatible para esta solicitud.",
"error.msg.column.mandatory": "Campo obligatorio no proporcionado.",
@ -379,9 +466,9 @@
"validation.msg.configuration.cannot.edit.consult.documentation": "Configuración no editable. Consulte la documentación.",
"error.msg.permission.code.invalid": "El permiso con código `{{params[0].value}}` no existe.",
"error.msg.role.id.invalid": "La función con el identificador `{{params[0].value}}` no existe.",
"error.msg.role.associated.with.users": "La función asociada con los usuarios no se puede modificar.",
"error.msg.role.associated.with.users.deleted": "La función asociada con los usuarios no se puede eliminar.",
"error.msg.role.associated.with.users.disabled": "La función asociada con los usuarios no se puede desactivar.",
"error.msg.role.associated.with.users": "El rol asociado a los usuarios no se puede modificar.",
"error.msg.role.associated.with.users.deleted": "El rol asociado a los usuarios no se puede eliminar.",
"error.msg.role.associated.with.users.disabled": "El rol asociado a los usuarios no se puede desactivar.",
"error.msg.user.id.invalid": "El usuario con el identificador `{{params[0].value}}` no existe.",
"error.msg.office.id.invalid": "La oficina con el identificador `{{params[0].value}}` no existe.",
"error.msg.fund.id.invalid": "El fondo con el identificador `{{params[0].value}}` no existe.",
@ -389,9 +476,9 @@
"error.msg.loan.id.is.invalid": "El préstamo con el identificador `{{params[0].value}}` no existe.",
"error.msg.glaccount.id.invalid": "La cuenta del Libro Mayor con el identificador `{{params[0].value}}` no existe.",
"error.msg.calendar.id.invalid": "El calendario con el identificador `{{params[0].value}}` no existe.",
"validation.msg.calendar.title.cannot.be.blank": "El título es obligatorio.",
"validation.msg.calendar.startDate.cannot.be.blank": "La fecha inicial es obligatoria.",
"validation.msg.calendar.typeId.cannot.be.blank": "El tipo de calendario es obligatorio.",
"validation.msg.calendar.title.cannot.be.blank": "El campo Título es obligatorio.",
"validation.msg.calendar.startDate.cannot.be.blank": "El campo fecha de inicio es obligatorio.",
"validation.msg.calendar.typeId.cannot.be.blank": "El campo tipo de calendario es obligatorio.",
"validation.msg.calendar.recurrence.cannot.be.blank": "La recurrencia es obligatoria.",
"validation.msg.calendar.description.cannot.be.blank": "La descripción no puede estar en blanco.",
"validation.msg.calendar.location.cannot.be.blank": "La ubicación no puede estar en blanco.",
@ -445,10 +532,16 @@
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.no.baselending.rate.defined": "Base de la tasa de Préstamos no existe",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.cannot.be.true.for.baselendingrate": "isDifferentialToBaseLendingRate no puede ser verdad para tipo marcado como tasa de interés de Base variable",
"validation.msg.batch.jlg.no.clients.defined": "No se ha seleccionado ningún cliente para esta solicitud",
"label.tooltip.incomefromfees": "Una cuenta de Ingresos qué está abonado cuándo un coste está pagado por titular de cuenta en esta cuenta",
"label.tooltip.incomefrompenalties": "Una cuenta de Ingresos, que se acredita cuando la multa se paga por el titular de la cuenta en esta cuenta",
"label.tooltip.daysinyear": "El encuadre para número de días en año para utilizar para calcular interés",
"label.tooltip.marketprice": "Precio de cada participación",
"label.heading.waiveloancharge": "Renunciar a cargo de préstamo",
"label.heading.payloancharge": "Pagar cargo de préstamo",
"label.anchor.paycharge": "Pagar cargo",
"label.input.paymentdate": "Fecha de pago",
"label.tooltip.charges.active.true": "Activo",
"label.tooltip.charges.active.false": "Inactivo",
"label.heading.dashboard": "Panel de control",
"label.heading.home": "Inicio",
"label.heading.welcome": "Bienvenido/a",
@ -475,7 +568,7 @@
"label.heading.fullname": "Nombre",
"label.heading.mifosxclient": "Cliente Mifos X",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X está actualizado",
"label.heading.uptodate": "está actualizado",
"label.heading.resources": "Recursos",
"label.heading.community": "Comunidad",
"label.heading.contribute": "Contribuir",
@ -519,9 +612,9 @@
"label.anchor.settings": "Configuración",
"label.anchor.navigation": "Navegación",
"label.anchor.dashhome": "Panel de control",
"label.anchor.collectionsheet": "Hoja de recaudación",
"label.anchor.collectionsheet": "Hoja de colección",
"label.anchor.client": "Cliente",
"label.anchor.importclients": "Clientes",
"label.anchor.importemployees": "Empleados de importación",
"label.anchor.group": "Grupo",
"label.anchor.center": "Centro",
"label.anchor.frequentpostings": "Publicaciones frecuentes",
@ -543,6 +636,15 @@
"label.anchor.keyboardshortcut": "Atajos de teclado",
"label.anchor.save": "Guardar",
"label.input.searchbyuser": "Búsqueda por usuario",
"label.input.clienttemplate": "Plantilla de cliente",
"label.input.loanaccounttemplate": "Plantillas de cuentas del préstamo",
"label.input.loanrepaymenttemplate": "Plantillas del reembolso del préstamo",
"label.input.guarantortemplate": "Plantilla del garante",
"label.input.recurringdeposittemplate": "Plantilla de depósito recurrente",
"label.input.grouptemplate": "Plantilla de grupo",
"label.input.centertemplate": "Plantilla de centro",
"label.input.employeetemplate": "Plantilla de empleado",
"label.input.usertemplate": "Plantilla de usuario",
"label.input.searchactivities": "Búsqueda de actividades",
"label.input.additionalinformation": "Información adicional",
"label.input.changelanguage": "Cambiar el idioma:",
@ -565,8 +667,6 @@
"label.button.resetPassword": "Restablecer contraseña",
"label.button.viewpermissions": "Ver permisos",
"label.youneedtologintoaccessthisarea": "Necesita iniciar sesión para acceder a esta área.",
"label.selectaction": "Seleccionar acción",
"label.selectentity": "Seleccionar entidad",
"label.selectugdtemplate": "Seleccionar plantilla UGD",
"label.nodata": "No hay datos",
"label.notactivated": "No activado",
@ -574,7 +674,6 @@
"label.searchorpress": "Haga clic o pulse alt+X buscar",
"label.search.query.matched.results.exceeds.max.length": "La consulta buscada resultó en más de 200 registros. Se muestran los primeros 200.",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "La hoja de recaudación no puede generarse para el centro/grupo sin adjuntar una reunión sin definir",
"label.heading.address": "Dirección",
"label.heading.familymembers": "Miembros de la familia",
"label.heading.identities": "Identidades",
"label.heading.uniqueidentification": "N.º identificador único",
@ -620,7 +719,6 @@
"label.input.selectfile": "Seleccionar archivo",
"label.input.selectexcelfile": "Seleccionar un archivo de Excel",
"label.input.documenttype": "Tipo de documento",
"label.input.status": "Estado",
"label.input.uniqueidentification": "N.º identificador único",
"label.input.mobilenumber": "Número de teléfono móvil",
"label.input.client.activationdate": "Fecha de activación",
@ -633,8 +731,13 @@
"label.input.clientName": "Nombre del cliente",
"label.input.clientId": "Id. del cliente",
"label.input.reopeneddate": "ReAbrir Fecha",
"label.input.legalformentity": "Entidad",
"label.input.legalformperson": "Persona",
"label.button.createclient": "Crear cliente",
"label.button.showall": "Mostrar cerrados",
"label.button.importclients": "Clientes de importación",
"label.button.importemployees": "Empleados de importación",
"label.button.importcenters": "Centros de importación",
"label.button.print": "Imprimir",
"label.button.viewprint": "Generar informe",
"label.button.savingdetails": "Detalles de ahorro",
@ -731,9 +834,8 @@
"validation.msg.client.withdrawalDate.cannot.be.blank": "La Fecha de Compensación del Cliente no puede estar en blanco",
"label.heading.addmember": "Añadir miembro",
"label.heading.addrole": "Añadir rol",
"label.heading.editsmscampaign": "Editar campaña SMS",
"label.heading.viewsmscampaign": "Ver campaña de SMS",
"label.heading.repeatdetails": "Repetir detalles",
"label.heading.meetingdetails": "Detalles de la reunión",
"label.heading.creategroup": "Crear grupo",
"label.heading.editgroup": "Editar grupo",
"label.heading.managemembers": "Gestionar miembros",
@ -786,7 +888,7 @@
"label.button.transferclients": "Transferir clientes",
"label.button.attachmeeting": "Adjuntar reunión",
"label.button.editcalendarbasedonmeetingdates": "Cambiar reuniones futuras",
"label.nextmeetingon": "Próxima reunión el",
"label.nextmeetingon": "Próxima reunión el:",
"label.numofactiveclient": "Clientes activos:",
"label.numofactivegrouploans": "Préstamos activos del grupo:",
"label.numofactiveclientloans": "Préstamos activos del cliente:",
@ -893,7 +995,7 @@
"label.heading.toClient": "Al cliente",
"label.heading.executionTime": "Tiempo de ejecución",
"label.heading.currency": "Moneda",
"label.heading.transferringto": "Transfiriendo a",
"label.heading.transferringto": "Transfiriendo a:",
"label.heading.createclosure": "Crear cierre",
"label.heading.financialactivity.accountmappings": "Cuentas vinculadas a actividades financieras",
"label.listof.financialactivity.accountmappings": "Lista de actividad financiera y asignaciones de cuentas GL",
@ -902,7 +1004,6 @@
"label.heading.financial.activity.type": "Actividad financiera",
"label.heading.financial.activity.account.name": "Nombre de la cuenta",
"label.heading.transferredfrom": "Transferido desde",
"label.heading.createdby": "Creado por",
"label.heading.createdon": "Creada el",
"label.heading.journalentry.created": "Entrada De Diario Creado",
"label.heading.viewreport": "Ver informe",
@ -991,7 +1092,6 @@
"label.input.smsprovider": "Proveedor de SMS",
"journalEntryType.credit": "Crédito",
"journalEntrytType.debit": "Débito",
"label.button.addAddress": "Agregar dirección",
"label.button.addfamilymember": "Añadir miembro de la familia",
"label.button.listview": "Ver como lista",
"label.button.treeview": "Vista de árbol",
@ -1030,6 +1130,7 @@
"label.savecollectionsheetsuccessfully": "Hoja de recaudación guardada con éxito",
"label.norepaymentsanddisbursalareavailable": "Los reembolsos y desembolsos no están disponibles para el grupo seleccionado y la fecha de reunión",
"label.transactionisreversedonce": "Esta transacción fue cancelada",
"label.norepaymentsanddisbursalareavailableforclient": "Ningún reembolso y desembolso están disponibles para el cliente y fecha de la reunión",
"label.transactionreverse": "Transacción cancelada con éxito. Una nueva entrada de diario ha sido creada para revertir esta transacción",
"accountType.loan": "Cuenta de préstamo",
"accountType.savings": "Cuenta de ahorros",
@ -1180,7 +1281,7 @@
"label.heading.guarantor": "Garante",
"label.heading.createguarantor": "Crear Garante",
"label.heading.editloanaccount": "Editar cuenta de préstamo",
"label.heading.collaterals": "Garantía",
"label.heading.editloanapplication": "Editar solicitud de préstamo",
"label.heading.value": "Valor",
"label.heading.loanamountandbalance": "Cantidad y saldo del préstamo",
"label.heading.totalcostofloan": "Costo total del préstamo",
@ -1280,7 +1381,6 @@
"label.heading.isTopup": "Es Préstamo nivelado?",
"label.heading.loanIdToClose": "Préstamo cerrado con complemento",
"label.heading.topupAmount": "Cantidad de cierre del complemento",
"label.heading.campaign": "Campaña",
"label.menu.rescheduleReason": "Seleccionar Reschedule Razón",
"label.anchor.viewloanaccount": "Ver cuenta del préstamo",
"label.anchor.addloancharge": "Añadir cobro de préstamo",
@ -1300,7 +1400,9 @@
"label.anchor.disburse": "Desembolsar",
"label.anchor.disbursetosavings": "Desembolsar a ahorros",
"label.anchor.repayment": "Reembolso",
"label.anchor.prepayment": "Pago por adelantado",
"label.anchor.waiveinterest": "Renunciar a intereses",
"label.anchor.waivecharge": "Cargo de renuncia",
"label.anchor.writeoff": "Cancelado",
"label.anchor.close-rescheduled": "Cierre reprogramado",
"label.anchor.modifytransaction": "Modificar transacción",
@ -1328,7 +1430,6 @@
"label.input.relationship": "Relación",
"label.input.dob": "Fecha de nacimiento",
"label.input.address": "Dirección",
"label.input.city": "Ciudad",
"label.input.zip": "Código postal",
"label.input.mobile": "Móvil",
"label.input.residence": "Residencia",
@ -1349,7 +1450,9 @@
"label.input.writeoffondate": "Cancelado el",
"label.input.closedondate": "Cerrado el",
"label.input.loanofficerunassigneddate": "Desasignado el",
"label.input.paymenttype": "Tipo de pago",
"label.input.paymenttype": "Tipos de pago",
"label.heading.paymenttypes": "Tipos de pago",
"label.view.paymenttypes": "Tipo de pago",
"label.input.actions": "Acciones",
"label.input.linksavings": "Ahorros de enlace",
"label.input.installment": "Seleccionar entrega",
@ -1421,11 +1524,9 @@
"label.tooltip.loanportfolio": "una cuenta de activo que se cargará durante el desembolso y se acreditará en el reembolso del reembolso/cancelación principal.",
"label.tooltip.receivableinterest": "una cuenta de activo que se utiliza para acumular intereses",
"label.tooltip.receivablefees": "una cuenta de activo que se utiliza para acumular cargos",
"label.tooltip.receivablepnalties": "una cuenta de activo que se utiliza para acumular multas",
"label.tooltip.receivablepenalties": "una cuenta de activo que se utiliza para acumular multas",
"label.tooltip.transfersinsuspense": "una cuenta de activo que se utiliza una cuenta de espera para el seguimiento de las carteras de préstamos bajo transferencia.",
"label.tooltip.incomefrominterest": "una cuenta de los ingresos que se le atribuye en el pago de intereses.",
"label.tooltip.incomefromfees": "Una cuenta de Ingresos qué está abonado cuándo un coste está pagado por titular de cuenta en esta cuenta",
"label.tooltip.incomefrompenalties": "Una cuenta de Ingresos, que se acredita cuando la multa se paga por el titular de la cuenta en esta cuenta",
"label.tooltip.recoverypayments": "una cuenta de ingresos que se le atribuye durante el reembolso de recuperación.",
"label.tooltip.loseswrittenoff": "una cuenta de gastos que se cargarán en la cancelación principal (también debitado en los eventos de interés, la comisión y en la multa cancelados en el caso del ejercicio basado en la contabilidad).",
"label.tooltip.overpaymentliability": "una cuenta de responsabilidad que se acreditará en los pagos en exceso y se acredita cuando se hacen los reembolsos al cliente.",
@ -1484,7 +1585,6 @@
"label.tooltip.allowpartialperiodinterestcalcualtion": "Para ser utilizado con MISMO CUANDO PERIODO de REEMBOLSO- para calcular interés exacto con el periodo parcial ex: el interés cobrado de es 5.º de April , Principal es 10000 y el interés es 1% por mes entonces el interés será (10000 * 1%)* (25/30) , calcula para el mes primero entonces calcula periodos exactos entre fecha de inicio y fecha de fin(puede ser un decimal)",
"label.tooltip.interestfreeperiod": "Si el período libre de intereses es '4' y frecuencia de pago del cliente es cada semana, entonces para las primeras cuatro semanas el cliente no necesita pagar intereses, tiene que pagar en principio prevista para esa semana.",
"label.tooltip.arearstolerance": "Con 'Arrears tolerancia' puedes especificar una cantidad de tolerancia y si el préstamo es detrás (en arrears), pero dentro de la tolerancia, no sea clasificado cuando 'en arrears' y parte de la carpeta en riesgo.",
"label.tooltip.daysinyear": "El encuadre para número de días en año para utilizar para calcular interés",
"label.tooltip.daysinmonth": "Cantidad de días en el mes.",
"label.tooltip.csi.name": "El nombre de la instrucción permanente",
"label.tooltip.csi.applicant": "El nombre del cliente a quien se le de la orden permanente que se crea.",
@ -1689,6 +1789,10 @@
"error.msg.loan.disbursement.cannot.be.a.edited": "Disbursement Los detalles no pueden ser editados para un prestar cuál es ya desembolsó",
"error.msg.loan.product.does.not.support.multiple.disbursals": "Esto presta el producto no apoya múltiple disbursals",
"error.msg.cannot.modify.tranches.if.loan.is.pendingapproval.closed.overpaid.writtenoff": "Disbursement Los detalles no pueden ser modificados si la cuenta de préstamo es aprobación Pendiente /Cerró/Overpaid/WrittenOff",
"label.heading.interestDetails": "Detalles de interés",
"label.heading.savingsDetails": "Detalles de los ahorros",
"label.heading.currentBalance": "Balance actual",
"label.heading.availableBalance": "Equilibrio disponible",
"label.heading.approvesavingaccount": "Aprobar cuenta de ahorro",
"label.heading.rejectsavingaccount": "Rechazar cuenta de ahorro",
"label.heading.withdrawsavingaccount": "Retirar cuenta de ahorro",
@ -1949,7 +2053,6 @@
"label.tooltip.suspenseaccount": "Cantidad de participación será mantenida en esta cuenta de suspenso antes de que aprobación",
"label.tooltip.equityaccount": "Una cuenta de Equidad, el cual está cargado cuándo compra de participaciones está aprobado",
"label.tooltip.allowdividendsforinactiveclients": "Permitir a los dividendos para los clientes inactivos",
"label.tooltip.marketprice": "Precio de cada participación",
"label.tooltip.interestpostingperiod": "El periodo en qué índice de interés es posted o abonado a una cuenta de ahorro",
"label.tooltip.interestcalculatedusing": "El método utilizado para calcular los intereses",
"label.tooltip.minimumopeningbalance": "Pone la cantidad de depósito mínima requirió para abrir una cuenta de ahorro de este tipo de producto del ahorro",
@ -2176,14 +2279,15 @@
"label.heading.officetocharges": "Acceso de oficina a cargos",
"label.heading.roletoloanproducts": "Acceso oficina para productos de préstamo",
"label.heading.roletosavingsproducts": "Acceso de oficina a productos de ahorros",
"label.heading.importtime": "Tiempo de importación",
"label.heading.endtime": "Tiempo de finalización",
"label.heading.completed": "Completado",
"label.anchor.users": "Usuarios",
"label.anchor.createuser": "Crear usuario",
"label.anchor.editpermissions": "Editar permisos",
"label.anchor.edituser": "Editar usuario",
"label.anchor.globalconfigurations": "Configuraciones globales",
"label.anchor.editconfiguration": "Editar configuración",
"label.input.username": "Nombre de usuario",
"label.input.email": "Correo electrónico",
"label.input.autogeneratepassword": "Auto generar contraseña",
"label.input.password": "Contraseña",
"label.input.repeatpassword": "Repetir contraseña",
@ -2340,6 +2444,7 @@
"error.msg.currency.currencyCode.inUse": "La moneda que intentas eliminar está en uso",
"error.msg.countInterest": "No se puede publicar intereses antes de la fecha de la última transacción",
"error.msg.before activation date": "Fecha de Interés {{params[0].value}} Debe ser posterior a la fecha de activación",
"validation.msg.invalid.dateFormat.format": "Por favor ingrese una fecha válida",
"validation.msg.tax.component.percentage.is.greater.than.max": "El porcentaje tendría que ser menos de 100",
"validation.msg.tax.component.startDate.is.less.than.date": "Fecha de inicio tiene que ser mayor que o igual a fecha actual y fecha de inicio anterior",
"validation.msg.tax.group.taxComponents.not.greater.than.zero": "Componentes de impuesto tienen que ser allí",
@ -2348,6 +2453,8 @@
"validation.msg.tax.group.endDate.can.not.modify.end.date.once.updated": "Modificación de fecha del fin no es apoyada",
"validation.msg.tax.group.total.percentage.is.greater.than.max": "Grupo porcentaje total debe ser menor de 100 en cualquier punto del tiempo",
"validation.msg.tax.component.group.total.percentage.is.greater.than.max": "Uno del total de grupo es más de 100 con esta modificación",
"label.tooltip.employees.active.true": "Activo",
"label.tooltip.employees.active.false": "Inactivo",
"label.heading.text": "Texto",
"label.heading.addcode": "Añadir código",
"label.heading.codename": "Nombre del código",
@ -2357,7 +2464,6 @@
"label.heading.hookname": "Nombre del enganche",
"label.heading.hooktemplate": "Plantilla del enganche",
"label.heading.events": "Eventos",
"label.heading.isactive": "Estado",
"label.heading.entityname": "Nombre de la entidad",
"label.heading.actionname": "Nombre de la acción",
"label.heading.ugdtemplatename": "Nombre de la plantilla UGD",
@ -2465,10 +2571,10 @@
"label.anchor.fieldconfiguration": "Configuración de campo de entidad",
"label.input.addressType": "Tipo de dirección",
"label.input.clientIdNameOffice": "Cliente Id-Nombre-Oficina",
"label.input.street": "Calle",
"label.input.addressline1": "Línea de dirección 1",
"label.input.addressline2": "Línea de dirección 2",
"label.input.addressline3": "Línea de dirección 3",
"label.input.street": "Calle",
"label.input.town_village": "Ciudad / Pueblo",
"label.input.county_district": "País / Distrito",
"label.input.state_province": "Estado / Provincia",
@ -2476,7 +2582,6 @@
"label.input.latitude": "Latitud",
"label.input.longitude": "Longitud",
"label.input.entity": "Entidad",
"label.input.alias": "Alias",
"label.input.type": "Tipo",
"label.input.templatename": "Nombre de la plantilla",
"label.input.mapperkey": "Llave Mapper",
@ -2575,7 +2680,6 @@
"label.selectstatus": "Seleccionar estado",
"label.selectchecker": "Seleccionar verificador",
"label.loan": "Préstamo",
"label.savingsaccount": "Cuenta de ahorros",
"label.client": "Cliente",
"label.group": "Grupo",
"label.center": "Centro",
@ -2776,7 +2880,7 @@
"label.heading.interestchart": "Gráfico de tasa de interés",
"label.heading.interestratechart.valid.from": "Válido desde la fecha",
"label.heading.interestratechart.valid.to": "Fecha de finalización",
"label.heading.interestratecharts": "Gráficos de tasa de interés",
"label.heading.interestratecharts": "Detalles de gráfico de índice de interés",
"label.heading.editinterestratechart": "Editar gráfico de tasa de interés",
"label.heading.interestratedetails.period.type": "Tipo de período",
"label.heading.interestratedetails.period.from.to": "Período desde / hasta",
@ -2842,6 +2946,7 @@
"label.anchor.createrecurringdepositproduct": "Crear producto de depósito recurrente",
"label.anchor.smscampaings": "Campañas SMS",
"label.anchor.createcampaign": "Crear campaña",
"label.anchor.bulkimport": "Importación a granel",
"label.input.selectproduct": "Seleccionar producto",
"label.input.allowedproducts": "Productos permitidos",
"label.input.restrictedproducts": "Productos restringidos",
@ -2893,7 +2998,6 @@
"label.input.receivablefees": "Comisiones por cobrar",
"label.input.receivablepenalties": "Multas por cobrar",
"label.input.transfersinsuspense": "Transferencia en suspenso",
"label.input.incomefrominterest": "Ingresos por intereses",
"label.input.interest.on.overdrafts": "Ingresos por sobregiro de intereses",
"label.input.incomefromfees": "Ingresos por cuotas",
"label.input.incomefromcharges": "Ingresos de cargo",
@ -3499,6 +3603,7 @@
"label.input.no.of.overdue.days.to.move.loan.into.arrears": "El número de días que un préstamo puede ser estar vencido antes de constituirse en mora",
"label.heading.graceOnArrearsAgeing": "Período de gracia en atrasos vencidos",
"label.input.feefrequency": "Frecuencia de cargo",
"label.input.fees": "Cuotas",
"label.input.addfeefrequency": "Añadir frecuencia de cargo",
"label.input.frequencyInterval": "Intervalo de la frecuencia",
"label.input.selectclients": "Seleccionar clientes",
@ -3570,6 +3675,7 @@
"validation.msg.fixeddepositaccount.linkAccountId.cannot.be.blank": "Se requiere una cuenta de ahorro vinculada",
"label.anchor.officeglaccount": "Cuenta de Oficina GL",
"label.anchor.office": "Oficinas",
"label.input.officetemplate": "Plantilla de oficina",
"label.heading.officeglaccounts": "Cuentas de Oficina GL",
"label.input.filterbyAccountGlcodeOffice": "Nombre de la cuenta GL/Código GL/Nombre de la Oficina",
"label.button.addofficeglaccount": "Añadir asignación de cuenta de oficina GL",
@ -3710,7 +3816,6 @@
"label.input.teller.cashiertxn.txnNote": "Notas/Comentarios",
"label.button.addpaymentdetail": "Añadir detalles de pago",
"label.anchor.individualcollectionsheet": "Hoja de Colección individual",
"------------------": "------------",
"office_access_to_loan_products": "Oficinas --> Productos De Ahorro",
"office_access_to_savings_products": "Oficinas --> Productos De Ahorro",
"office_access_to_fees/charges": "Oficinas--> cargos y tarifas",
@ -3900,6 +4005,8 @@
"cashier.date.range.out.of.teller.date.range.exception": "El intervalo de fechas del cajero debe estar en el rango de fechas del cajero.",
"cashier.already.allocated.for.given.data.and.time.exception": "Cajero ya asignado para una fecha determinada y rango de tiempo.",
"label.heading.notification": "Notificaciones",
"label.heading.createdAt": "Creado el",
"label.selecton": "Seleccionar en",
"label.heading.repaymentscheduleing.rule": "Tipo de programación de reembolso",
"label.input.query": "Consulta SQL",
"label.input.tablename": "Insertar en tabla",
@ -3952,5 +4059,21 @@
"reportRunFrequency.monthly": "Mensualmente",
"reportRunFrequency.yearly": "Anualmente",
"reportRunFrequency.custom": "Personalizado",
"label.heading.activate.group": "Activar grupo",
"validation.msg.sharesproduct.description.cannot.be.blank": "La descripción no puede estar vacía.",
"error.msg.first.installment.date.after.reschedule.should.be.a.working.day": "La fecha del primer abono tras una reprogramación debe corresponder a un día laborable",
"label.input.new.emi": "Nuevo EMI",
"label.input.emi.change.upto": "Fecha de finalización de cambio de EMI",
"label.input.changeEMI": "Cambiar EMI",
"label.input.installment.date": "Fecha de abono",
"label.anchor.rates": "Tasas",
"label.heading.rates": "Tasas",
"label.rates": "Definir tasas para el Producto-préstamo, ahorros y depósitos de productos.",
"label.button.createrate": "Crear Tasa",
"label.anchor.createrate": "Crear Tasa",
"label.heading.rateappliesto": "Tasa aplica a",
"label.anchor.editrate": "Editar Tasa",
"label.error.rate.already.exist": "Tasa ya existe.",
"label.selectrate": "Seleccione Tasa",
"----End---": "---Fin del archivo---"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,108 +1,145 @@
{
"app lebels start" :"----------------------------------------------------",
"label.heading.mifosxclient" : "Mifos-X क्लाइंट",
"label.input.changelanguage" : "भाषा बदल:",
"label.input.username" : "प्रयोक्ता नाम",
"label.input.password" : "पासवर्ड",
"label.button.signin":"साइन इन करें",
"label.systemid": "सिस्टम आईडी :",
"label.heading.loanofficer" : "ऋण अधिकारी :",
"label.heading.mifosx" : "Mifos X",
"label.heading.uptodate" : "MifosX तारीख तक है",
"label.product.aboutus1" : "MifosX को डिज़ाइन किया गया है ",
"label.product.aboutus2" : "ग्लोबल कम्यूनिटी",
"label.product.aboutus3" : "विशेष रूप से, गरीब महिलाओं के लिए एक साथ काम कर रहे हैं, वित्तीय सेवाओं के लिए पहुँच प्राप्त.",
"label.get.involved1" : "रोचक लगती है?",
"label.get.involved2" : "शामिल हो जाओ!",
"label.community.name" : "COSM",
"label.anchor.resources" : "संसाधन",
"label.anchor.usermanual" : "उपयोगकर्ता गाइड",
"label.anchor.functionalspec" : "कार्यात्मक कल्पना",
"label.faq" : "अक्सर पूछे जाने वाले सवाल",
"label.heading.community" : "समुदाय",
"label.anchor.usersgroup" : "उपयोगकर्ता समूह",
"label.anchor.developergroup" : "डेवलपर समूह",
"label.anchor.developerzone" : "डेवलपर ज़ोन",
"label.anchor.keydesignprinciples": "मुख्य डिजाइन सिद्धांत",
"label.anchor.workingwithcode": "कोड के साथ कार्य करना",
"label.anchor.donate": "दान करना",
"label.anchor.irc" : "आईआरसी",
"# common table headings":"....",
"label.heading.officeName":"ऑफिस का नाम",
"label.heading.name":"नाम",
"# common label headings":"....",
"label.firstname":"प्रथम नाम:",
"label.lastname":"आखिरी नाम:",
"label.office":"कार्यालय:",
"#employee table":"....",
"label.input.isLoanOfficer":"वह ऋण अधिकारी है?",
"label.anchor.createemployee":"कर्मचारी को बनाने" ,
"#view employee":"....",
"label.heading.isLoanOfficer":"वह ऋण अधिकारी है? :",
"#view employee":"....",
"label.heading.parentoffice":"मूल कार्यालय:",
"label.heading.openedon":"पर खोला:",
"label.heading.namedecorated":"सजाया नाम:",
"label.heading.externalid":"एक्सटर्नल आईडी:",
"label.heading.home" : "घर",
"label.anchor.tasks" : "कार्य",
"label.anchor.clients" : "ग्राहकों",
"label.anchor.accounting": "अकाउंटिंग",
"label.anchor.reports" : "रिपोर्टों",
"label.anchor.products" : "उत्पादों",
"label.anchor.admin" : "आडमिन",
"label.anchor.groups" : "समूहों",
"label.anchor.centers" : "केन्द्रों",
"label.anchor.all" : "सब",
"label.anchor.loans" : "ऋण",
"label.anchor.savings": "जमा पूंजी",
"label.anchor.templates": "टेम्पलेट्स",
"label.anchor.funds" : "फंडों",
"label.anchor.loanproducts" : "ऋण उत्पादों",
"label.anchor.savingproducts" : "बचत उत्पादों",
"label.anchor.productsmix" : "उत्पादों मिश्रण",
"label.anchor.charges" : "प्रभार / दंड",
"label.anchor.users" : "उपयोगकर्ताओं",
"label.anchor.organization" : "संगठन",
"label.anchor.system" : "सिस्टम",
"label.anchor.profile" : "प्रोफ़ाइल",
"label.anchor.settings" : "सेटिंग्स",
"label.anchor.logout" : "लॉगआउट",
"#accounting coa":"....",
"label.button.addaccount":"खाते जोड़ें",
"lable.input.accountname":"खाते का नाम",
"label.heading.glcode":"जीएल कोड",
"label.heading.acctype": "खाता प्रकार",
"label.heading.disabled":"अक्षम",
"label.heading.manualentriesallowed":"मैनुअल प्रविष्टियां अनुमति है?",
"label.heading.usedas":"के रूप में इस्तेमाल",
"label.accountname":"खाते का नाम",
"label.heading.accounttype":"खाता प्रकार",
"label.heading.accountusage":"खाता उपयोग",
"label.heading.parent":"जनक चयन करें",
"label.heading.description":"विवरण",
"label.heading.tag":"टैग",
"label.heading.parentaccountname":"खाते के जनक",
"label.heading.position":"स्थान",
"#Office ":"....",
"label.heading.officeName":"ऑफिस का नाम:",
"label.heading.openedon":"पर खोला:",
"label.heading.externalId":"एक्सटर्नल आईडी:",
"label.heading.parentoffice":"मूल कार्यालय:",
"app lebels end" :"-----------------------------------------------------",
"app erros start" :"----------------------------------------------------",
"error.login.failed":"फिर प्रयास करें, अपने क्रेडेंशियल्स मान्य नहीं हैं",
"app erros end" :"------------------------------------------------------"
}
{
"@metadata": {
"authors": [
"Abijeet Patro",
"Adithyavr",
"Archana mathur",
"CptViraj",
"Luckyman000786",
"Phoenix303",
"Rajat11",
"Saurmandal",
"Sfic",
"Smtchahal",
"Upendradutt93",
"Wikiuser13",
"संजीव कुमार"
]
},
"label.heading.totalshares": "\nकुल शेयर",
"label.heading.sharenominalprice": "\nनाममात्र / यूनिट मूल्य",
"label.heading.totalsharestobeissued": "कुल शेयर जारी किए जाएंगे",
"label.heading.sharecapitalvalue": "कुल शेयर पूंजी मूल्य",
"label.heading.shareperclient": "प्रति ग्राहक शेयर",
"label.heading.minimumactiveperiod": "न्यूनतम सक्रिय अवधि",
"label.heading.suspenseaccount": "सन्देही खाता",
"label.heading.equityaccount": "इक्विटी खाता",
"label.heading.allowdividendsforinactiveclients": "निष्क्रिय क्लाइंट के लिए लाभांश की अनुमति दें",
"label.heading.name": "नाम",
"label.heading.alias": "उपनाम",
"label.heading.amountDue": "देय राशि",
"label.heading.cbid": "क्रेडिट ब्यूरो आईडी",
"label.heading.country": "देश",
"label.heading.cbName": "क्रेडिट ब्यूरो का नाम",
"label.heading.disabled": "अक्षम",
"label.heading.description": "विवरण",
"label.heading.externalid": "एक्सटर्नल आईडी:",
"label.heading.accounttype": "खाता प्रकार",
"label.heading.next": "अगला",
"label.heading.prev": "पिछला",
"label.heading.isactive": "स्थिति",
"label.input.fullname": "नाम",
"label.input.legalForm": "कानूनी रूप",
"label.input.active": "सक्रिय",
"label.input.enablepaymenttypes": "सक्षम करें",
"label.input.constitution": "संविधान",
"label.button.searchdata": "डेटा खोजे",
"label.button.back": "पिछे",
"error.login.failed": "फिर प्रयास करें, अपने क्रेडेंशियल्स मान्य नहीं हैं",
"label.tooltip.charges.active.false": "असक्रिय",
"label.heading.home": "घर",
"label.heading.parentoffice": "मूल कार्यालय:",
"label.heading.openedon": "पर खोला:",
"label.heading.mifosxclient": "Mifos-X क्लाइंट",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "MifosX तारीख तक है",
"label.heading.community": "समुदाय",
"label.anchor.logout": "लॉगआउट",
"label.anchor.all": "सब",
"label.anchor.loans": "ऋण",
"label.anchor.savings": "जमा पूंजी",
"label.anchor.funds": "फंडों",
"label.anchor.admin": "आडमिन",
"label.anchor.reports": "रिपोर्टों",
"label.anchor.profile": "प्रोफ़ाइल",
"label.anchor.settings": "सेटिंग्स",
"label.anchor.usermanual": "उपयोगकर्ता गाइड",
"label.anchor.functionalspec": "कार्यात्मक कल्पना",
"label.anchor.developerzone": "डेवलपर ज़ोन",
"label.anchor.usersgroup": "उपयोगकर्ता समूह",
"label.anchor.developergroup": "डेवलपर समूह",
"label.anchor.keydesignprinciples": "मुख्य डिजाइन सिद्धांत",
"label.anchor.workingwithcode": "कोड के साथ कार्य करना",
"label.anchor.donate": "दान करना",
"label.anchor.irc": "आईआरसी",
"label.input.changelanguage": "भाषा बदल:",
"label.button.signin": "साइन इन करें",
"label.anchor.clients": "ग्राहकों",
"label.input.documenttype": "स्थिति",
"clientStatusType.active": "सक्रिय",
"label.heading.managemembers": "सदस्यों को प्रबंधित करें",
"label.heading.associatenewmembers": "सह नव-सदस्य",
"label.heading.groupmembers": "समूह सदस्य",
"label.anchor.groups": "समूहों",
"label.input.searchformember": "सदस्य खोजें",
"label.button.managemembers": "सदस्य प्रबंधन",
"label.active": "सक्रिय",
"groupingStatusType.active": "सक्रिय",
"label.heading.managegroups": "समूह प्रबंधन्",
"label.anchor.centers": "केन्द्रों",
"label.anchor.managegroups": "समूह प्रबंधन",
"label.button.managegroups": "समूहों को प्रबंधित करें",
"label.heading.glcode": "जीएल कोड",
"label.heading.acctype": "खाता प्रकार",
"label.heading.manualentriesallowed": "मैनुअल प्रविष्टियां अनुमति है?",
"label.heading.usedas": "के रूप में इस्तेमाल",
"label.heading.parentaccountname": "खाते के जनक",
"label.heading.tag": "टैग",
"label.heading.accountusage": "खाता उपयोग",
"label.anchor.accounting": "अकाउंटिंग",
"label.input.entryid": "प्रविष्टि ID",
"journalEntryType.credit": "क्रेडिट",
"label.button.addaccount": "खाते जोड़ें",
"label.heading.loanofficer": "ऋण अधिकारी :",
"label.input.applicationdate": "आवेदन दिनांक",
"label.selectprovisioningcategory": "श्रेणी चुने",
"label.tooltip.loanProduct.active": "सक्रिय",
"loanStatusType.active": "सक्रिय",
"label.subStatus": "उप स्थिति",
"savingsAccountStatusType.active": "सक्रिय",
"label.anchor.users": "उपयोगकर्ताओं",
"label.anchor.editconfiguration": "कॉन्फ़िगरेशन को संपादित करें",
"label.input.username": "सदस्यनाम",
"label.input.password": "पासवर्ड",
"label.heading.isLoanOfficer": "वह ऋण अधिकारी है? :",
"label.heading.namedecorated": "सजाया नाम:",
"label.heading.officeName": "ऑफिस का नाम:",
"label.anchor.organization": "संगठन",
"label.anchor.createemployee": "कर्मचारी को बनाने",
"label.input.isLoanOfficer": "वह ऋण अधिकारी है?",
"label.input.mobileNo": "एसएमएस के लिए मोबाइल नंबर",
"label.input.taxgroup": "कर समूह",
"validation.msg.staff.officeId.cannot.be.blank": "कार्यालय अनिवार्य है।",
"label.tooltip.employees.active.true": "सक्रिय",
"label.heading.position": "स्थान",
"label.anchor.templates": "टेम्पलेट्स",
"label.anchor.system": "सिस्टम",
"label.anchor.tasks": "कार्य",
"label.anchor.managemembers": "सदस्यों को प्रबंधित करें",
"label.input.hooktemplate": "हुक साँचा",
"clientIdentifierStatusType.inactive": "असक्रिय",
"clientIdentifierStatusType.active": "सक्रिय",
"label.office": "कार्यालय:",
"label.heading.active": "सक्रिय",
"label.anchor.products": "उत्पादों",
"label.anchor.charges": "प्रभार / दंड",
"label.anchor.loanproducts": "ऋण उत्पादों",
"label.anchor.savingproducts": "बचत उत्पादों",
"label.anchor.productsmix": "उत्पादों मिश्रण",
"label.input.variable.installments.allowed": "परिवर्तनीय किश्तों की अनुमति",
"guarantorFundStatusType.active": "सक्रिय",
"label.input.institution": "संस्थान",
"label.input.new.emi": "नई ईएमआई",
"label.input.emi.change.upto": "ईएमआई परिवर्तन समाप्ति तिथि",
"label.input.changeEMI": "ईएमआई बदलें"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,17 @@
{
"@metadata": {
"authors": [
"David1010",
"Zura",
"Zura.mamr",
"Olegdm",
"Alekoakhalaia",
"Nugzari",
"David1010",
"Fina",
"MIKHEIL",
"Fina"
"Nugzari",
"Olegdm",
"Zura",
"Zura.mamr"
]
},
"label.heading.collaterals": "გირაოს",
"label.heading.name": "სახელი",
"label.heading.startdate": "დაწყების თარიღი",
"label.heading.accnum": "ანგარიში #",
@ -110,6 +111,9 @@
"label.input.minfloatinginterestrate": "მინიმალური საპროცენტო განაკვეთი",
"label.input.defaultfloatinginterestrate": "სტანდარტული საპროცენტო განაკვეთი",
"label.input.maxfloatinginterestrate": "მაქსიმალური საპროცენტო განაკვეთი",
"label.heading.meetingdetails": "შეხვედრის დეტალები",
"label.heading.address": "მისამართი",
"label.heading.createdby": "შექმნილია",
"label.menu.selectloanofficer": "აირჩიეთ პერსონალი",
"label.menu.selectone": "აირჩიეთ ერთი",
"label.anchor.delete": "წაშლა",
@ -118,6 +122,7 @@
"label.anchor.assignstaff": "პერსონალის მინიჭება",
"label.anchor.activate": "გააქტიურება",
"label.anchor.updatedefaultaccount": "სტანდარტული სადეპოზიტო ანგარიშის განახლება",
"label.anchor.editpermissions": "ნებართვა",
"label.input.name": "სახელი",
"label.input.firstname": "სახელი",
"label.input.lastname": "გვარი",
@ -162,6 +167,9 @@
"label.input.true": "სიმართლე",
"label.input.false": "სიცრუე",
"label.input.repaymentdate": "გადახდის თარიღი",
"label.input.incomefrominterest": "შემოსავალი პროცენტიდან",
"label.input.city": "ქალაქი",
"label.input.email": "ელ. ფოსტა",
"label.button.previous": "წინა",
"label.button.next": "შემდეგი",
"label.button.save": "მიღება",
@ -219,6 +227,8 @@
"label.and": "და",
"label.message.password.expired": "თქვენს პაროლს ვადა გაუვიდა, გთხოვთ აღადგინოთ თქვენი პაროლი",
"label.today": "დღეს",
"label.selectentity": "აირჩიეთ საგანი",
"label.selectaction": "აირჩიეთ მოქმედება",
"label.error": "შეცდომა",
"error.login.failed": "თქვენი მონაცემები არ არის სწორი. გთხოვთ სცადოთ თავიდან.",
"error.msg.command.unsupported": "შეცდომა: 'ბრძანება' გაცემული არ არის",
@ -303,6 +313,8 @@
"error.msg.loan.withdraw.cannot.be.before.client.transfer.date": "თარიღი, როდესაც სესხის ათვისებული არ შეიძლება უფრო ადრე, ვიდრე კლიენტის გადაცემის თარიღი ({{params [0]. ღირებულება}})",
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": " The date on which a write off is made cannot be earlier than client's transfer date of ({{params[0].value}})",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "თარიღი, როდესაც სესხის დაფარვა სრულად არ შეიძლება უფრო ადრე, ვიდრე კლიენტის გადაცემის თარიღი ({{params [0]. ღირებულება}})",
"label.tooltip.incomefromfees": "შემოსავლის ანგარიში, რომელიც კრედიტდება როცა მოსაკრებელს იხდის ანგარიშის მფლობელი ამავე ანგარიშზე",
"label.tooltip.incomefrompenalties": "შემოსავლის ანგარიში, რომელიც კრედიტდება როცა ჯარიმას იხდის ანგარიშის მფლობელი ამავე ანგარიშზე",
"label.heading.waiveloancharge": "პროცენტიანი სესხის უარყოფა",
"label.heading.payloancharge": "სესხის საკომსიოს გადახდა",
"label.anchor.paycharge": "საკომისიოს გადახდა",
@ -407,15 +419,12 @@
"label.button.resetPassword": "პაროლის შეცვლა",
"label.button.viewpermissions": "ნებართვების ნახვა",
"label.youneedtologintoaccessthisarea": "თქვენ უნდა შემოხვიდეთ რათა შეამოწმონ ამ სფეროში.",
"label.selectaction": "აირჩიეთ მოქმედება",
"label.selectentity": "აირჩიეთ საგანი",
"label.nodata": "თარიღის გარეშე",
"label.notactivated": "გაუაქტიურებული",
"label.unassigned": "მოხსნილი",
"label.searchorpress": "დააჭირეთ ფოკუსირებისათვის ან დააჭირეთ Alt + x ძებნისათვის",
"label.search.query.matched.results.exceeds.max.length": "ნაპოვნია 200 მეტი ჩანაწერი, პირველი 200 ჩანაწერის ჩვენება.",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "შეგროვების ფურცელი არ შეიძლება გენერირებული ცენტრი / ჯგუფის გარეშე ანიჭებენ შეხვედრის განსაზღვრავს",
"label.heading.address": "მისამართი",
"label.heading.identities": "ვინაობა",
"label.heading.uniqueidentification": "უნიკალური იდენტიფიკატორი #",
"label.heading.identitydocs": "პირადობის დამადასტურებელი დოკუმენტები",
@ -525,7 +534,6 @@
"label.heading.addmember": "წევრის დამატება",
"label.heading.addrole": "შენიშვნის დამატება",
"label.heading.repeatdetails": "გაიმეორე დეტალები",
"label.heading.meetingdetails": "შეხვედრის დეტალები",
"label.heading.creategroup": "ჯგუფის შექმნა",
"label.heading.editgroup": "ჯგუფის რედაქტირება",
"label.heading.transferclientsbetweengroups": "გადარიცხვა კლიენტის ჯგუფებს შორის",
@ -657,7 +665,6 @@
"label.heading.financial.activity.type": "ფინანსური მოქმედება",
"label.heading.financial.activity.account.name": "ანგარიშის სახელი",
"label.heading.transferredfrom": "გადაეცემა",
"label.heading.createdby": "შექმნილია",
"label.heading.entryid": "შესასვლელი ID",
"label.heading.financialactivity": "ფინანსური აქტივობა",
"label.heading.viewfinancialmapping": "ფინანსური საქმიანობის კარტოგრაფიული ნახვა",
@ -888,7 +895,6 @@
"label.heading.assignloanofficer": "საკრედიტო ოფიცრის მინიჭება",
"label.heading.guarantor": "გარანტი",
"label.heading.editloanaccount": "სასესხო ანგარიშის რედაქტირება",
"label.heading.collaterals": "გირაოს",
"label.heading.value": "ღირებულება",
"label.heading.loanamountandbalance": "საკრედიტო თანხა და ბალანსი",
"label.heading.totalcostofloan": "კრედიტის საერთო ღირებულება",
@ -1008,7 +1014,6 @@
"label.input.relationship": "ურთიერთობები",
"label.input.dob": "DOB",
"label.input.address": "მისამართი",
"label.input.city": "ქალაქი",
"label.input.zip": "ინდექსი",
"label.input.mobile": "მობილური",
"label.input.residence": "საცხოვრებელი ადგილი",
@ -1058,11 +1063,9 @@
"label.tooltip.loanportfolio": "აქტივის ანგარიშზე, რომელიც სადებეტო დროს გაცემა და დაკრედიტდება დროს ძირითადი დაფარვა / ჩამოწერის.",
"label.tooltip.receivableinterest": "აქტიური ანგარიში რომელიც გამოიყენება პროცენტის დასარიცხად",
"label.tooltip.receivablefees": "აქტიური ანგარიში რომელიც გამოიყენება გადასახადების დასარიცხად",
"label.tooltip.receivablepnalties": "აქტიური ანგარიში რომელიც გამოიყენება ჯარიმების დასარიცხად",
"label.tooltip.receivablepenalties": "აქტიური ანგარიში რომელიც გამოიყენება ჯარიმების დასარიცხად",
"label.tooltip.transfersinsuspense": "აქტივის ანგარიში, რომელიც გამოიყენება შეჩერების ანგარიში თვალთვალის პორტფელის სესხების ქვეშ გადაცემა.",
"label.tooltip.incomefrominterest": "შემოსავლის ანგარიში, რომელიც კრედიტდება პროცენტის გადახდის დროს",
"label.tooltip.incomefromfees": "შემოსავლის ანგარიში, რომელიც კრედიტდება როცა მოსაკრებელს იხდის ანგარიშის მფლობელი ამავე ანგარიშზე",
"label.tooltip.incomefrompenalties": "შემოსავლის ანგარიში, რომელიც კრედიტდება როცა ჯარიმას იხდის ანგარიშის მფლობელი ამავე ანგარიშზე",
"label.tooltip.recoverypayments": "შემოსავლების ანგარიში, რომელიც ირიცხება დავალიანების დაფარვისას",
"label.tooltip.loseswrittenoff": "ხარჯების ანგარიშზე, რომელიც debited პრინციპული writeoff (ასევე debited მოვლენების ინტერესი, საფასურის და ჯარიმის ჩამოწერილი შემთხვევაში accural საფუძველზე საბუღალტრო.",
"label.tooltip.overpaymentliability": "პასუხისმგებლობის ანგარიშზე, რომელიც ჩაირიცხება ზედმეტად და დაკრედიტდება როდესაც თანხის უბრუნება კლიენტს.",
@ -1582,12 +1585,10 @@
"label.heading.roles": "წესები",
"label.anchor.users": "მომხმარებლები",
"label.anchor.createuser": "მომხმარებლის შექმნა",
"label.anchor.editpermissions": "ნებართვა",
"label.anchor.edituser": "მომხმარებლის რედაქტირება",
"label.anchor.globalconfigurations": "გლობალური კონფიგურაცია",
"label.anchor.editconfiguration": "კონფიგურაციის რედაქტირება",
"label.input.username": "მომხმარებლის სახელი",
"label.input.email": "ელ. ფოსტა",
"label.input.autogeneratepassword": "ავტომატური პაროლის შექმნა",
"label.input.password": "პაროლი",
"label.input.repeatpassword": "პაროლის აღდგენა",
@ -1856,7 +1857,6 @@
"label.selectstatus": "სტატუსის დაყენება",
"label.selectchecker": "აირჩიეთ შემოწმება",
"label.loan": "სესხი",
"label.savingsaccount": "შეინახე ანგარიში",
"label.client": "კლიენტი",
"label.group": "ჯგუფი",
"label.center": "ცენტრი",
@ -2083,7 +2083,6 @@
"label.input.receivablefees": "საფასურის მისაღები",
"label.input.receivablepenalties": "ჯარიმების შემოსავალი",
"label.input.transfersinsuspense": "წინასწარ გადარიცხვა",
"label.input.incomefrominterest": "შემოსავალი პროცენტიდან",
"label.input.incomefromfees": "შემოსავალი საფასურიდან",
"label.input.incomefrompenalties": "შემოსავალი ჯარიმებიდან",
"label.input.loseswrittenoff": "ჩამოწერილი დანაკარგები",
@ -2698,7 +2697,6 @@
"label.input.teller.cashiertxn.txnAmount": "თანხა",
"label.input.teller.cashiertxn.txnNote": "შეტყობინებები/კომენტარები",
"label.anchor.individualcollectionsheet": "ინდივიდუალური მოსაკრებლების ცხრილი",
"------------------": "------------",
"label.anchor.workingDays": "სამუშაო დღეები",
"label.view.workingDays": "სამუშაო დღეების და სამუშაო დღეებში გადახდების კონფიგურაცია",
"label.heading.workingDays": "სამუშაო დღეები",

View File

@ -7,6 +7,7 @@
"វ័ណថារិទ្ធ"
]
},
"label.heading.collaterals": "វត្ថុបញ្ចាំ",
"label.heading.name": "ឈ្មោះ",
"label.heading.startdate": "កាលបរិច្ឆេទចាប់ផ្តើម",
"label.heading.accnum": "លេខគណនី",
@ -95,6 +96,10 @@
"label.heading.interest.paid": "ការប្រាក់ដែលបានបង់",
"label.heading.principal.repayment": "ប្រាក់ដើមដែឡបានបង់",
"label.heading.arrears": "បង់យឺត",
"label.heading.meetingdetails": "កិច្ចប្រជុំលំអិត",
"label.heading.address": "អាស័យដ្ឋាន",
"label.heading.createdby": "បង្កើតដោយ",
"label.heading.isactive": "សកម្ម?",
"label.menu.selectloanofficer": "ជ្រើសយកបុគ្គលិក",
"label.menu.selectone": "ជ្រើសរើសមួយ",
"label.anchor.delete": "លុបចោល",
@ -103,6 +108,7 @@
"label.anchor.assignstaff": "ចាត់ចែងបុគ្គលិក",
"label.anchor.activate": "ដំណើរការ",
"label.anchor.updatedefaultaccount": "ធ្វើបច្ចុប្បន្នភាពគណនីសន្សំ",
"label.anchor.editpermissions": "កែប្រែការសិទ្ធ",
"label.input.name": "ឈ្មោះ",
"label.input.firstname": "នាម",
"label.input.lastname": "គោត្តនាម",
@ -148,6 +154,9 @@
"label.input.transfertype": "ប្រភេទផ្ទេរប្រាក់",
"label.input.true": "ពិត",
"label.input.false": "មិនពិត",
"label.input.incomefrominterest": "ចំណូលពីការប្រាក់",
"label.input.city": "ទីក្រុង",
"label.input.email": "សាអេឡិចត្រូនិច",
"label.button.previous": "ទៅក្រោយ",
"label.button.next": "ទៅមុខ",
"label.button.save": "បញ្ចូល",
@ -214,6 +223,8 @@
"label.today": "ថ្ងៃនេះ",
"label.relDate": "ថ្ងៃចេញ Mifos X",
"label.relVersion": "លេខកំណែថ្មី",
"label.selectentity": "ជ្រើសរើសអង្គភាព",
"label.selectaction": "ជ្រើសរើសសកម្មភាព",
"label.error": "មានបញ្ហា",
"error.login.failed": "សូមព្យាយាមម្តងទៀត អត្តសញ្ញាណអ្នកប្រើប្រាស់របស់អ្នកមិនត្រឹមត្រូវ",
"error.connection.failed": "មិនអាចភ្ជាប់ទៅ Sever បានទេ សូមបញ្ជាក់ពីភាពត្រឹមត្រូវក្នុងការកំណត់ប្រព័ន្ធម្តងទៀត",
@ -304,6 +315,9 @@
"error.msg.loan.withdraw.cannot.be.before.client.transfer.date": "កាលបរិច្ឆេទដែលឥណទានត្រូវបានដកចេញមិនអាចធ្វើមុនកាលបរិច្ឆេទផ្ទេរអតិថិជន ({{params[0].value}}) ឡើយ",
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": "កាលបរិច្ឆេទដែលឥណទានត្រូវបានលុបចោលមិនអាចធ្វើមុនកាលបរិច្ឆេទផ្ទេរអតិថិជន ({{params[0].value}}) ឡើយ",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "កាលបរិច្ឆេទដែលឥណទានត្រូវបានសងផ្តាច់មិនអាចធ្វើមុនកាលបរិច្ឆេទផ្ទេរអតិថិជន ({{params[0].value}}) ឡើយ",
"label.tooltip.incomefromfees": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលដែលកម្រៃសេវាត្រូវបានបង់ដោយម្ចាស់គណនី",
"label.tooltip.incomefrompenalties": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលដែលការពិន័យត្រូវបានបង់ដោយម្ចាស់គណនី",
"label.tooltip.daysinyear": "កំណត់ចំនួនថ្ងៃនៅក្នុងឆ្នាំដើម្បីប្រើជាមូលដ្ឋានក្នុងការគណនាការប្រាក់",
"label.heading.waiveloancharge": "លើកលែងកម្រៃសេវាឥណទាន",
"label.heading.payloancharge": "បង់កម្រៃសេវាឥណទាន",
"label.anchor.paycharge": "បង់សេវា",
@ -412,8 +426,6 @@
"label.button.resetPassword": "កំណត់លេខសម្ងាត់ឡើងវិញ",
"label.button.viewpermissions": "ទិដ្ឋភាពសិទ្ធប្រើប្រាស់ប្រព័ន្ធ",
"label.youneedtologintoaccessthisarea": "អ្នកត្រូវតែចូលក្នុងប្រព័ន្ធជាមុនសិនមុននឹងចូលទៅដល់ចំណុចនេះ",
"label.selectaction": "ជ្រើសរើសសកម្មភាព",
"label.selectentity": "ជ្រើសរើសអង្គភាព",
"label.selectugdtemplate": "ជ្រើសរើសគំរូ UGD",
"label.nodata": "គ្មានទិន្នន័យ",
"label.notactivated": "មិន​ត្រូវ​បាន​ដាក់ឲ្យដំណើរការ",
@ -421,7 +433,6 @@
"label.searchorpress": "ជ្រើសរើស ឬក៏ចុច Alt + x ដើម្បីស្វែងរក",
"label.search.query.matched.results.exceeds.max.length": "លទ្ធផលនៃការស្វែងរកមានច្រើនជាង ២០០ កំណត់ត្រា, បង្ហាញកំណត់ត្រា ២០០ ដំបូង",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "តារាងប្រមូលប្រាក់មិនអាចត្រូវបានបង្កើតសំរាប់ ប៉ុស្ត៍/ក្រុមដែលមិនបានភ្ជាប់នូវការកិច្ចប្រជុំ",
"label.heading.address": "អាស័យដ្ឋាន",
"label.heading.identities": "អត្តសញ្ញាណ",
"label.heading.uniqueidentification": "លេខអត្តសញ្ញាណ (មានតែមួយ)",
"label.heading.identitydocs": "ឯកសារអត្តសញ្ញាណ",
@ -549,7 +560,6 @@
"label.heading.addmember": "បន្ថែមសមាជិក",
"label.heading.addrole": "បន្ថែមតួនាទី",
"label.heading.repeatdetails": "លំអិតនៃការកើតម្តងទៀត",
"label.heading.meetingdetails": "កិច្ចប្រជុំលំអិត",
"label.heading.creategroup": "បង្កើតក្រុម",
"label.heading.editgroup": "កែសម្រួលក្រុម",
"label.heading.managemembers": "គ្រប់គ្រងសមាជិក",
@ -713,7 +723,6 @@
"label.heading.financial.activity.type": "សកម្មភាពហិរញ្ញវត្ថុ",
"label.heading.financial.activity.account.name": "ឈ្មោះគណនី",
"label.heading.transferredfrom": "ផ្ទេរពី",
"label.heading.createdby": "បង្កើតដោយ",
"label.heading.entryid": "លេខកូដប្រតិបត្តិការ",
"label.heading.add.financial.activity.mapping": "បង្កើតការភ្ជាប់សកម្មភាពហិរញ្ញវត្ថុ",
"label.heading.financialactivity": "សកម្មភាពហិរញ្ញវត្ថុ",
@ -949,7 +958,6 @@
"label.heading.guarantor": "អ្នកធានា",
"label.heading.createguarantor": "បង្កើតអ្នកធានា",
"label.heading.editloanaccount": "កែសម្រួលគណនីឥណទាន",
"label.heading.collaterals": "វត្ថុបញ្ចាំ",
"label.heading.value": "តម្លៃ",
"label.heading.loanamountandbalance": "ទំហំ និង សមតុល្យឥណទាន",
"label.heading.totalcostofloan": "ថ្លៃដើមសរុបនៃឥណទាន",
@ -1083,7 +1091,6 @@
"label.input.relationship": "ទំនាក់ទំនង",
"label.input.dob": "ថ្ងៃខែឆ្នាំកំណើត",
"label.input.address": "អាស័យដ្ឋាន",
"label.input.city": "ទីក្រុង",
"label.input.zip": "លេខកូដប្រទេស",
"label.input.mobile": "លេខទូរស័ព្ធ",
"label.input.residence": "កន្លែងស្នាក់នៅ",
@ -1141,11 +1148,9 @@
"label.tooltip.loanportfolio": "គណនីទ្រព្យសកម្មគឺត្រូវបានកត់ត្រាខាងឥណពន្ធនៅពេលបញ្ចេញឥណទាន និងខាងឥណទាននៅពេលសងប្រាក់ដើម ឬក៏លុបចេញពីបញ្ជី",
"label.tooltip.receivableinterest": "គណនីទ្រព្យសកម្មដែលត្រូវបានប្រើប្រាស់សំរាប់កត់ត្រាការប្រាក់បង្គរ",
"label.tooltip.receivablefees": "គណនីទ្រព្យសកម្មដែលត្រូវបានប្រើសំរាប់កត់ត្រាបង្គរកម្រៃសេវា",
"label.tooltip.receivablepnalties": "គណនីទ្រព្យសកម្មដែលត្រូវបានប្រើប្រាស់សំរាប់ចុះបង្គរការផាកពិន័យ",
"label.tooltip.receivablepenalties": "គណនីទ្រព្យសកម្មដែលត្រូវបានប្រើប្រាស់សំរាប់ចុះបង្គរការផាកពិន័យ",
"label.tooltip.transfersinsuspense": "គណនីទ្រព្យសកម្មដែលត្រូវបានប្រើប្រាស់សំរាប់កត់ត្រាព្យួរ សំរាប់តាមដានឥណទានដែលកំពុងធ្វើការផ្ទេរ",
"label.tooltip.incomefrominterest": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលបង់ការប្រាក់",
"label.tooltip.incomefromfees": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលដែលកម្រៃសេវាត្រូវបានបង់ដោយម្ចាស់គណនី",
"label.tooltip.incomefrompenalties": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលដែលការពិន័យត្រូវបានបង់ដោយម្ចាស់គណនី",
"label.tooltip.recoverypayments": "គណនីចំណូលដែលត្រូវបានកត់ត្រាខាងឥណទាននៅពេលដែលមានការសងត្រលប់ឥណទានយឺតយ៉ាវ ​ឬបាត់បង់",
"label.tooltip.loseswrittenoff": "គណនីចំណាយដែលត្រូវបានកត់ត្រាខាងឥណពន្ធទៅពេលដែលលប់ប្រាក់ដើមចេញពីបញ្ជី (ប្រើសំរាប់ការលុបចោលនូវការប្រាក់​ ឬប្រាក់ពិន័យផងដែរ)",
"label.tooltip.overpaymentliability": "គណនីបំណុលដែលត្រូវបានកត់ត្រាខាងឥណទានចំពោះការបង់លើស និងខាងឥណពន្ធនៅពេលដែលសង់ត្រលប់ទៅអតិថិជន",
@ -1196,7 +1201,6 @@
"label.tooltip.interestcalculationperiod": "ប្រចាំថ្ងៃៈ ការប្រាក់និងគណនាពឹងចំនួនថ្ងៃ ឧ. បើនៅខែកុម្ភះដែលមាន២៨ថ្ងៃ នោះការប្រាក់នឹងគណនាចំនួន២៨ថ្ងៃ ។ ដូចទៅនឹងរយៈពេលបង់ប្រាក់ៈ ការប្រាក់នឹងគណនាសំរាប់ខែ គឺ៣០ថ្ងៃ ។ \\",
"label.tooltip.interestfreeperiod": "ប្រសិនបើរយៈពេលលើកលែងការប្រាក់គឺ៤ ហើយការបង់ប្រចាំសប្តាហ៍ នោះ៤សប្តាហ៍ដំបូងការប្រាក់មិនត្រូវបានបង់ឡើយ គឺបង់តែប្រាក់ដើមតែប៉ុណ្ណោះ",
"label.tooltip.arearstolerance": "ការបង់យឺតដែលអាចទទួលយកបានគឺជាអ្នកកំណត់ថាទំហំទឹកប្រាក់ប៉ុន្មានដែលយើងអាចទទួលយកបានដោយមិនចាត់ចូលជាឥណទានខកខាន (យឺត) ហើយវានឹងមិនរាប់ចូលទៅក្នុង PAR ឡើយ",
"label.tooltip.daysinyear": "កំណត់ចំនួនថ្ងៃនៅក្នុងឆ្នាំដើម្បីប្រើជាមូលដ្ឋានក្នុងការគណនាការប្រាក់",
"label.tooltip.daysinmonth": "ចំនួនថ្ងៃក្នុងមួយខែ",
"label.tooltip.csi.name": "ឈ្មោះសំរាប់ការធ្វើប្រតិបត្តិការណ៍កំណត់ទុកជាមុន",
"label.tooltip.csi.applicant": "ឈ្មោះអតិថិជនសំរាប់ធ្វើប្រតិប្តិការណ៍កំណត់ទុកជាមុន",
@ -1798,12 +1802,10 @@
"label.heading.roletosavingsproducts": "តួនាទីសំរាប់ផលិតផលសន្សំ",
"label.anchor.users": "អ្នកប្រើប្រាស់",
"label.anchor.createuser": "បង្កើតអ្នកប្រើប្រាស់",
"label.anchor.editpermissions": "កែប្រែការសិទ្ធ",
"label.anchor.edituser": "កែសម្រួលអ្នកប្រើប្រាស់",
"label.anchor.globalconfigurations": "ការកំណត់ទូទៅ",
"label.anchor.editconfiguration": "កែប្រែការកំណត់",
"label.input.username": "ឈ្មោះអ្នកប្រើប្រាស់",
"label.input.email": "សាអេឡិចត្រូនិច",
"label.input.autogeneratepassword": "បង្កើតលេខសម្ងាត់ដោយស្វ័យប្រវត្តិ",
"label.input.password": "លេខសម្ងាត់",
"label.input.repeatpassword": "ដាក់លេខសម្ងាត់ម្តងទៀត",
@ -1932,7 +1934,6 @@
"label.heading.hookname": "ឈ្មោះ Hook",
"label.heading.hooktemplate": "ទំរង់គំរូ Hook",
"label.heading.events": "ព្រឹត្តិការណ៍",
"label.heading.isactive": "សកម្ម?",
"label.heading.entityname": "ឈ្មោះអង្គភាព",
"label.heading.actionname": "ឈ្មោះសកម្មភាព",
"label.heading.ugdtemplatename": "ឈ្មោះទំរង់គំរូ UGD",
@ -2121,7 +2122,6 @@
"label.selectstatus": "ជ្រើសរើសស្ថានភាព",
"label.selectchecker": "ជ្រើសរើសអ្នកត្រួតពិនិត្យ",
"label.loan": "ឥណទាន",
"label.savingsaccount": "គណនីសន្សំ",
"label.client": "អតិថិជន",
"label.group": "ក្រុម",
"label.center": "ប៉ុស្តិ៍សេវា",
@ -2384,7 +2384,6 @@
"label.input.receivablefees": "កម្រៃសេវាត្រូវទទួល",
"label.input.receivablepenalties": "ការពិន័យត្រូវទទួល",
"label.input.transfersinsuspense": "ការផ្ទេរនៅក្នុងគណនីព្យួរ",
"label.input.incomefrominterest": "ចំណូលពីការប្រាក់",
"label.input.interest.on.overdrafts": "ចំណូលការប្រាក់វិបារូហ៍",
"label.input.incomefromfees": "ចំណូលពីកម្រៃសេវា",
"label.input.recoverypayments": "ចំណូលពីការសង់ត្រលប់ឥណទានដែលបានខូច",
@ -3096,7 +3095,6 @@
"label.input.teller.cashiertxn.txnNote": "កំណត់សំគាល់ និង អនុសាសន៍",
"label.button.addpaymentdetail": "បន្ថែមព័ត៍មានលំអិតអំពីការទូទាត់",
"label.anchor.individualcollectionsheet": "តារាងប្រមូលប្រាក់បុគ្គល",
"------------------": "------------",
"office_access_to_loan_products": "ការិយាល័យ --> ផលិតផលឥណទាន",
"office_access_to_savings_products": "ការិយាល័យ --> ផលិតផលសន្សំ",
"office_access_to_fees/charges": "ការិយាល័យ --> កម្រៃសេវា",

File diff suppressed because it is too large Load Diff

View File

@ -5,32 +5,36 @@
"Clockoon",
"Gusdud25",
"Hwangjy9",
"In2acous",
"Jerrykim306",
"Jytim",
"Kurousagi",
"Nayan",
"Nuevo Paso",
"Priviet",
"Revi",
"SeoJeongHo",
"Underbaaar",
"Ykhwong",
"아라",
"In2acous"
"Yunbj",
"아라"
]
},
"label.heading.shareperclient": "클라이언트마다 공유",
"label.heading.suspenseaccount": "미결 계좌",
"label.heading.equityaccount": "공평 계좌",
"label.heading.name": "이름",
"label.heading.alias": "다른 이름",
"label.heading.country": "국가",
"label.heading.stale_period": "stale_period",
"label.heading.startdate": "시작 날짜",
"label.heading.enddate": "종료 날짜",
"label.heading.is_active": "is_active",
"label.heading.accnum": "계좌 #",
"label.heading.accnum": "계좌 번호",
"label.heading.staff": "직원",
"label.heading.office": "사무실",
"label.heading.delete": "삭제",
"label.heading.reject": "거부",
"label.heading.delete": "삭제하시겠습니까?",
"label.heading.reject": "거부하시겠습니까?",
"label.heading.deleterole": "역할 삭제",
"label.heading.disablerole": "역할 비활성화",
"label.heading.disabled": "비활성화됨",
@ -50,7 +54,9 @@
"label.heading.savingaccount": "저축 계좌",
"label.heading.description": "설명",
"label.heading.shortname": "짧은 이름",
"label.heading.approve": "승인",
"label.heading.approve": "승인을 확인합니까?",
"label.heading.gsimId": "GSIM Id",
"label.heading.glimId": "GLIM Id",
"label.heading.actions": "동작",
"label.heading.loanaccoverview": "대출 계좌 개요",
"label.heading.savingsaccoverview": "저축 계좌 개요",
@ -91,10 +97,12 @@
"label.heading.issueswithdrawls": "이슈 인출",
"label.heading.notprovided": "제공되지 않음",
"label.heading.notavailable": "사용할 수 없음",
"label.heading.next": "다음",
"label.heading.prev": "이전",
"label.heading.provisioningcategory": "분류",
"label.heading.minimumage": "최저 연령",
"label.heading.maximumage": "최고 연령",
"label.heading.provisioningpercentage": "백분율",
"label.heading.provisioningpercentage": "백분율:",
"label.heading.provisioningliabilityaccount": "책임 계좌",
"label.heading.provisioningexpenseaccount": "비용 계좌",
"label.input.between": "사이",
@ -114,12 +122,17 @@
"label.heading.approvedby": "승인자",
"label.heading.message": "메시지",
"label.heading.preview": "미리 보기",
"label.heading.selfserivceaccountactivated": "셀프 서비스 계정이 활성화되었습니다",
"label.heading.address": "주소",
"label.heading.isactive": "상태",
"label.menu.selectloanofficer": "직원 선택",
"label.menu.selectone": "하나 선택",
"label.anchor.delete": "삭제",
"label.achor.activate": "활성화",
"label.anchor.close": "닫기",
"label.anchor.activate": "활성화",
"label.anchor.importclients": "클라이언트",
"label.anchor.editpermissions": "권한 편집",
"label.input.name": "이름",
"label.input.firstname": "이름",
"label.input.lastname": "성",
@ -128,14 +141,16 @@
"label.input.age": "나이",
"label.input.maritalstatus": "결혼 여부",
"label.input.fullname": "이름",
"label.input.accno": "계좌#",
"label.input.accno": "계좌 번호",
"label.input.staff": "직원",
"label.input.office": "사무실",
"label.input.client": "클라이언트",
"label.input.clients": "클라이언트",
"label.input.enternote": "참고 입력",
"label.input.enternote": "참고 입력:",
"label.input.notes": "참고",
"label.input.externalid": "바깥 ID",
"label.input.externalid": "외부 ID",
"label.input.enablepaymenttypes": "활성화",
"label.input.enablepaymenttype": "지불 방식 활성화",
"label.input.description": "설명",
"label.input.repeat": "반복",
"label.input.comments": "댓글",
@ -153,12 +168,15 @@
"label.input.transfertype": "송금 유형",
"label.input.true": "참",
"label.input.false": "거짓",
"label.input.status": "상태",
"label.input.email": "이메일",
"label.button.previous": "이전",
"label.button.next": "다음",
"label.button.save": "제출",
"label.button.searchdata": "검색 데이터",
"label.button.cancel": "취소",
"label.button.edit": "편집",
"label.button.addconfig": "새 구성 추가",
"label.button.delete": "삭제",
"label.button.confirm": "확인",
"label.button.close": "닫기",
@ -192,6 +210,7 @@
"label.button.validate": "유효화",
"label.button.pattern": "패턴",
"label.button.proceed": "진행",
"label.button.addAddress": "주소 추가",
"label.createdby": "작성자",
"label.areyousure": "확실합니까?",
"label.all": "모두",
@ -202,17 +221,21 @@
"label.savesuccessfully": "성공적으로 저장했습니다",
"label.nodatafound": "입력한 검색 변수에 관한 데이터를 찾을 수 없습니다.",
"label.mustbenumeric": "숫자여야 합니다",
"label.usernameminfivechars": "사용자 이름은 적어도 5자여야 합니다.",
"label.passwordminsixchars": "비밀번호는 적어도 6자여야 합니다.",
"label.percentage": "퍼센트",
"label.and": "그리고",
"label.message.password.expired": "비밀번호가 만기되었습니다. 비밀번호를 재설정해 주십시오.",
"label.today": "오늘",
"label.relDate": "Mifos X 배포 날짜:",
"label.relVersion": "배포 버전:",
"label.select": "--선택--",
"label.select": "옵션을 선택하세요",
"label.selectentity": "개체 선택",
"label.selectaction": "동작 선택",
"label.error": "오류",
"error.connection.failed": "서버에 연결할 수 없습니다. 올바른 설정을 사용하고 있는지 확인하세요.",
"error.msg.command.unsupported": "프로그래머 오류: 발행된 명령은 지원하지 않습니다.",
"error.msg.not.authorized": "이 작업을 수행할 권한이 부족합니다.",
"error.msg.not.authorized": "이 작업을 수행할 권한이 없습니다.",
"error.msg.invalid.request.body": "요청 본문에 제공된 JSON은 유효하지 않거나 존재하지 않습니다.",
"error.msg.header": "다음의 오류가 있습니다:",
"validation.msg.invalid.date.format": "날짜 형식이 잘못되었습니다.",
@ -226,12 +249,12 @@
"resourceId.not.integer": "ID는 정수여야 합니다.",
"error.msg.resource.not.found": "요청된 리소스는 이용할 수 없습니다.",
"error.msg.code.identifier.not.found": "{{params[0].value}} 식별자를 가진 코드가 존재하지 않습니다.",
"validation.msg.calendar.title.cannot.be.blank": "제목은 필수입니다.",
"validation.msg.calendar.startDate.cannot.be.blank": "시작 날짜 필수입니다.",
"validation.msg.calendar.description.cannot.be.blank": "설명을 빈 칸으로 둘 수 없습니다.",
"validation.msg.calendar.title.cannot.be.blank": "제목은 필수입니다.",
"validation.msg.calendar.startDate.cannot.be.blank": "시작 날짜 칸은 필수입니다.",
"validation.msg.calendar.description.cannot.be.blank": "설명 칸을 비워둘 수 없습니다.",
"validation.msg.calendar.location.cannot.be.blank": "위치를 빈 칸으로 둘 수 없습니다.",
"validation.msg.calendar.endDate.cannot.be.blank": "종료 날짜를 빈 칸으로 둘 수 없습니다.",
"validation.msg.calendar.duration.cannot.be.blank": "기간을 빈 칸으로 둘 수 없습니다.",
"validation.msg.calendar.duration.cannot.be.blank": "기간 칸을 비워둘 수 없습니다.",
"label.heading.payloancharge": "대출 과금 지불",
"label.input.paymentdate": "지불 날짜",
"label.tooltip.charges.active.true": "활성",
@ -247,6 +270,7 @@
"label.heading.fullname": "이름",
"label.heading.mifosxclient": "Mifos X 클라이언트",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "은(는) 최신입니다",
"label.heading.resources": "자료",
"label.heading.contribute": "기여",
"label.heading.loginname": "로그인 이름",
@ -264,6 +288,7 @@
"label.heading.primaryemail": "주 사용 이메일",
"label.heading.categoryname": "분류 이름",
"label.menu.office": "사무실",
"label.anchor.startpage": "시작 페이지",
"label.anchor.homepage": "홈페이지",
"label.anchor.loginpage": "로그인 문서",
"label.anchor.logout": "로그아웃",
@ -278,7 +303,6 @@
"label.anchor.settings": "설정",
"label.anchor.navigation": "둘러보기",
"label.anchor.client": "클라이언트",
"label.anchor.importclients": "클라이언트",
"label.anchor.group": "그룹",
"label.anchor.center": "중앙",
"label.anchor.usermanual": "사용자 매뉴얼",
@ -294,6 +318,7 @@
"label.anchor.save": "저장",
"label.input.clienttemplate": "클라이언트 서식",
"label.input.additionalinformation": "추가 정보",
"label.input.personalinformation": "개인정보",
"label.input.changelanguage": "언어 변경:",
"label.search.scope.all": "모두",
"label.search.scope.clients.and.clientIdentifiers": "클라이언트",
@ -312,15 +337,12 @@
"label.button.signin": "로그인",
"label.button.resetPassword": "비밀번호 재설정",
"label.button.viewpermissions": "권한 보기",
"label.youneedtologintoaccessthisarea": "이 영역에 접근하려면 로그인해야 합니다",
"label.selectaction": "동작 선택",
"label.selectentity": "개체 선택",
"label.youneedtologintoaccessthisarea": "이 영역에 접근하려면 로그인해야 합니다.",
"label.selectugdtemplate": "UGD 탬플릿 선택",
"label.nodata": "데이터 없음",
"label.searchorpress": "검색하려면 클릭하거나 Alt+X를 누르세요",
"label.heading.address": "주소",
"label.heading.familymembers": "가족 구성원",
"label.heading.uniqueidentification": "고유 ID #",
"label.heading.uniqueidentification": "고유 ID 번호",
"label.heading.filename": "파일 이름",
"label.heading.templates": "템플릿",
"label.heading.documents": "문서",
@ -337,7 +359,7 @@
"label.heading.selectclientsignature": "클라이언트 서명 선택",
"label.heading.clientsignature": "클라이언트 서명",
"label.heading.clientscreenreport": "클라이언트 화면 보고",
"label.heading.clientno": "클라이언트 #",
"label.heading.clientno": "클라이언트 번호",
"label.heading.clientclosed": "클라이언트 닫힘",
"label.heading.clientrejected": "클라이언트 거부됨",
"label.heading.withdrawn": "클라이언트 인출",
@ -347,7 +369,7 @@
"label.anchor.transferclient": "송금 클라이언트",
"label.anchor.editclient": "클라이언트 편집",
"label.anchor.uploaddocument": "문서 업로드",
"label.anchor.addclientidentities": "클라이언트 식별 정보 추가",
"label.anchor.addclientidentities": "클라이언트 식별 추가",
"label.anchor.clientscreenreport": "클라이언트 화면 보고",
"label.anchor.acceptclienttransfer": "송금 클라이언트 수락",
"label.anchor.rejecttransfer": "송금 클라이언트 거부",
@ -358,8 +380,7 @@
"label.input.selectfile": "파일 선택",
"label.input.selectexcelfile": "액셀 파일 선택",
"label.input.documenttype": "문서 유형",
"label.input.status": "상태",
"label.input.uniqueidentification": "고유 ID #",
"label.input.uniqueidentification": "고유 ID 번호",
"label.input.mobilenumber": "휴대폰 번호",
"label.input.client.creationdate": "만든 날짜",
"label.input.rejectiondate": "거부 날짜",
@ -395,7 +416,7 @@
"label.totalsavings": "총 저축",
"label.showClientSignature": "클라이언트 서명 보기",
"label.noClientSignature": "클라이언트 서명이 제공되어 있지 않습니다",
"client.search.not.allowed": "클라이언트 검색 사용을 허용하지 않습니다.",
"client.search.not.allowed": "클라이언트 검색 허용하지 않습니다.",
"loan.search.not.allowed": "대출 검색 사용을 허용하지 않습니다.",
"clientStatusType.pending": "보류 중",
"clientStatusType.closed": "닫힘",
@ -407,7 +428,7 @@
"validation.msg.client.name.cannot.start.specialchar.ornumber": "이름은 특수 문자나 숫자로 시작할 수 없습니다",
"validation.msg.client.staffId.cannot.be.blank": "직원을 선택하세요.",
"error.msg.client.id.invalid": "클라이언트가 존재하지 않습니다.",
"error.msg.image.type.upload": "GIF, PNG, JPG 형식의 파일만 허용합니다.",
"error.msg.image.type.upload": "지원되는 파일 형식: GIF, PNG, JPG",
"validation.msg.clientImage.cannot.be.blank": "업로드할 그림을 선택하세요.",
"label.heading.addmember": "회원 추가",
"label.heading.addrole": "역할 추가",
@ -432,6 +453,7 @@
"label.input.availableclients": "사용할 수 있는 클라이언트",
"label.input.selectedclients": "선택한 클라이언트",
"label.input.error": "오류",
"label.input.invaliddaterange": "유효한 날짜 범위를 선택해 주십시오",
"label.button.creategroup": "그룹 만들기",
"label.button.transferclients": "송금 클라이언트",
"label.selectgroup": "그룹 선택",
@ -465,12 +487,13 @@
"label.heading.tag": "태그",
"label.heading.viewaccounttransferdetails": "계좌 송금 자세한 사항 보기",
"label.heading.accounttransfers": "계좌 송금",
"validation.msg.periodicaccrual.accrueTill.is.greater.than.date": "날짜는 미래일 수 없습니다",
"label.heading.daterange": "날짜 범위",
"label.anchor.addrule": "규칙 추가",
"label.anchor.viewaccounttransferdetails": "계좌 송금 자세한 사항 보기",
"label.input.nrc": "NRC 번호",
"label.input.glcode": "GL 코드",
"label.input.smsprovider": "SMS 제공자",
"label.button.addAddress": "주소 추가",
"label.button.addfamilymember": "가족 구성원 추가",
"label.button.addrule": "규칙 추가",
"label.button.expand.all": "모두 펼치기",
@ -501,8 +524,11 @@
"label.anchor.showpaymentdetails": "지불 자세한 사항 보기",
"label.input.relationship": "관계",
"label.input.value": "값",
"label.input.stringValue": "문자열 변수 값",
"label.input.existingclient": "존재하는 클라이언트",
"label.input.paymenttype": "지불 방식",
"label.anchor.paymenttypes": "지불 방식",
"label.view.paymenttypes": "지불 방식",
"label.input.installmentinmultiplesof": "의 배수로 분할",
"label.selectloanproduct": "대출 상품 선택",
"label.tooltip.days": "대출 상품별로 설정",
@ -511,10 +537,12 @@
"validation.msg.loans.reassignment.loans.cannot.be.empty": "송금할 대출 계좌를 적어도 하나를 선택해야 합니다.",
"validation.msg.Guarantor.firstname.cannot.be.blank": "이름은 필수입니다.",
"validation.msg.Guarantor.lastname.cannot.be.blank": "성은 필수입니다.",
"label.heading.reasons": "이유",
"label.heading.paymentdetails": "지불 자세한 사항",
"label.heading.banknumber": "은행#",
"label.input.product": "상품",
"label.input.sharesperclient": "클라이언트마다 공유",
"label.input.reasons": "이유",
"label.input.paymentypeid": "지불 방식 ID",
"label.input.showpaymentdetails": "지불 자세한 사항 보기",
"label.input.banknumber": "은행#",
@ -546,12 +574,10 @@
"label.heading.roles": "역할",
"label.anchor.users": "사용자",
"label.anchor.createuser": "사용자 만들기",
"label.anchor.editpermissions": "권한 편집",
"label.anchor.edituser": "사용자 편집",
"label.anchor.globalconfigurations": "전역 구성",
"label.anchor.editconfiguration": "편집 구성",
"label.input.username": "사용자 이름",
"label.input.email": "이메일",
"label.input.autogeneratepassword": "비밀번호 자동 생성",
"label.input.password": "비밀번호",
"label.input.repeatpassword": "비밀번호 다시 입력",
@ -587,11 +613,12 @@
"validation.msg.staff.firstname.cannot.be.blank": "이름은 필수입니다.",
"validation.msg.staff.firstname.exceeds.max.length": "이름은 {{params[0].value}}자를 초과할 수 없습니다.",
"validation.msg.holiday.date.cannot.be.past.date": "날짜는 과거 날짜가 될 수 없습니다",
"validation.msg.invalid.dateFormat.format": "유효한 날짜를 입력해 주십시오",
"validation.msg.tax.component.startDate.is.less.than.date": "시작 날짜는 현재 날짜, 이전 시작 날짜 이후이거나 동일해야 합니다",
"label.tooltip.employees.active.true": "활성",
"label.tooltip.employees.active.false": "비활성",
"label.heading.addcode": "코드 추가",
"label.heading.systemdefined": "시스템 정의",
"label.heading.isactive": "상태",
"label.heading.code": "코드",
"label.heading.editcode": "코드 편집",
"label.heading.editdatatable": "데이터 테이블 편집",
@ -600,6 +627,7 @@
"label.heading.position": "위치",
"label.heading.version": "버전",
"label.heading.addcodevalue": "코드 값 추가",
"label.heading.prefix": "접두어",
"label.heading.surveys": "모든 설문 조사 목록",
"label.heading.createsurvey": "설문 조사 만들기",
"label.heading.questions": "질문",
@ -630,6 +658,7 @@
"label.input.longitude": "경도",
"label.input.position": "위치",
"PaymentType": "지불 방식",
"PaymentTypes": "지불 방식",
"label.button.advancedoptions": "고급 옵션",
"label.button.addcode": "코드 추가",
"label.button.refresh": "새로 고침",
@ -790,6 +819,7 @@
"label.S3.description": "S3 아마존 서비스 구성",
"label.SMTP.description": "이메일 서비스 구성",
"label.SMS.description": "SMS 서비스 구성",
"label.menu.selectconfiguration": "구성 선택",
"label.anchor.SMTP": "이메일 서비스",
"error.msg.externalservice.servicename.invalid": "서비스 이름 `{{params[0].value}}`은(는) 존재하지 않습니다.",
"label.heading.Survey": "조사",
@ -864,5 +894,13 @@
"error.otp.validate.invalid": "지정된 인증 토큰은 유효하지 않습니다",
"error.otp.validate.other": "인증 토큰의 확인을 시도하는 동안 오류가 발생했습니다",
"error.twofactor.config.disabled": "2요소 인증은 비활성화되어 있거나 서버에서 지원하지 않습니다!",
"validation.msg.sharesproduct.description.cannot.be.blank": "설명은 빈 칸으로 둘 수 없습니다.",
"label.createselfserviceuser": "셀프 서비스 사용자 만들기",
"label.button.activateselfservice": "셀프 서비스 사용자 활성화",
"label.button.selfserviceactivatehelp": "셀프 서비스 사용자 활성화 도움말",
"label.createdselfserviceuser": "셀프 서비스 사용자가 성공적으로 만들어졌습니다",
"label.input.new.emi": "새 EMI",
"label.input.changeEMI": "EMI 변경",
"label.collaterals": "민간인",
"----End---": "--파일 끝--"
}

View File

@ -1,11 +1,13 @@
{
"@metadata": {
"authors": [
"Iberia2011",
"1233qwer1234qwer4",
"Aefgh39622",
"Iberia2011",
"Vandasay"
]
},
"label.heading.collaterals": "ຫລັກຊັບຄໍ້າປະກັນ",
"label.heading.name": "ຊື່",
"label.heading.startdate": "ວັນທີເລີ່ມຕົ້ນ",
"label.heading.accnum": "ເລກບັນຊີ",
@ -98,6 +100,10 @@
"label.heading.message": "ຂໍ້ຄວາມ",
"label.heading.preview": "ລອງເບິ່ງຜົນ",
"label.heading.messagedetails": "ລາຍລະອຽດຂໍ້ຄວາມ",
"label.heading.meetingdetails": "ລາຍລະອຽດຂອງກອງປະຊຸມ",
"label.heading.address": "ທີ່ຢູ່",
"label.heading.createdby": "ຂຽນໂດຍ",
"label.heading.isactive": "ເຄື່ອນໄຫວ ?",
"label.menu.selectloanofficer": "ເລືອກພະນັກງານ",
"label.menu.selectone": "ເລືອກຫນຶ່ງ",
"label.anchor.delete": "ຄອມ",
@ -106,6 +112,7 @@
"label.anchor.assignstaff": "ແຕ່ງຕັ້ງພະນັກງານ",
"label.anchor.activate": "ກະຕຸ້ນ",
"label.anchor.updatedefaultaccount": "ປັບປຸງບັນຊີເງິນຝາກປະຢັດ ຕາມມາດຖານ",
"label.anchor.editpermissions": "ດັດແກ້ການອະນຸຍາດ",
"label.input.name": "ຊື່",
"label.input.firstname": "ຊື່ຫນ້າທໍາອິດ",
"label.input.lastname": "ຊື່ສຸດທ້າຍ",
@ -152,6 +159,9 @@
"label.input.true": "ຖືກຕ້ອງ",
"label.input.false": "ຜີດ",
"label.input.repaymentdate": "ວັນທີຊໍາລະຄືນ",
"label.input.incomefrominterest": "ລາຍຮັບຈາກດອກເບ້ຍ",
"label.input.city": "ເມືອງ",
"label.input.email": "ອີເມລ",
"label.button.previous": "ທີ່ຜ່ານມາ",
"label.button.next": "ຕໍ່ໄປ",
"label.button.save": "ສົ່ງ",
@ -220,6 +230,8 @@
"label.today": "ມື້ນີ້",
"label.relDate": "Mifos X ໄດ້ຈຳໜ່າຍ ວັນທີ",
"label.relVersion": "ເປີດຕົວສະບັບ",
"label.selectentity": "ເລືອກ",
"label.selectaction": "ເລືອກປະຕິບັດງານ",
"label.error": "ຄວາມຜິດພາດ",
"error.login.failed": "ກະລຸນາພະຍາຍາມອີກເທື່ອຫນຶ່ງ, ຫລັກຖານຂອງທ່ານບໍ່ຖືກຕ້ອງ",
"error.connection.failed": "ບໍ່ສາມາດເຊື່ອມຕໍ່ກັບເຄື່ອງແມ່. ເຮັດໃຫ້ແນ່ໃຈວ່າທ່ານກໍາລັງໃຊ້ການຕັ້ງຄ່າທີ່ຖືກຕ້ອງ.",
@ -311,6 +323,9 @@
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": "ວັນທີທີ່ຂຽນໄປແມ່ນບໍ່ສາມາດຈະກ່ອນຫນ້ານັ້ນກ່ວາລູກຄ້າຂອງວັນທີໂອນ ({{params[0].value}})",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "ວັນທີທີ່ເງິນກູ້ຢືມແມ່ນຈ່າຍໃນຢ່າງເຕັມທີ່ບໍ່ສາມາດຈະກ່ອນຫນ້ານັ້ນກ່ວາລູກຄ້າຂອງວັນທີໂອນ ({{params[0].value}})",
"error.msg.loan.repayment.or.waiver.account.is.not.active": "ບັນຊີເງິນກູ້ທີ່ບໍ່ເຄື່ອນໄຫວ",
"label.tooltip.incomefromfees": "ບັນຊີລາຍຮັບຄ່າທີ່ນຽມ ຈາກາການປ່ອຍສິນເຊື່ອໂດຍຜູ້ຖືບັນຊີນີ້ ຈົດເບື້ອງມີ",
"label.tooltip.incomefrompenalties": "ບັນຊີລາຍຮັບ ປັບໄໝ ຈາກການປ່ອຍສິນເຊື່ອ ຈ່າຍໂດຍເຈົ້າຂອງບັນຊີເງິນກູ້ນີ້",
"label.tooltip.daysinyear": "ການຕັ້ງສຳລັບຕົວເລກຂອງວັນໃນປີ ແມ່ໍ່ນຖືກນຳໃຊ້ຄິໄລ່ດອກເບ້ຍ",
"label.heading.waiveloancharge": "ຈັດການກູ້ຢືມເງິນຮັບຜິດຊອບ",
"label.heading.payloancharge": "ຈ່າຍເງິນກູ້ຮັບຜິດຊອບ",
"label.anchor.paycharge": "ຈ່າຍຄ່າ",
@ -419,8 +434,6 @@
"label.button.resetPassword": "ຕັ້ງຄ່າລະຫັດຜ່ານໃໝ່",
"label.button.viewpermissions": "ການອະນຸຍາດເບິ່ງ",
"label.youneedtologintoaccessthisarea": "ທ່ານຈໍາເປັນຕ້ອງເຂົ້າສູ່ລະບົບໃນການເຂົ້າເຖິງພື້ນທີ່ນີ້",
"label.selectaction": "ເລືອກປະຕິບັດງານ",
"label.selectentity": "ເລືອກ",
"label.selectugdtemplate": "ເລືອກ ແບບ UGD",
"label.nodata": "ບໍ່",
"label.notactivated": "ບໍ່ activated",
@ -428,7 +441,6 @@
"label.searchorpress": "ກົດເພື່ອສຸມໃສ່ການຫຼືກົດ Alt + x ຄົ້ນຫາ",
"label.search.query.matched.results.exceeds.max.length": "ຜົນການຄົ້ນຄວ້າ ສອບຖາມຫຼາຍກ່ວາ 200 ລາຍການ, ສະແດງໃຫ້ເຫັນ200ລາຍການຄັ້ງທໍາອິດ",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "ເອກະສານການເກັບກໍາບໍ່ສາມາດໄດ້ຮັບການຜະລິດສໍາລັບການສູນກາງ / ກຸ່ມໂດຍບໍ່ມີການຄັດຕິດກອງປະຊຸມກໍານົດ",
"label.heading.address": "ທີ່ຢູ່",
"label.heading.identities": "ເອກະລັກ",
"label.heading.uniqueidentification": "# ບັດປະຈໍາຕົວເປັນເອກະລັກ",
"label.heading.identitydocs": "ເອກະສານເອກະລັກ",
@ -557,7 +569,6 @@
"label.heading.addmember": "ຕື່ມການສະມາຊິກ",
"label.heading.addrole": "ຕື່ມການພາລະບົດບາດ",
"label.heading.repeatdetails": "ລາຍລະອຽດຊ້ໍ",
"label.heading.meetingdetails": "ລາຍລະອຽດຂອງກອງປະຊຸມ",
"label.heading.creategroup": "ສ້າງກຸ່ມ",
"label.heading.editgroup": "ດັດກຸ່ມ",
"label.heading.managemembers": "ການຄຸ້ມຄອງສະມາຊິກ",
@ -722,7 +733,6 @@
"label.heading.financial.activity.type": "ກິດຈະກໍາທາງດ້ານການເງິນ",
"label.heading.financial.activity.account.name": "ຊື່ບັນຊີ",
"label.heading.transferredfrom": "ການຍົກຍ້າຍຈາກ",
"label.heading.createdby": "ຂຽນໂດຍ",
"label.heading.entryid": "ການອອກສຽງປະຈໍາຕົວ",
"label.heading.add.financial.activity.mapping": "ເພີ່ມກິດຈະກຳທາງການເງິນ",
"label.heading.financialactivity": "ກິດຈະກໍາທາງດ້ານການເງິນ",
@ -984,7 +994,6 @@
"label.heading.guarantor": "ຜູ້ຄໍ້າປະກັນ",
"label.heading.createguarantor": "ສ້າງຜູ້ຄໍ້າປະກັນ",
"label.heading.editloanaccount": "ດັດແກ້ບັນຊີເງິນກູ້",
"label.heading.collaterals": "ຫລັກຊັບຄໍ້າປະກັນ",
"label.heading.value": "ຄ່າ",
"label.heading.loanamountandbalance": "ຈຳນວນເງິນກູ້ ແລະ ຍອດເຫຼືອ",
"label.heading.totalcostofloan": "ຕົ້ນທຶນຂອງເງິນກູ້ທັງໝົດ",
@ -1119,7 +1128,6 @@
"label.input.relationship": "ສາຍພົວພັນ",
"label.input.dob": "ວັນເດືອນປີເກີດ",
"label.input.address": "ທີ່ຢູ່",
"label.input.city": "ເມືອງ",
"label.input.zip": "ບີບເຂົ້າ",
"label.input.mobile": "ມືຖື",
"label.input.residence": "ທີ່ຢູ່ປະຈຸບັນ",
@ -1183,11 +1191,9 @@
"label.tooltip.loanportfolio": "ບັນຊີຊັບສິນທີ່ຖືກຫັກອອກໃນໄລຍະການເບີກຈ່າຍ ແລະ ການຊໍາລະຄືນເງິນຕົ້ນໃນໄລຍະໃຫ້ສິນເຊືອ / ການຫັກລ້າງ",
"label.tooltip.receivableinterest": "ບັນຊີຊັບສິນທີ່ຖືກນໍາໃຊ້ເພື່ອຄິດໄລ່ດອກເບ້ຍ",
"label.tooltip.receivablefees": "ບັນຊີຊັບສິນທີ່ຖືກນໍາໃຊ້ ເພື່ອຄິດໄລ່ຄ່າທຳນຽມ",
"label.tooltip.receivablepnalties": "ບັນຊີຊັບສິນທີ່ຖືກນໍາໃຊ້ ພື່ອຄິດໄລ່ຄ່າປັບໃໝ",
"label.tooltip.receivablepenalties": "ບັນຊີຊັບສິນທີ່ຖືກນໍາໃຊ້ ພື່ອຄິດໄລ່ຄ່າປັບໃໝ",
"label.tooltip.transfersinsuspense": "ບັນຊີຊັບສົມບັດ ທີ່ນຳໃຊ້ ບັນຊີລໍຖ້າ ສຳລັບ ຕິດຕາມເງິນກຸ້ ເຄື່ອນໄຫວ ຕ່ຳກວ່າມາດຕະຖານ",
"label.tooltip.incomefrominterest": "ບັນຊີລາຍຮັບ ການຈ່າຍດອກເບ້ຍ ຈາກການປ່ອຍສິນ",
"label.tooltip.incomefromfees": "ບັນຊີລາຍຮັບຄ່າທີ່ນຽມ ຈາກາການປ່ອຍສິນເຊື່ອໂດຍຜູ້ຖືບັນຊີນີ້ ຈົດເບື້ອງມີ",
"label.tooltip.incomefrompenalties": "ບັນຊີລາຍຮັບ ປັບໄໝ ຈາກການປ່ອຍສິນເຊື່ອ ຈ່າຍໂດຍເຈົ້າຂອງບັນຊີເງິນກູ້ນີ້",
"label.tooltip.recoverypayments": "ລາຍຮັບຈາກການເກັບກູ້ໜີ້ຄືນຈົດເບື້ອງມີ",
"label.tooltip.loseswrittenoff": "ບັນຊີລາຍຈ່າຍຈົດເປັນໜີ້ຕ້ອງຮັບເບື້ອງໜີ້ ທີ່ໄດ້ ຫັກລ້າງອອກ ( ຈາກດອກເບ້ຍ, ຄ່າທຳນຽມ ແລະ ປັບໄໝໄດ້ຈົດອອກ. ກໍລະນີນີ້ແມ່ນໃຊ້ຫລັກການບັນຊີຕາມເຫດການທີ່ເກີດຂື້ນ",
"label.tooltip.overpaymentliability": "ບັນຊີໜີ້ສິນ ບັນທຶກເບື້ອງມີ ມາຈາກການຊຳລະເກີນ ແລະ ເປັນຕ້ອງສົ່ງໃຫ້ກັບລູກຄ້າ.",
@ -1196,10 +1202,10 @@
"label.tooltip.advancepayments": "ເມື່ອໃດກໍ່ຕາມທີ່ມີການຈ່າຍເງິນລ່ວງໜ້າສໍາລັບຫຼາຍໆງວດໃນຕໍ່ໜ້າທີ່ເຮັດໂດຍລູກຄ້າ, ຫຼັງຈາກນັ້ນພວກເຮົາທັງສາມາດຫຼຸດຈໍານວນຂອງ EMI ລົງ ຫຼືວ່າ ພວກເຮົາສາມາດ ຫຼຸດຈໍານວນງວດລົງ. ຫຼືບໍ່ດັ່ງນັ້ນ ພວກເຮົາກໍ່ສາມາດປ່ຽນແປງຕາຕະລາງການຊໍາລະ ຄືນໃນການຊໍາລະຄັ້ງຕໍ່ໄປ.",
"label.tooltip.precloseinterestcalculationstrategy": "ຍຸດທະສາດທີ່ຈະທຳການນຳໃຊ້ເຂົາຄິດໄລ່ດອກເບ້ຍ ເມື່ອໃດກໍ່ຕາມທີ່ມີການສະເໜີຂໍປິດກ່ອນໜ້າ.",
"label.tooltip.frequencytorecalculate": "ອີກເທື່ອໜື່ງ ທີ່ລູກຄ້າທຳການຊໍາລະຄືນລ່ວງໜ້າ, ຕົ້ນທຶນຄ້າງຊໍາລະຂອງລາວ ອາດມີການຄິດໄລ່ຄືນບົນພື້ນຖານເປັນລາຍອາທິດ, ສອງອາທິດ, ລາຍເດືອນ ຫຼື ລາຍໄຕມາດ, ໂດຍວິທີນັ້ນ ແມ່ນມີການຫຼຸດຈຳນວນເງິນຄ້າງຊໍາລະ ເປັນລາຍ ອາທິດ, ສອງອາທິດ, ລາຍເດືອນລົງ.",
"label.tooltip.frequencyInterval": "ພາກສ່ວນດັ່ງກ່າວນີ້ມີການປະກອບ 'ຄວາມຖີ່ສຳລັບການຄິດໄລ່ຄືນຕົ້ນທຶນທີ່ຍັງ ຄ້າງຊໍາລະ' ຕຢː ການເລືອກຊ່ວງເວລາ ເປັນ1 ແລະ ຄວາມຖີ່ເປັນລານເດືອນ, ຈະໄດ້ຮັບຜົນຂອງຍອດເຫຼືອຄ້າງຊໍາລະ ຢູ່ໃນ (ການຫຼຸດລົງ) ຖືກຄິດໄລ່ສຳລັບໃນແຕ່ລະເດືອນ.",
"label.tooltip.frequencyInterval": "ພາກສ່ວນດັ່ງກ່າວນີ້ມີການປະກອບ 'ຄວາມຖີ່ສຳລັບການຄິດໄລ່ຄືນຕົ້ນທຶນທີ່ຍັງ ຄ້າງຊໍາລະ' ຕຢ: ການເລືອກຊ່ວງເວລາ ເປັນ1 ແລະ ຄວາມຖີ່ເປັນລານເດືອນ, ຈະໄດ້ຮັບຜົນຂອງຍອດເຫຼືອຄ້າງຊໍາລະ ຢູ່ໃນ (ການຫຼຸດລົງ) ຖືກຄິດໄລ່ສຳລັບໃນແຕ່ລະເດືອນ.",
"label.tooltip.frequencydate": "ຕາມວັນທີ ທີ່ໄດ້ມີການຫຼຸດຍອດເຫຼືອຄ້າງຊໍາລະລົງ ກໍ່ຈະຖືກຄິດໄລ່.",
"label.tooltip.frequencytocompounding": "ຄວາມຖີ່ສຳລັບການປະສົມ ດອກເບ້ຍ/ຄ່າທຳນຽມ ອາດເຮັດຂື້ນເປັນລາຍອາທິດ, ສອງອາທິດ, ລາຍເດືອນ ຫລື ລາຍໄຕມາດ ດ້ວຍວິທີນັ້ນ ການເພີ້ມຂອງຍອດເຫຼືອຄ້າງຊໍາລະຂື້ນ",
"label.tooltip.frequencycompoundinginterval": "ພາກສ່ວນດັ່ງກ່າວນີ້ມີການປະກອບ 'ຄວາມຖີ່ສຳລັບການຄິດໄລ່ຄືນຕົ້ນທຶນທີ່ຍັງ ຄ້າງຊໍາລະ' ຕຢː ການເລືອກຊ່ວງເວລາ ເປັນ1 ແລະ ຄວາມຖີ່ເປັນລານເດືອນ, ຈະໄດ້ຮັບຜົນຂອງຍອດເຫຼືອຄ້າງຊໍາລະ ຢູ່ໃນ (ການເພື້ມຂື້ນ) ຖືກຄິດໄລ່ສຳລັບໃນແຕ່ລະເດືອນ.",
"label.tooltip.frequencycompoundinginterval": "ພາກສ່ວນດັ່ງກ່າວນີ້ມີການປະກອບ 'ຄວາມຖີ່ສຳລັບການຄິດໄລ່ຄືນຕົ້ນທຶນທີ່ຍັງ ຄ້າງຊໍາລະ' ຕຢ: ການເລືອກຊ່ວງເວລາ ເປັນ1 ແລະ ຄວາມຖີ່ເປັນລານເດືອນ, ຈະໄດ້ຮັບຜົນຂອງຍອດເຫຼືອຄ້າງຊໍາລະ ຢູ່ໃນ (ການເພື້ມຂື້ນ) ຖືກຄິດໄລ່ສຳລັບໃນແຕ່ລະເດືອນ.",
"label.tooltip.frequencycompoundingdate": "ວັນທີ ທີ່ມີການເພີ້ມຍອດເຫຼືອຄ້າງຊໍາລະ ຈະຖືກມີການຄິດໄລ່ຄືນ.",
"label.tooltip.numberofdays": "ເງິນກູ້ທີ່ມີການຄ້າງຊໍາລະ (ຊັກຊ້າ) ຕາມຈຳນວນມື້ທີ່ລົງໄວ້ຢູ່ໃນພາກນີ້ແມ່ນມີການເກີນອອກໄປ. ຖ້າວ່າຢູ່ໃນພາກນີ້ມີການປະຫວ່າງໄວ້, ເງິນກູ້ຈະເປັນເງິນກູ້ຊັກຊ້າ ໃນມື້ຫຼັງຈາກທີ່ຜິດນັດການຊໍາລະຕາມຕາຕະລາງທີ່ກຳນົດໄວ້.",
"label.tooltip.maxNumberofDays": "ເງິນກູ້ເປັນ NPA (ຊັບສິນທີ່ບໍ່ເກີດໝາກອອກຜົນ) ອີກເທື່ອໜື່ງ ຕາມຈຳນວນມື້ທີ່ປະກອບໃສ່ໃນພາກນີ້ແມ່ນເກີນກຳນົດ. ຖ້າວ່າຢູ່ໃນພາກນີ້ຖືກປະໃຫ້ເປົ່າຫວ່າງ, ເງິນກູ້ຈະເປັນຊັບສິນທີ່ບໍ່ເກີດໝາກອອກຜົນ ຕາມມື້ທີ່ມີການຜິດນັດຊໍາລະຕາມຕາຕະລາງ.",
@ -1239,10 +1245,9 @@
"label.tooltip.amortization": "ມູນຄ່າການອະນຸມັດ ແມ່ນປະກອບເຂົ້າໃສ່ໃນການຄິດໄລ່ຈຳນວນການຊໍາລະ ເພື່ອການຊໍາລະຄືນເງິນກູ້.",
"label.tooltip.interest": "ວິທີການຄິດໄລ່ມູນຄ່າດອກເບ້ຍ ແມ່ນການປະກອບໃສ່ການຄິດໄລ່ຈຳນວນການຊໍາລະ ເພື່ອຊໍາລະຄືນເງິນກູ້.",
"label.tooltip.repaymentstrategy": "ການກຳນົດຍຸດທະສາດການຊໍາລະຄືນ ທີ່ມີຄວາມຕໍ່ເນື່ອງຊື່ງແຕ່ລະອົງປະກອບໄດ້ຮັບ ການຊໍາລະ.",
"label.tooltip.interestcalculationperiod": "ລາຍວັນ - ຈະມີການຄິດໄລ່ດອກເບ້ຍເປັນພື້ນຖານລາຍວັນ ຕົວຢ່າງː ເດືອນ ກຸມພາ ມີ 28 ວັນ ແລະ ຈະຄິດໄລ່ດອກເບ້ຍເປັນ 28 ວັນ, ໃຫ້ຄືກັນກັບໄລຍະ ຂອງການຊໍາລະຄືນ- ມັນມີການຄິດໄລ່ສຳລັບເດືອນ, ທີ່ວ່າ, 30 ວັນ.",
"label.tooltip.interestcalculationperiod": "ລາຍວັນ - ຈະມີການຄິດໄລ່ດອກເບ້ຍເປັນພື້ນຖານລາຍວັນ ຕົວຢ່າງ: ເດືອນ ກຸມພາ ມີ 28 ວັນ ແລະ ຈະຄິດໄລ່ດອກເບ້ຍເປັນ 28 ວັນ, ໃຫ້ຄືກັນກັບໄລຍະ ຂອງການຊໍາລະຄືນ- ມັນມີການຄິດໄລ່ສຳລັບເດືອນ, ທີ່ວ່າ, 30 ວັນ.",
"label.tooltip.interestfreeperiod": "ຖ້າວ່າໄລຍະທີ່ບໍ່ຄິດໄລ່ດອກເບ້ຍ ແມ່ນ '4' ແລະ ຄວາມຖີ່ໃນການຊໍາລະຄືນຂອງລູກ ຄ້າແມ່ນທຸກໆອາທິດ, ດັ່ງນັ້ນສຳລັບສີ່ອາທິດທຳອິດ ລູກຄ້າບໍ່ຈຳເປັນຕ້ອງຈ່າຍດອກ ເບ້ຍ, ລາວຕ້ອງຈ່າຍຕົ້ນທຶນທີ່ຍັງຄ້າງສຳລັບອາທິດນັ້ນເທົ່ານັ້ນ.",
"label.tooltip.arearstolerance": "ພ້ອມກັບ 'ການໂຍະຍານເວລາໃຫ້ເງິນກູ້ທີ່ຜິດນັດຊຳລະ' ທ່ານສາມາດກຳນົດການ ໂຍະຍານ(ຢືດຢຸ່ນ) ເປັນຈຳນວນເງິນ ແລະ ຖ້າວ່າເງິນກູ້ຖືກປະໄວ້ທາງຫຼັງ (ເປັນເງິນ ກູ້ຜິດນັດຊໍາລະ), ແຕ່ວ່າຢູ່ພາຍໃນການໂຍະຍານ, ມັນຈະບໍ່ຖືກຈັດຊັ້ນເປັນ 'ເງິນກູ້ ທີ່ຜິດນັດຊໍາລະ'ແລະ ເປັນພາກສ່ວນໜື່ງຂອງເງິນກູ້ທີ່ມີຄວາມສ່ຽງ.",
"label.tooltip.daysinyear": "ການຕັ້ງສຳລັບຕົວເລກຂອງວັນໃນປີ ແມ່ໍ່ນຖືກນຳໃຊ້ຄິໄລ່ດອກເບ້ຍ",
"label.tooltip.daysinmonth": "ຈຳນວນຂອງມື້ໃນເດືອນ.",
"label.tooltip.csi.name": "ຊື່ສຳລັບຕຳແໜ່ງຄຳແນະນຳ",
"label.tooltip.csi.applicant": "ຊື່ຂອງລູກຄ້າສຳລັບໃຜມີຕຳແໜ່ງຄຳແນະນຳໄດ້ຖືກສ້າງຂື້ນ.",
@ -1849,12 +1854,10 @@
"label.heading.roletosavingsproducts": "ພາລະກິດການເຂົ້າເຖິງຜະລິດຕະພັນເງິນຝາກ.",
"label.anchor.users": "ຜູ້ນຳໃຊ້",
"label.anchor.createuser": "ສ້າງຜູ້ນຳໃຊ້",
"label.anchor.editpermissions": "ດັດແກ້ການອະນຸຍາດ",
"label.anchor.edituser": "ດັດແກ້ຜູ້ນຳໃຊ້",
"label.anchor.globalconfigurations": "ການຕັ້ງຄ່າໃນທົ່ວໂລກ",
"label.anchor.editconfiguration": "ດັດແກ້ດານຕັ້ງຄ່າ",
"label.input.username": "ຊື່ຜູ້ໃຊ້",
"label.input.email": "ອີເມລ",
"label.input.autogeneratepassword": "ສ້າງລະຫັດອັດຕະໂນມັດ",
"label.input.password": "ລະຫັດ",
"label.input.repeatpassword": "ໃສ່ລະຫັດຕື່ມອີກ",
@ -1984,7 +1987,6 @@
"label.heading.hookname": "ຊື່ຂໍ",
"label.heading.hooktemplate": "ແມ່ແບບຂໍ",
"label.heading.events": "ກິດຈະກຳ",
"label.heading.isactive": "ເຄື່ອນໄຫວ ?",
"label.heading.entityname": "ຊື່ນິຕິບຸກຄົນ",
"label.heading.actionname": "ຊື່ການດຳເນີນງານ",
"label.heading.ugdtemplatename": "ຊື່ແມ່ແບບ ຂອງ UGD",
@ -2173,7 +2175,6 @@
"label.selectstatus": "ເລືອກ ສະຖານະ",
"label.selectchecker": "ເລືອກການກວດກາ",
"label.loan": "ເງິນກຸ້",
"label.savingsaccount": "ບັນຊີ ເງິນຝາກປະຍັດ",
"label.client": "ລູກຄ້າ",
"label.group": "ກຸ່ມ",
"label.center": "ສູນ",
@ -2437,7 +2438,6 @@
"label.input.receivablefees": "ຄ່າທຳນຽມຕ້ອງຮັບ",
"label.input.receivablepenalties": "ຄ່າປັບໄໝ ຕ້ອງຮັບ",
"label.input.transfersinsuspense": "ການໂອນໃນບັນຊີ ລໍຖ້າ",
"label.input.incomefrominterest": "ລາຍຮັບຈາກດອກເບ້ຍ",
"label.input.interest.on.overdrafts": "ລາຍຮັບ ດອກເບ້ຍ ຖອນເກິນ",
"label.input.incomefromfees": "ລາຍຮັບ ຈາກ ຄ່າທຳນຽມ",
"label.input.recoverypayments": "ລາຍຮັບ ຈາກ ການຈ່າຍຄຶນ ທີ່ຈົດເປັນໜີ ເສຍ",
@ -3188,7 +3188,6 @@
"label.input.teller.cashiertxn.txnNote": "ຫມາຍເຫດ / ຄວາມຄິດເຫັນ",
"label.button.addpaymentdetail": "ເພີ່ມລາຍລະອຽດການຊຳລະ",
"label.anchor.individualcollectionsheet": "ໃບເກັບເງິນສ່ວນບຸກຄົນ",
"------------------": "------------",
"office_access_to_loan_products": "ຫ້ອງການ --> ຜະລິດຕະພັນເງິນກູ້",
"office_access_to_savings_products": "ຫ້ອງການ --> ຜະລິດຕະພັນເງິນຝາກ",
"office_access_to_fees/charges": "ຫ້ອງການ --> ຈ່າຍເງິນ/ຄ່າທຳນຽມ",

View File

@ -3,7 +3,9 @@
"authors": [
"Eitvys200",
"Mantak111",
"Nokeoo",
"Robotukas11",
"Tomasdd",
"Zygimantus"
]
},
@ -25,8 +27,8 @@
"label.heading.accnum": "Paskyra #",
"label.heading.staff": "Darbuotojai",
"label.heading.office": "Biuras",
"label.heading.delete": "Ištrinti",
"label.heading.reject": "Atmesti",
"label.heading.delete": "Ar patvirtinti ištrinimą?",
"label.heading.reject": "Ar patvirtinti atmetimą?",
"label.heading.deleterole": "Ištrinti rolę",
"label.heading.disablerole": "Išjungti rolę",
"label.heading.disabled": "Išjungtas",
@ -122,7 +124,7 @@
"label.heading.purchasedsharesoverview": "Operacijų Apžvalga",
"label.heading.applyadditionalshares": "Taikyti Papildomas Akcijas",
"label.heading.approveadditionalshares": "Patvirtinti Papildomas Akcijas",
"label.heading.rejectadditionalshares": "Išpirkti Akcijas",
"label.heading.rejectadditionalshares": "Atmesti Papildomas Akcijas",
"label.heading.dividendperiodstartdate": "Dividendų Laikotarpio Pradžios Data",
"label.heading.dividendperiodenddate": "Dividendų Laikotarpio Pabaigos Data",
"label.heading.dividendamount": "Dividendų Suma",
@ -140,6 +142,11 @@
"label.heading.templateparameters": "Galimi Šablono Parametrai",
"label.heading.businessRule": "Verslo Taisyklė",
"label.heading.campaignMessage": "Kampanijos Pranešimas",
"label.heading.meetingdetails": "Susitikimo Informacija",
"label.heading.address": "Adresas",
"label.heading.createdby": "Sukūrė",
"label.heading.campaign": "Kampanija",
"label.heading.isactive": "Būklė",
"label.menu.selectloanofficer": "Pasirinkti Personalą",
"label.menu.selectone": "Pasirinkite vieną",
"label.menu.legalForm": "Pasirinkti Teisinę Formą",
@ -152,6 +159,7 @@
"label.anchor.assignstaff": "Paskirti Darbuotojus",
"label.anchor.activate": "Aktyvuoti",
"label.anchor.updatedefaultaccount": "Atnaujinti Numatytąją Taupomąją Sąskaitą",
"label.anchor.editpermissions": "Redaguoti Leidimus",
"label.input.name": "Pavadinimas",
"label.input.firstname": "Vardas",
"label.input.lastname": "Pavardė",
@ -203,6 +211,10 @@
"label.input.campaignName": "Kampanijos Pavadinimas",
"label.input.campaignType": "Kampanijos Tipas",
"label.input.campaignMessage": "Kampanijos Pranešimas",
"label.input.alias": "Kiti vardai",
"label.input.status": "Būsena",
"label.input.city": "Miestas",
"label.input.email": "El. paštas",
"label.button.previous": "Ankstesnis",
"label.button.next": "Kitas",
"label.button.save": "Siųsti",
@ -251,6 +263,7 @@
"label.button.validate": "Patvirtinti",
"label.button.dividends": "Dividendai",
"label.button.proceed": "Tęsti",
"label.button.addAddress": "Pridėti Adresą",
"label.uniquelyidentifiedwithid": "Unikaliai identifikuojama su id",
"label.belongsto": "Priklauso",
"label.memberof": "Narys",
@ -339,6 +352,7 @@
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": " Nurašymo data negali būti ankstesnė nei kliento perkėlimo data ({{params[0].value}})",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": " Paskolos gražinimo data negali būti ankstesnė nei kliento perkėlimo data ({{params[0].value}})",
"error.msg.loan.repayment.or.waiver.account.is.not.active": "Paskolos sąskaita nėra aktyvi",
"label.tooltip.marketprice": "Kiekvienos akcijos kaina",
"label.input.paymentdate": "Mokėjimo data",
"label.heading.dashboard": "Prietaisų Skydelis",
"label.heading.home": "Pradžia",
@ -362,7 +376,7 @@
"label.heading.fullname": "Pavadinimas",
"label.heading.mifosxclient": "Mifos X Klientas",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X yra atnaujintas",
"label.heading.uptodate": " yra atnaujintas",
"label.heading.resources": "Resursai",
"label.heading.community": "Bendruomenė",
"label.heading.contribute": "Prisidėti",
@ -445,7 +459,6 @@
"label.unassigned": "Nepriskirta",
"label.searchorpress": "Spustelėkite ant arba paspauskite alt+x Paieškai",
"label.search.query.matched.results.exceeds.max.length": "Paieškos užklausa gražino daugiau nei 200 įrašų, rodomi pirmi 200.",
"label.heading.address": "Adresas",
"label.heading.uniqueidentification": "Unikalus ID #",
"label.heading.identitydocs": "Asmens Tapatybės Dokumentai",
"label.heading.filename": "Failo Pavadinimas",
@ -477,7 +490,6 @@
"label.input.selectclientimage": "Pasirinkti kliento vaizdą",
"label.input.selectfile": "Pasirinkti failą",
"label.input.documenttype": "Dokumento Tipas",
"label.input.status": "Būsena",
"label.input.uniqueidentification": "Unikalus ID #",
"label.input.mobilenumber": "Mobilaus telefono numeris",
"label.input.client.activationdate": "Aktyvavimo data",
@ -564,7 +576,6 @@
"label.heading.addmember": "Pridėti Narį",
"label.heading.addrole": "Pridėti Vaidmenį",
"label.heading.repeatdetails": "Kartoti Informaciją",
"label.heading.meetingdetails": "Susitikimo Informacija",
"label.heading.creategroup": "Kurti Grupę",
"label.heading.editgroup": "Redaguoti Grupę",
"label.heading.managemembers": "Tvarkyti Narius",
@ -702,7 +713,6 @@
"label.heading.financial.activity.type": "Finansinė Veikla",
"label.heading.financial.activity.account.name": "Sąskaitos Pavadinimas",
"label.heading.transferredfrom": "Pervesta Iš",
"label.heading.createdby": "Sukūrė",
"label.heading.createdon": "Sukurta",
"label.heading.journalentry.created": "Žurnalo Įrašas Sukurtas",
"label.heading.viewreport": "Žiūrėti ataskaitą",
@ -753,7 +763,6 @@
"label.input.smsprovider": "SMS Teikėjas",
"journalEntryType.credit": "Kreditas",
"journalEntrytType.debit": "Debetas",
"label.button.addAddress": "Pridėti Adresą",
"label.button.listview": "Sąrašo Rodinys",
"label.button.treeview": "Medžio Rodinys",
"label.button.addaccount": "Pridėti Sąskaitą",
@ -875,7 +884,6 @@
"label.heading.configurableAttributes": "Konfigūruojamos Sąlygos ir Nustatymai",
"label.heading.rescheduleloan": "Perplanuoti paskolą",
"label.heading.reschulerequest": "Atidėti Prašymą#",
"label.heading.campaign": "Kampanija",
"label.anchor.viewloanaccount": "Žiūrėti Paskolos Sąskaitą",
"label.anchor.repaymentinfo": "Grąžinimo Informacija",
"label.anchor.backtoloaninfo": "Grįžti prie paskolos informacijos",
@ -895,7 +903,6 @@
"label.input.centertotal": "Iš viso Centro",
"label.input.relationship": "Ryšiai",
"label.input.address": "Adresas",
"label.input.city": "Miestas",
"label.input.zip": "Zip",
"label.input.mobile": "Mobilusis",
"label.input.residence": "Gyvenamosios vietos telefonas #",
@ -1025,7 +1032,7 @@
"label.heading.activatedon": "Aktyvuota",
"label.heading.minRequiredBalance": "Minimalus balansas",
"label.heading.marketprice": "Rinkos Kaina",
"label.heading.shareapplication": "Akcijų Paraiška",
"label.heading.shareapplication": "Naujų Akcijų Paraiška",
"label.heading.approveshareaccount": "Patvirtinti Akcijų Sąskaitą",
"label.heading.rejectshareaccount": "Atmesti Akcijų Sąskaitą",
"label.heading.activateshareaccount": "Aktyvuoti Akcijų Sąskaitą",
@ -1090,7 +1097,6 @@
"label.account.closed.on.date": "Uždarymo Data",
"label.tooltip.currency": "Valiuta, kuri turi būti naudojama",
"label.tooltip.capitalvalue": "Visa Kapitalo Vertė",
"label.tooltip.marketprice": "Kiekvienos akcijos kaina",
"label.tooltip.interestcalculatedusing": "Metodas, naudojamas apskaičiuoti palūkanas",
"label.tooltip.fixeddepositproduct.calcmethod": "Metodas, naudojamas apskaičiuoti palūkanas.",
"savings.interest.rate.savingsPeriodFrequencyType.days": "Per dieną",
@ -1176,7 +1182,7 @@
"validation.msg.savingsaccount.transaction.invalid.account.is.not.active": "Pavedimas neleidžiamas. Sąskaita nėra aktyvi.",
"validation.msg.savingsaccount.transaction.not.allowed.transaction.date.is.on.holiday": "Pavedimas neleidžiamas per šventes.",
"validation.msg.savingsaccount.transaction.not.allowed.transaction.date.is.a.nonworking.day": "Pavedimas neleidžiamas ne darbo dieną.",
"validation.msg.savingsaccount.transaction.before.submittedOnDate": "Pavedimo data negali būti prieš sąskaitos pateikimo datą `{{params[1].value}}`.",
"validation.msg.savingsaccount.transaction.before.submittedOnDate": "Pavedimo data negali būti ankstesnė už sąskaitos pateikimo datą `{{params[0].value}}`.",
"validation.msg.savingsaccount.transaction.before.activationDate": "Pavedimo data negali būti prieš sąskaitos aktyvavimo datą `{{params[1].value}}`.",
"validation.msg.savingsaccount.transaction.is.futureDate": "Pavedimo data negali būti ateityje.",
"validation.msg.recurringdepositaccount.submittedOnDate.cannot.be.blank": "Pateikimo data yra privaloma.",
@ -1196,12 +1202,10 @@
"label.heading.roles": "Vaidmenys",
"label.anchor.users": "Vartotojai",
"label.anchor.createuser": "Sukurti Vartotoją",
"label.anchor.editpermissions": "Redaguoti Leidimus",
"label.anchor.edituser": "Redaguoti Vartotoją",
"label.anchor.globalconfigurations": "Globalios Konfigūracijos",
"label.anchor.editconfiguration": "Redaguoti Konfigūraciją",
"label.input.username": "Vartotojo vardas",
"label.input.email": "El. paštas",
"label.input.autogeneratepassword": "Automatiškai generuoti slaptažodį",
"label.input.password": "Slaptažodis",
"label.input.repeatpassword": "Pakartoti slaptažodį",
@ -1286,6 +1290,7 @@
"error.msg.holiday.duplicate.name": "šventės pavadinimas `{{params[0].value}}` jau egzistuoja.",
"validation.msg.holiday.offices.cannot.be.blank": "Prašome pasirinkti ofisą.",
"error.msg.currency.currencyCode.inUse": "Valiuta, kuria bandote pašalinti, yra naudojama",
"validation.msg.invalid.dateFormat.format": "Prašome įvesti tinkamą datą",
"validation.msg.tax.component.percentage.is.greater.than.max": "Procentas turėtų būti mažiau nei 100",
"validation.msg.tax.group.taxComponents.not.greater.than.zero": "Mokesčio komponentai privalo egzistuoti",
"validation.msg.tax.group.component.dates.are.overlapping": "Mokesčio komponento datos sutampa",
@ -1295,7 +1300,6 @@
"label.heading.addcode": "Pridėti Kodą",
"label.heading.codename": "Kodo Pavadinimas",
"label.heading.events": "Įvykiai",
"label.heading.isactive": "Aktyvus?",
"label.heading.entityname": "Objekto Pavadinimas",
"label.heading.actionname": "Veiksmo Pavadinimas",
"label.heading.ugdtemplatename": "UGD Šablono Pavadinimas",
@ -1349,10 +1353,10 @@
"label.anchor.addressConfiguration": "Adreso konfigūracija",
"label.anchor.fieldconfiguration": "Subjekto Lauko Konfigūracija",
"label.input.addressType": "Adreso Tipas",
"label.input.street": "Gatvė",
"label.input.addressline1": "Adreso 1 Eilutė",
"label.input.addressline2": "Adreso 2 Eilutė",
"label.input.addressline3": "Adreso 3 Eilutė",
"label.input.street": "Gatvė",
"label.input.town_village": "Miestas / Kaimas",
"label.input.county_district": "Apskritis / Rajonas",
"label.input.state_province": "Valstija / Provincija",
@ -1360,7 +1364,6 @@
"label.input.latitude": "Platuma",
"label.input.longitude": "Ilguma",
"label.input.entity": "Subjektas",
"label.input.alias": "Kiti vardai",
"label.input.type": "Tipas",
"label.input.templatename": "Šablono pavadinimas",
"label.input.ugdtemplate": "UGD Šablonas",
@ -1420,6 +1423,7 @@
"label.button.createcampaign": "Kurti Kampaniją",
"chargeAppliesTo.client": "Klientas",
"validation.msg.loanproduct.shortName.cannot.be.blank": "Shortname negali būti tuščias.",
"validation.msg.loanproduct.maximumGap.not.greater.than.specified.number": "Didžiausias tarpas turėtų būti didesnis nei nurodyta (minimali) vertė.",
"label.input.selectedproducts": "Atrinkti produktai",
"label.input.allproducts": "Visi produktai",
"label.heading.toclient": "Klientui",

File diff suppressed because it is too large Load Diff

View File

@ -1,17 +1,22 @@
{
"@metadata": {
"authors": [
"Bada Kaji",
"Drjpoudel",
"Mensun",
"Nirajan pant",
"Nirjal stha",
"Yalu",
"जनक राज भट्ट",
"पर्वत सुबेदी",
"बडा काजी",
"राम प्रसाद जोशी",
"सरोज कुमार ढकाल",
"Nirajan pant",
"Drjpoudel",
"Mensun"
"हिमाल सुबेदी"
]
},
"label.heading.totalshares": "कूल शेयरहरू",
"label.heading.collaterals": "धितोहरू",
"label.heading.sharenominalprice": "साङ्केतिक/एकाई मूल्य",
"label.heading.totalsharestobeissued": "जारी गर्नु पर्ने कुल शेयरहरू",
"label.heading.sharecapitalvalue": "कुल शेयरहरूको पूंजीगत मुल्य",
@ -47,7 +52,7 @@
"label.heading.type": "प्रकार",
"label.heading.category": "श्रेणी",
"label.heading.balance": "बचत",
"label.heading.viewreceipts": "रसिद हेर्न",
"label.heading.viewreceipts": "रसिद हेर्नुहोस्",
"label.heading.savingaccount": "बचत खाता",
"label.heading.description": "वर्णन",
"label.heading.shortname": "छोटो नाम",
@ -57,7 +62,7 @@
"label.heading.upcomingcharges": "आउँदो शुल्कहरू",
"label.heading.savingsaccoverview": "बचत खाता अवलोकन",
"label.heading.members": "सदस्यहरू",
"label.heading.confirm": "निश्चित गर्न",
"label.heading.confirm": "निश्चित गर्नुहोस्",
"label.heading.attendance": "हाजिरी",
"label.heading.comments": "टिप्पणीहरू",
"label.heading.id": "आईडी(ID)",
@ -167,6 +172,12 @@
"label.heading.preview": "पूर्वावलोकन",
"label.heading.messagedetails": "सन्देशकाे विवरणहरू",
"label.heading.campaignMessage": "अभियान सन्देश",
"label.heading.editsmscampaign": "SMS अभियान सम्पादन गर्ने",
"label.heading.meetingdetails": "सभा विवरणहरू",
"label.heading.address": "ठेगाना",
"label.heading.createdby": "निर्माणकर्ता",
"label.heading.campaign": "अभियान",
"label.heading.isactive": "स्थिति",
"label.menu.selectloanofficer": "कर्मचारी छान्नुहोस्",
"label.menu.selectone": "एक छान्नुहोस",
"label.menu.constitution": "संविधान चुन्ने",
@ -180,6 +191,10 @@
"label.anchor.assignstaff": "कर्मचारी छुट्याउनुहाेस्",
"label.anchor.activate": "सक्रिय पार्नुहोस्",
"label.anchor.updatedefaultaccount": "पूर्वनिर्धारित बचत खात अद्यावधिक गर्नुहाेस्",
"label.anchor.importclients": "सेवाग्राहीहरु",
"label.anchor.importcenters": "केन्द्रहरू",
"label.anchor.importoffices": "कार्यालयहरू",
"label.anchor.editpermissions": "अनुमतिहरू सम्पादन गर्नुहोस्",
"label.input.name": "नाम",
"label.input.firstname": "नाम",
"label.input.lastname": "थर",
@ -246,14 +261,17 @@
"label.input.campaignMessage": "अभियान सन्देश",
"label.input.isStaff": "कर्मचारी हाे ?",
"label.nextrepaymentdate": "अर्काे पुण भुक्तानी मिति",
"label.input.status": "स्थिति",
"label.input.city": "नगर",
"label.input.email": "इमेल",
"label.button.previous": "अघिल्लो",
"label.button.next": "अर्को",
"label.button.save": "बुझाउने",
"label.button.searchdata": "डाटा खोज्ने",
"label.button.cancel": "रद्द गर्ने",
"label.button.edit": "सम्पादन गर्न",
"label.button.edit": "सम्पादन गर्नुहोस्",
"label.button.delete": "मेट्ने",
"label.button.confirm": "निश्चित गर्न",
"label.button.confirm": "निश्चित गर्नुहोस्",
"label.button.unassignstaff": "कर्मचारीको यसमा गरिएको नियुक्ति हटाउने",
"label.button.assignstaff": "कर्मचारीको यसमा नियुक्ति गर्ने",
"label.button.close": "बन्द गर्ने",
@ -266,7 +284,7 @@
"label.button.newcharge": "शुल्क जोड्ने",
"label.button.accepttransfer": "सरुवा स्विकार्ने",
"label.button.rejecttransfer": "सरुवा अस्विकार गर्ने",
"label.button.undotransfer": "सरुवा पूर्ववत(अन्डू) गर्ने",
"label.button.undotransfer": "सरुवा रद्द गर्नुहोस्",
"label.button.deleteall": "सबै मेटाउने",
"label.button.add": "थप्नुहोस्",
"label.button.back": "पछाडि",
@ -298,6 +316,7 @@
"label.button.dividends": "लाभांशहरू",
"label.button.postdividends": "लाभांशहरू प्रविष्ट गर्नुहोस्",
"label.button.proceed": "अगाडि बढ्नुहोस्",
"label.button.addAddress": "ठेगाना थप गर्ने",
"label.uniquelyidentifiedwithid": "Id ले अद्वितिय पहिचाण गरेकाे",
"label.belongsto": "सँग सम्बन्धित",
"label.memberof": "को सदस्य:",
@ -324,6 +343,8 @@
"label.relVersion": "रिलिज संस्करण :",
"label.select": "एक विकल्प चुन्नुहोस",
"label.delete": "मेट्ने",
"label.selectentity": "एकई चुन्ने",
"label.selectaction": "कार्य छान्ने",
"label.error": "त्रुटि",
"error.login.failed": "कृपया फेरी प्रयास गर्नुहोस, तपांईले पेश गर्नुभएको जानकारी विधिमान्य भएन ।",
"error.connection.failed": "सरभर संग सम्बन्ध राख्न सकेन । सहि विकल्पहरू प्रयोग भएको निश्चय गर्नुहोस ।",
@ -416,11 +437,13 @@
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "ऋण पूर्णरुपले पुनःभुक्तानि गरेको मिति, ग्राहाक सरुवा गरेको यो मिति ({{params[0].value}}) भन्दा पहिले हुन सक्दैन",
"error.msg.loan.repayment.or.waiver.account.is.not.active": "ऋण खाता सक्रिय छैन",
"validation.msg.floatingrate.ratePeriods.cannot.be.empty": "अस्थायी दर अवधि खालि हुन सक्दैन",
"validation.msg.floatingrate.fromDate.is.less.than.date": "अस्थिर(तैर) दर अवधिहरूको ुरु मिति आजको मिति भन्दा अधिक हुन आवश्यक छ",
"validation.msg.floatingrate.fromDate.is.less.than.date": "अस्थिर(तैर) दर अवधिहरूको ुरु मिति आजको मिति भन्दा अधिक हुन आवश्यक छ",
"validation.msg.floatingrate.isBaseLendingRate.baselendingrate.duplicate": "उधारो दर आधार पहिलेनै परिभाषित छ",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.no.baselending.rate.defined": "उधारो दर आधार राखेको छैन",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.cannot.be.true.for.baselendingrate": "अस्थायी दर चिनो लगाइएको उधारो दर आधारमा isDifferentialToBaseLendingRate लाई \"हो\" भन्न मिल्दैन",
"validation.msg.batch.jlg.no.clients.defined": "याे request काे लागि कुनै पनि सेवाग्राही select भएन",
"label.tooltip.incomefromfees": "कुनै आम्दानी खाता, जसमा खाताधनिले यसमा शुल्क भुक्तानी गरेकोबेला क्रेडिट गरिन्छ",
"label.tooltip.incomefrompenalties": "कुनै आम्दानी खाता जसमा खाताधनिले यसमा जरिमाना भुक्तानी गरेकोबेला क्रेडिट गरिन्छ",
"label.heading.waiveloancharge": "ऋण शुल्क छुट गर्ने",
"label.heading.payloancharge": "ऋण दस्तुर तिर्ने",
"label.anchor.paycharge": "दस्तुर तिर्ने",
@ -456,7 +479,7 @@
"label.heading.uptodate": "Mifos X अद्यावधिक छ",
"label.heading.resources": "स्रोतसाधनहरू",
"label.heading.community": "समुदाय",
"label.heading.contribute": "योगदान गर्न",
"label.heading.contribute": "योगदान गर्नुहोस्",
"label.heading.amountdisbursedfortoday": "आजको संवितरित मात्रा",
"label.heading.loginname": "प्रवेश नाम",
"label.heading.userprofile": "प्रयोगकर्ताको Profile",
@ -473,7 +496,7 @@
"label.heading.saveorsubmit": "फारमहरू Save/पेश गर्ने",
"label.heading.cancel": "रद्द गर्ने",
"label.heading.runreport": "प्रतिवेदन run गर्नुहोस",
"label.heading.logout": "लग आउट",
"label.heading.logout": "निर्गमन",
"label.heading.search": "खोज्नुहोस्",
"label.heading.help": "सहायता",
"label.heading.language": "भाषा",
@ -485,7 +508,7 @@
"label.anchor.loginpage": "प्रवेश पृष्ठ",
"label.anchor.manageusers": "प्रयोगकर्ताहरूको प्रशासन गर्नुहोस्",
"label.anchor.manageroles": "भुमिका प्रबन्ध गर्नुहोस्",
"label.anchor.logout": "साइन आउट",
"label.anchor.logout": "निर्गमन",
"label.anchor.home": "गृह",
"label.anchor.all": "सबै",
"label.anchor.loans": "ऋणहरू",
@ -494,16 +517,14 @@
"label.anchor.admin": "एड्मिन",
"label.anchor.reports": "प्रतिवेदनहरू",
"label.anchor.profile": "प्रोफाइल",
"label.anchor.settings": "सेटिङ्गहरू",
"label.anchor.settings": "मेरो अभिरुचिहरू",
"label.anchor.navigation": "navigation",
"label.anchor.dashhome": "डयाश गृह",
"label.anchor.collectionsheet": "संकलन पत्र",
"label.anchor.client": "सेवाग्राही",
"label.anchor.importclients": "सेवाग्राहीहरु",
"label.anchor.importemployees": "कर्मचारीहरु Import गर्नुहाेस",
"label.anchor.importemployees": "कर्मचारीहरू आयात गर्नुहोस्",
"label.anchor.group": "समूह",
"label.anchor.center": "केन्द्र",
"label.anchor.importcenters": "केन्द्रहरू",
"label.anchor.frequentpostings": "बारम्बार गर्नुपर्ने पाेष्टिङ्गहरु",
"label.anchor.addjournalentries": "जर्नल प्रविष्टि थप्नुहोस",
"label.anchor.closingentries": "समापन प्रविष्टिहरू",
@ -559,10 +580,8 @@
"label.button.day": "दिन",
"label.button.signin": "प्रवेश गर्ने",
"label.button.resetPassword": "पसवर्ड पुनः तोक्नुहोस",
"label.button.viewpermissions": "अनुमतिहरू हेर्ने",
"label.button.viewpermissions": "अधिकारहरू हेर्नुहोस्",
"label.youneedtologintoaccessthisarea": "यो क्षेत्रमा प्रवेस गर्ने अधिकार पाउन लगइन गरेको हुन पर्छ",
"label.selectaction": "कार्य छान्ने",
"label.selectentity": "एकई चुन्ने",
"label.selectugdtemplate": "UGD टेम्प्लेट चुन्ने",
"label.nodata": "डाटा छैन",
"label.notactivated": "सक्रिय नभैसकेको",
@ -570,7 +589,6 @@
"label.searchorpress": "खोज्नको लागि किल्क गर्नुहोस वा alt+x थिच्नुहोस",
"label.search.query.matched.results.exceeds.max.length": "खोज प्रश्नले निकालेको रेकर्डहरुको परिणाम २०० भन्दा बढ्ता भयो, पहिलो २०० रेकर्डहरू देखाइदै ।",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "केन्द्र/समूह को परिभाषित नभएको वैठककाे संकलन पत्र निकाल्न मिल्दैन",
"label.heading.address": "ठेगाना",
"label.heading.familymembers": "परिवारका सदस्यहरु",
"label.heading.identities": "पहिचानहरू",
"label.heading.uniqueidentification": "अद्वितिय ID #",
@ -600,7 +618,7 @@
"label.anchor.createclient": "नया सेवाग्राही थप गर्ने",
"label.anchor.viewclient": "सेवाग्राही हेर्ने",
"label.anchor.transferclient": "सेवाग्राही सरुवा गर्ने",
"label.anchor.editclient": "सेवाग्राही सम्पादन गर्न",
"label.anchor.editclient": "सेवाग्राही सम्पादन गर्नुहोस्",
"label.anchor.uploaddocument": "कागजात अप्लोड गर्ने",
"label.anchor.addclientidentities": "सेवाग्राहीकाे परिचय खुल्ने विवरण राख्ने",
"label.anchor.clientscreenreport": "ग्राहाक जांच रिपोर्ट",
@ -615,7 +633,6 @@
"label.input.selectclientimage": "सेवाग्राहीको फोटो चुन्ने",
"label.input.selectfile": "फाइल चुन्ने",
"label.input.documenttype": "डकुमेन्टकाे स्थिति",
"label.input.status": "स्थिति",
"label.input.uniqueidentification": "अद्वितिय ID #",
"label.input.mobilenumber": "मोवाइल नम्बर",
"label.input.client.activationdate": "सक्रिय गरिएको मिति",
@ -729,9 +746,7 @@
"label.heading.addmember": "सदस्य बनाउनुहोस",
"label.heading.addrole": "भूमिका बनाउनुहोस",
"label.heading.viewsmscampaign": "संदेश अभियान हेर्नुहोस्",
"label.heading.editsmscampaign": "SMS अभियान सम्पादन गर्ने",
"label.heading.repeatdetails": "विवरणहरू दोहोर्याउनुहोस",
"label.heading.meetingdetails": "सभा विवरणहरू",
"label.heading.creategroup": "समूह बनाउनुहोस",
"label.heading.editgroup": "समूह सम्पादन गर्नुहोस",
"label.heading.managemembers": "सदस्यहरू व्यवस्थापन गर्नुहोस",
@ -876,7 +891,7 @@
"label.heading.closurecreationdate": "समापन बनाइएको मिति",
"label.heading.transactionnumber": "कारोवार संख्या",
"label.heading.parentaccountname": "अभिभावक खाता नाम",
"label.heading.tag": "ट्याग",
"label.heading.tag": "चिनो",
"label.heading.accountusage": "खाता उपयोग",
"label.heading.viewaccounttransferdetails": "खाता सरुवा विवरण हेर्नुहोस",
"label.heading.transactiondetails": "कारोवार बेहोरा",
@ -900,7 +915,6 @@
"label.heading.financial.activity.type": "वित्तीय गतिविधि",
"label.heading.financial.activity.account.name": "खाता नाम",
"label.heading.transferredfrom": "स्थानन्तरण स्रोत",
"label.heading.createdby": "निर्माणकर्ता",
"label.heading.createdon": "सृजना गरिएको मिति",
"label.heading.journalentry.created": "जर्नल प्रविष्टि सृजित",
"label.heading.viewreport": "प्रतिवेदन हेर्नुहोस",
@ -971,7 +985,7 @@
"label.input.selectaccountnameorcode": "खाता नाम वा कोड चयन गर्नुहोस",
"label.input.glcode": "साधारण वहिखाता कोड",
"label.input.accounttype": "खाताको प्रकार",
"label.input.tag": "ट्याग",
"label.input.tag": "चिनो",
"label.input.accountusage": "खाता उपयोग",
"label.input.parent": "अविभावक",
"label.input.manualentriesallowed": "हस्त प्रविष्टिहरु राख्न अनुमति प्राप्त",
@ -989,7 +1003,6 @@
"label.input.smsprovider": "SMS प्रदायक",
"journalEntryType.credit": "क्रेडिट",
"journalEntrytType.debit": "डेबिट",
"label.button.addAddress": "ठेगाना थप गर्ने",
"label.button.addfamilymember": "परिवारको सदस्य थप्नुहोस्",
"label.button.listview": "सूची रुप",
"label.button.treeview": "हांगे रुप",
@ -1019,9 +1032,9 @@
"label.alloffice": "सबै कार्यालयहरू",
"label.selectoffice": "कार्यालय चयन गर्नुहोस",
"label.selecttag": "ट्याग चयन गर्नुहोस",
"label.selectparent": "अभिभावक चयन गर्नुहोस",
"label.selectparent": "अभिभावक चयन गर्नुहोस",
"label.selectaccountingrule": "लेखा नियम चयन गर्नुहोस",
"label.selectcurrency": "मुद्रा चयन गर्नुहोस",
"label.selectcurrency": "मुद्रा चयन गर्नुहोस",
"label.selectcredit": "क्रेडिट चयन गर्नुहोस",
"label.selectdebit": "डेविट चयन गर्नुहोस",
"label.selectfilter": "फिल्टर चयन गर्नुहोस",
@ -1142,14 +1155,14 @@
"label.selectallowedparameter": "स्विकृत मापदण्ड चयन गर्नुहोस",
"startDateSelect": "आरम्भ मिति",
"endDateSelect": "समापन मिति",
"obligDateTypeSelect": "समापन वा संवितरण मिति चयन गर्नुहोस",
"OfficeIdSelectOne": "कार्यालय चयन गर्नुहोस",
"loanOfficerIdSelectAll": "ऋण कर्मचारी चयन गर्नुहोस",
"currencyIdSelectAll": "मुद्रा चयन गर्नुहोस",
"fundIdSelectAll": "पूंजी चयन गर्नुहोस",
"obligDateTypeSelect": "समापन वा संवितरण मिति चयन गर्नुहोस",
"OfficeIdSelectOne": "कार्यालय चयन गर्नुहोस",
"loanOfficerIdSelectAll": "ऋण कर्मचारी चयन गर्नुहोस",
"currencyIdSelectAll": "मुद्रा चयन गर्नुहोस",
"fundIdSelectAll": "पूंजी चयन गर्नुहोस",
"loanProductIdSelectAll": "ऋण सेवा चुन्ने",
"loanPurposeIdSelectAll": "ऋण उद्देश्य चयन गर्नुहोस",
"parTypeSelect": "PAR प्रकार चयन गर्नुहोस",
"loanPurposeIdSelectAll": "ऋण उद्देश्य चयन गर्नुहोस",
"parTypeSelect": "PAR प्रकार चयन गर्नुहोस",
"validation.msg.report.reportName.cannot.be.blank": "प्रतिवेदन नाम प्रविष्टि भएको हुन जरुरी छ",
"validation.msg.report.reportType.cannot.be.blank": "प्रतिवेदन प्रकार प्रविष्टि भएको हुन जरुरी छ",
"validation.msg.report.reportType.is.not.one.of.expected.enumerations": "प्रतिवेदन प्रकार अमान्य भयो",
@ -1182,11 +1195,10 @@
"label.heading.guarantor": "जिम्मेवार इकाइ",
"label.heading.createguarantor": "जिम्मेवार इकाइ बनाउनुहोस",
"label.heading.editloanaccount": "ऋण खाता सम्पादन गर्नुहोस",
"label.heading.collaterals": "धितो",
"label.heading.value": "मान",
"label.heading.loanamountandbalance": "ऋण मात्रा र मौज्दात",
"label.heading.totalcostofloan": "ऋणको कूल लागत",
"label.heading.days": "दिनहरू",
"label.heading.days": "दिन",
"label.heading.disbursement": "संवितरण",
"label.heading.principaldue": "मूलधन बक्यौता",
"label.heading.principalbalance": "मूलधन मौज्दात",
@ -1261,7 +1273,7 @@
"label.heading.installmenttotals": "कूल किस्ता रकम",
"label.heading.onprincipalpayment": "मूलधन भुक्तानीमा",
"label.heading.oninterestpayment": "ब्याज भुक्तानीमा",
"label.heading.editloanaccounttransaction": "कारोवार सम्पादन गर्न",
"label.heading.editloanaccounttransaction": "कारोवार सम्पादन गर्नुहोस्",
"label.heading.viewcollateral": "धितो हेर्नुहोस",
"label.heading.loanscreenreport": "ऋण जांच प्रतिवेदन",
"label.heading.interesttype": "ब्याज प्रकार",
@ -1282,7 +1294,6 @@
"label.heading.isTopup": "टपअप ऋण हो?",
"label.heading.loanIdToClose": "टपअप संग ऋण समापन भयो",
"label.heading.topupAmount": "टपअप समापन मात्रा",
"label.heading.campaign": "अभियान",
"label.menu.rescheduleReason": "पुनः अनुसूची कारण चयन गर्नुहोस",
"label.anchor.viewloanaccount": "ऋण खाता हेर्नुहोस",
"label.anchor.addloancharge": "ऋण शुल्क थप्नुहोस",
@ -1332,7 +1343,6 @@
"label.input.relationship": "सम्बन्ध",
"label.input.dob": "जन्म मिति",
"label.input.address": "ठेगाना",
"label.input.city": "नगर",
"label.input.zip": "जीप(डाक)",
"label.input.mobile": "मोबाइल",
"label.input.residence": "निवासकाेे फोन नं",
@ -1426,11 +1436,9 @@
"label.tooltip.loanportfolio": "सम्पति खाता जसमा संवितरण गर्दा डेबिट गरिन्छ र मूलधन परिशोधन/अपलेखन गर्दा क्रेडिट गरिन्छ ।",
"label.tooltip.receivableinterest": "एक सम्पत्ति खाता जुन ब्याज प्रोद्भूत गर्न प्रयोग गरिन्छ",
"label.tooltip.receivablefees": "एक सम्पत्ति खाता जुन शुल्कहरू प्रोद्भूत गर्न प्रयोग गरिन्छ",
"label.tooltip.receivablepnalties": "एक सम्पत्ति खाता जुन जरिमानहरू प्रोद्भूत गर्न प्रयोग गरिन्छ",
"label.tooltip.receivablepenalties": "एक सम्पत्ति खाता जुन जरिमानहरू प्रोद्भूत गर्न प्रयोग गरिन्छ",
"label.tooltip.transfersinsuspense": "एक सम्पत्ति खाता जुन सरुवा भैरहेका ऋणहरूको पोर्टफोलियोहरू निगरानीमा राख्न निम्ति अनिश्चय खाताको रुपमा प्रयोग हुन्छ",
"label.tooltip.incomefrominterest": "एक सम्पत्ति खाता जुन ब्याज भुक्तानी समय क्रेडिट गरिन्छ",
"label.tooltip.incomefromfees": "कुनै आम्दानी खाता, जसमा खाताधनिले यसमा शुल्क भुक्तानी गरेकोबेला क्रेडिट गरिन्छ",
"label.tooltip.incomefrompenalties": "कुनै आम्दानी खाता जसमा खाताधनिले यसमा जरिमाना भुक्तानी गरेकोबेला क्रेडिट गरिन्छ",
"label.tooltip.recoverypayments": "कुनै आम्दानी खाता, जसमा चुक्ता पुनर्प्राप्ति गरेकोबेला क्रेडिट गरिन्छ",
"label.tooltip.loseswrittenoff": "खर्च खाता जसमा मूलधन अपलेखन गर्दा डेबिट गरिन्छ (साथै प्रोदभावी लेखांकनको खण्डमा ब्याज सम्बन्धित घटनाहरु, शुल्क र हर्जाना अपलेखन गर्दा डेबिट गरिन्छ)",
"label.tooltip.overpaymentliability": "कुनै दायित्व खाता, जसमा अधिक भुक्तानी भएकोबेला क्रेडिट गरिन्छ र ग्राहकलाई रकम फिर्ता गरेको बेला क्रेडिट गरिन्छ ।",
@ -1476,6 +1484,7 @@
"label.tooltip.days": "ऋण सेवाले पुर्वनिर्धारण गरेको",
"loanTransactionType.writeOff": "अपलेखन",
"loanStatusType.transfer.on.hold": "सरुवा पकडमा रहेको छ",
"loanStatusType.active": "सक्रिय",
"validation.msg.loan.productId.cannot.be.blank": "सेवा तोक्नु अनिवार्य छ ।",
"validation.msg.loan.productId.not.greater.than.zero": "चुनिएको सेवा अमान्य भयो ।",
"validation.msg.loan.charges.specific.loancharge.with.calculation.type.interest.not.allowed": "ब्याजको प्रतिशतको रुपमा खास नतिरेको मिति शुल्क , ब्याज पुनगणना कार्यान्वयन गर्न मिल्ने सेवाहरूसंग प्रयोग गर्न पाइदैन ।",
@ -1535,7 +1544,7 @@
"savings.interest.rate.savingsPeriodFrequencyType.weeks": "प्रति हप्ता",
"savings.interest.rate.savingsPeriodFrequencyType.months": "प्रति महिना",
"savings.interest.rate.savingsPeriodFrequencyType.years": "प्रति वर्ष",
"savings.lockin.savingsPeriodFrequencyType.days": "दिनहरू",
"savings.lockin.savingsPeriodFrequencyType.days": "दिन",
"savings.lockin.savingsPeriodFrequencyType.weeks": "हप्ताहरू",
"savings.lockin.savingsPeriodFrequencyType.months": "महिनाहरू",
"savings.lockin.savingsPeriodFrequencyType.years": "वर्षहरू",
@ -1563,6 +1572,10 @@
"savingsAccountTransactionType.withdrawalFee": "निकासी सुल्क",
"savingsAccountTransactionType.annualFee": "वार्षिक दस्तुर",
"savingsAccountStatusType.transfer.on.hold": "सरुवा पकडमा रहेको छ",
"recurring.deposit.frequency.periodFrequencyType.days": "दिन",
"recurring.deposit.frequency.periodFrequencyType.weeks": "हप्ताहरू",
"recurring.deposit.frequency.periodFrequencyType.months": "महिनाहरू",
"recurring.deposit.frequency.periodFrequencyType.years": "वर्षहरू",
"validation.msg.savingsaccount.interestPostingPeriodType.cannot.be.blank": "व्याज प्रविष्टि अवधि राख्न अनिवार्य छ ।",
"validation.msg.savingsaccount.close.closedOnDate.must.be.after.last.transaction.date": "कारोवार मिति तोक्दा बन्द मिति पश्चातको मिति हुन जरुरी छ ।",
"validation.msg.savingsaccount.transaction.transactionDate.cannot.be.blank": "कारोवार मिति अनिवार्य छ ।",
@ -1581,12 +1594,33 @@
"validation.msg.savingsaccount.undotransaction.results.in.balance.going.negative": "यो कारोवारले भविश्यमा खाता शेष नकारात्मक बनाउन सक्ने भएकोले यो कारोवार पूर्ववत(अन्डू) गर्न स्विकृत छ ।",
"error.msg.recurringaccount.transaction.in.the.future": "तोकिएको कारोवार मिति भविश्यमा हुन सक्तैन ।",
"error.msg.officeToAccountMapping.not.found": "यो `{{params[1].value}}` खाता प्रकारको लागि यो `{{params[0].value}}` id भएको कर्यालयको म्यापिङ छैन ।",
"label.heading.createuser": "प्रयोगकर्ता सृजना गर्ने",
"label.heading.permissions": "अनुमतिहरू",
"label.heading.edituser": "प्रयोगकर्ता सम्पादन गर्नुहोस्",
"label.heading.enabled": "सक्रिय?",
"label.heading.systemusers": "प्रणाली प्रयोगकर्ताहरू",
"label.heading.newuser": "नयाँ प्रयोगकर्ता",
"label.heading.familyname": "थर",
"label.heading.givenname": "नाम",
"label.heading.usersettings": "प्रयोगकर्ता अभिरुचिहरू",
"label.heading.email": "इमेल",
"label.heading.changepassword": "प्रवेश शब्द परिवर्तन गर्नुहाेस्",
"label.heading.roles": "भूमिकारहरू",
"label.heading.importtime": "आयात मिति",
"label.heading.endtime": "समाप्ति समय",
"label.heading.completed": "पूरा भयो",
"label.heading.successcount": "सफलता गन्ती",
"label.heading.failurecount": "असफलता गन्ती",
"label.heading.totalrecords": "कूल रेकर्डहरू",
"label.anchor.users": "प्रयोगकर्ताहरू",
"label.anchor.createuser": "प्रयोगकर्ता सृजना गर्ने",
"label.anchor.edituser": "प्रयोगकर्ता सम्पादन गर्नुहोस्",
"label.input.username": "प्रयोगकर्ता नाम",
"label.input.email": "इमेल",
"label.input.password": "पासवर्ड",
"label.input.repeatpassword": "पासवर्ड पुनः प्रविष्ट गर्नुहोस्",
"label.input.roles": "भूमिकाहरू",
"label.button.createuser": "प्रयोगकर्ता सृजना गर्ने",
"label.button.changepassword": "पासवर्ड परिवर्तन गर्नुहोस्",
"label.button.changepassword": "प्रवेश शब्द परिवर्तन गर्नुहाेस्",
"validation.msg.user.username.cannot.be.blank": "प्रयोगकर्ता नाम अनिवार्य छ ।",
"validation.msg.user.firstname.cannot.be.blank": "प्रथम नाम अनिवार्य छ।",
"validation.msg.user.lastname.cannot.be.blank": "थर अनिवार्य छ ।",
@ -1600,16 +1634,29 @@
"label.heading.editemployee": "कर्मचारी सम्पादन गर्नुहोस्",
"label.heading.editoffice": "कार्यलय सम्पादन गर्नुहोस्",
"label.heading.officeName": "कार्यलयको नाम",
"label.anchor.importoffices": "कार्यालयहरू",
"label.anchor.importusers": "प्रयोगकर्ताहरू",
"label.anchor.importgroups": "समूहहरू",
"label.anchor.importloanaccounts": "ऋण खाताहरू",
"label.anchor.importcoa": "खाताहरूको सूची",
"label.anchor.employees": "कर्मचारीहरू",
"label.anchor.importjournalentries": "जर्नल प्रविष्टिहरू",
"label.anchor.importshareaccounts": "शेयर खाताहरू",
"label.anchor.importguarantor": "जमानीहरू",
"label.anchor.organization": "संस्था",
"label.anchor.manageemployees": "कर्मचारी व्यवस्थापन गर्नुहोस्",
"label.anchor.createholiday": "बिदा सिर्जना गर्नुहोस्",
"label.anchor.editholiday": "बिदा सम्पादन गर्नुहोस्",
"label.anchor.createoffice": "कार्यलय थप्नुहोस्",
"label.button.importoffices": "कार्यलय आयात गर्नुहोस्",
"label.anchor.currencyconfig": "मुद्रा व्यवस्थापन",
"label.anchor.editcurrencyconfig": "मुद्रा व्यवस्थापन सम्पादन गर्नुहोस्",
"label.anchor.editemployee": "कर्मचारी सम्पादन गर्नुहोस्",
"label.anchor.editoffice": "कार्यलय सम्पादन गर्नुहोस्",
"label.anchor.managefunds": "मौज्दात व्यवस्थापन गर्नुहोस्",
"label.anchor.manageoffices": "कार्यलय व्यवस्थापन गर्नुहोस्",
"label.anchor.editrole": "भूमिका व्यवस्थापन गर्नुहोस्",
"label.anchor.fund.mapping": "कोष म्यापीङ",
"label.view.advance.search.fund.mapping": "कोष स्रोतहरूलाई ऋणहरूसंग म्यापिङको लागि थोक प्रविष्टि पृष्ठ",
"label.heading.isactive": "स्थिति",
"label.heading.position": "पद",
"label.heading.follow": "पछ्याउनुहोस्",
"label.heading.addnewmap": "नया एकाईको म्यापीङ थप्नुहोस",
@ -1625,6 +1672,7 @@
"transactionProcessingStrategyId": "कारोवार प्रशोधन रणनीति",
"clientIdentifierStatusType.inactive": "निस्क्रिय",
"clientIdentifierStatusType.active": "सक्रिय",
"label.button.refresh": "ताजा गर्नुहोस्",
"label.loan": "ऋण",
"label.client": "क्लाइन्ट",
"label.group": "समूह",
@ -1641,6 +1689,7 @@
"label.definemappings": "एकाई एकाई बिचको म्यापीङहरू(सम्बन्ध मिलान) परिभाषित वा सम्पादन गर्नुहोस",
"error.msg.duplicate.entity.mapping": "म्यापीङ विद्यमान एकाइको नकल भयो, यस्तो एकाई पहिलेनै परिभाषित छ",
"label.tooltip.global.allow-transactions-on-holiday": "छुट्टिको दिन हरुमा पनि कारोवार प्रविष्ट गर्न मिल्ने कि नमिल्ने निर्धारण गर्ने ।",
"label.heading.active": "सक्रिय",
"label.heading.incomefrominterest": "व्याजबाट अाम्दानी",
"label.heading.incomefromfees": "फि बाट अाम्दानी",
"label.heading.incomefrompenalties": "जरिवानाबाट अाम्दानी",
@ -1660,7 +1709,7 @@
"label.input.recalculateinterest": "व्याज पुन हिसाब गर्नुहाेस",
"label.input.variable.installments.allowed": "परिवर्तनिय किस्ताहरू स्विकृत",
"label.input.days": "दिनहरु",
"label.button.createcharge": "शुल्क सिर्जना गर्नुहाेस",
"label.button.createcharge": "शुल्क सिर्जना गर्नुहोस्",
"label.button.createloanproduct": "ऋण प्रडक्ट बनाउनुहाेस",
"label.button.createsavingproduct": "बचत प्रडक्ट बनाउनुहाेस",
"label.button.createshareproduct": "शेयर प्रडक्ट बनाउनुहाेस",
@ -1689,24 +1738,24 @@
"products": "सेवाहरू",
"createcenter": "केन्द्र बनाउनुहोस",
"centers": "केन्द्रहरू",
"viewsavingaccount": "बचत खाता हेर्नुहोस",
"viewsavingaccount": "बचत खाता हेर्नुहोस",
"savingaccount": "बचत खाता",
"audit": "लेखापरिक्षण गर्नुहाेस",
"audit": "लेखापरिक्षण गर्नुहोस्",
"entercollectionsheet": "संकलन पत्र",
"searchtransaction": "करोवार खोज",
"reports": "प्रतिवेदनहरु",
"createreport": "प्रतिवेदन बनाउनुहोस",
"holidays": "विदाहरु",
"createholiday": "बिदा सिर्जना गर्नुहाेस",
"createholiday": "बिदा सिर्जना गर्नुहोस्",
"groups": "समूहहरू",
"creategroup": "समूह बनाउनुहोस",
"addmember": "सदस्य बनाउनुहोस",
"groupattendance": "समुह हाजिर",
"addgroup": "समूह थप्नुहोस्",
"login": "प्रवेश गर्नुहाेस",
"login": "प्रवेश गर्नुहोस्",
"viewtransaction": "कारोवार हेर्ने",
"systemviewreport": "प्रतिवेदन हेर्नुहोस",
"editreport": "प्रतिवेदन सम्पादन गर्नुहोस",
"systemviewreport": "प्रतिवेदन हेर्नुहोस",
"editreport": "प्रतिवेदन सम्पादन गर्नुहोस",
"viewholiday": "विदा हेर्नुहोस्",
"viewsavingtrxntrxnId": "बचत कारोवार",
"navoffices": "नौपरिवहना",
@ -1724,6 +1773,7 @@
"label.anchor.editofficeglaccount": "कार्यालय र साधारण वहिखाताको म्यापिङको सम्पादन गर्नुहोस",
"label.anchor.viewofficeglaccount": "कार्यालय र साधारण वहिखाताको म्यापिङ हेर्नुहोस",
"error.msg.officeToAccountMapping.exists.for.office": "कार्यालयको साधारण वहिखाता म्यापिङ पहिलेनै छ",
"label.heading.guarantee.status": "स्थिति",
"label.anchor.onholdtransaction": "पकडमा रहेको कारोवार",
"label.heading.listonholdtransaction": "पकडमा रहेको मुद्दति खाता सम्बन्धित कारोवारहरू",
"label.button.viewtransactions": "कारोवारहरू हेर्ने",
@ -1731,6 +1781,8 @@
"label.heading.transactionType": "कारोबार प्रकार",
"label.anchor.cashiertransactions": "कारोबारहरू",
"label.button.viewtransaction": "कारोवार हेर्ने",
"label.heading.cashmgmt.tellerStatus": "स्थिति",
"label.input.teller.status": "स्थिति",
"label.button.cashier.showtxn": "कारोवार देखाउने",
"label.input.paymentsDueOnHolidays": "गैह्र कार्यदिनहरूमा रहेका बक्यौता रकमहरू",
"label.simple": "पासवर्डमा कम्तीमा १ अक्षर तथा बढीमा ५० अक्षर लामो हुनु पर्नेछ",
@ -1742,6 +1794,9 @@
"Active Loans in last installment Summary(Pentaho)": "पछिल्लो किस्तामा सक्रिय ऋणहरू सारांश(पेन्टाहो)",
"Savings Transactions": "बचत कारोवारहरू",
"RepaymentRescheduleType.same.day": "साही दिन",
"label.menu.status": "स्थिति",
"label.heading.notification": "सूचनाहरू",
"label.input.isactive": "स्थिति",
"label.heading.queryname": "नाम"
"label.heading.queryname": "नाम",
"label.heading.twofactor": "दुई चरण प्रामाणिकरण"
}

File diff suppressed because it is too large Load Diff

View File

@ -125,6 +125,9 @@
"label.heading.message": "Messatge",
"label.heading.preview": "Apercebut",
"label.heading.messagedetails": "Detalhs del messatge",
"label.heading.meetingdetails": "Detalhs de la reünion",
"label.heading.address": "Adreça",
"label.heading.createdby": "Creat per",
"label.menu.selectloanofficer": "Seleccionar lequipa",
"label.menu.selectone": "Ne seleccionar un",
"label.anchor.delete": "Suprimir",
@ -185,6 +188,9 @@
"label.input.constitution": "Constitucion",
"label.input.mainBusinessLine": "Principal sector dactivitat",
"label.input.remarks": "Remarcas",
"label.input.status": "Estat",
"label.input.city": "Vila",
"label.input.email": "Adreça electronica",
"label.button.previous": "Precedent",
"label.button.next": "Seguent",
"label.button.save": "Sometre",
@ -252,6 +258,8 @@
"label.relDate": "Data de publicacion Mifos X :",
"label.relVersion": "Version :",
"label.select": "-- Seleccionar --",
"label.selectentity": "Seleccionar una entitat",
"label.selectaction": "Seleccionar una accion",
"label.error": "Error",
"error.login.failed": "Ensajatz tornarmai, vòstras informacions d'identificacion son pas validas.",
"error.msg.command.unsupported": "Error de programacion : la comanda emesa es pas presa en carga.",
@ -405,12 +413,9 @@
"label.button.signin": "Se connectar",
"label.button.resetPassword": "Reïnicializar lo senhal",
"label.button.viewpermissions": "Afichar los dreits",
"label.selectaction": "Seleccionar una accion",
"label.selectentity": "Seleccionar una entitat",
"label.nodata": "Pas de donadas",
"label.notactivated": "Pas activat",
"label.unassigned": "Pas mai assignat",
"label.heading.address": "Adreça",
"label.heading.identities": "Identitats",
"label.heading.uniqueidentification": "# dID unic",
"label.heading.identitydocs": "Documents didentitat",
@ -442,7 +447,6 @@
"label.input.selectclientimage": "Seleccionar limatge del client",
"label.input.selectfile": "Seleccionar un fichièr",
"label.input.documenttype": "Tipe de document",
"label.input.status": "Estat",
"label.input.uniqueidentification": "# ID unic",
"label.input.mobilenumber": "Numèro de mobil",
"label.input.client.activationdate": "Data dactivacion",
@ -486,7 +490,6 @@
"label.heading.addmember": "Apondre un membre",
"label.heading.addrole": "Apondre un ròtle",
"label.heading.repeatdetails": "Detalhs sus las repeticions",
"label.heading.meetingdetails": "Detalhs de la reünion",
"label.heading.creategroup": "Crear un grop",
"label.heading.editgroup": "Modificar un grop",
"label.heading.managemembers": "Gerir los membres",
@ -594,7 +597,6 @@
"label.heading.financialactivity.accountmappings": "Comptes ligats a d'activitats financièras",
"label.heading.financial.activity.account.name": "Nom del compte",
"label.heading.transferredfrom": "Transferit dempuèi",
"label.heading.createdby": "Creat per",
"label.heading.createdon": "Creat lo",
"label.heading.entryid": "ID de lescritura",
"label.menu.filterbyoffice": "Filtrar per burèu",
@ -764,7 +766,6 @@
"label.input.relationship": "Relacion",
"label.input.dob": "Data de naissença",
"label.input.address": "Adreça",
"label.input.city": "Vila",
"label.input.zip": "Còdi postal",
"label.input.mobile": "Numèro de mobil",
"label.input.residence": "Numèro de telefòn del domicili",
@ -871,7 +872,6 @@
"label.anchor.edituser": "Modificar l'utilizaire",
"label.anchor.globalconfigurations": "Configuracions globalas",
"label.input.username": "Nom d'utilizaire",
"label.input.email": "Adreça electronica",
"label.input.password": "Senhal",
"label.input.repeatpassword": "Repetir lo senhal",
"label.input.selectroles": "Seleccionar los ròtles",
@ -921,5 +921,6 @@
"day.thursday": "Dijòus",
"day.friday": "Divendres",
"day.saturday": "Dissabte",
"day.sunday": "Dimenge"
"day.sunday": "Dimenge",
"label.collaterals": "Garantidas"
}

View File

@ -3,18 +3,53 @@
"authors": [
"Alan ffm",
"Faren",
"InternerowyGołąb",
"Kareyac",
"Lantuszka",
"Mayor",
"Mazab IZW",
"Pan Cube",
"Py64",
"Rail",
"Rzuwig",
"Stojex",
"Ty221",
"Py64"
"Woytecr"
]
},
"label.heading.totalshares": "Łączny udział",
"label.heading.sharenominalprice": "Cena nominalna / jednostkowa",
"label.heading.totalsharestobeissued": "Łączna liczba akcji do wyemitowania",
"label.heading.sharecapitalvalue": "Całkowita wartość kapitału tytułów uczestnictwa",
"label.heading.shareperclient": "Udziały na klienta",
"label.heading.minimumactiveperiod": "Minimalny okres aktywności",
"label.heading.suspenseaccount": "Konto przejściowe",
"label.heading.equityaccount": "Edycja konta",
"label.heading.allowdividendsforinactiveclients": "Zezwalaj na dywidendy dla nieaktywnych klientów",
"label.heading.name": "Nazwa",
"label.heading.alias": "Alias",
"label.heading.amountDue": "Do zapłaty",
"label.heading.cbid": "ID biura kredytowego",
"label.heading.country": "Państwo",
"label.heading.cbName": "Nazwa biura kredytowego",
"label.heading.cbproduct": "Produkt kredytu",
"label.heading.cbsummary": "Biuro kredytowe (nazwa-produkt-kraj)",
"label.heading.is_creditcheck_mandatory": "czy sprawdzenie kredytu jest obowiązkowe?",
"label.heading.skip_credit_check_in_failure": "pominąć sprawdzanie zdolności kredytowej w przypadku niepowodzenia?",
"label.heading.stale_period": "nieaktualny okres",
"label.heading.startdate": "Data rozpoczęcia",
"label.heading.enddate": "Data zakończenia",
"label.heading.is_active": "is_active",
"label.heading.accnum": "Konto #",
"label.heading.staff": "Personel",
"label.heading.office": "Biuro",
"label.heading.delete": "Usuń",
"label.heading.reject": "Odrzuć",
"label.heading.deleterole": "Usuń rolę",
"label.heading.disablerole": "Wyłącz rolę",
"label.heading.disabled": "Wyłączony",
"label.heading.enabledrole": "Włączony",
"label.heading.enablerole": "Włącz rolę",
"label.heading.unassignstaff": "Cofnij dopisanie pracowników",
"label.heading.assignstaff": "Dopisz pracowników",
"label.heading.general": "Ogólne",
@ -25,13 +60,27 @@
"label.heading.type": "Typ",
"label.heading.category": "Kategoria",
"label.heading.balance": "Saldo",
"label.heading.viewreceipts": "Wyświetl potwierdzenie",
"label.heading.savingaccount": "Konto oszczędnościowe",
"label.heading.description": "Opis",
"label.heading.transferId": "ID transakcji",
"label.heading.shortname": "Nazwa skrócona",
"label.heading.approve": "akceptuj",
"label.heading.glimloanaccount": "Nowy wniosek o pożyczkę GLIM",
"label.heading.glimloanaccoverview": "Przegląd konta kredytowego",
"label.heading.repaymentCollection": "Pobieranie spłaty",
"label.heading.repayment": "Pobieranie spłaty",
"label.heading.glimloanAccountNo": "Numer konta",
"label.heading.gsimId": "ID",
"label.heading.glimId": "ID",
"label.heading.gsimoverview": "Przegląd konta kredytowego",
"label.heading.gsimaccount": "Nowe konta GSIM",
"label.heading.actions": "Działania",
"label.heading.loanaccoverview": "Przegląd konta kredytowego",
"label.heading.upcomingcharges": "Nadchodzące obciążenia",
"label.heading.savingsaccoverview": "Przegląd konta oszczędnościowego",
"label.heading.fixedaccoverview": "Przegląd stałych depozytów",
"label.heading.recurringaccoverview": "Przegląd depozytów cyklicznych",
"label.heading.members": "Użytkownicy",
"label.heading.confirm": "Potwierdź",
"label.heading.attendance": "Frekwencja",
@ -63,6 +112,7 @@
"label.heading.paid": "Płatne",
"label.heading.waived": "Uchylony",
"label.heading.outstanding": "Wybitne",
"label.heading.installmentamount": "Kwota rat",
"label.heading.resourceid": "Identyfikator zasobów",
"label.heading.details": "Szczegóły",
"label.heading.identitydocuments": "Dokumenty tożsamości",
@ -77,22 +127,87 @@
"label.heading.notprovided": "Nie dostarczone",
"label.heading.notavailable": "Niedostępne",
"label.heading.next": "Paginacja: następna",
"label.heading.prev": "Paginacja: poprzednia",
"label.heading.prev": "Paginacja: Poprzednia",
"label.heading.provisioningcategory": "Kategoria",
"label.heading.minimumage": "Minimalny wiek",
"label.heading.maximumage": "Maksymalny wiek",
"label.heading.provisioningpercentage": "Procent",
"label.heading.provisioningliabilityaccount": "Rachunek zobowiązań",
"label.heading.provisioningexpenseaccount": "Konto wydatków",
"label.heading.provisioningamount": "Kwota aprowizacji",
"label.heading.rateperiods": "Okresy ze zmienną stopą procentową",
"label.heading.fromdate": "Od daty",
"label.heading.interestrate": "Oprocentowanie",
"label.heading.patternupdate": "Aktualizacja wzoru",
"label.input.between": "Pomiędzy",
"label.input.provisioningcriteria": "Kryteria udostępniania",
"label.input.floatingratename": "Nazwa zmiennej stawki",
"label.heading.count": "Liczba",
"label.heading.percentage": "Procent",
"label.heading.principal.outstanding": "Zleceniodawca wybitny",
"label.heading.interest.outstanding": "Wyjątkowe zainteresowanie",
"label.heading.interest.paid": "Wypłacane odsetki",
"label.heading.principal.repayment": "Główny opłacony",
"label.heading.arrears": "Zaległości w spłacie",
"label.heading.serviceType": "Typ usługi zewnętrznej",
"label.heading.reset": "Zresetuj",
"label.input.indays": "W dniach",
"label.input.liabilityaccount": "Rachunek zobowiązań",
"label.input.expenseaccount": "Konto wydatków",
"label.heading.pendingforapproval": "Akcje oczekujące na zatwierdzenie",
"label.heading.purchasedsharesoverview": "Przegląd transakcji",
"label.heading.purchasedorredeemedprice": "Cena kupna / umorzona",
"label.heading.linkedsavingsaccountnumber": "Powiązane konto oszczędnościowe (księgowanie dywidendy)",
"label.heading.applyadditionalshares": "Zastosuj dodatkowe udziały",
"label.heading.approveadditionalshares": "Zatwierdź dodatkowe udziały",
"label.heading.rejectadditionalshares": "Odrzuć dodatkowe udziały",
"label.heading.sharesapplication": "Udostępnij aplikację konta",
"label.heading.dividendperiodstartdate": "Data rozpoczęcia okresu dywidendy",
"label.heading.dividendperiodenddate": "Data zakończenia okresu",
"label.heading.dividendamount": "Kwota dywidendy",
"label.heading.shareequity": "Udostępnij kapitał",
"label.heading.dividends": "dywidendy",
"label.heading.savingtransactionreference": "Referencja transakcji",
"label.heading.amountreceivedorreturned": "Kwota otrzymana / zwrócona",
"label.heading.smsProvider": "SMS Provider",
"label.heading.templatemsg": "Szablon wiadomości",
"label.heading.campaigntype": "Typ kampanii",
"label.heading.triggertype": "Typ wyzwalacza",
"label.heading.approvedby": "Zaakceptowany przez",
"label.heading.message": "Wiadomość",
"label.heading.preview": "Podgląd",
"label.heading.messagedetails": "Szczegóły wiadomości",
"label.heading.businessRuleParameters": "Parametry reguł biznesowych",
"label.heading.templateparameters": "Dostępne parametry szablonów",
"label.heading.businessRule": "Reguła biznesowa",
"label.heading.campaignMessage": "Wiadomość kampanii",
"label.heading.selfserivceaccountactivated": "Aktywowano konto samoobsługowe",
"label.heading.editsmscampaign": "Edytuj kampanię SMS",
"label.heading.meetingdetails": "Szczegóły spotkania",
"label.heading.address": "Adres",
"label.heading.isactive": "Status",
"label.menu.selectloanofficer": "Wybierz pracowników",
"label.menu.selectone": "Wybierz jeden",
"label.menu.businessRule": "Wybierz regułę biznesową",
"label.anchor.delete": "Usuń",
"label.achor.activate": "Aktywuj",
"label.anchor.close": "Zamknij",
"label.anchor.assignstaff": "Dopisz pracowników",
"label.anchor.activate": "Aktywuj",
"label.anchor.updatedefaultaccount": "Aktualizacja domyślnego konta oszczędnościowego",
"label.anchor.importclients": "Klienci",
"label.anchor.importcenters": "Centrum",
"label.anchor.importoffices": "Biura",
"label.anchor.editpermissions": "Edytuj uprawnienia",
"label.input.name": "Nazwa",
"label.input.firstname": "Imię",
"label.input.lastname": "Nazwisko",
"label.input.middlename": "Drugie imię",
"label.input.qualification": "Kwalifikacja",
"label.input.mobileNumber": "Numer telefonu komórkowego",
"label.input.age": "wiek",
"label.input.fullname": "Nazwa",
"label.input.legalForm": "Forma prawna",
"label.input.accno": "Konto#",
"label.input.activationdate": "Data aktywacji",
"label.input.staff": "Pracownicy",
@ -103,6 +218,7 @@
"label.input.notes": "Uwagi",
"label.input.externalid": "Zewnętrzny identyfikator",
"label.input.active": "Aktywny",
"label.input.is_active": "jest aktywny ?",
"label.input.assignstaff": "Dopisz pracowników",
"label.input.closuredate": "Data zamknięcia",
"label.input.closurereason": "Powód zamknięcia",
@ -132,6 +248,14 @@
"label.input.dateofbirth": "Data narodzin",
"label.input.sqlSearch": "Wyszukiwanie SQL",
"label.input.transfertype": "Typ transferu",
"label.input.true": "Prawda",
"label.input.false": "Fałsz",
"label.input.repaymentdate": "Data płatności",
"label.input.resetconfirmationtext": "Czy chcesz usunąć wszystkie zmiany wprowadzone do tej pory i zresetować do pierwotnego harmonogramu?",
"label.input.incorporationdate": "Data przyłączenia",
"label.input.incorpNumber": "Numer rejestracji",
"label.input.incorpValidityTillDate": "Włączenie do daty ważności",
"label.input.constitution": "Instytucja",
"label.button.previous": "Poprzedni",
"label.button.next": "Następny",
"label.button.save": "Wyślij",
@ -176,6 +300,7 @@
"label.createdon": "Utworzono w dniu",
"label.areyousure": "Jesteś pewien?",
"label.requiredfield": "Pole wymagane",
"label.edit": "Edytuj",
"label.all": "Wszystko",
"currency.USD": "Dolar amerykański",
"currency.KES": "Szyling kenijski",
@ -185,12 +310,18 @@
"label.savesuccessfully": "Pomyślnie zapisane",
"label.nodatafound": "Nie znaleziono danych związanych z wpisanymi parametrami wyszukiwania.",
"label.mustbenumeric": "Musi być liczbą",
"label.usernameminfivechars": "Nazwa użytkownika musi mieć długość co najmniej 5 znaków.",
"label.passwordminsixchars": "Hasło musi mieć długość co najmniej 6 znaków.",
"label.percentage": "Procent",
"label.outstanding.amount": "Zaległe kwoty pożyczki",
"label.and": "i",
"label.message.password.expired": "Hasło jest wygasłe, zresetuj swoje hasło",
"label.today": "Dzisiaj",
"label.delete": "Usuń",
"label.selectentity": "Wybierz obiekt",
"label.selectaction": "Wybierz opcję",
"label.error": "Błąd",
"error.login.failed": "Proszę spróbować ponownie, poświadczenia nie są ważne",
"error.login.failed": "Proszę spróbować ponownie, dane logowania są nieprawidłowe.",
"error.msg.command.unsupported": "Błąd programisty: wydane polecenie nie jest obsługiwane.",
"error.msg.query.parameter.value.unsupported": "'{{params[1].value}}' nie jest obsługiwany jako wartość parametru kwerendy \"{{params[0].value}}\".",
"error.msg.not.authorized": "Brak wystarczających uprawnień do wykonania tej czynności.",
@ -273,11 +404,12 @@
"error.msg.loan.withdraw.cannot.be.before.client.transfer.date": "Data, w której kredyt został wycofany, nie może być wcześniejsza niż data przeniesienia klienta ({{params[0].value}})",
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": "Data, w której się odpisuje, nie może być wcześniejsza niż data przeniesienia klienta ({{params[0].value}})",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "Data, w której kredyt został spłacony w całości, nie może być wcześniejsza niż data przeniesienia klienta ({{params[0].value}})",
"---------": "------------",
"label.heading.waiveloancharge": "Odstąpić od kredytu za",
"label.heading.payloancharge": "Zapłacić za spłatę kredytu",
"label.anchor.paycharge": "Uiścić opłatę",
"label.input.paymentdate": "Data płatności",
"label.tooltip.charges.active.true": "Aktywny",
"label.tooltip.charges.active.false": "Nieaktywny",
"label.heading.dashboard": "Panel",
"label.heading.home": "Start",
"label.heading.welcome": "Witamy",
@ -303,10 +435,9 @@
"label.heading.lastname": "Nazwisko",
"label.heading.mifosxclient": "Mifos X Client",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X jest aktualizowany",
"label.heading.uptodate": "Mifos X jest aktualny",
"label.heading.resources": "Zasoby",
"label.heading.community": "Społeczność",
"label.heading.news": "Najnowsze wiadomości",
"label.heading.amountdisbursedfortoday": "Kwoty wydatkowane na dziś",
"label.heading.loginname": "Nazwa logowania",
"label.heading.userprofile": "Profil użytkownika",
@ -346,7 +477,7 @@
"label.anchor.settings": "Ustawienia",
"label.anchor.navigation": "Nawigacja",
"label.anchor.dashhome": "Dash Home",
"label.anchor.collectionsheet": "Arkusz kolekcji",
"label.anchor.collectionsheet": "Nazwa kolekcji",
"label.anchor.client": "Klient",
"label.anchor.group": "Grupa",
"label.anchor.center": "Centrum",
@ -355,12 +486,12 @@
"label.anchor.closingentries": "Wpisy zamknięcia",
"label.anchor.usermanual": "Instrukcja obsługi",
"label.anchor.functionalspec": "Cechy funkcjonalne",
"label.anchor.faq": "FAQ",
"label.anchor.usersgroup": "Grupa użytkowników",
"label.anchor.developergroup": "Deweloperska grupa",
"label.anchor.irc": "IRC",
"label.anchor.dashboard": "Panel",
"label.anchor.help": "Pomoc",
"label.anchor.about": "O",
"label.anchor.advsearch": "Wyszukiwanie zaawansowane",
"label.anchor.save": "Zapisz",
"label.input.searchbyuser": "Szukaj przez użytkownika",
@ -381,15 +512,12 @@
"label.button.resetPassword": "Resetuj hasło",
"label.button.viewpermissions": "Wyświetlanie uprawnień",
"label.youneedtologintoaccessthisarea": "Musisz się zalogować aby uzyskać dostęp do tego obszaru",
"label.selectaction": "Wybierz opcję",
"label.selectentity": "Wybierz obiekt",
"label.nodata": "Brak danych",
"label.notactivated": "Nie aktywowany",
"label.unassigned": "Nieprzypisany",
"label.searchorpress": "Kliknij aby podświetlić lub naciśnij alt+x żeby wyszukać",
"label.searchorpress": "Kliknij lub naciśnij alt+x żeby wyszukać",
"label.search.query.matched.results.exceeds.max.length": "Wyszukiwane zapytanie dało więcej niż 200 rekordów, pokazywanie pierwszych 200 wyników.",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "Zbiór arkuszy nie może być wygenerowany dla centrum/grupy bez określenia załączników",
"------": "------------",
"label.heading.identities": "Identyfikatory",
"label.heading.uniqueidentification": "Unikatowy ID #",
"label.heading.identitydocs": "Dokumenty tożsamości",
@ -421,7 +549,7 @@
"label.anchor.acceptclienttransfer": "Zaakceptuj transfer klienta",
"label.anchor.rejecttransfer": "Odrzuć transfer klienta",
"label.anchor.undotransfer": "Cofnij transfer klienta",
"label.input.filterbynameaccno": "Sortuj według nazwy/konta#/pracowników/biura",
"label.input.filterbynameaccno": "Filtruj wyświetlane według nazwy/#klienta/pracowników/biura",
"label.input.selectclientimage": "Wybierz obraz klienta",
"label.input.selectfile": "Wybierz plik",
"label.input.documenttype": "Typ dokumentu",
@ -433,7 +561,7 @@
"label.input.clientId": "ID klienta",
"label.button.createclient": "Utwórz klienta",
"label.button.print": "Drukuj",
"label.button.viewprint": "Podgląd wydruku",
"label.button.viewprint": "Generuj raport",
"label.button.savingdetails": "Zapisywanie szczegółów",
"label.button.loandetails": "Szczegóły kredytu",
"label.button.upload": "Prześlij",
@ -445,6 +573,7 @@
"label.button.viewactiveloans": "Przejrzyj aktywne pożyczki",
"label.button.viewactivesavings": "Przejrzyj aktywne oszczędności",
"label.button.ok": "OK",
"label.button.clear": "Wyczyść",
"label.numofloancycles": "# cykli pożyczki",
"label.lastloanamount": "Ostatnia kwota pożyczki",
"label.numofactiveloans": "# aktywnych pożyczek",
@ -521,6 +650,7 @@
"label.nextmettingon": "Następne spotkanie na",
"label.selectgroup": "Wybierz grupę",
"label.selectstaff": "Wybierz pracowników",
"label.active": "Aktywny",
"groupingStatusType.pending": "Oczekujące",
"groupingStatusType.active": "Aktywne",
"groupingStatusType.closed": "Zamknięte",
@ -562,32 +692,50 @@
"label.heading.value": "Wartość",
"label.heading.total": "Razem",
"label.heading.dob": "Data urodzenia",
"label.heading.address": "Adres",
"label.heading.city": "Miasto",
"label.heading.zip": "Kod pocztowy",
"label.heading.mobile": "Telefon komórkowy",
"label.heading.residence": "Miejsce zamieszkania",
"label.heading.futureschedule": "Zaplanowane w przyszłości",
"label.tooltip.loanProduct.active": "Aktywny",
"label.tooltip.loanProduct.inActive": "Nieaktywny",
"loanStatusType.active": "Aktywny",
"label.heading.savingsDetails": "Zapisywanie szczegółów",
"label.heading.inactivatecharge": "Dezaktywuj opłatę",
"label.input.minRequiredBalance": "Minimalne saldo",
"label.button.showActiveCharges": "Aktywne opłaty",
"savingsAccountStatusType.active": "Aktywny",
"error.msg.currency.currencyCode.inUse": "Waluta, którą próbujesz usunąć jest używana",
"label.tooltip.employees.active.true": "Aktywny",
"label.heading.events": "Wydarzenia",
"label.heading.isactive": "Aktywny?",
"label.heading.questions": "Pytania",
"label.heading.countrycode": "Kod kraju",
"label.anchor.managemembers": "Zarządzaj członkami",
"label.input.displayname": "Wyświetlana nazwa",
"label.input.events": "Wydarzenia",
"clientIdentifierStatusType.inactive": "Nieaktywny",
"clientIdentifierStatusType.active": "Aktywny",
"label.selecthooktemplate": "Wybierz szablon",
"error.msg.select.atleast.one.schedule.job": "Wybierz harmonogram zadań do uruchomienia.",
"label.heading.active": "Aktywny",
"label.add.row": "Dodaj",
"label.remove.row": "Usuń",
"chargeTimeType.sharespurchase": "Udostępnij zapłatę",
"validation.msg.charge.amount.not.greater.than.zero": "Kwota opłaty musi być większa od zera.",
"0": "Indeks",
"templates": "Szablony",
"system": "System",
"users": "Użytkownicy",
"createuser": "Tworzenie użytkownika",
"addmember": "Dodaj użytkownika",
"addgroup": "Dodaj grupę",
"editgroup": "Edytuj grupę",
"edittemplate": "Edytuj szablon",
"navoffices": "Nawigacja",
"incentiveConditionType.greterthan": "Większy niż"
"incentiveConditionType.greterthan": "Większy niż",
"guarantorFundStatusType.active": "Aktywny",
"error.msg.non.empty.datatable.cannot.be.deleted": "tabela danych która nie jest pusta nie może zostać usunięta.",
" # teller management localization": "---",
"label.heading.nodataavailablefor": "Dane nie są dostępne dla",
"label.heading.notification": "Powiadomienia",
"label.heading.createdAt": "Utworzone w"
}

View File

@ -1,24 +1,30 @@
{
"@metadata": {
"authors": [
"Ccamifos",
"Imperadeiro98",
"Vitorvicentevalente",
"Tooguether",
"Fitoschido",
"Waldir",
"Ti4goc",
"Macofe",
"Jkb8",
"Athena in Wonderland",
"Biaennes",
"Hamilton Abreu",
"Mansil",
"CaiusSPQR",
"Cazonda",
"Ccamifos",
"Fitoschido",
"Hamilton Abreu",
"Imperadeiro98",
"Jkb8",
"Kareyac",
"Macofe",
"Mansil",
"Mansil alfalb",
"MokaAkashiyaPT",
"Athena in Wonderland"
"Ruila",
"Ti4goc",
"Tooguether",
"Vitorvicentevalente",
"Waldir",
"Waldyrious"
]
},
"label.heading.totalshares": "Total de Ações",
"label.heading.collaterals": "Garantia",
"label.heading.sharenominalprice": "Nominal/Preço Unitário",
"label.heading.totalsharestobeissued": "Total de Ações para serem Emitidas",
"label.heading.sharecapitalvalue": "Valor do capital total de participações",
@ -29,21 +35,22 @@
"label.heading.allowdividendsforinactiveclients": "Permitir dividendos para clientes inativos",
"label.heading.name": "Nome",
"label.heading.alias": "Apelido",
"label.heading.amountDue": "Valor devido",
"label.heading.cbid": "Identificação do escritório de crédito",
"label.heading.country": "País",
"label.heading.cbName": "Nome da Agência de crédito",
"label.heading.cbproduct": "Produto de crédito",
"label.heading.cbsummary": "Agência de crédito (Nome-Produto-País)",
"label.heading.is_creditcheck_mandatory": "verificação de crédito obrigatória?",
"label.heading.skip_credit_check_in_failure": "ignorar verificação de credito em caso de falha?",
"label.heading.is_creditcheck_mandatory": "A verificação de crédito é obrigatória?",
"label.heading.skip_credit_check_in_failure": "Saltar a verificação de credito em caso de falha?",
"label.heading.startdate": "Data de início",
"label.heading.enddate": "Data de fim",
"label.heading.is_active": "é_ativo",
"label.heading.accnum": "Conta #",
"label.heading.is_active": "Está ativo?",
"label.heading.accnum": "Número de conta",
"label.heading.staff": "Pessoal",
"label.heading.office": "Escritório",
"label.heading.delete": "Eliminar",
"label.heading.reject": "Rejeitar",
"label.heading.delete": "Confirmar eliminação?",
"label.heading.reject": "Confirmar a rejeição?",
"label.heading.deleterole": "Eliminar Função",
"label.heading.disablerole": "Desativar Função",
"label.heading.disabled": "Desativado",
@ -60,21 +67,33 @@
"label.heading.category": "Categoria",
"label.heading.balance": "Balanço",
"label.heading.viewreceipts": "Ver Recibo",
"label.heading.savingaccount": "Conta Poupança",
"label.heading.savingaccount": "Conta poupança",
"label.heading.description": "Descrição",
"label.heading.transferId": "Identificador da transferência",
"label.heading.shortname": "Denominação",
"label.heading.approve": "Aprovar",
"label.heading.approve": "Confirmar aprovação?",
"label.heading.glimloanaccount": "Novo pedido de empréstimo GLIM",
"label.heading.glimloanaccoverview": "Visão geral da conta de empréstimo GLIM",
"label.heading.repaymentCollection": "Cobrança de reembolso",
"label.heading.repayment": "Valor do reembolso",
"label.heading.glimloanAccountNo": "Nº da conta GLIM",
"label.heading.gsimId": "Identificador GSIM",
"label.heading.glimId": "Identificador GLIM",
"label.heading.gsimoverview": "Visão geral da conta GSIM",
"label.heading.gsimaccount": "Contas novas GSIM",
"label.heading.actions": "Ações",
"label.heading.loanaccoverview": "Visão Geral Da Conta Empréstimo",
"label.heading.upcomingcharges": "Encargos futuros",
"label.heading.savingsaccoverview": "Visão Geral Conta Poupança",
"label.heading.fixedaccoverview": "Visão geral dos depósitos a prazo fixo",
"label.heading.recurringaccoverview": "Visão geral dos depósitos recorrentes a prazo",
"label.heading.members": "Membros",
"label.heading.confirm": "Confirmar",
"label.heading.attendance": "Assistencia",
"label.heading.comments": "Comentários",
"label.heading.id": "ID",
"label.heading.activationdate": "Data De Activação",
"label.heading.externalid": "Id Externo",
"label.heading.externalid": "Identificador externo",
"label.heading.summary": "Resumo",
"label.heading.products": "Produtos",
"label.heading.branch": "Filial",
@ -84,13 +103,15 @@
"label.heading.account": "Conta",
"label.heading.debit": "Débito",
"label.heading.credit": "Crédito",
"label.heading.updatedby": "Actualizado por",
"label.heading.updatedby": "Atualizado por",
"label.heading.creditreportcheck": "Historial de crédito",
"label.heading.updatedon": "Actualizado Em",
"label.heading.error": "Erro",
"label.heading.client": "Cliente",
"label.heading.accounttype": "Tipo De Conta",
"label.heading.user": "Utilizador",
"label.heading.loan": "Empréstimo",
"label.input.paidloans": "Empréstimos pagos",
"label.heading.principal": "Valor de face",
"label.heading.amount": "Montante",
"label.heading.date": "Data",
@ -107,26 +128,26 @@
"label.heading.loanapproval": "Aprovação De Empréstimos",
"label.heading.loandisbursal": "Empréstimo De Desembolso",
"label.heading.checkerinbox": "Verificador De Entrada na Caixa",
"label.heading.enterclientsactivationdate": "Inserir Data De Ativação dos Clientes",
"label.heading.enterclientsactivationdate": "Inserir data de ativação dos clientes:",
"label.heading.duecollections": "Cobranças Devidas",
"label.heading.totalduecollections": "Total Cobranças Devidas",
"label.heading.issueswithdrawls": "Problemas de Levantamentos",
"label.heading.notprovided": "Não Fornecido",
"label.heading.notavailable": "Não Disponível",
"label.heading.next": "Paginação: Seguinte",
"label.heading.prev": "Paginação: Anterior",
"label.heading.next": "Seguinte",
"label.heading.prev": "Anterior",
"label.heading.provisioningcategory": "Categoria",
"label.heading.minimumage": "Idade Mín",
"label.heading.maximumage": "Idade Máx",
"label.heading.provisioningpercentage": "Percentagem",
"label.heading.provisioningpercentage": "Percentagem:",
"label.heading.provisioningliabilityaccount": "Conta de passivo",
"label.heading.provisioningexpenseaccount": "Conta de despesas",
"label.heading.provisioningamount": "Montante de provisionamento",
"label.heading.rateperiods": "Períodos de taxa flutuante",
"label.heading.fromdate": "A partir da data",
"label.heading.fromdate": "Desde a data:",
"label.heading.interestrate": "Taxa de juros",
"label.heading.patternupdate": "Actualização de padrão",
"label.input.between": "entre",
"label.input.between": "Entre",
"label.input.provisioningcriteria": "Critérios de provisionamento",
"label.input.floatingratename": "Nome da taxa flutuante",
"label.input.isbaselendingrate": "É taxa base de empréstimo?",
@ -175,6 +196,14 @@
"label.heading.smsProvider": "Provedor de SMS",
"label.heading.templatemsg": "Mensagem Modelo",
"label.heading.campaigntype": "Tipo de campanha",
"label.heading.message": "Mensagem",
"label.heading.preview": "Pré-visualizar",
"label.heading.messagedetails": "Detalhes da mensagem",
"label.heading.editsmscampaign": "Editar Campanha SMS",
"label.heading.meetingdetails": "Detalhes da reunião",
"label.heading.address": "Endereço",
"label.heading.createdby": "Criado Por",
"label.heading.campaign": "Campanha",
"label.menu.selectloanofficer": "Selecionar Colaborador",
"label.menu.selectone": "Selecciona Uma",
"label.menu.constitution": "Selecione a constituição",
@ -186,10 +215,17 @@
"label.anchor.assignstaff": "Atribuir Colaborador",
"label.anchor.activate": "Activar",
"label.anchor.updatedefaultaccount": "Atualização Conta Poupança Standard",
"label.anchor.importclients": "Clientes",
"label.anchor.importcenters": "Centros",
"label.input.name": "Nome",
"label.input.firstname": "Primeiro Nome",
"label.input.lastname": "Apelido",
"label.input.middlename": "2.º Nome",
"label.input.mobileNumber": "Número de telemóvel",
"label.input.age": "idade",
"label.input.isDependent": "é dependente?",
"label.input.maritalstatus": "Estado Civil",
"label.input.profession": "Profissão",
"label.input.fullname": "Nome",
"label.input.legalForm": "Forma jurídica",
"label.input.accno": "Conta #",
@ -242,6 +278,11 @@
"label.input.constitution": "Constituição",
"label.input.mainBusinessLine": "Linha de negócio principal",
"label.input.remarks": "Observações",
"label.input.campaignName": "Nome da Campanha",
"label.input.campaignType": "Tipo de Campanha",
"label.input.campaignMessage": "Mensagem da Campanha",
"label.input.status": "Estado",
"label.input.city": "Cidade",
"label.button.previous": "Anterior",
"label.button.next": "Seguinte",
"label.button.save": "Confirmar",
@ -295,6 +336,8 @@
"label.button.pattern": "Padrão",
"label.button.dividends": "Dividendos",
"label.button.postdividends": "Postar dividendos",
"label.button.proceed": "Continuar",
"label.button.addAddress": "Adicionar endereço",
"label.uniquelyidentifiedwithid": "Identificante Unico com Id",
"label.belongsto": "Pertence a",
"label.memberof": "Membro de",
@ -302,6 +345,7 @@
"label.createdon": "Criado Em",
"label.areyousure": "Tem a certeza?",
"label.requiredfield": "Campo obrigatório",
"label.edit": "Editar",
"label.all": "Todos",
"currency.USD": "Dólar Americano",
"currency.KES": "Xelim queniano",
@ -319,6 +363,9 @@
"label.relDate": "Data de lançamento de Mifos X:",
"label.relVersion": "Versão de lançamento:",
"label.select": "Selecionar uma opção",
"label.delete": "Eliminar",
"label.selectentity": "Selecione a entidade",
"label.selectaction": "Selecionar ações",
"label.error": "Erro",
"error.login.failed": "Por favor, tente novamente, as suas credenciais não são válidas.",
"error.connection.failed": "Não foi possível conectar ao servidor. Certifique-se de que esteja utilizando as configurações corretas.",
@ -414,10 +461,15 @@
"validation.msg.floatingrate.isBaseLendingRate.baselendingrate.duplicate": "Taxa base de empréstimo já definida",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.no.baselending.rate.defined": "Taxa base de empréstimo não existe",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.cannot.be.true.for.baselendingrate": "isDifferentialToBaseLendingRate não pode ser verdade para taxa flutuante marcada como taxa base de empréstimo",
"label.tooltip.incomefromfees": "Uma conta de renda que é creditada quando uma taxa é paga pelo detentor desta conta",
"label.tooltip.incomefrompenalties": "Uma conta de renda que é creditada quando uma penalidade é paga pelo detentor desta conta",
"label.tooltip.daysinyear": "A configuração para o número de dias no ano para cálculo de juros",
"label.heading.waiveloancharge": "Renunciar a Taxas do empréstimo",
"label.heading.payloancharge": "Pagar Taxa de empréstimo",
"label.anchor.paycharge": "Pagar Taxa",
"label.input.paymentdate": "Data de pagamento",
"label.tooltip.charges.active.true": "Ativo",
"label.tooltip.charges.active.false": "Inativo",
"label.heading.dashboard": "Painel de controlo",
"label.heading.home": "Início",
"label.heading.welcome": "Bem-vindo",
@ -444,7 +496,7 @@
"label.heading.fullname": "Nome",
"label.heading.mifosxclient": "Mifos X cliente",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X está actualizado",
"label.heading.uptodate": "está atualizado",
"label.heading.resources": "Recursos",
"label.heading.community": "Comunidade",
"label.heading.contribute": "Contribuir",
@ -490,6 +542,7 @@
"label.anchor.dashhome": "Painel de control",
"label.anchor.collectionsheet": "Colecção de ficheiros",
"label.anchor.client": "Cliente",
"label.anchor.importemployees": "Importar Funcionários",
"label.anchor.group": "Grupo",
"label.anchor.center": "Centro",
"label.anchor.frequentpostings": "Publicações frequentes",
@ -511,6 +564,8 @@
"label.anchor.keyboardshortcut": "Teclas de atalho",
"label.anchor.save": "Guardar",
"label.input.searchbyuser": "Pesquisar por utilizadores",
"label.input.clienttemplate": "Modelo de Cliente",
"label.input.loanaccounttemplate": "Carregar Modelo de Contas",
"label.input.searchactivities": "Pesquisar actividades",
"label.input.additionalinformation": "Informações Adicionais",
"label.input.changelanguage": "Alterar língua!",
@ -530,10 +585,8 @@
"label.button.day": "Dia",
"label.button.signin": "Iniciar Sessão",
"label.button.resetPassword": "Apagar Palavra-passe",
"label.button.viewpermissions": "Vêr permissões",
"label.button.viewpermissions": "Ver permissões",
"label.youneedtologintoaccessthisarea": "Você precisa iniciar a sessao para aceder a esta área",
"label.selectaction": "Selecionar ações",
"label.selectentity": "Selecione a entidade",
"label.selectugdtemplate": "Selecionar o modelo UGD",
"label.nodata": "Não há dados",
"label.notactivated": "Não activado",
@ -541,7 +594,6 @@
"label.searchorpress": "Clique ou pressione alt+x para pesquisar",
"label.search.query.matched.results.exceeds.max.length": "A pesquisa resultou em mais de 200 registos. São mostrados os primeiros 200 registos.",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "Folha de coleção não pode ser gerada para a centro/grupo sem anexar definiçao de reunião",
"label.heading.address": "Endereço",
"label.heading.identities": "Identidades",
"label.heading.uniqueidentification": "ID unico #",
"label.heading.identitydocs": "Documentos de identidade",
@ -597,12 +649,19 @@
"label.input.clientName": "Nome do Cliente",
"label.input.clientId": "Id. do Cliente",
"label.input.reopeneddate": "Data de reabertura",
"label.input.legalformentity": "Entidade",
"label.input.legalformperson": "Pessoa",
"label.button.createclient": "Criar Cliente",
"label.button.showall": "Mostrar Fechados",
"label.button.importclients": "Importar Clientes",
"label.button.importemployees": "Importar Funcionários",
"label.button.importcenters": "Importar Centros",
"label.button.print": "Imprimir",
"label.button.viewprint": "Gerar relatório",
"label.button.savingdetails": "Salvar detalhes",
"label.button.loandetails": "Detalhes do empréstimo",
"label.button.upload": "Carregar",
"label.button.download": "Descarregar",
"label.button.capture": "Captura",
"label.button.viewclosedloans": "Ver os empréstimos fechados",
"label.button.viewclosedsavings": "Visualizar Poupanças Fechadas",
@ -610,9 +669,12 @@
"label.button.capturepic": "Capturar imagem do cliente",
"label.button.deletepic": "Excluir imagem do cliente",
"label.button.uploadsig": "Fazer upload da assinatura do cliente",
"label.button.deletesig": "Eliminar Assinatura do Cliente",
"label.button.viewsig": "Visualizar assinatura do cliente",
"label.button.viewactiveloans": "Ver Empréstimos Activos",
"label.button.viewactivesavings": "Ver Poupanças Activas",
"label.button.viewactivefixed": "Ver Fixos Ativos",
"label.button.viewactiverecurring": "Ver Recorrentes Ativos",
"label.button.chargesoverview": "Resumo de encargos",
"label.button.reactivate": "Reativar",
"label.button.ok": "OK",
@ -691,8 +753,8 @@
"validation.msg.client.withdrawalDate.cannot.be.blank": "Data da retirada do cliente não pode estar em branco",
"label.heading.addmember": "Adicionar Membro",
"label.heading.addrole": "Adicionar Role",
"label.heading.viewsmscampaign": "Ver Campanha SMS",
"label.heading.repeatdetails": "Repetir Detalhes",
"label.heading.meetingdetails": "Detalhes da reunião",
"label.heading.creategroup": "Criar Grupo",
"label.heading.editgroup": "Editar Grupo",
"label.heading.managemembers": "Gerir Membros",
@ -859,7 +921,6 @@
"label.heading.financial.activity.type": "Atividade Financeira",
"label.heading.financial.activity.account.name": "Nome da Conta",
"label.heading.transferredfrom": "Transferido De",
"label.heading.createdby": "Criado Por",
"label.heading.createdon": "Criada em",
"label.heading.journalentry.created": "Entrada de diário criada",
"label.heading.viewreport": "Ver Relatório",
@ -944,9 +1005,10 @@
"label.input.filterbyAccountGlcodeAccounttype": "Filtrar por conta/GL código/tipo de conta",
"label.input.financial.activity.type": "Atividade financeira",
"label.input.date.of.opening.balances": "Data de saldos de abertura",
"label.input.smsprovider": "Fornecedor de SMS",
"journalEntryType.credit": "Crédito",
"journalEntrytType.debit": "Débito",
"label.button.addAddress": "Adicionar endereço",
"label.button.addfamilymember": "Adicionar Membro de Família",
"label.button.listview": "Listar",
"label.button.treeview": "Arborescencia",
"label.button.addaccount": "Adicionar conta",
@ -1133,7 +1195,6 @@
"label.heading.guarantor": "Fiador",
"label.heading.createguarantor": "Criar fiador",
"label.heading.editloanaccount": "Editar Conta De Empréstimo",
"label.heading.collaterals": "Garantia",
"label.heading.value": "Valor",
"label.heading.loanamountandbalance": "O Montante do empréstimo e Saldo",
"label.heading.totalcostofloan": "Custo Total do Empréstimo",
@ -1184,7 +1245,7 @@
"label.heading.dob": "Data de Nascimento",
"label.heading.city": "Cidade",
"label.heading.zip": "CP",
"label.heading.mobile": "TeleMóvel",
"label.heading.mobile": "Telemóvel",
"label.heading.residence": "Residência",
"label.heading.joindate": "Data de adesão",
"label.heading.overdue": "Vencido",
@ -1248,6 +1309,7 @@
"label.anchor.disburse": "Desembolsar",
"label.anchor.disbursetosavings": "Desembolsar Para Poupança",
"label.anchor.repayment": "Pagamento",
"label.anchor.prepayment": "Pré-pagamento",
"label.anchor.waiveinterest": "Renunciar Juros",
"label.anchor.writeoff": "Apagar",
"label.anchor.close-rescheduled": "Fechar Reagendado",
@ -1276,9 +1338,8 @@
"label.input.relationship": "Relação",
"label.input.dob": "DATA DE NASCIMENTO",
"label.input.address": "Endereço",
"label.input.city": "Cidade",
"label.input.zip": "Zip",
"label.input.mobile": "TeleMóvel",
"label.input.mobile": "Telemóvel",
"label.input.residence": "Telefone residencial #",
"label.input.purpose": "Propósito",
"label.input.syncrepaymentswithmeeting": "Sincronização de pagamentos com a reunião",
@ -1366,11 +1427,9 @@
"label.tooltip.loanportfolio": "uma conta de ativo que é debitada durante o desembolso e creditada durante o pagamento/cancelamento do principal.",
"label.tooltip.receivableinterest": "uma conta de ativos que é usada para acumular júros",
"label.tooltip.receivablefees": "uma conta de ativos que é usada para acumular taxas",
"label.tooltip.receivablepnalties": "uma conta de ativos que é usada para acumular multas",
"label.tooltip.receivablepenalties": "uma conta de ativos que é usada para acumular multas",
"label.tooltip.transfersinsuspense": "uma conta de ativo que se utiliza uma conta de espera para o rastreamento das carteiras de empréstimos em transferência.",
"label.tooltip.incomefrominterest": "uma conta de renda que é creditada durante o pagamento de juros.",
"label.tooltip.incomefromfees": "Uma conta de renda que é creditada quando uma taxa é paga pelo detentor desta conta",
"label.tooltip.incomefrompenalties": "Uma conta de renda que é creditada quando uma penalidade é paga pelo detentor desta conta",
"label.tooltip.recoverypayments": "uma conta de renda é creditada durante o pagamento de recuperação",
"label.tooltip.loseswrittenoff": "Uma conta de despesas que é debitada no cancelamento do valor de face (também debitada em caso de juros, taxas e penalidades canceladas em caso de ajuste de contabilidade)",
"label.tooltip.overpaymentliability": "uma conta de passivo que é creditada em caso de pagamentos em excesso e creditada quando reembolsos são feitos ao cliente.",
@ -1426,7 +1485,6 @@
"label.tooltip.interestcalculationperiod": "Diário - Irá calcular os juros com base diária. ex: o mês de Fevereiro tem 28 dias e os juros serão calculados para 28 dias. O mesmo acontece para o período de pagamento - o cálculo é feito para o mês, isto é, 30 dias.",
"label.tooltip.allowpartialperiodinterestcalcualtion": "Para ser usado com o mesmo que o período de pagamento - para cáculo exato dos juros com período parcial. ex: juros cobrados de 5 de Abril, o principal é 10.000 e o juros é de 1% ao mês então o juros será de (10.000 * 1%) * (25/30), calculado primeiramente para o mês e em seguida para o período exato entre a data de início e a data fim (pode ser decimal)",
"label.tooltip.interestfreeperiod": "Se o período livre de juros for '4' e a freqüência de pagamento do cliente é semanal, então para a primeira semana o cliente não necessitará pagar juros; ele(a) deverá pagar apenas o valor do principal devido para aquela semana.",
"label.tooltip.daysinyear": "A configuração para o número de dias no ano para cálculo de juros",
"label.tooltip.daysinmonth": "Número de dias no mês.",
"label.tooltip.csi.name": "O nome da instrução permanente",
"label.tooltip.csi.applicant": "O nome do cliente para o qual a instrução permanente está sendo criada.",
@ -1563,7 +1621,7 @@
"validation.msg.loan.transaction.unassignedDate.cannot.be.blank": "Por favor indique a data de término da atribuição.",
"error.msg.loan.not.assigned.to.loan.officer": "O empréstimo não tem um agente de empréstimo.",
"validation.msg.Guarantor.firstname.cannot.be.blank": "O primeiro nome é obrigatório.",
"validation.msg.Guarantor.lastname.cannot.be.blank": "O sobrenome é obrigatório.",
"validation.msg.Guarantor.lastname.cannot.be.blank": "O apelido é obrigatório.",
"validation.msg.Guarantor.entityId.cannot.be.blank": "Por favor, selecione um fiador.",
"validation.msg.Guarantor.mobileNumber.format.is.invalid": "Formato do número de telefone celular inválido.",
"validation.msg.Guarantor.housePhoneNumber.format.is.invalid": "Formato do número de telefone residencial inválido.",
@ -1756,6 +1814,7 @@
"label.account.closed.on.date": "Fechado na Data",
"label.heading.interest.calculation.date": "Data de recálculo de juros",
"label.anchor.externalServices": "Serviços externos",
"label.add.row": "Adicionar",
"label.input.days": "Dias",
"chargeAppliesTo.client": "Cliente",
"chargeCalculationType.percent.of.disbursement.amount": "% Montante do Desembolso",

File diff suppressed because it is too large Load Diff

View File

@ -1,48 +1,45 @@
{
"@metadata": {
"authors": [
"Ajeje Brazorf",
"Alber85",
"Amire80",
"BaRaN6161 TURK",
"Edcable",
"Eleassar",
"Fuseteam",
"Hwangjy9",
"JSantos",
"Jeeputer",
"Jon Harald Søby",
"Liuxinyu970226",
"McDutchie",
"Meno25",
"MuratTheTurkish",
"NandaHtoon",
"Nayan",
"NeverBehave",
"Patriot Kur",
"Robby",
"Rul1902",
"Shirayuki",
"Siebrand",
"Edcable",
"Nayan",
"Robby",
"Liuxinyu970226",
"Hwangjy9",
"Alber85",
"Verdy p",
"Vagnerrondon",
"Vandasay",
"NeverBehave",
"Андрей",
"NandaHtoon"
"Verdy p",
"YougoTranslates",
"Андрей"
]
},
"label.heading.totalshares": "ရှယ်ယာစုစုပေါင်း",
"label.heading.sharenominalprice": "အမည်ခံ / ယူနစ်စျေးနှုန်း",
"label.heading.totalsharestobeissued": "ထုတ်ပေးရမည့် ရှယ်ယာစုစုပေါင်း",
"label.heading.sharecapitalvalue": "မတည်ရှယ်ယာတန်ဖိုး စုစုပေါင်း",
"label.heading.shareperclient": "ဖောက်သည်တစ်ဦးစီရှိ ရှယ်ယာ",
"label.heading.minimumactiveperiod": "စနစ်တွင် လည်ပတ်နေသည့် အနည်းဆုံးကာလ",
"label.heading.suspenseaccount": "ဆိုင်းငံ့စာရင်း",
"label.heading.equityaccount": "ရှယ်ယာပိုင်ဆိုင်မှုစာရင်း",
"label.heading.name": "အမည်",
"label.heading.alias": "အခြားအမည်",
"label.heading.amountDue": "သက်မှတ်ပမာဏ",
"label.heading.cbid": "ခရစ်ဒစ်ဗျူရိုအိုင်ဒီ",
"label.heading.country": "နိုင်ငံ",
"label.heading.cbName": "ခရက်ဒစ်ဗျိူရိုအမည်",
"label.heading.cbproduct": "အကြွေးဆိုင်ရာ ဝန်ဆောင်ပစ္စည်း",
"label.heading.cbsummary": "ခရက်ဒစ်ဗျူရို (အမည်-ထုတ်ကုန်-နိုင်ငံ)",
"label.heading.is_creditcheck_mandatory": "ကြွေးကျန်စစ်ရန် မဖြစ်မနေလိုအပ်ပါသလား။",
"label.heading.skip_credit_check_in_failure": "မအောင်မြင်လျှင်မြီရှင်စစ်ဆေးမှုအဆင့်ကိုကျော်မည်လား",
"label.heading.stale_period": "ငြိမ်သက်နေသော ကာလ",
"label.heading.startdate": "စတင်သည့်နေ့စွဲ",
"label.heading.enddate": "ပြီးဆုံးသည့်နေ့စွဲ",
"label.heading.is_active": "အသက်ဝင်သလား",
"label.heading.collaterals": "",
"label.heading.name": "{{Identical|Name}}",
"label.heading.alias": "{{Identical|Alias}}",
"label.heading.country": "{{Identical|Country}}",
"label.heading.startdate": "{{Identical|Start date}}",
"label.heading.accnum": "{{Identical|Account}}",
"label.heading.staff": "{{Identical|Staff}}",
"label.heading.office": "Аофис",
"label.heading.delete": "Ианыхтәуп",
"label.heading.delete": "{{Identical|Delete}}",
"label.heading.reject": "{{Identical|Reject}}",
"label.heading.deleterole": "Mifos:X-label.heading.provisioningliabilityaccount/qqq",
"label.heading.disablerole": "Disable Role",
@ -59,55 +56,49 @@
"label.heading.type": "{{Identical|Type}}",
"label.heading.category": "{{Identical|Category}}",
"label.heading.balance": "{{Identical|Balance}}",
"label.heading.viewreceipts": "ပြေစာကြည့်ရန်",
"label.heading.savingaccount": "စုငွေစာရင်း",
"label.heading.description": "{{Identical|ဖော်ပြချက်}}",
"label.heading.shortname": "{{Identical|အမည်တို}}",
"label.heading.approve": "{{Identical|ခွင့်ပြုသည်}}",
"label.heading.actions": "{{Identical|ဆောင်ရွက်ပါ}}",
"label.heading.loanaccoverview": "ချေးငွေစာရင်း ခြုံငုံကြည့်ရှုခြင်း",
"label.heading.upcomingcharges": "မကြာမီ ကျသင့်မည့်များ",
"label.heading.savingsaccoverview": "စုငွေစာရင်း ခြုံငုံကြည့်ခြင်း",
"label.heading.members": "{{Identical|အသင်း}}",
"label.heading.confirm": "{{Identical|အတည်ပြုသည်}}",
"label.heading.attendance": "{{Identical|အစည်းအဝေးတတ်ရောက်မှု}}",
"label.heading.comments": "{{Identical|မှတ်ချက်}}",
"label.heading.savingaccount": "{{Identical|Saving account}}",
"label.heading.description": "{{Identical|Description}}",
"label.heading.shortname": "{{Identical|Short name}}",
"label.heading.approve": "{{Identical|Approve}}",
"label.heading.actions": "{{Identical|Action}}",
"label.heading.members": "{{Identical|Member}}",
"label.heading.confirm": "{{Identical|Confirm}}",
"label.heading.attendance": "{{Identical|Attendance}}",
"label.heading.comments": "{{Identical|Comment}}",
"label.heading.id": "{{Identical|ID}}",
"label.heading.activationdate": "{{Identical|အတည်ပြုသည့်နေ့}}",
"label.heading.externalid": "{{Identical|ပြင်ပ ID}}",
"label.heading.summary": "{{Identical|စာရင်းချုပ်}}",
"label.heading.products": "{{Identical|၀န်ဆောင်မှု-Product}}",
"label.heading.branch": "{{Identical|ရုံးခွဲ}}",
"label.heading.notes": "{{Identical|မှတ်စု}}",
"label.heading.closedaccount": "{{Identical|ပိတ်ထားပြီးစာရင်း}}",
"label.heading.transactiondate": "{{Identical|ငွေပေးငွေယူလုပ်သည့်နေစွဲ}}",
"label.heading.account": "{{Identical|စာရင်း}}",
"label.heading.debit": "{{Identical|ျမီစား}}",
"label.heading.credit": "Short form of Credit Card.\n{{Identical|ျမီရွင္}}",
"label.heading.updatedby": "{{Identical|မှတ်တမ်းတင်သူ}}",
"label.heading.updatedon": "{{Identical|မှတ်တမ်းတင်သည့်အချိန်}}",
"label.heading.error": "{{Identical|အမှား}}",
"label.heading.client": "{{Identical|ဖေါက်သည်}}",
"label.heading.accounttype": "{{Identical|စာရင်းအမျိုးအစား}}",
"label.heading.user": "{{Identical|အသုံးပြုသူ}}",
"label.heading.loan": "{{Identical|ချေးငွေ}}",
"label.heading.principal": "{{Identical|အရင်း}}",
"label.heading.amount": "{{Identical|ပမာဏ}}",
"label.heading.date": "{{Identical|နေ့စွဲ}}",
"label.heading.transactiontype": "{{Identical|စာရင်းပြောင်း အမျိုးအစား}}",
"label.heading.due": "{{Identical|သင့်ငွေ}}",
"label.heading.paid": "{{Identical|ပေးပြီး}}",
"label.heading.activationdate": "{{Identical|Activation date}}",
"label.heading.externalid": "{{Identical|External ID}}",
"label.heading.summary": "{{Identical|Summary}}",
"label.heading.products": "{{Identical|Product}}",
"label.heading.branch": "{{Identical|Branch}}",
"label.heading.notes": "{{Identical|Note}}",
"label.heading.closedaccount": "{{Identical|Closed account}}",
"label.heading.transactiondate": "{{Identical|Transaction date}}",
"label.heading.account": "{{Identical|Account}}",
"label.heading.debit": "{{Identical|Debit}}",
"label.heading.credit": "Short form of Credit Card.\n{{Identical|Credit}}",
"label.heading.updatedby": "{{Identical|Update by}}",
"label.heading.updatedon": "{{Identical|Updated on}}",
"label.heading.error": "{{Identical|Error}}",
"label.heading.client": "{{Identical|Client}}",
"label.heading.accounttype": "{{Identical|Account type}}",
"label.heading.user": "{{Identical|User}}",
"label.heading.loan": "{{Identical|Loan}}",
"label.heading.principal": "{{Identical|Principal}}",
"label.heading.amount": "{{Identical|Amount}}",
"label.heading.date": "{{Identical|Date}}",
"label.heading.transactiontype": "{{Identical|Transaction type}}",
"label.heading.due": "{{Identical|Due}}",
"label.heading.paid": "{{Identical|Paid}}",
"label.heading.waived": "{{Identical|Waived}}",
"label.heading.outstanding": "{{Identical|Outstanding}}",
"label.heading.details": "{{Identical|Detail}}",
"label.heading.checkerinbox": "{{Identical|Checker inbox}}",
"label.heading.checkerinbox": "",
"label.heading.notprovided": "{{Identical|Notprovided}}",
"label.heading.notavailable": "{{Identical|Not available}}",
"label.heading.next": "See also:\n* {{msg-mifos|X-label.heading.prev}}",
"label.heading.prev": "See also:\n* {{msg-mifos|X-label.heading.next}}",
"label.heading.provisioningcategory": "{{Identical|Category}}",
"label.heading.minimumage": "Иминималу Ақәра",
"label.heading.maximumage": "Имаксималу Ақәра",
"label.heading.provisioningpercentage": "Апроцент",
"label.heading.provisioningliabilityaccount": "",
"label.input.between": "{{Identical|Between}}",
@ -122,6 +113,9 @@
"label.heading.equity": "{{Identical|Equity}}",
"label.heading.message": "{{Identical|Message}}",
"label.heading.preview": "{{Identical|Preview}}",
"label.heading.address": "{{Identical|Address}}",
"label.heading.campaign": "{{Identical|Campaign}}",
"label.heading.isactive": "{{identical|Active}}",
"label.menu.selectloanofficer": "{{Identical|Select staff}}",
"label.menu.selectone": "{{Identical|Select one}}",
"label.anchor.delete": "{{Identical|Delete}}",
@ -129,12 +123,15 @@
"label.anchor.close": "{{Identical|Close}}",
"label.anchor.assignstaff": "{{Identical|Assign staff}}",
"label.anchor.activate": "{{Identical|Activate}}",
"label.anchor.editpermissions": "{{Identical|Edit permission}}",
"label.input.name": "{{Identical|Name}}",
"label.input.firstname": "{{Identical|First name}}",
"label.input.middlename": "{{Identical|Middle name}}",
"label.input.fullname": "{{Identical|Name}}",
"label.input.accno": "{{Identical|Account}}",
"label.input.externalid": "{{Identical|External ID}}",
"label.input.active": "{{Identical|Active}}",
"label.input.enablepaymenttypes": "{{Identical|Enable}}",
"label.input.assignstaff": "{{Identical|Assign staff}}",
"label.input.description": "{{Identical|Description}}",
"label.input.repeat": "{{Identical|Repeat}}",
@ -151,10 +148,13 @@
"label.input.true": "{{Identical|True}}",
"label.input.false": "{{Identical|False}}",
"label.input.remarks": "{{Identical|Remark}}",
"label.input.status": "{{Identical|Status}}",
"label.input.city": "{{Identical|City}}",
"label.input.email": "{{Identical|E-mail}}",
"label.button.previous": "{{Identical|Previous}}",
"label.button.save": "{{Identical|Submit}}",
"label.button.cancel": "{{Identical|Cancel}}",
"label.button.edit": "{{Identical|Edit}}",
"label.button.edit": "{{Identical|Redaktar}}",
"label.button.delete": "{{Identical|Delete}}",
"label.button.confirm": "{{Identical|Confirm}}",
"label.button.unassignstaff": "{{Identical|Unassign staff}}",
@ -163,7 +163,7 @@
"label.button.newloan": "{{Identical|New loan}}",
"label.button.transferclient": "Transfer client refers to the action transferring a client from one group of borrowers to another group or transferring a client from one branch office to another branch office.\n{{Identical|Transfer client}}",
"label.button.newsaving": "{{Identical|New saving}}",
"label.button.accepttransfer": "This refer to the action of transferring a client from one branch office to another branch office.\n\nOnce a transfer is initiated from one branch, the client and his/her accounts are put in a suspended state until the receiving branch office either 1) Rejects the Transfer of the Client 2) Accepts the Transfer of the Client or 3) Undo a Transfer.\n{{Identical|Accept transfer}}",
"label.button.accepttransfer": "This refer to the action of transferring a client from one branch office to another branch office.\n\nOnce a transfer is initiated from one branch, the client and their accounts are put in a suspended state until the receiving branch office either 1) Rejects the Transfer of the Client 2) Accepts the Transfer of the Client or 3) Undo a Transfer.",
"label.button.rejecttransfer": "This refer to the action of transferring a client from one branch office to another branch office.\n\nOnce a transfer is initiated from one branch, the client and his/her accounts are put in a suspended state until the receiving branch office either 1) Rejects the Transfer of the Client 2) Accepts the Transfer of the Client or 3) Undo a Transfer.\n{{Identical|Reject transfer}}",
"label.button.undotransfer": "{{Identical|Undo transfer}}",
"label.button.add": "{{Identical|Add}}",
@ -186,7 +186,7 @@
"label.requirefield": "{{Identical|Required field}}",
"label.percentage": "{{Identical|Percentage}}",
"label.and": "{{Identical|And}}",
"label.today": "{{Identical|Today}}",
"label.today": "{{Identical|Imrüj}}",
"label.delete": "{{Identical|Delete}}",
"label.heading.payloancharge": "none",
"label.anchor.paycharge": "{{Identical|Pay charge}}",
@ -239,10 +239,11 @@
"label.button.month": "{{Identical|Month}}",
"label.button.day": "{{Identical|Day}}",
"label.button.resetPassword": "{{Identical|Reset password}}",
"label.notactivated": "{{Identical|Not enabled}}",
"label.unassigned": "{{Identical|Unassigned}}",
"label.heading.address": "{{Identical|Address}}",
"label.heading.identities": "{{Identical|Identity}}",
"label.heading.filename": "{{Identical|Filename}}",
"label.heading.templates": "{{Identical|Template}}",
"label.heading.editclient": "{{Identical|Edit client}}",
"label.heading.clientscreenreport": "{{Identical|Client screen report}}",
"label.heading.clientno": "{{Identical|Client}}",
@ -252,7 +253,6 @@
"label.anchor.clientscreenreport": "{{Identical|Client screen report}}",
"label.anchor.reactivate": "{{Identical|Reactivate}}",
"label.input.documenttype": "{{Identical|Document type}}",
"label.input.status": "{{Identical|Status}}",
"label.button.print": "{{Identical|Print}}",
"label.button.download": "{{Identical|Download}}",
"label.button.uploadpic": "attach or select or upload client's photo or portrait",
@ -305,7 +305,7 @@
"label.heading.editglaccount": "GL means [[w:General ledger]].",
"label.heading.accounttransfers": "{{Identical|Account transfer}}",
"label.heading.applicant": "{{Identical|Applicant}}",
"label.heading.execute.periodic.accounting": "{{Identical|Accrual}}",
"label.heading.execute.periodic.accounting": "",
"label.anchor.accounting": "{{Identical|Accounting}}",
"label.anchor.accountingrules": "{{Identical|Accounting rule}}",
"label.anchor.accountsclosure": "{{Identical|Account closure}}",
@ -336,6 +336,7 @@
"accountUsage.header": "{{Identical|Header}}",
"validation.msg.GLAccount.glCode.cannot.be.blank": "GL means [[w:General ledger]].",
"label.heading.sql": "{{Identical|Sql}}",
"label.heading.parameter": "{{Identical|Parameter}}",
"label.heading.usereport": "{{Identical|Use report}}",
"label.heading.reporttype": "{{Identical|Report type}}",
"label.heading.userreport": "{{Identical|User report}}",
@ -346,9 +347,11 @@
"label.anchor.xbrl": "XBRL is short for eXtensible Business Reporting Language. See [[w:XBRL]].",
"label.input.reporttype": "{{Identical|Report type}}",
"label.input.usereport": "{{Identical|Use report}}",
"label.input.sql": "{{Identical|Sql}}",
"label.input.barchart": "{{Identical|Bar chart}}",
"label.button.runreport": "{{Identical|Run report}}",
"label.button.createreport": "{{Identical|Create report}}",
"label.button.parameters": "{{Identical|Parameter}}",
"label.button.export": "{{Identical|Export}}",
"startDateSelect": "{{Identical|Start date}}",
"endDateSelect": "{{Identical|End date}}",
@ -364,7 +367,7 @@
"label.heading.disbursementdate": "{{Identical|Disbursement date}}",
"label.heading.loanofficer": "{{Identical|Loan officer}}",
"label.heading.disburseamount": "{{Identical|Disburse amount}}",
"label.heading.approvedamount": "{{Identical|Approved amount}}",
"label.heading.approvedamount": "",
"label.heading.interest": "{{Identical|Interest}}",
"label.heading.submittedondate": "{{Identical|Submitted on}}",
"label.heading.approvedondate": "{{Identical|Approved on}}",
@ -389,7 +392,6 @@
"label.heading.viewcollateral": "{{Identical|View collateral}}",
"label.heading.loanscreenreport": "{{Identical|Loan screen report}}",
"label.heading.recoverypayment": "{{Identical|Recovery repayment}}",
"label.heading.campaign": "{{Identical|Campaign}}",
"label.anchor.approve": "{{Identical|Approve}}",
"label.anchor.reject": "{{Identical|Reject}}",
"label.anchor.withdraw": "{{Identical|Withdraw}}",
@ -401,15 +403,16 @@
"label.input.charge": "{{Identical|Charge}}",
"label.input.relationship": "{{Identical|Relationship}}",
"label.input.address": "{{Identical|Address}}",
"label.input.city": "{{Identical|City}}",
"label.input.zip": "{{Identical|Zip}}",
"label.input.residence": "{{Identical|Residence}}",
"label.input.syncdisbursementdatewithmeeting": "Ainda verificar a tradução de meeting",
"label.input.interestchargedfrom": "{{Identical|Interest charged from}}",
"label.input.firstrepaymenton": "{{Identical|First repayment on}}",
"label.input.approvedondate": "{{Identical|Approved on}}",
"label.input.disbursedondate": "{{Identical|Disbursed on}}",
"label.input.loanofficerunassigneddate": "{{Identical|Unassigned on}}",
"label.input.paymenttype": "{{Identical|Payment type}}",
"label.input.actions": "{{Identical|Action}}",
"label.input.linksavings": "{{Identical|Link saving}}",
"label.input.installment": "{{Identical|Select installment}}",
"label.input.loan.disbursaldate": "{{Identical|Disbursement date}}",
@ -433,6 +436,8 @@
"loanStatusType.active": "{{Identical|Active}}",
"loanStatusType.closed.reschedule.outstanding.amount": "{{Identical|Closed}}",
"validation.msg.loan.linkAccountId.cannot.be.blank": "",
"validation.msg.loan.repaymentEvery.cannot.be.blank": "Please rephrase \"Repaid every\".",
"validation.msg.loan.repaymentEvery.not.greater.than.zero": "Please rephrase the term \"repaid every\"",
"validation.msg.Guarantor.firstname.cannot.be.blank": "{{Identical|First name is mandatory}}",
"validation.msg.Guarantor.lastname.cannot.be.blank": "{{Identical|Last name is mandatory}}",
"label.heading.terms": "{{Identical|Term}}",
@ -443,6 +448,9 @@
"label.heading.receiptnumber": "{{Identical|Receipt number}}",
"label.heading.banknumber": "{{Identical|Bank}}",
"label.heading.assets": "{{Identical|Asset}}",
"label.heading.lienAllowed": "See https://en.wikipedia.org/wiki/Lien",
"label.heading.maxAllowedLienLimit": "See https://en.wikipedia.org/wiki/Lien",
"label.heading.lienTransaction": "See https://en.wikipedia.org/wiki/Lien",
"label.heading.minRequiredBalance": "{{Identical|Minimum balance}}",
"label.input.charges": "{{Identical|Charge}}",
"label.input.chargetimetype": "{{Identical|Charge time type}}",
@ -450,6 +458,7 @@
"label.input.product": "{{Identical|Product}}",
"label.input.submittedon": "{{Identical|Submitted on}}",
"label.input.savingaccountapprovedOnDate": "{{Identical|Approved on}}",
"label.input.Lein": "See https://en.wikipedia.org/wiki/Lien",
"label.input.accnum": "{{Identical|Account}}",
"label.input.checknumber": "{{Identical|Cheque}}",
"label.input.receiptnumber": "{{Identical|Receipt}}",
@ -466,13 +475,15 @@
"label.button.loanscreenreport": "{{Identical|Loan screen report}}",
"label.button.paycharge": "{{Identical|Pay charge}}",
"label.button.inactivatecharge": "{{Identical|Inactivate charge}}",
"label.on": "{{Identical|On}}",
"label.on": "{{Identical|On}}\nlacks context",
"label.survey": "{{Identical|Survey}}",
"label.account.deposit.principal.amount": "{{Identical|Principal amount}}",
"label.account.deposit.period": "{{Identical|Period}}",
"label.account.maturity.date": "{{Identical|Maturity date}}",
"label.account.maturity.amount": "{{Identical|Maturity amount}}",
"label.account.deposit.frequency": "{{Identical|Deposit frequency}}",
"label.tooltip.lienallowed": "See https://www.dictionary.com/browse/lien",
"label.tooltip.maxallowedlienlimit": "See https://www.dictionary.com/browse/lien",
"savings.interest.rate.savingsPeriodFrequencyType.days": "{{Identical|Per day}}",
"savings.interest.rate.savingsPeriodFrequencyType.weeks": "{{Identical|Per week}}",
"savings.interest.rate.savingsPeriodFrequencyType.months": "{{Identical|Per month}}",
@ -500,7 +511,7 @@
"savingsAccountTransactionType.withdrawalFee": "{{Identical|Withdrawal fee}}",
"savingsAccountTransactionType.annualFee": "{{Identical|Annual fee}}",
"savingsAccountTransactionType.initiateTransfer": "{{Identical|Initiate transfer}}",
"savingsAccountTransactionType.approveTransfer": "{{Identical|Approve transfer}}",
"savingsAccountTransactionType.approveTransfer": "",
"savingsAccountTransactionType.withdrawTransfer": "{{Identical|Withdraw transfer}}",
"savingsAccountTransactionType.rejectTransfer": "{{Identical|Reject transfer}}",
"savingsAccountStatusType.invalid": "{{Identical|Invalid status}}",
@ -513,7 +524,7 @@
"recurring.deposit.frequency.periodFrequencyType.months": "{{Identical|Month}}",
"recurring.deposit.frequency.periodFrequencyType.years": "{{Identical|Year}}",
"label.heading.createuser": "{{Identical|Create user}}",
"label.heading.permissions": "{{Identical|Permission}}",
"label.heading.permissions": "Heading label 'permissions'",
"label.heading.edituser": "{{Identical|Edit user}}",
"label.heading.enabled": "{{Identical|Enabled}}",
"label.heading.systemusers": "{{Identical|System user}}",
@ -526,12 +537,10 @@
"label.heading.roles": "{{Identical|Role}}",
"label.anchor.users": "{{Identical|User}}",
"label.anchor.createuser": "{{Identical|Create user}}",
"label.anchor.editpermissions": "{{Identical|Edit permission}}",
"label.anchor.edituser": "{{Identical|Edit user}}",
"label.anchor.globalconfigurations": "{{Identical|Global configuration}}",
"label.anchor.editconfiguration": "{{Identical|Edit configuration}}",
"label.input.username": "{{Identical|Username}}",
"label.input.email": "{{Identical|E-mail}}",
"label.input.password": "{{Identical|Password}}",
"label.input.repeatpassword": "{{Identical|Repeat password}}",
"label.input.selectroles": "{{Identical|Select role}}",
@ -546,6 +555,7 @@
"label.anchor.organization": "{{Identical|Organization}}",
"label.anchor.editrole": "{{Identical|Edit role}}",
"label.input.percentage": "{{Identical|Percentage}}",
"label.input.debitaccounttype": "{{Identical|Debit}}\n{{Identical|Account type}}",
"validation.msg.office.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
"validation.msg.fund.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
"validation.msg.staff.lastname.cannot.be.blank": "{{Identical|Last name is mandatory}}",
@ -555,7 +565,6 @@
"label.heading.addcode": "{{Identical|Add code}}",
"label.heading.codename": "{{Identical|Code name}}",
"label.heading.events": "{{identical|Event}}",
"label.heading.isactive": "{{identical|Active}}",
"label.heading.entityname": "{{Identical|Entity name}}",
"label.heading.createdatatable": "{{Identical|Create data table}}",
"label.heading.columns": "{{Identical|Column}}",
@ -569,9 +578,10 @@
"label.heading.position": "{{Identical|Position}}",
"label.heading.fieldname": "{{Identical|Field name}}",
"label.heading.follow": "{{Identical|Follow}}",
"label.heading.cronexpression": "a cron expression is expression used to schedule a task to be performed at a certain time and/or a certain frequency by the system. it is often used on web servers to do scheduled maintainence and such",
"label.heading.jobname": "{{Identical|Job name}}",
"label.heading.version": "{{Identical|Version}}",
"label.heading.checker": "{{Identical|Checker}}",
"label.heading.checker": "",
"label.anchor.templates": "{{Identical|Template}}",
"label.anchor.system": "{{Identical|System}}",
"label.anchor.addcode": "{{Identical|Add code}}",
@ -580,6 +590,7 @@
"label.anchor.createdatatable": "{{Identical|Create data table}}",
"label.anchor.editcode": "{{Identical|Edit code}}",
"label.anchor.editdatatable": "{{Identical|Edit data table}}",
"label.anchor.clickheretogeneratecron": "a cron expression is expression used to schedule a task to be performed at a certain time and/or a certain frequency by the system. it is often used on web servers to do scheduled maintainence and such",
"label.anchor.addrole": "{{Identical|Add role}}",
"label.anchor.viewroles": "{{Identical|View role}}",
"label.anchor.viewrole": "{{Identical|View role}}",
@ -596,6 +607,7 @@
"label.input.datatablename": "{{Identical|Data table name}}",
"label.input.addcolumns": "{{Identical|Add column}}",
"label.input.position": "{{Identical|Position}}",
"label.input.cornexpression": "a cron expression is expression used to schedule a task to be performed at a certain time and/or a certain frequency by the system. it is often used on web servers to do scheduled maintainence and such",
"label.input.jobname": "{{Identical|Job name}}",
"Customer Identifier": "{{Identical|Customer identifier}}",
"LoanCollateral": "{{Identical|Loan collateral}}",
@ -616,6 +628,7 @@
"label.button.addpreferences": "{{Identical|Add preferences}}",
"label.loan": "{{Identical|Loan}}",
"label.client": "{{Identical|Client}}",
"label.entity": "{{Identical|Entity}}",
"label.group": "{{Identical|Group}}",
"label.center": "{{Identical|Center}}",
"label.office": "{{Identical|Office}}",
@ -630,6 +643,8 @@
"validation.msg.code.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
"validation.msg.code.value.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
"validation.msg.role.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
"validation.msg.schedulerjob.cronExpression.cannot.be.blank": "a cron expression is expression used to schedule a task to be performed at a certain time and/or a certain frequency by the system. it is often used on web servers to do scheduled maintainence and such",
"validation.msg.schedulerjob.cronExpression.invalid": "a cron expression is expression used to schedule a task to be performed at a certain time and/or a certain frequency by the system. it is often used on web servers to do scheduled maintainence and such",
"label.tooltip.global.rounding-mode": "These are the [https://en.wikipedia.org/wiki/IEEE_floating_point#Rounding_rules standard IEEE rounding modes] used for computing or displaying values when not all decimals can be represented:\n\n* 0 (UP) : round up to the nearest upper value (towards +Infinity)\n* 1 (DOWN) : round down to the nearest lower value (towards -Infinity)\n* 2 (CEILING) : round the absolute value to the nearest upper value (towards -Infinity if negative, or +Infinity if positive)\n* 3 (FLOOR) : round the absolute value to the nearest lower value (towards zero)\n* 4 (HALF_UP) : round to the nearest value, or round up the exact half values (towards +Infinity)\n* 5 (HALF_DOWN) : round to the nearest value, or round down the exact half values (towards -Infinity)\n* 6 (HALF_EVEN) : round to the nearest value, or round up or down the exact half value to the nearest even value\n\nThe two first modes 0 and 1 (UP and DOWN) are generally not suitable for accounting as they are not symetric but they are used for some mathematical formulas (notably those using modular arithmetic, such as cyclic calendar computations).\n\nFor pricing, billing or tax reports, mode 3 (FLOOR) for rounding down the absolute value is generally used. Mode 2 (CEILING) may also be used for counting necessary units (where the unused parts will be discarded/disposed/recycled but still considered reserved and used even if they are not needed) and it may be useful to implement a minimum number of unseparatable units to bill to a customer.\n\nFor currency conversion, mode 4 (HALF_UP) for rounding to the nearest value, or rounding up the exact half values, is most often used. Mode 5 (HALF_DOWN), a variant where exact half values are rounded down instead, is rarely used.\n\nThe last mode 6 (HALF_EVEN) is generally recommended for scientific computation in intermediate results, as it minimizes the average rounding errors. (It is usually the default rounding mode in programming languages, where rounding occurs implicitly due to limited storage precision).",
"label.heading.addproductmix": "{{Identical|Add product mix}}",
"label.heading.editproductmix": "{{Identical|Edit product mix}}",
@ -671,6 +686,7 @@
"label.input.amortization": "{{Identical|Amortization}}",
"label.input.arearstolerance": "{{Identical|Arrear tolerance}}",
"label.input.repaymentstrategy": "{{Identical|Repayment strategy}}",
"label.input.none": "{{Identical|None}}",
"label.input.cash": "{{Identical|Cash}}",
"label.input.": "{{Identical|Cash}}",
"label.input.interest.on.overdrafts": "{{Identical|Overdraft interest income}}",
@ -691,6 +707,7 @@
"chargeTimeType.savingsActivation": "{{Identical|Savings activation}}",
"chargeTimeType.annualFee": "{{Identical|Annual fee}}",
"chargeTimeType.monthlyFee": "{{Identical|Monthly fee}}",
"chargeTimeType.tranchedisbursement": "A tradução de tranche como parcela parece mais apropriado",
"chargeCalculationType.percent.of.amount": "{{Identical|Amount}}",
"chargeCalculationType.percent.of.interest": "{{Identical|Interest}}",
"validation.msg.loanproduct.name.cannot.be.blank": "{{Identical|Name is mandatory}}",
@ -740,7 +757,7 @@
"groupattendance": "{{Identical|Group attendance}}",
"addgroup": "{{Identical|Add group}}",
"centerattendance": "{{Identical|Center attendance}}",
"createcharge": "{{Identical|Create charge}}",
"createcharge": "",
"login": "{{Identical|Log in}}",
"editcode": "{{Identical|Edit code}}",
"systemviewreport": "{{Identical|View report}}",
@ -783,6 +800,8 @@
"startDate": "{{Identical|Start date}}",
"label.anchor.editdisbursedate": "{{Identical|Edit disbursement}}",
"label.input.edit": "{{Identical|Edit}}",
"label.input.lienallowed": "See https://www.dictionary.com/browse/lien",
"label.input.maxallowedlienlimit": "See https://www.dictionary.com/browse/lien",
"label.input.selectclients": "{{Identical|Select client}}",
"label.input.selected": "{{Identical|Selected}}",
"label.button.filter": "{{Identical|Filter}}",
@ -865,5 +884,6 @@
"label.input.options": "{{Identical|Option}}",
"label.heading.options": "{{Identical|Option}}",
"label.heading.question": "{{Identical|Question}}",
"label.heading.survey": "{{Identical|Survey}}"
"label.heading.survey": "{{Identical|Survey}}",
"label.collaterals": "{{Identical|Collateral}}"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,18 +1,20 @@
{
"@metadata": {
"authors": [
"Jopparn",
"WikiPhoenix",
"Tobulos1",
"Per",
"Lokal Profil",
"Fader",
"Ainali",
"Bengtsson96",
"Fader",
"Jenniesarina",
"Josve05a",
"Jkl",
"Jopparn",
"Josve05a",
"Lokal Profil",
"Per",
"Sabelöga",
"Tobulos1",
"Tölvuforritari",
"Umeaboy",
"Bengtsson96"
"WikiPhoenix"
]
},
"label.heading.totalshares": "Andelar totalt",
@ -27,8 +29,8 @@
"label.heading.accnum": "Konto #",
"label.heading.staff": "Personal",
"label.heading.office": "Kontor",
"label.heading.delete": "Radera",
"label.heading.reject": "Avvisa",
"label.heading.delete": "Bekräfta radering?",
"label.heading.reject": "Bekräfta avvisning?",
"label.heading.deleterole": "Radera roll",
"label.heading.disablerole": "Inaktivera roll",
"label.heading.disabled": "Inaktiverad",
@ -42,20 +44,25 @@
"label.heading.type": "Typ",
"label.heading.category": "Kategori",
"label.heading.balance": "Balans",
"label.heading.viewreceipts": "Visa recept",
"label.heading.savingaccount": "Sparkonto",
"label.heading.description": "Beskrivning",
"label.heading.approve": "Godkänn",
"label.heading.shortname": "Kort namn",
"label.heading.approve": "Bekräfta godkännande?",
"label.heading.actions": "Åtgärder",
"label.heading.loanaccoverview": "Översikt för lånkonto",
"label.heading.upcomingcharges": "Kommande ändringar",
"label.heading.savingsaccoverview": "Översikt för sparkonto",
"label.heading.members": "Medlemmar",
"label.heading.confirm": "Bekräfta",
"label.heading.attendance": "Närvaro",
"label.heading.comments": "Kommentarer",
"label.heading.id": "ID",
"label.heading.activationdate": "Aktiveringsdatum",
"label.heading.externalid": "Externt ID",
"label.heading.summary": "Sammanfattning",
"label.heading.products": "Produkter",
"label.heading.branch": "Gren",
"label.heading.notes": "Anteckningar",
"label.heading.closedaccount": "Stängt konto",
"label.heading.transactiondate": "Transaktionsdatum",
@ -69,10 +76,13 @@
"label.heading.accounttype": "Kontotyp",
"label.heading.user": "Användare",
"label.heading.loan": "Lån",
"label.heading.principal": "Huvudsäte",
"label.heading.amount": "Belopp",
"label.heading.date": "Datum",
"label.heading.transactiontype": "Transaktionstyp",
"label.heading.due": "Förfaller",
"label.heading.paid": "Betald",
"label.heading.outstanding": "Utomstående",
"label.heading.resourceid": "Resurs-ID",
"label.heading.details": "Detaljer",
"label.heading.notprovided": "Inte tillhandahållen",
@ -85,6 +95,8 @@
"label.input.between": "mellan",
"label.heading.percentage": "Procent",
"label.heading.reset": "Återställ",
"label.input.liabilityaccount": "Skuldkonto (krediteras)",
"label.input.expenseaccount": "Kostnadskonto (debiteras)",
"label.heading.campaignname": "Kampanjnamn",
"label.heading.smsProvider": "SMS-leverantör",
"label.heading.templatemsg": "Mallmeddelande",
@ -94,6 +106,10 @@
"label.heading.messagedetails": "Meddelandedetaljer",
"label.heading.businessRule": "Affärsregel",
"label.heading.campaignMessage": "Kampanjmeddelande",
"label.heading.address": "Adress",
"label.heading.createdby": "Skapad av",
"label.heading.campaign": "Kampanj",
"label.heading.isactive": "Status",
"label.menu.selectloanofficer": "Välj personal",
"label.menu.selectone": "Välj en",
"label.menu.smsProvider": "Välj SMS-leverantör",
@ -102,12 +118,17 @@
"label.achor.activate": "Aktivera",
"label.anchor.close": "Stäng",
"label.anchor.activate": "Aktivera",
"label.anchor.importclients": "Klienter",
"label.anchor.importoffices": "Kontor",
"label.anchor.editpermissions": "Redigera behörigheter",
"label.input.name": "Namn",
"label.input.firstname": "Förnamn",
"label.input.lastname": "Efternamn",
"label.input.middlename": "Mellannamn",
"label.input.mobileNumber": "Mobilnummer",
"label.input.age": "ålder",
"label.input.maritalstatus": "Civilstånd",
"label.input.profession": "Yrke",
"label.input.fullname": "Namn",
"label.input.accno": "Kontonummer",
"label.input.activationdate": "Aktiveringsdatum",
@ -140,10 +161,15 @@
"label.input.transfertype": "Överföringstyp",
"label.input.true": "Sant",
"label.input.false": "Falskt",
"label.input.remarks": "Kommentarer",
"label.input.campaignName": "Kampanjnamn",
"label.input.campaignType": "Kampanjtyp",
"label.input.businessRule": "Affärsregel",
"label.input.campaignMessage": "Kampanjmeddelande",
"label.input.alias": "Alias",
"label.input.status": "Status",
"label.input.city": "Stad",
"label.input.email": "E-post",
"label.button.previous": "Föregående",
"label.button.next": "Nästa",
"label.button.save": "Skicka",
@ -158,6 +184,7 @@
"label.button.newloan": "Nytt lån",
"label.button.transferclient": "Överför klient",
"label.button.newsaving": "Ny sparning",
"label.button.newcharge": "Lägg till avgift",
"label.button.accepttransfer": "Acceptera överföring",
"label.button.rejecttransfer": "Avvisa överföring",
"label.button.undotransfer": "Ångra överföring",
@ -177,6 +204,7 @@
"label.button.validate": "Validera",
"label.button.pattern": "Mönster",
"label.button.proceed": "Fortsätt",
"label.button.addAddress": "Lägg till adress",
"label.belongsto": "Tillhör",
"label.memberof": "Medlem i",
"label.createdby": "Skapad av",
@ -192,10 +220,13 @@
"label.none": "Ingen",
"label.nodatafound": "Ingen data relaterad till sökparametrarna hittades.",
"label.mustbenumeric": "Måste vara numerisk",
"label.percentage": "Andel i procent",
"label.and": "och",
"label.today": "Idag",
"label.select": "Välj ett alternativ",
"label.delete": "Radera",
"label.selectentity": "Välj enhet",
"label.selectaction": "Välj åtgärd",
"label.error": "Fel",
"error.login.failed": "Var god försök igen. Dina inloggningsuppgifter är ogiltiga.",
"error.connection.failed": "Kunde inte ansluta till servern. Se till att du använder rätt inställningar.",
@ -295,9 +326,8 @@
"label.anchor.profile": "Profil",
"label.anchor.settings": "Inställningar",
"label.anchor.navigation": "Navigering",
"label.anchor.collectionsheet": "Samlingblad",
"label.anchor.collectionsheet": "Samlingsblad",
"label.anchor.client": "Klient",
"label.anchor.importclients": "Klienter",
"label.anchor.group": "Grupp",
"label.anchor.center": "Center",
"label.anchor.frequentpostings": "Frekventa inlägg",
@ -341,14 +371,11 @@
"label.button.resetPassword": "Återställ lösenord",
"label.button.viewpermissions": "Visa behörigheter",
"label.youneedtologintoaccessthisarea": "Du behöver logga in för att komma åt detta område",
"label.selectaction": "Välj åtgärd",
"label.selectentity": "Välj enhet",
"label.selectugdtemplate": "Välj UGD-mall",
"label.nodata": "Ingen data",
"label.notactivated": "Inte aktiverad",
"label.unassigned": "Otilldelad",
"label.searchorpress": "Klicka eller tryck Alt+X för att söka",
"label.heading.address": "Adress",
"label.heading.familymembers": "Familjemedlemmar",
"label.heading.identities": "Identiteter",
"label.heading.uniqueidentification": "Unikt ID #",
@ -383,7 +410,6 @@
"label.input.selectfile": "Välj fil",
"label.input.selectexcelfile": "Välj Excel-fil",
"label.input.documenttype": "Dokumenttyp",
"label.input.status": "Status",
"label.input.uniqueidentification": "Unikt ID #",
"label.input.mobilenumber": "Mobilnummer",
"label.input.client.activationdate": "Aktiveringsdatum",
@ -517,7 +543,6 @@
"label.heading.currency": "Valuta",
"label.heading.transferringto": "Överför till",
"label.heading.transferredfrom": "Överförd från",
"label.heading.createdby": "Skapad av",
"label.menu.filterbyoffice": "Filtrera efter kontor",
"label.anchor.addrule": "Lägg till regel",
"label.anchor.searchjournalentries": "Sök journalinlägg",
@ -535,11 +560,11 @@
"label.input.parent": "Överordnad",
"label.input.currency": "Valuta",
"label.input.smsprovider": "SMS-leverantör",
"label.button.addAddress": "Lägg till adress",
"label.button.listview": "Listvy",
"label.button.treeview": "Trädvy",
"label.button.addaccount": "Lägg till konto",
"label.button.addrule": "Lägg till regel",
"label.button.expand.all": "Fäll ut allt",
"label.button.collapse.all": "Stäng alla",
"label.alloffice": "Alla kontor",
"label.selectoffice": "Välj kontor",
@ -642,13 +667,11 @@
"label.heading.transactions": "Transaktioner",
"label.heading.inadvance": "I förväg",
"label.heading.editloanaccounttransaction": "Redigera transaktion",
"label.heading.campaign": "Kampanj",
"label.anchor.approve": "Godkänn",
"label.anchor.reject": "Avslå",
"label.anchor.viewschedule": "Schema",
"label.input.relationship": "Förhållande",
"label.input.address": "Adress",
"label.input.city": "Stad",
"label.input.zip": "Postnummer",
"label.input.mobile": "Mobil",
"label.input.residence": "Hemnummer",
@ -732,11 +755,9 @@
"label.heading.failurecount": "Antal misslyckanden",
"label.anchor.users": "Användare",
"label.anchor.createuser": "Skapa användare",
"label.anchor.editpermissions": "Redigera behörigheter",
"label.anchor.edituser": "Redigera användare",
"label.anchor.globalconfigurations": "Globala konfigurationer",
"label.input.username": "Användarnamn",
"label.input.email": "E-post",
"label.input.autogeneratepassword": "Generera lösenord automatiskt",
"label.input.password": "Lösenord",
"label.input.repeatpassword": "Upprepa lösenord",
@ -775,7 +796,6 @@
"label.heading.alternateworkingday": "Alternativ arbetsdag",
"label.heading.managefunds": "Hantera fonder",
"label.heading.todate": "Till datum",
"label.anchor.importoffices": "Kontor",
"label.anchor.importusers": "Användare",
"label.anchor.importgroups": "Grupper",
"label.anchor.importloanaccounts": "Lånekonton",
@ -874,17 +894,16 @@
"label.anchor.managemembers": "Hantera medlemmar",
"label.anchor.addressConfiguration": "Adresskonfiguration",
"label.input.addressType": "Adresstyp",
"label.input.street": "Gata",
"label.input.addressline1": "Adressrad 1",
"label.input.addressline2": "Adressrad 2",
"label.input.addressline3": "Adressrad 3",
"label.input.street": "Gata",
"label.input.town_village": "Stad / By",
"label.input.county_district": "Län / Distrikt",
"label.input.state_province": "Stat / Landskap",
"label.input.postal_code": "Postnummer",
"label.input.latitude": "Latitud",
"label.input.longitude": "Longitud",
"label.input.alias": "Alias",
"label.input.type": "Typ",
"label.input.templatename": "Mallnamn",
"label.input.codename": "Kodnamn",
@ -899,6 +918,7 @@
"label.button.addrole": "Lägg till roll",
"label.button.createsurvey": "Skapa enkät",
"label.client": "Klient",
"label.entity": "Entitet:",
"label.group": "Grupp",
"label.office": "Kontor",
"label.boolean": "Boolesk",
@ -1032,6 +1052,7 @@
"label.input.selectclients": "Välj klienter",
"label.anchor.office": "Kontor",
"label.input.officetemplate": "Office-mall",
"label.heading.interestratedetails.incentive.conditiontype": "Condition",
"incentiveConditionType.greterthan": "Större än",
"incentiveConditionType.lessthan": "Mindre än",
"incentiveConditionType.notequal": "Inte lika med",
@ -1049,7 +1070,6 @@
"label.heading.cashmgmt.cashier.txnDate": "Datum",
"label.heading.cashmgmt.cashier.txnDetails": "Detaljer",
"label.input.teller.cashiertxn.txnDate": "Datum",
"------------------": "------------",
"label.anchor.workingDays": "Arbetsdagar",
"label.heading.workingDays": "Arbetsdagar",
"label.input.workingDays": "Arbetsdagar",
@ -1119,5 +1139,11 @@
"reportRunFrequency.monthly": "Månatligen",
"reportRunFrequency.yearly": "Årligen",
"reportRunFrequency.custom": "Anpassad",
"label.heading.activate.group": "Aktivera grupp",
"validation.msg.sharesproduct.sharesIssued.cannot.be.greater.than.totalNumberOfShares": "Antalet delade ärenden bör vara mindre än totala antalet delningar.",
"validation.msg.sharesproduct.description.cannot.be.blank": "Beskrivningen kan inte vara tom.",
"label.input.new.emi": "Nytt EMI",
"label.input.changeEMI": "Ändra EMI",
"label.input.installment.date": "Installeringsdatum",
"----End---": "--Slut på filen--"
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,245 @@
{
"@metadata": {
"authors": [
"Chaduvari",
"Kiranmayee",
"Naidugari Jayanna",
"Ravichandra",
"Veeven",
"సన్మిత్ర - SANMTIRA"
]
},
"label.heading.name": "పేరు",
"label.heading.accnum": "ఖాతా#",
"label.heading.staff": "సిబ్బంది",
"label.heading.office": "కార్యాలయం",
"label.heading.delete": "తొలగించు",
"label.heading.disabled": "దిసేబుల్డ్",
"label.heading.unassignstaff": "సిబ్బందిని తొలగించు",
"label.heading.assignstaff": "సిబ్బందిని నియమించు",
"label.heading.general": "సాధారణ",
"label.heading.performancehistory": "ప్రదర్శన చరిత్ర",
"label.heading.settings": "అమరికలు",
"label.heading.status": "స్థితి",
"label.heading.loanaccount": "అప్పు ఖాతా",
"label.heading.type": "రకం",
"label.heading.category": "వర్గం",
"label.heading.balance": "నిల్వ",
"label.heading.savingaccount": "దాచు ఖాతా",
"label.heading.description": "వివరణ",
"label.heading.shortname": "పొట్టిపేరు",
"label.heading.approve": "ఆమోదించు",
"label.heading.actions": "చర్యలు",
"label.heading.members": "సభ్యులు",
"label.heading.confirm": "నిర్థారించండి",
"label.heading.attendance": "హాజరు",
"label.heading.comments": "వ్యాఖ్యలు",
"label.heading.id": "ఐడీ",
"label.heading.activationdate": "చేతనపు తేదీ",
"label.heading.externalid": "ఎక్స్టర్నల్ ఐడి :",
"label.heading.summary": "సారాంశం",
"label.heading.products": "ఉత్పత్తులు",
"label.heading.branch": "శాఖ",
"label.heading.notes": "గమనికలు",
"label.heading.closedaccount": "మూసేసిన ఖాతా",
"label.heading.account": "ఖాతా",
"label.heading.debit": "అప్పు",
"label.heading.credit": "ఋణం",
"label.heading.error": "లోపం",
"label.heading.accounttype": "కాతా రకం",
"label.heading.user": "వాడుకరి",
"label.heading.loan": "అప్పు",
"label.heading.amount": "మొత్తం",
"label.heading.date": "తేదీ",
"label.heading.due": "చెల్లించవలసింది",
"label.heading.paid": "చెల్లించబడింది",
"label.heading.waived": "ఎత్తివేయబడింది",
"label.heading.outstanding": "బ్రహ్మాండం",
"label.heading.details": "వివరాలు",
"label.heading.identitydocuments": "ధృవీకరణ పత్రాలు",
"label.heading.notprovided": "ఇవ్వలేదు",
"label.heading.notavailable": "అందుబాటులో లేదు",
"label.heading.patternupdate": "సరళి మార్పు",
"label.input.between": "మధ్య",
"label.heading.count": "గణన",
"label.heading.percentage": "శాతం",
"label.heading.loanamount": "ఖచ్చిత ఋణం",
"label.heading.outstandingamount": "మిగులు ఋణం",
"label.heading.dueamount": "నగదు చెల్లింపు",
"label.heading.interest.paid": "వడ్డీ చెల్లింపు",
"label.heading.principal.repayment": "నగదు చెల్లింపు",
"label.menu.selectloanofficer": "సిబ్బందిని ఎంచుకో",
"label.menu.selectone": "ఒకటి ఎంచుకో",
"label.anchor.delete": "తొలగించు",
"label.achor.activate": "చేతనంచేయి",
"label.anchor.close": "మూసివేయి",
"label.anchor.assignstaff": "సిబ్బందిని నియమించు",
"label.anchor.activate": "చేతనంచేయి",
"label.input.name": "పేరు",
"label.input.firstname": "మొదటి పేరు",
"label.input.lastname": "ఇంటి పేరు",
"label.input.middlename": "మధ్య పేరు",
"label.input.accno": "ఖాతా#",
"label.input.activationdate": "చేతనపు తేదీ",
"label.input.staff": "సిబ్బంది",
"label.input.office": "కార్యాలయం",
"label.input.client": "ఖాతాదారు",
"label.input.clients": "ఖాతాదారులు",
"label.input.notes": "గమనికలు",
"label.input.externalid": "బయటి ఐడి",
"label.input.active": "క్రియాశీలం",
"label.input.assignstaff": "సిబ్బందిని నియమించు",
"label.input.closuredate": "మూసిన తేదీ",
"label.input.closurereason": "మూతకు కారణం",
"label.input.description": "వివరణ",
"label.input.repeat": "మళ్ళీ",
"label.input.comments": "వ్యాఖ్యలు",
"label.input.closurereasons": "మూతకు కారణం",
"label.input.enteractivationdate": "క్రియాశీల తేదిని పొందుపరుచు",
"label.input.filterbynameorstatusoroffice": "పేరు/స్థితి/కార్యాలయంచే వడబోయి",
"label.input.filterbyname": "పేరుతో వడబోయి",
"label.input.transactiondate": "లావాదేవీల తేది",
"label.input.fromdate": "తేదీ నుండి",
"label.input.todate": "తేదీ వరకు",
"label.input.amount": "మొత్తం",
"label.input.branchoffice": "శాఖా కార్యాలయం",
"label.input.center": "మధ్యగతం",
"label.input.group": "గుంపు",
"label.input.meetingcalendar": "సమావేశ సూచిక",
"label.input.total": "మొత్తం",
"label.input.note": "గమనిక",
"label.input.language": "భాష",
"label.input.dateformat": "తేదీ ఆకృతి",
"label.input.gender": "లింగం:",
"label.input.dateofbirth": "పుట్టిన తేదీ",
"label.input.sqlSearch": "SQL శోధన",
"label.input.transfertype": "బదిలీ రకం",
"label.input.true": "సత్యం",
"label.input.false": "అసత్యం",
"label.button.previous": "గత",
"label.button.next": "తరువాతి",
"label.button.save": "పంపించు",
"label.button.cancel": "రద్దుచేయి",
"label.button.edit": "సవరించు",
"label.button.delete": "తొలగించు",
"label.button.confirm": "నిర్థారించండి",
"label.button.unassignstaff": "సిబ్బందిని తొలగించు",
"label.button.assignstaff": "సిబ్బందిని నియమించు",
"label.button.close": "మూసివేయి",
"label.button.activate": "చేతనంచేయి",
"label.button.newloan": "కొత్త అప్పు",
"label.button.deleteall": "అన్నిటినీ తొలగించు",
"label.button.add": "చేర్చు",
"label.button.attendance": "హాజరు",
"label.button.unassign": "తప్పించు",
"label.button.advancesearch": "నిశితమైన అన్వేషణ",
"label.button.enable": "చేతనం చెయ్యి",
"label.button.disable": "అచేతనం చెయ్యి",
"label.button.more": "మరిన్ని",
"label.button.reject": "తిరస్కరించు",
"label.button.pay": "చెల్లించు",
"label.button.validate": "సరిచూడు",
"label.button.pattern": "సరళి",
"label.belongsto": "దీనికి చెందినది",
"label.memberof": "సభ్యులు:",
"label.createdby": "సృష్టించినది",
"label.createdon": "రూపొందిన తేదీ",
"label.areyousure": "మీరు నిజంగానే అంటున్నారా?",
"label.requiredfield": "తప్పనిసరి ఫీల్డు",
"label.all": "అన్నీ",
"currency.USD": "అమెరికా డాలరు",
"label.selectone": "ఒకటి ఎంచుకో",
"label.requirefield": "తప్పనిసరి ఫీల్డు",
"label.none": "ఏమీలేదు",
"label.savesuccessfully": "భద్రపరచబడింది",
"label.mustbenumeric": "అంకెల్లోనే ఉండాలి",
"label.delete": "తొలగించు",
"label.error": "లోపం",
"error.login.failed": "ఇచ్చిన సమాచారం సరి ఐనది కాదు. మరల ప్రయత్నించండి",
"error.msg.header": "క్రింది లోపాలున్నాయి:",
"validation.msg.invalid.date.format": "చెల్లని తేదీ ఫార్మాటు.",
"validation.msg.document.fileName.cannot.be.blank": "ఒక దస్త్రాన్ని ఎంచుకోండి.",
"validation.msg.document.name.cannot.be.blank": "పత్రపు పేరు ఇవ్వండి.",
"resourceId.not.integer": "ఐడీ అనేది సంఖ్య అయి ఉండాలి.",
"error.msg.resource.not.found": "అడిగిన వనరు అందుబాటులో లేదు.",
"validation.msg.calendar.title.cannot.be.blank": "శీర్షిక తప్పనిసరి.",
"validation.msg.calendar.startDate.cannot.be.blank": "ప్రారంభపు తేదీ తప్పనిసరి.",
"validation.msg.calendar.typeId.cannot.be.blank": "క్యాలండరు రకం తప్పనిసరి",
"validation.msg.calendar.description.cannot.be.blank": "వివరణ ఖాళీగా వదలకూడదు.",
"validation.msg.calendar.location.cannot.be.blank": "ప్రాంతం ఖాళీగా వదలకూడదు.",
"validation.msg.calendar.endDate.cannot.be.blank": "ముగింపు తేదీ ఖాళీగా వదలకూడదు.",
"validation.msg.calendar.duration.cannot.be.blank": "వ్యవధి ఖాళీగా ఉండకూడదు.",
"label.heading.home": "ఇల్లు",
"label.heading.parentoffice": "ప్రధాన కార్యాలయం:",
"label.heading.openedon": "ప్రారంభ కాలం:",
"label.heading.mifosxclient": "Mifos-X క్లైంట్",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "MifosX ఈరోజు వరకు అప్డేట్ ఐనది",
"label.heading.community": "సముదాయం",
"label.anchor.logout": "లాగ్ అవుట్",
"label.anchor.all": "అన్ని",
"label.anchor.loans": "ఋణాలు",
"label.anchor.savings": "పొదుపు",
"label.anchor.funds": "నిధులు",
"label.anchor.admin": "నిర్వాహకుడు",
"label.anchor.reports": "నివేదికలు",
"label.anchor.profile": "ప్రొఫైల్",
"label.anchor.settings": "సెట్టింగ్స్",
"label.anchor.usermanual": "ఉపయోగించే విదానం",
"label.anchor.functionalspec": "విడన ప్రత్యేకతలు",
"label.anchor.developerzone": "అభివ్రుదికర్తల చోటు",
"label.anchor.usersgroup": "ఉపయోగించేవారు",
"label.anchor.developergroup": "అభివృధికర్తలు",
"label.anchor.keydesignprinciples": "ముఖ్యమైన రూపకల్పన నియమాలు",
"label.anchor.workingwithcode": "కోడ్ పై పనిచేయుట",
"label.anchor.donate": "దానం చేయు",
"label.anchor.irc": "ఐ ఆర్ సి",
"label.input.changelanguage": "భాషను మార్చండి:",
"label.button.signin": "సైన్ ఇన్ అవ్వండి",
"label.anchor.clients": "క్లైంట్లు",
"label.button.clear": "తుడిచివేయి",
"label.anchor.groups": "సమూహాలు",
"label.input.error": "లోపం",
"label.anchor.centers": "కేంద్రాలు",
"label.heading.glcode": "జి ఎల్ కోడ్",
"label.heading.acctype": "కాతా రకం",
"label.heading.manualentriesallowed": "మాన్యువల్ ప్రవేసాలు తీసుకోబడును",
"label.heading.usedas": "వాడే తీరుగా",
"label.heading.parentaccountname": "పేరెంట్ కాతా పేరు",
"label.heading.tag": "ట్యాగ్",
"label.heading.accountusage": "కాతా ఉపయోగం",
"label.anchor.accounting": "అకౌంటింగ్",
"label.input.list": "ఖాతాల జాబితా",
"label.button.addaccount": "కాతాని జోడించు",
"label.heading.loanofficer": "ఋణాలు ఇచ్చే అధికారి:",
"label.heading.reasons": "కారణాలు",
"label.heading.assets": "ఆస్తులు",
"label.input.reasons": "కారణాలు",
"label.input.dayofmonth": "నెలలో రోజు",
"label.anchor.users": "ఉపయోగించువారు",
"label.input.username": "ఉపయోగించు వారి పేరు",
"label.input.password": "పాస్వర్డ్ (రహస్య పదం)",
"label.heading.isLoanOfficer": "అతను ఋణాలు ఇచ్చే అధికారా?:",
"label.heading.namedecorated": "అలంకరించిన పేరు:",
"label.heading.officeName": "కార్యాలయం పేరు:",
"label.anchor.organization": "నిర్వాహక సంస్తలు",
"label.anchor.createemployee": "ఉద్యోగిని జతచేయండి",
"label.heading.position": "స్థానం",
"label.anchor.templates": "టెంప్లేట్లు",
"label.anchor.system": "వ్యవస్థ",
"label.anchor.tasks": "లక్ష్యాలు",
"label.office": "కార్యాలయం",
"label.heading.liabilities": "అప్పులు",
"label.heading.expenses": "ఖర్చులు",
"label.heading.income": "ఆదాయం",
"label.heading.paymenttype": "చెల్లింపు రకం",
"label.anchor.products": "ఉత్పతులు",
"label.anchor.charges": "రుసుములు",
"label.anchor.loanproducts": "ఋణ ఉత్పతులు",
"label.anchor.savingproducts": "పొదుపు ఉత్పత్తులు",
"label.anchor.productsmix": "ఉత్త్పత్తుల మిశ్రమం",
"label.input.totalinstallmentamount": "కట్టవలసిన మొత్తం",
"label.input.minimuminstallmentamount": "కట్టవలసిన కనీస మొత్తం",
"label.input.days": "రోజులు",
"label.input.transfer.to.account": "పొదుపు ఖాతాకి బదిలి చేయి"
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2,16 +2,20 @@
"@metadata": {
"authors": [
"Hantviet",
"Withoutaname",
"Max20091",
"KhangND",
"Levantai1997",
"Max20091",
"Minh Nguyen",
"Nguyên Lê",
"Yue Ling",
"Phjtieudoc"
"Nguyễn Mạnh An",
"Phjtieudoc",
"Thienhau2003",
"Withoutaname",
"Yue Ling"
]
},
"label.heading.totalshares": "Tổng cổ phần",
"label.heading.collaterals": "Tài sản thế chấp",
"label.heading.sharenominalprice": "Danh nghĩa/Đơn giá",
"label.heading.totalsharestobeissued": "Tổng cổ phẩn phát hành",
"label.heading.sharecapitalvalue": "Tổng giá trị cổ phần",
@ -33,12 +37,12 @@
"label.heading.stale_period": "Giai đoạn cũ",
"label.heading.startdate": "Ngày bắt đầu",
"label.heading.enddate": "Ngày kết thúc",
"label.heading.is_active": "Hoạt động",
"label.heading.accnum": "Tài khoản#",
"label.heading.is_active": "Hoạt động?",
"label.heading.accnum": "Số tài khoản",
"label.heading.staff": "Nhân viên",
"label.heading.office": "Văn phòng",
"label.heading.delete": "Xóa",
"label.heading.reject": "Từ chối",
"label.heading.delete": "Xác nhận xóa?",
"label.heading.reject": "Xác nhận từ chối?",
"label.heading.deleterole": "Xóa vai trò",
"label.heading.disablerole": "Vô hiệu hóa vai trò",
"label.heading.disabled": "Tắt",
@ -58,12 +62,12 @@
"label.heading.savingaccount": "Tài khoản tiết kiệm",
"label.heading.description": "Mô tả",
"label.heading.shortname": "Tên viết tắt",
"label.heading.approve": "Chấp nhận",
"label.heading.approve": "Chấp nhận?",
"label.heading.actions": "Hành động",
"label.heading.loanaccoverview": "Tổng quan về tài khoản cho vay",
"label.heading.upcomingcharges": "Phí sắp tới",
"label.heading.savingsaccoverview": "Tổng quan tài khoản tiết kiệm",
"label.heading.members": "Các thành viên",
"label.heading.members": "Thành viên",
"label.heading.confirm": "Xác nhận",
"label.heading.attendance": "Có mặt",
"label.heading.comments": "Bình luận",
@ -108,8 +112,8 @@
"label.heading.issueswithdrawls": "Rút tiết kiệm",
"label.heading.notprovided": "Không cung cấp",
"label.heading.notavailable": "Không tồn tại",
"label.heading.next": "Trang: Tiếp",
"label.heading.prev": "Trang: Trước",
"label.heading.next": "Tiếp",
"label.heading.prev": "Trước",
"label.heading.provisioningcategory": "Danh mục",
"label.heading.minimumage": "Tuổi nhỏ nhất",
"label.heading.maximumage": "Tuổi lớn nhất",
@ -118,7 +122,7 @@
"label.heading.provisioningexpenseaccount": "Tài khoản Chi phí",
"label.heading.provisioningamount": "Số tiền trích lập dự phòng",
"label.heading.rateperiods": "Kỳ lãi suất Thả nổi",
"label.heading.fromdate": "Từ ngày",
"label.heading.fromdate": "Từ ngày:",
"label.heading.interestrate": "Lãi suất",
"label.heading.patternupdate": "Cập nhật mẫu",
"label.input.between": "giữa",
@ -147,7 +151,7 @@
"label.input.maxfloatinginterestrate": "Tỷ lệ Lãi suất tối đa",
"label.input.differentialrate": "Lãi suất khác",
"label.heading.sharesaccoverview": "Xem tài khoản Cổ phần",
"label.heading.shareaccount": "Tài khoản Cổ phần#",
"label.heading.shareaccount": "Số Tài khoản Cổ phần#",
"label.heading.approvedshares": "Phê duyệt cổ phần",
"label.heading.pendingforapproval": "Chờ phê duyệt cổ phần",
"label.heading.purchasedsharesoverview": "Tổng quan giao dịch",
@ -155,7 +159,7 @@
"label.heading.linkedsavingsaccountnumber": "Liên kết TL tiết kiệm (Cổ tức phát hành)",
"label.heading.applyadditionalshares": "Áp dụng Cổ phần bổ sung",
"label.heading.approveadditionalshares": "Phê duyệt Cổ phần bổ sung",
"label.heading.rejectadditionalshares": "Mua lại Cổ phần",
"label.heading.rejectadditionalshares": "Mua lại cổ phần",
"label.heading.sharesapplication": "Tài khoản cổ phần áp dụng",
"label.heading.dividendperiodstartdate": "Ngày bắt đầu giai đoạn Cổ phần",
"label.heading.dividendperiodenddate": "Ngày kết thúc giai đoạn Cổ phần",
@ -179,6 +183,12 @@
"label.heading.templateparameters": "Thông số mẫu có sẵn",
"label.heading.businessRule": "Quy tắc kinh doanh",
"label.heading.campaignMessage": "Tin nhắn chiến dịch",
"label.heading.editsmscampaign": "Sửa chiến dịch SMS",
"label.heading.meetingdetails": "Chi tiết cuộc họp",
"label.heading.address": "Địa chỉ:",
"label.heading.createdby": "Được tạo bởi",
"label.heading.campaign": "Chiến dịch",
"label.heading.isactive": "Trạng thái",
"label.menu.selectloanofficer": "Chọn Nhân viên",
"label.menu.selectone": "Chọn một",
"label.menu.constitution": "Chọn loại hình tổ chức",
@ -194,6 +204,10 @@
"label.anchor.assignstaff": "Cán bộ phụ trách",
"label.anchor.activate": "Kích hoạt",
"label.anchor.updatedefaultaccount": "TK mặc định",
"label.anchor.importclients": "Khách hàng",
"label.anchor.importcenters": "Cụm",
"label.anchor.importoffices": "Văn phòng",
"label.anchor.editpermissions": "Chỉnh sửa quyền",
"label.input.name": "Tên",
"label.input.firstname": "Họ",
"label.input.lastname": "Tên",
@ -206,15 +220,15 @@
"label.input.profession": "Nghề nghiệp",
"label.input.fullname": "Tên",
"label.input.legalForm": "Kiểu mẫu",
"label.input.accno": "Tài khoản #",
"label.input.accno": "Số tài khoản",
"label.input.activationdate": "Ngày kích hoạt",
"label.input.staff": "Nhân viên",
"label.input.office": "Văn phòng",
"label.input.client": "Khách hàng",
"label.input.clients": "Khách hàng",
"label.input.enternote": "Nhập ghi chú",
"label.input.enternote": "Nhập ghi chú:",
"label.input.notes": "Ghi chú",
"label.input.externalid": "Id bên ngoài",
"label.input.externalid": " bên ngoài",
"label.input.active": "Hoạt động",
"label.input.is_active": "Hoạt động?",
"label.input.assignstaff": "Cán bộ phụ trách",
@ -224,8 +238,8 @@
"label.input.repeat": "Lặp lại",
"label.input.comments": "Bình luận",
"label.input.closurereasons": "Lý do đóng",
"label.input.enteractivationdate": "Nhập ngày kích hoạt",
"label.input.filterbynameorstatusoroffice": "Lọc theo tên/tình trạng/văn phòng",
"label.input.enteractivationdate": "Nhập ngày kích hoạt:",
"label.input.filterbynameorstatusoroffice": "Lọc theo tên, tình trạng, văn phòng",
"label.input.filterbyname": "Lọc theo tên",
"label.input.transactiondate": "Ngày giao dịch",
"label.input.fromdate": "Từ ngày",
@ -237,7 +251,7 @@
"label.input.meetingcalendar": "Lịch họp",
"label.input.total": "Tổng cộng",
"label.input.note": "Ghi chú",
"label.input.dueforcollectedon": "Tới hạn thu vốn trên",
"label.input.dueforcollectedon": "Thu vốn tới hạn:",
"label.input.language": "Ngôn ngữ",
"label.input.dateformat": "Kiểu ngày tháng",
"label.input.savingsaccount": "Tài khoản tiết kiệm mặc định",
@ -249,10 +263,10 @@
"label.input.true": "Đúng",
"label.input.false": "Sai",
"label.input.repaymentdate": "Ngày trả nợ",
"label.input.resetconfirmationtext": "Bạn có muốn bỏ tất cả những thay đổi từ đầu đến giờ và thiết lập lại lịch ban đầu?",
"label.input.resetconfirmationtext": "Bạn có muốn gỡ tất cả những thay đổi từ đầu đến giờ và thiết lập lại lịch ban đầu?",
"label.input.incorporationdate": "Ngày thành lập",
"label.input.incorpNumber": "Mã Số đăng ký thành lập",
"label.input.incorpValidityTillDate": "Ngày hết hạn Giấy phép",
"label.input.incorpValidityTillDate": "Hợp nhất có hiệu lực đến",
"label.input.constitution": "Loại hình Tổ chức",
"label.input.mainBusinessLine": "Lĩnh vực kinh doanh chính",
"label.input.remarks": "Ghi chú",
@ -263,14 +277,19 @@
"label.input.campaignMessage": "Tin nhắn chiến dịch",
"label.input.isStaff": "Là cán bộ?",
"label.nextrepaymentdate": "Ngày trả tiếp",
"label.input.alias": "Bí Danh",
"label.input.incomefrominterest": "Thu nhập từ lãi suất",
"label.input.status": "Trạng thái",
"label.input.city": "Thành phố",
"label.input.email": "Thư điện tử",
"label.button.previous": "Trước",
"label.button.next": "Tiếp",
"label.button.save": "Chấp nhận",
"label.button.searchdata": "Tìm kiếm dữ liệu",
"label.button.cancel": "Hủy bỏ",
"label.button.edit": "Chỉnh Sửa",
"label.button.addcb": "Thêm Vp tín dụng",
"label.button.mapcblp": "Bản đồ Vp tín dụng đến Sản phẩm vốn",
"label.button.addcb": "Thêm Văn phòng tín dụng",
"label.button.mapcblp": "Bản đồ Văn phòng giao dịch về Sản phẩm vốn",
"label.button.delete": "Xóa",
"label.button.confirm": "Xác nhận",
"label.button.unassignstaff": "Gỡ Cán bộ",
@ -296,28 +315,29 @@
"label.button.processing": "Đang xử lý",
"label.button.disable": "Vô hiệu hoá",
"label.button.collectionsheet": "Bảng thu vốn",
"label.button.submitandnextcenter": "Chấp nhận và Cụm tiếp theo",
"label.button.submitandnextcenter": "Chấp nhận và Tiến trình cho cụm tiếp theo",
"label.button.viewfullscreen": "Xem toàn màn hình",
"label.button.productivecollectionsheet": "Bảng thu vốn sản phẩm",
"label.button.more": "Thêm nữa",
"label.button.reject": "Từ chối",
"label.button.suspend": "Đình chỉ",
"label.button.pay": "Trả tiền",
"label.button.clientscreenreports": "Màn hình báo cáo khách hàng",
"label.button.clientscreenreports": "Giao diện báo cáo khách hàng",
"label.button.summary": "Tóm tắt",
"label.button.updatedefaultsavings": "Cập nhật Tiết kiệm",
"label.button.submit": "Chấp nhận",
"label.button.selectAll": "Chọn tất cả",
"label.button.deselectAll": "Không chọn tất cả",
"label.button.clientpayments": "Khách hàng thanh toán",
"label.button.submitandprint": "Nộp và in",
"label.button.submitandprint": "Chấp nhận và In",
"label.button.addjournalentry": "Thêm bút toán",
"label.button.validate": "Xác nhận",
"label.button.pattern": "Mẫu",
"label.button.dividends": "Cổ tức",
"label.button.postdividends": "Công bố cổ tức",
"label.button.proceed": "Tiến hành",
"label.uniquelyidentifiedwithid": "Xác định duy nhất với Id",
"label.button.addAddress": "Thêm địa chỉ",
"label.uniquelyidentifiedwithid": "Mã duy nhất",
"label.belongsto": "Thuộc về",
"label.memberof": "Thành viên của",
"label.createdby": "Tạo bởi",
@ -334,20 +354,25 @@
"label.savesuccessfully": "Lưu thành công",
"label.nodatafound": "Không có dữ liệu được tìm thấy liên quan đến các thông số nhập.",
"label.mustbenumeric": "Phải là số",
"label.usernameminfivechars": "Tên người dùng phải dài ít nhất năm ký tự.",
"label.passwordminsixchars": "Mật khẩu phải dài ít nhất sáu ký tự.",
"label.percentage": "Tỷ lệ phần trăm",
"label.outstanding.amount": "Tổng dư nợ vốn",
"label.and": "và",
"label.message.password.expired": "Mật khẩu của bạn hết hạn, xin vui lòng đặt lại mật khẩu của bạn",
"label.and": "Và",
"label.message.password.expired": "Mật khẩu hết hạn, hãy đặt lại mật khẩu",
"label.today": "Hôm nay",
"label.relDate": "Ngày phát hành Mifos X",
"label.relVersion": "Phiên bản phát hành",
"label.select": "Chọn một tùy chọn",
"label.select": "Lựa chọn một tùy chọn",
"label.delete": "Xóa",
"label.selectentity": "Chọn vào số liệu",
"label.selectaction": "Chọn hành động",
"label.error": "Lỗi",
"error.login.failed": "Vui lòng thử lại, thông tin của bạn không hợp lệ.",
"error.login.failed": "Thông tin không hợp lệ. Hãy thử lại.",
"error.connection.failed": "Không thể kết nối với máy chủ. Hãy chắc chắn rằng bạn đang sử dụng các thiết lập chính xác.",
"error.msg.command.unsupported": "Lập trình lỗi: 'Lệnh' phát hành không được hỗ trợ.",
"error.msg.command.unsupported": "Mã lỗi: Lệnh không được hỗ trợ",
"error.msg.query.parameter.value.unsupported": "'{{chủ [1] .value}}' không được hỗ trợ như là một giá trị của tham số truy vấn '{{params [0] .value}}'.",
"error.msg.not.authorized": "Không đủ quyền để thực hiện hành động này.",
"error.msg.not.authorized": "Bạn Không đủ quyền thực hiện hành động này.",
"error.msg.invalid.request.body": "JSON được cung cấp trong nội dung của yêu cầu là không hợp lệ hoặc thiếu.",
"error.msg.parameter.unsupported": "Các tham số '{{params [0] .value}}' đã được thông qua và không được hỗ trợ cho yêu cầu này.",
"error.msg.column.mandatory": "Trường Tiết kiệm bắt buộc không được cung cấp.",
@ -366,16 +391,16 @@
"error.msg.document.file.too.big": "Bạn không thể tải tập tin lớn hơn 5 MB.",
"validation.msg.document.fileName.cannot.be.blank": "Hãy chọn file",
"validation.msg.document.name.cannot.be.blank": "Xin vui lòng nhập tên cho tài liệu.",
"resourceId.not.integer": "Mã ID phải là một số nguyên.",
"resourceId.not.integer": "Mã phải là số nguyên.",
"error.msg.resource.not.found": "Các nguồn tài nguyên được yêu cầu là không có sẵn.",
"error.msg.code.identifier.not.found": "Mã định danh '{{params [0] .value}}' không tồn tại.",
"error.msg.configuration.property.invalid": "Cấu hình tổng thể bất động với tên '{{params [0] .value}}' không tồn tại.",
"validation.msg.configuration.cannot.edit.consult.documentation": "Không thể chỉnh sửa cấu hình. Tham khảo tài liệu.",
"error.msg.permission.code.invalid": "Mã cho phép không tồn vại",
"error.msg.role.id.invalid": "Vai trò với định danh '{{params [0] .value}}' không tồn tại.",
"error.msg.role.associated.with.users": "Vai trò liên quan đến người dùng không thể được sửa đổi.",
"error.msg.role.associated.with.users.deleted": "Vai trò liên quan đến người sử dụng không thể bị xóa.",
"error.msg.role.associated.with.users.disabled": "Vai trò liên quan đến người dùng không thể bị vô hiệu.",
"error.msg.role.associated.with.users": "Vai trò liên quan đến người sử dụng không thể sửa.",
"error.msg.role.associated.with.users.deleted": "Vai trò liên quan đến người dùng không thể xóa.",
"error.msg.role.associated.with.users.disabled": "Vai trò liên quan đến người dùng không thể vô hiệu hóa.",
"error.msg.user.id.invalid": "Người sử dụng với định danh '{{params [0] .value}}' không tồn tại.",
"error.msg.office.id.invalid": "Văn phòng với định dang '{{params [0] .value}}' không tồn tại.",
"error.msg.fund.id.invalid": "Nguồn quỹ định danh không tồn tại",
@ -383,18 +408,18 @@
"error.msg.loan.id.is.invalid": "Vốn định danh không tồn tại.",
"error.msg.glaccount.id.invalid": "Tài khoản General Ledger với định danh '{{params [0] .value}}' không tồn tại.",
"error.msg.calendar.id.invalid": "Lịch định danh không tồn tại.",
"validation.msg.calendar.title.cannot.be.blank": "Tiêu đề là bắt buộc.",
"validation.msg.calendar.startDate.cannot.be.blank": "Ngày bắt đầu là bắt buộc.",
"validation.msg.calendar.typeId.cannot.be.blank": "Loại lịch là bắt buộc.",
"validation.msg.calendar.recurrence.cannot.be.blank": "Hiện tại là bắt buộc",
"validation.msg.calendar.description.cannot.be.blank": "Mô tả không được để trống.",
"validation.msg.calendar.location.cannot.be.blank": "Vị trí không được để trống.",
"validation.msg.calendar.endDate.cannot.be.blank": "Ngày kết thúc không thể trống.",
"validation.msg.calendar.repeating.cannot.be.blank": "Lặp lại không thể trống.",
"validation.msg.calendar.duration.cannot.be.blank": "Thời gian không thể trống.",
"validation.msg.calendar.remindById.cannot.be.blank": "Nhắc nhở kiểu không thể trống.",
"validation.msg.calendar.firstReminder.cannot.be.blank": "Lời nhắc nhở đầu tiên không thể được để trống.",
"validation.msg.calendar.secondReminder.cannot.be.blank": "Lời nhắc nhở thứ hai không được để trống.",
"validation.msg.calendar.title.cannot.be.blank": "Trường Tiêu đề là trường bắt buộc.",
"validation.msg.calendar.startDate.cannot.be.blank": "Trường ngày bắt đầu là bắt buộc.",
"validation.msg.calendar.typeId.cannot.be.blank": "Trường Loại lịch là bắt buộc.",
"validation.msg.calendar.recurrence.cannot.be.blank": "Trường lặp lại là bắt buộc",
"validation.msg.calendar.description.cannot.be.blank": "Mô tả trường không được để trống.",
"validation.msg.calendar.location.cannot.be.blank": "Trường Vị trí không được để trống.",
"validation.msg.calendar.endDate.cannot.be.blank": "Trường Ngày kết thúc không thể trống.",
"validation.msg.calendar.repeating.cannot.be.blank": "Trường Lặp lại không thể trống.",
"validation.msg.calendar.duration.cannot.be.blank": "Trường Khoảng Thời gian không thể trống.",
"validation.msg.calendar.remindById.cannot.be.blank": "Trường kiểu nhắc nhở không thể trống.",
"validation.msg.calendar.firstReminder.cannot.be.blank": "Trường Lời nhắc Đầu tiên không được để trống.",
"validation.msg.calendar.secondReminder.cannot.be.blank": "Trường nhắc nhở thứ hai không được để trống.",
"error.msg.calendar.loan.expected.disbursement.date.not.valid.recurring.date": "Ngày Dự kiến sẽ giải ngân '{{params [0] .value}}' không rơi vào một ngày họp.",
"error.msg.calendar.loan.first.repayment.date.not.valid.recurring.date": "Ngày trả nợ đầu tiên '{{params [0] .value}}' không rơi vào một ngày họp.",
"error.msg.invalid.recurring.rule": "Quy tắc lịch định kỳ: '{{params [0] .value}}' không hợp lệ.",
@ -404,9 +429,9 @@
"validation.msg.loan.calendarId.not.greater.than.zero": "Lịch họp là bắt buộc.",
"validation.msg.loan.calendarId.cannot.be.blank": "Đảm bảo rằng các Cụm có ngày giao dịch xác định trước khi tạo khoản vay này",
"validation.msg.collectionsheet.groupId.not.greater.than.zero": "Nhóm là bắt buộc để tạo ra danh sách thu vốn.",
"validation.msg.collectionsheet.dueDate.cannot.be.blank": "Ngày giao dịch là bắt buộc để tạo ra danh sách thu vốn.",
"validation.msg.collectionsheet.dueDate.cannot.be.blank": "Ngày giao dịch là bắt buộc của Bảng thu vốn.",
"validation.msg.collectionsheet.transactionDate.cannot.be.blank": "Để tạo ra danh sách thu vốn 'Ngày giao dịch' không thể trống",
"error.msg.calendar.new.start.date.before.existing.date": "Thêm cuộc họp đúng hoặc sau ngày có thể không là một ngày trước cuộc hợp hiện tại bắt đầu.",
"error.msg.calendar.new.start.date.before.existing.date": "Ngày bắt đầu cuộc họp mới không được là một ngày trước ngày họp hiện có.",
"error.msg.calendar.update.of.meeting.type.is.not.supported": "Kiểu cập nhật họp không được hỗ trợ.",
"error.msg.calendar.update.of.meeting.frequency.is.not.supported": "Tần số cập nhật cuộc họp không được hỗ trợ.",
"error.msg.calendar.update.of.meeting.interval.is.not.supported": "Cập Nhật cuộc họp ' Lặp lại định kỳ' không được hỗ trợ.",
@ -415,9 +440,9 @@
"error.msg.calendar.meeting.not.valid.recurring.date": "Lịch họp nên là một ngày họp hợp lệ.",
"error.msg.meeting.duplicate": "Họp với ngày {{params[0].value}} đã tồn tại.",
"error.msg.meeting.date.cannot.be.a.future.date": "Lịch họp không thể trong tương lai.",
"error.msg.entity.transfers.with.active.savings.accounts": "Không thể chuyển khách hàng/nhóm vẫn còn tài khoản tiết kiệm",
"error.msg.groups.bulk.client.transfers.to.different.office": "Giao dịch chuyển số lượng lớn khách hàng giữa các nhóm trong chi nhánh khác nhau không được phép",
"error.msg.client.transfers.destination.group.absent": "Nhóm đích cho chuyển khách hàng được liên kết với một nhóm không được chọn",
"error.msg.entity.transfers.with.active.savings.accounts": "Không thể chuyển khách hàng/nhóm vẫn còn tài khoản tiết kiệm hoạt động.",
"error.msg.groups.bulk.client.transfers.to.different.office": "Giao dịch chuyển số lượng lớn khách hàng giữa các nhóm thuộc Chi nhánh khách nhau không được phép",
"error.msg.client.transfers.destination.group.absent": "Nhóm đích để chuyển khách hàng được liên kết ban đầu với một nhóm không được chọn",
"error.msg.client.transfers.with.multiple.group.linkages": "Chuyển khách hàng được liên kết với nhiều nhóm không được hỗ trợ",
"error.msg.client.transfers.with.active.accounts.between.groups.with.different.meeting.frequency": "Không thể chuyển khách hàng với tài khoản đang hoạt động giữa các nhóm với tần số cuộc họp khác nhau",
"error.msg.groups.bulk.client.transfers.to.same.group": "Nguồn và nhóm đích với số lượng lớn khách hàng chuyển nên khác nhau",
@ -433,16 +458,22 @@
"error.msg.loan.writeoff.cannot.be.undone.before.client.transfer.date": "Ngày chậm trả vốn vay không được sớm hơn ngày tháng chuyển khách hàng ({{params[0].value}})",
"error.msg.loan.close.cannot.be.undone.before.client.transfer.date": "Ngày hoàn trả vốn vay không được sớm hơn ngày tháng chuyển khách hàng ({{params[0].value}})",
"error.msg.loan.repayment.or.waiver.account.is.not.active": "Vốn vay chưa hoạt động",
"validation.msg.floatingrate.ratePeriods.cannot.be.empty": "Kỳ tỷ lệ lãi suất nổi không được để trống",
"validation.msg.floatingrate.ratePeriods.cannot.be.empty": "Kỳ lãi suất nổi không được để trống",
"validation.msg.floatingrate.fromDate.is.less.than.date": "Kỳ lãi suất nổi phải lớn hơn ngày hiện tại",
"validation.msg.floatingrate.isBaseLendingRate.baselendingrate.duplicate": "Lãi suất cho vay cơ bản đã được xác định",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.no.baselending.rate.defined": "Lãi suất cho vay cơ bản không tồn tại",
"validation.msg.floatingrate.isDifferentialToBaseLendingRate.cannot.be.true.for.baselendingrate": "isDifferentialToBaseLendingRate không đúng với lãi suất thả nổi được đánh dấu là cơ sở Lãi suất cho vay",
"validation.msg.batch.jlg.no.clients.defined": "Không có khách hàng nào được chọn cho yêu cầu này",
"label.tooltip.incomefromfees": "Một tài khoản Thu nhập được ghi nợ khi một khoản phí được trả bởi chủ tài khoản vào tài khoản này.",
"label.tooltip.incomefrompenalties": "Một tài khoản thu nhập, mà được ghi nợ khi một hình phạt chậm trả được trả bởi chủ tài khoản vào tài khoản này.",
"label.tooltip.daysinyear": "Cài đặt cho số ngày trong năm để sử dụng để tính toán lãi suất",
"label.tooltip.marketprice": "Giá mỗi cổ phần",
"label.heading.waiveloancharge": "Miễn phí cho vay",
"label.heading.payloancharge": "Trả tiền phí cho vay",
"label.anchor.paycharge": "Trả phí",
"label.input.paymentdate": "Ngày thanh toán",
"label.tooltip.charges.active.true": "Hoạt động",
"label.tooltip.charges.active.false": "Chưa hoạt động",
"label.heading.dashboard": "Bảng điều khiển",
"label.heading.home": "Trang chủ",
"label.heading.welcome": "Chào mừng",
@ -469,7 +500,7 @@
"label.heading.fullname": "Tên",
"label.heading.mifosxclient": "Mifos X Khách hàng",
"label.heading.mifosx": "Mifos X",
"label.heading.uptodate": "Mifos X cập nhật đến ngày",
"label.heading.uptodate": "Cập nhật đến ngày",
"label.heading.resources": "Nguồn",
"label.heading.community": "Cộng đồng",
"label.heading.contribute": "Đóng góp",
@ -513,8 +544,9 @@
"label.anchor.settings": "Tùy chọn",
"label.anchor.navigation": "Điều hướng",
"label.anchor.dashhome": "Trang chủ Dash",
"label.anchor.collectionsheet": "Bảng thu vốn",
"label.anchor.collectionsheet": "Tờ thu vốn",
"label.anchor.client": "Khách hàng",
"label.anchor.importemployees": "Nhập Nhân viên",
"label.anchor.group": "Nhóm",
"label.anchor.center": "Cụm",
"label.anchor.frequentpostings": "Đăng thường xuyên",
@ -536,6 +568,23 @@
"label.anchor.keyboardshortcut": "Phím nóng",
"label.anchor.save": "Lưu",
"label.input.searchbyuser": "Tìm kiếm theo người dùng",
"label.input.clienttemplate": "Mẫu khách hàng",
"label.input.loanaccounttemplate": "Mẫu Tài khoản vốn",
"label.input.loanrepaymenttemplate": "Mẫu hoàn trả vốn",
"label.input.guarantortemplate": "Mẫu bảo lãnh",
"label.input.recurringdeposittemplate": "Mẫu tiền gửi định kỳ",
"label.input.recurringdeposittransactiontemplate": "Mẫu giao dịch tiền gửi định kỳ",
"label.input.chartofaccountstemplate": "Mẫu Sơ đồ Kế toán",
"label.input.savingsaccountstemplate": "Mâ tài khoản tiết kiệm",
"label.input.savingsaccountstransactiontemplate": "Mẫu Giao dịch Tiết kiệm",
"label.input.shareaccountstemplate": "Mẫu tài khoản đầu tư",
"label.input.fdaccountstemplate": "Mẫu Tiền gửi cố định",
"label.input.fdtransactionstemplate": "Mẫu giao dịch tiền gửi cố định",
"label.input.journalentriestemplate": "Mẫu định khoản",
"label.input.grouptemplate": "Mẫu Nhóm khách hàng",
"label.input.centertemplate": "Mẫu cụm",
"label.input.employeetemplate": "Mẫu Nhân viên",
"label.input.usertemplate": "Mẫu người sử dụng",
"label.input.searchactivities": "Tìm kiếm theo hoạt động",
"label.input.additionalinformation": "Thông tin bổ sung",
"label.input.changelanguage": "Thay đổi ngôn ngữ:",
@ -558,8 +607,6 @@
"label.button.resetPassword": "Đặt lại Mật khẩu",
"label.button.viewpermissions": "Xem quyền",
"label.youneedtologintoaccessthisarea": "Bạn cần phải đăng nhập để truy cập vào khu vực này",
"label.selectaction": "Chọn hành động",
"label.selectentity": "Chọn vào số liệu",
"label.selectugdtemplate": "Chọn định dạng UGD",
"label.nodata": "Không có dữ liệu",
"label.notactivated": "Không kích hoạt",
@ -567,7 +614,6 @@
"label.searchorpress": "Bấm hoặc ấn vào alt + x để tìm kiếm",
"label.search.query.matched.results.exceeds.max.length": "Truy vấn tìm kiếm kết quả hơn 200 hồ sơ, Đang hiển thị 200 đầu tiên hồ sơ.",
"validation.msg.collectionsheet.calendarId.cannot.be.blank": "Thu vốn không thể tiến hành cho cụm/nhóm mà không có ngày họp xác định",
"label.heading.address": "Địa chỉ:",
"label.heading.familymembers": "Thành viên gia đình",
"label.heading.identities": "Nhận diện",
"label.heading.uniqueidentification": "Mã duy nhất #",
@ -607,12 +653,12 @@
"label.anchor.reactivate": "Kích hoạt lại",
"label.anchor.undoReject": "Trở lại từ chối",
"label.anchor.undoWithdrawn": "Trở lại rút",
"label.input.filterbynameaccno": "Hiển thị lọc theo tên/tài khoản#/nhân viên/văn phòng",
"label.input.searchByNameAccNo": "Tìm theo tên/điện thoại/mã khách hàng/mã bên ngoài/CMND",
"label.input.filterbynameaccno": "Hiển thị lọc theo tên/khách hàng/nhân viên/văn phòng",
"label.input.searchByNameAccNo": "Tìm theo tên/điện thoại/khách hàng/mã bên ngoài/định danh",
"label.input.selectclientimage": "Chọn ảnh khách hàng",
"label.input.selectfile": "Chọn tập tin",
"label.input.selectexcelfile": "Chọn file Excel",
"label.input.documenttype": "Kiểu tài liệu",
"label.input.status": "Trạng thái",
"label.input.uniqueidentification": "Mã duy nhất #",
"label.input.mobilenumber": "ĐTDĐ",
"label.input.client.activationdate": "Ngày kích hoạt",
@ -625,19 +671,29 @@
"label.input.clientName": "Tên khách hàng",
"label.input.clientId": "Mã khách hàng",
"label.input.reopeneddate": "Ngày mở trở lại",
"label.input.legalformentity": "Thực thể",
"label.input.legalformperson": "Người",
"label.button.createclient": "Tạo khách hàng",
"label.button.showall": "Xem đóng",
"label.button.importclients": "Nhập Khách hàng",
"label.button.importemployees": "Nhập nhân viên",
"label.button.importcenters": "Nhập Cụm",
"label.button.print": "In",
"label.button.viewprint": "Xuất Báo cáo",
"label.button.savingdetails": "Thông tin chi tiết Tiết kiệm",
"label.button.loandetails": "Thông tin chi tiết Vốn vay",
"label.button.upload": "Tải lên",
"label.button.download": "Tải về",
"label.button.capture": "Chụp",
"label.button.viewclosedloans": "Xem Vốn vay đóng",
"label.button.viewclosedsavings": "Xem tiết kiệm đã đóng",
"label.button.viewclosedfixed": "Xem đã đóng cố định",
"label.button.viewclosedrecurring": "Xem định kỳ đã đóng",
"label.button.uploadpic": "Đưa lên ảnh khách hàng",
"label.button.capturepic": "Chụp ảnh Khách hàng",
"label.button.deletepic": "Xóa ảnh Khách hàng",
"label.button.uploadsig": "Tải lên chữ ký Khách hàng",
"label.button.deletesig": "Xóa chứ ký Khách hàng",
"label.button.viewsig": "Xem chữ ký Khách hàng",
"label.button.viewactiveloans": "Xem vốn vay hiện tại",
"label.button.viewactivesavings": "Xem tiết kiệm hiện tại",
@ -652,7 +708,7 @@
"label.button.undoWithdrawn": "Hủy rút",
"label.numofloancycles": "# Chu kỳ vốn vay",
"label.lastloanamount": "Số tiền cho vay cuối",
"label.numofactiveloans": "# Vốn vay hiện tại",
"label.numofactiveloans": "Vốn vay hiện tại",
"label.totalsavings": "Tổng tiết kiệm",
"label.numofactivesavings": "# Tiết kiệm hiện tại",
"label.zoom": "Hiển thị lớn hơn",
@ -720,8 +776,8 @@
"validation.msg.client.withdrawalDate.cannot.be.blank": "Ngày khách hàng rút không được để trống",
"label.heading.addmember": "Thêm thành viên",
"label.heading.addrole": "Thêm vai trò",
"label.heading.viewsmscampaign": "Xem chiến dịch SMS",
"label.heading.repeatdetails": "Lặp lại thông tin chi tiết",
"label.heading.meetingdetails": "Chi tiết cuộc họp",
"label.heading.creategroup": "Tạo nhóm",
"label.heading.editgroup": "Chỉnh sửa nhóm",
"label.heading.managemembers": "Quản lý thành viên",
@ -762,7 +818,7 @@
"label.input.existingmeetingdates": "Ngày họp hiện tại",
"label.input.revisedmeetingdates": "Chỉnh lại ngày họp",
"label.input.error": "Lỗi",
"label.input.invaliddaterange": "Hãy chọn ngày trong phạm vi hợp lệ",
"label.input.invaliddaterange": "Hãy chọn Ngày trong phạm vi hợp lệ",
"label.button.creategroup": "Tạo nhóm",
"label.button.groupsavingapplication": "Tiết kiệm theo nhóm",
"label.button.grouploanapplication": "Đơn xin vay theo nhóm",
@ -843,7 +899,7 @@
"label.heading.accountingrules": "Quy tắc Hạch toán",
"label.heading.glcode": "Mã Tài khoản",
"label.heading.acctype": "Loại tài khoản",
"label.heading.manualentriesallowed": "Bút toán Được hướng dẫn sử dụng",
"label.heading.manualentriesallowed": "Có được phép nhập thủ công không?",
"label.heading.usedas": "Sử dụng vào",
"label.heading.accountingclosures": "Đóng giao dịch",
"label.heading.viewaccountingclosures": "Xem đóng bút toán",
@ -890,7 +946,6 @@
"label.heading.financial.activity.type": "Hoạt động tài chính",
"label.heading.financial.activity.account.name": "Tên tài khoản",
"label.heading.transferredfrom": "Chuyển từ",
"label.heading.createdby": "Được tạo bởi",
"label.heading.createdon": "Tạo trên",
"label.heading.journalentry.created": "Tạo bút toán",
"label.heading.viewreport": "Xem báo cáo",
@ -904,12 +959,12 @@
"label.heading.edit.financial.activity.mapping": "Chỉnh sửa nội dung Hoạt động tài chính",
"label.heading.execute.periodic.accounting": "Lũy kế",
"label.heading.create.provisioning.entries": "Bút toán Điều chỉnh",
"label.execute.periodic.accounting": "Dồn tích thu nhập, chi phí và nợ phải trả vào ngày xác định",
"label.execute.periodic.accounting": "Thu nhập, chi phí và nợ phải trả phải trả vào ngày đã định",
"label.anchor.periodicaccrualaccounting": "Kỳ Kế toán lũy kế",
"label.heading.periodicaccrualaccounting": "Chạy dồn tích Kế toán theo kỳ",
"label.heading.interestperiod": "Kỳ tỷ lệ lãi suất",
"label.heading.isdifferentaialtobaselendingrate": "Là khác nhau?",
"label.periodicaccrual.tilldate": "Tích luỹ đến khi",
"label.periodicaccrual.tilldate": "Tích lũy cho đến khi",
"validation.msg.periodicaccrual.accrueTill.is.greater.than.date": "Ngày không thể trong tương lai",
"label.heading.openingbalances.migration": "Mở bảng Lũy kế",
"label.anchor.define.openingbalances": "Bảng lũy kế",
@ -979,7 +1034,6 @@
"label.input.smsprovider": "Nhà cung cấp SMS",
"journalEntryType.credit": "Ghi có",
"journalEntrytType.debit": "Ghi nợ",
"label.button.addAddress": "Thêm địa chỉ",
"label.button.addfamilymember": "Thêm thành viên gia đình",
"label.button.listview": "Xem danh sách",
"label.button.treeview": "Xem dạng cây",
@ -1172,7 +1226,6 @@
"label.heading.guarantor": "Bảo lãnh",
"label.heading.createguarantor": "Tạo bảo lãnh",
"label.heading.editloanaccount": "Chỉnh sửa tài khoản vay",
"label.heading.collaterals": "Tài sản thế chấp",
"label.heading.value": "Giá trị",
"label.heading.loanamountandbalance": "Số tiền cho vay và Dư nợ",
"label.heading.totalcostofloan": "Tổng số tiền cho vay",
@ -1272,7 +1325,6 @@
"label.heading.isTopup": "Vay chồng vốn?",
"label.heading.loanIdToClose": "Vốn đóng với Top-Up",
"label.heading.topupAmount": "Khoản tiền đóng Top-Up",
"label.heading.campaign": "Chiến dịch",
"label.menu.rescheduleReason": "Chọn lý do tái cơ cấu",
"label.anchor.viewloanaccount": "Xem tài khoản vay",
"label.anchor.addloancharge": "Thêm phí cho vay",
@ -1292,7 +1344,9 @@
"label.anchor.disburse": "Phát vốn",
"label.anchor.disbursetosavings": "Chi trả Tiết kiệm",
"label.anchor.repayment": "Hoàn trả",
"label.anchor.prepayment": "Trả trước",
"label.anchor.waiveinterest": "Miễn lãi suất",
"label.anchor.waivecharge": "Miễn phí",
"label.anchor.writeoff": "Chậm trả",
"label.anchor.close-rescheduled": "Đóng cơ cấu lại lịch hoàn trả",
"label.anchor.modifytransaction": "Sửa đổi giao dịch",
@ -1320,7 +1374,6 @@
"label.input.relationship": "Mối quan hệ",
"label.input.dob": "DOB",
"label.input.address": "Địa chỉ",
"label.input.city": "Thành phố",
"label.input.zip": "Mã số Zip",
"label.input.mobile": "Di động",
"label.input.residence": "Điện thoại nhà",
@ -1414,11 +1467,9 @@
"label.tooltip.loanportfolio": "một tài khoản Tài sản đó là ghi nợ trong giải ngân và ghi có trong trả nợ chính/mất vốn.",
"label.tooltip.receivableinterest": "Một tài khoản Tài sản được sử dụng để tích luỹ lãi suất",
"label.tooltip.receivablefees": "Một tài khoản tài sản được sử dụng để tích lũy phí",
"label.tooltip.receivablepnalties": "Một tài khoản Tài sản được sử dụng để tích luỹ Phạt chậm trả",
"label.tooltip.receivablepenalties": "Một tài khoản Tài sản được sử dụng để tích luỹ Phạt chậm trả",
"label.tooltip.transfersinsuspense": "Đây là một tài khoản tài sản được sử dụng theo dõi dư nợ vốn vay đang vận chuyển trên đường.",
"label.tooltip.incomefrominterest": "Một tài khoản Thu nhập được ghi nợ trong thanh toán lãi suất.",
"label.tooltip.incomefromfees": "Một tài khoản Thu nhập được ghi nợ khi một khoản phí được trả bởi chủ tài khoản vào tài khoản này.",
"label.tooltip.incomefrompenalties": "Một tài khoản thu nhập, mà được ghi nợ khi một hình phạt chậm trả được trả bởi chủ tài khoản vào tài khoản này.",
"label.tooltip.recoverypayments": "Một tài khoản thu nhập được ghi trong thời gian phục hồi trả nợ.",
"label.tooltip.loseswrittenoff": "Một tài khoản Chi phí được ghi nợ trên mất vốn gốc (cũng ghi nợ trong các sự kiện về tiết kiệm, lệ phí và phạt chậm trả trong trường hợp kế toán dồn tích)",
"label.tooltip.overpaymentliability": "Một tài khoản Nợ phải trả được ghi nợ trên nợ quá hạn và ghi nợ khi hoàn lại tiền cho khách hàng.",
@ -1477,7 +1528,6 @@
"label.tooltip.allowpartialperiodinterestcalcualtion": "Sử dụng với SAME AS REPAYMENT PERIOD - để tính lãi suất chính xác với từng kỳ Ví dụ: Lãi suất tính từ là ngày 05 tháng 4, vốn gốc vay là 10.000 và lãi suất là 1% mỗi tháng thì lãi suất sẽ được (10.000 * 1%) * (25 / 30), nó tính toán cho tháng đầu tiên sau đó tính toán thời gian chính xác giữa ngày bắt đầu và ngày kết thúc (có thể là một số thập phân)",
"label.tooltip.interestfreeperiod": "Nếu kỳ miễn lãi là '4' và trả Tần số của khách hàng là mỗi tuần, theo đó bốn tuần đầu tiên khách hàng không cần phải trả tiền lãi, anh ta chỉ phải trả gốc những tuần đó.",
"label.tooltip.arearstolerance": "Với 'Arrears tolerance/Nợ ra hạn' bạn có thể chỉ định một số lượng khoan dung và nếu khoản vay là phía sau (trong nợ), nhưng trong dung sai, nó sẽ không được phân loại là \"trong nợ 'và là một phần của danh mục đầu tư có nguy cơ rủi ro.",
"label.tooltip.daysinyear": "Cài đặt cho số ngày trong năm để sử dụng để tính toán lãi suất",
"label.tooltip.daysinmonth": "Số ngày trong tháng.",
"label.tooltip.deleteInstruction": "Xóa Bảo lãnh",
"label.tooltip.viewInstruction": "Xem Bảo lãnh vốn",
@ -1536,6 +1586,7 @@
"loanStatusType.witharrears": "Tiền nợ lại",
"validation.msg.loan.productId.cannot.be.blank": "Sản phẩm là bắt buộc.",
"validation.msg.loan.productId.not.greater.than.zero": "Sản phẩm được lựa chọn là không hợp lệ.",
"validation.msg.loan.linkAccountId.cannot.be.blank": "'Liên kết Tiết kiệm' không để trống 'Tạo bảo lãnh phát vốn' đã được lựa chọn.",
"validation.msg.loan.principal.cannot.be.blank": "Số tiền cho vay là bắt buộc.",
"validation.msg.loan.principal.not.greater.than.zero": "Số tiền cho vay phải lớn hơn 0.",
"validation.msg.loan.loanTermFrequency.cannot.be.blank": "Thời hạn cho vay là bắt buộc.",
@ -1689,6 +1740,7 @@
"validation.msg.rescheduleloan.rescheduleFromDate.cannot.be.blank": "Tái cấu trúc từ ngày không được bỏ trống",
"validation.msg.rescheduleloan.rescheduleReasonId.cannot.be.blank": "Lý do Tái cơ cấu không được để trống",
"validation.msg.rescheduleloan.loan.reschedule.interestrecalculation.error.code": "Lỗi trong lãi suất Tái cơ cấu",
"validation.msg.rescheduleloan.rescheduleFromDate.adjustedDueDate.before.rescheduleFromDate": "Nạp lịch tái cơ cấu Không thể trước ngày lên lịch hoàn trả.",
"label.heading.interestDetails": "Lãi suất chi tiết",
"label.heading.savingsDetails": "Tiết kiệm chi tiết",
"label.heading.currentBalance": "Dư nợ hiện tại",
@ -1953,7 +2005,6 @@
"label.tooltip.suspenseaccount": "Số tiền cổ phiếu sẽ được giữ trong tài khoản này trước khi phê duyệt",
"label.tooltip.equityaccount": "Một tài khoản vốn chủ sở hữu, được ghi nợ khi mua cổ phần được chấp thuận",
"label.tooltip.allowdividendsforinactiveclients": "Cho phép chia cổ tức cho các khách hàng không hoạt động",
"label.tooltip.marketprice": "Giá mỗi cổ phần",
"label.tooltip.interestpostingperiod": "Thời kỳ mà lãi suất được gửi hoặc ghi có vào một tài khoản tiết kiệm",
"label.tooltip.interestcalculatedusing": "Phương pháp sử dụng tính lãi suất",
"label.tooltip.minimumopeningbalance": "Đặt số tiền gửi tối thiểu cần thiết để mở một tài khoản tiết kiệm của loại sản phẩm tiết kiệm này",
@ -2180,14 +2231,18 @@
"label.heading.officetocharges": "Văn phòng truy cập tới phí",
"label.heading.roletoloanproducts": "Quyền truy cập tới các sản phẩm vốn vay",
"label.heading.roletosavingsproducts": "Quyền truy cập tới các sản phẩm tiết kiệm",
"label.heading.importtime": "Nhập thời gian",
"label.heading.endtime": "Thời gian kết thúc",
"label.heading.completed": "Hoàn thành",
"label.heading.successcount": "Số thành công",
"label.heading.failurecount": "Số không thành",
"label.heading.totalrecords": "Tổng ghi chép",
"label.anchor.users": "Người dùng",
"label.anchor.createuser": "Tạo người dùng",
"label.anchor.editpermissions": "Chỉnh sửa quyền",
"label.anchor.edituser": "Hiệu chỉnh người dùng",
"label.anchor.globalconfigurations": "Cấu hình tổng thể",
"label.anchor.editconfiguration": "Chỉnh sửa cấu hình",
"label.input.username": "Tài khoản người dùng",
"label.input.email": "Thư điện tử",
"label.input.autogeneratepassword": "Tự động tạo ra mật khẩu",
"label.input.password": "Mật khẩu",
"label.input.repeatpassword": "Lặp lại mật khẩu",
@ -2245,6 +2300,21 @@
"label.heading.edittaxgroup": "Sửa nhóm thuế",
"label.heading.viewtaxgroup": "Xem nhóm thuế",
"label.heading.taxcomponent": "Thành phần thuế",
"label.anchor.importusers": "Người dùng",
"label.anchor.importgroups": "Nhóm",
"label.anchor.importloanaccounts": "Tài khoản vay",
"label.anchor.importfdaccounts": "Tiền gửi Có thời hạn",
"label.anchor.importrdaccounts": "Tài khoản tiền gửi định kỳ",
"label.anchor.importcoa": "Sơ đồ Tài khoản Kế toán",
"label.anchor.employees": "Nhân viên",
"label.anchor.importloanrepayments": "Hoàn trả vốn vay",
"label.anchor.importsavingsaccounts": "Tài khoản tiết kiệm",
"label.anchor.importsavingstransactions": "Giao dịch tiết kiệm",
"label.anchor.importfdtransactions": "Giao dịch tiền gửi cố định",
"label.anchor.importrdtransactions": "Giao dịch tiền gửi định kỳ",
"label.anchor.importjournalentries": "Nhật ký bút toán",
"label.anchor.importshareaccounts": "Tài khoản Cổ phần",
"label.anchor.importguarantor": "Bảo lãnh",
"label.anchor.organization": "Tổ chức",
"label.anchor.bulkloanreassignment": "Chuyển cán bộ quản lý Khách hàng",
"label.anchor.bulkjlgloanapplication": "Số lượng lớn đơn vay theo nhóm",
@ -2254,6 +2324,7 @@
"label.anchor.manageholidays": "Quản lý ngày Lễ",
"label.anchor.editholiday": "Chỉnh sửa ngày lễ",
"label.anchor.createoffice": "Tạo văn phòng",
"label.button.importoffices": "Nhập văn phòng",
"label.anchor.currencyconfig": "Cấu hình tiền tệ",
"label.anchor.editcurrencyconfig": "Chỉnh sửa cấu hình tiền tệ",
"label.anchor.editemployee": "Chỉnh sửa nhân viên",
@ -2310,6 +2381,7 @@
"label.view.taxcomponent": "Định nghĩa thành phần thuế",
"label.view.taxgroup": "Định nghĩa nhóm thuế",
"label.view.smscampaigns": "Xác định Chiến dịch SMS cho Tổ chức",
"label.view.bulkimport": "Nhập hàng loạt sử dụng định dạng Excel cho Khách hàng, văn phòng, vv..",
"validation.msg.currencies.currencies.cannot.be.empty": "Bạn phải chọn ít nhất một loại tiền tệ mà được phép giao dịch trong tổ chức bạn.",
"validation.msg.office.name.cannot.be.blank": "Tên là bắt buộc.",
"validation.msg.office.name.exceeds.max.length": "Tên tài khoản không được vượt quá {{params[0].value}} ký tự.",
@ -2350,6 +2422,8 @@
"validation.msg.tax.group.endDate.can.not.modify.end.date.once.updated": "Sửa đổi ngày kết thúc không được hỗ trợ",
"validation.msg.tax.group.total.percentage.is.greater.than.max": "Tỷ lệ phần trăm tổng nhóm cần nhỏ hơn 100 tại bất cứ thời điểm nào",
"validation.msg.tax.component.group.total.percentage.is.greater.than.max": "Một trong số tổng số nhóm lớn hơn 100 với sửa đổi này",
"label.tooltip.employees.active.true": "Hoạt động",
"label.tooltip.employees.active.false": "Chưa hoạt động",
"label.heading.text": "Văn bản",
"label.heading.addcode": "Thêm mã",
"label.heading.codename": "Tên mã",
@ -2359,7 +2433,6 @@
"label.heading.hookname": "Tên Hook",
"label.heading.hooktemplate": "Mẫu sẵn Hook",
"label.heading.events": "Sự kiện",
"label.heading.isactive": "Hoạt động?",
"label.heading.entityname": "Tên thực thể",
"label.heading.actionname": "Tên hành động",
"label.heading.ugdtemplatename": "Tên Mẫu người dùng tạo",
@ -2467,18 +2540,17 @@
"label.anchor.fieldconfiguration": "Cấu hình trường thực thể",
"label.input.addressType": "Kiểu địa chỉ",
"label.input.clientIdNameOffice": "Mã KH-Tên-Văn phòng",
"label.input.street": "Đường phố",
"label.input.addressline1": "Địa chỉ 1",
"label.input.addressline2": "Địa chỉ 2",
"label.input.addressline3": "Địa chỉ 3",
"label.input.street": "Đường phố",
"label.input.town_village": "Thị trấn/Làng",
"label.input.county_district": "Quận/Huyện",
"label.input.state_province": "Bang/Thành phố",
"label.input.state_province": "Tỉnh / Tiểu bang",
"label.input.postal_code": "Mã bưu điện",
"label.input.latitude": "Vĩ độ",
"label.input.longitude": "Kinh độ",
"label.input.entity": "Bút toán",
"label.input.alias": "Bí Danh",
"label.input.type": "Kiểu",
"label.input.templatename": "Tên mẫu",
"label.input.mapperkey": "Khóa bản đồ",
@ -2566,7 +2638,7 @@
"label.button.addhook": "Tạo Hook",
"label.button.createdatatable": "Tạo bảng dữ liệu",
"label.button.runselectedjobs": "Chạy các công việc đã chọn",
"label.button.refresh": "Làm tươi",
"label.button.refresh": "Làm mới",
"label.button.addcodevalues": "Thêm giá trị mã",
"label.button.viewhistory": "Xem lịch sử",
"label.button.addrole": "Thêm vai trò",
@ -2577,7 +2649,6 @@
"label.selectstatus": "Chọn trạng thái",
"label.selectchecker": "Chọn kiểm tra",
"label.loan": "Vốn vay",
"label.savingsaccount": "Tài khoản tiết kiệm",
"label.client": "Khách hàng",
"label.group": "Nhóm",
"label.center": "Cụm",
@ -2844,6 +2915,7 @@
"label.anchor.createrecurringdepositproduct": "Tạo sản phẩm tiền gửi định kỳ",
"label.anchor.smscampaings": "Các chiến dịch SMS",
"label.anchor.createcampaign": "Tạo chiến dịch",
"label.anchor.bulkimport": "Nhập hàng loạt",
"label.input.selectproduct": "Chọn sản phẩm",
"label.input.allowedproducts": "Cho phép sản phẩm",
"label.input.restrictedproducts": "Hạn chế sản phẩm",
@ -2895,7 +2967,6 @@
"label.input.receivablefees": "Phí phải thu",
"label.input.receivablepenalties": "Phạt chậm trả phải thu",
"label.input.transfersinsuspense": "Tiền đang chuyển",
"label.input.incomefrominterest": "Thu nhập từ lãi suất",
"label.input.interest.on.overdrafts": "Thu nhập lãi thấu chi",
"label.input.incomefromfees": "Thu nhập từ lệ phí",
"label.input.incomefromcharges": "Thu nhập từ phí",
@ -3132,6 +3203,8 @@
"validation.msg.loanproduct.principal.is.less.than.min": "Số tiền gốc {{params [0] .value}} là không hợp lệ. Phải là một số tiền lớn hơn hoặc bằng số tiền gốc tối thiểu {{params[1] .value}}.",
"validation.msg.loanproduct.principal.is.greater.than.max": "Số tiền gốc {{params [0] .value}} là không hợp lệ. Phải là một số tiền nhỏ hơn hoặc bằng số tiền tối đa gốc {{params[1] .value}}.",
"validation.msg.loanproduct.minPrincipal.is.greater.than.max": "Số tiền gốc tối thiểu {{params [0] .value}} là không hợp lệ. Phải được một số tiền lớn hơn hoặc bằng số tiền tối thiểu gốc {{params [1] .value}}.",
"validation.msg.loanproduct.maximumGap.not.greater.than.specified.number": "Khoảng cách lớn nhất {{params [0] .value}} không đúng. Phải là số tiền lớn hơn hoặc bằng số tiền nhỏ nhất {{params[1].value}}.",
"validation.msg.loanproduct.minimumGap.is.mandatory.when.allowVariableInstallments.is.true": "Khoảng cách tối thiểu là bắt buộc",
"validation.msg.loanproduct.maxPrincipal.is.less.than.min": "Số tiền gốc tối đa {{params [0] .value}} là không hợp lệ. Phải được một số tiền lớn hơn hoặc bằng số tiền tối thiểu gốc {{params[1] .value}}.",
"validation.msg.loanproduct.minPrincipal.not.greater.than.zero": "Số tiền tối thiểu gốc phải lớn hơn 0 nếu cung cấp.",
"validation.msg.loanproduct.maxPrincipal.not.greater.than.zero": "Số tiền tối đa gốc phải lớn hơn 0 nếu cung cấp.",
@ -3508,6 +3581,7 @@
"label.input.no.of.overdue.days.to.move.loan.into.arrears": "Số ngày vốn quá hạn trước khi chuyển vào nợ",
"label.heading.graceOnArrearsAgeing": "Ân hạn Xóa nợ quá tuổi",
"label.input.feefrequency": "Tần suất phí",
"label.input.fees": "Lệ phí",
"label.input.addfeefrequency": "Thêm tần suất phí",
"label.input.frequencyInterval": "Tần suất khoảng thời gian",
"label.input.selectclients": "Chọn khách hàng",
@ -3578,6 +3652,8 @@
"label.input.trasfertosavings": "Chuyển lãi liên kết với tài khoản tiết kiệm",
"validation.msg.fixeddepositaccount.linkAccountId.cannot.be.blank": "Liên kết với tài khoản tiết kiệm yêu cầu",
"label.anchor.officeglaccount": "Mã Tài khoản Kế toán VP",
"label.anchor.office": "Văn phòng",
"label.input.officetemplate": "Mẫu văn phòng",
"label.heading.officeglaccounts": "Mã Tài khoản Kế toán VP",
"label.input.filterbyAccountGlcodeOffice": "Tên TK/Mã TK/Tên VP",
"label.button.addofficeglaccount": "Thêm Sơ đồ TK Kế toán VP",
@ -3601,6 +3677,7 @@
"label.heading.incentives": "Ưu đãi",
"label.heading.customerattributes": "Thuộc tính khách hàng",
"label.heading.interestratedetails.incentive.attributename": "Thuộc tính",
"label.heading.interestratedetails.incentive.conditiontype": "Điều kiện",
"label.heading.interestratedetails.incentive.attributevalue": "Giá trị",
"label.heading.interestratedetails.incentive.incentivetype": "Kiểu",
"label.heading.interestratedetails.incentive.amount": "Lãi suất",
@ -3717,7 +3794,6 @@
"label.input.teller.cashiertxn.txnNote": "Ghi chú/Bình luận",
"label.button.addpaymentdetail": "Thêm chi tiết hoàn trả",
"label.anchor.individualcollectionsheet": "Bảng thu vốn cá nhân",
"------------------": "------------",
"office_access_to_loan_products": "Văn phòng --> Sản phẩm vốn vay",
"office_access_to_savings_products": "Văn phòng --> Sản phẩm tiết kiệm",
"office_access_to_fees/charges": "Văn phòng --> Lệ phí/Phí",
@ -3901,7 +3977,7 @@
"m_loan": "Vốn vay",
"m_savings_account": "Tài khoản tiết kiệm",
"error.msg.collection.sheet.can.not.be.selected.meeting.date.not.attached.to.any.center": "Thu vốn không thể được tạo ra mà không có ngày họp {{params[0].value}} gắn liền với bất kỳ cụm nào",
"error.msg.guarantor.saving.account.activation.date.is.on.or.before.loan.submitted.on.date": "Ngày kích hoạt Tiết kiệm bảo lãnh `{{params [0] .value}}` vào đúng hoặc trước khi khoản vay được chấp nhận vào ngày {{params [1] .value}} `.",
"error.msg.guarantor.saving.account.activation.date.is.on.or.before.loan.submitted.on.date": "Ngày kích hoạt tài khoản Tiết kiệm bảo lãnh '{{params [0] .value}}' vào đúng ngày hoặc trước khi khoản vay được duyệt vào ngày {{params [1] .value}} `.",
"error.msg.non.empty.datatable.cannot.be.deleted": "Cơ sở dữ liệu rỗng không thể xóa",
"error.msg.non.empty.datatable.column.cannot.be.deleted": "Cột cở sở dữ liệu rỗng không thế xóa",
"error.msg.non.empty.datatable.mandatory.column.cannot.be.added": "Cột trống dữ liệu rỗng không thể them",
@ -3919,5 +3995,87 @@
"label.heading.createdAt": "Đã tạo vào lúc",
"label.selecton": "Chọn vào",
"label.selectday": "Chọn ngày",
"label.heading.repaymentscheduleing.rule": "Kiểu lịch hoàn trả"
"label.heading.repaymentscheduleing.rule": "Kiểu lịch hoàn trả",
"label.input.query": "Truy vấn SQL",
"label.input.tablename": "Chèn vào bảng",
"label.input.tablefields": "Trường bảng",
"label.input.isactive": "Trạng thái",
"label.heading.queryname": "Tên",
"label.heading.query": "Truy vấn SQL",
"label.heading.tableaffected": "Bảng bị ảnh hưởng",
"label.anchor.adhoc": "Truy vấn AdHoc",
"label.anchor.createadhoc": "Tạo truy vấn AdHoc",
"label.anchor.editadhoc": "Sửa truy vấn AdHoc",
"label.heading.createadhocquery": "Tạo truy vấn AdHoc",
"label.heading.editadhocquery": "Sửa truy vấn AdHoc",
"label.view.adhocs": "Định nghĩa Truy vấn AdHoc cho Tổ chức",
"label.input.isnotification": "Là Thông báo",
"label.input.options": "Tùy chọn",
"label.heading.options": "Tùy chọn",
"label.heading.question": "Câu hỏi",
"label.heading.editsurvey": "Sửa Khảo sát",
"label.heading.survey": "Khảo sát",
"label.heading.score": "Điểm",
"label.button.takesurvey": "Thực hiện khảo sát",
"validation.msg.survey.question.key.cannot.be.blank": "Câu hỏi chính không được trống",
"validation.msg.survey.question.text.cannot.be.blank": "Nội dung câu hỏi không được trống",
"validation.msg.survey.question.options.cannot.be.empty": "Lựa chọn câu hỏi không được trống",
"validation.msg.survey.options.text.cannot.be.blank": "Câu hỏi chính không được trống",
"validation.msg.survey.options.value.cannot.be.blank": "Giá trị lựa chọn không được trống",
"error.msg.survey.duplicate.key": "Khảo sát sẵn sàng với từ khóa: `{{params[0].value}}`",
"label.heading.deactivated": "Kích hoạt lại",
"label.button.deactivate": "Kích hoạt lại",
"error.msg.survey.cannot.be.modified.as.used.in.client.survey": "Khảo sát không thể sửa, đó là cần thiết dùng trong khảo sát khách hàng",
"label.NOTIFICATION.description": "Cấu hình thông báo",
"error.msg.no.survey.response": "Không trả lời cho khảo sát",
"label.input.isequalamortization": "Là khấu hao bằng nhau",
"label.heading.equalamortization": "Khấu hao bằng nhau",
"error.msg.equal.amortization.does.not.support.tranche.disbursal": "Khấu hao bằng nhau không hỗ trợ giải ngân",
"error.msg.equal.amortization.does.not.support.interest.recalculation": "Khấu hao bằng nhau không hỗ trợ tính toán lại lãi suất",
"error.msg.equal.amortization.does.not.support.variable.installment": "Khấu hao bằng nhau không hỗ trợ trả góp",
"error.msg.equal.amortization.does.not.support.fixed.emi": "Khấu hao bằng nhau không hỗ trợ cố định",
"label.heading.twofactor": "Xác thực dùng hai lần",
"label.heading.sms": "Tin nhắn SMS",
"label.heading.token": "Dấu hiệu",
"label.otp.token": "Dấu hiện xác thực",
"label.button.otp.request": "Mã thông báo yêu cầu",
"label.button.tfa.remember_me": "Ghi nhớ trong máy tính",
"label.otp.delivery.select.sms": "Gửi hàng SMS tới {{target}}",
"label.otp.delivery.select.email": "Gửi qua Email tới {{target}}",
"label.otp.delivery.info": "Hãy chọn cách bạn muốn nhận mã thông báo xác thực.",
"label.otp.verify.info": "Nhập mã xác thực bạn nhận được.",
"label.anchor.twofactorconfig": "Cấu hình xác thực 02 yếu tố",
"label.twofactorconfig": "Cài đặt cấu hình xác thực hai yếu tố",
"label.anchor.viewtwofactorconfig": "Xem cấu hình xác thực 2 yêu tố!",
"label.anchor.edittwofactorconfig": "Cấu hình xác thực 02 yếu tố",
"error.otp.validate.invalid": "Mã xác thực được cung cấp không hợp lệ",
"error.otp.validate.other": "Đã xảy ra lỗi trong khi cố gắng xác thực mã thông báo xác thực",
"error.twofactor.config.disabled": "Xác thực hai yếu tố bị vô hiệu hóa hoặc không được hỗ trợ trên máy chủ!",
"label.tooltip.reportrunfrequncy": "Tần suất chạy báo cáo",
"label.heading.reportrunfrequncy": "Tần suất chạy báo cáo",
"label.input.reportrunfrequncy": "Tần suất chạy báo cáo",
"label.input.runreportevery": "Chạy báo cáo hàng",
"label.input.runreporteverydays": "Ngày",
"reportRunFrequency.daily": "Hàng ngày",
"reportRunFrequency.weekly": "Hàng tuần",
"reportRunFrequency.monthly": "Hàng tháng",
"reportRunFrequency.yearly": "Hàng năm",
"reportRunFrequency.custom": "Tùy biến",
"label.heading.activate.group": "Kích hoạt Nhóm",
"validation.msg.sharesproduct.sharesIssued.cannot.be.greater.than.totalNumberOfShares": "Số lượng cổ phiếu phát hành phải ít hơn tổng số cổ phần.",
"validation.msg.sharesproduct.description.cannot.be.blank": "Mô tả không được trống.",
"label.input.transfer.date": "Chuyển ngày",
"label.heading.transfer.date": "Chuyển ngày",
"error.msg.cannot.transfer.client.as.loan.transaction.present.on.or.after.transfer.date": "Không thể chuyển khách hàng dưới dạng một hoặc nhiều giao dịch cho vay sau ngày chuyển khoản đã chọn.",
"error.msg.cannot.transfer.client.as.savings.transaction.present.on.or.after.transfer.date": "Không thể chuyển khách hàng dưới dạng một hoặc nhiều giao dịch tiết kiệm sau ngày chuyển được chọn.",
"error.msg.cannot.transfer.clinet.as.selected.office.and.current.office.are.same": "Khách hàng hiện tại của văn phòng đề xuất là như nhau.",
"label.anchor.rates": "Lãi suất",
"label.heading.rates": "Lãi suất",
"label.rates": "Đặt lãi suất cho Vốn vay, Tiết kiệm",
"label.button.createrate": "Tạo lãi suất",
"label.anchor.createrate": "Tạo lãi suất",
"label.anchor.editrate": "Sửa Lãi suất",
"label.error.rate.already.exist": "Lãi suất đã có",
"label.selectrate": "Chọn Lãi suất",
"----End---": "--Kết thúc file--"
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -15,8 +15,12 @@
<!--Loader -->
<div id="loaderWrapper" data-ng-hide="domReady" style="position: absolute; height: 100%; width: 100%; top: 0;">
<div id="loader" style="margin: 175px auto">
<img src="./images/MifosX_logo.png" alt="MifosX" style="min-width: 50px; width: 6%; margin: 0 auto"
class="img-responsive">
<div class="wrapper">
<div class="bottom triangle"></div>
<div class="top triangle"></div>
<div class="left triangle"></div>
<div class="right triangle"></div>
</div>
<img src="images/loader.gif" style="margin: 10px auto" class="img-responsive">
</div>
</div>
@ -91,7 +95,7 @@
<form class="form">
<div class="form-group">
<label for="uid">USERNAME</label>
<label for="uid">{{ 'label.input.username' | translate | uppercase }}</label>
<input type="text" name="username" id="uid" class="form-control"
ng-model="loginCredentials.username"
placeholder="{{ 'label.input.username' | translate |lowercase }}"
@ -99,7 +103,7 @@
</div>
<div class="form-group">
<label for="pwd">PASSWORD</label>
<label for="pwd">{{ 'label.input.password' | translate | uppercase }}</label>
<input type="password" name="password" id="pwd" class="form-control"
ng-model="loginCredentials.password" autocomplete="new-password"
placeholder="{{ 'label.input.password' | translate | lowercase }}"
@ -188,14 +192,14 @@
</div>
<div class="row" ng-hide = "response.uiDisplayConfigurations.whiteLabel.loginPage.hideCommunityDetails">
<hr/>
<div class="row">
<div class="row" >
<div class="col-xs-4 text-center">
<ul class="list-unstyled">
<li><h5>RESOURCES</h5></li>
<li><h5>{{'label.heading.resources' | translate | uppercase }}</h5></li>
<li><a target="https://mifosforge.jira.com/wiki/display/MIFOS/User+Manual"
href="https://mifosforge.jira.com/wiki/display/MIFOS/User+Manual">{{
'label.anchor.usermanual' | translate }}</a></li>
@ -209,7 +213,7 @@
</div>
<div class="col-xs-4 text-center">
<ul class="list-unstyled">
<li><h5>COMMUNITY</h5></li>
<li><h5>{{'label.heading.community' | translate | uppercase }}</h5></li>
<li><a target="https://groups.google.com/forum/#!forum/mifosusers"
href="https://groups.google.com/forum/#!forum/mifosusers">{{
'label.anchor.usersgroup' |
@ -226,7 +230,7 @@
</div>
<div class="col-xs-4 text-center">
<ul class="list-unstyled">
<li><h5>CONTRIBUTE</h5></li>
<li><h5>{{'label.heading.contribute' | translate | uppercase}}</h5></li>
<li><a target="https://mifosforge.jira.com/wiki/display/MDZ/Key+Design+Principles"
href="https://mifosforge.jira.com/wiki/display/MDZ/Key+Design+Principles/">{{
'label.anchor.keydesignprinciples' | translate }}</a></li>
@ -243,6 +247,7 @@
</div>
<hr/>
<div class="row">
<div class="col-sm-6 col-sm-offset-3 text-center">
<br>
@ -254,11 +259,14 @@
</div>
</div>
</div>
<div class="row" ng-hide = "response.uiDisplayConfigurations.whiteLabel.loginPage.releaseDetails">
<p class="text-center text-muted small">
<span>{{ 'label.heading.version' | translate }} {{ version }}</span>
<br/> <span>{{ 'label.heading.uptodate' | translate }}</span>
<br/> <span>{{response.uiDisplayConfigurations.whiteLabel.loginPage.companyName}}{{ 'label.heading.uptodate' | translate }}</span>
</p>
</div>
</div>
</div>
</div>
@ -367,7 +375,7 @@
</li>
<li>
<a class="black" ng-click="helpf()">
<a class="black" style="cursor: pointer;" ng-click="helpf()">
<i class="fa fa-question-circle"></i>
<span>{{'label.anchor.help' | translate }}</span> &nbsp; <i class="fa fa-external-link"></i>
</a>

View File

@ -1,5 +1,5 @@
{
"version": "17.07.01.RELEASE",
"releasedate": "14/Jul/2017"
"version": "Latest Development",
"releasedate": "Current Date"
}

View File

@ -14,7 +14,7 @@
"node": ">=0.4.0"
},
"devDependencies": {
"connect": "^3.3.4",
"serve-static": "^1.9.1"
"connect": "3.7.0",
"serve-static": "1.14.1"
}
}

View File

@ -1,34 +1,41 @@
{
"enableUIDisplayConfiguration": false,
"enableUIDisplayConfiguration": true,
"uiDisplayConfigurations": {
"loanAccount": {
"isHiddenField": {
"fundId": true,
"linkAccountId": true,
"createStandingInstruction": true,
"numberOfRepayments": true,
"repaymentEvery": true,
"repaymentFrequencyType": true,
"repaymentFrequencyNthDayType": true,
"repaymentFrequencyDayOfWeekType": true,
"interestChargedFromDate": true,
"repaymentsStartingFromDate": true,
"interestType": true,
"amortizationType": true,
"interestCalculationPeriodType": true,
"inArrearsTolerance": true,
"graceOnInterestCharged": true,
"transactionProcessingStrategyId": true,
"graceOnInterestPayment": true,
"graceOnArrearsAgeing": true
"fundId": false,
"linkAccountId": false,
"createStandingInstruction": false,
"numberOfRepayments": false,
"repaymentEvery": false,
"repaymentFrequencyType": false,
"repaymentFrequencyNthDayType": false,
"repaymentFrequencyDayOfWeekType": false,
"interestChargedFromDate": false,
"repaymentsStartingFromDate": false,
"interestType": false,
"amortizationType": false,
"interestCalculationPeriodType": false,
"inArrearsTolerance": false,
"graceOnInterestCharged": false,
"transactionProcessingStrategyId": false,
"graceOnInterestPayment": false,
"graceOnArrearsAgeing": false
},
"isHiddenSection": {
"interestRecalculationSection": true,
"collateralSection": true
"interestRecalculationSection": false,
"collateralSection": false
},
"isReadOnlyField": {
"loanTermFrequencyType": true
"loanTermFrequencyType": false
}
},
"whiteLabel": {
"loginPage":{
"hideCommunityDetails": false,
"releaseDetails": false,
"companyName": "Mifos"
}
}
}
}

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
AccCoaController: function (scope,$rootScope, translate, resourceFactory, location) {
AccCoaController: function (scope,$rootScope, translate, resourceFactory, location, anchorScroll) {
$rootScope.tempNodeID = -100; // variable used to store nodeID (from directive), so it(nodeID) is available for detail-table
@ -11,6 +11,12 @@
location.path('/viewglaccount/' + id);
};
scope.scrollto = function (link){
location.hash(link);
anchorScroll();
};
if (!scope.searchCriteria.acoa) {
scope.searchCriteria.acoa = null;
scope.saveSC();
@ -110,7 +116,7 @@
}
});
mifosX.ng.application.controller('AccCoaController', ['$scope','$rootScope', '$translate', 'ResourceFactory', '$location', mifosX.controllers.AccCoaController]).run(function ($log) {
mifosX.ng.application.controller('AccCoaController', ['$scope','$rootScope', '$translate', 'ResourceFactory', '$location','$anchorScroll', mifosX.controllers.AccCoaController]).run(function ($log) {
$log.info("AccCoaController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
AccountingClosureController: function (scope, resourceFactory, location, translate, routeParams, dateFilter) {
AccountingClosureController: function (scope, resourceFactory, location, anchorScroll, translate, routeParams, dateFilter) {
scope.first = {};
scope.formData = {};
scope.first.date = new Date();
@ -22,6 +22,12 @@
scope.routeTo = function (id) {
location.path('/view_close_accounting/' + id);
};
scope.scrollto = function (link){
location.hash(link);
anchorScroll();
};
scope.submit = function () {
var reqDate = dateFilter(scope.first.date, scope.df);
@ -49,7 +55,7 @@
}
}
});
mifosX.ng.application.controller('AccountingClosureController', ['$scope', 'ResourceFactory', '$location', '$translate', '$routeParams', 'dateFilter', mifosX.controllers.AccountingClosureController]).run(function ($log) {
mifosX.ng.application.controller('AccountingClosureController', ['$scope', 'ResourceFactory', '$location', '$translate', '$routeParams', 'dateFilter','$anchorScroll', mifosX.controllers.AccountingClosureController]).run(function ($log) {
$log.info("AccountingClosureController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,16 +1,23 @@
(function (module) {
mifosX.controllers = _.extend(module, {
AccountingRuleController: function (scope, resourceFactory, location) {
AccountingRuleController: function (scope, resourceFactory, location, anchorScroll) {
scope.routeTo = function (id) {
location.path('/viewaccrule/' + id);
};
scope.scrollto = function (link){
location.hash(link);
anchorScroll();
};
resourceFactory.accountingRulesResource.get(function (data) {
scope.rules = data;
});
}
});
mifosX.ng.application.controller('AccountingRuleController', ['$scope', 'ResourceFactory', '$location', mifosX.controllers.AccountingRuleController]).run(function ($log) {
mifosX.ng.application.controller('AccountingRuleController', ['$scope', 'ResourceFactory', '$location','$anchorScroll', mifosX.controllers.AccountingRuleController]).run(function ($log) {
$log.info("AccountingRuleController initialized");
});
}(mifosX.controllers || {}));

View File

@ -11,7 +11,7 @@
});
scope.updateActivityOptions = function(activityId){
if(activityId === 100){
if(activityId === 100 || activityId === 101 || activityId === 102 || activityId === 103){
scope.accountOptions = scope.glAccountOptions.assetAccountOptions;
}else if(activityId === 200 || activityId === 201){
scope.accountOptions = scope.glAccountOptions.liabilityAccountOptions;

View File

@ -20,7 +20,9 @@
scope.getGroups = function() {
resourceFactory.groupResource.getAllGroups({officeId: scope.formData.officeId }, function (data) {
scope.groups = data;
scope.groups = data.filter(function (group) {
return !group.centerId;
});
});
}

View File

@ -12,17 +12,14 @@
resourceFactory.centerResource.get({centerId: routeParams.id, template: 'true', associations: 'groupMembers'}, function (data) {
scope.data = data;
scope.groups = data.groupMembers;
resourceFactory.groupResource.getAllGroups({orderBy: 'name', sortOrder: 'ASC',orphansOnly: true,
officeId : scope.data.officeId},function(data){
scope.allGroups = data;
});
});
scope.groupsOptions = function(value){
return _.filter(scope.allGroups,function(group){
return group.name.indexOf(value) != -1
resourceFactory.groupResource.getAllGroups({name: value, orderBy: 'name', sortOrder: 'ASC',orphansOnly: true,
officeId : scope.data.officeId},function(data){
scope.allGroups = data;
});
return scope.allGroups;
};
scope.add = function () {
@ -68,4 +65,4 @@
mifosX.ng.application.controller('ManageGroupMembersController', ['$q','$scope', 'ResourceFactory', '$location', '$routeParams', '$uibModal', mifosX.controllers.ManageGroupMembersController]).run(function ($log) {
$log.info("ManageGroupMembersController initialized");
});
}(mifosX.controllers || {}));
}(mifosX.controllers || {}));

View File

@ -11,6 +11,16 @@
scope.taskPermissionName = 'ALL_FUNCTIONS';
scope.submittedDatatables = [];
var submitStatus = [];
scope.showTransferDate = false;
var retrieveTransferDate = function(){
resourceFactory.clientResource.retrieveTransferDate({clientId: scope.clientId, anotherresource: 'transferproposaldate'}, function (data1) {
scope.transferDate = data1;
if(scope.transferDate){
scope.showTransferDate = true;
}
})
};
scope.RequestEntities = function(entity,status){
resourceFactory.entityDatatableChecksResource.getAll({limit:-1},function (response) {
@ -129,16 +139,19 @@
scope.breadcrumbName = 'label.anchor.acceptclienttransfer';
scope.showNoteField = true;
scope.taskPermissionName = 'ACCEPTTRANSFER_CLIENT';
retrieveTransferDate();
break;
case "rejecttransfer":
scope.breadcrumbName = 'label.anchor.rejecttransfer';
scope.showNoteField = true;
scope.taskPermissionName = 'REJECTTRANSFER_CLIENT';
retrieveTransferDate();
break;
case "undotransfer":
scope.breadcrumbName = 'label.anchor.undotransfer';
scope.showNoteField = true;
scope.taskPermissionName = 'WITHDRAWTRANSFER_CLIENT';
retrieveTransferDate();
break;
case "reject":
scope.labelName = 'label.input.rejectiondate';

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ClientDocumentController: function (scope, location, http, routeParams, API_VERSION, Upload, $rootScope) {
ClientDocumentController: function (scope, location, resourceFactory, http, routeParams, API_VERSION, Upload, $rootScope) {
scope.clientId = routeParams.clientId;
scope.onFileSelect = function (files) {
scope.formData.file = files[0];
@ -18,9 +18,13 @@
location.path('/viewclient/' + scope.clientId);
});
};
resourceFactory.codeValueResource.getAllCodeValues({codeId: 34}, function (data) {
scope.documenttypes = data;
});
}
});
mifosX.ng.application.controller('ClientDocumentController', ['$scope', '$location', '$http', '$routeParams', 'API_VERSION', 'Upload', '$rootScope', mifosX.controllers.ClientDocumentController]).run(function ($log) {
mifosX.ng.application.controller('ClientDocumentController', ['$scope', '$location', 'ResourceFactory', '$http', '$routeParams', 'API_VERSION', 'Upload', '$rootScope', mifosX.controllers.ClientDocumentController]).run(function ($log) {
$log.info("ClientDocumentController initialized");
});
}(mifosX.controllers || {}));
}(mifosX.controllers || {}));

View File

@ -0,0 +1,65 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreateClientCollateralController: function (scope, resourceFactory, routeParams, location) {
scope.formData = {};
scope.clientId = routeParams.id;
scope.collateralData = {};
scope.disable = true;
scope.collateralDataRequestBody = {};
scope.collateralId;
scope.updateValues = function () {
scope.formData.quantity = scope.formData.quantity * 1.0;
scope.formData.total = scope.formData.quantity * scope.formData.basePrice;
scope.formData.totalCollateral = scope.formData.total * scope.formData.pctToBase/100.00;
}
scope.collateralProductChange = function (collateralId) {
resourceFactory.collateralResource.get({collateralId: collateralId}, function (data) {
scope.collateralData = data;
scope.collateralId = collateralId;
scope.formData.name = scope.collateralData.name;
scope.formData.type = scope.collateralData.quality;
scope.formData.basePrice = scope.collateralData.basePrice;
scope.formData.pctToBase = scope.collateralData.pctToBase;
scope.formData.unitType = scope.collateralData.unitType;
scope.formData.collateralId = collateralId;
scope.formData.quantity = 0.0;
scope.formData.total = 0.0;
scope.formData.totalCollateral = 0.0
scope.disabled = false;
});
}
resourceFactory.collateralResource.getAllCollaterals(function (data) {
scope.collaterals = data;
});
scope.cancel = function () {
location.path('/viewclient/' + scope.clientId);
};
scope.submit = function () {
this.formData.locale = scope.optlang.code;
delete this.formData.name;
delete this.formData.pctToBase;
delete this.formData.basePrice;
delete this.formData.type;
delete this.formData.unitType;
delete this.formData.total;
delete this.formData.totalCollateral;
resourceFactory.clientcollateralResource.save({clientId: scope.clientId}, this.formData, function (data) {
location.path('/viewclient/' + scope.clientId + '/viewclientcollateral/' + data.resourceId);
});
};
}
});
mifosX.ng.application.controller('CreateClientCollateralController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.CreateClientCollateralController]).run(function ($log) {
$log.info("CreateClientCollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -37,7 +37,6 @@
scope.tf = "HH:mm";
scope.clientId = routeParams.clientId;
var requestParams = {staffInSelectedOfficeOnly:true};
if (routeParams.groupId) {
requestParams.groupId = routeParams.groupId;
@ -101,27 +100,25 @@
scope.enableAddress=data.isAddressEnabled;
if(scope.enableAddress===true)
{
scope.addressTypes=data.address.addressTypeIdOptions;
scope.countryOptions=data.address.countryIdOptions;
scope.stateOptions=data.address.stateProvinceIdOptions;
if (scope.enableAddress === true) {
scope.addressTypes = data.address[0].addressTypeIdOptions;
scope.countryOptions = data.address[0].countryIdOptions;
scope.stateOptions = data.address[0].stateProvinceIdOptions;
resourceFactory.addressFieldConfiguration.get({entity:entityname},function(data){
for(var i=0;i<data.length;i++)
{
data[i].field='scope.'+data[i].field;
eval(data[i].field+"="+data[i].is_enabled);
if(data[i].is_enabled == undefined) {
//For dev.mifos.io or demo.mifos.io
eval(data[i].field+"="+data[i].isEnabled);
} else {
//For fineract server
eval(data[i].field+"="+data[i].is_enabled);
}
}
})
@ -314,6 +311,7 @@
if(scope.enableAddress===true)
{
scope.formData.address = [];
for(var i=0;i<scope.addressArray.length;i++)
{
var temp=new Object();
@ -321,9 +319,8 @@
{
temp.addressTypeId=scope.addressArray[i].addressTypeId;
}
if(scope.addressArray[i].street)
{
temp.street=scope.addressArray[i].street;
if (scope.addressArray[i].street) {
temp.street = scope.addressArray[i].street;
}
if(scope.addressArray[i].addressLine1)
{

View File

@ -0,0 +1,39 @@
(function (module) {
mifosX.controllers = _.extend(module, {
EditClientCollateralController: function (scope, resourceFactory, routeParams, location) {
scope.formData = {};
scope.clientId = routeParams.id;
scope.collateralId = routeParams.collateralId;
scope.collateralDataRequestBody = {};
resourceFactory.clientcollateralResource.get({clientId: scope.clientId, collateralParamId: scope.collateralId}, function (data) {
scope.collaterals = data;
scope.formData = {
name: data.name,
quantity: data.quantity,
total: data.total,
totalCollateral: data.totalCollateral
}
});
scope.cancel = function () {
location.path('/viewclient/' + scope.clientId);
};
scope.submit = function () {
this.formData.locale = scope.optlang.code;
scope.collateralDataRequestBody.collateralId = scope.collateralId;
scope.collateralDataRequestBody.quantity = this.formData.quantity;
scope.collateralDataRequestBody.locale = this.formData.locale;
resourceFactory.clientcollateralResource.update({clientId: scope.clientId, collateralParamId: scope.collateralId}, scope.collateralDataRequestBody, function (data) {
location.path('/viewclient/' + scope.clientId + '/viewclientcollateral/' + data.resourceId);
});
};
}
});
mifosX.ng.application.controller('EditClientCollateralController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.EditClientCollateralController]).run(function ($log) {
$log.info("EditClientCollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,8 +1,9 @@
(function (module) {
mifosX.controllers = _.extend(module, {
TransactionClientController: function (scope, resourceFactory, routeParams, location) {
TransactionClientController: function (scope, resourceFactory, routeParams, location, dateFilter) {
scope.formData = {};
scope.formData.transferDate = new Date();
scope.clientId = routeParams.id;
resourceFactory.officeResource.getAllOffices(function (data) {
scope.offices = data;
@ -12,14 +13,14 @@
scope.submit = function () {
this.formData.locale = scope.optlang.code;
this.formData.dateFormat = scope.df;
this.formData.transferDate = dateFilter(this.formData.transferDate, scope.df);
resourceFactory.clientResource.save({clientId: routeParams.id, command: 'proposeTransfer'}, this.formData, function (data) {
location.path('/viewclient/' + routeParams.id);
});
};
}
});
mifosX.ng.application.controller('TransactionClientController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.TransactionClientController]).run(function ($log) {
mifosX.ng.application.controller('TransactionClientController', ['$scope', 'ResourceFactory', '$routeParams', '$location', 'dateFilter', mifosX.controllers.TransactionClientController]).run(function ($log) {
$log.info("TransactionClientController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,18 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewAllClientCollateralController: function (scope, resourceFactory, routeParams, location) {
scope.clientId = routeParams.id;
scope.routeTo = function (id) {
location.path('/clients/' + routeParams.id + '/viewclientcollateral/' + id);
};
scope.CollateralPerPage = 15;
resourceFactory.clientcollateralResource.getAllCollaterals({clientId: scope.clientId}, function (data) {
scope.collaterals = data;
});
}
});
mifosX.ng.application.controller('ViewAllClientCollateralController', ['$scope', 'ResourceFactory', '$location', mifosX.controllers.ViewAllClientCollateralController]).run(function ($log) {
$log.info("ViewAllClientCollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,47 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewClientCollateralController: function (scope, resourceFactory, routeParams, location, $uibModal) {
scope.formData = {};
scope.clientId = routeParams.id;
scope.collateralId = routeParams.collateralId;
scope.loanTransactions = [];
resourceFactory.clientcollateralResource.get({clientId: scope.clientId, collateralParamId: scope.collateralId}, function (data) {
scope.collateral = data;
scope.loanTransactions = scope.collateral.loanTransactionData;
for (var i=0; i<scope.loanTransactions.length; i++){
scope.loanTransactions[i].lastRepaymentDate.date = new Date(scope.loanTransactions[i].lastRepaymentDate.date);
}
});
scope.deleteClientCollateral = function () {
$uibModal.open({
templateUrl: 'deleteclientcollateral.html',
controller: CollateralDeleteCtrl
});
};
scope.TransactionsPerPage =15;
var CollateralDeleteCtrl = function ($scope, $uibModalInstance) {
$scope.delete = function () {
resourceFactory.clientcollateralResource.delete({clientId: scope.clientId, collateralParamId: scope.collateralId}, function (data) {
$uibModalInstance.close('delete');
location.path('/viewclient/' + scope.clientId);
});
};
$scope.cancel = function () {
$uibModalInstance.dismiss('cancel');
};
};
scope.cancel = function () {
location.path('/viewclient/' + scope.clientId);
};
}
});
mifosX.ng.application.controller('ViewClientCollateralController', ['$scope', 'ResourceFactory', '$routeParams', '$location', '$uibModal', mifosX.controllers.ViewClientCollateralController]).run(function ($log) {
$log.info("ViewClientCollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewClientController: function (scope, routeParams, route, location, resourceFactory, http, $uibModal, API_VERSION, $rootScope, Upload) {
ViewClientController: function (scope, routeParams, route, location, resourceFactory, http, $uibModal, API_VERSION, $timeout, $rootScope, Upload) {
scope.client = [];
scope.identitydocuments = [];
scope.buttons = [];
@ -10,8 +10,15 @@
scope.openLoan = true;
scope.openSaving = true;
scope.openShares = true ;
scope.openFixed = true;
scope.openRecurring = true;
scope.showFixed = false;
scope.showRecurring = false;
scope.updateDefaultSavings = false;
scope.charges = [];
scope.legalform = 'm_client';
scope.collaterals = [];
// address
@ -35,7 +42,7 @@
for(var i=0;i<data.length;i++)
{
data[i].field='scope.view.'+data[i].field;
eval(data[i].field+"="+data[i].is_enabled);
eval(data[i].field+"="+data[i].isEnabled);
}
@ -91,23 +98,14 @@
}
// end of address
// family members
scope.families=[];
resourceFactory.familyMembers.get({clientId:routeParams.id},function(data)
{
scope.families=data;
});
scope.deleteFamilyMember=function(clientFamilyMemberId)
@ -121,6 +119,10 @@
}
scope.viewCollaterals=function() {
location.path('/clients/'+ routeParams.id +'/viewallclientcollaterals');
}
scope.editFamilyMember=function(clientFamilyMemberId)
{
@ -166,11 +168,17 @@
scope.routeToShareAccount = function(id) {
location.path('/viewshareaccount/'+id)
} ;
};
scope.routeToCollateral = function(id) {
location.path('/viewclient/' + routeParams.id + '/viewclientcollateral/' + id);
}
scope.haveFile = [];
resourceFactory.clientResource.get({clientId: routeParams.id}, function (data) {
scope.client = data;
scope.collaterals = scope.client.clientCollateralManagements;
scope.collateralSize = scope.collaterals.length;
scope.isClosedClient = scope.client.status.value == 'Closed';
scope.staffData.staffId = data.staffId;
if (data.imagePresent) {
@ -265,7 +273,20 @@
resourceFactory.runReportsResource.get({reportSource: 'ClientSummary', genericResultSet: 'false', R_clientId: routeParams.id}, function (data) {
scope.client.ClientSummary = data[0];
});
scope.entitySubType = data.legalForm.value;
resourceFactory.DataTablesResource.getAllDataTables({apptable: 'm_client'}, function (data) {
scope.clientdatatables = data;
});
});
scope.entitySubTypeFilter = function (datatable) {
if (datatable.entitySubType === scope.entitySubType) {
return true;
}
}
scope.deleteClient = function () {
$uibModal.open({
templateUrl: 'deleteClient.html',
@ -287,9 +308,9 @@
file: file
}).then(function (imageData) {
// to fix IE not refreshing the model
if (!scope.$$phase) {
$timeout(function () {
scope.$apply();
}
});
$uibModalInstance.close('upload');
route.reload();
});
@ -409,7 +430,6 @@
},
file: file
}).then(function (imageData) {
// to fix IE not refreshing the model
if (!scope.$$phase) {
scope.$apply();
}
@ -489,6 +509,13 @@
};
resourceFactory.clientAccountResource.get({clientId: routeParams.id}, function (data) {
scope.clientAccounts = data;
if(data.loanAccounts){
for(var i in data.loanAccounts){
if(data.loanAccounts[i].status.value == "Active" && data.loanAccounts[i].inArrears){
scope.clientAccounts.loanAccounts[i].status.value = "Active in Bad Standing"
}
}
}
if (data.savingsAccounts) {
for (var i in data.savingsAccounts) {
if (data.savingsAccounts[i].status.value == "Active") {
@ -516,8 +543,45 @@
}
}
}
for(var i in data.savingsAccounts){
if(data.savingsAccounts[i].depositType.value == 'Recurring Deposit'){
scope.showRecurring = true;
}
}
for(var i in data.savingsAccounts){
if(data.savingsAccounts[i].depositType.value == 'Fixed Deposit'){
scope.showFixed = true;
}
}
});
scope.isSavings = function (savingaccount) {
if(savingaccount.depositType.value == 'Savings'){
return true;
}
else{
return false;
}
};
scope.isFixed = function (savingaccount) {
if(savingaccount.depositType.value == 'Fixed Deposit'){
return true;
}
else{
return false;
}
};
scope.isRecurring = function(savingaccount) {
if(savingaccount.depositType.value == 'Recurring Deposit'){
return true;
}
else{
return false;
}
};
resourceFactory.clientChargesResource.getCharges({clientId: routeParams.id, pendingPayment:true}, function (data) {
scope.charges = data.pageItems;
});
@ -575,6 +639,22 @@
}
};
scope.setFixed = function () {
if(scope.openFixed) {
scope.openFixed = false;
} else {
scope.openFixed = true;
}
};
scope.setRecurring = function () {
if(scope.openRecurring) {
scope.openRecurring = false;
}else {
scope.openRecurring = true;
}
};
resourceFactory.clientNotesResource.getAllNotes({clientId: routeParams.id}, function (data) {
scope.clientNotes = data;
@ -600,13 +680,11 @@
});
};
resourceFactory.DataTablesResource.getAllDataTables({apptable: 'm_client'}, function (data) {
scope.clientdatatables = data;
});
scope.dataTableChange = function (clientdatatable) {
resourceFactory.DataTablesResource.getTableDetails({datatablename: clientdatatable.registeredTableName,
entityId: routeParams.id, genericResultSet: 'true'}, function (data) {
resourceFactory.DataTablesResource.getTableDetails({
datatablename: clientdatatable.registeredTableName,
entityId: routeParams.id, genericResultSet: 'true'
}, function (data) {
scope.datatabledetails = data;
scope.datatabledetails.isData = data.data.length > 0 ? true : false;
scope.datatabledetails.isMultirow = data.columnHeaders[0].columnName == "id" ? true : false;
@ -906,10 +984,57 @@
};
};
resourceFactory.creditBureauTemplate.get(function (data) {
scope.creditbureaus = data;
scope.creditbureauname = scope.creditbureaus.creditBureauName;
});
scope.getcreditreport = function(creditBureauId) {
scope.creditbureau = creditBureauId;
if (creditBureauId == 1) { //id 1 is assigned for ThitsaWorks CreditBureau
location.path('/creditreport/thitsaworkCreditbureau/'+scope.creditbureau);
}
else{
alert("Please Select Respective integrated Credit Bureau");
}
};
scope.onFileSelect = function (files) {
scope.formData.file = files[0];
};
scope.upload = function () {
Upload.upload({
url: $rootScope.hostUrl + API_VERSION + '/creditBureauIntegration/addCreditReport?creditBureauId=1',
data: {file: scope.formData.file},
}).then(function (data) {
if (!scope.$$phase) {
scope.$apply();
}
});
};
scope.uploadReport = function (creditBureauId) {
scope.creditbureau = creditBureauId;
if (creditBureauId == 1) {
location.path('/creditreport/thitsaworkUploadCreditbureau/' + routeParams.id +'/'+ scope.creditbureau);
}
};
scope.downloadCreditReport = function (creditBureauId) {
scope.creditbureau = creditBureauId;
if (creditBureauId == 1) { //id 1 is assigned for ThitsaWorks CreditBureau
location.path('/creditreport/thitsaworkDownloadCreditbureau/' + routeParams.id +'/'+ scope.creditbureau);
}else{
alert("Please Select Respective integrated Credit Bureau");
}
};
}
});
mifosX.ng.application.controller('ViewClientController', ['$scope', '$routeParams', '$route', '$location', 'ResourceFactory', '$http', '$uibModal', 'API_VERSION', '$rootScope', 'Upload', mifosX.controllers.ViewClientController]).run(function ($log) {
mifosX.ng.application.controller('ViewClientController', ['$scope', '$routeParams', '$route', '$location', 'ResourceFactory', '$http', '$uibModal', 'API_VERSION', '$timeout', '$rootScope', 'Upload', mifosX.controllers.ViewClientController]).run(function ($log) {
$log.info("ViewClientController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,25 @@
(function (module) {
mifosX.controllers = _.extend(module, {
AddNewCreditBureauConfigurationController: function ($scope, resourceFactory, $routeParams, location) {
$scope.bureauId= $routeParams.creditbureauId;
$scope.formdata = {};
$scope.addConfig = function (creditBureauId) {
resourceFactory.addCreditBureauConfiguration.post({creditBureauId: creditBureauId}, this.formdata, function (data) {
});
};
$scope.cancel = function () {
location.path('externalservicesCB/CreditBureau/configuration');
};
$scope.add = function () {
location.path('externalservicesCB/CreditBureau/configuration/addnewconfig');
};
}
});
mifosX.ng.application.controller('AddNewCreditBureauConfigurationController', ['$scope', 'ResourceFactory', '$routeParams', '$location','$route', mifosX.controllers.AddNewCreditBureauConfigurationController]).run(function ($log) {
$log.info("AddNewCreditBureauConfigurationController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,35 @@
(function (module) {
mifosX.controllers = _.extend(module, {
AddNewCreditBureauController: function ($scope, http,API_VERSION,$rootScope,resourceFactory,dateFilter, $routeParams, location) {
$scope.formData = {};
$scope.creditbureaus=[];
$scope.cancel={};
$scope.localcountry={};
resourceFactory.creditBureauTemplate.get(function (data) {
$scope.creditbureaus=data;
});
$scope.cancel = function () {
location.path('#/externalservicesCB/CreditBureau');
};
$scope.submit = function () {
resourceFactory.addOrgCreditBureau.save({ocbId: $scope.creditBureauId},$scope.formData,function (data) {
location.path('/externalservicesCB/CreditBureau');
});
};
}
});
mifosX.ng.application.controller('AddNewCreditBureauController', ['$scope','$http','API_VERSION','$rootScope', 'ResourceFactory', 'dateFilter','$routeParams', '$location', mifosX.controllers.AddNewCreditBureauController]).run(function ($log) {
$log.info('AddNewCreditBureauController initialized');
});
}(mifosX.controllers || {}));

View File

@ -22,15 +22,19 @@
for(var i=0;i<data.length;i++)
{
data[i].field='$scope.'+data[i].field;
eval(data[i].field+"="+data[i].is_enabled);
for(var i=0;i<data.length;i++)
{
data[i].field='$scope.'+data[i].field;
if(data[i].is_enabled == undefined) {
//For dev.mifos.io or demo.mifos.io
eval(data[i].field+"="+data[i].isEnabled);
} else {
//For fineract server
eval(data[i].field+"="+data[i].is_enabled);
}
}
}
})
})
$scope.routeTo=function()
{
location.path('/viewclient/'+clientId);
@ -82,4 +86,4 @@
});
}
(mifosX.controllers || {}));
(mifosX.controllers || {}));

View File

@ -0,0 +1,27 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreditBureauConfigurationController: function ($scope, resourceFactory, $routeParams, location) {
$scope.formdata = {};
resourceFactory.creditBureauTemplate.get(function (data) {
$scope.creditbureaus = data;
$scope.creditbureauname = $scope.creditbureaus.creditBureauName;
});
$scope.submit = function () {
location.path('/externalservicesCB/CreditBureau/editconfiguration/'+$scope.creditBureauId);
};
$scope.cancel = function () {
location.path('/externalservicesCB/CreditBureau');
};
}
});
mifosX.ng.application.controller('CreditBureauConfigurationController', ['$scope', 'ResourceFactory', '$routeParams', '$location','$route', mifosX.controllers.CreditBureauConfigurationController]).run(function ($log) {
$log.info("CreditBureauConfigurationController initialized");
});
}(mifosX.controllers || {}));

View File

@ -32,17 +32,20 @@
for(var i=0;i<data.length;i++)
{
data[i].field='$scope.'+data[i].field;
if(data[i].is_enabled == undefined) {
//For dev.mifos.io or demo.mifos.io
eval(data[i].field+"="+data[i].isEnabled);
} else {
//For fineract server
eval(data[i].field+"="+data[i].is_enabled);
}
}
for(var i=0;i<data.length;i++)
{
data[i].field='$scope.'+data[i].field;
eval(data[i].field+"="+data[i].is_enabled);
})
}
})
$scope.routeTo=function()
{
location.path('/viewclient/'+clientId);
@ -61,6 +64,7 @@
{
if(data[i].addressId==addressId)
{
if(data[i].street&&$scope.street)
{
$scope.formData.street=data[i].street;
@ -143,4 +147,4 @@
});
}
(mifosX.controllers || {}));
(mifosX.controllers || {}));

View File

@ -4,7 +4,7 @@
scope.configId = routeParams.configId;
resourceFactory.configurationResource.get({id: scope.configId}, function (data) {
scope.formData = {value: data.value};
scope.formData = {value: data.value, stringValue: data.stringValue};
});
scope.cancel = function () {
location.path('/global');

View File

@ -0,0 +1,31 @@
(function (module) {
mifosX.controllers = _.extend(module, {
EditCreditBureauConfigurationController: function (scope, resourceFactory, $routeParams, location) {
scope.bureauId= $routeParams.creditbureauId;
scope.formData = {};
scope.creditBureauConfigurationId='';
resourceFactory.fetchCreditBureauConfiguration.get({organisationCreditBureauId: scope.bureauId},function (data) {
scope.creditBureauConfigurations = data;
});
scope.submits = function () {
resourceFactory.updateCreditBureauConfiguration.put({configurationId: scope.creditBureauConfiguration.creditBureauConfigurationId}, this.formData, function () {
});
};
scope.cancel = function () {
location.path('externalservicesCB/CreditBureau/configuration');
};
scope.add = function () {
location.path('/externalservicesCB/CreditBureau/newconfiguration/');
};
}
});
mifosX.ng.application.controller('EditCreditBureauConfigurationController', ['$scope', 'ResourceFactory', '$routeParams', '$location','$route', mifosX.controllers.EditCreditBureauConfigurationController]).run(function ($log) {
$log.info("EditCreditBureauConfigurationController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,38 @@
(function (module) {
mifosX.controllers = _.extend(module, {
MapCreditBureauToLpController: function ($scope, resourceFactory, $routeParams, location) {
$scope.formData = {skipCreditcheckInFailure:false,isCreditcheckMandatory:false,locale:'en'}; //added default data
$scope.cb_id={};
$scope.lps=[];
$scope.cbdropdowns=[];
$scope.creditbureaus=[];
resourceFactory.lpdropdown.get( function (data) {
$scope.lps=data;
});
resourceFactory.creditBureauSummary.get(function (data) {
$scope.creditbureaus=data;
});
$scope.submit = function () {
resourceFactory.addCreditBureauLoanProductMapping.post({cb_id: $scope.organisationCreditBureauId}, this.formData, function (data) {
location.path('/externalservicesCB/CreditBureau');
});
};
}
});
mifosX.ng.application.controller('MapCreditBureauToLpController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.MapCreditBureauToLpController]).run(function ($log) {
$log.info("MapCreditBureauToLpController initialized");
});
}
(mifosX.controllers || {}));

View File

@ -0,0 +1,79 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewCreditBureauSummaryController: function ($scope, resourceFactory, $routeParams, location,route) {
$scope.Configs = [];
$scope.CBConfigs=[];
$scope.externalServicesType = $routeParams.externalServicesType;
resourceFactory.creditBureauSummary.get( function (data) {
for (var i in data) {
if(data[i] != null && data[i].organisationCreditBureauId != null) {
$scope.Configs.push(data[i]);
}
}
});
resourceFactory.creditBureauMapping.get( function (data) {
for (var i in data) {
if(data[i] != null && data[i].creditbureauLoanProductMappingId != null) {
$scope.CBConfigs.push(data[i]);
}
}
});
$scope.buttonstatus=function(status,id)
{
var biD=document.getElementById(id);
if(status==true)
{
biD.innerHTML="disable";
}
else
{
biD.innerHTML="enable";
}
}
$scope.changeCbStatus=function(cb_id,status)
{
var formData={};
formData.creditBureauId=cb_id;
formData.isActive=!status;
resourceFactory.creditBureauSummary.put(formData, function (data) {
route.reload();
});
}
$scope.changeMappingStatus=function (mappingid,status) {
var mappingUpdate={};
mappingUpdate.creditbureauLoanProductMappingId=mappingid;
mappingUpdate.isActive=!status;
resourceFactory.creditBureauMapping.put(mappingUpdate,function (data) {
route.reload();
});
}
}
});
mifosX.ng.application.controller('ViewCreditBureauSummaryController', ['$scope', 'ResourceFactory', '$routeParams', '$location','$route', mifosX.controllers.ViewCreditBureauSummaryController]).run(function ($log) {
$log.info("ViewCreditBureauSummaryController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,16 +1,22 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreateFixedDepositAccountController: function (scope, resourceFactory, location, routeParams, dateFilter,$uibModal) {
CreateFixedDepositAccountController: function (scope, resourceFactory, location, routeParams, dateFilter,$uibModal, WizardHandler) {
scope.products = [];
scope.fieldOfficers = [];
scope.formData = {};
scope.transientData ={};
scope.restrictDate = new Date();
scope.fixedDetails = {};
scope.clientId = routeParams.clientId;
scope.groupId = routeParams.groupId;
if (routeParams.centerEntity) {
scope.centerEntity = true;
}
scope.date = {};
scope.date.submittedOnDate = new Date();
scope.disabled = true;
//interest rate chart details
scope.chart = {};
scope.fromDate = {}; //required for date formatting
@ -18,6 +24,9 @@
scope.charges = [];
scope.inparams = {};
scope.maturityDetails = {};
if (scope.clientId) {
scope.inparams.clientId = scope.clientId
}
@ -39,10 +48,15 @@
scope.savingsAccounts = data.savingsAccounts;
});
scope.goNext = function(form){
WizardHandler.wizard().checkValid(form);
}
scope.changeProduct = function () {
scope.inparams.productId = scope.formData.productId;
resourceFactory.fixedDepositAccountTemplateResource.get(scope.inparams, function (data) {
scope.depositRolloverOptions = data.maturityInstructionOptions;
scope.savingsAccounts = data.savingsAccounts;
scope.data = data;
scope.charges = data.charges;
@ -67,6 +81,9 @@
if (data.interestFreePeriodApplicable) scope.formData.interestFreePeriodApplicable = data.interestFreePeriodApplicable;
if (data.preClosurePenalApplicable) scope.formData.preClosurePenalApplicable = data.preClosurePenalApplicable;
scope.disabled = false;
scope.fixedDetails = angular.copy(scope.formData);
scope.fixedDetails.productName = scope.formValue(scope.products,scope.formData.productId,'id','name');
scope.chart = data.accountChart;
scope.chartSlabs = scope.chart.chartSlabs;
//format chart date values
@ -104,6 +121,19 @@
});
};
scope.$watch('formData',function(newVal){
scope.fixedDetails = angular.extend(scope.fixedDetails,newVal);
});
scope.formValue = function(array,model,findattr,retAttr){
findattr = findattr ? findattr : 'id';
retAttr = retAttr ? retAttr : 'value';
console.log(findattr,retAttr,model);
return _.find(array, function (obj) {
return obj[findattr] === model;
})[retAttr];
};
scope.addCharge = function (chargeId) {
scope.errorchargeevent = false;
if (chargeId) {
@ -182,6 +212,22 @@
location.path('/viewgroup/' + scope.groupId);
}
}
scope.changeMaturityInstruction = function(){
scope.maturityDetails.maturityInstructionId = scope.formData.maturityInstructionId;
// scope.maturityDetails.onAccountClosure = scope.depositRolloverOptions.find(function(item){
// return item.id == scope.formData.maturityInstructionId
// });
scope.maturityDetails.onAccountClosure = _.find(scope.depositRolloverOptions,function(item){
return item.id == scope.formData.maturityInstructionId;
});
scope.maturityDetails.transferToSavingsAccount = _.find(scope.savingsAccounts,function(item){
return item.id == scope.formData.transferToSavingsId;
});
}
/**
* Add a new row with default values for entering chart details
@ -389,7 +435,7 @@
}
});
mifosX.ng.application.controller('CreateFixedDepositAccountController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter','$uibModal', mifosX.controllers.CreateFixedDepositAccountController]).run(function ($log) {
mifosX.ng.application.controller('CreateFixedDepositAccountController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter','$uibModal', 'WizardHandler', mifosX.controllers.CreateFixedDepositAccountController]).run(function ($log) {
$log.info("CreateFixedDepositAccountController initialized");
});
}(mifosX.controllers || {}));

View File

@ -29,15 +29,22 @@
}
}
scope.inparams = {};
if (data.clientId) {
scope.formData.clientId = data.clientId;
scope.clientName = data.clientName;
scope.inparams.clientId = data.clientId
}
if (data.groupId) {
scope.formData.groupId = data.groupId;
scope.groupName = data.groupName;
scope.inparams.groupId = data.groupId
}
scope.formData.productId = data.depositProductId;
scope.inparams.productId = scope.formData.productId;
resourceFactory.fixedDepositAccountTemplateResource.get(scope.inparams, function (data) {
scope.depositRolloverOptions = data.maturityInstructionOptions;
});
scope.products = data.productOptions;
scope.savingsAccounts = data.savingsAccounts;
if (data.linkedAccount) {
@ -48,12 +55,15 @@
var submittedOnDate = dateFilter(data.timeline.submittedOnDate, scope.df);
scope.formData.submittedOnDate = new Date(submittedOnDate);
}
scope.formData.externalId = data.externalId;
scope.fieldOfficers = data.fieldOfficerOptions;
scope.formData.nominalAnnualInterestRate = data.nominalAnnualInterestRate;
scope.formData.depositAmount = data.depositAmount;
scope.formData.depositPeriod = data.depositPeriod;
scope.formData.lockinPeriodFrequency = data.lockinPeriodFrequency;
scope.formData.withHoldTax = data.withHoldTax;
scope.formData.maturityInstructionId = data.onAccountClosure.id;
scope.formData.transferToSavingsId = data.transferToSavingsId;
/* FIX-ME: uncomment annualFeeAmount when datepicker avialable, because it depends on the date field 'annualFeeOnMonthDay'*/
//scope.formData.annualFeeAmount = data.annualFeeAmount;
//scope.formData.withdrawalFeeAmount = data.withdrawalFeeAmount;
@ -199,6 +209,10 @@
location.path('/viewsavingaccount/' + scope.accountId);
}
scope.changeMaturityInstruction = function(){
scope.formData.transferToSavingsId =null;
}
scope.submit = function () {
if (this.formData.submittedOnDate) this.formData.submittedOnDate = dateFilter(this.formData.submittedOnDate, scope.df);
this.formData.locale = scope.optlang.code;

View File

@ -1,15 +1,19 @@
(function (module) {
(function (module) {
mifosX.controllers = _.extend(module, {
CreateRecurringDepositAccountController: function (scope, resourceFactory, location, routeParams, dateFilter,$uibModal) {
CreateRecurringDepositAccountController: function (scope, resourceFactory, location, routeParams, WizardHandler, dateFilter, uiConfigService, $uibModal) {
scope.products = [];
scope.fieldOfficers = [];
scope.formData = {};
scope.restrictDate = new Date();
scope.recurringDetails = {};
scope.clientId = routeParams.clientId;
scope.groupId = routeParams.groupId;
if (routeParams.centerEntity) {
scope.centerEntity = true;
}
scope.date = {};
scope.date.submittedOnDate = new Date();
scope.disabled = true;
//interest rate chart details
scope.chart = {};
@ -39,6 +43,10 @@
scope.groupName = data.groupName;
});
scope.goNext = function(form){
WizardHandler.wizard().checkValid(form);
}
scope.changeProduct = function () {
scope.inparams.productId = scope.formData.productId;
resourceFactory.recurringDepositAccountTemplateResource.get(scope.inparams, function (data) {
@ -66,6 +74,9 @@
if (data.interestFreePeriodApplicable) scope.formData.interestFreePeriodApplicable = data.interestFreePeriodApplicable;
if (data.preClosurePenalApplicable) scope.formData.preClosurePenalApplicable = data.preClosurePenalApplicable;
scope.disabled = false;
scope.recurringDetails = angular.copy(scope.formData);
scope.recurringDetails.productName = scope.formValue(scope.products,scope.formData.productId,'id','name');
scope.chart = data.accountChart;
scope.chartSlabs = scope.chart.chartSlabs;
//format chart date values
@ -99,6 +110,19 @@
});
};
scope.$watch('formData',function(newVal){
scope.recurringDetails = angular.extend(scope.recurringDetails,newVal);
});
scope.formValue = function(array,model,findattr,retAttr){
findattr = findattr ? findattr : 'id';
retAttr = retAttr ? retAttr : 'value';
console.log(findattr,retAttr,model);
return _.find(array, function (obj) {
return obj[findattr] === model;
})[retAttr];
};
scope.addCharge = function (chargeId) {
scope.errorchargeevent = false;
if (chargeId) {
@ -167,6 +191,7 @@
this.formData.expectedFirstDepositOnDate = dateFilter(scope.formData.expectedFirstDepositOnDate, scope.df);
}
resourceFactory.recurringDepositAccountResource.save(this.formData, function (data) {
location.path('/viewrecurringdepositaccount/' + data.savingsId);
});
@ -392,7 +417,7 @@
}
});
mifosX.ng.application.controller('CreateRecurringDepositAccountController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter','$uibModal', mifosX.controllers.CreateRecurringDepositAccountController]).run(function ($log) {
mifosX.ng.application.controller('CreateRecurringDepositAccountController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'WizardHandler', 'dateFilter','$uibModal', mifosX.controllers.CreateRecurringDepositAccountController]).run(function ($log) {
$log.info("CreateRecurringDepositAccountController initialized");
});
}(mifosX.controllers || {}));

View File

@ -167,8 +167,7 @@
scope.formData.clientMembers[i] = scope.addedClients[i].id;
}
if (this.formData.active) {
var reqDate = dateFilter(scope.first.date, scope.df);
this.formData.activationDate = reqDate;
this.formData.activationDate = dateFilter(scope.first.date, scope.df);
}
if (routeParams.centerId) {
this.formData.centerId = routeParams.centerId;
@ -177,8 +176,7 @@
this.formData.officeId = routeParams.officeId;
}
if (scope.first.submitondate) {
reqDat = dateFilter(scope.first.submitondate, scope.df);
this.formData.submittedOnDate = reqDat;
this.formData.submittedOnDate = dateFilter(scope.first.submitondate, scope.df);
}
this.formData.locale = scope.optlang.code;
this.formData.dateFormat = scope.df;

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
EditGroupController: function (scope, resourceFactory, location, routeParams, dateFilter) {
EditGroupController: function (scope, resourceFactory, location, routeParams, dateFilter, WizardHandler) {
scope.first = {};
scope.managecode = routeParams.managecode;
scope.restrictDate = new Date();
@ -117,12 +117,13 @@
resourceFactory.groupResource.get({groupId: routeParams.id}, function (data) {
if (data.timeline.submittedOnDate) {
scope.mindate = new Date(data.timeline.submittedOnDate);
scope.first.submitondate = new Date(dateFilter(data.timeline.submittedOnDate, scope.df));
}
});
scope.updateGroup = function () {
var reqDate = dateFilter(scope.first.date, scope.df);
this.formData.activationDate = reqDate;
this.formData.submittedOnDate = dateFilter(scope.first.submitondate, scope.df);
this.formData.activationDate = dateFilter(scope.first.date, scope.df);
this.formData.locale = scope.optlang.code;
this.formData.dateFormat = scope.df;
resourceFactory.groupResource.update({groupId: routeParams.id}, this.formData, function (data) {
@ -187,7 +188,7 @@
};
}
});
mifosX.ng.application.controller('EditGroupController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter', mifosX.controllers.EditGroupController]).run(function ($log) {
mifosX.ng.application.controller('EditGroupController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter','WizardHandler', mifosX.controllers.EditGroupController]).run(function ($log) {
$log.info("EditGroupController initialized");
});
}(mifosX.controllers || {}));

View File

@ -3,6 +3,9 @@
ViewGroupController: function (scope, routeParams, route, location, resourceFactory, dateFilter, $uibModal) {
scope.group = [];
scope.template = [];
scope.groupGLIMAccounts=[];
scope.groupGSIMAccounts=[];
scope.groupId=routeParams.id;
scope.formData = {};
scope.choice = 0;
scope.staffData = {};
@ -16,6 +19,13 @@
scope.routeToSaving = function (id) {
location.path('/viewsavingaccount/' + id);
};
scope.routeToGLIMLoan = function (glimAccountNumber, glimId) {
location.path('/viewglimaccount/' +scope.groupId +'/'+glimAccountNumber +'/'+glimId);
};
scope.routeToGSIMAccount = function (gsimAccountNumber) {
location.path('/viewgsimaccount/' + scope.groupId+'/'+gsimAccountNumber);
};
scope.routeToMem = function (id) {
location.path('/viewclient/' + id);
};
@ -45,6 +55,13 @@
resourceFactory.groupNotesResource.getAllNotes({groupId: routeParams.id}, function (data) {
scope.groupNotes = data;
});
resourceFactory.groupGLIMAccountResource.get({groupId: routeParams.id}, function (data) {
scope.groupGLIMAccounts = data;
});
resourceFactory.groupGSIMAccountResource.get({groupId: routeParams.id}, function (data) {
scope.groupGSIMAccounts = data;
});
scope.delrole = function (id) {
resourceFactory.groupResource.save({groupId: routeParams.id, command: 'unassignRole', roleId: id}, {}, function (data) {
resourceFactory.groupResource.get({groupId: routeParams.id}, function (data) {

View File

@ -6,6 +6,8 @@
scope.formData = {};
scope.isCollapsed = true;
scope.loanId = routeParams.id;
scope.first = {};
scope.first.date = new Date();
resourceFactory.loanChargeTemplateResource.get({loanId: scope.loanId}, function (data) {
scope.charges = data.chargeOptions;
});
@ -27,10 +29,9 @@
scope.submit = function () {
this.formData.locale = scope.optlang.code;
this.formData.dateFormat = scope.df;
if (this.formData.dueDate) {
this.formData.dueDate = dateFilter(this.formData.dueDate, scope.df);
if(scope.chargeData.chargeTimeType.id==2){
this.formData.dueDate = dateFilter(this.first.date, scope.df);
}
;
resourceFactory.loanResource.save({resourceType: 'charges', loanId: scope.loanId}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});

View File

@ -0,0 +1,34 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreditBureauSummaryController: function (scope, rootScope, http, API_VERSION, resourceFactory, routeParams,location) {
scope.lpId=routeParams.productId;
resourceFactory.creditBureauByLoanProductId.get({loanProductId: scope.lpId}, function (data) {
scope.creditBureauByLoanProduct = data;
scope.cbId = scope.creditBureauByLoanProduct.organisationCreditBureauId;
scope.cbname = scope.creditBureauByLoanProduct.alias;
scope.lpId = scope.creditBureauByLoanProduct.loanProductId;
scope.lpName = scope.creditBureauByLoanProduct.loanProductName;
scope.cbactive = scope.creditBureauByLoanProduct.isActive;
scope.cbsummary = scope.creditBureauByLoanProduct.creditbureauSummary;
});
scope.routeToCreditBureau=function() {
if ( scope.cbsummary == '1 - THITSAWORKS - Myanmar' && scope.cbactive == true) {
location.path('/creditreport/thitsaworkCreditbureau/'+scope.lpId+'/'+scope.cbId);
}
};
scope.cancel=function() {
location.path('/viewloanaccount/'+scope.lpId);
};
}
});
mifosX.ng.application.controller('CreditBureauSummaryController', ['$scope', '$rootScope','$http','API_VERSION', 'ResourceFactory','$routeParams', '$location', mifosX.controllers.CreditBureauSummaryController]).run(function ($log) {
$log.info("CreditBureauSummaryController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,76 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreditReportFetchThitsaWorksController: function (scope,rootScope, http,API_VERSION,resourceFactory,dateFilter, routeParams, location) {
scope.formData = {};
scope.creditbureaus=[];
scope.loanproductId=routeParams.lpId;
scope.creditbureauidvalue=routeParams.cbId;
scope.cancel={};
scope.localcountry={};
scope.nrc = null;
scope.accountid=rootScope.id;
scope.map={};
scope.loanproductId=routeParams.productId;
scope.thitnrc='';
var creditReportJson = '';
scope.getcreditreport=function()
{ scope.thitsaworknrc= scope.thitnrc;
resourceFactory.creditBureauGeneric.post({loanProductID:scope.loanproductId, NRC:scope.thitsaworknrc,creditBureauID:scope.creditbureauidvalue},function (data) {
scope.creditchecks=data.creditBureauReportData;
creditReportJson = JSON.stringify(scope.creditchecks);
scope.creditReportData =angular.fromJson(scope.creditchecks);
var borrowerInfo = scope.creditchecks.borrowerInfo;
scope.info = borrowerInfo;
var Info =angular.fromJson(borrowerInfo);
scope.borrowerInfo = Info;
scope.NRC = scope.borrowerInfo.NRC;
scope.Name = scope.borrowerInfo.Name;
scope.Dob = scope.borrowerInfo.DOB;
scope.Gender = scope.borrowerInfo.Gender;
scope.Address = scope.borrowerInfo.Address;
scope.FatherName = scope.borrowerInfo.FatherName;
const creditscore = scope.creditchecks.creditScore;
var score =angular.fromJson(creditscore);
scope.creditScores = score;
const activeLoans = scope.creditchecks.openAccounts;
const active = activeLoans.toString().replace(/^\|\$/,'');
const activeLo = '['+ active + ']';
scope.openAccounts = angular.fromJson(activeLo);
const paidLoans = scope.creditchecks.closedAccounts;
const paid = paidLoans.toString().replace(/^\|\$/,'');
const paidLo = '['+ paid + ']';
scope.closedAccounts = angular.fromJson(paidLo);
resourceFactory.saveCreditReport.post({apiRequestBodyAsJson: creditReportJson, creditBureauId: scope.creditbureauidvalue, nationalId : scope.thitsaworknrc},function (data) {
});
});
};
resourceFactory.creditBureauByLoanProductId.get({loanProductId: scope.loanproductId}, function (data) {
scope.creditBureauByLoanProduct = data;
scope.cbId = scope.creditBureauByLoanProduct.organisationCreditBureauId;
scope.lpId = scope.creditBureauByLoanProduct.loanProductId;
});
scope.cancel = function () {
location.path("/creditBureauSummary/"+routeParams.id+"/"+scope.lpId);
};
}
});
mifosX.ng.application.controller('CreditReportFetchThitsaWorksController', ['$scope' ,'$rootScope','$http','API_VERSION', 'ResourceFactory', 'dateFilter','$routeParams', '$location', mifosX.controllers.CreditReportFetchThitsaWorksController]).run(function ($log) {
$log.info("CreditReportFetchThitsaWorksController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,34 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreditReportUploadThitsaWorksController: function (scope, $rootScope, http, API_VERSION, resourceFactory, dateFilter, routeParams, location, Upload) {
scope.formData = {};
scope.clientId = routeParams.clientId;
scope.displayName = '';
scope.clientLastName = '';
scope.onFileSelect = function (files) {
scope.formData.file = files[0];
};
scope.upload = function () {
Upload.upload({
url: $rootScope.hostUrl + API_VERSION + '/creditBureauIntegration/addCreditReport?creditBureauId=1', //CreditBureauId 1 is assigned for THITSAWORKS
data: {file: scope.formData.file},
}).then(function (data) {
if (!scope.$$phase) {
scope.$apply();
}
});
};
resourceFactory.clientResource.getAllClients({clientId : scope.clientId}, function (data) {
scope.displayName = data.displayName;
});
}
});
mifosX.ng.application.controller('CreditReportUploadThitsaWorksController', ['$scope', '$rootScope','$http','API_VERSION', 'ResourceFactory', 'dateFilter','$routeParams', '$location', 'Upload', mifosX.controllers.CreditReportUploadThitsaWorksController]).run(function ($log) {
$log.info("CreditReportUploadThitsaWorksController initialized");
});
}(mifosX.controllers || {}));

View File

@ -9,6 +9,7 @@
scope.collaterals = [];
scope.restrictDate = new Date();
scope.date = {};
scope.rateFlag = false;
resourceFactory.loanResource.get({loanId: routeParams.id, template: true, associations: 'charges,collateral,meeting,multiDisburseDetails',staffInSelectedOfficeOnly:true}, function (data) {
scope.loanaccountinfo = data;
@ -44,13 +45,18 @@
scope.formData.externalId = data.externalId;
//update collaterals
if (scope.loanaccountinfo.collateral) {
for (var i in scope.loanaccountinfo.collateral) {
scope.collaterals.push({type: scope.loanaccountinfo.collateral[i].type.id, name: scope.loanaccountinfo.collateral[i].type.name, value: scope.loanaccountinfo.collateral[i].value, description: scope.loanaccountinfo.collateral[i].description});
resourceFactory.clientcollateralTemplateResource.getAllCollaterals({clientId: scope.clientId}, function(data) {
scope.collateralsData = data;
if (scope.loanaccountinfo.collateral) {
for (var i in scope.loanaccountinfo.collateral) {
scope.collateralsData = scope.collateralsData.filter((x) => x.collateralId !== scope.loanaccountinfo.collateral[i].clientCollateralId);
}
}
}
});
scope.previewClientLoanAccInfo();
scope.ratesEnabled= scope.loanaccountinfo.isRatesEnabled;
});
@ -68,7 +74,6 @@
resourceFactory.loanResource.get(inparams, function (data) {
scope.loanaccountinfo = data;
scope.collaterals = [];
scope.previewClientLoanAccInfo();
});
@ -77,6 +82,27 @@
});
}
scope.collateralAddedDataArray = [];
scope.addCollateral = function () {
scope.collateralAddedDataArray.push(scope.collateralsData.filter((collateral) => scope.collateralFormData.collateralId == collateral.collateralId)[0]);
scope.collateralsData = scope.collateralsData.filter((collateral) => scope.collateralFormData.collateralId != collateral.collateralId);
scope.collaterals.push({collateralId: scope.collateralFormData.collateralId, quantity: scope.collateralFormData.quantity, total: scope.collateralFormData.total, totalCollateral: scope.collateralFormData.totalCollateral});
};
scope.updateValues = function() {
scope.collateralObject = scope.collateralsData.filter((collateral) => collateral.collateralId == scope.collateralFormData.collateralId)[0];
scope.collateralFormData.total = scope.collateralFormData.quantity * scope.collateralObject.basePrice;
scope.collateralFormData.totalCollateral = scope.collateralFormData.total * scope.collateralObject.pctToBase / 100.0;
}
scope.deleteCollateral = function (index) {
scope.collateralId = scope.collaterals[index].collateralId;
scope.collateralObject = scope.collateralAddedDataArray.filter((collateral) => collateral.collateralId == scope.collateralId)[0];
scope.collateralsData.push(scope.collateralObject);
scope.collaterals.splice(index, 1);
};
scope.previewClientLoanAccInfo = function () {
scope.previewRepayment = false;
for (var i in scope.loanaccountinfo.charges) {
@ -130,6 +156,7 @@
scope.formData.interestRatePerPeriod = scope.loanaccountinfo.interestRatePerPeriod;
scope.formData.interestRateFrequencyType = scope.loanaccountinfo.interestRateFrequencyType.id;
scope.formData.amortizationType = scope.loanaccountinfo.amortizationType.id;
scope.formData.fixedPrincipalPercentagePerInstallment = scope.loanaccountinfo.fixedPrincipalPercentagePerInstallment;
scope.formData.interestType = scope.loanaccountinfo.interestType.id;
scope.formData.isEqualAmortization = scope.loanaccountinfo.isEqualAmortization;
scope.formData.interestCalculationPeriodType = scope.loanaccountinfo.interestCalculationPeriodType.id;
@ -162,7 +189,66 @@
}
scope.formData.interestRateDifferential = scope.loanaccountinfo.interestRateDifferential ;
scope.formData.isFloatingInterestRate = scope.loanaccountinfo.isFloatingInterestRate ;
}
//Load Rates information
scope.formData.rates = scope.loanaccountinfo.rates;
scope.firstChange = false;
scope.rateOptions = scope.loanaccountinfo.product.rates.filter(function(rate){
var exist = false;
scope.formData.rates.forEach(function(addedRate){
if(rate.id === addedRate.id){
exist = true;
}
});
return !exist;
});
if (scope.formData.rates && scope.formData.rates.length>0){
scope.rateFlag=true;
}else{
scope.rateFlag=false;
}
};
//Rate
scope.rateSelected = function(currentRate){
if(currentRate && !scope.checkIfRateAlreadyExist(currentRate)){
scope.rateFlag=true;
scope.formData.rates.push(currentRate);
scope.rateOptions.splice(scope.rateOptions.indexOf(currentRate),1);
scope.currentRate = '';
currentRate = '';
scope.calculateRates();
}
};
scope.checkIfRateAlreadyExist = function(currentRate){
var exist = false;
scope.formData.rates.forEach(function(rate){
if(rate.id === currentRate.id){
exist = true;
}
});
return exist;
};
scope.calculateRates = function(){
var total = 0;
scope.formData.rates.forEach(function(rate){
total += rate.percentage;
});
if (total===0){
scope.rateFlag=false;
total=undefined;
}
scope.formData.interestRatePerPeriod = total;
};
scope.deleteRate = function (index){
scope.rateOptions.push(scope.formData.rates[index]);
scope.formData.rates.splice(index,1);
scope.calculateRates();
};
scope.addCharge = function () {
if (scope.chargeFormData.chargeId) {
@ -201,19 +287,6 @@
}
};
scope.addCollateral = function () {
if (scope.collateralFormData.collateralIdTemplate && scope.collateralFormData.collateralValueTemplate) {
scope.collaterals.push({type: scope.collateralFormData.collateralIdTemplate.id, name: scope.collateralFormData.collateralIdTemplate.name, value: scope.collateralFormData.collateralValueTemplate, description: scope.collateralFormData.collateralDescriptionTemplate});
scope.collateralFormData.collateralIdTemplate = undefined;
scope.collateralFormData.collateralValueTemplate = undefined;
scope.collateralFormData.collateralDescriptionTemplate = undefined;
}
};
scope.deleteCollateral = function (index) {
scope.collaterals.splice(index, 1);
};
scope.previewRepayments = function () {
// Make sure charges and collaterals are empty before initializing.
delete scope.formData.charges;
@ -232,14 +305,6 @@
}
}
if (scope.collaterals.length > 0) {
scope.formData.collateral = [];
for (var i in scope.collaterals) {
scope.formData.collateral.push({type: scope.collaterals[i].type, value: scope.collaterals[i].value, description: scope.collaterals[i].description});
}
}
if (this.formData.syncRepaymentsWithMeeting) {
if(scope.loanaccountinfo.calendarOptions){
this.formData.calendarId = scope.loanaccountinfo.calendarOptions[0].id;
@ -288,12 +353,17 @@
}
}
scope.formData.collateral = [];
if (scope.collaterals.length > 0) {
scope.formData.collateral = [];
for (var i in scope.collaterals) {
scope.formData.collateral.push({type: scope.collaterals[i].type, value: scope.collaterals[i].value, description: scope.collaterals[i].description});
scope.formData.collateral.push({clientCollateralId: scope.collaterals[i].collateralId, quantity: scope.collaterals[i].quantity * 1.0});
}
if (scope.loanaccountinfo.collateral) {
for (var i in scope.loanaccountinfo.collateral) {
scope.collateralsData = scope.collateralsData.filter((x) => x.collateralId !== scope.loanaccountinfo.collateral[i].clientCollateralId);
scope.formData.collateral.push({clientCollateralId: scope.loanaccountinfo.collateral[i].clientCollateralId, id: scope.loanaccountinfo.collateral[i].id, quantity: scope.loanaccountinfo.collateral[i].quantity});
}
}
;
}
if (this.formData.syncRepaymentsWithMeeting) {

View File

@ -0,0 +1,798 @@
(function (module) {
mifosX.controllers = _.extend(module, {
GLIMLoanAccountActionsController: function (scope, resourceFactory, location, routeParams, dateFilter) {
scope.action = routeParams.action || "";
scope.accountId = routeParams.id; //childloanId
scope.glimId=routeParams.glimId;
scope.groupId=routeParams.groupId;
scope.formData = {};
scope.showDateField = true;
scope.showNoteField = true;
scope.showAmountField = false;
scope.restrictDate = new Date();
// Transaction UI Related
scope.isTransaction = false;
scope.showPaymentDetails = false;
scope.paymentTypes = [];
scope.expectedDisbursementDate = [];
scope.disbursementDetails = [];
scope.showTrancheAmountTotal = 0;
scope.processDate = false;
var prevLoanAmount;
switch (scope.action) {
case "approve":
scope.taskPermissionName = 'APPROVE_LOAN';
resourceFactory.loanTemplateResource.get({loanId: scope.accountId, templateType: 'approval'}, function (data) {
scope.title = 'label.heading.approveloanaccount';
scope.labelName = 'label.input.approvedondate';
scope.modelName = 'approvedOnDate';
scope.formData[scope.modelName] = new Date();
scope.showApprovalAmount = true;
scope.formData.approvedLoanAmount = data.approvalAmount;
});
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'multiDisburseDetails'}, function (data) {
scope.expectedDisbursementDate = new Date(data.timeline.expectedDisbursementDate);
if(data.disbursementDetails != ""){
scope.disbursementDetails = data.disbursementDetails;
scope.approveTranches = true;
}
for(var i in data.disbursementDetails){
scope.disbursementDetails[i].expectedDisbursementDate = new Date(data.disbursementDetails[i].expectedDisbursementDate);
scope.disbursementDetails[i].principal = data.disbursementDetails[i].principal;
scope.showTrancheAmountTotal += Number(data.disbursementDetails[i].principal) ;
}
});
break;
case "glimApprove":
scope.taskPermissionName = 'APPROVE_LOAN';
scope.showApprovalTable=true;
scope.approvalArray=[];
scope.glimAccounts=[];
scope.totalLoanAmount=0;
scope.approvalFormData=[];
resourceFactory.loanTemplateResource.get({loanId: scope.accountId, templateType: 'approval'}, function (data) {
scope.title = 'label.heading.approveloanaccount';
scope.labelName = 'label.input.approvedondate';
scope.modelName = 'approvedOnDate';
scope.formData[scope.modelName] = new Date();
scope.showApprovalAmount = false;
scope.formData.approvedLoanAmount = data.approvalAmount;
});
// start of glim
resourceFactory.glimLoanTemplate.get({glimId: scope.glimId}, function (data) {
scope.glimAccounts = data;
if(scope.approvalArray.length!=0)
{
scope.approvalArray=[];
}
for(i=0;i<scope.glimAccounts.length;i++)
{
var temp={};
temp.parentAccountNo=data[i].parentAccountNo;
temp.clientName=data[i].clientName;
temp.childLoanId=data[i].childLoanId;
temp.childLoanAccountNo=data[i].childLoanAccountNo;
temp.approvedLoanAmount=parseFloat(data[i].childPrincipalAmount);
scope.totalLoanAmount+=parseFloat(data[i].childPrincipalAmount);
scope.approvalArray.push(temp);
}
});
// end of glim
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'multiDisburseDetails'}, function (data) {
scope.expectedDisbursementDate = new Date(data.timeline.expectedDisbursementDate);
if(data.disbursementDetails != ""){
scope.disbursementDetails = data.disbursementDetails;
scope.approveTranches = true;
}
for(var i in data.disbursementDetails){
scope.disbursementDetails[i].expectedDisbursementDate = new Date(data.disbursementDetails[i].expectedDisbursementDate);
scope.disbursementDetails[i].principal = data.disbursementDetails[i].principal;
scope.showTrancheAmountTotal += Number(data.disbursementDetails[i].principal) ;
}
});
break;
case "reject":
scope.title = 'label.heading.rejectloanaccount';
scope.labelName = 'label.input.rejectedondate';
scope.modelName = 'rejectedOnDate';
scope.formData[scope.modelName] = new Date();
scope.taskPermissionName = 'REJECT_LOAN';
break;
case "withdrawnByApplicant":
scope.title = 'label.heading.withdrawloanaccount';
scope.labelName = 'label.input.withdrawnondate';
scope.modelName = 'withdrawnOnDate';
scope.formData[scope.modelName] = new Date();
scope.taskPermissionName = 'WITHDRAW_LOAN';
break;
case "undoapproval":
scope.title = 'label.heading.undoapproveloanaccount';
scope.showDateField = false;
scope.taskPermissionName = 'APPROVALUNDO_LOAN';
break;
case "undodisbursal":
scope.title = 'label.heading.undodisburseloanaccount';
scope.showDateField = false;
scope.taskPermissionName = 'DISBURSALUNDO_LOAN';
break;
case "disburse":
scope.modelName = 'actualDisbursementDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'disburse'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date();
if (data.fixedEmiAmount) {
scope.formData.fixedEmiAmount = data.fixedEmiAmount;
scope.showEMIAmountField = true;
}
});
scope.title = 'label.heading.disburseloanaccount';
scope.labelName = 'label.input.disbursedondate';
scope.isTransaction = true;
scope.showAmountField = true;
scope.taskPermissionName = 'DISBURSE_LOAN';
break;
case "glimDisburse":
scope.modelName = 'actualDisbursementDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'disburse'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
// scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date();
if (data.fixedEmiAmount) {
scope.formData.fixedEmiAmount = data.fixedEmiAmount;
scope.showEMIAmountField = true;
}
});
// start of glim
scope.approvalArray=[];
scope.glimAccounts=[];
scope.totalLoanAmount=0;
scope.showDisbursalTable=true;
resourceFactory.glimLoanTemplate.get({glimId: scope.glimId}, function (data) {
scope.glimAccounts = data;
if(scope.approvalArray.length!=0)
{
scope.approvalArray=[];
}
for(i=0;i<scope.glimAccounts.length;i++)
{
var temp={};
temp.parentAccountNo=data[i].parentAccountNo;
temp.clientName=data[i].clientName;
temp.childLoanId=data[i].childLoanId;
temp.childLoanAccountNo=data[i].childLoanAccountNo;
temp.approvedLoanAmount=parseFloat(data[i].childPrincipalAmount);
scope.totalLoanAmount+=parseFloat(data[i].childPrincipalAmount);
scope.approvalArray.push(temp);
}
});
// end of glim
scope.title = 'label.heading.disburseloanaccount';
scope.labelName = 'label.input.disbursedondate';
scope.isTransaction = false;
scope.showAmountField = false;
scope.taskPermissionName = 'DISBURSE_LOAN';
break;
case "disbursetosavings":
scope.modelName = 'actualDisbursementDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'disburseToSavings'}, function (data) {
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date();
if (data.fixedEmiAmount) {
scope.formData.fixedEmiAmount = data.fixedEmiAmount;
scope.showEMIAmountField = true;
}
});
scope.title = 'label.heading.disburseloanaccount';
scope.labelName = 'label.input.disbursedondate';
scope.isTransaction = false;
scope.showAmountField = true;
scope.taskPermissionName = 'DISBURSETOSAVINGS_LOAN';
break;
case "repayment":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'repayment'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date(data.date) || new Date();
if(data.penaltyChargesPortion>0){
scope.showPenaltyPortionDisplay = true;
}
});
scope.title = 'label.heading.loanrepayments';
scope.labelName = 'label.input.transactiondate';
scope.isTransaction = true;
scope.showAmountField = true;
scope.taskPermissionName = 'REPAYMENT_LOAN';
break;
case "glimrepayment":
scope.formData.formDataArray=[];
scope.glimAccounts=[];
scope.repaymentArray=[];
scope.glimRepaymentAccounts=[];
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'repayment'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
// scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date(data.date) || new Date();
if(data.penaltyChargesPortion>0){
scope.showPenaltyPortionDisplay = true;
}
});
//scope.repaymentArray=new Array();
resourceFactory.glimLoanTemplate.get({glimId: scope.glimId}, function (data) {
scope.glimRepaymentAccounts = data;
if(scope.repaymentArray.length!=0)
{
scope.repaymentArray=[];
}
for(i=0;i<scope.glimRepaymentAccounts.length;i++)
{
var temp={};
temp.parentAccountNo=data[i].parentAccountNo;
temp.clientName=data[i].clientName;
temp.childLoanId=data[i].childLoanId;
temp.childLoanAccountNo=data[i].childLoanAccountNo;
resourceFactory.loanTrxnsTemplateResource.get({loanId: data[i].childLoanId, command: 'repayment'}, function (data1) {
if(data1.amount)
{
temp.transactionAmount=data1.amount;
}
else {
temp.transactionAmount=0;
}
//console.log(temp.transactionAmount);
});
scope.repaymentArray.push(temp);
}
});
scope.title = 'label.heading.loanrepayments';
scope.labelName = 'label.input.transactiondate';
scope.isTransaction = true;
scope.showAmountField = false;
scope.taskPermissionName = 'REPAYMENT_LOAN';
scope.showRepaymentTable=true;
break;
case "prepayloan":
scope.modelName = 'transactionDate';
scope.formData.transactionDate = new Date();
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'prepayLoan'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
scope.formData.transactionAmount = data.amount;
if(data.penaltyChargesPortion>0){
scope.showPenaltyPortionDisplay = true;
}
scope.principalPortion = data.principalPortion;
scope.interestPortion = data.interestPortion;
scope.processDate = true;
});
scope.title = 'label.heading.prepayloan';
scope.labelName = 'label.input.transactiondate';
scope.isTransaction = true;
scope.showAmountField = true;
scope.taskPermissionName = 'REPAYMENT_LOAN';
scope.action = 'repayment';
break;
case "waiveinterest":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'waiveinterest'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date(data.date) || new Date();
});
scope.title = 'label.heading.loanwaiveinterest';
scope.labelName = 'label.input.interestwaivedon';
scope.showAmountField = true;
scope.taskPermissionName = 'WAIVEINTERESTPORTION_LOAN';
break;
case "writeoff":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'writeoff'}, function (data) {
scope.formData[scope.modelName] = new Date(data.date) || new Date();
scope.writeOffAmount = data.amount;
scope.isLoanWriteOff = true;
});
scope.title = 'label.heading.writeoffloanaccount';
scope.labelName = 'label.input.writeoffondate';
scope.taskPermissionName = 'WRITEOFF_LOAN';
break;
case "close-rescheduled":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'close-rescheduled'}, function (data) {
scope.formData[scope.modelName] = new Date(data.date) || new Date();
});
scope.title = 'label.heading.closeloanaccountasrescheduled';
scope.labelName = 'label.input.closedondate';
scope.taskPermissionName = 'CLOSEASRESCHEDULED_LOAN';
break;
case "close":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'close'}, function (data) {
scope.formData[scope.modelName] = new Date(data.date) || new Date();
});
scope.title = 'label.heading.closeloanaccount';
scope.labelName = 'label.input.closedondate';
scope.taskPermissionName = 'CLOSE_LOAN';
break;
case "unassignloanofficer":
scope.title = 'label.heading.unassignloanofficer';
scope.labelName = 'label.input.loanofficerunassigneddate';
scope.modelName = 'unassignedDate';
scope.showNoteField = false;
scope.formData[scope.modelName] = new Date();
scope.taskPermissionName = 'REMOVELOANOFFICER_LOAN';
break;
case "modifytransaction":
resourceFactory.loanTrxnsResource.get({loanId: scope.accountId, transactionId: routeParams.transactionId, template: 'true'},
function (data) {
scope.title = 'label.heading.editloanaccounttransaction';
scope.labelName = 'label.input.transactiondate';
scope.modelName = 'transactionDate';
scope.paymentTypes = data.paymentTypeOptions || [];
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date(data.date) || new Date();
if (data.paymentDetailData) {
if (data.paymentDetailData.paymentType) {
scope.formData.paymentTypeId = data.paymentDetailData.paymentType.id;
}
scope.formData.accountNumber = data.paymentDetailData.accountNumber;
scope.formData.checkNumber = data.paymentDetailData.checkNumber;
scope.formData.routingCode = data.paymentDetailData.routingCode;
scope.formData.receiptNumber = data.paymentDetailData.receiptNumber;
scope.formData.bankNumber = data.paymentDetailData.bankNumber;
}
});
scope.showDateField = true;
scope.showNoteField = false;
scope.showAmountField = true;
scope.isTransaction = true;
scope.showPaymentDetails = false;
scope.taskPermissionName = 'ADJUST_LOAN';
break;
case "deleteloancharge":
scope.showDelete = true;
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'DELETE_LOANCHARGE';
break;
case "recoverguarantee":
scope.showDelete = true;
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'RECOVERGUARANTEES_LOAN';
break;
case "waivecharge":
resourceFactory.LoanAccountResource.get({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId}, function (data) {
if (data.chargeTimeType.value !== "Specified due date" && data.installmentChargeData) {
scope.installmentCharges = data.installmentChargeData;
scope.formData.installmentNumber = data.installmentChargeData[0].installmentNumber;
scope.installmentchargeField = true;
} else {
scope.installmentchargeField = false;
scope.showwaiveforspecicficduedate = true;
}
});
scope.title = 'label.heading.waiveloancharge';
scope.labelName = 'label.input.installment';
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'WAIVE_LOANCHARGE';
break;
case "paycharge":
resourceFactory.LoanAccountResource.get({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId, command: 'pay'}, function (data) {
if (data.dueDate) {
scope.formData.transactionDate = new Date(data.dueDate);
}
if (data.chargeTimeType.value === "Instalment Fee" && data.installmentChargeData) {
scope.installmentCharges = data.installmentChargeData;
scope.formData.installmentNumber = data.installmentChargeData[0].installmentNumber;
scope.installmentchargeField = true;
}
});
scope.title = 'label.heading.payloancharge';
scope.showNoteField = false;
scope.showDateField = false;
scope.paymentDatefield = true;
scope.taskPermissionName = 'PAY_LOANCHARGE';
break;
case "editcharge":
resourceFactory.LoanAccountResource.get({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId}, function (data) {
if (data.amountOrPercentage) {
scope.showEditChargeAmount = true;
scope.formData.amount = data.amountOrPercentage;
if (data.dueDate) {
scope.formData.dueDate = new Date(data.dueDate);
scope.showEditChargeDueDate = true;
}
}
});
scope.title = 'label.heading.editcharge';
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'UPDATE_LOANCHARGE';
break;
case "editdisbursedate":
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'multiDisburseDetails'}, function (data) {
scope.showEditDisburseDate = true;
scope.formData.approvedLoanAmount = data.approvedPrincipal;
scope.expectedDisbursementDate = new Date(data.timeline.expectedDisbursementDate);
for(var i in data.disbursementDetails){
if(routeParams.disbursementId == data.disbursementDetails[i].id){
scope.formData.updatedExpectedDisbursementDate = new Date(data.disbursementDetails[i].expectedDisbursementDate);
scope.formData.updatedPrincipal = data.disbursementDetails[i].principal;
scope.id = data.disbursementDetails[i].id;
}
}
});
scope.title = 'label.heading.editdisbursedate';
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'UPDATE_DISBURSEMENTDETAIL';
break;
case "recoverypayment":
scope.modelName = 'transactionDate';
resourceFactory.loanTrxnsTemplateResource.get({loanId: scope.accountId, command: 'recoverypayment'}, function (data) {
scope.paymentTypes = data.paymentTypeOptions;
if (data.paymentTypeOptions.length > 0) {
scope.formData.paymentTypeId = data.paymentTypeOptions[0].id;
}
scope.formData.transactionAmount = data.amount;
scope.formData[scope.modelName] = new Date();
});
scope.title = 'label.heading.recoverypayment';
scope.labelName = 'label.input.transactiondate';
scope.isTransaction = true;
scope.showAmountField = true;
scope.taskPermissionName = 'RECOVERYPAYMENT_LOAN';
break;
case "adddisbursedetails":
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'multiDisburseDetails'}, function (data) {
scope.addDisburseDetails = true;
scope.formData.approvedLoanAmount = data.approvedPrincipal;
scope.expectedDisbursementDate = new Date(data.timeline.expectedDisbursementDate);
if(data.disbursementDetails != ""){
scope.disbursementDetails = data.disbursementDetails;
}
if (scope.disbursementDetails.length > 0) {
for (var i in scope.disbursementDetails) {
scope.disbursementDetails[i].expectedDisbursementDate = new Date(scope.disbursementDetails[i].expectedDisbursementDate);
}
}
scope.disbursementDetails.push({
});
});
scope.title = 'label.heading.adddisbursedetails';
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'UPDATE_DISBURSEMENTDETAIL';
break;
case "deletedisbursedetails":
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'multiDisburseDetails'}, function (data) {
scope.deleteDisburseDetails = true;
scope.formData.approvedLoanAmount = data.approvedPrincipal;
scope.expectedDisbursementDate = new Date(data.timeline.expectedDisbursementDate);
if(data.disbursementDetails != ""){
scope.disbursementDetails = data.disbursementDetails;
}
if (scope.disbursementDetails.length > 0) {
for (var i in scope.disbursementDetails) {
scope.disbursementDetails[i].expectedDisbursementDate = new Date(scope.disbursementDetails[i].expectedDisbursementDate);
}
}
});
scope.title = 'label.heading.deletedisbursedetails';
scope.showNoteField = false;
scope.showDateField = false;
scope.taskPermissionName = 'UPDATE_DISBURSEMENTDETAIL';
break;
}
scope.cancel = function () {
location.path('/viewglimaccount/' +scope.groupId+"/" +routeParams.id +"/"+routeParams.glimId);
};
scope.addTrancheAmounts = function(){
scope.showTrancheAmountTotal = 0;
for(var i in scope.disbursementDetails ){
scope.showTrancheAmountTotal += Number(scope.disbursementDetails[i].principal);
}
};
scope.deleteTranches = function (index) {
scope.disbursementDetails.splice(index, 1);
};
scope.addTranches = function () {
scope.disbursementDetails.push({
});
};
scope.submit = function () {
scope.processDate = false;
var params = {command: scope.action};
if(scope.action == "recoverguarantee"){
params.command = "recoverGuarantees";
}
if(scope.action == "approve"){
this.formData.expectedDisbursementDate = dateFilter(scope.expectedDisbursementDate, scope.df);
if(scope.disbursementDetails != null) {
this.formData.disbursementData = [];
for (var i in scope.disbursementDetails) {
this.formData.disbursementData.push({
id: scope.disbursementDetails[i].id,
principal: scope.disbursementDetails[i].principal,
expectedDisbursementDate: dateFilter(scope.disbursementDetails[i].expectedDisbursementDate, scope.df),
loanChargeId : scope.disbursementDetails[i].loanChargeId
});
}
}
if(scope.formData.approvedLoanAmount == null){
scope.formData.approvedLoanAmount = scope.showTrancheAmountTotal;
}
}
if(scope.action == "glimApprove"){
approvalFormData=[];
this.formData.approvalFormData=[];
this.formData.glimPrincipal=0;
for(var j=0;j<scope.glimAccounts.length;j++)
{
approvalFormData[j]={};
approvalFormData[j].loanId=scope.approvalArray[j].childLoanId;
approvalFormData[j].approvedOnDate=dateFilter(scope.formData['approvedOnDate'], scope.df);
approvalFormData[j].approvedLoanAmount=scope.approvalArray[j].approvedLoanAmount;
approvalFormData[j].expectedDisbursementDate=dateFilter(scope.expectedDisbursementDate, scope.df);
approvalFormData[j].locale = scope.optlang.code;
approvalFormData[j].dateFormat = scope.df;
this.formData.glimPrincipal+=parseFloat(approvalFormData[j].approvedLoanAmount);
}
this.formData.locale = scope.optlang.code;
scope.formData.approvedLoanAmount =parseFloat(this.formData.glimPrincipal);
this.formData.approvalFormData=approvalFormData;
// this.formData.expectedDisbursementDate = dateFilter(scope.expectedDisbursementDate, scope.df);
if(scope.disbursementDetails != null) {
this.formData.disbursementData = [];
for (var i in scope.disbursementDetails) {
this.formData.disbursementData.push({
id: scope.disbursementDetails[i].id,
principal: scope.disbursementDetails[i].principal,
expectedDisbursementDate: dateFilter(scope.disbursementDetails[i].expectedDisbursementDate, scope.df),
loanChargeId : scope.disbursementDetails[i].loanChargeId
});
}
}
if(scope.formData.approvedLoanAmount == null){
scope.formData.approvedLoanAmount = scope.showTrancheAmountTotal;
}
}
if (this.formData[scope.modelName]) {
this.formData[scope.modelName] = dateFilter(this.formData[scope.modelName], scope.df);
}
if (scope.action != "glimApprove" && scope.action != "undoapproval" && scope.action != "undodisbursal" || scope.action === "paycharge") {
this.formData.locale = scope.optlang.code;
this.formData.dateFormat = scope.df;
}
if (scope.action == "repayment" || scope.action == "waiveinterest" || scope.action == "writeoff" || scope.action == "close-rescheduled"
|| scope.action == "close" || scope.action == "modifytransaction" || scope.action == "recoverypayment" || scope.action == "prepayloan") {
if (scope.action == "modifytransaction") {
params.command = 'modify';
params.transactionId = routeParams.transactionId;
}
params.loanId = scope.accountId;
resourceFactory.loanTrxnsResource.save(params, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if (scope.action == "deleteloancharge") {
resourceFactory.LoanAccountResource.delete({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if (scope.action === "waivecharge") {
resourceFactory.LoanAccountResource.save({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId, 'command': 'waive'}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if (scope.action === "paycharge") {
this.formData.transactionDate = dateFilter(this.formData.transactionDate, scope.df);
resourceFactory.LoanAccountResource.save({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId, 'command': 'pay'}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if (scope.action === "editcharge") {
this.formData.dueDate = dateFilter(this.formData.dueDate, scope.df);
resourceFactory.LoanAccountResource.update({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if (scope.action === "editdisbursedate") {
this.formData.expectedDisbursementDate = dateFilter(this.formData.expectedDisbursementDate, scope.df);
for(var i in scope.disbursementDetails){
if(scope.disbursementDetails[i].id == scope.id){
scope.disbursementDetails[i].principal = scope.formData.updatedPrincipal;
scope.disbursementDetails[i].expectedDisbursementDate = dateFilter(scope.formData.updatedExpectedDisbursementDate, scope.df);
}
}
this.formData.disbursementData = [];
this.formData.updatedExpectedDisbursementDate = dateFilter(scope.formData.updatedExpectedDisbursementDate, scope.df);
this.formData.expectedDisbursementDate = dateFilter(scope.expectedDisbursementDate, scope.df);
for (var i in scope.disbursementDetails) {
this.formData.disbursementData.push({
id: scope.disbursementDetails[i].id,
principal: scope.disbursementDetails[i].principal,
expectedDisbursementDate: dateFilter(scope.disbursementDetails[i].expectedDisbursementDate, scope.df),
loanChargeId : scope.disbursementDetails[i].loanChargeId
});
}
resourceFactory.LoanEditDisburseResource.update({loanId: routeParams.id, disbursementId: routeParams.disbursementId}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
}else if(scope.action === "adddisbursedetails" || scope.action === "deletedisbursedetails") {
this.formData.disbursementData = [];
for (var i in scope.disbursementDetails) {
this.formData.disbursementData.push({
id:scope.disbursementDetails[i].id,
principal: scope.disbursementDetails[i].principal,
expectedDisbursementDate: dateFilter(scope.disbursementDetails[i].expectedDisbursementDate, scope.df),
loanChargeId : scope.disbursementDetails[i].loanChargeId
});
}
this.formData.expectedDisbursementDate = dateFilter(scope.expectedDisbursementDate, scope.df);
resourceFactory.LoanAddTranchesResource.update({loanId: routeParams.id}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
}
else if (scope.action == "deleteloancharge") {
resourceFactory.LoanAccountResource.delete({loanId: routeParams.id, resourceType: 'charges', chargeId: routeParams.chargeId}, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
} else if(scope.action == "Approve"){
this.formData.expectedDisbursementDate = dateFilter(scope.expectedDisbursementDate, scope.df);
if(scope.disbursementDetails != null) {
this.formData.disbursementData = [];
for (var i in scope.disbursementDetails) {
this.formData.disbursementData.push({
id: scope.disbursementDetails[i].id,
principal: scope.disbursementDetails[i].principal,
expectedDisbursementDate: dateFilter(scope.disbursementDetails[i].expectedDisbursementDate, scope.df),
loanChargeId : scope.disbursementDetails[i].loanChargeId
});
}
}
if(scope.formData.approvedLoanAmount == null){
scope.formData.approvedLoanAmount = scope.showTrancheAmountTotal;
}
}
else if(scope.action == "glimApprove")
{
resourceFactory.glimLoan.post({glimId: scope.glimId,command:'approve'},this.formData,function (data) {
location.path('/viewglimaccount/' +scope.groupId+"/" +routeParams.id +"/"+routeParams.glimId);
});
}
else if(scope.action == "glimDisburse"){
resourceFactory.glimLoan.post({glimId: scope.glimId,command:'disburse'},this.formData,function (data) {
location.path('/viewglimaccount/' +scope.groupId+"/" +routeParams.id +"/"+routeParams.glimId);
});
}else if(scope.action == "undoapproval"){
resourceFactory.glimLoan.post({glimId: scope.glimId,command:'undoapproval'},scope.formData,function (data) {
location.path('/viewloanaccount/' + scope.accountId);
});
}else if(scope.action == "undodisbursal"){
resourceFactory.glimLoan.post({glimId: scope.glimId,command:"undodisbursal"},scope.formData,function (data) {
location.path('/viewloanaccount/' + scope.accountId);
});
}
else if(scope.action=="glimrepayment")
{
scope.formData.formDataArray=[];
var j=0;
for(j=0;j<scope.repaymentArray.length;j++)
{
var temp1={};
temp1.paymentTypeId= scope.formData.paymentTypeId;
temp1.transactionAmount=scope.repaymentArray[j].transactionAmount
temp1.transactionDate= scope.formData['transactionDate'];
temp1.locale = scope.optlang.code;
temp1.dateFormat = scope.df;
temp1.loanId=scope.repaymentArray[j].childLoanId;
scope.formData.formDataArray.push(temp1);
}
resourceFactory.glimLoan.save({glimId: scope.glimId,command:'glimrepayment'}, this.formData, function (data) {
location.path('/viewglimaccount/' +scope.groupId+"/" +routeParams.id +"/"+routeParams.glimId);
});
}
else
{
params.glimId = scope.glimId;
resourceFactory.glimLoan.save(params, this.formData, function (data) {
location.path('/viewloanaccount/' + data.loanId);
});
}
};
scope.$watch('formData.transactionDate',function(){
scope.onDateChange();
});
scope.onDateChange = function(){
if(scope.processDate) {
var params = {};
params.locale = scope.optlang.code;
params.dateFormat = scope.df;
params.transactionDate = dateFilter(this.formData.transactionDate, scope.df);
params.loanId = scope.accountId;
params.command = 'prepayLoan';
resourceFactory.loanTrxnsTemplateResource.get(params, function (data) {
scope.formData.transactionAmount = data.amount;
if (data.penaltyChargesPortion > 0) {
scope.showPenaltyPortionDisplay = true;
}
scope.principalPortion = data.principalPortion;
scope.interestPortion = data.interestPortion;
});
}
};
}
});
mifosX.ng.application.controller('GLIMLoanAccountActionsController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter', mifosX.controllers.GLIMLoanAccountActionsController]).run(function ($log) {
$log.info("GLIMLoanAccountActionsController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,20 +1,42 @@
(function (module) {
mifosX.controllers = _.extend(module, {
GuarantorController: function (scope, resourceFactory, routeParams, location, dateFilter) {
GuarantorController: function ($q,scope, resourceFactory, routeParams, location, dateFilter) {
scope.template = {};
scope.clientview = false;
scope.temp = true;
scope.date = {};
scope.formData = {};
scope.restrictDate = new Date();
scope.clientData={};
scope.offices=[];
scope.toClients=[];
resourceFactory.clientTemplateResource.get(function(data) {
scope.offices=data.officeOptions;
scope.formData.officeId=scope.offices[0].id;
});
scope.changeOffice=function(officeId){
resourceFactory.clientTemplateResource.get({officeId:officeId},function (data) {
scope.staffs=data.staffOptions;
});
};
resourceFactory.guarantorResource.get({ loanId: routeParams.id, templateResource: 'template'}, function (data) {
scope.template = data;
scope.loanId = routeParams.id;
});
resourceFactory.clientResource.getAllClientsWithoutLimit(function (data) {
scope.clients = data.pageItems;
});
scope.clientOptions=function(value){
var deferred=$q.defer();
resourceFactory.clientResource.getAllClientsWithoutLimit({displayName:value, orderBy: 'displayName', officeId:
scope.formData.officeId,sortOrder: 'ASC'},function (data) {
deferred.resolve(data.pageItems);
});
return deferred.promise;
}
scope.viewClient = function (item) {
scope.clientview = true;
scope.client = item;
@ -68,7 +90,7 @@
};
}
});
mifosX.ng.application.controller('GuarantorController', ['$scope', 'ResourceFactory', '$routeParams', '$location', 'dateFilter', mifosX.controllers.GuarantorController]).run(function ($log) {
mifosX.ng.application.controller('GuarantorController', ['$q','$scope', 'ResourceFactory', '$routeParams', '$location', 'dateFilter', mifosX.controllers.GuarantorController]).run(function ($log) {
$log.info("GuarantorController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,387 @@
(function (module) {
mifosX.controllers = _.extend(module, {
NewGLIMAccountController: function (scope, rootScope, routeParams, resourceFactory, location, dateFilter, WizardHandler) {
scope.response = {success:[],failed:[]};
scope.group = {};
scope.clientId = routeParams.clientId;
scope.groupId = routeParams.groupId;
scope.group.selectedclients = [];
scope.group.id = routeParams.groupId;
scope.staffInSelectedOfficeOnly = true;
scope.requestIdentifier = "clientId";
scope.inparams = { resourceType: 'template', templateType: 'jlgbulk', lendingStrategy: 300 };
scope.selectedProduct = {};
scope.loanApplicationCommonData = {}; // user set common data for all the loan applications
scope.loanApplicationCommonData.submittedOnDate = new Date();
scope.loanApplicationCommonData.expectedDisbursementDate = new Date();
scope.loanApplicationCommonData.syncDisbursementWithMeeting = false;
scope.datatables = [];
scope.noOfTabs = 1;
scope.step = '-';
scope.formData = {};
scope.formDat = {};
scope.formData.datatables = [];
scope.formDat.datatables = [];
scope.tf = "HH:mm";
scope.tempDataTables = [];
scope.isAllClientSelected = false;
scope.gsimAccounts=[];
scope.gsimAccountId=0;
scope.date = {};
scope.chargeFormData = {}; //For charges
if (scope.group.id) {
scope.inparams.groupId = scope.group.id;
}
// Fetch loan products for initital product drop-down
resourceFactory.loanResource.get(scope.inparams, function (data) {
scope.products = data.productOptions;
scope.datatables = data.datatables;
if (data.clientName) {
scope.clientName = data.clientName;
}
if (data.group) {
scope.groupName = data.group.name;
}
scope.handleDatatables(scope.datatables);
});
scope.loanProductChange = function (loanProductId) {
_.isUndefined(scope.datatables) ? scope.tempDataTables = [] : scope.tempDataTables = scope.datatables;
WizardHandler.wizard().removeSteps(1, scope.tempDataTables.length);
scope.inparams.productId = loanProductId;
resourceFactory.loanResource.get(scope.inparams, function (data) {
scope.productDetails = data.product;
scope.loanaccountinfo = data;
scope.previewClientLoanAccInfo();
scope.datatables = data.datatables;
scope.handleDatatables(scope.datatables);
scope.loanOfficers = data.loanOfficerOptions;
scope.funds = data.fundOptions;
scope.loanPurposes = data.loanPurposeOptions;
scope.group.clients = data.group.clientMembers.map(function(client) {
client.principal = data.product.principal;
client.charges = data.product.charges.map(function(charge){
charge.isDeleted = false;
return _.clone(charge);});
return client;
});
});
resourceFactory.loanResource.get({resourceType: 'template', templateType: 'collateral', productId: loanProductId, fields: 'id,loanCollateralOptions'}, function (data) {
scope.collateralOptions = data.loanCollateralOptions || [];
});
}
scope.previewClientLoanAccInfo = function () {
scope.previewRepayment = false;
scope.charges = scope.loanaccountinfo.charges || [];
scope.formData.disbursementData = scope.loanaccountinfo.disbursementDetails || [];
scope.collaterals = [];
if (scope.loanaccountinfo.calendarOptions) {
scope.formData.syncRepaymentsWithMeeting = true;
scope.formData.syncDisbursementWithMeeting = true;
}
scope.multiDisburseLoan = scope.loanaccountinfo.multiDisburseLoan;
scope.formData.productId = scope.loanaccountinfo.loanProductId;
scope.formData.fundId = scope.loanaccountinfo.fundId;
scope.formData.principal = scope.loanaccountinfo.principal;
scope.formData.loanTermFrequency = scope.loanaccountinfo.termFrequency;
scope.formData.loanTermFrequencyType = scope.loanaccountinfo.termPeriodFrequencyType.id;
scope.formData.numberOfRepayments = scope.loanaccountinfo.numberOfRepayments;
scope.formData.repaymentEvery = scope.loanaccountinfo.repaymentEvery;
scope.formData.repaymentFrequencyType = scope.loanaccountinfo.repaymentFrequencyType.id;
scope.formData.interestRatePerPeriod = scope.loanaccountinfo.interestRatePerPeriod;
scope.formData.amortizationType = scope.loanaccountinfo.amortizationType.id;
scope.formData.interestType = scope.loanaccountinfo.interestType.id;
scope.formData.interestCalculationPeriodType = scope.loanaccountinfo.interestCalculationPeriodType.id;
scope.formData.allowPartialPeriodInterestCalcualtion = scope.loanaccountinfo.allowPartialPeriodInterestCalcualtion;
scope.formData.inArrearsTolerance = scope.loanaccountinfo.inArrearsTolerance;
scope.formData.graceOnPrincipalPayment = scope.loanaccountinfo.graceOnPrincipalPayment;
scope.formData.graceOnInterestPayment = scope.loanaccountinfo.graceOnInterestPayment;
scope.formData.graceOnArrearsAgeing = scope.loanaccountinfo.graceOnArrearsAgeing;
scope.formData.transactionProcessingStrategyId = scope.loanaccountinfo.transactionProcessingStrategyId;
scope.formData.graceOnInterestCharged = scope.loanaccountinfo.graceOnInterestCharged;
scope.formData.fixedEmiAmount = scope.loanaccountinfo.fixedEmiAmount;
scope.formData.maxOutstandingLoanBalance = scope.loanaccountinfo.maxOutstandingLoanBalance;
if (scope.loanaccountinfo.isInterestRecalculationEnabled && scope.loanaccountinfo.interestRecalculationData.recalculationRestFrequencyDate) {
scope.date.recalculationRestFrequencyDate = new Date(scope.loanaccountinfo.interestRecalculationData.recalculationRestFrequencyDate);
}
if (scope.loanaccountinfo.isInterestRecalculationEnabled && scope.loanaccountinfo.interestRecalculationData.recalculationCompoundingFrequencyDate) {
scope.date.recalculationCompoundingFrequencyDate = new Date(scope.loanaccountinfo.interestRecalculationData.recalculationCompoundingFrequencyDate);
}
if(scope.loanaccountinfo.isLoanProductLinkedToFloatingRate) {
scope.formData.isFloatingInterestRate = false ;
}
}
scope.addCharge = function () {
if (scope.chargeFormData.chargeId) {
resourceFactory.chargeResource.get({chargeId: this.chargeFormData.chargeId, template: 'true'}, function (data) {
data.chargeId = data.id;
scope.charges.push(data);
scope.chargeFormData.chargeId = undefined;
});
}
}
scope.deleteCharge = function (index) {
scope.charges.splice(index, 1);
}
resourceFactory.groupGSIMAccountResource.get({groupId:routeParams.groupId},function(data)
{
scope.gsimAccounts=data;
});
scope.handleDatatables = function (datatables) {
if (!_.isUndefined(datatables) && datatables.length > 0) {
scope.formData.datatables = [];
scope.formDat.datatables = [];
scope.noOfTabs = datatables.length + 1;
angular.forEach(datatables, function (datatable, index) {
scope.updateColumnHeaders(datatable.columnHeaderData);
angular.forEach(datatable.columnHeaderData, function (colHeader, i) {
if (_.isEmpty(scope.formDat.datatables[index])) {
scope.formDat.datatables[index] = {data: {}};
}
if (_.isEmpty(scope.formData.datatables[index])) {
scope.formData.datatables[index] = {
registeredTableName: datatable.registeredTableName,
data: {locale: scope.optlang.code}
};
}
if (datatable.columnHeaderData[i].columnDisplayType == 'DATETIME') {
scope.formDat.datatables[index].data[datatable.columnHeaderData[i].columnName] = {};
}
});
});
}
};
scope.updateColumnHeaders = function(columnHeaderData) {
var colName = columnHeaderData[0].columnName;
if (colName == 'id') {
columnHeaderData.splice(0, 1);
}
colName = columnHeaderData[0].columnName;
if (colName == 'client_id' || colName == 'office_id' || colName == 'group_id' || colName == 'center_id' || colName == 'loan_id' || colName == 'savings_account_id') {
columnHeaderData.splice(0, 1);
}
};
//return input type
scope.fieldType = function (type) {
var fieldType = "";
if (type) {
if (type == 'CODELOOKUP' || type == 'CODEVALUE') {
fieldType = 'SELECT';
} else if (type == 'DATE') {
fieldType = 'DATE';
} else if (type == 'DATETIME') {
fieldType = 'DATETIME';
} else if (type == 'BOOLEAN') {
fieldType = 'BOOLEAN';
} else {
fieldType = 'TEXT';
}
}
return fieldType;
};
scope.checkerInboxAllCheckBoxesClicked = function() {
scope.isAllClientSelected = !scope.isAllClientSelected;
if(!angular.isUndefined(scope.group.clients)) {
for (var i in scope.group.clients) {
scope.group.clients[i].isSelected = scope.isAllClientSelected;
}
}
}
scope.checkerInboxAllCheckBoxesMet = function() {
if(!angular.isUndefined(scope.group.clients)) {
var count = 0;
for (var i in scope.group.clients) {
if(scope.group.clients[i].isSelected){
count++;
}
}
scope.isAllClientSelected = (scope.group.clients.length==count);
return scope.isAllClientSelected;
}
}
scope.submit = function () {
if (!_.isUndefined(scope.datatables) && scope.datatables.length > 0) {
angular.forEach(scope.datatables, function (datatable, index) {
scope.columnHeaders = datatable.columnHeaderData;
angular.forEach(scope.columnHeaders, function (colHeader, i) {
scope.dateFormat = scope.df + " " + scope.tf
if (scope.columnHeaders[i].columnDisplayType == 'DATE') {
if (!_.isUndefined(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName])) {
scope.formData.datatables[index].data[scope.columnHeaders[i].columnName] = dateFilter(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName],
scope.dateFormat);
scope.formData.datatables[index].data.dateFormat = scope.dateFormat;
}
} else if (scope.columnHeaders[i].columnDisplayType == 'DATETIME') {
if (!_.isUndefined(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName].date) && !_.isUndefined(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName].time)) {
scope.formData.datatables[index].data[scope.columnHeaders[i].columnName] = dateFilter(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName].date, scope.df)
+ " " + dateFilter(scope.formDat.datatables[index].data[scope.columnHeaders[i].columnName].time, scope.tf);
scope.formData.datatables[index].data.dateFormat = scope.dateFormat;
}
}
});
});
} else {
delete scope.formData.datatables;
}
this.batchRequests = [];
var totalLoan=0;
for (var i in scope.group.clients) {
if( scope.group.clients[i].isSelected ){
totalLoan+=parseFloat(scope.group.clients[i].principal);
}
}
var loanApp={};
loanApp.charges=[];
if (scope.charges.length > 0) {
for (var i in scope.charges) {
loanApp.charges.push({ chargeId: scope.charges[i].chargeId, amount: scope.charges[i].amount, dueDate: dateFilter(scope.charges[i].dueDate, scope.df) });
}
}
console.log("gsim id"+scope.formData.gsimAccountId);
var child=0;
var reqFirstDate = dateFilter(scope.date.first, scope.df);
var reqSecondDate = dateFilter(scope.date.second, scope.df);
var reqThirdDate = dateFilter(scope.date.third, scope.df);
var reqFourthDate = dateFilter(scope.date.fourth, scope.df);
var reqFifthDate = dateFilter(scope.date.fifth, scope.df);
var applicationCount=0;
// count number of application
for (var i in scope.group.clients) {
if (scope.group.clients[i].isSelected) {
applicationCount=applicationCount+1;
}
}
var applicationId= Math.floor((Math.random() * 9999999999) + 1);
for (var i in scope.group.clients) {
if( scope.group.clients[i].isSelected ){
var loanApplication = {};
loanApplication.charges=loanApp.charges;
loanApplication.locale = scope.optlang.code;
loanApplication.dateFormat = scope.df;
loanApplication.groupId = scope.group.id;
loanApplication.clientId = scope.group.clients[i].id;
if(scope.caledars){
loanApplication.calendarId = scope.caledars[0].id;
}
loanApplication.loanType = 'glim';
loanApplication.productId = scope.productDetails.id;
loanApplication.fundId = scope.loanApplicationCommonData.fundId;
loanApplication.numberOfRepayments = scope.formData.numberOfRepayments;
loanApplication.repaymentEvery = scope.formData.repaymentEvery;
loanApplication.repaymentFrequencyType = scope.formData.repaymentFrequencyType;
loanApplication.repaymentsStartingFromDate = reqFourthDate;
loanApplication.interestChargedFromDate = reqThirdDate;
loanApplication.interestRatePerPeriod = scope.formData.interestRatePerPeriod;
loanApplication.amortizationType = scope.productDetails.amortizationType.id;
loanApplication.interestType = scope.formData.interestType;
loanApplication.interestCalculationPeriodType = scope.productDetails.interestCalculationPeriodType.id;
loanApplication.inArrearsTolerance = scope.productDetails.inArrearsTolerance;
loanApplication.graceOnPrincipalPayment = scope.productDetails.graceOnPrincipalPayment;
loanApplication.graceOnInterestPayment = scope.productDetails.graceOnInterestPayment;
loanApplication.transactionProcessingStrategyId = scope.productDetails.transactionProcessingStrategyId;
loanApplication.loanTermFrequency = scope.formData.loanTermFrequency;
loanApplication.loanTermFrequencyType = scope.formData.loanTermFrequencyType;
loanApplication.loanPurposeId = scope.group.clients[i].loanPurposeId;
loanApplication.loanOfficerId = scope.loanApplicationCommonData.loanOfficerId;
loanApplication.principal = scope.group.clients[i].principal;
if(child==0)
{
loanApplication.totalLoan=totalLoan;
loanApplication.isParentAccount=true;
}
loanApplication.expectedDisbursementDate = dateFilter(scope.loanApplicationCommonData.expectedDisbursementDate, scope.df);
loanApplication.submittedOnDate = dateFilter(scope.loanApplicationCommonData.submittedOnDate, scope.df);
loanApplication.syncDisbursementWithMeeting = scope.loanApplicationCommonData.syncDisbursementWithMeeting;
loanApplication.lastApplication=false;
loanApplication.applicationId=applicationId;
loanApplication.linkAccountId=scope.formData.gsimAccountId;
console.log('formData.gsimAccountId : '+scope.formData.gsimAccountId);
if (!_.isUndefined(scope.formData.datatables) && scope.formData.datatables.length > 0) {
loanApplication.datatables = scope.formData.datatables;
}
child=child+1;
if(child==applicationCount)
{
loanApplication.lastApplication=true;
}
this.batchRequests.push({requestId: i, relativeUrl: "loans",
method: "POST", body: JSON.stringify(loanApplication)});
}
}
resourceFactory.batchResource.post({
enclosingTransaction:true},this.batchRequests, function (data) {
for (var i = 0; i < data.length; i++) {
if(data[i].statusCode == 200 )
scope.response.success.push(data[i]);
else
scope.response.failed.push(data[i]);
}
if(scope.response.failed.length === 0 ){
location.path('/viewgroup/' + scope.group.id);
}
});
};
/* Cancel button action */
scope.cancel = function () {
if (scope.clientId) {
location.path('/viewclient/' + scope.clientId);
} else if (scope.centerEntity) {
location.path('/viewcenter/' + scope.groupId);
}
if (scope.group.id) {
location.path('/viewgroup/' + scope.group.id);
}
};
} // End of GLIMAccountController
});
mifosX.ng.application.controller('NewGLIMAccountController', ['$scope', '$rootScope', '$routeParams', 'ResourceFactory', '$location', 'dateFilter', 'WizardHandler', mifosX.controllers.NewGLIMAccountController]).run(function ($log) {
$log.info("NewGLIMAccountController initialized");
});
}(mifosX.controllers || {}));

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
NewLoanAccAppController: function (scope, routeParams, resourceFactory, location, dateFilter, uiConfigService, WizardHandler) {
NewLoanAccAppController: function (scope, routeParams, resourceFactory, location, dateFilter, uiConfigService, WizardHandler, translate) {
scope.previewRepayment = false;
scope.clientId = routeParams.clientId;
scope.groupId = routeParams.groupId;
@ -22,6 +22,11 @@
scope.customSteps = [];
scope.tempDataTables = [];
scope.disabled = true;
scope.translate= translate;
scope.rateFlag=false;
scope.collateralAddedDataArray = [];
scope.collateralsData = {};
scope.addedCollateral = {};
scope.date.first = new Date();
@ -47,9 +52,12 @@
}
scope.inparams.staffInSelectedOfficeOnly = true;
scope.currencyType;
resourceFactory.loanResource.get(scope.inparams, function (data) {
scope.products = data.productOptions;
console.log(scope.products);
scope.ratesEnabled = data.isRatesEnabled;
if (data.clientName) {
scope.clientName = data.clientName;
@ -63,10 +71,18 @@
// _.isUndefined(scope.datatables) ? scope.tempDataTables = [] : scope.tempDataTables = scope.datatables;
// WizardHandler.wizard().removeSteps(1, scope.tempDataTables.length);
scope.inparams.productId = loanProductId;
resourceFactory.clientcollateralTemplateResource.getAllCollaterals({clientId: scope.clientId, prodId: loanProductId}, function(data) {
scope.collateralsData = data;
scope.collateralsData = scope.collateralsData.filter((collateral) => collateral.quantity != 0);
});
// scope.datatables = [];
resourceFactory.loanResource.get(scope.inparams, function (data) {
scope.loanaccountinfo = data;
scope.previewClientLoanAccInfo();
scope.loandetails.interestValue = scope.loanaccountinfo.interestType.value;
scope.loandetails.amortizationValue = scope.loanaccountinfo.amortizationType.value;
scope.loandetails.interestCalculationPeriodValue = scope.loanaccountinfo.interestCalculationPeriodType.value;
scope.loandetails.transactionProcessingStrategyValue = scope.formValue(scope.loanaccountinfo.transactionProcessingStrategyOptions,scope.formData.transactionProcessingStrategyId,'id','name');
scope.datatables = data.datatables;
scope.handleDatatables(scope.datatables);
scope.disabled = false;
@ -147,6 +163,7 @@
scope.loandetails.repaymentFrequencyValue = scope.loanaccountinfo.repaymentFrequencyType.value;
scope.formData.interestRatePerPeriod = scope.loanaccountinfo.interestRatePerPeriod;
scope.formData.amortizationType = scope.loanaccountinfo.amortizationType.id;
scope.formData.fixedPrincipalPercentagePerInstallment = scope.loanaccountinfo.fixedPrincipalPercentagePerInstallment;
scope.formData.isEqualAmortization = scope.loanaccountinfo.isEqualAmortization;
scope.loandetails.amortizationValue = scope.loanaccountinfo.amortizationType.value;
scope.formData.interestType = scope.loanaccountinfo.interestType.id;
@ -177,9 +194,58 @@
scope.loandetails = angular.copy(scope.formData);
scope.loandetails.productName = scope.formValue(scope.products,scope.formData.productId,'id','name');
scope.formData.rates = scope.loanaccountinfo.product.rates;
if (scope.formData.rates && scope.formData.rates.length>0){
scope.rateFlag=true;
}
scope.rateOptions = [];
};
scope.$watch('formData',function(newVal){
//Rate
scope.rateSelected = function(currentRate){
if(currentRate && !scope.checkIfRateAlreadyExist(currentRate)){
scope.rateFlag=true;
scope.formData.rates.push(currentRate);
scope.rateOptions.splice(scope.rateOptions.indexOf(currentRate),1);
scope.currentRate = '';
currentRate = '';
scope.calculateRates();
}
};
scope.checkIfRateAlreadyExist = function(currentRate){
var exist = false;
scope.formData.rates.forEach(function(rate){
if(rate.id === currentRate.id){
exist = true;
}
});
return exist
};
scope.calculateRates = function(){
var total = 0;
scope.formData.rates.forEach(function(rate){
total += rate.percentage;
});
if (total===0){
total=undefined;
scope.rateFlag=false;
}
scope.formData.interestRatePerPeriod = total;
};
scope.deleteRate = function (index){
scope.rateOptions.push(scope.formData.rates[index]);
scope.formData.rates.splice(index,1);
scope.calculateRates();
};
scope.$watch('formData',function(newVal){
scope.loandetails = angular.extend(scope.loandetails,newVal);
},true);
@ -228,15 +294,21 @@
};
scope.addCollateral = function () {
if (scope.collateralFormData.collateralIdTemplate && scope.collateralFormData.collateralValueTemplate) {
scope.collaterals.push({type: scope.collateralFormData.collateralIdTemplate.id, name: scope.collateralFormData.collateralIdTemplate.name, value: scope.collateralFormData.collateralValueTemplate, description: scope.collateralFormData.collateralDescriptionTemplate});
scope.collateralFormData.collateralIdTemplate = undefined;
scope.collateralFormData.collateralValueTemplate = undefined;
scope.collateralFormData.collateralDescriptionTemplate = undefined;
}
scope.collateralAddedDataArray.push(scope.collateralsData.filter((collateral) => scope.collateralFormData.collateralId == collateral.collateralId)[0]);
scope.collateralsData = scope.collateralsData.filter((collateral) => scope.collateralFormData.collateralId != collateral.collateralId);
scope.collaterals.push({collateralId: scope.collateralFormData.collateralId, quantity: scope.collateralFormData.quantity, total: scope.collateralFormData.total, totalCollateral: scope.collateralFormData.totalCollateral});
};
scope.updateValues = function() {
scope.collateralObject = scope.collateralsData.filter((collateral) => collateral.collateralId == scope.collateralFormData.collateralId)[0];
scope.collateralFormData.total = scope.collateralFormData.quantity * scope.collateralObject.basePrice;
scope.collateralFormData.totalCollateral = scope.collateralFormData.total * scope.collateralObject.pctToBase / 100.0;
}
scope.deleteCollateral = function (index) {
scope.collateralId = scope.collaterals[index].collateralId;
scope.collateralObject = scope.collateralAddedDataArray.filter((collateral) => collateral.collateralId == scope.collateralId)[0];
scope.collateralsData.push(scope.collateralObject);
scope.collaterals.splice(index, 1);
};
@ -347,9 +419,8 @@
if (scope.collaterals.length > 0) {
scope.formData.collateral = [];
for (var i in scope.collaterals) {
scope.formData.collateral.push({type: scope.collaterals[i].type, value: scope.collaterals[i].value, description: scope.collaterals[i].description});
scope.formData.collateral.push({clientCollateralId: scope.collaterals[i].collateralId, quantity: scope.collaterals[i].quantity * 1.0});
}
;
}
if (this.formData.syncRepaymentsWithMeeting) {
@ -412,7 +483,7 @@
}
}
});
mifosX.ng.application.controller('NewLoanAccAppController', ['$scope', '$routeParams', 'ResourceFactory', '$location', 'dateFilter', 'UIConfigService', 'WizardHandler', mifosX.controllers.NewLoanAccAppController]).run(function ($log) {
mifosX.ng.application.controller('NewLoanAccAppController', ['$scope', '$routeParams', 'ResourceFactory', '$location', 'dateFilter', 'UIConfigService', 'WizardHandler', '$translate',mifosX.controllers.NewLoanAccAppController]).run(function ($log) {
$log.info("NewLoanAccAppController initialized");
});
}(mifosX.controllers || {}));

View File

@ -23,6 +23,7 @@
this.formData.rescheduleFromDate = dateFilter(this.formData.rescheduleFromDate, scope.df);
this.formData.adjustedDueDate = dateFilter(this.formData.adjustedDueDate, scope.df);
this.formData.submittedOnDate = dateFilter(this.formData.submittedOnDate, scope.df);
this.formData.endDate = dateFilter(this.formData.endDate, scope.df);
this.formData.rescheduleReasonComment = scope.comments;
resourceFactory.loanRescheduleResource.put(this.formData, function (data) {
scope.requestId = data.resourceId;

View File

@ -0,0 +1,204 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewGLIMaccountController: function (scope, routeParams, resourceFactory, location, route, http, $uibModal, dateFilter, API_VERSION, $sce, $rootScope) {
var parentLoanAccountNo=routeParams.id;
scope.groupId=routeParams.groupId;
scope.glimId=routeParams.glimId;
scope.groupGLIMAccounts={};
scope.productName="";
scope.buttons={};
scope.routeToLoan = function (id) {
location.path('/viewloanaccount/' + id);
};
var parentglimid=0;
resourceFactory.glimLoanTemplate.get({glimId: scope.glimId}, function (data) {
scope.glimAccounts = data;
for(i=0;i<scope.glimAccounts.length;i++)
{
var temp={};
temp.parentAccountNo=data[i].parentAccountNo;
temp.clientName=data[i].clientName;
temp.childLoanId=data[i].childLoanId;
temp.childLoanAccountNo=data[i].childLoanAccountNo;
temp.approvedLoanAmount=parseFloat(data[i].childPrincipalAmount);
scope.totalLoanAmount+=parseFloat(data[i].childPrincipalAmount);
scope.approvalArray.push(temp);
}
});
resourceFactory.groupGLIMAccountResource.get({groupId: routeParams.groupId,parentLoanAccountNo:parentLoanAccountNo }, function (data) {
scope.groupGLIMAccounts = data[0];
scope.productName=data[0].childGLIMAccounts[0].productName;
parentglimid=data[0].childGLIMAccounts[0].id;
scope.id=data[0].childGLIMAccounts[0].id;
scope.submittedOnDate=data[0].childGLIMAccounts[0].timeline.submittedOnDate;
scope.value=data[0].childGLIMAccounts[0].status.value;
if (scope.groupGLIMAccounts.loanStatus === "SUBMITTED_AND_PENDING_APPROVAL") {
scope.buttons = { singlebuttons: [
{
name: "button.approve",
icon: "fa fa-check",
taskPermissionName: 'APPROVE_LOAN'
},
{
name: "button.reject",
icon: "fa fa-times",
taskPermissionName: 'REJECT_LOAN'
}
]
};
}
if (data[0].loanStatus === "APPROVED") {
scope.buttons = { singlebuttons: [
{
name: "button.disburse",
icon: "fa fa-flag",
taskPermissionName: 'DISBURSE_LOAN'
},
{
name: "button.undoapproval",
icon: "fa fa-undo",
taskPermissionName: 'APPROVALUNDO_LOAN'
}
]
};
}
if (data[0].loanStatus === "ACTIVE") {
scope.buttons = { singlebuttons: [
{
name: "button.makerepayment",
icon: "fa fa-dollar",
taskPermissionName: 'REPAYMENT_LOAN'
},
{
name: "button.undodisbursal",
icon: "fa fa-undo",
taskPermissionName: 'DISBURSALUNDO_LOAN'
}
]
};
}
});
scope.clickEvent = function (eventName, accountId) {
eventName = eventName || "";
switch (eventName) {
case "addloancharge":
location.path('/addloancharge/' + accountId);
break;
case "addcollateral":
location.path('/addcollateral/' + accountId);
break;
case "assignloanofficer":
location.path('/assignloanofficer/' + accountId);
break;
case "modifyapplication":
location.path('/editloanaccount/' + parentglimid);
break;
case "approve":
location.path('/glimloanaccount/' + routeParams.id + '/glimApprove/'+accountId +'/'+scope.groupId); //accountid is glimId and routerparamsid is child loanid
break;
case "reject":
location.path('/glimloanaccount/' + routeParams.id +'/reject/'+accountId+'/'+scope.groupId);
break;
case "withdrawnbyclient":
location.path('/loanaccount/' + accountId + '/withdrawnByApplicant');
break;
case "delete":
resourceFactory.LoanAccountResource.delete({loanId: accountId}, {}, function (data) {
var destination = '/viewgroup/' + data.groupId;
if (data.clientId) destination = '/viewclient/' + data.clientId;
location.path(destination);
});
break;
case "undoapproval":
location.path('/glimloanaccount/' + routeParams.id + '/undoapproval/'+ accountId +'/'+scope.groupId);
break;
case "disburse":
location.path('/glimloanaccount/' + routeParams.id + '/glimDisburse/'+accountId+'/'+scope.groupId);
break;
case "disbursetosavings":
location.path('/loanaccount/' + accountId + '/disbursetosavings');
break;
case "undodisbursal":
location.path('/glimloanaccount/'+ routeParams.id + '/undodisbursal/'+ accountId +'/'+scope.groupId);
break;
case "makerepayment":
location.path('/glimloanaccount/' + routeParams.id + '/glimrepayment/'+accountId+'/'+scope.groupId);
break;
case "prepayment":
location.path('/loanaccount/' + accountId + '/prepayloan');
break;
case "waiveinterest":
location.path('/loanaccount/' + accountId + '/waiveinterest');
break;
case "writeoff":
location.path('/loanaccount/' + accountId + '/writeoff');
break;
case "recoverypayment":
location.path('/loanaccount/' + accountId + '/recoverypayment');
break;
case "close-rescheduled":
location.path('/loanaccount/' + accountId + '/close-rescheduled');
break;
case "transferFunds":
if (scope.loandetails.clientId) {
location.path('/accounttransfers/fromloans/' + accountId);
}
break;
case "close":
location.path('/loanaccount/' + accountId + '/close');
break;
case "createguarantor":
location.path('/guarantor/' + accountId);
break;
case "listguarantor":
location.path('/listguarantors/' + accountId);
break;
case "recoverguarantee":
location.path('/loanaccount/' + accountId + '/recoverguarantee');
break;
case "unassignloanofficer":
location.path('/loanaccount/' + accountId + '/unassignloanofficer');
break;
case "loanscreenreport":
location.path('/loanscreenreport/' + accountId);
break;
case "reschedule":
location.path('/loans/' +accountId + '/reschedule');
break;
case "adjustrepaymentschedule":
location.path('/adjustrepaymentschedule/'+accountId) ;
break ;
case "foreclosure":
location.path('loanforeclosure/' + accountId);
break;
}
};
resourceFactory.groupResource.get({groupId: routeParams.groupId, associations: 'all'}, function (data) {
scope.group = data;
});
}
});
mifosX.ng.application.controller('ViewGLIMaccountController', ['$scope', '$routeParams', 'ResourceFactory', '$location', '$route', '$http', '$uibModal', 'dateFilter', 'API_VERSION', '$sce', '$rootScope', mifosX.controllers.ViewGLIMaccountController]).run(function ($log) {
$log.info("ViewGLIMaccountController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,15 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewLoanCollateralDataController: function (scope, resourceFactory, routeParams, location, $uibModal) {
scope.loanId = routeParams.id;
scope.collateralId = routeParams.collateralId;
resourceFactory.loancollateralResource.get({collateralId: scope.collateralId}, function (data) {
scope.collateral = data;
});
}
});
mifosX.ng.application.controller('ViewLoanCollateralDataController', ['$scope', 'ResourceFactory', '$routeParams', '$location', '$uibModal', mifosX.controllers.ViewLoanCollateralDataController]).run(function ($log) {
$log.info("ViewLoanCollateralDataController initialized");
});
}(mifosX.controllers || {}));

View File

@ -10,8 +10,10 @@
scope.hideAccrualTransactions = false;
scope.isHideAccrualsCheckboxChecked = true;
scope.loandetails = [];
scope.routeTo = function (loanId, transactionId, transactionTypeId) {
if (transactionTypeId == 2 || transactionTypeId == 4 || transactionTypeId == 1) {
$rootScope.rates = scope.loandetails.rates;
location.path('/viewloantrxn/' + loanId + '/trxnId/' + transactionId);
};
};
@ -21,6 +23,7 @@
* api returns dates in array format[yyyy, mm, dd], converting the array of dates to date object
* @param dateFieldName
*/
scope.convertDateArrayToObject = function(dateFieldName){
for(var i in scope.loandetails.transactions){
scope.loandetails.transactions[i][dateFieldName] = new Date(scope.loandetails.transactions[i].date);
@ -151,6 +154,7 @@
resourceFactory.LoanAccountResource.getLoanAccountDetails({loanId: routeParams.id, associations: 'all',exclude: 'guarantors,futureSchedule'}, function (data) {
scope.loandetails = data;
scope.productId = data.loanProductId;
scope.convertDateArrayToObject('date');
scope.recalculateInterest = data.recalculateInterest || true;
scope.isWaived = scope.loandetails.repaymentSchedule.totalWaived > 0;
@ -406,6 +410,12 @@
scope.standinginstruction = response;
scope.searchTransaction();
});
resourceFactory.creditBureauByLoanProductId.get({loanProductId: scope.productId}, function (data) {
scope.cblpstatuses = data;
scope.cblpstatusactive = data.isActive;
scope.cbIsCreditCheckMandatory = data.isCreditCheckMandatory
});
});
var fetchFunction = function (offset, limit, callback) {

View File

@ -1,12 +1,39 @@
(function (module) {
mifosX.controllers = _.extend(module, {
ViewLoanTransactionController: function (scope, resourceFactory, location, routeParams, dateFilter, $uibModal) {
ViewLoanTransactionController: function (scope, resourceFactory, location, routeParams, dateFilter, $uibModal, $rootScope) {
scope.details = [];
//Get loan rates to be defined in transaction details
scope.rates = $rootScope.rates;
//Obtain total rate percentage
scope.totalRatePercentage = 0;
if (scope.rates){
scope.rates.forEach(function (rate) {
scope.totalRatePercentage += (rate.percentage/100);
});
}
//get Tax from configuration
scope.tax = 0;
resourceFactory.configurationResource.get(function (data) {
for (var i in data.globalConfiguration) {
if('vat-tax' === data.globalConfiguration[i].name){
scope.tax = (data.globalConfiguration[i].value/100);
break;
}
}
for (var i in data.globalConfiguration) {
if('sub-rates' === data.globalConfiguration[i].name){
scope.ratesEnabled = (data.globalConfiguration[i].value);
break;
}
}
});
resourceFactory.loanTrxnsResource.get({loanId: routeParams.accountId, transactionId: routeParams.id}, function (data) {
scope.transaction = data;
scope.transaction.accountId = routeParams.accountId;
scope.generateDetailTable();
});
scope.undo = function (accountId, transactionId) {
$uibModal.open({
templateUrl: 'undotransaction.html',
@ -36,10 +63,118 @@
$uibModalInstance.dismiss('cancel');
};
};
scope.generateDetailTable = function () {
//add principal amount
var principalDetail = {
description: 'label.view.principalpaymentdetail',
containsAmount: true,
boldTitle: true,
align: 'left',
amount: scope.transaction.principalPortion.toFixed(3)
};
scope.details.push(principalDetail);
//Check for interest details
var rateHeader = {
description: 'label.view.interestspayment',
containsAmount: scope.rates? false : true,
boldTitle: true,
amount: scope.rates? undefined : scope.transaction.interestPortion.toFixed(3)
};
scope.details.push(rateHeader);
if (scope.ratesEnabled && scope.rates) {
scope.rates.forEach(function (rate) {
var rateDetail = {
description: rate.name,
containsAmount: true,
boldTitle: false,
amount: (((scope.transaction.interestPortion * (rate.percentage / 100)) / (scope.totalRatePercentage))
/ (1 + (scope.tax ? scope.tax : 0))).toFixed(3)
};
scope.details.push(rateDetail);
if (scope.tax) {
var rateTaxDetail = {
description: 'IVA',
containsAmount: true,
boldTitle: false,
amount: (rateDetail.amount * scope.tax).toFixed(3)
};
scope.details.push(rateTaxDetail);
}
});
//Set total amount for rates
var totalRateDetail = {
description: 'label.view.interestspaymentTotal',
containsAmount: true,
boldTitle: true,
isTotal: true,
align: 'right',
amount: scope.transaction.interestPortion.toFixed(3)
};
scope.details.push(totalRateDetail);
}
//Calculate total amount por charges
scope.availableCharges = {};
if (scope.transaction.loanChargePaidByList) {
scope.transaction.loanChargePaidByList.forEach(function (data) {
var chargePaidBy = {
id: data['id'],
amount: data['amount'],
type: data['name']
};
if (scope.availableCharges.hasOwnProperty(chargePaidBy.type)) {
scope.availableCharges[chargePaidBy.type] = (scope.availableCharges[chargePaidBy.type]
+ chargePaidBy.amount);
} else {
scope.availableCharges[chargePaidBy.type] = chargePaidBy.amount;
}
});
}
//Add charge header
if (Object.keys(scope.availableCharges).length >= 1) {
var chargeHeaderDetail = {
description: 'label.input.charges',
containsAmount: false,
boldTitle: true
};
scope.details.push(chargeHeaderDetail);
}
for (var key in scope.availableCharges) {
var chargeDetail = {
description: key,
containsAmount: true,
boldTitle: false,
amount: (scope.availableCharges[key].toFixed(3) / (1
+ scope.tax ? scope.tax :0)).toFixed(3)
};
scope.details.push(chargeDetail);
if (scope.tax) {
var chargeTaxDetail = {
description: 'IVA',
containsAmount: true,
boldTitle: false,
amount: (chargeDetail.amount * scope.tax).toFixed(3)
};
scope.details.push(chargeTaxDetail);
}
}
if (Object.keys(scope.availableCharges).length >= 1) {
var chargeTotalDetail = {
description: 'Total',
containsAmount: true,
boldTitle: true,
align: 'right',
amount: scope.transaction.penaltyChargesPortion.toFixed(3)
};
scope.details.push(chargeTotalDetail);
}
};
}
});
mifosX.ng.application.controller('ViewLoanTransactionController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter', '$uibModal', mifosX.controllers.ViewLoanTransactionController]).run(function ($log) {
mifosX.ng.application.controller('ViewLoanTransactionController', ['$scope', 'ResourceFactory', '$location', '$routeParams', 'dateFilter', '$uibModal', '$rootScope', mifosX.controllers.ViewLoanTransactionController]).run(function ($log) {
$log.info("ViewLoanTransactionController initialized");
});
}(mifosX.controllers || {}));

View File

@ -11,7 +11,7 @@
scope.rescheduleFromDate = dateFilter(scope.rescheduleFromDate,"dd MMMM yyyy");
scope.submittedOnDate = new Date(scope.loanRescheduleDetails.timeline.submittedOnDate);
scope.submittedOnDate = dateFilter(scope.submittedOnDate,"dd MMMM yyyy");
scope.loanRescheduleDetails.emichange = [];
for(var i in scope.loanTermVariationsData) {
if(scope.loanTermVariationsData[i].termType.value == "dueDate") {
scope.loanRescheduleDetails.adjustedDueDate = new Date(scope.loanTermVariationsData[i].dateValue);
@ -38,7 +38,19 @@
scope.loanRescheduleDetails.interestRate = scope.loanTermVariationsData[i].decimalValue;
scope.adjustinterestrates = true;
}
if(scope.loanTermVariationsData[i].termType.value == "principalPercentagePerInstallment") {
scope.loanRescheduleDetails.newFixedPrincipalPercentagePerInstallment = scope.loanTermVariationsData[i].decimalValue;
scope.changeFixedPrincipalPercentagePerInstallment = true;
}
if(scope.loanTermVariationsData[i].termType.value == "emiAmount") {
var emi = {};
emi.emi = scope.loanTermVariationsData[i].decimalValue;
emi.instDate = dateFilter(scope.loanTermVariationsData[i].dateValue,"dd MMMM yyyy");
scope.loanRescheduleDetails.emichange.push(emi);
scope.changeEMI = true;
}
}
});

View File

@ -2,7 +2,8 @@
mifosX.controllers = _.extend(module, {
MainController: function (scope, location, sessionManager, translate, $rootScope, localStorageService, keyboardManager, $idle, tmhDynamicLocale,
uiConfigService, $http) {
$http.get('release.json').success(function(data) {
$http.get('release.json').then(function onSuccess(response) {
var data = response.data;
scope.version = data.version;
scope.releasedate = data.releasedate;
});
@ -16,7 +17,8 @@
if(!scope.islogofoldernamefetched && $rootScope.tenantIdentifier && $rootScope.tenantIdentifier != "default"){
scope.islogofoldernamefetched = true;
$http.get('scripts/config/LogoConfig.json').success(function(datas) {
$http.get('scripts/config/LogoConfig.json').then(function onSuccess(response) {
var datas = response.data;
for(var i in datas){
var data = datas[i];
if(data.tenantIdentifier != undefined && data.tenantIdentifier == $rootScope.tenantIdentifier){
@ -42,9 +44,11 @@
}
}
}
}).catch(function onError(response) {
console.warn("Error: ", response.data)
});
}
scope.$on('scrollbar.show', function(){
console.log('Scrollbar show');
});
@ -52,7 +56,12 @@
console.log('Scrollbar hide');
});
uiConfigService.init();
uiConfigService.init(scope);
scope.$on('configJsonObj',function(e,response){
scope.response = response;
});
//hides loader
scope.domReady = true;
scope.activity = {};
@ -232,7 +241,6 @@
scope.optlang = scope.langs[0];
tmhDynamicLocale.set(scope.langs[0].code);
}
console.log(translate.use);
translate.use(scope.optlang.code);
scope.isActive = function (route) {

View File

@ -10,7 +10,11 @@
scope.uniqueArray = [];
scope.searchParams = [];
scope.recents = [];
scope.dashModel = 'dashboard';
scope.dashModel = 'rich-dashboard';
scope.officeIdDisbursed = 1;
scope.officeId = 1;
scope.officeIdCollection = 1;
scope.switch = function() {
location.path('/richdashboard');
@ -90,7 +94,7 @@
scope.bOfficeName = 'Head Office';
scope.chartType = 'Days';
scope.collectionPieData = [];
scope.dashModel = 'rich-dashboard';
scope.switch = function() {
location.path('/home');
}

View File

@ -332,7 +332,7 @@
});
resourceFactory.clientResource.getAllClients({sqlSearch: 'c.status_enum=100'}, function (data) {
resourceFactory.clientResource.getAllClients({status: 'pending'}, function (data) {
scope.groupedClients = _.groupBy(data.pageItems, "officeName");
});
@ -512,7 +512,7 @@
$uibModalInstance.close('approveLoanReschedule');
};
$scope.cancel = function () {
$uibmodalInstance.dismiss('cancel');
$uibModalInstance.dismiss('cancel');
};
}
scope.checkerInboxAllCheckBoxesClickedForBulkLoanRescheduleApproval = function() { var newValue = !scope.checkerInboxAllCheckBoxesMetForBulkLoanRescheduleApproval();

View File

@ -18,6 +18,7 @@
};
scope.EmployeesPerPage = 15;
scope.showActive = true;
resourceFactory.employeeResource.getAllEmployees(function (data) {
scope.employees = data;
});

View File

@ -14,6 +14,17 @@
scope.isRoleEnable = function(value) {
return value;
};
if (!scope.searchCriteria.rolesFilterText) {
scope.searchCriteria.rolesFilterText = null;
scope.saveSC();
}
scope.filterText = scope.searchCriteria.rolesFilterText || '';
scope.onFilter = function () {
scope.searchCriteria.rolesFilterText = scope.filterText;
scope.saveSC();
};
}
});
mifosX.ng.application.controller('RoleController', ['$scope', 'ResourceFactory', '$location', mifosX.controllers.RoleController]).run(function ($log) {

View File

@ -12,6 +12,7 @@
resourceFactory.rolePermissionResource.get({roleId: routeParams.id}, function (data) {
scope.role = data;
scope.isDisabled = true;
scope.isAllFunctionsDisabled = false;
var currentGrouping = "";
for (var i in data.permissionUsageData) {
@ -24,6 +25,7 @@
var temp = { code: data.permissionUsageData[i].code};
scope.formData[data.permissionUsageData[i].code] = data.permissionUsageData[i].selected;
tempPermissionUIData[currentGrouping].permissions.push(temp);
scope.isAllFunctionsDisabled = scope.formData['ALL_FUNCTIONS'];
}
scope.backupCheckValues = function()
@ -173,11 +175,45 @@
{
for(var i in checkboxes)
{
checkboxes[i].checked = 0;
if (i >= 1)
{
checkboxes[i].checked = 0;
}
else
{
if ('ALL_FUNCTIONS' == this.permissions.permissions[0].code)
{
if (!this.isAllFunctionsDisabled)
{
checkboxes[i].checked = 0;
}
}
else
{
checkboxes[i].checked = 0;
}
}
}
for(var i = 0; i< this.permissions.permissions.length; i++)
{
this.formData[this.permissions.permissions[i].code] = false;
if (i >= 1)
{
this.formData[this.permissions.permissions[i].code] = false;
}
else
{
if ('ALL_FUNCTIONS' == this.permissions.permissions[0].code)
{
if (!this.isAllFunctionsDisabled)
{
this.formData[this.permissions.permissions[i].code] = false;
}
}
else
{
this.formData[this.permissions.permissions[i].code] = false;
}
}
}
}
@ -198,11 +234,10 @@
};
});
}
});
mifosX.ng.application.controller('ViewRoleController', ['$scope', '$routeParams', 'ResourceFactory', '$route','$uibModal', mifosX.controllers.ViewRoleController]).run(function ($log) {
$log.info("ViewRoleController initialized");
});
}(mifosX.controllers || {}));
}(mifosX.controllers || {}));

View File

@ -0,0 +1,18 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CollateralController: function (scope, resourceFactory, location) {
scope.routeTo = function (id) {
location.path('/viewcollateral/' + id);
};
scope.CollateralPerPage =15;
resourceFactory.collateralResource.getAllCollaterals(function (data) {
scope.collaterals = data;
});
}
});
mifosX.ng.application.controller('CollateralController', ['$scope', 'ResourceFactory', '$location', mifosX.controllers.CollateralController]).run(function ($log) {
$log.info("CollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -11,6 +11,9 @@
scope.translate = translate;
scope.showFrequencyOptions = false;
scope.showPenalty = true ;
scope.showfreewithdrawalfrequency = false;
scope.showrestartfrequency = false;
scope.paymentTypes = [];
resourceFactory.chargeTemplateResource.get(function (data) {
scope.template = data;
@ -21,6 +24,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 +59,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 +75,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
@ -68,6 +93,8 @@
if (chargeTimeType === scope.chargeTimeTypeOptions[i].id) {
if (scope.chargeTimeTypeOptions[i].value == "Annual Fee" || scope.chargeTimeTypeOptions[i].value == "Monthly Fee") {
scope.showdatefield = true;
scope.showenablefreewithdrawal = false;
scope.showenablepaymenttype = false;
scope.repeatsEveryLabel = 'label.input.months';
//to show 'repeats every' field for monthly fee
if (scope.chargeTimeTypeOptions[i].value == "Monthly Fee") {
@ -79,17 +106,37 @@
scope.repeatEvery = true;
scope.showdatefield = false;
scope.repeatsEveryLabel = 'label.input.weeks';
scope.showenablefreewithdrawal = false;
scope.showenablepaymenttype = false;
}
else {
else if (scope.chargeTimeTypeOptions[i].value == "Withdrawal Fee") {
scope.showenablefreewithdrawal = true;
scope.showenablepaymenttype = true;
}
else{
scope.showenablefreewithdrawal = false;
scope.showenablepaymenttype = false;
scope.showdatefield = false;
scope.repeatEvery = false;
}
}
}
}
}
}
resourceFactory.paymentTypeResource.getAll( function (data) {
scope.paymentTypes = data;
});
resourceFactory.loanProductResource.get({resourceType: 'template'}, function (data) {
scope.product = data;
const i = 1;
scope.filteredItems = scope.product.repaymentFrequencyTypeOptions.slice(0, i).concat(scope.product.repaymentFrequencyTypeOptions.slice(i + 1, scope.product.repaymentFrequencyTypeOptions.length));
})
scope.setChoice = function () {
if (this.formData.active) {
scope.choice = 1;
@ -97,6 +144,33 @@
else if (!this.formData.active) {
scope.choice = 0;
}
if(this.formData.enablepaymenttypes){
scope.choice = 1;
}else if(!this.formData.enablepaymenttypes){
scope.choice = 0;
}
};
scope.setOptions = function() {
if (this.formData.enableFreeWithdrawalCharge) {
scope.showfreewithdrawalfrequency = true;
scope.showrestartfrequency = true;
} else if (!this.formData.enableFreeWithdrawalCharge) {
scope.showfreewithdrawalfrequency = false;
scope.showrestartfrequency = false;
}
if(this.formData.enablePaymentType){
scope.showpaymenttype = true;
}else if(!this.formData.enablePaymentType){
scope.showpaymenttype = false;
}
};
scope.hideweek = function(){
return this.formData.countFrequencyType.id !==1;
};
scope.filterChargeCalculations = function(chargeTimeType) {
@ -133,6 +207,8 @@
delete this.formData.chargePaymentMode;
}
this.formData.active = this.formData.active || false;
this.formData.enableFreeWithdrawalCharge = this.formData.enableFreeWithdrawalCharge || false;
this.formData.enablePaymentType = this.formData.enablePaymentType || false;
this.formData.locale = scope.optlang.code;
this.formData.monthDayFormat = 'dd MMM';
resourceFactory.chargeResource.save(this.formData, function (data) {

View File

@ -0,0 +1,28 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreateCollateralController: function (scope, resourceFactory, routeParams, location) {
scope.currencyOptions = [];
scope.formData = {};
scope.collateralId = routeParams.id;
resourceFactory.collateralTemplateResource.getAllCurrency(function (data) {
scope.currencyOptions = data;
});
scope.cancel = function () {
location.path('/collaterals/');
};
scope.submit = function () {
this.formData.locale = scope.optlang.code;
resourceFactory.collateralResource.save(this.formData, function (data) {
location.path('/viewcollateral/' + data.resourceId);
});
};
}
});
mifosX.ng.application.controller('CreateCollateralController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.CreateCollateralController]).run(function ($log) {
$log.info("CreateCollateralController initialized");
});
}(mifosX.controllers || {}));

View File

@ -197,7 +197,7 @@
scope.addNewRow = function () {
var fromPeriod = '';
var amountRangeFrom = '';
var periodType = '';
var periodType = {};
var toPeriod = '';
var amountRangeTo = '';
if (_.isNull(scope.chart.chartSlabs) || _.isUndefined(scope.chart.chartSlabs)) {

View File

@ -1,6 +1,6 @@
(function (module) {
mifosX.controllers = _.extend(module, {
CreateLoanProductController: function (scope, $rootScope, resourceFactory, location, dateFilter,WizardHandler) {
CreateLoanProductController: function (scope, $rootScope, resourceFactory, location, dateFilter,WizardHandler, translate) {
scope.restrictDate = new Date();
scope.formData = {};
scope.loanproduct = {};
@ -32,6 +32,10 @@
scope.transactionProcessingStrategy = true;
scope.allowAttributeConfiguration = true;
scope.interestRecalculationOnDayTypeOptions = [];
scope.translate = translate;
//Rates
scope.rates = [];
scope.rateFlag = false;
for (var i = 1; i <= 28; i++) {
scope.interestRecalculationOnDayTypeOptions.push(i);
}
@ -82,6 +86,10 @@
scope.product.interestRecalculationNthDayTypeOptions.push({"code" : "onDay", "id" : -2, "value" : "on day"});
scope.loanproduct = angular.copy(scope.formData);
scope.isClicked = false;
//Rate Module
scope.rateOptions = scope.product.rateOptions || [];
scope.enableRates = scope.product.isRatesEnabled;
});
scope.$watch('formData',function(newVal){
@ -121,7 +129,50 @@
}
};
scope.deleteCharge = function (index) {
//Rate
scope.rateSelected = function (currentRate) {
if (currentRate) {
scope.rateFlag = true;
scope.rates.push(currentRate);
scope.rateOptions.splice(scope.rateOptions.indexOf(currentRate), 1);
scope.currentRate = '';
scope.calculateRates();
}
};
scope.calculateRates = function () {
var total = 0;
var minRate = 0;
scope.rates.forEach(function (rate) {
if (rate.percentage < minRate || minRate === 0) {
minRate = rate.percentage;
}
total += rate.percentage;
});
if (minRate === 0) {
minRate = undefined;
}
if (total === 0) {
total = undefined;
scope.rateFlag = false;
}
scope.formData.minInterestRatePerPeriod = minRate;
//Assign the same total range to this values.
scope.formData.interestRatePerPeriod = total;
scope.formData.maxInterestRatePerPeriod = total;
scope.calculatedRatePerPeriod = total;
};
scope.deleteRate = function (index) {
scope.rateOptions.push(scope.rates[index]);
scope.rates.splice(index, 1);
scope.calculateRates();
};
scope.deleteCharge = function (index) {
scope.charges.splice(index, 1);
};
@ -325,6 +376,7 @@
this.formData.dateFormat = scope.df;
this.formData.startDate = reqFirstDate;
this.formData.closeDate = reqSecondDate;
this.formData.rates = scope.rates;
//Interest recalculation data
if (this.formData.isInterestRecalculationEnabled) {
@ -363,6 +415,10 @@
this.formData.allowPartialPeriodInterestCalcualtion = false;
}
if(this.formData.amortizationType != 0){
this.formData.fixedPrincipalPercentagePerInstallment = null;
}
if (this.formData.recalculationCompoundingFrequencyType == 4) {
if(this.formData.recalculationCompoundingFrequencyNthDayType == -2) {
delete this.formData.recalculationCompoundingFrequencyNthDayType;
@ -392,7 +448,7 @@
};
}
});
mifosX.ng.application.controller('CreateLoanProductController', ['$scope','$rootScope', 'ResourceFactory', '$location', 'dateFilter','WizardHandler', mifosX.controllers.CreateLoanProductController]).run(function ($log) {
mifosX.ng.application.controller('CreateLoanProductController', ['$scope','$rootScope', 'ResourceFactory', '$location', 'dateFilter','WizardHandler', '$translate', mifosX.controllers.CreateLoanProductController]).run(function ($log) {
$log.info("CreateLoanProductController initialized");
});
}(mifosX.controllers || {}));

View File

@ -0,0 +1,37 @@
/**
* Created by Jose on 24/07/2017.
*/
(function (module) {
mifosX.controllers = _.extend(module, {
CreateRateController: function (scope, resourceFactory, location, dateFilter, translate, webStorage) {
scope.template = [];
scope.formData = {};
scope.first = {};
scope.rateError = false;
scope.translate = translate;
//Right now only loan is accepted for a rate.
scope.rateOptions = [{id : "m_loan"}];
scope.setChoice = function () {
if (this.formData.active) {
scope.choice = 1;
}
else if (!this.formData.active) {
scope.choice = 0;
}
};
scope.submit = function () {
this.formData.locale = scope.optlang.code;
resourceFactory.rateResource.save(this.formData, function (data) {
location.path('/rates/');
},function(error){
scope.rateError = true;
});
};
}
});
mifosX.ng.application.controller('CreateRateController', ['$scope', 'ResourceFactory', '$location', 'dateFilter', '$translate','webStorage', mifosX.controllers.CreateRateController]).run(function ($log) {
$log.info("CreateRateController initialized");
});
}(mifosX.controllers || {}));

Some files were not shown because too many files have changed in this diff Show More