Commit: 188fc92

Commit Details

SHA188fc92ac938e5ecdaaba64fb6d1dbffeba30181
Tree2cc04755c4f7f8be29aafd7e581f1f25e14edd58
Author<f69e50@finnacloud.com> 1766442998 +0300
Committer<f69e50@finnacloud.com> 1766442998 +0300
Message
increment
GPG Signature
-----BEGIN PGP SIGNATURE-----

iQJSBAABCAA8FiEEWJb139mJI+vZ81KkoAIVSUsXI0oFAmlJx/YeHHNvcGhpYS5l
cmFzbGFuQGZpbm5hY2xvdWQuY29tAAoJEKACFUlLFyNKyF8P/j6F8McjkGTBhDFX
frSY0CqkszvNegnZnDj4AkVjoJl7AK0RY0KLLQxrRUJq/MIA/FPj9G7df9jUJcae
TS+tvTZzWOXZ3EXomyNPangFgm5yAgmelwJYgeQdTmzIY3miM8/BdQg10GNC6Fjq
iEn6PKkpkItfiy+vftAABqe73SI9Vn6nwkUn2zVEsXBX1Kmv/ya9auodjFegvcbz
pRx5BL3xNYaA57c8WG9Fx+XaQPdaeLMcu/kM8diY0XTWqtdR+OfrPlU2JOApB0yO
G4P6zG6h5w2XWCqtbqfszDt94drbArJ9cQbWLlgbiNjpK+qJVvG+HGXxPGgvzLA3
9HhZxzUJobkt0MycngmZryj25b6kdO6OA5BCBCjdMkHjIvmBpLXYD5y5uYnerR0n
YEDyB5noRAiYbb2Skg1dp9dpNxq5LF1WkJpWM+nCXlOU6jKj3ucOJ7JP2+gVWA7N
jFdEUIfX65Q9CcBQqQX1vWyGJCc/Z0sNGE0Dc06PrpPk/U10oFNZOdCbUNEWU4Pk
yqATdaAI1BdvZjAip6QQ/jtIuHkwigAk9uUp21VlZ1NnXXLixmA53y12fi8f3DnB
yl55qYeoTOyEg5N7k1ukOt5rgoJ28szscEwvYmwL56uDtlrXly/vrSNrMi322aJK
IJeozLKMpf6Q9A3vN000vGTA6VjP
=Whh7
-----END PGP SIGNATURE-----

✓ Verified

File: src/main/java/com/paymentlink/service/ShippingService.java

1 package com.paymentlink.service;
2
3 import org.springframework.stereotype.Service;
4
5 @Service
6 public class ShippingService {
7
8 /**
9 * Calculate shipping cost based on method and country
10 */
11 public long calculateShippingCost(String method, String country) {
12 if (method == null || method.isEmpty()) {
13 method = "standard";
14 }
15
16 // Base rates in cents
17 long baseRate = switch (method.toLowerCase()) {
18 case "express" -> 2000; // $20
19 case "overnight" -> 3500; // $35
20 default -> 1000; // $10 for standard
21 };
22
23 // International shipping surcharge
24 if (country != null && !country.equals("US")) {
25 baseRate += 1500; // $15 surcharge
26 }
27
28 return baseRate;
29 }
30
31 /**
32 * Get available shipping methods
33 */
34 public String[] getAvailableShippingMethods() {
35 return new String[]{"standard", "express", "overnight"};
36 }
37
38 /**
39 * Validate shipping method
40 */
41 public boolean isValidShippingMethod(String method) {
42 if (method == null) return false;
43 String lower = method.toLowerCase();
44 return lower.equals("standard") || lower.equals("express") || lower.equals("overnight");
45 }
46 }
47
48