dscf-payment 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +28 -0
  4. data/Rakefile +8 -0
  5. data/app/controllers/dscf/payment/application_controller.rb +25 -0
  6. data/app/controllers/dscf/payment/payment_requests_controller.rb +70 -0
  7. data/app/controllers/dscf/payment/payments_controller.rb +32 -0
  8. data/app/jobs/dscf/payment/application_job.rb +6 -0
  9. data/app/mailers/dscf/payment/application_mailer.rb +8 -0
  10. data/app/models/dscf/payment/application_record.rb +7 -0
  11. data/app/models/dscf/payment/payment.rb +39 -0
  12. data/app/models/dscf/payment/payment_request.rb +64 -0
  13. data/app/serializers/dscf/payment/payment_request_serializer.rb +18 -0
  14. data/app/serializers/dscf/payment/payment_serializer.rb +16 -0
  15. data/app/services/dscf/payment/banking_integration_service.rb +37 -0
  16. data/app/services/dscf/payment/credit_integration_service.rb +56 -0
  17. data/app/services/dscf/payment/payment_service.rb +128 -0
  18. data/app/services/dscf/payment/settlement_account_service.rb +37 -0
  19. data/config/locales/en.yml +21 -0
  20. data/config/routes.rb +8 -0
  21. data/db/migrate/20251002191758_create_dscf_payment_payment_requests.rb +32 -0
  22. data/db/migrate/20251002191802_create_dscf_payment_payments.rb +24 -0
  23. data/db/migrate/20251003005136_make_payment_request_accounts_optional.rb +6 -0
  24. data/lib/dscf/payment/engine.rb +31 -0
  25. data/lib/dscf/payment/errors.rb +10 -0
  26. data/lib/dscf/payment/version.rb +5 -0
  27. data/lib/dscf/payment.rb +8 -0
  28. data/lib/tasks/dscf/payment_tasks.rake +4 -0
  29. data/spec/factories/dscf/payment/payment_requests.rb +56 -0
  30. data/spec/factories/dscf/payment/payments.rb +37 -0
  31. metadata +512 -0
