Advertisement
Guest User

Untitled

a guest
Jun 19th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.46 KB | None | 0 0
  1. @app.route('/signup',methods=['POST'])
  2. def makeNewUser():
  3.     data = json.loads(request.data.decode())
  4.     firstName = data['firstName']
  5.     lastName = data['lastName']
  6.     email = data['email']
  7.     password = hashlib.md5((data['password']).encode()).hexdigest()
  8.     street = data['street']
  9.     houseNumber = data['houseNumber']
  10.     zipCode = data['zipCode']
  11.     city = data['city']
  12.     province = data['province']
  13.     id_state = State.query.with_entities(State.id_state).filter_by(name=province).first() or 0
  14.  
  15.  
  16.  
  17.     if id_state == 0:
  18.         insertState = State(province)
  19.         db_session.add(insertState)
  20.         db_session.commit()
  21.  
  22.     id_state = State.query.with_entities(State.id_state).filter_by(name=province).first()
  23.  
  24.  
  25.  
  26.     if id_state != 0:
  27.         insertCity = City(id_state,city)
  28.         db_session.add(insertCity)
  29.         db_session.commit()
  30.  
  31.  
  32.  
  33.     id_city = City.query.with_entities(City.id_city).filter_by(name = city).first() or 0
  34.  
  35.     if id_city != 0:
  36.         insertAddress = Address(street, houseNumber, zipCode, id_city)
  37.         db_session.add(insertAddress)
  38.         db_session.commit()
  39.  
  40.  
  41.     id_mail = Login_info.query.with_entities(Login_info.mail).filter_by(mail = email).first() or 0
  42.  
  43.     if id_mail == 0:
  44.         insertLoginInfo = Login_info(email,password,'0')
  45.         db_session.add(insertLoginInfo)
  46.         db_session.commit()
  47.         id_address = Address.query.with_entities(Address.id_address).filter_by(street = street).filter_by(number = houseNumber).filter_by(city_code = zipCode).first() or 0
  48.  
  49.         if id_address != 0:
  50.  
  51.             insertUser = User(firstName,lastName,email,id_address)
  52.             db_session.add(insertUser)
  53.             db_session.commit()
  54.             msg = Message(
  55.                 'Make account',
  56.                 sender='best.ever.music.shop@gmail.com',
  57.                 recipients=
  58.                 [email])
  59.             msg.body = "Your account has been made. Enjoy our store"
  60.             mail.send(msg)
  61.  
  62.  
  63.     return jsonify({'result' : True})
  64.  
  65.  
  66.  
  67. @app.route('/reset',methods=['POST'])
  68. def reset():
  69.  
  70.     data = json.loads(request.data.decode())
  71.     email = data['email']
  72.     hash = data['hash']
  73.     password = hashlib.md5(data['password'].encode()).hexdigest()
  74.  
  75.     email_db = Login_info.query.with_entities(Login_info.mail).filter_by(mail = email).first() or 0
  76.     hash_db = Login_info.query.with_entities(Login_info.reset_hash).filter_by(reset_hash = hash).first() or 0
  77.  
  78.  
  79.     if email == email_db[0] and hash == hash_db[0]:
  80.         insertPassword = Login_info.query.filter_by(mail = email).first() or 0
  81.         if insertPassword !=0:
  82.             insertPassword.password = password
  83.             insertPassword.reset_hash = 0
  84.             db_session.commit()
  85.             msg = Message(
  86.                 'Password reset status',
  87.                 sender='best.ever.music.shop@gmail.com',
  88.                 recipients=
  89.                 [email])
  90.             msg.body = "Your password has been reset"
  91.             mail.send(msg)
  92.             return jsonify({'result': True})
  93.     else:
  94.         return jsonify({'result': False})
  95.  
  96.  
  97. @app.route('/updatestatus',methods=['POST','GET'])
  98. def updateStatus():
  99.     data = json.loads(request.data.decode())
  100.     email = data['email']
  101.     id_order = data['id_order']
  102.     status ='send'
  103.     msg = Message(
  104.         'Order status',
  105.         sender='best.ever.music.shop@gmail.com',
  106.         recipients=
  107.         [email])
  108.     msg.body = "Your order has been " + status
  109.     mail.send(msg)
  110.     insertStatus = Order.query.filter(Order.id_order ==  id_order).first()
  111.     insertStatus.status = status
  112.     db_session.commit()
  113.     return jsonify({'result': True})
  114.  
  115. @app.route('/makeneworder',methods=['POST','GET'])
  116. def makeNewOrder():
  117.     data = json.loads(request.data.decode())
  118.     email = data['email']
  119.     date = data['date']
  120.     cost = data['cost']
  121.     status = 'accepted'
  122.     msg = Message(
  123.         'Order status',
  124.         sender='best.ever.music.shop@gmail.com',
  125.         recipients=
  126.         [email])
  127.     msg.body = "Your order has been " + status
  128.     mail.send(msg)
  129.     id_user = db_session.query(User).with_entities(User.id_user).filter(User.mail == email).first()
  130.     insertOrder = Order(id_user,date,cost,status)
  131.     db_session.add(insertOrder)
  132.     db_session.commit()
  133.  
  134.     return jsonify({'result': True})
  135.  
  136.  
  137.  
  138.  
  139.  
  140. TO PONIŻEJ MUSISZ DODAĆ DO MODELU I JAK NAZWA W BAZIE SIE ROZNI TO ZMIENIC TA NAZWE W CIAPKACH
  141.  
  142. class Order(Base):
  143.     __tablename__ = 'Orders'
  144.     id_order = db.Column('id_orders',db.Integer, primary_key=True)
  145.     id_user = db.Column('id_user',db.Integer,db.ForeignKey('Users.id_user'))
  146.     date = db.Column('date',db.DateTime,nullable=False)
  147.     cost = db.Column('cost',db.Float, nullable=False)
  148.     status = db.Column('status',db.String(35))
  149.     userr = relationship("User",back_populates = "orderr")
  150.     bskt = relationship("Basket",back_populates = "ord")
  151.  
  152.     def __init__(self,user,date,cost,status):
  153.         self.id_user = user
  154.         self.date = date
  155.         self.cost = cost
  156.         self.status = status
  157.  
  158.     def toJson(self):
  159.         return {'Order' : {'id_order' : self.id_order, 'id_user' : self.id_user, 'date' : self.date, 'cost':  self.cost}}
  160.  
  161.     def get_id(self):
  162.         return self.id_order
  163.     def get_id_user(self):
  164.         return self.id_user
  165.     def get_date(self):
  166.         return self.date
  167.     def get_cost(self):
  168.         return self.cost
  169.     def __repr__(self):
  170.         return '<Order %r>' % (self.id_order)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement