package com.saas.tenant.controller;

import com.saas.tenant.dto.response.TenantUserResponse;
import com.saas.tenant.service.TenantUserService;
import lombok.RequiredArgsConstructor;
import org.springframework.http.ResponseEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/tenant/users")
@PreAuthorize("hasAnyRole('TENANT_USER', 'TENANT_ADMIN', 'SYSTEM_ADMIN')")
@RequiredArgsConstructor
public class TenantUserController {

    private final TenantUserService tenantUserService;

    @GetMapping
    public ResponseEntity<List<TenantUserResponse>> getAllUsers() {
        return ResponseEntity.ok(tenantUserService.getAllUsers());
    }

    @GetMapping("/{id}")
    public ResponseEntity<TenantUserResponse> getUserById(@PathVariable Long id) {
        return ResponseEntity.ok(tenantUserService.getUserById(id));
    }
}
