package com.pollex.pam.web.rest;
|
|
import com.pollex.pam.service.CustomerService;
|
import com.pollex.pam.service.dto.CustomerDTO;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.http.HttpStatus;
|
import org.springframework.http.ResponseEntity;
|
import org.springframework.util.Assert;
|
import org.springframework.util.StringUtils;
|
import org.springframework.web.bind.annotation.*;
|
|
@RestController
|
@RequestMapping("/api/customer/info")
|
public class CustomerInfoResource {
|
|
@Autowired
|
CustomerService customerService;
|
|
@GetMapping("")
|
public ResponseEntity<CustomerDTO> getLoggedCustomerInfo() {
|
return new ResponseEntity<>(customerService.getLoggedCustomerDTO(), HttpStatus.OK);
|
}
|
|
@PutMapping("")
|
public ResponseEntity<Void> updateLoggedCustomerInfo(@RequestBody CustomerDTO customerDTO) {
|
boolean hasEmail = StringUtils.hasText(customerDTO.getEmail());
|
boolean hasPhone = StringUtils.hasText(customerDTO.getPhone());
|
Assert.isTrue(hasEmail || hasPhone, "the email and the phone both are empty!");
|
|
customerService.updateLoggedCustomer(customerDTO);
|
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
}
|
}
|