|
16 | 16 | from .populate import initiate
|
17 | 17 |
|
18 | 18 | from .models import CarMake, CarModel
|
| 19 | +from .restapis import get_request, analyze_review_sentiments, post_review |
19 | 20 |
|
20 | 21 | # Get an instance of a logger
|
21 | 22 | logger = logging.getLogger(__name__)
|
@@ -91,17 +92,46 @@ def registration(request):
|
91 | 92 |
|
92 | 93 | # # Update the `get_dealerships` view to render the index page with
|
93 | 94 | # a list of dealerships
|
94 |
| -# def get_dealerships(request): |
95 |
| -# ... |
| 95 | +#Update the `get_dealerships` render list of dealerships all by default, particular state if state is passed |
| 96 | +def get_dealerships(request, state="All"): |
| 97 | + if(state == "All"): |
| 98 | + endpoint = "/fetchDealers" |
| 99 | + else: |
| 100 | + endpoint = "/fetchDealers/"+state |
| 101 | + dealerships = get_request(endpoint) |
| 102 | + return JsonResponse({"status":200,"dealers":dealerships}) |
96 | 103 |
|
97 | 104 | # Create a `get_dealer_reviews` view to render the reviews of a dealer
|
98 |
| -# def get_dealer_reviews(request,dealer_id): |
99 |
| -# ... |
| 105 | +def get_dealer_reviews(request, dealer_id): |
| 106 | + # if dealer id has been provided |
| 107 | + if(dealer_id): |
| 108 | + endpoint = "/fetchReviews/dealer/"+str(dealer_id) |
| 109 | + reviews = get_request(endpoint) |
| 110 | + for review_detail in reviews: |
| 111 | + response = analyze_review_sentiments(review_detail['review']) |
| 112 | + print(response) |
| 113 | + review_detail['sentiment'] = response['sentiment'] |
| 114 | + return JsonResponse({"status":200,"reviews":reviews}) |
| 115 | + else: |
| 116 | + return JsonResponse({"status":400,"message":"Bad Request"}) |
100 | 117 |
|
101 | 118 | # Create a `get_dealer_details` view to render the dealer details
|
102 |
| -# def get_dealer_details(request, dealer_id): |
103 |
| -# ... |
| 119 | +def get_dealer_details(request, dealer_id): |
| 120 | + if(dealer_id): |
| 121 | + endpoint = "/fetchDealer/"+str(dealer_id) |
| 122 | + dealership = get_request(endpoint) |
| 123 | + return JsonResponse({"status":200,"dealer":dealership}) |
| 124 | + else: |
| 125 | + return JsonResponse({"status":400,"message":"Bad Request"}) |
104 | 126 |
|
105 | 127 | # Create a `add_review` view to submit a review
|
106 |
| -# def add_review(request): |
107 |
| -# ... |
| 128 | +def add_review(request): |
| 129 | + if(request.user.is_anonymous == False): |
| 130 | + data = json.loads(request.body) |
| 131 | + try: |
| 132 | + response = post_review(data) |
| 133 | + return JsonResponse({"status":200}) |
| 134 | + except: |
| 135 | + return JsonResponse({"status":401,"message":"Error in posting review"}) |
| 136 | + else: |
| 137 | + return JsonResponse({"status":403,"message":"Unauthorized"}) |
0 commit comments