Index: src/main/java/com/napa/pulse/refactor/controller/RefactorReviewRestController.java =================================================================== diff -u -r36f3796560e1d00ab8c1c813e3044940cc062b29 -r56673438f68687388d8d1d267c861c745e72a4e6 --- src/main/java/com/napa/pulse/refactor/controller/RefactorReviewRestController.java (.../RefactorReviewRestController.java) (revision 36f3796560e1d00ab8c1c813e3044940cc062b29) +++ src/main/java/com/napa/pulse/refactor/controller/RefactorReviewRestController.java (.../RefactorReviewRestController.java) (revision 56673438f68687388d8d1d267c861c745e72a4e6) @@ -1,22 +1,48 @@ package com.napa.pulse.refactor.controller; +import com.google.gson.Gson; +import com.napa.pulse.annotations.JwtToken; import com.napa.pulse.dto.SKUTableWidgetData; +import com.napa.pulse.entity.security.User; +import com.napa.pulse.refactor.exception.UserNotAuthorizedException; +import com.napa.pulse.security.model.JwtUserData; +import com.napa.pulse.service.interfaces.ReviewService; +import com.napa.pulse.service.interfaces.UserService; +import com.napa.pulse.utils.PulseConstants; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.util.List; +import java.util.Map; + @RestController -@RequestMapping("/v2") +@RequestMapping("/auth/v2") public class RefactorReviewRestController { + private static final Logger LOGGER = LoggerFactory.getLogger(RefactorReviewRestController.class); + private final Gson gson = new Gson(); - @GetMapping("/sku-table-widget-data") - public ResponseEntity skuTableWidgetRestService(@RequestBody SKUTableWidgetData skuTableWidgetData){ - ResponseEntity response=new ResponseEntity<>("", HttpStatus.OK); + @Autowired + private ReviewService reviewService; + @Autowired + private UserService userService; - - + @GetMapping("/sku-table-widget-data") + public ResponseEntity skuTableWidgetRestService(@RequestBody @JwtToken(PulseConstants.JWT_USER_DETAILS) JwtUserData jwtUserData, + SKUTableWidgetData skuTableWidgetData) { + ResponseEntity response = new ResponseEntity<>("", HttpStatus.OK); + User user = userService.findUserByLogin(jwtUserData.getUsername()); + if(user==null){ + throw new UserNotAuthorizedException("user not found"); + } + List> skuData = reviewService.getSKUTableData(skuTableWidgetData, user); + response = new ResponseEntity<>(gson.toJson(skuData), HttpStatus.OK); return response; + } }