13
13
import pl .simpay .api .model .generic .IPResponse ;
14
14
import pl .simpay .api .utils .Hashing ;
15
15
import pl .simpay .api .utils .HttpService ;
16
+ import pl .simpay .api .utils .Reflections ;
16
17
17
18
import java .text .DecimalFormat ;
18
19
import java .util .List ;
20
+ import java .util .Map ;
19
21
20
22
@ Data
21
23
public class DirectBilling {
@@ -62,7 +64,7 @@ public DirectBilling(String apiKey) {
62
64
63
65
// https://docs.simpay.pl/#generowanie-transakcji
64
66
public DbGenerateResponse generateTransaction (@ NonNull DbGenerateRequest request ) {
65
- if (request .getService_id () == null ) request .setService_id (serviceId );
67
+ if (request .getServiceId () == null ) request .setServiceId (serviceId );
66
68
67
69
String amount = "" ;
68
70
@@ -74,15 +76,12 @@ public DbGenerateResponse generateTransaction(@NonNull DbGenerateRequest request
74
76
75
77
FormBody .Builder builder = new FormBody .Builder ();
76
78
77
- builder .add ("serviceId" , request .getService_id ());
78
- builder .add ("amount" , request .getAmount ());
79
- builder .add ("control" , request .getControl ());
80
-
81
- System .out .println (decimalFormat .format (Double .valueOf (amount )));
82
-
83
79
request .setSign (Hashing .sha256hex (this .serviceId + "" + decimalFormat .format (Double .valueOf (amount )).replace (',' , '.' ) + "" + request .getControl () + "" + this .apiKey ));
84
80
85
- builder .add ("sign" , request .getSign ());
81
+ for (Map .Entry <String , String > entry : Reflections .serializeObject (request ).entrySet ()) {
82
+ System .out .println (entry );
83
+ builder .add (entry .getKey (), entry .getValue ());
84
+ }
86
85
87
86
return service .sendPost (API_URL , builder .build (), DbGenerateResponse .class );
88
87
}
0 commit comments