metadata ADDED
@@ -0,0 +1,512 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dscf-payment
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Asrat
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: rails
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '8.0'
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: 8.0.2
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - "~>"
27
+ - !ruby/object:Gem::Version
28
+ version: '8.0'
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: 8.0.2
32
+ - !ruby/object:Gem::Dependency
33
+ name: dscf-core
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - "~>"
37
+ - !ruby/object:Gem::Version
38
+ version: 0.1.2
39
+ type: :runtime
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ requirements:
43
+ - - "~>"
44
+ - !ruby/object:Gem::Version
45
+ version: 0.1.2
46
+ - !ruby/object:Gem::Dependency
47
+ name: dscf-banking
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: 0.1.16
53
+ type: :runtime
54
+ prerelease: false
55
+ version_requirements: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: 0.1.16
60
+ - !ruby/object:Gem::Dependency
61
+ name: dscf-credit
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - "~>"
65
+ - !ruby/object:Gem::Version
66
+ version: 0.1.7
67
+ type: :runtime
68
+ prerelease: false
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: 0.1.7
74
+ - !ruby/object:Gem::Dependency
75
+ name: active_model_serializers
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '0.10'
81
+ type: :runtime
82
+ prerelease: false
83
+ version_requirements: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '0.10'
88
+ - !ruby/object:Gem::Dependency
89
+ name: ancestry
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: 4.1.0
95
+ type: :runtime
96
+ prerelease: false
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: 4.1.0
102
+ - !ruby/object:Gem::Dependency
103
+ name: bcrypt
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '3.1'
109
+ type: :runtime
110
+ prerelease: false
111
+ version_requirements: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '3.1'
116
+ - !ruby/object:Gem::Dependency
117
+ name: httparty
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '0.21'
123
+ type: :runtime
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '0.21'
130
+ - !ruby/object:Gem::Dependency
131
+ name: image_processing
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '1.12'
137
+ type: :runtime
138
+ prerelease: false
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '1.12'
144
+ - !ruby/object:Gem::Dependency
145
+ name: jwt
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '2.7'
151
+ type: :runtime
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '2.7'
158
+ - !ruby/object:Gem::Dependency
159
+ name: noticed
160
+ requirement: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - "~>"
163
+ - !ruby/object:Gem::Version
164
+ version: '2.4'
165
+ type: :runtime
166
+ prerelease: false
167
+ version_requirements: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: '2.4'
172
+ - !ruby/object:Gem::Dependency
173
+ name: pg
174
+ requirement: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - "~>"
177
+ - !ruby/object:Gem::Version
178
+ version: '1.5'
179
+ type: :runtime
180
+ prerelease: false
181
+ version_requirements: !ruby/object:Gem::Requirement
182
+ requirements:
183
+ - - "~>"
184
+ - !ruby/object:Gem::Version
185
+ version: '1.5'
186
+ - !ruby/object:Gem::Dependency
187
+ name: pundit
188
+ requirement: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - "~>"
191
+ - !ruby/object:Gem::Version
192
+ version: '2.3'
193
+ type: :runtime
194
+ prerelease: false
195
+ version_requirements: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '2.3'
200
+ - !ruby/object:Gem::Dependency
201
+ name: rack-cors
202
+ requirement: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - "~>"
205
+ - !ruby/object:Gem::Version
206
+ version: '2.0'
207
+ type: :runtime
208
+ prerelease: false
209
+ version_requirements: !ruby/object:Gem::Requirement
210
+ requirements:
211
+ - - "~>"
212
+ - !ruby/object:Gem::Version
213
+ version: '2.0'
214
+ - !ruby/object:Gem::Dependency
215
+ name: ransack
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - "~>"
219
+ - !ruby/object:Gem::Version
220
+ version: '4.1'
221
+ type: :runtime
222
+ prerelease: false
223
+ version_requirements: !ruby/object:Gem::Requirement
224
+ requirements:
225
+ - - "~>"
226
+ - !ruby/object:Gem::Version
227
+ version: '4.1'
228
+ - !ruby/object:Gem::Dependency
229
+ name: brakeman
230
+ requirement: !ruby/object:Gem::Requirement
231
+ requirements:
232
+ - - "~>"
233
+ - !ruby/object:Gem::Version
234
+ version: '6.1'
235
+ type: :development
236
+ prerelease: false
237
+ version_requirements: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - "~>"
240
+ - !ruby/object:Gem::Version
241
+ version: '6.1'
242
+ - !ruby/object:Gem::Dependency
243
+ name: database_cleaner-active_record
244
+ requirement: !ruby/object:Gem::Requirement
245
+ requirements:
246
+ - - "~>"
247
+ - !ruby/object:Gem::Version
248
+ version: '2.1'
249
+ type: :development
250
+ prerelease: false
251
+ version_requirements: !ruby/object:Gem::Requirement
252
+ requirements:
253
+ - - "~>"
254
+ - !ruby/object:Gem::Version
255
+ version: '2.1'
256
+ - !ruby/object:Gem::Dependency
257
+ name: debug
258
+ requirement: !ruby/object:Gem::Requirement
259
+ requirements:
260
+ - - "~>"
261
+ - !ruby/object:Gem::Version
262
+ version: '1.9'
263
+ type: :development
264
+ prerelease: false
265
+ version_requirements: !ruby/object:Gem::Requirement
266
+ requirements:
267
+ - - "~>"
268
+ - !ruby/object:Gem::Version
269
+ version: '1.9'
270
+ - !ruby/object:Gem::Dependency
271
+ name: dotenv
272
+ requirement: !ruby/object:Gem::Requirement
273
+ requirements:
274
+ - - "~>"
275
+ - !ruby/object:Gem::Version
276
+ version: '3.1'
277
+ type: :development
278
+ prerelease: false
279
+ version_requirements: !ruby/object:Gem::Requirement
280
+ requirements:
281
+ - - "~>"
282
+ - !ruby/object:Gem::Version
283
+ version: '3.1'
284
+ - !ruby/object:Gem::Dependency
285
+ name: factory_bot_rails
286
+ requirement: !ruby/object:Gem::Requirement
287
+ requirements:
288
+ - - "~>"
289
+ - !ruby/object:Gem::Version
290
+ version: '6.4'
291
+ type: :development
292
+ prerelease: false
293
+ version_requirements: !ruby/object:Gem::Requirement
294
+ requirements:
295
+ - - "~>"
296
+ - !ruby/object:Gem::Version
297
+ version: '6.4'
298
+ - !ruby/object:Gem::Dependency
299
+ name: faker
300
+ requirement: !ruby/object:Gem::Requirement
301
+ requirements:
302
+ - - "~>"
303
+ - !ruby/object:Gem::Version
304
+ version: '3.2'
305
+ type: :development
306
+ prerelease: false
307
+ version_requirements: !ruby/object:Gem::Requirement
308
+ requirements:
309
+ - - "~>"
310
+ - !ruby/object:Gem::Version
311
+ version: '3.2'
312
+ - !ruby/object:Gem::Dependency
313
+ name: letter_opener
314
+ requirement: !ruby/object:Gem::Requirement
315
+ requirements:
316
+ - - "~>"
317
+ - !ruby/object:Gem::Version
318
+ version: '1.8'
319
+ type: :development
320
+ prerelease: false
321
+ version_requirements: !ruby/object:Gem::Requirement
322
+ requirements:
323
+ - - "~>"
324
+ - !ruby/object:Gem::Version
325
+ version: '1.8'
326
+ - !ruby/object:Gem::Dependency
327
+ name: reek
328
+ requirement: !ruby/object:Gem::Requirement
329
+ requirements:
330
+ - - "~>"
331
+ - !ruby/object:Gem::Version
332
+ version: '6.3'
333
+ type: :development
334
+ prerelease: false
335
+ version_requirements: !ruby/object:Gem::Requirement
336
+ requirements:
337
+ - - "~>"
338
+ - !ruby/object:Gem::Version
339
+ version: '6.3'
340
+ - !ruby/object:Gem::Dependency
341
+ name: rspec-rails
342
+ requirement: !ruby/object:Gem::Requirement
343
+ requirements:
344
+ - - "~>"
345
+ - !ruby/object:Gem::Version
346
+ version: '6.1'
347
+ type: :development
348
+ prerelease: false
349
+ version_requirements: !ruby/object:Gem::Requirement
350
+ requirements:
351
+ - - "~>"
352
+ - !ruby/object:Gem::Version
353
+ version: '6.1'
354
+ - !ruby/object:Gem::Dependency
355
+ name: rspec-retry
356
+ requirement: !ruby/object:Gem::Requirement
357
+ requirements:
358
+ - - "~>"
359
+ - !ruby/object:Gem::Version
360
+ version: '0.6'
361
+ type: :development
362
+ prerelease: false
363
+ version_requirements: !ruby/object:Gem::Requirement
364
+ requirements:
365
+ - - "~>"
366
+ - !ruby/object:Gem::Version
367
+ version: '0.6'
368
+ - !ruby/object:Gem::Dependency
369
+ name: rubocop-rails-omakase
370
+ requirement: !ruby/object:Gem::Requirement
371
+ requirements:
372
+ - - "~>"
373
+ - !ruby/object:Gem::Version
374
+ version: '1.0'
375
+ type: :development
376
+ prerelease: false
377
+ version_requirements: !ruby/object:Gem::Requirement
378
+ requirements:
379
+ - - "~>"
380
+ - !ruby/object:Gem::Version
381
+ version: '1.0'
382
+ - !ruby/object:Gem::Dependency
383
+ name: rubocop-rspec
384
+ requirement: !ruby/object:Gem::Requirement
385
+ requirements:
386
+ - - "~>"
387
+ - !ruby/object:Gem::Version
388
+ version: '2.29'
389
+ type: :development
390
+ prerelease: false
391
+ version_requirements: !ruby/object:Gem::Requirement
392
+ requirements:
393
+ - - "~>"
394
+ - !ruby/object:Gem::Version
395
+ version: '2.29'
396
+ - !ruby/object:Gem::Dependency
397
+ name: shoulda-matchers
398
+ requirement: !ruby/object:Gem::Requirement
399
+ requirements:
400
+ - - "~>"
401
+ - !ruby/object:Gem::Version
402
+ version: '6.0'
403
+ type: :development
404
+ prerelease: false
405
+ version_requirements: !ruby/object:Gem::Requirement
406
+ requirements:
407
+ - - "~>"
408
+ - !ruby/object:Gem::Version
409
+ version: '6.0'
410
+ - !ruby/object:Gem::Dependency
411
+ name: simplecov
412
+ requirement: !ruby/object:Gem::Requirement
413
+ requirements:
414
+ - - "~>"
415
+ - !ruby/object:Gem::Version
416
+ version: '0.22'
417
+ type: :development
418
+ prerelease: false
419
+ version_requirements: !ruby/object:Gem::Requirement
420
+ requirements:
421
+ - - "~>"
422
+ - !ruby/object:Gem::Version
423
+ version: '0.22'
424
+ - !ruby/object:Gem::Dependency
425
+ name: standard
426
+ requirement: !ruby/object:Gem::Requirement
427
+ requirements:
428
+ - - "~>"
429
+ - !ruby/object:Gem::Version
430
+ version: '1.35'
431
+ type: :development
432
+ prerelease: false
433
+ version_requirements: !ruby/object:Gem::Requirement
434
+ requirements:
435
+ - - "~>"
436
+ - !ruby/object:Gem::Version
437
+ version: '1.35'
438
+ - !ruby/object:Gem::Dependency
439
+ name: timecop
440
+ requirement: !ruby/object:Gem::Requirement
441
+ requirements:
442
+ - - "~>"
443
+ - !ruby/object:Gem::Version
444
+ version: '0.9'
445
+ type: :development
446
+ prerelease: false
447
+ version_requirements: !ruby/object:Gem::Requirement
448
+ requirements:
449
+ - - "~>"
450
+ - !ruby/object:Gem::Version
451
+ version: '0.9'
452
+ description: An engine which contains payment models and services for Supply Chain
453
+ Financing.
454
+ email:
455
+ - asratextras77@gmail.com
456
+ executables: []
457
+ extensions: []
458
+ extra_rdoc_files: []
459
+ files:
460
+ - MIT-LICENSE
461
+ - README.md
462
+ - Rakefile
463
+ - app/controllers/dscf/payment/application_controller.rb
464
+ - app/controllers/dscf/payment/payment_requests_controller.rb
465
+ - app/controllers/dscf/payment/payments_controller.rb
466
+ - app/jobs/dscf/payment/application_job.rb
467
+ - app/mailers/dscf/payment/application_mailer.rb
468
+ - app/models/dscf/payment/application_record.rb
469
+ - app/models/dscf/payment/payment.rb
470
+ - app/models/dscf/payment/payment_request.rb
471
+ - app/serializers/dscf/payment/payment_request_serializer.rb
472
+ - app/serializers/dscf/payment/payment_serializer.rb
473
+ - app/services/dscf/payment/banking_integration_service.rb
474
+ - app/services/dscf/payment/credit_integration_service.rb
475
+ - app/services/dscf/payment/payment_service.rb
476
+ - app/services/dscf/payment/settlement_account_service.rb
477
+ - config/locales/en.yml
478
+ - config/routes.rb
479
+ - db/migrate/20251002191758_create_dscf_payment_payment_requests.rb
480
+ - db/migrate/20251002191802_create_dscf_payment_payments.rb
481
+ - db/migrate/20251003005136_make_payment_request_accounts_optional.rb
482
+ - lib/dscf/payment.rb
483
+ - lib/dscf/payment/engine.rb
484
+ - lib/dscf/payment/errors.rb
485
+ - lib/dscf/payment/version.rb
486
+ - lib/tasks/dscf/payment_tasks.rake
487
+ - spec/factories/dscf/payment/payment_requests.rb
488
+ - spec/factories/dscf/payment/payments.rb
489
+ homepage: https://mksaddis.com/
490
+ licenses:
491
+ - MIT
492
+ metadata:
493
+ homepage_uri: https://mksaddis.com/
494
+ source_code_uri: https://github.com/BITS-DEVSEC
495
+ rdoc_options: []
496
+ require_paths:
497
+ - lib
498
+ required_ruby_version: !ruby/object:Gem::Requirement
499
+ requirements:
500
+ - - ">="
501
+ - !ruby/object:Gem::Version
502
+ version: '3.4'
503
+ required_rubygems_version: !ruby/object:Gem::Requirement
504
+ requirements:
505
+ - - ">="
506
+ - !ruby/object:Gem::Version
507
+ version: '0'
508
+ requirements: []
509
+ rubygems_version: 3.6.9
510
+ specification_version: 4
511
+ summary: An Engine for Supply Chain Financing
512
+ test_files: []