Skip to content

Instantly share code, notes, and snippets.

@mafei-dev
Created July 17, 2022 20:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mafei-dev/d376a7aa4a86a0c8875311dadbfb1aa3 to your computer and use it in GitHub Desktop.
Save mafei-dev/d376a7aa4a86a0c8875311dadbfb1aa3 to your computer and use it in GitHub Desktop.
package org.mono.stacksaga.example.deliveryservice.controller;
import lombok.AllArgsConstructor;
import org.mono.stacksaga.example.deliveryservice.dto.StartDeliveryRequestBody;
import org.mono.stacksaga.example.deliveryservice.dto.StartDeliveryResponseBody;
import org.mono.stacksaga.example.deliveryservice.dto.StartDeliveryRevertRequestBody;
import org.mono.stacksaga.example.deliveryservice.dto.StartDeliveryRevertResponseBody;
import org.mono.stacksaga.example.deliveryservice.service.DeliveryDetailService;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
@AllArgsConstructor
public class DeliveryController {
private final DeliveryDetailService deliveryDetailService;
@PostMapping("/start")
public ResponseEntity<StartDeliveryResponseBody> startDelivery(@RequestBody StartDeliveryRequestBody requestBody) {
String trackingNumber = deliveryDetailService.startDelivery(
requestBody.getOrderUid(),
requestBody.getUserUid()
);
return ResponseEntity.ok(
StartDeliveryResponseBody.builder()
.trackingNumber(trackingNumber)
.build()
);
}
@PutMapping("/start/revert")
public ResponseEntity<?> startDeliveryRevert(@RequestBody StartDeliveryRevertRequestBody requestBody) {
deliveryDetailService.startDeliveryRevert(requestBody.getTrackingNumber());
return ResponseEntity.ok().build();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment