Skip to content

Commit 4130d40

Browse files
Pylint Fixes
1 parent 28f3f1d commit 4130d40

File tree

11 files changed

+379
-251
lines changed

11 files changed

+379
-251
lines changed

server/database/app.js

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,35 @@
1+
/* jshint esversion: 8 */
2+
13
const express = require('express');
24
const mongoose = require('mongoose');
35
const fs = require('fs');
46
const cors = require('cors');
7+
const bodyParser = require('body-parser');
8+
59
const app = express();
610
const port = 3030;
711

812
app.use(cors());
9-
app.use(require('body-parser').urlencoded({ extended: false }));
13+
app.use(bodyParser.urlencoded({ extended: false }));
1014

11-
const reviews_data = JSON.parse(fs.readFileSync("reviews.json", 'utf8'));
12-
const dealerships_data = JSON.parse(fs.readFileSync("dealerships.json", 'utf8'));
15+
const reviewsData = JSON.parse(fs.readFileSync("reviews.json", 'utf8'));
16+
const dealershipsData = JSON.parse(fs.readFileSync("dealerships.json", 'utf8'));
1317

1418
mongoose.connect("mongodb://mongo_db:27017/", { dbName: 'dealershipsDB' });
1519

1620
const Reviews = require('./review');
1721
const Dealerships = require('./dealership');
1822

19-
try {
20-
Reviews.deleteMany({}).then(() => {
21-
Reviews.insertMany(reviews_data['reviews']);
22-
});
23-
Dealerships.deleteMany({}).then(() => {
24-
Dealerships.insertMany(dealerships_data['dealerships']);
25-
});
26-
} catch (error) {
27-
console.error('Error initializing the database:', error);
28-
}
23+
(async () => {
24+
try {
25+
await Reviews.deleteMany({});
26+
await Reviews.insertMany(reviewsData.reviews);
27+
await Dealerships.deleteMany({});
28+
await Dealerships.insertMany(dealershipsData.dealerships);
29+
} catch (error) {
30+
console.error('Error initializing the database:', error);
31+
}
32+
})();
2933

