37 lines
1.8 KiB
Java
37 lines
1.8 KiB
Java
package com.baiyue.auth.client;
|
|
|
|
import com.baiyue.common.core.api.ApiResponse;
|
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
|
import org.springframework.cloud.openfeign.FeignClient;
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
import org.springframework.web.bind.annotation.RequestHeader;
|
|
|
|
@FeignClient(name = "iam-service", contextId = "iamOnboardingClient",
|
|
url = "${baiyue.clients.iam.url:}", path = "/internal/iam")
|
|
public interface IamOnboardingClient {
|
|
@PostMapping("/merchant-registrations")
|
|
ApiResponse<OnboardingResponse> register(
|
|
@RequestHeader("X-Internal-Service-Token") String internalToken,
|
|
@RequestBody OnboardingRequest request);
|
|
|
|
@GetMapping("/merchant-registrations/{authUserId}")
|
|
ApiResponse<OnboardingResponse> registration(
|
|
@RequestHeader("X-Internal-Service-Token") String internalToken,
|
|
@PathVariable("authUserId") Long authUserId);
|
|
|
|
@DeleteMapping("/merchant-registrations/{authUserId}/compensation")
|
|
ApiResponse<Void> compensate(
|
|
@RequestHeader("X-Internal-Service-Token") String internalToken,
|
|
@PathVariable("authUserId") Long authUserId);
|
|
|
|
record OnboardingRequest(Long authUserId, String displayName, String companyName,
|
|
String legalPerson, String administratorPhone, String contactEmail,
|
|
String countryCode, String address) { }
|
|
|
|
record OnboardingResponse(Long tenantId, Long membershipId, String tenantStatus,
|
|
String dimensionInitializationStatus) { }
|
|
}
|