fonFiyatlari = akbank.getFundPrices(AkbankParameters.FundPrices.TYPE_A).getData().getFundRecords();
22 | for (FundRecords fon : fonFiyatlari) {
23 | System.out.println("Fon KIsa Adı: " + fon.getFundShortName());
24 | System.out.println("Fon Adı: " + fon.getFundName());
25 | System.out.println("Fon Tipi: " + fon.getFundType());
26 | System.out.println("Satış Fiyatı: " + fon.getBuyPrice());
27 | System.out.println("Alış Fiyatı: " + fon.getSellPrice());
28 | System.out.println("Fon Tipi Açıklaması: " + fon.getFundTypeDescription());
29 | }
30 |
31 | //********** B TİPİ FONLAR *********//////
32 | fonFiyatlari = akbank.getFundPrices(AkbankParameters.FundPrices.TYPE_B).getData().getFundRecords();
33 | for (FundRecords fon : fonFiyatlari) {
34 | System.out.println("Fon KIsa Adı: " + fon.getFundShortName());
35 | System.out.println("Fon Adı: " + fon.getFundName());
36 | System.out.println("Fon Tipi: " + fon.getFundType());
37 | System.out.println("Satış Fiyatı: " + fon.getBuyPrice());
38 | System.out.println("Alış Fiyatı: " + fon.getSellPrice());
39 | System.out.println("Fon Tipi Açıklaması: " + fon.getFundTypeDescription());
40 | }
41 |
42 | //********* TÜM FON TİPLERİ *****//////////
43 | fonFiyatlari = akbank.getFundPrices(AkbankParameters.FundPrices.ALL).getData().getFundRecords();
44 | for (FundRecords fon : fonFiyatlari) {
45 | System.out.println("Fon KIsa Adı: " + fon.getFundShortName());
46 | System.out.println("Fon Adı: " + fon.getFundName());
47 | System.out.println("Fon Tipi: " + fon.getFundType());
48 | System.out.println("Satış Fiyatı: " + fon.getBuyPrice());
49 | System.out.println("Alış Fiyatı: " + fon.getSellPrice());
50 | System.out.println("Fon Tipi Açıklaması: " + fon.getFundTypeDescription());
51 | }
52 |
53 | }
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/api/ICreditCardApp.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.api;
2 |
3 | import org.akbank4j.core.Akbank4J;
4 | import org.akbank4j.core.request.CreditCardAppRequest;
5 |
6 | /**
7 | * Bu API, Akbank kredi kartı başvurusunda bulunmanıza izin verir.
8 | *
9 | * @author Onur Arslan onurarslan.org
10 | */
11 | public interface ICreditCardApp {
12 |
13 | /** Ad, ikinci ad, soyad, e-posta, telefon, kimlik numarası ve uygulama adı aracılığı ile kredi kartı başvurusu
14 | * yapılır.
15 | * {@code Akbank4J creditCardApp = akbank.getCreditCardApp("Ali", "Veli", "Doğru", "ali.dogru@akbank.com", "05359112233", "127762123454", "ApplicationX");}
16 | *
17 | * @param name Ad
18 | * @param secondName İkinci Ad
19 | * @param surname Soyad
20 | * @param email E-Posta
21 | * @param phoneNumber Telefon
22 | * @param identityNumber T.C Kimlik No
23 | * @param application Uygulama
24 | *
25 | * @return Akbank4J
26 | */
27 | public Akbank4J getCreditCardApp(String name, String secondName, String surname, String email,
28 | String phoneNumber, String identityNumber, String application);
29 |
30 | /** Ad, soyad, e-posta, telefon, kimlik numarası ve uygulama adı aracılığı ile kredi kartı başvurusu yapılır.
31 | * {@code Akbank4J creditCardApp = akbank.getCreditCardApp("Ali", "Doğru", "ali.dogru@akbank.com", "05359112233", "127762123454", "ApplicationX");}
32 | *
33 | * @param name Ad
34 | * @param surname Soyad
35 | * @param email E-Posta
36 | * @param phoneNumber Telefon
37 | * @param identityNumber T.C Kimlik No
38 | * @param application Uygulama
39 | *
40 | * @return Akbank4J
41 | */
42 | public Akbank4J getCreditCardApp(String name, String surname, String email,
43 | String phoneNumber, String identityNumber, String application);
44 |
45 | /** CreditCardAppRequest sınıfı kullanılarak kredi kartı başvurusu yapılır.
46 | * {@code CreditCardAppRequest creditCardReq = new CreditCardAppRequest("Ali", "Veli", "Doğru", "ali.dogru@akbank.com", "05359112233", "127762123454", "ApplicationX");
47 | * Akbank4J creditCard = akbank.getCreditCardApp(creditCardReq);}
48 | *
49 | * @param creditCardApp CreditCardAppRequest.class
50 | *
51 | * @return Akbank4J
52 | */
53 | public Akbank4J getCreditCardApp(CreditCardAppRequest creditCardApp);
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/records/CreditPaymentPlanRecords.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.records;
2 |
3 | /**
4 | *
5 | * @author Onur Arslan onurarslan.org
6 | */
7 | public class CreditPaymentPlanRecords {
8 |
9 | /** The amount of principal. */
10 | private String principal;
11 |
12 | /** The amount of rediscount monthly. */
13 | private String monthlyRediscount;
14 |
15 | /** Banking and Insurance Transactions Tax Amount. */
16 | private String bitt;
17 |
18 | /** The amount of interest. */
19 | private String interest;
20 |
21 | /** The amount of remaining principal. */
22 | private String remainingPrincipal;
23 |
24 | /** Resource Utilization Support Fund. */
25 | private String kkdf;
26 |
27 | /** Number of period */
28 | private String period;
29 |
30 | /** Installment amount. */
31 | private String monthlyPayment;
32 |
33 | /** Loan payment date. In the format yyyy-MM-dd. */
34 | private String date;
35 |
36 | public String getPrincipal() {
37 | return principal;
38 | }
39 |
40 | public void setPrincipal(String principal) {
41 | this.principal = principal;
42 | }
43 |
44 | public String getMonthlyRediscount() {
45 | return monthlyRediscount;
46 | }
47 |
48 | public void setMonthlyRediscount(String monthlyRediscount) {
49 | this.monthlyRediscount = monthlyRediscount;
50 | }
51 |
52 | public String getBitt() {
53 | return bitt;
54 | }
55 |
56 | public void setBitt(String bitt) {
57 | this.bitt = bitt;
58 | }
59 |
60 | public String getInterest() {
61 | return interest;
62 | }
63 |
64 | public void setInterest(String interest) {
65 | this.interest = interest;
66 | }
67 |
68 | public String getRemainingPrincipal() {
69 | return remainingPrincipal;
70 | }
71 |
72 | public void setRemainingPrincipal(String remainingPrincipal) {
73 | this.remainingPrincipal = remainingPrincipal;
74 | }
75 |
76 | public String getKkdf() {
77 | return kkdf;
78 | }
79 |
80 | public void setKkdf(String kkdf) {
81 | this.kkdf = kkdf;
82 | }
83 |
84 | public String getPeriod() {
85 | return period;
86 | }
87 |
88 | public void setPeriod(String period) {
89 | this.period = period;
90 | }
91 |
92 | public String getMonthlyPayment() {
93 | return monthlyPayment;
94 | }
95 |
96 | public void setMonthlyPayment(String monthlyPayment) {
97 | this.monthlyPayment = monthlyPayment;
98 | }
99 |
100 | public String getDate() {
101 | return date;
102 | }
103 |
104 | public void setDate(String date) {
105 | this.date = date;
106 | }
107 |
108 | }
109 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/request/AkbankParameters.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.request;
2 |
3 | /**
4 | * Akbank API'ye gönderilecek parametreler burda yer almaktadır.
5 | *
6 | * @author Onur Arslan onurarslan.org
7 | */
8 | public interface AkbankParameters {
9 |
10 | public interface HTTP_METHOD {
11 |
12 | public String GET = "GET";
13 | public String POST = "POST";
14 | }
15 |
16 | public interface CreditInterestRates {
17 |
18 | public String NAME = "creditType";
19 | public String CONSUMER_LOAN = "I";
20 | public String MORTGAGE_LOAN = "K";
21 | public String CAR_LOAN = "T";
22 | }
23 |
24 | public interface ExchangeRates {
25 |
26 | public String DATE = "date";
27 | public String CURRENCY_CODE = "currencyCode";
28 | }
29 |
30 | public interface FundPrices {
31 |
32 | public String NAME = "fundType";
33 | public String TYPE_A = "A";
34 | public String TYPE_B = "B";
35 | public String ALL = "T";
36 | }
37 |
38 | public interface StockValues {
39 |
40 | public String NAME = "symbol";
41 | }
42 |
43 | public interface CreditPaymentPlan {
44 |
45 | public String BSMV = "bsmv";
46 | public String INTEREST = "interest";
47 | public String KKDF = "kkdf";
48 | public String LOAN_START_DATE = "loanStartDate";
49 | public String LOAN_USING_DATE = "loanUsingDate";
50 | public String LOAN_AMOUNT = "loanAmount";
51 | public String EXPENSE_AMOUNT = "expenseAmount";
52 | public String TERM = "term";
53 | }
54 |
55 | public interface FindATM {
56 |
57 | public String LATITUDE = "latitude";
58 | public String LONGITUDE = "longitude";
59 | public String RADIUS = "radius";
60 | public String CITY = "city";
61 | public String DISTRICT = "district";
62 | public String SEARCH_TEXT = "searchText";
63 | }
64 |
65 | public interface FindBranch {
66 |
67 | public String LATITUDE = "latitude";
68 | public String LONGITUDE = "longitude";
69 | public String RADIUS = "radius";
70 | public String CITY = "city";
71 | public String DISTRICT = "district";
72 | public String SEARCH_TEXT = "searchText";
73 | }
74 |
75 | public interface CreditAppService {
76 |
77 | public String PHONE_NUMBER = "phoneNumber";
78 | public String IDENTITY_NUMBER = "identityNumber";
79 | }
80 |
81 | public interface CreditCardAppService {
82 |
83 | public String NAME = "name";
84 | public String SECOND_NAME = "secondName";
85 | public String SURNAME = "surname";
86 | public String EMAIL = "email";
87 | public String PHONE_NUMBER = "phoneNumber";
88 | public String IDENTITY_NUMBER = "identityNumber";
89 | public String APPLICATION = "application";
90 | }
91 |
92 | }
93 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/models/ExchangeRatesModel.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.models;
2 |
3 | /**
4 | * Exchange Rates API allows you to get current and historical exchange rates.
5 | *
6 | * @author Onur Arslan onurarslan.org
7 | */
8 | public class ExchangeRatesModel {
9 |
10 | /** Selling rate of exchange */
11 | private String sellPrice;
12 |
13 | /** Buying rate of exchange */
14 | private String buyPrice;
15 |
16 | /** USD Cross Rate */
17 | private String usdCrossRate;
18 |
19 | /** Parity */
20 | private String parity;
21 |
22 | /** Currency Code(Numerical) */
23 | private String currencyCode;
24 |
25 | /** Banknote Buying */
26 | private String banknoteBuying;
27 |
28 | /** Currency Code(Alpha-3) */
29 | private String currencyCodeAlpha;
30 |
31 | /** Banknote Selling */
32 | private String banknoteSelling;
33 |
34 | /** Unit (Y:100, B:1) */
35 | private String unit;
36 |
37 | public String getSellPrice() {
38 | return sellPrice;
39 | }
40 |
41 | public void setSellPrice(String sellPrice) {
42 | this.sellPrice = sellPrice;
43 | }
44 |
45 | public String getBuyPrice() {
46 | return buyPrice;
47 | }
48 |
49 | public void setBuyPrice(String buyPrice) {
50 | this.buyPrice = buyPrice;
51 | }
52 |
53 | public String getUsdCrossRate() {
54 | return usdCrossRate;
55 | }
56 |
57 | public void setUsdCrossRate(String usdCrossRate) {
58 | this.usdCrossRate = usdCrossRate;
59 | }
60 |
61 | public String getParity() {
62 | return parity;
63 | }
64 |
65 | public void setParity(String parity) {
66 | this.parity = parity;
67 | }
68 |
69 | public String getCurrencyCode() {
70 | return currencyCode;
71 | }
72 |
73 | public void setCurrencyCode(String currencyCode) {
74 | this.currencyCode = currencyCode;
75 | }
76 |
77 | public String getBanknoteBuying() {
78 | return banknoteBuying;
79 | }
80 |
81 | public void setBanknoteBuying(String banknoteBuying) {
82 | this.banknoteBuying = banknoteBuying;
83 | }
84 |
85 | public String getCurrencyCodeAlpha() {
86 | return currencyCodeAlpha;
87 | }
88 |
89 | public void setCurrencyCodeAlpha(String currencyCodeAlpha) {
90 | this.currencyCodeAlpha = currencyCodeAlpha;
91 | }
92 |
93 | public String getBanknoteSelling() {
94 | return banknoteSelling;
95 | }
96 |
97 | public void setBanknoteSelling(String banknoteSelling) {
98 | this.banknoteSelling = banknoteSelling;
99 | }
100 |
101 | public String getUnit() {
102 | return unit;
103 | }
104 |
105 | public void setUnit(String unit) {
106 | this.unit = unit;
107 | }
108 |
109 | }
110 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/models/StockValuesModel.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.models;
2 |
3 | /**
4 | *
5 | * @author Onur Arslan onurarslan.org
6 | */
7 | public class StockValuesModel {
8 |
9 | /** Last value. */
10 | private String last;
11 |
12 | /** Previous close value. */
13 | private String previousClose;
14 |
15 | /** Change value. */
16 | private String change;
17 |
18 | /** Best buying price. */
19 | private String bestBuy;
20 |
21 | /** Best selling price */
22 | private String bestSell;
23 |
24 | /** Current hour.(hhmmss) */
25 | private String hour;
26 |
27 | /** Peak value of stock. */
28 | private String max;
29 |
30 | /** Group symbol of stock. */
31 | private String groupSymbol;
32 |
33 | /** Status of stock. */
34 | private String stockStatus;
35 |
36 | /** Symbol of stock. */
37 | private String symbol;
38 |
39 | /** Name of stock. */
40 | private String name;
41 |
42 | public String getLast() {
43 | return last;
44 | }
45 |
46 | public void setLast(String last) {
47 | this.last = last;
48 | }
49 |
50 | public String getPreviousClose() {
51 | return previousClose;
52 | }
53 |
54 | public void setPreviousClose(String previousClose) {
55 | this.previousClose = previousClose;
56 | }
57 |
58 | public String getChange() {
59 | return change;
60 | }
61 |
62 | public void setChange(String change) {
63 | this.change = change;
64 | }
65 |
66 | public String getBestBuy() {
67 | return bestBuy;
68 | }
69 |
70 | public void setBestBuy(String bestBuy) {
71 | this.bestBuy = bestBuy;
72 | }
73 |
74 | public String getBestSell() {
75 | return bestSell;
76 | }
77 |
78 | public void setBestSell(String bestSell) {
79 | this.bestSell = bestSell;
80 | }
81 |
82 | public String getHour() {
83 | return hour;
84 | }
85 |
86 | public void setHour(String hour) {
87 | this.hour = hour;
88 | }
89 |
90 | public String getMax() {
91 | return max;
92 | }
93 |
94 | public void setMax(String max) {
95 | this.max = max;
96 | }
97 |
98 | public String getGroupSymbol() {
99 | return groupSymbol;
100 | }
101 |
102 | public void setGroupSymbol(String groupSymbol) {
103 | this.groupSymbol = groupSymbol;
104 | }
105 |
106 | public String getStockStatus() {
107 | return stockStatus;
108 | }
109 |
110 | public void setStockStatus(String stockStatus) {
111 | this.stockStatus = stockStatus;
112 | }
113 |
114 | public String getSymbol() {
115 | return symbol;
116 | }
117 |
118 | public void setSymbol(String symbol) {
119 | this.symbol = symbol;
120 | }
121 |
122 | public String getName() {
123 | return name;
124 | }
125 |
126 | public void setName(String name) {
127 | this.name = name;
128 | }
129 |
130 | }
131 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/api/IFindATM.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.api;
2 |
3 | import java.util.List;
4 | import org.akbank4j.core.Akbank4J;
5 | import org.akbank4j.core.models.FindAtmModel;
6 | import org.akbank4j.core.request.FindRequest;
7 |
8 | /**
9 | * Bu API belirtilen arama alanında ATM bulmanızı sağlar.
10 | *
11 | * @author Onur Arslan onurarslan.org
12 | */
13 | public interface IFindATM {
14 |
15 | /**
16 | * Belirtilen arama alanında ATM bulmanızı sağlar.
17 | * {@code Akbank4J> findATM = akbank.getFindATM("41.008238", "28.978359", "1000", null, null, null);}
18 | *
19 | * @param latitude Enlem
20 | * @param longitude Boylam
21 | * @param radius Yarıçap
22 | * @param city İl
23 | * @param district İlçe
24 | * @param searchText Arama Metni
25 | *
26 | * @return Akbank4J
27 | */
28 | public Akbank4J> getFindATM(String latitude, String longitude, String radius,
29 | String city, String district, String searchText);
30 |
31 | /**
32 | * Belirtilen arama alanında ATM bulmanızı sağlar.
33 | * {@code Akbank4J> findATM = akbank.getFindATM(41.008238, 28.978359, 1000, null, null, null);}
34 | *
35 | * @param latitude Enlem
36 | * @param longitude Boylam
37 | * @param radius Yarıçap
38 | * @param city İl
39 | * @param district İlçe
40 | * @param searchText Arama Metni
41 | *
42 | * @return Akbank4J
43 | */
44 | public Akbank4J> getFindATM(double latitude, double longitude, int radius, String city,
45 | String district, String searchText);
46 |
47 | /**
48 | * Belirtilen arama alanında ATM bulmanızı sağlar.
49 | * {@code Akbank4J> findATM = akbank.getFindATM("41.008238", "28.978359", "1000");}
50 | *
51 | * @param latitude Enlem
52 | * @param longitude Boylam
53 | * @param radius Yarıçap
54 | *
55 | * @return Akbank4J
56 | */
57 | public Akbank4J> getFindATM(String latitude, String longitude, String radius);
58 |
59 | /**
60 | * Belirtilen arama alanında ATM bulmanızı sağlar.
61 | * {@code Akbank4J> findATM = akbank.getFindATM(41.008238, 28.978359, 1000);}
62 | *
63 | * @param latitude Enlem
64 | * @param longitude Boylam
65 | * @param radius Yarıçap
66 | *
67 | * @return Akbank4J
68 | */
69 | public Akbank4J> getFindATM(double latitude, double longitude, int radius);
70 |
71 | /**
72 | * Belirtilen arama alanında ATM bulmanızı sağlar.
73 | * {@code FindRequest atmReq = new FindRequest("41.008238", "28.978359", "1000", null, null, null);
74 | * Akbank4J> findATM = akbank.getFindATM(atmReq);}
75 | *
76 | * @param findATM FindRequest.class
77 | *
78 | * @return Akbank4J
79 | */
80 | public Akbank4J> getFindATM(FindRequest findATM);
81 |
82 | }
83 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/api/IFindBranch.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.api;
2 |
3 | import org.akbank4j.core.Akbank4J;
4 | import org.akbank4j.core.models.FindBranchModel;
5 | import org.akbank4j.core.request.FindRequest;
6 |
7 | /**
8 | * Bu API belirtilen arama alanında yakın şube bulmanızı sağlar.
9 | *
10 | * @author Onur Arslan onurarslan.org
11 | */
12 | public interface IFindBranch {
13 |
14 | /**
15 | * Belirtilen arama alanında yakın şube bulmanızı sağlar.
16 | * {@code Akbank4J findBranch = akbank.getFindBranch("41.008238", "28.978359", "1000", null, null, null);}
17 | *
18 | * @param latitude Enlem
19 | * @param longitude Boylam
20 | * @param radius Yarıçap
21 | * @param city İl
22 | * @param district İlçe
23 | * @param searchText Arama Metni
24 | *
25 | * @return Akbank4J
26 | */
27 | public Akbank4J getFindBranch(String latitude, String longitude, String radius,
28 | String city, String district,
29 | String searchText);
30 |
31 | /**
32 | * Belirtilen arama alanında yakın şube bulmanızı sağlar.
33 | * {@code Akbank4J findBranch = akbank.getFindBranch(41.008238, 28.978359, 1000, null, null, null);}
34 | *
35 | * @param latitude Enlem
36 | * @param longitude Boylam
37 | * @param radius Yarıçap
38 | * @param city İl
39 | * @param district İlçe
40 | * @param searchText Arama Metni
41 | *
42 | * @return Akbank4J
43 | */
44 | public Akbank4J getFindBranch(double latitude, double longitude, int radius, String city,
45 | String district, String searchText);
46 |
47 | /**
48 | * Belirtilen arama alanında yakın şube bulmanızı sağlar.
49 | * {@code Akbank4J findBranch = akbank.getFindBranch("41.008238", "28.978359", "1000");}
50 | *
51 | * @param latitude Enlem
52 | * @param longitude Boylam
53 | * @param radius Yarıçap
54 | *
55 | * @return Akbank4J
56 | */
57 | public Akbank4J getFindBranch(String latitude, String longitude, String radius);
58 |
59 | /**
60 | * Belirtilen arama alanında yakın şube bulmanızı sağlar.
61 | * {@code Akbank4J findBranch = akbank.getFindBranch(41.008238, 28.978359, 1000);}
62 | *
63 | * @param latitude Enlem
64 | * @param longitude Boylam
65 | * @param radius Yarıçap
66 | *
67 | * @return Akbank4J
68 | */
69 | public Akbank4J getFindBranch(double latitude, double longitude, int radius);
70 |
71 | /**
72 | * Belirtilen arama alanında yakın şube bulmanızı sağlar.
73 | * {@code FindRequest branchReq = new FindRequest("41.008238", "28.978359", "1000", null, null, null);
74 | * Akbank4J findBranch = akbank.getFindBranch(branchReq);}
75 | *
76 | * @param findBranch FindRequest.class
77 | *
78 | * @return Akbank4J
79 | */
80 | public Akbank4J getFindBranch(FindRequest findBranch);
81 |
82 | }
83 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/request/FindRequest.java:
--------------------------------------------------------------------------------
1 | /*
2 | * To change this license header, choose License Headers in Project Properties.
3 | * To change this template file, choose Tools | Templates
4 | * and open the template in the editor.
5 | */
6 | package org.akbank4j.core.request;
7 |
8 | /**
9 | * This API allows you to find ATMs in the specified search area or This API allows you to find nearest branches in the
10 | * specified search area.
11 | *
12 | * @author Onur Arslan onurarslan.org
13 | */
14 | public class FindRequest {
15 |
16 | /** Latitude of geo-point to search near. If longitude or radius is provided, latitude must also be provided. */
17 | private String latitude;
18 |
19 | /** Longitude of geo-point to search near. If langitude or radius is provided, longitude must also be provided. */
20 | private String longitude;
21 |
22 | /** Defines the distance (in meters) within which to return place results. If langitude or longitude is provided,
23 | * radius must also be provided. */
24 | private String radius;
25 |
26 | /** City of ATM or branch. (Optional) */
27 | private String city;
28 |
29 | /** District of ATM or branch. (Optional) */
30 | private String district;
31 |
32 | /** The text string on which to search, for example: "İstanbul", "akbank", "ank". (Optional) */
33 | private String searchText;
34 |
35 | private FindRequest() {
36 | }
37 |
38 | public FindRequest(String latitude, String longitude, String radius,
39 | String city, String district, String searchText) {
40 | this.latitude = latitude;
41 | this.longitude = longitude;
42 | this.radius = radius;
43 | this.city = city;
44 | this.district = district;
45 | this.searchText = searchText;
46 | }
47 |
48 | public FindRequest(double latitude, double longitude, int radius,
49 | String city, String district, String searchText) {
50 | this(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius), city, district, searchText);
51 | }
52 |
53 | public FindRequest(String latitude, String longitude, String radius) {
54 | this(latitude, longitude, radius, null, null, null);
55 | }
56 |
57 | public FindRequest(double latitude, double longitude, int radius) {
58 | this(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius));
59 | }
60 |
61 | public String getLatitude() {
62 | return latitude;
63 | }
64 |
65 | public void setLatitude(String latitude) {
66 | this.latitude = latitude;
67 | }
68 |
69 | public String getLongitude() {
70 | return longitude;
71 | }
72 |
73 | public void setLongitude(String longitude) {
74 | this.longitude = longitude;
75 | }
76 |
77 | public String getRadius() {
78 | return radius;
79 | }
80 |
81 | public void setRadius(String radius) {
82 | this.radius = radius;
83 | }
84 |
85 | public String getCity() {
86 | return city;
87 | }
88 |
89 | public void setCity(String city) {
90 | this.city = city;
91 | }
92 |
93 | public String getDistrict() {
94 | return district;
95 | }
96 |
97 | public void setDistrict(String district) {
98 | this.district = district;
99 | }
100 |
101 | public String getSearchText() {
102 | return searchText;
103 | }
104 |
105 | public void setSearchText(String searchText) {
106 | this.searchText = searchText;
107 | }
108 |
109 | }
110 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/api/ICreditPaymentPlan.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.api;
2 |
3 | import java.util.Date;
4 | import org.akbank4j.core.Akbank4J;
5 | import org.akbank4j.core.models.CreditPaymentPlanModel;
6 | import org.akbank4j.core.request.CreditPaymentPlanRequest;
7 |
8 | /**
9 | * Bu API, kredi ödeme planını almanızı sağlar.
10 | *
11 | * @author Onur Arslan onurarslan.org
12 | */
13 | public interface ICreditPaymentPlan {
14 |
15 | /**
16 | * Kredi ödeme planı almanızı sağlar.
17 | * {@code Akbank4J creditPaymentPlan = akbank.getCreditPaymentPlan("0.1234", "1.25", "0.1034", "2015-11-10", "2015-11-10", "5000", "10", "36");}
18 | *
19 | * @param bsmv Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı. (Gereklidir)
20 | * @param interest Faiz oranı. (Gereklidir)
21 | * @param kkdf Kaynak Kullanım Destekleme Fonu. (Gereklidir)
22 | * @param loanStartDate İlk ödemenin tarihi .Yyyy-AA-gg biçimindedir. (Gereklidir)
23 | * @param loanUsingDate Kredi fonlarının alındığı tarih .yyyy-AA-gg biçiminde. (Gereklidir)
24 | * @param loanAmount Kredinin miktarı. (Gereklidir)
25 | * @param expenseAmount Masraf tutarı. (Gereklidir)
26 | * @param term Aylık vadesi. (Gereklidir)
27 | *
28 | * @return Akbank4J
29 | */
30 | public Akbank4J getCreditPaymentPlan(String bsmv, String interest, String kkdf,
31 | String loanStartDate, String loanUsingDate,
32 | String loanAmount, String expenseAmount,
33 | String term);
34 |
35 | /**
36 | * Kredi ödeme planı almanızı sağlar.
37 | * {@code Date startDate = Date.valueOf("2015-11-10");
38 | * Date usingDate = Date.valueOf("2015-11-10");
39 | * Akbank4J creditPaymentPlan = akbank.getCreditPaymentPlan(0.1234, 1.25, 0.1034, startDate, usingDate, 5000, 10, 36);}
40 | *
41 | * @param bsmv Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı. (Gereklidir)
42 | * @param interest Faiz oranı. (Gereklidir)
43 | * @param kkdf Kaynak Kullanım Destekleme Fonu. (Gereklidir)
44 | * @param loanStartDate İlk ödemenin tarihi .Yyyy-AA-gg biçimindedir. (Gereklidir)
45 | * @param loanUsingDate Kredi fonlarının alındığı tarih .yyyy-AA-gg biçiminde. (Gereklidir)
46 | * @param loanAmount Kredinin miktarı. (Gereklidir)
47 | * @param expenseAmount Masraf tutarı. (Gereklidir)
48 | * @param term Aylık vadesi. (Gereklidir)
49 | *
50 | * @return Akbank4J
51 | */
52 | public Akbank4J getCreditPaymentPlan(double bsmv, double interest, double kkdf,
53 | Date loanStartDate, Date loanUsingDate,
54 | int loanAmount, int expenseAmount, int term);
55 |
56 | /**
57 | * Kredi ödeme planı almanızı sağlar.
58 | *
59 | * {@code CreditPaymentPlanRequest creditPaymentReq = new CreditPaymentPlanRequest("0.1234", "1.25", "0.1034", "2015-11-10", "2015-11-10", "5000", "10", "36");
60 | * Akbank4J test = akbank.getCreditPaymentPlan(creditPaymentReq);}
61 | *
62 | * @param creditPaymentPlan CreditPaymentPlanRequest.class
63 | *
64 | * @return Akbank4J
65 | */
66 | public Akbank4J getCreditPaymentPlan(CreditPaymentPlanRequest creditPaymentPlan);
67 |
68 | }
69 |
--------------------------------------------------------------------------------
/akbank4j-example/src/main/java/org/akbank4j/example/DovizKuru.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.example;
2 |
3 | import java.sql.Date;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.api.IAkbank;
6 | import org.akbank4j.core.conf.Configuration;
7 | import org.akbank4j.core.models.ExchangeRatesModel;
8 |
9 | /**
10 | *
11 | * @author onur
12 | */
13 | public class DovizKuru {
14 |
15 | public static void main(String[] args) {
16 | Configuration conf = new Configuration("your_api_key_name", "your_api_key");
17 | IAkbank akbank = Akbank.getInstance(conf);
18 |
19 | //***************PARAMETRESİS********************************//
20 | ExchangeRatesModel kur = akbank.getExchangeRates().getData();
21 | System.out.println("Satış Fiyatı: " + kur.getSellPrice());
22 | System.out.println("Alış Fiyatı: " + kur.getBuyPrice());
23 | System.out.println("USD Çapraz Kur: " + kur.getUsdCrossRate());
24 | System.out.println("Parite: " + kur.getParity());
25 | System.out.println("Para Birimi Kodu: " + kur.getCurrencyCode());
26 | System.out.println("Banknot Alış: " + kur.getBanknoteBuying());
27 | System.out.println("Banknot Satış: " + kur.getBanknoteSelling());
28 | System.out.println("Para Birimi Alfa Kodu: " + kur.getCurrencyCodeAlpha());
29 | System.out.println("Birim: " + kur.getUnit());
30 | System.out.println();
31 |
32 | //****************TEK PARAMETRE TARİH*************///////
33 | Date date = Date.valueOf("2016-02-01");
34 | kur = akbank.getExchangeRates(date).getData();
35 | System.out.println("Satış Fiyatı: " + kur.getSellPrice());
36 | System.out.println("Alış Fiyatı: " + kur.getBuyPrice());
37 | System.out.println("USD Çapraz Kur: " + kur.getUsdCrossRate());
38 | System.out.println("Parite: " + kur.getParity());
39 | System.out.println("Para Birimi Kodu: " + kur.getCurrencyCode());
40 | System.out.println("Banknot Alış: " + kur.getBanknoteBuying());
41 | System.out.println("Banknot Satış: " + kur.getBanknoteSelling());
42 | System.out.println("Para Birimi Alfa Kodu: " + kur.getCurrencyCodeAlpha());
43 | System.out.println("Birim: " + kur.getUnit());
44 | System.out.println();
45 |
46 | //*********************TEK PAREMETRE PARA BİRİMİ KODU********************
47 | kur = akbank.getExchangeRates("002").getData();
48 | System.out.println("Satış Fiyatı: " + kur.getSellPrice());
49 | System.out.println("Alış Fiyatı: " + kur.getBuyPrice());
50 | System.out.println("USD Çapraz Kur: " + kur.getUsdCrossRate());
51 | System.out.println("Parite: " + kur.getParity());
52 | System.out.println("Para Birimi Kodu: " + kur.getCurrencyCode());
53 | System.out.println("Banknot Alış: " + kur.getBanknoteBuying());
54 | System.out.println("Banknot Satış: " + kur.getBanknoteSelling());
55 | System.out.println("Para Birimi Alfa Kodu: " + kur.getCurrencyCodeAlpha());
56 | System.out.println("Birim: " + kur.getUnit());
57 | System.out.println();
58 |
59 | //*******************İKİ PARAMETRE*******************////
60 | kur = akbank.getExchangeRates("001", date).getData();
61 | System.out.println("Satış Fiyatı: " + kur.getSellPrice());
62 | System.out.println("Alış Fiyatı: " + kur.getBuyPrice());
63 | System.out.println("USD Çapraz Kur: " + kur.getUsdCrossRate());
64 | System.out.println("Parite: " + kur.getParity());
65 | System.out.println("Para Birimi Kodu: " + kur.getCurrencyCode());
66 | System.out.println("Banknot Alış: " + kur.getBanknoteBuying());
67 | System.out.println("Banknot Satış: " + kur.getBanknoteSelling());
68 | System.out.println("Para Birimi Alfa Kodu: " + kur.getCurrencyCodeAlpha());
69 | System.out.println("Birim: " + kur.getUnit());
70 | System.out.println();
71 |
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/models/CreditInterestRatesModel.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.models;
2 |
3 | import java.util.List;
4 | import org.akbank4j.core.records.CreditInterestRecord;
5 |
6 | /**
7 | *
8 | * @author Onur Arslan onurarslan.org
9 | */
10 | public class CreditInterestRatesModel {
11 |
12 | /** Loan start date.In the format yyyy-MM-dd */
13 | private String applicationStartDate;
14 |
15 | /** Loan end date.In the format yyyy-MM-dd */
16 | private String applicationEndDate;
17 |
18 | /** Minumum loan term.Term in months. */
19 | private String minTerm;
20 |
21 | /** Maximum loan term.Term in months. */
22 | private String maxTerm;
23 |
24 | /** Minimum amount of the loan. */
25 | private String minAmount;
26 |
27 | /** Maximum amount of the loan. */
28 | private String maxAmount;
29 |
30 | /** Tax rate of loan. */
31 | private String taxRate;
32 |
33 | /** Fund rate of loan. */
34 | private String fundRate;
35 |
36 | /** The amount of the expense. */
37 | private String expenseAmount;
38 |
39 | /** Interest Term. */
40 | private String interestTerm;
41 |
42 | /** Interest Count. */
43 | private String interestCount;
44 |
45 | /** Total amount of loan. */
46 | private String creditAmount;
47 |
48 | /** Interest rate on the loan. */
49 | private String rate;
50 |
51 | /** Interest minterm, maxterm and rate list */
52 | public List interestArrayList;
53 |
54 | public String getApplicationStartDate() {
55 | return applicationStartDate;
56 | }
57 |
58 | public void setApplicationStartDate(String applicationStartDate) {
59 | this.applicationStartDate = applicationStartDate;
60 | }
61 |
62 | public String getApplicationEndDate() {
63 | return applicationEndDate;
64 | }
65 |
66 | public void setApplicationEndDate(String applicationEndDate) {
67 | this.applicationEndDate = applicationEndDate;
68 | }
69 |
70 | public String getMinTerm() {
71 | return minTerm;
72 | }
73 |
74 | public void setMinTerm(String minTerm) {
75 | this.minTerm = minTerm;
76 | }
77 |
78 | public String getMaxTerm() {
79 | return maxTerm;
80 | }
81 |
82 | public void setMaxTerm(String maxTerm) {
83 | this.maxTerm = maxTerm;
84 | }
85 |
86 | public String getMinAmount() {
87 | return minAmount;
88 | }
89 |
90 | public void setMinAmount(String minAmount) {
91 | this.minAmount = minAmount;
92 | }
93 |
94 | public String getMaxAmount() {
95 | return maxAmount;
96 | }
97 |
98 | public void setMaxAmount(String maxAmount) {
99 | this.maxAmount = maxAmount;
100 | }
101 |
102 | public String getTaxRate() {
103 | return taxRate;
104 | }
105 |
106 | public void setTaxRate(String taxRate) {
107 | this.taxRate = taxRate;
108 | }
109 |
110 | public String getFundRate() {
111 | return fundRate;
112 | }
113 |
114 | public void setFundRate(String fundRate) {
115 | this.fundRate = fundRate;
116 | }
117 |
118 | public String getExpenseAmount() {
119 | return expenseAmount;
120 | }
121 |
122 | public void setExpenseAmount(String expenseAmount) {
123 | this.expenseAmount = expenseAmount;
124 | }
125 |
126 | public String getInterestTerm() {
127 | return interestTerm;
128 | }
129 |
130 | public void setInterestTerm(String interestTerm) {
131 | this.interestTerm = interestTerm;
132 | }
133 |
134 | public String getInterestCount() {
135 | return interestCount;
136 | }
137 |
138 | public void setInterestCount(String interestCount) {
139 | this.interestCount = interestCount;
140 | }
141 |
142 | public String getCreditAmount() {
143 | return creditAmount;
144 | }
145 |
146 | public void setCreditAmount(String creditAmount) {
147 | this.creditAmount = creditAmount;
148 | }
149 |
150 | public String getRate() {
151 | return rate;
152 | }
153 |
154 | public void setRate(String rate) {
155 | this.rate = rate;
156 | }
157 |
158 | public List getInterestArrayList() {
159 | return interestArrayList;
160 | }
161 |
162 | public void setInterestArrayList(List interestArrayList) {
163 | this.interestArrayList = interestArrayList;
164 | }
165 |
166 | }
167 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/request/CreditCardAppRequest.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.request;
2 |
3 | /**
4 | * This API allows you to apply for Akbank credit card.
5 | *
6 | * @author Onur Arslan onurarslan.org
7 | */
8 | public class CreditCardAppRequest {
9 |
10 | /** Credit Card applicant name (Required) */
11 | private String name;
12 |
13 | /** Credit Card applicant second name (Optional) */
14 | private String secondName;
15 |
16 | /** Credit Card applicant surname (Required) */
17 | private String surname;
18 |
19 | /** Credit Card applicant email address. (Required) */
20 | private String email;
21 |
22 | /** Credit Card applicant phone number. In the format of 5XX1234567. (Required) */
23 | private String phoneNumber;
24 |
25 | /** Turkish identity number of the credit card applicant. (Required) */
26 | private String identityNumber;
27 |
28 | /** Application name of the API consumer application (Required) */
29 | private String application;
30 |
31 | /**
32 | * Kredi kartı isteği bulunurken parametreyi sınıf olarak göndermek istenildiğinde kullanılır.
33 | */
34 | public CreditCardAppRequest() {
35 | }
36 |
37 | /**
38 | * Kredi kartı isteği bulunurken parametreyi sınıf olarak göndermek istenildiğinde kullanılır. Bu kullanımda ikinci ad
39 | * yoktur.
40 | * {@code CreditCardAppRequest creditCardReq = new CreditCardAppRequest("Ali", "Doğru", "ali.dogru@akbank.com", "05359112233", "127762123454", "ApplicationX");}
41 | *
42 | * @param name Ad
43 | * @param surname Soyad
44 | * @param email E-Posta
45 | * @param phoneNumber Telefon
46 | * @param identityNumber T.C Kimlik No
47 | * @param application Uygulama
48 | */
49 | public CreditCardAppRequest(String name, String surname, String email,
50 | String phoneNumber, String identityNumber, String application) {
51 | this.name = name;
52 | this.secondName = null;
53 | this.surname = surname;
54 | this.email = email;
55 | this.phoneNumber = phoneNumber;
56 | this.identityNumber = identityNumber;
57 | this.application = application;
58 |
59 | }
60 |
61 | /**
62 | * Kredi kartı isteği bulunurken parametreyi sınıf olarak göndermek istenildiğinde kullanılır. Bu kullanımda ikinci ad
63 | * vardır.
64 | * {@code CreditCardAppRequest creditCardReq = new CreditCardAppRequest("Ali", "Veli", "Doğru", "ali.dogru@akbank.com", "05359112233", "127762123454", "ApplicationX");}
65 | *
66 | * @param name Ad
67 | * @param secondName İkinci Ad
68 | * @param surname Soyad
69 | * @param email E-Posta
70 | * @param phoneNumber Telefon
71 | * @param identityNumber T.C Kimlik No
72 | * @param application Uygulama
73 | */
74 | public CreditCardAppRequest(String name, String secondName, String surname, String email,
75 | String phoneNumber, String identityNumber, String application) {
76 | this.name = name;
77 | this.secondName = secondName;
78 | this.surname = surname;
79 | this.email = email;
80 | this.phoneNumber = phoneNumber;
81 | this.identityNumber = identityNumber;
82 | this.application = application;
83 |
84 | }
85 |
86 | public String getName() {
87 | return name;
88 | }
89 |
90 | public void setName(String name) {
91 | this.name = name;
92 | }
93 |
94 | public String getSecondName() {
95 | return secondName;
96 | }
97 |
98 | public void setSecondName(String secondName) {
99 | this.secondName = secondName;
100 | }
101 |
102 | public String getSurname() {
103 | return surname;
104 | }
105 |
106 | public void setSurname(String surname) {
107 | this.surname = surname;
108 | }
109 |
110 | public String getEmail() {
111 | return email;
112 | }
113 |
114 | public void setEmail(String email) {
115 | this.email = email;
116 | }
117 |
118 | public String getPhoneNumber() {
119 | return phoneNumber;
120 | }
121 |
122 | public void setPhoneNumber(String phoneNumber) {
123 | this.phoneNumber = phoneNumber;
124 | }
125 |
126 | public String getIdentityNumber() {
127 | return identityNumber;
128 | }
129 |
130 | public void setIdentityNumber(String identityNumber) {
131 | this.identityNumber = identityNumber;
132 | }
133 |
134 | public String getApplication() {
135 | return application;
136 | }
137 |
138 | public void setApplication(String application) {
139 | this.application = application;
140 | }
141 |
142 | }
143 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 | org.akbank4j
5 | akbank4j-core
6 | 1.0-SNAPSHOT
7 | jar
8 | akbank4j
9 | A Java library for the Akbank API
10 | http://akbank4j.org/
11 |
12 |
13 | Apache License, Version 2.0
14 | http://www.apache.org/licenses/LICENSE-2.0.txt
15 | repo
16 |
17 |
18 |
19 | https://github.com/onurarslan/Akbank4J
20 | scm:git:https://github.com/onurarslan/Akbank4J.git
21 | scm:git:https://github.com/onurarslan/Akbank4J.git
22 |
23 |
24 |
25 |
26 | onurarslan
27 | Onur Arslan
28 | onurrarslan@hotmail.com
29 | http://www.onurarslan.org
30 |
31 | developer
32 |
33 | 3
34 |
35 |
36 |
37 |
38 | UTF-8
39 | 1.8
40 | 1.8
41 |
42 |
43 |
44 |
45 |
46 | com.sun.jersey
47 | jersey-client
48 | 1.19.3
49 |
50 |
51 |
52 | org.apache.oltu.oauth2
53 | org.apache.oltu.oauth2.client
54 | 1.0.2
55 |
56 |
57 |
58 | com.google.code.gson
59 | gson
60 | 2.8.0
61 |
62 |
63 |
64 | junit
65 | junit
66 | 4.12
67 |
68 |
69 |
70 |
71 | java8-doclint-disabled
72 |
73 | [1.8,)
74 |
75 |
76 | -Xdoclint:none
77 |
78 |
79 |
80 |
81 | install
82 |
83 |
84 | org.apache.maven.plugins
85 | maven-surefire-plugin
86 | 2.19.1
87 |
88 | true
89 |
90 |
91 |
92 | org.apache.maven.plugins
93 | maven-javadoc-plugin
94 | 2.9
95 |
96 |
97 | attach-javadocs
98 |
99 | jar
100 |
101 |
102 | ${javadoc.opts}
103 |
104 |
105 |
106 |
107 |
108 | org.apache.maven.plugins
109 | maven-site-plugin
110 | 3.3
111 |
112 |
113 |
114 | org.apache.maven.plugins
115 | maven-javadoc-plugin
116 |
117 | ${javadoc.opts}
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
--------------------------------------------------------------------------------
/akbank4j-example/src/main/java/org/akbank4j/example/KrediOdemePlani.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.example;
2 |
3 | import java.sql.Date;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.api.IAkbank;
6 | import org.akbank4j.core.conf.Configuration;
7 | import org.akbank4j.core.models.CreditPaymentPlanModel;
8 | import org.akbank4j.core.records.CreditPaymentPlanRecords;
9 | import org.akbank4j.core.request.CreditPaymentPlanRequest;
10 |
11 | /**
12 | * Kredi ödeme planı almanızı sağlar.
13 | *
14 | * @author Onur Arslan
15 | */
16 | public class KrediOdemePlani {
17 |
18 | public static void main(String[] args) {
19 | Configuration conf = new Configuration("your_api_key_name", "your_api_key");
20 | IAkbank akbank = Akbank.getInstance(conf);
21 |
22 | //*****************PARAMETRE NESNE KULLANMADAN****************//
23 | CreditPaymentPlanModel krediOdemePlani = akbank.getCreditPaymentPlan("0.1234", "1.25", "0.1034", "2015-11-10",
24 | "2015-11-10", "5000", "10", "36").getData();
25 | for (CreditPaymentPlanRecords krediKayitlari : krediOdemePlani.getPaymentPlanList()) {
26 | System.out.println("Anapara Tutarı: " + krediKayitlari.getPrincipal());
27 | System.out.println("Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı: " + krediKayitlari.getBitt());
28 | System.out.println("Fiz Miktarı: " + krediKayitlari.getInterest());
29 | System.out.println("Kalan Anapara Miktarı: " + krediKayitlari.getRemainingPrincipal());
30 | System.out.println("Kaynak Kullanımı Destekleme Fonu: " + krediKayitlari.getKkdf());
31 | System.out.println("Dönem Sayısı: " + krediKayitlari.getPeriod());
32 | System.out.println("Taksit Miktarı: " + krediKayitlari.getMonthlyPayment());
33 | System.out.println("Kredi Ödeme Tarihi: " + krediKayitlari.getDate());
34 | System.out.println();
35 | }
36 |
37 | //*****************PARAMETRE NESNE KULLANMADAN STRİNG HARİÇ TİPLER*******/////////
38 | Date startDate = Date.valueOf("2015-11-10");
39 | Date usingDate = Date.valueOf("2015-11-10");
40 | krediOdemePlani = akbank.getCreditPaymentPlan(0.1234, 1.25, 0.1034, startDate, usingDate, 5000, 10, 36).getData();
41 | for (CreditPaymentPlanRecords krediKayitlari : krediOdemePlani.getPaymentPlanList()) {
42 | System.out.println("Anapara Tutarı: " + krediKayitlari.getPrincipal());
43 | System.out.println("Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı: " + krediKayitlari.getBitt());
44 | System.out.println("Fiz Miktarı: " + krediKayitlari.getInterest());
45 | System.out.println("Kalan Anapara Miktarı: " + krediKayitlari.getRemainingPrincipal());
46 | System.out.println("Kaynak Kullanımı Destekleme Fonu: " + krediKayitlari.getKkdf());
47 | System.out.println("Dönem Sayısı: " + krediKayitlari.getPeriod());
48 | System.out.println("Taksit Miktarı: " + krediKayitlari.getMonthlyPayment());
49 | System.out.println("Kredi Ödeme Tarihi: " + krediKayitlari.getDate());
50 | System.out.println();
51 | }
52 |
53 | //************PARAMETRE NESNE KULLANARAK*************************//
54 | CreditPaymentPlanRequest krediOdemePlaniParam = new CreditPaymentPlanRequest("0.1234", "1.25", "0.1034",
55 | "2015-11-10", "2015-11-10",
56 | "5000", "10", "36");
57 | krediOdemePlani = akbank.getCreditPaymentPlan(krediOdemePlaniParam).getData();
58 | for (CreditPaymentPlanRecords krediKayitlari : krediOdemePlani.getPaymentPlanList()) {
59 | System.out.println("Anapara Tutarı: " + krediKayitlari.getPrincipal());
60 | System.out.println("Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı: " + krediKayitlari.getBitt());
61 | System.out.println("Fiz Miktarı: " + krediKayitlari.getInterest());
62 | System.out.println("Kalan Anapara Miktarı: " + krediKayitlari.getRemainingPrincipal());
63 | System.out.println("Kaynak Kullanımı Destekleme Fonu: " + krediKayitlari.getKkdf());
64 | System.out.println("Dönem Sayısı: " + krediKayitlari.getPeriod());
65 | System.out.println("Taksit Miktarı: " + krediKayitlari.getMonthlyPayment());
66 | System.out.println("Kredi Ödeme Tarihi: " + krediKayitlari.getDate());
67 | System.out.println();
68 | }
69 |
70 | //**********PARAMETRE NESNE KULLANARAK STRİNG HARİÇ TİPLER*****///////////////
71 | krediOdemePlaniParam = new CreditPaymentPlanRequest(0.1234, 1.25, 0.1034, startDate, usingDate, 5000, 10, 36);
72 | krediOdemePlani = akbank.getCreditPaymentPlan(krediOdemePlaniParam).getData();
73 | for (CreditPaymentPlanRecords krediKayitlari : krediOdemePlani.getPaymentPlanList()) {
74 | System.out.println("Anapara Tutarı: " + krediKayitlari.getPrincipal());
75 | System.out.println("Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı: " + krediKayitlari.getBitt());
76 | System.out.println("Fiz Miktarı: " + krediKayitlari.getInterest());
77 | System.out.println("Kalan Anapara Miktarı: " + krediKayitlari.getRemainingPrincipal());
78 | System.out.println("Kaynak Kullanımı Destekleme Fonu: " + krediKayitlari.getKkdf());
79 | System.out.println("Dönem Sayısı: " + krediKayitlari.getPeriod());
80 | System.out.println("Taksit Miktarı: " + krediKayitlari.getMonthlyPayment());
81 | System.out.println("Kredi Ödeme Tarihi: " + krediKayitlari.getDate());
82 | System.out.println();
83 | }
84 |
85 | }
86 |
87 | }
88 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/request/CreditPaymentPlanRequest.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.request;
2 |
3 | import java.util.Date;
4 | import org.akbank4j.core.Akbank4jDateUtil;
5 |
6 | /**
7 | * This API allows you to get credit payment plan.
8 | *
9 | * @author Onur Arslan onurarslan.org
10 | */
11 | public class CreditPaymentPlanRequest {
12 |
13 | /** Banking and Insurance Transactions Tax Amount. (Required) */
14 | private String bsmv;
15 |
16 | /** Interest rate. (Required) */
17 | private String interest;
18 |
19 | /** Resource Utilization Support Fund. (Required) */
20 | private String kkdf;
21 |
22 | /** The date of the first payment.In the format yyyy-MM-dd. (Required) */
23 | private String loanStartDate;
24 |
25 | /** The date of loan funds are received.In the format yyyy-MM-dd. (Required) */
26 | private String loanUsingDate;
27 |
28 | /** The amount of the loan. (Required) */
29 | private String loanAmount;
30 |
31 | /** The amount of the expense. (Required) */
32 | private String expenseAmount;
33 |
34 | /** Term in months. (Required) */
35 | private String term;
36 |
37 | public CreditPaymentPlanRequest() {
38 | }
39 |
40 | /**
41 | * Kredi ödeme planı almanızı sağlar.
42 | *
43 | * {@code CreditPaymentPlanRequest creditPaymentReq = new CreditPaymentPlanRequest("0.1234", "1.25", "0.1034", "2015-11-10", "2015-11-10", "5000", "10", "36");}
44 | *
45 | * @param bsmv Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı. (Gereklidir)
46 | * @param interest Faiz oranı. (Gereklidir)
47 | * @param kkdf Kaynak Kullanım Destekleme Fonu. (Gereklidir)
48 | * @param loanStartDate İlk ödemenin tarihi .Yyyy-AA-gg biçimindedir. (Gereklidir)
49 | * @param loanUsingDate Kredi fonlarının alındığı tarih .yyyy-AA-gg biçiminde. (Gereklidir)
50 | * @param loanAmount Kredinin miktarı. (Gereklidir)
51 | * @param expenseAmount Masraf tutarı. (Gereklidir)
52 | * @param term Aylık vadesi. (Gereklidir)
53 | */
54 | public CreditPaymentPlanRequest(String bsmv, String interest, String kkdf, String loanStartDate, String loanUsingDate,
55 | String loanAmount, String expenseAmount, String term) {
56 | this.bsmv = bsmv;
57 | this.interest = interest;
58 | this.kkdf = kkdf;
59 | this.loanStartDate = loanStartDate;
60 | this.loanUsingDate = loanUsingDate;
61 | this.loanAmount = loanAmount;
62 | this.expenseAmount = expenseAmount;
63 | this.term = term;
64 | }
65 |
66 | /**
67 | * Kredi ödeme planı almanızı sağlar.
68 | *
69 | * {@code CreditPaymentPlanRequest creditPaymentReq = new CreditPaymentPlanRequest(0.1234, 1.25, 0.1034, "2015-11-10", "2015-11-10", 5000, 10, 36);}
70 | *
71 | * @param bsmv Bankacılık ve Sigortacılık İşlemleri Vergisi Tutarı. (Gereklidir)
72 | * @param interest Faiz oranı. (Gereklidir)
73 | * @param kkdf Kaynak Kullanım Destekleme Fonu. (Gereklidir)
74 | * @param loanStartDate İlk ödemenin tarihi .Yyyy-AA-gg biçimindedir. (Gereklidir)
75 | * @param loanUsingDate Kredi fonlarının alındığı tarih .yyyy-AA-gg biçiminde. (Gereklidir)
76 | * @param loanAmount Kredinin miktarı. (Gereklidir)
77 | * @param expenseAmount Masraf tutarı. (Gereklidir)
78 | * @param term Aylık vadesi. (Gereklidir)
79 | */
80 | public CreditPaymentPlanRequest(double bsmv, double interest, double kkdf, Date loanStartDate, Date loanUsingDate,
81 | int loanAmount, int expenseAmount, int term) {
82 | this.bsmv = String.valueOf(bsmv);
83 | this.interest = String.valueOf(interest);
84 | this.kkdf = String.valueOf(kkdf);
85 | this.loanStartDate = Akbank4jDateUtil.toAkbankFormat(loanStartDate);
86 | this.loanUsingDate = Akbank4jDateUtil.toAkbankFormat(loanUsingDate);
87 | this.loanAmount = String.valueOf(loanAmount);
88 | this.expenseAmount = String.valueOf(expenseAmount);
89 | this.term = String.valueOf(term);
90 | }
91 |
92 | public String getBsmv() {
93 | return bsmv;
94 | }
95 |
96 | public void setBsmv(String bsmv) {
97 | this.bsmv = bsmv;
98 | }
99 |
100 | public String getInterest() {
101 | return interest;
102 | }
103 |
104 | public void setInterest(String interest) {
105 | this.interest = interest;
106 | }
107 |
108 | public String getKkdf() {
109 | return kkdf;
110 | }
111 |
112 | public void setKkdf(String kkdf) {
113 | this.kkdf = kkdf;
114 | }
115 |
116 | public String getLoanStartDate() {
117 | return loanStartDate;
118 | }
119 |
120 | public void setLoanStartDate(String loanStartDate) {
121 | this.loanStartDate = loanStartDate;
122 | }
123 |
124 | public String getLoanUsingDate() {
125 | return loanUsingDate;
126 | }
127 |
128 | public void setLoanUsingDate(String loanUsingDate) {
129 | this.loanUsingDate = loanUsingDate;
130 | }
131 |
132 | public String getLoanAmount() {
133 | return loanAmount;
134 | }
135 |
136 | public void setLoanAmount(String loanAmount) {
137 | this.loanAmount = loanAmount;
138 | }
139 |
140 | public String getExpenseAmount() {
141 | return expenseAmount;
142 | }
143 |
144 | public void setExpenseAmount(String expenseAmount) {
145 | this.expenseAmount = expenseAmount;
146 | }
147 |
148 | public String getTerm() {
149 | return term;
150 | }
151 |
152 | public void setTerm(String term) {
153 | this.term = term;
154 | }
155 |
156 | }
157 |
--------------------------------------------------------------------------------
/akbank4j-example/src/main/java/org/akbank4j/example/KrediUygulamasi.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.example;
2 |
3 | import java.io.IOException;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.api.IAkbank;
6 | import org.akbank4j.core.conf.Configuration;
7 | import org.akbank4j.core.models.CreditInterestRatesModel;
8 | import org.akbank4j.core.records.CreditInterestRecord;
9 | import org.akbank4j.core.request.AkbankParameters;
10 |
11 | /**
12 | * Tüketici Kredisi örnek uygulama
13 | *
14 | * @author Onur Arslan
15 | */
16 | public class KrediUygulamasi {
17 |
18 | public static void main(String[] args)
19 | throws IOException {
20 |
21 | Configuration conf = new Configuration("your_api_key_name", "your_api_key");
22 | IAkbank akbank = Akbank.getInstance(conf);
23 |
24 | //**********TÜKETİCİ KREDİSİ************
25 | CreditInterestRatesModel tuketiciKredisi = akbank.getCreditInterestRate(
26 | AkbankParameters.CreditInterestRates.CONSUMER_LOAN).getData();
27 |
28 | System.out.println("TÜKETİCİ KREDİSİ");
29 | System.out.println("Kredi Başlangıç Tarihi: " + tuketiciKredisi.getApplicationStartDate());
30 | System.out.println("Kredi Bitiş Tarihi: " + tuketiciKredisi.getApplicationEndDate());
31 | System.out.println("En Düşük Kredi Dönemi: " + tuketiciKredisi.getMinTerm());
32 | System.out.println("En YÜksek Kredi Dönemi: " + tuketiciKredisi.getMaxTerm());
33 | System.out.println("En Düşük Kredi Miktarı: " + tuketiciKredisi.getMinAmount());
34 | System.out.println("En Yüksek Kredi Miktarı: " + tuketiciKredisi.getMaxAmount());
35 | System.out.println("Kredi Oranı: " + tuketiciKredisi.getTaxRate());
36 | System.out.println("Fon Oranı " + tuketiciKredisi.getFundRate());
37 | System.out.println("Masraf Miktarı: " + tuketiciKredisi.getExpenseAmount());
38 | System.out.println("Faiz Dönemi: " + tuketiciKredisi.getInterestTerm());
39 | System.out.println("Faiz Sayısı: " + tuketiciKredisi.getInterestCount());
40 | System.out.println("Kredi Tutarı: " + tuketiciKredisi.getCreditAmount());
41 | System.out.println("Kredi Faizleri");
42 | for (CreditInterestRecord kredi : tuketiciKredisi.getInterestArrayList()) {
43 | System.out.println("En Düşük Dönem: " + kredi.getMinTerm());
44 | System.out.println("En Yüksek Dönem: " + kredi.getMaxTerm());
45 | System.out.println("Aralık: " + kredi.getRate());
46 | System.out.println("");
47 | }
48 |
49 | //********MORTGAGE KREDİSİ*************/
50 | CreditInterestRatesModel mortgageKredi = akbank.getCreditInterestRate(
51 | AkbankParameters.CreditInterestRates.MORTGAGE_LOAN).getData();
52 |
53 | System.out.println("MORTGAGE KREDİSİ");
54 | System.out.println("Kredi Başlangıç Tarihi: " + mortgageKredi.getApplicationStartDate());
55 | System.out.println("Kredi Bitiş Tarihi: " + mortgageKredi.getApplicationEndDate());
56 | System.out.println("En Düşük Kredi Dönemi: " + mortgageKredi.getMinTerm());
57 | System.out.println("En YÜksek Kredi Dönemi: " + mortgageKredi.getMaxTerm());
58 | System.out.println("En Düşük Kredi Miktarı: " + mortgageKredi.getMinAmount());
59 | System.out.println("En Yüksek Kredi Miktarı: " + mortgageKredi.getMaxAmount());
60 | System.out.println("Kredi Oranı: " + mortgageKredi.getTaxRate());
61 | System.out.println("Fon Oranı " + mortgageKredi.getFundRate());
62 | System.out.println("Masraf Miktarı: " + mortgageKredi.getExpenseAmount());
63 | System.out.println("Faiz Dönemi: " + mortgageKredi.getInterestTerm());
64 | System.out.println("Faiz Sayısı: " + mortgageKredi.getInterestCount());
65 | System.out.println("Kredi Tutarı: " + mortgageKredi.getCreditAmount());
66 | System.out.println("Kredi Faizleri");
67 | for (CreditInterestRecord kredi : mortgageKredi.getInterestArrayList()) {
68 | System.out.println("En Düşük Dönem: " + kredi.getMinTerm());
69 | System.out.println("En Yüksek Dönem: " + kredi.getMaxTerm());
70 | System.out.println("Aralık: " + kredi.getRate());
71 | System.out.println("");
72 | }
73 |
74 | //************TAŞIT KREDİSİ*******************
75 | CreditInterestRatesModel tasitKredisi = akbank.getCreditInterestRate(
76 | AkbankParameters.CreditInterestRates.CAR_LOAN).getData();
77 |
78 | System.out.println("TAŞIT KREDİSİ");
79 | System.out.println("Kredi Başlangıç Tarihi: " + tasitKredisi.getApplicationStartDate());
80 | System.out.println("Kredi Bitiş Tarihi: " + tasitKredisi.getApplicationEndDate());
81 | System.out.println("En Düşük Kredi Dönemi: " + tasitKredisi.getMinTerm());
82 | System.out.println("En YÜksek Kredi Dönemi: " + tasitKredisi.getMaxTerm());
83 | System.out.println("En Düşük Kredi Miktarı: " + tasitKredisi.getMinAmount());
84 | System.out.println("En Yüksek Kredi Miktarı: " + tasitKredisi.getMaxAmount());
85 | System.out.println("Kredi Oranı: " + tasitKredisi.getTaxRate());
86 | System.out.println("Fon Oranı " + tasitKredisi.getFundRate());
87 | System.out.println("Masraf Miktarı: " + tasitKredisi.getExpenseAmount());
88 | System.out.println("Faiz Dönemi: " + tasitKredisi.getInterestTerm());
89 | System.out.println("Faiz Sayısı: " + tasitKredisi.getInterestCount());
90 | System.out.println("Kredi Tutarı: " + tasitKredisi.getCreditAmount());
91 | System.out.println("Kredi Faizleri");
92 | for (CreditInterestRecord kredi : tasitKredisi.getInterestArrayList()) {
93 | System.out.println("En Düşük Dönem: " + kredi.getMinTerm());
94 | System.out.println("En Yüksek Dönem: " + kredi.getMaxTerm());
95 | System.out.println("Aralık: " + kredi.getRate());
96 | System.out.println("");
97 | }
98 |
99 | }
100 |
101 | }
102 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/conf/Connection.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core.conf;
2 |
3 | import com.google.gson.Gson;
4 | import com.google.gson.reflect.TypeToken;
5 | import com.sun.jersey.api.client.Client;
6 | import com.sun.jersey.api.client.ClientResponse;
7 | import com.sun.jersey.api.client.WebResource;
8 | import java.io.BufferedReader;
9 | import java.io.IOException;
10 | import java.io.InputStreamReader;
11 | import java.io.OutputStream;
12 | import java.io.UnsupportedEncodingException;
13 | import java.net.MalformedURLException;
14 | import java.net.ProtocolException;
15 | import java.net.URL;
16 | import java.security.KeyManagementException;
17 | import java.security.NoSuchAlgorithmException;
18 | import java.security.cert.CertificateException;
19 | import java.util.logging.Level;
20 | import java.util.logging.Logger;
21 | import javax.net.ssl.HostnameVerifier;
22 | import javax.net.ssl.HttpsURLConnection;
23 | import javax.net.ssl.SSLContext;
24 | import javax.net.ssl.SSLSession;
25 | import javax.net.ssl.TrustManager;
26 | import javax.net.ssl.X509TrustManager;
27 | import org.akbank4j.core.Akbank4J;
28 | import org.akbank4j.core.request.AkbankParameters;
29 |
30 | /**
31 | *
32 | * @author Onur Arslan onurarslan.org
33 | */
34 | public class Connection {
35 |
36 | public String json;
37 | static Configuration api;
38 |
39 | public Connection(Configuration api) {
40 | this.api = api;
41 | }
42 |
43 | public Akbank4J openConnection(String url, String httpMethod, TypeToken akbankClassType) {
44 | return openConnection(url, httpMethod, null, akbankClassType);
45 |
46 | }
47 |
48 | public Akbank4J openConnection(String url, String httpMethod, String postData, TypeToken akbankClassType) {
49 | init();
50 | Client client = Client.create();
51 | WebResource webResource = client.resource("https://apigate.akbank.com/api/mock" + url);
52 | ClientResponse response = null;
53 | if (httpMethod.equals(AkbankParameters.HTTP_METHOD.GET)) {
54 | response = webResource.header(api.getName(), api.getValue()).accept("application/json").get(
55 | ClientResponse.class);
56 | } else {
57 | response = webResource.header(api.getName(), api.getValue()).accept("application/json").post(
58 | ClientResponse.class, postData);
59 | }
60 |
61 | return new Gson().fromJson(response.getEntity(String.class), akbankClassType.getType());
62 |
63 | }
64 |
65 | @Deprecated
66 | public void openConnection(String address, String httpMethod) {
67 | openConnection(address, httpMethod, "");
68 | }
69 |
70 | @Deprecated
71 | public void openConnection(String address, String httpMethod, String params) {
72 | HttpsURLConnection conn = null;
73 |
74 | init();
75 | try {
76 | StringBuilder urlBuilder = new StringBuilder("https://apigate.akbank.com/api/mock" + address);
77 | if (httpMethod.equals(AkbankParameters.HTTP_METHOD.GET)) {
78 | urlBuilder.append(params);
79 | }
80 | URL url = new URL(urlBuilder.toString());
81 | conn = (HttpsURLConnection) url.openConnection();
82 | conn.setRequestMethod(httpMethod);
83 | conn.setRequestProperty(api.getName(), api.getValue());
84 | if (httpMethod.equals(AkbankParameters.HTTP_METHOD.POST)) {
85 | byte[] body = params.getBytes();
86 | conn.setFixedLengthStreamingMode(body.length);
87 | conn.setDoOutput(true);
88 | OutputStream out = conn.getOutputStream();
89 | out.write(body);
90 | }
91 | //System.out.println("Response code: " + conn.getResponseCode());
92 | BufferedReader rd;
93 | if (conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {
94 | rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
95 | } else {
96 | rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
97 | }
98 | StringBuilder sb = new StringBuilder();
99 | String line;
100 | while ((line = rd.readLine()) != null) {
101 | sb.append(line);
102 | }
103 | rd.close();
104 | conn.disconnect();
105 | json = sb.toString();
106 | } catch (UnsupportedEncodingException ex) {
107 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
108 | } catch (MalformedURLException ex) {
109 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
110 | } catch (ProtocolException ex) {
111 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
112 | } catch (IOException ex) {
113 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
114 | }
115 |
116 | }
117 |
118 | public static void init() {
119 | try {
120 | SSLContext sc = SSLUtil.getInsecureSSLContext();
121 | HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
122 | HostnameVerifier allHostsValid = new HostnameVerifier() {
123 | public boolean verify(String hostname, SSLSession session) {
124 | return true;
125 | }
126 | };
127 | HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);
128 | } catch (KeyManagementException ex) {
129 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
130 | } catch (NoSuchAlgorithmException ex) {
131 | Logger.getLogger(Connection.class.getName()).log(Level.SEVERE, null, ex);
132 | }
133 | }
134 |
135 | private static class SSLUtil {
136 |
137 | protected static SSLContext getInsecureSSLContext()
138 | throws KeyManagementException,
139 | NoSuchAlgorithmException {
140 | final TrustManager[] trustAllCerts = new TrustManager[]{
141 | new X509TrustManager() {
142 | public java.security.cert.X509Certificate[] getAcceptedIssuers() {
143 | return null;
144 | }
145 |
146 | public void checkClientTrusted(
147 | final java.security.cert.X509Certificate[] arg0, final String arg1)
148 | throws CertificateException {
149 | // do nothing and blindly accept the certificate
150 | }
151 |
152 | public void checkServerTrusted(
153 | final java.security.cert.X509Certificate[] arg0, final String arg1)
154 | throws CertificateException {
155 | // do nothing and blindly accept the server
156 | }
157 |
158 | }
159 | };
160 |
161 | final SSLContext sslcontext = SSLContext.getInstance("SSL");
162 | sslcontext.init(null, trustAllCerts,
163 | new java.security.SecureRandom());
164 | return sslcontext;
165 | }
166 | }
167 |
168 | }
169 |
--------------------------------------------------------------------------------
/akbank4j-example/src/main/java/org/akbank4j/example/AtmBul.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.example;
2 |
3 | import java.util.List;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.api.IAkbank;
6 | import org.akbank4j.core.conf.Configuration;
7 | import org.akbank4j.core.models.FindAtmModel;
8 | import org.akbank4j.core.request.FindRequest;
9 |
10 | /**
11 | *
12 | * @author Onur Arslan
13 | */
14 | public class AtmBul {
15 |
16 | public static void main(String[] args) {
17 | Configuration conf = new Configuration("your_api_key_name", "your_api_key");
18 | IAkbank akbank = Akbank.getInstance(conf);
19 |
20 | //**********TAM PARAMETRE LİSTESİ**********//
21 | List yakinATM = akbank.getFindATM("41.008238", "28.978359,", "1000", null, null, null).getData();
22 | for (FindAtmModel atm : yakinATM) {
23 | System.out.println("Şehir: " + atm.getCity());
24 | System.out.println("Bölge: " + atm.getDistrict());
25 | System.out.println("Adres: " + atm.getAddress());
26 | System.out.println("ATM Adı: " + atm.getName());
27 | System.out.println("Enlem: " + atm.getLatitude());
28 | System.out.println("Boylam: " + atm.getLongitude());
29 | System.out.println("ATM/BTM: " + atm.getDeviceType());
30 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
31 | System.out.println();
32 | }
33 |
34 | //**********TAM PARAMETRE LİSTESİ STRİNG HARİÇ TİPLER**********//
35 | yakinATM = akbank.getFindATM(41.008238, 28.978359, 1000, null, null, null).getData();
36 | for (FindAtmModel atm : yakinATM) {
37 | System.out.println("Şehir: " + atm.getCity());
38 | System.out.println("Bölge: " + atm.getDistrict());
39 | System.out.println("Adres: " + atm.getAddress());
40 | System.out.println("ATM Adı: " + atm.getName());
41 | System.out.println("Enlem: " + atm.getLatitude());
42 | System.out.println("Boylam: " + atm.getLongitude());
43 | System.out.println("ATM/BTM: " + atm.getDeviceType());
44 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
45 | System.out.println();
46 | }
47 |
48 | //**********AZLATILMIŞ PARAMETRE LİSTESİ************//
49 | yakinATM = akbank.getFindATM("41.008238", "28.978359,", "1000").getData();
50 | for (FindAtmModel atm : yakinATM) {
51 | System.out.println("Şehir: " + atm.getCity());
52 | System.out.println("Bölge: " + atm.getDistrict());
53 | System.out.println("Adres: " + atm.getAddress());
54 | System.out.println("ATM Adı: " + atm.getName());
55 | System.out.println("Enlem: " + atm.getLatitude());
56 | System.out.println("Boylam: " + atm.getLongitude());
57 | System.out.println("ATM/BTM: " + atm.getDeviceType());
58 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
59 | System.out.println();
60 | }
61 |
62 | //**********AZLATILMIŞ PARAMETRE LİSTESİ STRING HARİÇ TİPLER************//
63 | yakinATM = akbank.getFindATM(41.008238, 28.978359, 1000).getData();
64 | for (FindAtmModel atm : yakinATM) {
65 | System.out.println("Şehir: " + atm.getCity());
66 | System.out.println("Bölge: " + atm.getDistrict());
67 | System.out.println("Adres: " + atm.getAddress());
68 | System.out.println("ATM Adı: " + atm.getName());
69 | System.out.println("Enlem: " + atm.getLatitude());
70 | System.out.println("Boylam: " + atm.getLongitude());
71 | System.out.println("ATM/BTM: " + atm.getDeviceType());
72 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
73 | System.out.println();
74 | }
75 |
76 | //***************TAM PARAMETRE LİSTESİ NESNE******/////////////
77 | FindRequest atmFind = new FindRequest("41.008238", "28.978359,", "1000", null, null, null);
78 | yakinATM = akbank.getFindATM(atmFind).getData();
79 | for (FindAtmModel atm : yakinATM) {
80 | System.out.println("Şehir: " + atm.getCity());
81 | System.out.println("Bölge: " + atm.getDistrict());
82 | System.out.println("Adres: " + atm.getAddress());
83 | System.out.println("ATM Adı: " + atm.getName());
84 | System.out.println("Enlem: " + atm.getLatitude());
85 | System.out.println("Boylam: " + atm.getLongitude());
86 | System.out.println("ATM/BTM: " + atm.getDeviceType());
87 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
88 | System.out.println();
89 | }
90 |
91 | //***************TAM PARAMETRE LİSTESİ NESNE STRING HARİÇ TİPLER******/////////////
92 | atmFind = new FindRequest(41.008238, 28.978359, 1000, null, null, null);
93 | yakinATM = akbank.getFindATM(atmFind).getData();
94 | for (FindAtmModel atm : yakinATM) {
95 | System.out.println("Şehir: " + atm.getCity());
96 | System.out.println("Bölge: " + atm.getDistrict());
97 | System.out.println("Adres: " + atm.getAddress());
98 | System.out.println("ATM Adı: " + atm.getName());
99 | System.out.println("Enlem: " + atm.getLatitude());
100 | System.out.println("Boylam: " + atm.getLongitude());
101 | System.out.println("ATM/BTM: " + atm.getDeviceType());
102 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
103 | System.out.println();
104 | }
105 |
106 | //***********AZALTILMIŞ PARAMETRE LİSTESİ NESNE******////
107 | atmFind = new FindRequest("41.008238", "28.978359,", "1000");
108 | yakinATM = akbank.getFindATM(atmFind).getData();
109 | for (FindAtmModel atm : yakinATM) {
110 | System.out.println("Şehir: " + atm.getCity());
111 | System.out.println("Bölge: " + atm.getDistrict());
112 | System.out.println("Adres: " + atm.getAddress());
113 | System.out.println("ATM Adı: " + atm.getName());
114 | System.out.println("Enlem: " + atm.getLatitude());
115 | System.out.println("Boylam: " + atm.getLongitude());
116 | System.out.println("ATM/BTM: " + atm.getDeviceType());
117 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
118 | System.out.println();
119 | }
120 |
121 | //***********AZALTILMIŞ PARAMETRE LİSTESİ NESNE STRING HARİÇ TİLER******////
122 | atmFind = new FindRequest(41.008238, 28.978359, 1000);
123 | yakinATM = akbank.getFindATM(atmFind).getData();
124 | for (FindAtmModel atm : yakinATM) {
125 | System.out.println("Şehir: " + atm.getCity());
126 | System.out.println("Bölge: " + atm.getDistrict());
127 | System.out.println("Adres: " + atm.getAddress());
128 | System.out.println("ATM Adı: " + atm.getName());
129 | System.out.println("Enlem: " + atm.getLatitude());
130 | System.out.println("Boylam: " + atm.getLongitude());
131 | System.out.println("ATM/BTM: " + atm.getDeviceType());
132 | System.out.println("Exchange İzni: " + atm.isExchangeAvailable());
133 | System.out.println();
134 | }
135 |
136 | }
137 |
138 | }
139 |
--------------------------------------------------------------------------------
/akbank4j-example/src/main/java/org/akbank4j/example/SubeBul.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.example;
2 |
3 | import java.util.List;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.api.IAkbank;
6 | import org.akbank4j.core.conf.Configuration;
7 | import org.akbank4j.core.records.FindBranchRecords;
8 | import org.akbank4j.core.request.FindRequest;
9 |
10 | /**
11 | *
12 | * @author Onur Arslan
13 | */
14 | public class SubeBul {
15 |
16 | public static void main(String[] args) {
17 | Configuration conf = new Configuration("your_api_key_name", "your_api_key");
18 | IAkbank akbank = Akbank.getInstance(conf);
19 |
20 | //*******TAM PARAMETRE LİSTE****//////
21 | List yakinSube = akbank.getFindBranch("41.008238", "28.978359,", "1000", null, null, null).
22 | getData().getBranchRecords();
23 | for (FindBranchRecords sube : yakinSube) {
24 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
25 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
26 | System.out.println("Şube Adı: " + sube.getName());
27 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
28 | System.out.println("Enlem: " + sube.getLatitude());
29 | System.out.println("Boylam: " + sube.getLongitude());
30 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
31 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
32 | System.out.println();
33 | }
34 |
35 | //*******TAM PARAMETRE LİSTE STRING HARİÇ TİPLER****//////
36 | yakinSube = akbank.getFindBranch(41.008238, 28.978359, 1000, null, null, null).
37 | getData().getBranchRecords();
38 | for (FindBranchRecords sube : yakinSube) {
39 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
40 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
41 | System.out.println("Şube Adı: " + sube.getName());
42 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
43 | System.out.println("Enlem: " + sube.getLatitude());
44 | System.out.println("Boylam: " + sube.getLongitude());
45 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
46 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
47 | System.out.println();
48 | }
49 |
50 | //**********AZALTILMIŞ PARAMETRE LİSTE**********/////
51 | yakinSube = akbank.getFindBranch("41.008238", "28.978359,", "1000").getData().getBranchRecords();
52 | for (FindBranchRecords sube : yakinSube) {
53 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
54 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
55 | System.out.println("Şube Adı: " + sube.getName());
56 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
57 | System.out.println("Enlem: " + sube.getLatitude());
58 | System.out.println("Boylam: " + sube.getLongitude());
59 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
60 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
61 | System.out.println();
62 | }
63 |
64 | //**********AZALTILMIŞ PARAMETRE LİSTE STRING HARİÇ TİPLER**********/////
65 | yakinSube = akbank.getFindBranch(41.008238, 28.978359, 1000).getData().getBranchRecords();
66 | for (FindBranchRecords sube : yakinSube) {
67 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
68 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
69 | System.out.println("Şube Adı: " + sube.getName());
70 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
71 | System.out.println("Enlem: " + sube.getLatitude());
72 | System.out.println("Boylam: " + sube.getLongitude());
73 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
74 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
75 | System.out.println();
76 | }
77 |
78 | //********TAM PARAMETRE LİSTE NESNE********//
79 | FindRequest subeBul = new FindRequest("41.008238", "28.978359,", "1000", null, null, null);
80 | yakinSube = akbank.getFindBranch(subeBul).getData().getBranchRecords();
81 | for (FindBranchRecords sube : yakinSube) {
82 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
83 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
84 | System.out.println("Şube Adı: " + sube.getName());
85 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
86 | System.out.println("Enlem: " + sube.getLatitude());
87 | System.out.println("Boylam: " + sube.getLongitude());
88 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
89 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
90 | System.out.println();
91 | }
92 |
93 | //********TAM PARAMETRE LİSTE NESNE STRING HARİÇ TİPLER********//
94 | subeBul = new FindRequest(41.008238, 28.978359, 1000, null, null, null);
95 | yakinSube = akbank.getFindBranch(subeBul).getData().getBranchRecords();
96 | for (FindBranchRecords sube : yakinSube) {
97 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
98 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
99 | System.out.println("Şube Adı: " + sube.getName());
100 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
101 | System.out.println("Enlem: " + sube.getLatitude());
102 | System.out.println("Boylam: " + sube.getLongitude());
103 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
104 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
105 | System.out.println();
106 | }
107 |
108 | //********AZALTILMIŞ PARAMETRE LİSTE NESNE*********//
109 | subeBul = new FindRequest("41.008238", "28.978359,", "1000");
110 | yakinSube = akbank.getFindBranch(subeBul).getData().getBranchRecords();
111 | for (FindBranchRecords sube : yakinSube) {
112 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
113 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
114 | System.out.println("Şube Adı: " + sube.getName());
115 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
116 | System.out.println("Enlem: " + sube.getLatitude());
117 | System.out.println("Boylam: " + sube.getLongitude());
118 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
119 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
120 | System.out.println();
121 | }
122 |
123 | //********AZALTILMIŞ PARAMETRE LİSTE NESNE STRING HARİÇ TİPLER*********//
124 | subeBul = new FindRequest(41.008238, 28.978359, 1000);
125 | yakinSube = akbank.getFindBranch(subeBul).getData().getBranchRecords();
126 | for (FindBranchRecords sube : yakinSube) {
127 | System.out.println("ATM Var Mı: " + sube.isHasAtm());
128 | System.out.println("Haftasonları Açık Mı: " + sube.isIsOpenOnWeekend());
129 | System.out.println("Şube Adı: " + sube.getName());
130 | System.out.println("Öğle Vakti Açık Mı:" + sube.isIsOpenAtNoon());
131 | System.out.println("Enlem: " + sube.getLatitude());
132 | System.out.println("Boylam: " + sube.getLongitude());
133 | System.out.println("Telefon NUmarası: " + sube.getPhoneNumber());
134 | System.out.println("Güvenli Kasaya Sahip Mi: " + sube.isHasSafeBox());
135 | System.out.println();
136 | }
137 |
138 | }
139 |
140 | }
141 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/test/java/Akbank4JTest.java:
--------------------------------------------------------------------------------
1 |
2 | import java.sql.Date;
3 | import java.util.List;
4 | import org.akbank4j.core.Akbank;
5 | import org.akbank4j.core.Akbank4J;
6 | import org.akbank4j.core.api.IAkbank;
7 | import org.akbank4j.core.conf.Configuration;
8 | import org.akbank4j.core.models.CreditApplicationServiceModel;
9 | import org.akbank4j.core.models.CreditCardApplicationModel;
10 | import org.akbank4j.core.models.CreditInterestRatesModel;
11 | import org.akbank4j.core.models.CreditPaymentPlanModel;
12 | import org.akbank4j.core.models.ExchangeRatesModel;
13 | import org.akbank4j.core.models.FindAtmModel;
14 | import org.akbank4j.core.models.FindBranchModel;
15 | import org.akbank4j.core.models.FundPricesModel;
16 | import org.akbank4j.core.models.StockValuesModel;
17 | import org.akbank4j.core.request.AkbankParameters;
18 | import org.akbank4j.core.request.CreditCardAppRequest;
19 | import org.akbank4j.core.request.CreditPaymentPlanRequest;
20 | import org.akbank4j.core.request.FindRequest;
21 | import org.junit.After;
22 | import org.junit.Assert;
23 | import org.junit.Before;
24 | import org.junit.Test;
25 |
26 | /**
27 | *
28 | * @author Onur Arslan onurarslan.org
29 | */
30 | public class Akbank4JTest {
31 |
32 | private Configuration conf;
33 | private IAkbank akbank;
34 |
35 | @Before
36 | public void setUp() {
37 | conf = new Configuration("your_api_key_name", "your_api_key");
38 | akbank = Akbank.getInstance(conf);
39 | }
40 |
41 | @After
42 | public void tearDown() {
43 | conf = null;
44 | akbank = null;
45 | }
46 |
47 | @Test
48 | public void testCreditApp() {
49 | System.out.println("testCreditApp Start...!");
50 | Akbank4J test = akbank.getCreditApp("05321234567", "12345678901");
51 | Assert.assertNotNull(test.getData());
52 | System.out.println("testCreditApp End...!");
53 | }
54 |
55 | @Test
56 | public void testCreditCardApp() {
57 | System.out.println("testCreditCardApp Start...!");
58 | Akbank4J test = akbank.getCreditCardApp("Ali", "Veli", "Doğru", "ali.dogru@akbank.com",
59 | "05359112233", "127762123454", "ApplicationX");
60 | Assert.assertEquals("Credit Card Application has been successfully completed.", test.getReturnMessage());
61 | System.out.println("testCreditCardApp End...!");
62 | }
63 |
64 | @Test
65 | public void testCreditCardAppReq() {
66 | System.out.println("testCreditCardAppReq Start...!");
67 |
68 | CreditCardAppRequest creditCardReq = new CreditCardAppRequest("Ali", "Veli", "Doğru", "ali.dogru@akbank.com",
69 | "05359112233", "127762123454", "ApplicationX");
70 | Akbank4J test
71 | = akbank.getCreditCardApp(creditCardReq);
72 | Assert.assertEquals("Credit Card Application has been successfully completed.", test.getReturnMessage());
73 | System.out.println("testCreditCardAppReq End...!");
74 | }
75 |
76 | @Test
77 | public void testCreditInterestRate() {
78 | System.out.println("testCreditInterestRate Start...!");
79 | Akbank4J test = akbank.getCreditInterestRate(
80 | AkbankParameters.CreditInterestRates.CONSUMER_LOAN);
81 | Assert.assertNotNull(test.getData());
82 | System.out.println("testCreditInterestRate End...!");
83 | }
84 |
85 | @Test
86 | public void testCreditPaymentPlan() {
87 | System.out.println("testCreditPaymentPlan Start...!");
88 | Akbank4J test = akbank.getCreditPaymentPlan("0.1234", "1.25", "0.1034", "2015-11-10",
89 | "2015-11-10", "5000", "10", "36");
90 | Assert.assertNotNull(test.getData());
91 |
92 | Date startDate = Date.valueOf("2015-11-10");
93 | Date usingDate = Date.valueOf("2015-11-10");
94 | test = akbank.getCreditPaymentPlan(0.1234, 1.25, 0.1034, startDate, usingDate, 5000, 10, 36);
95 | Assert.assertNotNull(test.getData());
96 |
97 | System.out.println("testCreditPaymentPlan End...!");
98 | }
99 |
100 | @Test
101 | public void testCreditPaymentPlanReq() {
102 | System.out.println("testCreditPaymentPlanReq Start...!");
103 | CreditPaymentPlanRequest creditPaymentReq = new CreditPaymentPlanRequest("0.1234", "1.25", "0.1034", "2015-11-10",
104 | "2015-11-10", "5000", "10", "36");
105 | Akbank4J test = akbank.getCreditPaymentPlan(creditPaymentReq);
106 | Assert.assertNotNull(test.getData());
107 | System.out.println("testCreditPaymentPlanReq End...!");
108 | }
109 |
110 | @Test
111 | public void testExchangeRate() {
112 | System.out.println("testExchangeRate Start...!");
113 | Akbank4J test = akbank.getExchangeRates();
114 | Assert.assertNotNull(test.getData());
115 | System.out.println(test.getData().getBanknoteBuying());
116 |
117 | Date date = Date.valueOf("2015-10-08");
118 | test = akbank.getExchangeRates(date);
119 | Assert.assertNotNull(test.getData());
120 |
121 | //test = akbank.getExchangeRates("002");
122 | //Assert.assertNotNull(test.getData());
123 | test = akbank.getExchangeRates("001", date);
124 | Assert.assertNotNull(test.getData());
125 |
126 | System.out.println("testExchangeRate End...!");
127 | }
128 |
129 | @Test
130 | public void testFindAtm() {
131 | System.out.println("testFindAtm Start...!");
132 | Akbank4J> test
133 | = akbank.getFindATM("41.008238", "28.978359", "1000", null, null, null);
134 | Assert.assertNotNull(test.getData());
135 |
136 | test = akbank.getFindATM(41.008238, 28.978359, 1000, null, null, null);
137 | Assert.assertNotNull(test.getData());
138 |
139 | test = akbank.getFindATM("41.008238", "28.978359", "1000");
140 | Assert.assertNotNull(test.getData());
141 |
142 | test = akbank.getFindATM(41.008238, 28.978359, 1000);
143 | Assert.assertNotNull(test.getData());
144 |
145 | FindRequest atmReq = new FindRequest("41.008238", "28.978359", "1000", null, null, null);
146 | test = akbank.getFindATM(atmReq);
147 |
148 | atmReq = new FindRequest(41.008238, 28.978359, 1000, null, null, null);
149 | test = akbank.getFindATM(atmReq);
150 | atmReq = new FindRequest("41.008238", "28.978359", "1000");
151 | test = akbank.getFindATM(atmReq);
152 |
153 | atmReq = new FindRequest(41.008238, 28.978359, 1000);
154 | test = akbank.getFindATM(atmReq);
155 |
156 | Assert.assertNotNull(test.getData());
157 | System.out.println("testFindAtm End...!");
158 | }
159 |
160 | @Test
161 | public void testFindBranch() {
162 | System.out.println("testFindBranch Start...!");
163 | Akbank4J test
164 | = akbank.getFindBranch("41.008238", "28.978359", "1000", null, null, null);
165 | Assert.assertNotNull(test.getData());
166 |
167 | test = akbank.getFindBranch(41.008238, 28.978359, 1000, null, null, null);
168 | Assert.assertNotNull(test.getData());
169 |
170 | test = akbank.getFindBranch("41.008238", "28.978359", "1000");
171 | Assert.assertNotNull(test.getData());
172 |
173 | test = akbank.getFindBranch(41.008238, 28.978359, 1000);
174 | Assert.assertNotNull(test.getData());
175 |
176 | System.out.println("testFindBranch End...!");
177 | }
178 |
179 | @Test
180 | public void testFindPrices() {
181 | System.out.println("testFindPrices Start...!");
182 | Akbank4J test
183 | = akbank.getFundPrices(AkbankParameters.FundPrices.TYPE_A);
184 | Assert.assertNotNull(test.getData());
185 |
186 | test = akbank.getFundPrices(AkbankParameters.FundPrices.TYPE_B);
187 | Assert.assertNotNull(test.getData());
188 |
189 | test = akbank.getFundPrices(AkbankParameters.FundPrices.ALL);
190 | Assert.assertNotNull(test.getData());
191 |
192 | System.out.println("testFindPrices End...!");
193 | }
194 |
195 | @Test
196 | public void testStockValues() {
197 | System.out.println("testStockValues Start...!");
198 | Akbank4J test = akbank.getStockValues("AKBNK");
199 | Assert.assertNotNull(test.getData());
200 | System.out.println("testStockValuesEnd...!");
201 | }
202 | }
203 |
--------------------------------------------------------------------------------
/akbank4j/akbank4j-core/src/main/java/org/akbank4j/core/Akbank.java:
--------------------------------------------------------------------------------
1 | package org.akbank4j.core;
2 |
3 | import com.google.gson.JsonObject;
4 | import com.google.gson.reflect.TypeToken;
5 | import java.util.Date;
6 | import java.util.List;
7 | import org.akbank4j.core.api.AkbankUrl;
8 | import org.akbank4j.core.api.IAkbank;
9 | import org.akbank4j.core.conf.Configuration;
10 | import org.akbank4j.core.conf.Connection;
11 | import org.akbank4j.core.models.CreditApplicationServiceModel;
12 | import org.akbank4j.core.models.CreditInterestRatesModel;
13 | import org.akbank4j.core.models.CreditPaymentPlanModel;
14 | import org.akbank4j.core.models.ExchangeRatesModel;
15 | import org.akbank4j.core.models.FindAtmModel;
16 | import org.akbank4j.core.models.FindBranchModel;
17 | import org.akbank4j.core.models.FundPricesModel;
18 | import org.akbank4j.core.models.StockValuesModel;
19 | import org.akbank4j.core.request.AkbankParameters;
20 | import org.akbank4j.core.request.CreditCardAppRequest;
21 | import org.akbank4j.core.request.CreditPaymentPlanRequest;
22 | import org.akbank4j.core.request.FindRequest;
23 |
24 | /**
25 | *
26 | * @author Onur Arslan onurarslan.org
27 | */
28 | public class Akbank
29 | implements IAkbank {
30 |
31 | private static Connection conn;
32 | private static IAkbank instance;
33 |
34 | private Akbank() {
35 | }
36 |
37 | /**
38 | * API'nin çalıştırılması için konfigurasyon yapılmsaı gerekmektedir.
39 | * {@code Configuration conf = new Configuration("your_api_key_name", "your_api_key");
40 | * Akbank akbank = Akbank.getInstance();}
41 | *
42 | *
43 | */
44 | public static IAkbank getInstance() {
45 | if (instance == null) {
46 | instance = new Akbank();
47 | }
48 | return instance;
49 | }
50 |
51 | /**
52 | * API'nin çalıştırılması için konfigurasyon yapılmsaı gerekmektedir.
53 | * {@code Configuration conf = new Configuration("your_api_key_name", "your_api_key");
54 | * Akbank akbank = Akbank.getInstance(conf);}
55 | *
56 | * @param conf Configuration.class
57 | */
58 | public static IAkbank getInstance(Configuration conf) {
59 | if (conn == null) {
60 | conn = new Connection(conf);
61 | }
62 | return getInstance();
63 | }
64 |
65 | @Override
66 | public Akbank4J getCreditInterestRate(String creditType) {
67 | String url = AkbankUrl.CreditInterestRates + "?" + AkbankParameters.CreditInterestRates.NAME + "=" + creditType;
68 | return conn.openConnection(url, AkbankParameters.HTTP_METHOD.GET,
69 | new TypeToken>() {
70 | });
71 |
72 | }
73 |
74 | @Override
75 | public Akbank4J getExchangeRates() {
76 | return conn.openConnection(AkbankUrl.ExchangeRates, AkbankParameters.HTTP_METHOD.GET,
77 | new TypeToken>() {
78 | });
79 |
80 | }
81 |
82 | /**
83 | * isTwoParam false ise; parametre tipi ve değeri gönderilir.
84 | * {@code Akbank4J exchangeRate = akbank.getExchangeRates(AkbankParameters.ExchangeRates.DATE, "2016-02-01", false);
85 | * Akbank4J exchangeRate = akbank.getExchangeRates(AkbankParameters.ExchangeRates.CURRENCY_CODE, "002", false);}
86 | * isTwoParam true ise; iki tane parametre aynı anda gönderilecektir. İlk parametreye currencyCode, ikinci parametreye
87 | * date yazılır.
88 | * {@code Akbank4J exchangeRate = akbank.getExchangeRates("001", "2015-10-08", true);}
89 | *
90 | * @param param tek parametre/currencyCode
91 | * @param value tek parametre değeri/date
92 | * @param isTwoParam tek parametre ise false çift ise true
93 | *
94 | * @return Akbank4J
95 | */
96 | private Akbank4J getExchangeRates(String param, String value, boolean isTwoParam) {
97 | StringBuilder url = new StringBuilder(AkbankUrl.ExchangeRates + "?");
98 | if (isTwoParam) {
99 | url.append(AkbankParameters.ExchangeRates.CURRENCY_CODE).append("=").append(param).append("?");
100 | url.append(AkbankParameters.ExchangeRates.DATE).append("=").append(value);
101 | } else {
102 | url.append(param).append("=").append(value);
103 | }
104 | return conn.openConnection(url.toString(), AkbankParameters.HTTP_METHOD.GET,
105 | new TypeToken>() {
106 | });
107 | }
108 |
109 | @Override
110 | public Akbank4J getExchangeRates(String currencyCode) {
111 | return getExchangeRates(AkbankParameters.ExchangeRates.CURRENCY_CODE, currencyCode, false);
112 | }
113 |
114 | @Override
115 | public Akbank4J getExchangeRates(Date date) {
116 | return getExchangeRates(AkbankParameters.ExchangeRates.DATE, Akbank4jDateUtil.toAkbankFormat(date), false);
117 | }
118 |
119 | @Override
120 | public Akbank4J getExchangeRates(String currencyCode, Date date) {
121 | return getExchangeRates(currencyCode, Akbank4jDateUtil.toAkbankFormat(date), true);
122 | }
123 |
124 | @Override
125 | public Akbank4J getFundPrices(String fundType) {
126 | String url = AkbankUrl.ExchangeRates + "?" + AkbankParameters.FundPrices.NAME + "=" + fundType;
127 | return conn.openConnection(url, AkbankParameters.HTTP_METHOD.GET,
128 | new TypeToken>() {
129 | });
130 |
131 | }
132 |
133 | @Override
134 | public Akbank4J getStockValues(String symbol) {
135 | String url = AkbankUrl.StockValues + "?" + AkbankParameters.StockValues.NAME + "=" + symbol;
136 | return conn.openConnection(url, AkbankParameters.HTTP_METHOD.GET,
137 | new TypeToken>() {
138 | });
139 | }
140 |
141 | @Override
142 | public Akbank4J getCreditPaymentPlan(CreditPaymentPlanRequest creditPaymentPlan) {
143 | return getCreditPaymentPlan(creditPaymentPlan.getBsmv(), creditPaymentPlan.getInterest(), creditPaymentPlan.
144 | getKkdf(),
145 | creditPaymentPlan.getLoanStartDate(), creditPaymentPlan.getLoanUsingDate(),
146 | creditPaymentPlan.getLoanAmount(), creditPaymentPlan.getExpenseAmount(),
147 | creditPaymentPlan.getTerm());
148 | }
149 |
150 | @Override
151 | public Akbank4J getCreditPaymentPlan(String bsmv, String interest, String kkdf,
152 | String loanStartDate, String loanUsingDate,
153 | String loanAmount, String expenseAmount,
154 | String term) {
155 |
156 | JsonObject jdata = new JsonObject();
157 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.BSMV, bsmv);
158 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.INTEREST, interest);
159 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.KKDF, kkdf);
160 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.LOAN_START_DATE, loanStartDate);
161 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.LOAN_USING_DATE, loanUsingDate);
162 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.LOAN_AMOUNT, loanAmount);
163 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.EXPENSE_AMOUNT, expenseAmount);
164 | jdata.addProperty(AkbankParameters.CreditPaymentPlan.TERM, term);
165 |
166 | return conn.openConnection(AkbankUrl.CreditPaymentPlan, AkbankParameters.HTTP_METHOD.POST, jdata.toString(),
167 | new TypeToken>() {
168 | });
169 | }
170 |
171 | @Override
172 | public Akbank4J getCreditPaymentPlan(double bsmv, double interest, double kkdf,
173 | Date loanStartDate, Date loanUsingDate,
174 | int loanAmount, int expenseAmount, int term) {
175 | return getCreditPaymentPlan(String.valueOf(bsmv), String.valueOf(interest), String.valueOf(kkdf),
176 | Akbank4jDateUtil.toAkbankFormat(loanStartDate),
177 | Akbank4jDateUtil.toAkbankFormat(loanUsingDate),
178 | String.valueOf(loanAmount), String.valueOf(expenseAmount), String.valueOf(term));
179 | }
180 |
181 | @Override
182 | public Akbank4J> getFindATM(String latitude, String longitude, String radius,
183 | String city, String district, String searchText) {
184 | JsonObject jdata = new JsonObject();
185 | jdata.addProperty(AkbankParameters.FindATM.LATITUDE, latitude);
186 | jdata.addProperty(AkbankParameters.FindATM.LONGITUDE, longitude);
187 | jdata.addProperty(AkbankParameters.FindATM.RADIUS, radius);
188 | jdata.addProperty(AkbankParameters.FindATM.CITY, city);
189 | jdata.addProperty(AkbankParameters.FindATM.DISTRICT, district);
190 | jdata.addProperty(AkbankParameters.FindATM.SEARCH_TEXT, searchText);
191 |
192 | return conn.openConnection(AkbankUrl.FindAtm, AkbankParameters.HTTP_METHOD.POST, jdata.toString(),
193 | new TypeToken>>() {
194 | });
195 | }
196 |
197 | @Override
198 | public Akbank4J> getFindATM(double latitude, double longitude, int radius,
199 | String city, String district, String searchText) {
200 | return getFindATM(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius), city, district,
201 | searchText);
202 |
203 | }
204 |
205 | @Override
206 | public Akbank4J> getFindATM(String latitude, String longitude, String radius) {
207 | return getFindATM(latitude, longitude, radius, null, null, null);
208 | }
209 |
210 | @Override
211 | public Akbank4J> getFindATM(double latitude, double longitude, int radius) {
212 | return getFindATM(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius), null, null, null);
213 | }
214 |
215 | @Override
216 | public Akbank4J> getFindATM(FindRequest findATM) {
217 | return getFindATM(findATM.getLatitude(), findATM.getLongitude(), findATM.getRadius(), findATM.getCity(), findATM.
218 | getDistrict(), findATM.getSearchText());
219 | }
220 |
221 | @Override
222 | public Akbank4J getFindBranch(String latitude, String longitude, String radius,
223 | String city, String district,
224 | String searchText) {
225 | JsonObject jdata = new JsonObject();
226 | jdata.addProperty(AkbankParameters.FindBranch.LATITUDE, latitude);
227 | jdata.addProperty(AkbankParameters.FindBranch.LONGITUDE, longitude);
228 | jdata.addProperty(AkbankParameters.FindBranch.RADIUS, radius);
229 | jdata.addProperty(AkbankParameters.FindBranch.CITY, city);
230 | jdata.addProperty(AkbankParameters.FindBranch.DISTRICT, district);
231 | jdata.addProperty(AkbankParameters.FindBranch.SEARCH_TEXT, searchText);
232 |
233 | return conn.openConnection(AkbankUrl.FindBranch, AkbankParameters.HTTP_METHOD.POST, jdata.toString(),
234 | new TypeToken>() {
235 | });
236 | }
237 |
238 | @Override
239 | public Akbank4J getFindBranch(double latitude, double longitude, int radius, String city,
240 | String district, String searchText) {
241 | return getFindBranch(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius), null, null, null);
242 | }
243 |
244 | @Override
245 | public Akbank4J getFindBranch(String latitude, String longitude, String radius) {
246 | return getFindBranch(latitude, longitude, radius, null, null, null);
247 | }
248 |
249 | @Override
250 | public Akbank4J getFindBranch(double latitude, double longitude, int radius) {
251 | return getFindBranch(String.valueOf(latitude), String.valueOf(longitude), String.valueOf(radius), null, null, null);
252 | }
253 |
254 | @Override
255 | public Akbank4J getFindBranch(FindRequest findBranch) {
256 | return getFindBranch(findBranch.getLatitude(), findBranch.getLongitude(), findBranch.getRadius(), findBranch.
257 | getCity(), findBranch.getDistrict(), findBranch.getSearchText());
258 | }
259 |
260 | @Override
261 | public Akbank4J getCreditApp(String phoneNumber, String identityNumber) {
262 | JsonObject jdata = new JsonObject();
263 | jdata.addProperty(AkbankParameters.CreditAppService.PHONE_NUMBER, phoneNumber);
264 | jdata.addProperty(AkbankParameters.CreditAppService.IDENTITY_NUMBER, identityNumber);
265 |
266 | return conn.openConnection(AkbankUrl.CreditAppService, AkbankParameters.HTTP_METHOD.POST, jdata.toString(),
267 | new TypeToken>() {
268 | });
269 | }
270 |
271 | @Override
272 | public Akbank4J getCreditCardApp(CreditCardAppRequest creditCardApp) {
273 | return getCreditCardApp(creditCardApp.getName(), creditCardApp.getSecondName(), creditCardApp.getSurname(),
274 | creditCardApp.getEmail(), creditCardApp.getPhoneNumber(), creditCardApp.getIdentityNumber(),
275 | creditCardApp.getApplication());
276 | }
277 |
278 | @Override
279 | public Akbank4J getCreditCardApp(String name, String surname, String email,
280 | String phoneNumber, String identityNumber, String application) {
281 | return getCreditCardApp(name, null, surname, email, phoneNumber, identityNumber, application);
282 | }
283 |
284 | @Override
285 | public Akbank4J getCreditCardApp(String name, String secondName, String surname, String email,
286 | String phoneNumber, String identityNumber, String application) {
287 | JsonObject jdata = new JsonObject();
288 | jdata.addProperty(AkbankParameters.CreditCardAppService.NAME, name);
289 | jdata.addProperty(AkbankParameters.CreditCardAppService.SECOND_NAME, secondName);
290 | jdata.addProperty(AkbankParameters.CreditCardAppService.SURNAME, surname);
291 | jdata.addProperty(AkbankParameters.CreditCardAppService.EMAIL, email);
292 | jdata.addProperty(AkbankParameters.CreditCardAppService.PHONE_NUMBER, phoneNumber);
293 | jdata.addProperty(AkbankParameters.CreditCardAppService.IDENTITY_NUMBER, identityNumber);
294 | jdata.addProperty(AkbankParameters.CreditCardAppService.APPLICATION, application);
295 |
296 | return conn.openConnection(AkbankUrl.CreditCardAppService, AkbankParameters.HTTP_METHOD.POST, jdata.toString(),
297 | new TypeToken() {
298 | });
299 | }
300 | }
301 |
--------------------------------------------------------------------------------