Commit: e6d1548

Commit Details

SHAe6d1548c463d8763fb5547ff07a35c521f15c296
Tree2d2b62527861022ccf13eb205ea2bf7c0e4013fd
Author<f69e50@finnacloud.com> 1766442769 +0300
Committer<f69e50@finnacloud.com> 1766442769 +0300
Message
add initial test workflow file
GPG Signature
-----BEGIN PGP SIGNATURE-----

iQJSBAABCAA8FiEEWJb139mJI+vZ81KkoAIVSUsXI0oFAmlJxxEeHHNvcGhpYS5l
cmFzbGFuQGZpbm5hY2xvdWQuY29tAAoJEKACFUlLFyNKb7YP/2QctdaPuHu4+vFn
fh0Opgqt1brKy9JQxV9JZ9tF5XA+rWVi6pyIZK4lywX+a4er+h29sQY7TEHZt9Xn
meAyRUhPbRPmIpRJMMCgstfILUpjNMkMcPE80kJfpp6+ZmLtO8vC4TnW3ATCK1tv
XISV00T4ajCAhZUmYTveNsvSiMMv/Tq4sF9Is4ix+JN7O/lSLseRtuUE1Vv7T7nY
citxLPwR42Eb/1CYhy0JbRYXP816cbe6dGeDeiDZp7EHKx5D8VAqULKRsAL19tSX
hup8N7owBXieuzNQ4RyaDfDJAfNoN3o9pFeD6vQPq8s7x6AloN625g58p0ssxfK+
CGhR0YHR7atR0pEens22p7g2dVJ7NsrKqDBE3TTeUOpfXfjOwqpVh1Bn/v7a2Vg9
o9mhIClSOLfYv2SXJ06+fn8l6oc70nLJkBfcTevmeF//Z9yGH7TXZNUcedxuBbFg
xfEHeJibTamiE3Z1SfHW1YLwe7QqbBogCIxq4RrpYtN15a65vT5HxyLHDJDGG20V
7z34QJhKXIni/AIGscZqx2kE/C42KSD2fBvqvA4YnPwEUQyMvnSSDSKuJ6flXPTv
RsPZMdNsWWWyJ8P/NTo0Y/PPwA/28p9pX064H2lHFNvSEzUYJdKyQXNV3pGWYAvc
PR8Z+nHfbK/EF5jOVJ8+erXzzXUN
=COmA
-----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