stage
This commit is contained in:
@@ -1,16 +1,19 @@
|
||||
import csv
|
||||
import re
|
||||
|
||||
date_re = r"[\d]{1,2}\/[\d]{1,2}\/[\d]{2}"
|
||||
|
||||
|
||||
def load_leave(Rota, use_live_rota):
|
||||
|
||||
file_name="leave.csv"
|
||||
file_name = "leave.csv"
|
||||
|
||||
with open(file_name, newline="") as f:
|
||||
shifts = Rota.get_shift_names()
|
||||
|
||||
|
||||
workers = {}
|
||||
|
||||
reader = csv.reader(f, delimiter=',', quotechar='"')
|
||||
reader = csv.reader(f, delimiter=",", quotechar='"')
|
||||
|
||||
leave = {}
|
||||
requests = {}
|
||||
@@ -32,66 +35,74 @@ def load_leave(Rota, use_live_rota):
|
||||
workers[name]["leave"] = []
|
||||
workers[name]["requests"] = []
|
||||
workers[name]["site_pref"] = []
|
||||
workers[name]["shift_balance_extra"]
|
||||
|
||||
|
||||
for i in range(len(r)):
|
||||
try:
|
||||
a = order[i]
|
||||
except IndexError:
|
||||
continue
|
||||
|
||||
|
||||
worker = workers[order[i]]
|
||||
|
||||
lower_item = r[i].lower()
|
||||
if lower_item == "derriford":
|
||||
lower_item = "plymouth"
|
||||
|
||||
|
||||
if lower_item == "derriford twilights":
|
||||
lower_item = "plymouth_twilights"
|
||||
|
||||
|
||||
if row_title == "PROC site":
|
||||
workers[order[i]]["site_pref"] = lower_item
|
||||
|
||||
worker["site_pref"] = lower_item
|
||||
|
||||
if row_title == "Rotation":
|
||||
workers[order[i]]["site"] = lower_item
|
||||
|
||||
worker["site"] = lower_item
|
||||
|
||||
elif row_title == "Grade":
|
||||
workers[order[i]]["grade"] = lower_item
|
||||
|
||||
worker["grade"] = lower_item
|
||||
|
||||
elif row_title == "%FTE":
|
||||
workers[order[i]]["fte"] = lower_item
|
||||
|
||||
worker["fte"] = lower_item
|
||||
|
||||
elif row_title == "NWD":
|
||||
workers[order[i]]["nwd"] = lower_item
|
||||
|
||||
worker["nwd"] = lower_item
|
||||
|
||||
elif row_title == "Flexible NWD":
|
||||
workers[order[i]]["flexible_nwd"] = lower_item
|
||||
|
||||
worker["flexible_nwd"] = lower_item
|
||||
|
||||
elif row_title == "End Date":
|
||||
workers[order[i]]["end_date"] = lower_item
|
||||
|
||||
worker["end_date"] = lower_item
|
||||
|
||||
elif row_title == "OOP":
|
||||
workers[order[i]]["oop"] = lower_item
|
||||
|
||||
worker["oop"] = lower_item
|
||||
|
||||
elif row_title == "Group":
|
||||
workers[order[i]]["group"] = lower_item
|
||||
worker["group"] = lower_item
|
||||
|
||||
elif row_title == "Pair":
|
||||
if lower_item == "":
|
||||
workers[order[i]]["pair"] = 0
|
||||
worker["pair"] = 0
|
||||
else:
|
||||
workers[order[i]]["pair"] = int(lower_item)
|
||||
worker["pair"] = int(lower_item)
|
||||
|
||||
elif n > 12:
|
||||
elif row_title.startswith("Extra_"):
|
||||
if lower_item:
|
||||
shift = row_title[len("Extra_") :]
|
||||
worker["shift_balance_extra"] = shift
|
||||
|
||||
elif re.match(date_re, row_title) is not None:
|
||||
|
||||
if lower_item != "":
|
||||
# This may be easier to do as a dict
|
||||
if lower_item in shifts:
|
||||
workers[order[i]]["requests"].append((row[0], lower_item))
|
||||
worker["requests"].append((row[0], lower_item))
|
||||
|
||||
else:
|
||||
workers[order[i]]["leave"].append((row[0], lower_item))
|
||||
worker["leave"].append((row[0], lower_item))
|
||||
|
||||
n = n + 1
|
||||
|
||||
return workers
|
||||
|
||||
#load_leave()
|
||||
|
||||
# load_leave()
|
||||
|
||||
Reference in New Issue
Block a user