package com.tourguide.api.guide;
|
|
import com.tourguide.common.api.ApiResponse;
|
import com.tourguide.modules.user.dto.GuideRealtimeStatusRequest;
|
import com.tourguide.modules.user.dto.GuideRealtimeStatusResponse;
|
import com.tourguide.modules.user.service.GuideRealtimeStatusService;
|
import com.tourguide.security.AppUserPrincipal;
|
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PutMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import javax.validation.Valid;
|
|
/** 导游端实时定位及接单状态接口。 */
|
@RestController
|
@RequestMapping("/api/guide/realtime-status")
|
public class GuideRealtimeStatusController {
|
private final GuideRealtimeStatusService statusService;
|
|
public GuideRealtimeStatusController(GuideRealtimeStatusService statusService) {
|
this.statusService = statusService;
|
}
|
|
@GetMapping
|
public ApiResponse<GuideRealtimeStatusResponse> get(@AuthenticationPrincipal AppUserPrincipal principal) {
|
return ApiResponse.success(statusService.get(principal.getUserId()));
|
}
|
|
@PutMapping
|
public ApiResponse<GuideRealtimeStatusResponse> update(
|
@AuthenticationPrincipal AppUserPrincipal principal,
|
@Valid @RequestBody GuideRealtimeStatusRequest request) {
|
return ApiResponse.success(statusService.update(principal.getUserId(), request));
|
}
|
}
|