Exemple #1
0
 def rt_car(self, car_id, rent, origin, destination):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     data = {
         "_id":
         car_id,
         "rent_data": [{
             "fare": rent,
             "date_of_rent_human": self.dt_strg,
             'date_of_rent_unix': self.dt_unix
         }]
     }
     try:
         response = coll.car_rent.update({"_id": ObjectId(car_id)}, {
             '$push': {
                 "rent_data": {
                     "fare": rent,
                     "date_of_rent_human": self.dt_strg,
                     'date_of_rent_unix': self.dt_unix,
                     "origin": origin,
                     "destination": destination
                 }
             }
         },
                                         upsert=True)
         coll.car_info.update({"_id": ObjectId(car_id)},
                              {"$set": {
                                  "status": "rented"
                              }})
         return True
     except:
         return False
Exemple #2
0
 def save_car(self, manufacturer, model, color, yob, rto_reg, fuel_type,
              cost_price, selling_price, car_for, status):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     data = {
         "manufacturer": manufacturer,
         "model": model,
         "color": color,
         "yob": yob,
         "rto_reg": rto_reg,
         "fuel_type": fuel_type,
         'date_of_list_human': self.dt_strg,
         'date_of_list_unix': self.dt_unix,
         'cost_price': cost_price,
         'selling_price': selling_price,
         'car_for': car_for,
         "status": status
     }
     try:
         car_id = coll.car_info.insert_one(data).inserted_id
         print car_id
         if car_id:
             return {'success': str(car_id)}
     except DuplicateKeyError, e:
         print e
         return {'error': 'Registration number exist'}
Exemple #3
0
 def fetch_rent(self, car_id):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     try:
         result = coll.car_rent.find_one({"_id": ObjectId(car_id)})
         return result
     except:
         return False
Exemple #4
0
 def fetch_one(self, car_id):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     try:
         response = coll.car_info.find_one({"_id": ObjectId(car_id)})
         response['_id'] = car_id
         return response
     except:
         return False
Exemple #5
0
 def revoke(self, car_id):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     try:
         coll.car_info.update({"_id": ObjectId(car_id)},
                              {"$set": {
                                  "status": ""
                              }})
         return True
     except:
         return False
Exemple #6
0
 def fetch_all(self, list_type):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     if list_type:
         response = coll.car_info.find({"car_for": list_type})
     else:
         response = coll.car_info.find()
     response_list = []
     for res in response:
         id = str(res['_id'])
         res['_id'] = id
         response_list.append(res)
     return response_list
Exemple #7
0
 def sl_car(self, car_id, selling_price):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     try:
         response = coll.car_info.update(
             {"_id": ObjectId(car_id)},
             {"$set": {
                 "selling_price": selling_price,
                 "status": "sold"
             }})
         print response
         return True
     except:
         return False
Exemple #8
0
 def cal_sale_prof(self):
     conn = init()
     db = conn.innovaccer
     coll = db.cars
     try:
         result = coll.car_info.aggregate([{
             '$group': {
                 '_id': None,
                 'sale': {
                     '$sum': '$selling_price'
                 }
             }
         }])
         print[result for result in result]
         return True
     except:
         return False