passport.donations += stamps else: passport.stamps += stamps if socialStamp: passport.stamps += 0.25 purchase = Purchase(donation=isDonation, rrss=socialStamp, passport_id=passport.id) db.session.add(purchase) db.session.commit() buyToVendor = BuysToVendor(purchase_id=purchase.id, vendor_id=json["vendor_id"], stamps=stamps, price=stamps * passport.event.duff_value, user_id=get_jwt_identity()["id"]) db.session.add(buyToVendor) db.session.commit() return {'success': True}, 200 # Router api.add_resource(PassportList, '/passports') api.add_resource(PassportController, '/passport/<string:id>', '/passport') api.add_resource(PassportActivation, '/activate/passport/<string:id>', '/activate/passport') api.add_resource(PassportRecharge, '/passport/recharge') api.add_resource(PassportStamp, '/passport/stamp')
return {"success": True, "product": p}, 200 else: return {"success": False, "message": "Ya existe el producto"}, 400 def put(self): json = updateProduct.parse_args() vendor = Vendor.query.filter_by(id=json['id']).first() # if vendor is None: # return {"success":False, "message": VendorDoesntExist}, 400 product = Product.query.filter_by(id=json['product_id'], vendor_id=json['id']).first() if product is None: return {"success": False, "message": "Error"}, 400 else: product.name = json['name'] product.price = json['price'] db.session.commit() return {"success": True, "message": ProductChanged}, 200 # Router # api.add_resource(EventList, '/events') api.add_resource(VendorController, '/vendor/<string:id>', '/vendor') api.add_resource(VendorSells, '/vendor/registerSell', '/vendor/<string:id>/sells') api.add_resource(VendorProducts, '/vendor/<string:id>/products', '/vendor/products')
return {'success': True, 'vendors': vendors}, 201 class EventFoundations(Resource): def get(self, id): event = Event.query.filter_by(id=id).first() query = Vendor.query.filter_by(event_id=event.id, isFoundation=True) vendors = {} for i in query: vendors[str(i.name)] = i.id return {'success': True, 'vendors': vendors}, 201 # Router api.add_resource(EventList, '/events') api.add_resource(EventController, '/event/<string:id>', '/event') api.add_resource(EventVendors, '/event/<string:id>/vendors') api.add_resource(EventFoundations, '/event/<string:id>/foundations') def createEvent(date, name, location, duff_value, active=True): event = Event(date=date, name=name, location=location, duff_value=duff_value, active=active) db.session.add(event) dummy_passport = Passport(user_id=1, event=event) db.session.add(dummy_passport) db.session.commit()
<h5> <b> Fecha y hora: </b> ' + event["date"] + '</h5> <br>\ <h5> <b> ID: </b> ' + event["_id"] + '</h5> <br>\ </div>\ </td>\ </tr>\ </table>\ <table id="customers">' + trs + '</table>\ </div>\ </body>\ </html>' msg = Message("Confirmación de pago", sender='smarticket.support', recipients=[_json["email"]]) msg.html = str mail.send(msg) return {"success": True, "message": "sent"}, 200 ## Rutas api.add_resource(buyController, '/event/buyTicket') api.add_resource(BuyConfirmation, '/event/confirmation') api.add_resource(returnController, '/event/returnTicket') api.add_resource(eventsController, '/events') api.add_resource(eventController, '/event') api.add_resource(TicketController, '/tickets') api.add_resource(ReadEvent, '/event/name') api.add_resource(GetFirstEvent, '/event/getfirst') api.add_resource(ResellTicket, '/event/resellTicket') api.add_resource(SetTicketResell, '/event/setTicketResell') api.add_resource(CancelTicketResell, '/event/cancelTicketResell')
"First and Last name should be between 1 and 50 characters.") # Validate length of middle name: This is optional so can take None, but need to check if str is parsed if args['middle_name']: if not (0 < len(args['middle_name']) <= 50): abort( 400, message= "Middle name can either be blank or up to 50 characters long." ) # Check database if licence number already exists result = LicenceModel.query.filter_by( licence_number=gen_licence_num).first() if result: # Abort the Post request as driver already in DB: 409 error conflict abort(409, message="Licence already exists.") # Update args with licence number generated args['licence_number'] = gen_licence_num # Create a new instance new_data = LicenceModel(**args) # Add to DB and commit: db.session.add(new_data) db.session.commit() # Return Licence number as string return gen_licence_num # add path to api: Added additional resource to get specific licence_numbers api.add_resource(LicenceGET, "/licence/<string:licence_number>") api.add_resource(LicenceGETALL, "/licence") api.add_resource(LicencePOST, "/licences")
db.session.delete(product) db.session.commit() return product.name + ' deleted!' class ProductNoPara(Resource): @auth.login_required def post(self): name = request.json['name'] description = request.json['description'] price = request.json['price'] quantity = request.json['quantity'] new_product = Product(name, description, price, quantity) db.session.add(new_product) db.session.commit() return product_schema.jsonify(new_product) def get(self): products = Product.query.all() return products_schema.jsonify(products) # Routes api.add_resource(ProductPara, '/api/v1/product/<string:name>') api.add_resource(ProductNoPara, '/api/v1/product')
class UserEvents(Resource): def get(self, id): user = User.query.filter_by(id = id).first() events = [] if user is None: return {'success': False, 'message': UserDoesntExist } for passport in user.passports: e = passport.event print(e) date = int(time.mktime(e.date.timetuple())) events.append({ "name": e.name, "id": e.id, "date": date, "active": e.active, "location": e.location, "duff_value": e.duff_value, "passport_id": passport.id }) return {'success': True, 'user_events': events } # Router api.add_resource(UserList, '/users') api.add_resource(UserController, '/user/<string:id>', '/user') api.add_resource(UserActivate, '/activate/user/<string:token>', '/activate/user') api.add_resource(UserAuth, '/auth/user') api.add_resource(UserEvents, '/user/<string:id>/events')