James McCool
commited on
Commit
·
b60f2be
1
Parent(s):
c844a90
Refactor database queries to remove unnecessary 'Team_count' filtering, ensuring valid lineup retrieval across multiple sports
Browse files- database_queries.py +42 -42
database_queries.py
CHANGED
|
@@ -246,18 +246,18 @@ def init_DK_NFL_lineups(type_var, slate_var, prio_var, prio_mix, nfl_db_translat
|
|
| 246 |
# Combine all player conditions with $or
|
| 247 |
if query_conditions:
|
| 248 |
filter_query = {'$or': query_conditions}
|
| 249 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 250 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 251 |
else:
|
| 252 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 253 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 254 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 255 |
else:
|
| 256 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 257 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 258 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 259 |
else:
|
| 260 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 261 |
raw_display = pd.DataFrame(list(cursor))
|
| 262 |
|
| 263 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
@@ -416,18 +416,18 @@ def init_FD_NFL_lineups(type_var, slate_var, prio_var, prio_mix, nfl_db_translat
|
|
| 416 |
# Combine all player conditions with $or
|
| 417 |
if query_conditions:
|
| 418 |
filter_query = {'$or': query_conditions}
|
| 419 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 420 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 421 |
else:
|
| 422 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 423 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 424 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 425 |
else:
|
| 426 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 427 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 428 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 429 |
else:
|
| 430 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 431 |
raw_display = pd.DataFrame(list(cursor))
|
| 432 |
|
| 433 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
@@ -647,18 +647,18 @@ def init_DK_NBA_lineups(type_var, slate_var, prio_var, prio_mix, nba_db_translat
|
|
| 647 |
# Combine all player conditions with $or
|
| 648 |
if query_conditions:
|
| 649 |
filter_query = {'$or': query_conditions}
|
| 650 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 651 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 652 |
else:
|
| 653 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 654 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 655 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 656 |
else:
|
| 657 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 658 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 659 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 660 |
else:
|
| 661 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 662 |
raw_display = pd.DataFrame(list(cursor))
|
| 663 |
|
| 664 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
@@ -812,18 +812,18 @@ def init_FD_NBA_lineups(type_var, slate_var, prio_var, prio_mix, nba_db_translat
|
|
| 812 |
# Combine all player conditions with $or
|
| 813 |
if query_conditions:
|
| 814 |
filter_query = {'$or': query_conditions}
|
| 815 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 816 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 817 |
else:
|
| 818 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 819 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 820 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 821 |
else:
|
| 822 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 823 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 824 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 825 |
else:
|
| 826 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 827 |
raw_display = pd.DataFrame(list(cursor))
|
| 828 |
|
| 829 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
@@ -1041,18 +1041,18 @@ def init_DK_NHL_lineups(type_var, slate_var, prio_var, prio_mix, nhl_db_translat
|
|
| 1041 |
# Combine all player conditions with $or
|
| 1042 |
if query_conditions:
|
| 1043 |
filter_query = {'$or': query_conditions}
|
| 1044 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1045 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1046 |
else:
|
| 1047 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1048 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1049 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1050 |
else:
|
| 1051 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1052 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1053 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1054 |
else:
|
| 1055 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1056 |
raw_display = pd.DataFrame(list(cursor))
|
| 1057 |
|
| 1058 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
@@ -1206,18 +1206,18 @@ def init_FD_NHL_lineups(type_var, slate_var, prio_var, prio_mix, nhl_db_translat
|
|
| 1206 |
# Combine all player conditions with $or
|
| 1207 |
if query_conditions:
|
| 1208 |
filter_query = {'$or': query_conditions}
|
| 1209 |
-
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1210 |
-
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1211 |
else:
|
| 1212 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1213 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1214 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1215 |
else:
|
| 1216 |
-
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1217 |
-
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1218 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1219 |
else:
|
| 1220 |
-
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}
|
| 1221 |
raw_display = pd.DataFrame(list(cursor))
|
| 1222 |
|
| 1223 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 246 |
# Combine all player conditions with $or
|
| 247 |
if query_conditions:
|
| 248 |
filter_query = {'$or': query_conditions}
|
| 249 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 250 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 251 |
else:
|
| 252 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 253 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 254 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 255 |
else:
|
| 256 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 257 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 258 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 259 |
else:
|
| 260 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 261 |
raw_display = pd.DataFrame(list(cursor))
|
| 262 |
|
| 263 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 416 |
# Combine all player conditions with $or
|
| 417 |
if query_conditions:
|
| 418 |
filter_query = {'$or': query_conditions}
|
| 419 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 420 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 421 |
else:
|
| 422 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 423 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 424 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 425 |
else:
|
| 426 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 427 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 428 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 429 |
else:
|
| 430 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 431 |
raw_display = pd.DataFrame(list(cursor))
|
| 432 |
|
| 433 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 647 |
# Combine all player conditions with $or
|
| 648 |
if query_conditions:
|
| 649 |
filter_query = {'$or': query_conditions}
|
| 650 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 651 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 652 |
else:
|
| 653 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 654 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 655 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 656 |
else:
|
| 657 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 658 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 659 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 660 |
else:
|
| 661 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 662 |
raw_display = pd.DataFrame(list(cursor))
|
| 663 |
|
| 664 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 812 |
# Combine all player conditions with $or
|
| 813 |
if query_conditions:
|
| 814 |
filter_query = {'$or': query_conditions}
|
| 815 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 816 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 817 |
else:
|
| 818 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 819 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 820 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 821 |
else:
|
| 822 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 823 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 824 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 825 |
else:
|
| 826 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 827 |
raw_display = pd.DataFrame(list(cursor))
|
| 828 |
|
| 829 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 1041 |
# Combine all player conditions with $or
|
| 1042 |
if query_conditions:
|
| 1043 |
filter_query = {'$or': query_conditions}
|
| 1044 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1045 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1046 |
else:
|
| 1047 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1048 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1049 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1050 |
else:
|
| 1051 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1052 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1053 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1054 |
else:
|
| 1055 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 1056 |
raw_display = pd.DataFrame(list(cursor))
|
| 1057 |
|
| 1058 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|
|
|
|
| 1206 |
# Combine all player conditions with $or
|
| 1207 |
if query_conditions:
|
| 1208 |
filter_query = {'$or': query_conditions}
|
| 1209 |
+
cursor1 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1210 |
+
cursor2 = collection.find(filter_query, {'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1211 |
else:
|
| 1212 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1213 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1214 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1215 |
else:
|
| 1216 |
+
cursor1 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).limit(math.ceil(lineup_num * (prio_mix / 100)))
|
| 1217 |
+
cursor2 = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort('Own', -1).limit(math.ceil(lineup_num * ((100 - prio_mix) / 100)))
|
| 1218 |
raw_display = pd.concat([pd.DataFrame(list(cursor1)), pd.DataFrame(list(cursor2))])
|
| 1219 |
else:
|
| 1220 |
+
cursor = collection.find({'salary': {'$gte': salary_min, '$lte': salary_max}}).sort(prio_var, -1).limit(lineup_num)
|
| 1221 |
raw_display = pd.DataFrame(list(cursor))
|
| 1222 |
|
| 1223 |
raw_display = raw_display.drop_duplicates(subset=['CPT', 'FLEX1', 'FLEX2', 'FLEX3', 'FLEX4', 'FLEX5'])
|