forked from expo/troggle
electronic surveys still need notes
This commit is contained in:
parent
af6081e406
commit
5f07f234ef
@ -213,6 +213,7 @@ class Wallet(models.Model):
|
||||
def get_ticks(self):
|
||||
"""Reads all the JSON data and sets the colour of the completion tick for each condition"""
|
||||
ticks = {}
|
||||
|
||||
waldata = self.get_json()
|
||||
if not waldata:
|
||||
ticks["S"] = "darkgrey"
|
||||
@ -279,50 +280,51 @@ class Wallet(models.Model):
|
||||
if 'notes not required' not in waldata:
|
||||
waldata['notes not required'] = False
|
||||
|
||||
# Notes, Plan, Elevation; Tunnel
|
||||
if waldata["electronic survey"]:
|
||||
|
||||
# Notes, Plan, Elevation
|
||||
files = self.get_fnames()
|
||||
|
||||
# Notes required
|
||||
notes_scanned = reduce(operator.or_, [f.startswith("note") for f in files], False)
|
||||
notes_scanned = reduce(operator.or_, [f.endswith("notes") for f in files], notes_scanned)
|
||||
notes_required = not (notes_scanned or waldata["notes not required"])
|
||||
if notes_required:
|
||||
ticks["N"] = "red"
|
||||
else:
|
||||
ticks["N"] = "green"
|
||||
# print(f"{self.walletname} {ticks['N'].upper()} {notes_scanned=} {notes_required=} {waldata['notes not required']=}")
|
||||
|
||||
# Plan drawing required
|
||||
plan_scanned = reduce(operator.or_, [f.startswith("plan") for f in files], False)
|
||||
plan_scanned = reduce(operator.or_, [f.endswith("plan") for f in files], plan_scanned)
|
||||
plan_drawing_required = not (plan_scanned or waldata["plan drawn"] or waldata["plan not required"])
|
||||
if plan_drawing_required:
|
||||
ticks["P"] = "red"
|
||||
else:
|
||||
ticks["P"] = "green"
|
||||
|
||||
# Elev drawing required
|
||||
elev_scanned = reduce(operator.or_, [f.startswith("elev") for f in files], False)
|
||||
elev_scanned = reduce(operator.or_, [f.endswith("elev") for f in files], elev_scanned)
|
||||
elev_scanned = reduce(operator.or_, [f.endswith("elevation") for f in files], elev_scanned)
|
||||
elev_drawing_required = not (elev_scanned or waldata["elev drawn"] or waldata["elev not required"])
|
||||
if elev_drawing_required:
|
||||
ticks["E"] = "red"
|
||||
else:
|
||||
ticks["E"] = "green"
|
||||
|
||||
# if electronic, don't require P or E
|
||||
if waldata["electronic survey"]:
|
||||
# ticks["N"] = "green"
|
||||
ticks["P"] = "green"
|
||||
ticks["E"] = "green"
|
||||
ticks["T"] = "green"
|
||||
# ticks["T"] = "green" # No, this does not mean it has been 'tunneled' properly
|
||||
|
||||
# Tunnel / Therion
|
||||
if elev_drawing_required or plan_drawing_required:
|
||||
ticks["T"] = "red"
|
||||
else:
|
||||
|
||||
files = self.get_fnames()
|
||||
|
||||
# Notes required
|
||||
notes_scanned = reduce(operator.or_, [f.startswith("note") for f in files], False)
|
||||
notes_scanned = reduce(operator.or_, [f.endswith("notes") for f in files], notes_scanned)
|
||||
notes_required = not (notes_scanned or waldata["notes not required"])
|
||||
if notes_required:
|
||||
ticks["N"] = "red"
|
||||
else:
|
||||
ticks["N"] = "green"
|
||||
# print(f"{self.walletname} {ticks['N'].upper()} {notes_scanned=} {notes_required=} {waldata['notes not required']=}")
|
||||
|
||||
# Plan drawing required
|
||||
plan_scanned = reduce(operator.or_, [f.startswith("plan") for f in files], False)
|
||||
plan_scanned = reduce(operator.or_, [f.endswith("plan") for f in files], plan_scanned)
|
||||
plan_drawing_required = not (plan_scanned or waldata["plan drawn"] or waldata["plan not required"])
|
||||
if plan_drawing_required:
|
||||
ticks["P"] = "red"
|
||||
else:
|
||||
ticks["P"] = "green"
|
||||
|
||||
# Elev drawing required
|
||||
elev_scanned = reduce(operator.or_, [f.startswith("elev") for f in files], False)
|
||||
elev_scanned = reduce(operator.or_, [f.endswith("elev") for f in files], elev_scanned)
|
||||
elev_scanned = reduce(operator.or_, [f.endswith("elevation") for f in files], elev_scanned)
|
||||
elev_drawing_required = not (elev_scanned or waldata["elev drawn"] or waldata["elev not required"])
|
||||
if elev_drawing_required:
|
||||
ticks["E"] = "red"
|
||||
else:
|
||||
ticks["E"] = "green"
|
||||
|
||||
# Tunnel / Therion
|
||||
if elev_drawing_required or plan_drawing_required:
|
||||
ticks["T"] = "red"
|
||||
else:
|
||||
ticks["T"] = "green"
|
||||
ticks["T"] = "green"
|
||||
|
||||
# Website
|
||||
if waldata["website updated"]:
|
||||
@ -330,6 +332,7 @@ class Wallet(models.Model):
|
||||
else:
|
||||
ticks["W"] = "red"
|
||||
|
||||
|
||||
return ticks
|
||||
|
||||
def __str__(self):
|
||||
|
@ -190,7 +190,7 @@ def get_complaints(complaints, waldata, svxfiles, files, wallet, wurl):
|
||||
# Notes required
|
||||
if ticks["N"] != "green":
|
||||
complaints.append(
|
||||
"The notes needs scanning (or renaming) or tick 'Notes not required' checkbox. No noteNN.jpg or XXnote.jpg file was found; this is not an electronic survey."
|
||||
"The notes needs scanning (or renaming) or tick 'Notes not required' checkbox. No noteNN.jpg or XXnote.jpg file was found. Needed even for an electronic survey."
|
||||
)
|
||||
|
||||
# Plan drawing required
|
||||
@ -208,7 +208,7 @@ def get_complaints(complaints, waldata, svxfiles, files, wallet, wurl):
|
||||
# Therion
|
||||
if ticks["T"] != "green":
|
||||
complaints.append(
|
||||
"Tunnel or Therion drawing files need drawing. Or if this an electronic survey, please tick the 'Electronic survey' checkbox."
|
||||
"Tunnel or Therion drawing files need drawing, or tick 'Plan/Elev drawn' checkbox or 'Plan/Elev not required' checkboxes"
|
||||
)
|
||||
|
||||
# Description
|
||||
|
Loading…
Reference in New Issue
Block a user