Пример #1
0
            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')
Пример #2
0
            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')
Пример #3
0
        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()
Пример #4
0
              <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')
Пример #5
0
                  "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")
Пример #6
0
        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')
Пример #7
0
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')