예제 #1
0
def RegisterUserInDB(username, password):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()

      findRecentMemberIdFormat = findLastMemberIdQuery
      mycursor.execute(findRecentMemberIdFormat)
      myresult = mycursor.fetchall()

      latestUserId = 0

      for entry in myresult:
            latestUserId = entry[0]
      if latestUserId:
            latestUserId += 1
      else:
            latestUserId = 1

      values = (username, password, latestUserId)

      try:
            mycursor.execute(insertUsersQuery, values)
            mydb.commit()
            mydb.close()
      except mysql.connector.IntegrityError as err:
            mydb.rollback()
            mydb.close()
            # print("Error received: {0}".format(err))
            return -999
      except:
            mydb.rollback()
            mydb.close()
            return -1

      return latestUserId
예제 #2
0
def FindUserWithID(username, id):
      mydb = dbConnection.openConnection()
      myCursor = mydb.cursor()

      print(findUserWithIdQuery.format(id, username))
      myCursor.execute(findUserWithIdQuery.format(id, username))
      results = myCursor.fetchall()
      userResult = None

      for userId, password, memberId in results:
            userResult = {'username': userId, 'memberId': memberId}
            
            print("memberID = {0}, userId = {1}".format(str(userResult['memberId']), str(userId)))
            
            if userResult['username'] == username and str(userResult['memberId']) == str(id):
                  print("Matching records in credentials found")
                  return 1
      
      print(userResult)
      mydb.close()
      if userResult == None:
            print("No records in credentials found")
            mydb.close()
            return -1
      else:
            print("Mismatching records in credentials found")
            mydb.close()
            return 0
예제 #3
0
def GetAllDonorsWithId(id):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()
      donors = []
      
      try:
            mycursor.execute(getDonorsByIdQuery.format(id))
            myresult = mycursor.fetchall()
            
            mydb.close()
            donors = []

            for userId, name, area, bloodgroup, city in myresult:
                  donors.append({
                        'userId': userId,
                        'name': name,
                        'area': area,
                        'bloodGroup': bloodgroup,
                        'city': city
                  })

      except:
            donors = None
            print("Error in Get All Patients DB Call")            
            mydb.close()

      return donors
예제 #4
0
def GetAllPatientsWithGroup(bloodGroup):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()
      patients = []
      
      try:
            mycursor.execute(getAllPatientsBloodQuery.format(bloodGroup))
            myresult = mycursor.fetchall()
            mydb.close()

            for userId, name, area, bloodgroup, city in myresult:
                  print({
                        'userId': userId,
                        'name': name,
                        'area': area,
                        'bloodGroup': bloodgroup,
                        'city': city
                  })
                  patients.append({
                        'userId': userId,
                        'name': name,
                        'area': area,
                        'bloodGroup': bloodgroup,
                        'city': city
                  })
      except:
            patients = None
            print("Error in Get All Patients DB Call")

      return patients
예제 #5
0
def GetUserStatus(userId):
      mydb = dbConnection.openConnection()
      myCursor = mydb.cursor()

      try:
            myCursor.execute(findUserStatusFromPatient.format(userId))
            results = myCursor.fetchall()
            row = None

            for iddonors, memberId, dateOfRequest in results:
                  row = {
                        'id': memberId,
                        'dateOfRequest': dateOfRequest,
                        'status': 'patient'
                  }
                  print (row)
            
            if row == None:
                  myCursor.execute(finduserStatusFromDonor.format(userId))
                  results = myCursor.fetchall()
                  for iddonors, memberId, dateOfRequest in results:
                      row = {
                        'id': memberId,
                        'dateOfRequest': dateOfRequest,
                        'status': 'donor'
                  }
                  print (row)

            mydb.close()
            return row
      except mysql.connector.Error as err:
            print("Error in finding User Registration: {0}".format(err))
            mydb.close()
            return None
예제 #6
0
def FindUserRegistration(id):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()
      print("userId: {0}".format(id))

      try:
            mycursor.execute(findUserRegistrationQuery.format(id))
            results = mycursor.fetchall()

            row = None

            for memberId, name, area, phoneNumber, bloodGroup, city, isActive in results:
                  row = {
                        'userId': memberId, 
                        'name': name,
                        'area': area,
                        'phoneNumber': phoneNumber,
                        'bloodGroup': bloodGroup,
                        'city': city,
                  }
            print("Row: {0}".format(row))
            mydb.close()
            return row
      except mysql.connector.Error as err:
            print("Error in finding User Registration: {0}".format(err))
            mydb.close()
            return None
예제 #7
0
def FindUser(username, password):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()

      userQueryFormat = finduserQueryFormat
      
      mycursor.execute(userQueryFormat.format(username,password))
      myresult = mycursor.fetchall()
      mydb.close()

      for user in myresult:
            print(user)
            return user[2]
      
      mydb.close()
      return -1
예제 #8
0
def AddUserProfile(userId, username, name, area, city, phoneNumber, bloodGroup):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()
      values = (userId, name, area, phoneNumber, bloodGroup, city)
      try:
            mycursor.execute(insertUserProfileQuery, values)
            mydb.commit()
            mydb.close()
      except mysql.connector.IntegrityError as err:
            print("Error received: {0}".format(err))
            mydb.close()
            return False
      except:
            print("Error received.")
            mydb.close()
            return False
      return True
예제 #9
0
def SetUserStatusDonor(userId):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()

      findRecentMemberIdFormat = findLastDonorId
      mycursor.execute(findRecentMemberIdFormat)
      myresult = mycursor.fetchall()

      lastId = 0

      for id in myresult:
            lastId = id[0]
      
      if lastId is None:
            lastId = 0

      lastId += 1

      print("{0} is the highest donor ID".format(lastId))

      dateToday = datetime.datetime.now().strftime("%y-%m-%d")
      
      try:
            finalQuery = insertDonorsQuery.format(lastId, userId, dateToday)
            print(finalQuery)
            mycursor.execute(finalQuery)
            mydb.commit()
            print("Insert query committed")
            mydb.close()
      except mysql.connector.IntegrityError:
            print("Error received in SetUserStatusDonor 1")
            mydb.rollback()
            mydb.close()
            return False
      except Error as err:
            print("Error received in SetUserStatusDonor 2: {0}".format(err))
            mydb.rollback()
            mydb.close()
            return False
      
      return True
예제 #10
0
def DeleteDonor(userId):
      mydb = dbConnection.openConnection()
      mycursor = mydb.cursor()

      try:
            finalQuery = deleteDonorsQuery.format(userId)
            print(finalQuery)
            mycursor.execute(finalQuery)
            mydb.commit()
            mydb.close()
      except mysql.connector.IntegrityError:
            print("Error received in DeleteDonor 1")
            mydb.rollback()
            mydb.close()
            return False
      except Error as err:
            print("Error received in DeleteDonor 2: {0}".format(err))
            mydb.rollback()
            mydb.close()
            return False
      return True