added propulsion type methods

This commit is contained in:
yannick.blanken@csc-online.eu 2022-06-22 07:15:08 +02:00
parent 4f3085b52b
commit d57ae66601
10 changed files with 75 additions and 14 deletions

View File

@ -0,0 +1,37 @@
package eu.csc.ODPAppVehOwnServer.controller.customer;
import eu.csc.ODPAppVehOwnServer.controller.AbstractRestController;
import eu.csc.ODPAppVehOwnServer.persistence.services.CustomerService;
import eu.csc.ODPAppVehOwnServer.persistence.services.DeviceService;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.logging.Logger;
@RestController
@RequestMapping("/customer/devices")
public class CustomerDeviceController extends AbstractRestController {
private static final Logger logger = Logger.getLogger(CustomerDeviceController.class.getSimpleName());
@Autowired
private DeviceService deviceService;
@Autowired
private CustomerService customerService;
@GetMapping
public ResponseEntity getUserDevices() {
logger.info("getting user devices");
var user = getLoggedInWebUserDetails();
var result = dtoMapper.mapCustomerDevicesToDto(customerService.findAllDevices(user.getUserId()));
return ResponseEntity.ok(result);
}
}

View File

@ -14,7 +14,7 @@ import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("devices")
@RequestMapping("/devices")
public class DeviceController {
@Autowired

View File

@ -13,7 +13,7 @@ import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("languages")
@RequestMapping("/languages")
public class LanguageController {
@Autowired

View File

@ -1,8 +1,11 @@
package eu.csc.ODPAppVehOwnServer.controller.data;
import eu.csc.ODPAppVehOwnServer.controller.AbstractRestController;
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
import eu.csc.ODPAppVehOwnServer.models.data.PropulsionTypeDto;
import eu.csc.ODPAppVehOwnServer.persistence.services.DataService;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -13,13 +16,15 @@ import java.util.List;
@RestController
@RequestMapping("/propulsiontypes")
public class PropulsionTypeController {
public class PropulsionTypeController extends AbstractRestController {
@Autowired
private DataService dataService;
@GetMapping
public ResponseEntity<List<PropulsionTypeDto>> showPropulsionType(){
var result = new ArrayList<PropulsionTypeDto>();
//result.add(new LanguageDto("en", "English"));
var result = dtoMapper.mapPropulsionTypesToDto(dataService.getPropulsionTypes());
return ResponseEntity.ok(result);
}

View File

@ -21,7 +21,7 @@ import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("vehicles")
@RequestMapping("/vehicles")
public class VehicleController {
@Autowired

View File

@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.logging.Logger;
@RestController
@RequestMapping("reg/devices")
@RequestMapping("/reg/devices")
public class DeviceRegistrationController extends AbstractRestController {
private static final Logger logger = Logger.getLogger(DeviceRegistrationController.class.getSimpleName());
@ -29,6 +29,8 @@ public class DeviceRegistrationController extends AbstractRestController {
@GetMapping
public ResponseEntity getUserDevices() {
logger.info("getting user devices");
var user = getLoggedInWebUserDetails();
var result = dtoMapper.mapCustomerDevicesToDto(customerService.findAllDevices(user.getUserId()));

View File

@ -43,6 +43,7 @@ public class RegistrationController {
user.setPhone(signUpDto.getPhone());
user.setStreet(signUpDto.getStreet());
//user.setPostal(signUpDto.getStreet());
userRepository.save(user);

View File

@ -15,7 +15,7 @@ import java.util.List;
import java.util.logging.Logger;
@RestController
@RequestMapping("reg/vehicles")
@RequestMapping("/reg/vehicles")
public class VehicleRegistrationController extends AbstractRestController {
private static final Logger logger = Logger.getLogger(VehicleRegistrationController.class.getSimpleName());
@ -30,10 +30,9 @@ public class VehicleRegistrationController extends AbstractRestController {
List<CustomerVehicleDto> result = new ArrayList<>();
for (var userVehicle:
for (var userVehicle :
customerService.findAllVehicles(user.getUserId())
) {
) {
var mapped = new CustomerVehicleDto();
mapped.setVin(userVehicle.getVin());

View File

@ -4,12 +4,14 @@ package eu.csc.ODPAppVehOwnServer.mapper;
import eu.csc.ODPAppVehOwnServer.models.VehicleBrandDto;
import eu.csc.ODPAppVehOwnServer.models.data.DeviceDto;
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
import eu.csc.ODPAppVehOwnServer.models.data.PropulsionTypeDto;
import eu.csc.ODPAppVehOwnServer.models.regist.CustomerDeviceDto;
import eu.csc.ODPAppVehOwnServer.models.regist.CustomerVehicleDto;
import eu.csc.ODPAppVehOwnServer.persistence.entity.customer.CustomerDeviceEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.customer.CustomerVehicleEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.DeviceEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.LanguageEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.PropulsionTypeEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.VehicleBrandEntity;
import lombok.var;
import org.mapstruct.Mapping;
@ -48,6 +50,22 @@ public class DtoMapper {
return result;
}
public List<PropulsionTypeDto> mapPropulsionTypesToDto(List<PropulsionTypeEntity> items){
return items.stream()
.map(this::mapPropulsionTypeToDto)
.collect(Collectors.toList());
}
private PropulsionTypeDto mapPropulsionTypeToDto(PropulsionTypeEntity item) {
var result = new PropulsionTypeDto();
result.setName(item.getName());
result.setPropulsionId(item.getTypeId());
result.setId(item.getId());
return result;
}
public List<CustomerDeviceDto> mapCustomerDevicesToDto(List<CustomerDeviceEntity> items) {
return items.stream()
.map(this::mapCustomerDeviceToDto)

View File

@ -9,14 +9,13 @@ import lombok.Setter;
@NoArgsConstructor
public class UserRegistrationDto extends AbstractBaseDto{
private String firstname;
private String lastname;
private String password;
private String firstname;
private String lastname;
private String email;
private String phone;
private String street;
private String city;
}