3034
// Express route to home
3135
app.get('/', async (req, res) => {
@@ -88,23 +92,23 @@ app.get('/fetchDealer/:id', async (req, res) => {
8892

8993
// Express route to insert review
9094
app.post('/insert_review', express.raw({ type: '*/*' }), async (req, res) => {
91-
const data = JSON.parse(req.body);
92-
const documents = await Reviews.find().sort({ id: -1 });
93-
let new_id = documents[0]['id'] + 1;
94-
95-
const review = new Reviews({
96-
"id": new_id,
97-
"name": data['name'],
98-
"dealership": data['dealership'],
99-
"review": data['review'],
100-
"purchase": data['purchase'],
101-
"purchase_date": data['purchase_date'],
102-
"car_make": data['car_make'],
103-
"car_model": data['car_model'],
104-
"car_year": data['car_year'],
105-
});
106-
10795
try {
96+
const data = JSON.parse(req.body);
97+
const documents = await Reviews.find().sort({ id: -1 });
98+
const newId = documents.length > 0 ? documents[0].id + 1 : 1;
99+
100+
const review = new Reviews({
101+
id: newId,
102+
name: data.name,
103+
dealership: data.dealership,
104+
review: data.review,
105+
purchase: data.purchase,
106+
purchase_date: data.purchase_date,
107+
car_make: data.car_make,
108+
car_model: data.car_model,
109+
car_year: data.car_year,
110+
});
111+
108112
const savedReview = await review.save();
109113
res.json(savedReview);
110114
} catch (error) {

server/database/dealership.js

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,45 @@
1+
/* jshint esversion: 6 */
2+
13
const mongoose = require('mongoose');
24

35
const Schema = mongoose.Schema;
46

57
const dealerships = new Schema({
6-
id: {
8+
id: {
79
type: Number,
810
required: true,
9-
},
10-
city: {
11+
},
12+
city: {
1113
type: String,
12-
required: true
14+
required: true,
1315
},
1416
state: {
1517
type: String,
16-
required: true
18+
required: true,
1719
},
1820
address: {
1921
type: String,
20-
required: true
22+
required: true,
2123
},
2224
zip: {
2325
type: String,
24-
required: true
26+
required: true,
2527
},
2628
lat: {
2729
type: String,
28-
required: true
30+
required: true,
2931
},
3032
long: {
3133
type: String,
32-
required: true
34+
required: true,
3335
},
3436
short_name: {
3537
type: String,
3638
},
3739
full_name: {
3840
type: String,
39-
required: true
40-
}
41+
required: true,
42+
},
4143
});
4244

4345
module.exports = mongoose.model('dealerships', dealerships);

server/database/inventory.js

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,35 @@
1+
/* jshint esversion: 6 */
2+
13
const { Int32 } = require('mongodb');
24
const mongoose = require('mongoose');
35

46
const Schema = mongoose.Schema;
57

68
const cars = new Schema({
7-
dealer_id: {
9+
dealer_id: {
810
type: Number,
9-
required: true
10-
},
11-
make: {
11+
required: true,
12+
},
13+
make: {
1214
type: String,
13-
required: true
15+
required: true,
1416
},
15-
model: {
17+
model: {
1618
type: String,
17-
required: true
19+
required: true,
1820
},
19-
bodyType: {
21+
bodyType: {
2022
type: String,
21-
required: true
23+
required: true,
2224
},
23-
year: {
25+
year: {
2426
type: Number,
25-
required: true
27+
required: true,
2628
},
27-
mileage: {
29+
mileage: {
2830
type: Number,
29-
required: true
30-
}
31+
required: true,
32+
},
3133
});
3234

3335
module.exports = mongoose.model('cars', cars);

server/database/review.js

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,45 @@
1+
/* jshint esversion: 6 */
2+
13
const mongoose = require('mongoose');
24

35
const Schema = mongoose.Schema;
46

57
const reviews = new Schema({
6-
id: {
8+
id: {
79
type: Number,
810
required: true,
9-
},
10-
name: {
11+
},
12+
name: {
1113
type: String,
12-
required: true
14+
required: true,
1315
},
1416
dealership: {
1517
type: Number,
1618
required: true,
1719
},
1820
review: {
1921
type: String,
20-
required: true
22+
required: true,
2123
},
2224
purchase: {
2325
type: Boolean,
24-
required: true
26+
required: true,
2527
},
2628
purchase_date: {
2729
type: String,
28-
required: true
30+
required: true,
2931
},
3032
car_make: {
3133
type: String,
32-
required: true
34+
required: true,
3335
},
3436
car_model: {
3537
type: String,
36-
required: true
38+
required: true,
3739
},
3840
car_year: {
3941
type: Number,
40-
required: true
42+
required: true,
4143
},
4244
});
4345

server/djangoapp/models.py

Lines changed: 17 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,8 @@
1-
# Uncomment the following imports before adding the Model code
2-
3-
# from django.db import models
4-
# from django.utils.timezone import now
5-
# from django.core.validators import MaxValueValidator, MinValueValidator
6-
7-
8-
# Create your models here.
9-
10-
# <HINT> Create a Car Make model `class CarMake(models.Model)`:
11-
# - Name
12-
# - Description
13-
# - Any other fields you would like to include in car make model
14-
# - __str__ method to print a car make object
15-
16-
17-
# <HINT> Create a Car Model model `class CarModel(models.Model):`:
18-
# - Many-To-One relationship to Car Make model (One Car Make has many
19-
# Car Models, using ForeignKey field)
20-
# - Name
21-
# - Type (CharField with a choices argument to provide limited choices
22-
# such as Sedan, SUV, WAGON, etc.)
23-
# - Year (IntegerField) with min value 2015 and max value 2023
24-
# - Any other fields you would like to include in car model
25-
# - __str__ method to print a car make object
26-
27-
# Uncomment the following imports before adding the Model code
281
from django.db import models
292
from django.utils.timezone import now
303
from django.core.validators import MaxValueValidator, MinValueValidator
4+
from django.contrib import admin
5+
316

327
# Create your models here.
338

@@ -39,12 +14,14 @@ class CarMake(models.Model):
3914
created_at = models.DateTimeField(default=now, editable=False) # Timestamp for creation
4015

4116
def __str__(self):
42-
return self.name # String representation of the CarMake object
17+
return self.name # String representation
18+
4319

4420
# Car Model model
4521
class CarModel(models.Model):
46-
# Establish a Many-to-One relationship with CarMake
47-
car_make = models.ForeignKey(CarMake, on_delete=models.CASCADE, related_name='models')
22+
car_make = models.ForeignKey(
23+
CarMake, on_delete=models.CASCADE, related_name='models'
24+
)
4825
name = models.CharField(max_length=100) # Car model name
4926
dealer_id = models.IntegerField() # Reference to dealer in Cloudant database
5027

@@ -55,22 +32,26 @@ class CarModel(models.Model):
5532
('WAGON', 'Wagon'),
5633
('TRUCK', 'Truck'),
5734
('COUPE', 'Coupe'),
58-
# Add more car types if required
5935
]
60-
type = models.CharField(max_length=10, choices=CAR_TYPES, default='SUV') # Car type
36+
type = models.CharField(
37+
max_length=10,
38+
choices=CAR_TYPES,
39+
default='SUV'
40+
) # Car type
41+
6142
year = models.IntegerField(
6243
validators=[
6344
MinValueValidator(2015),
6445
MaxValueValidator(2023)
6546
],
6647
default=2023
6748
) # Year of the car model
68-
description = models.TextField(blank=True, null=True) # Optional description of the car model
49+
50+
description = models.TextField(blank=True, null=True) # Optional description
6951

7052
def __str__(self):
71-
return f"{self.car_make.name} {self.name} ({self.type})" # String representation of the CarModel object
53+
return f"{self.car_make.name} {self.name} ({self.type})"
54+
7255

73-
# Register models to the Django Admin site
74-
from django.contrib import admin
7556
admin.site.register(CarMake)
7657
admin.site.register(CarModel)

0 commit comments

Comments
 (0)