diff --git a/app/controllers/main_routes/laborHistory.py b/app/controllers/main_routes/laborHistory.py index bc916665..65278612 100755 --- a/app/controllers/main_routes/laborHistory.py +++ b/app/controllers/main_routes/laborHistory.py @@ -131,8 +131,13 @@ def populateModal(statusKey): currentUser = require_login() if not currentUser: # Not logged in return render_template('errors/403.html'), 403 - forms = (FormHistory.select().join(LaborReleaseForm, join_type=JOIN.LEFT_OUTER) - .where(FormHistory.formID == statusKey).order_by(FormHistory.createdDate.desc(), FormHistory.formHistoryID.desc())) + forms = (FormHistory.select() + .join(LaborReleaseForm, join_type=JOIN.LEFT_OUTER) + .switch(FormHistory).join(OverloadForm, JOIN.LEFT_OUTER, on=(FormHistory.overloadForm == OverloadForm.overloadFormID)) + .switch(OverloadForm).join(User, JOIN.LEFT_OUTER, on=(OverloadForm.laborApprover == User.userID)) + .switch(User).join(Supervisor, JOIN.LEFT_OUTER, on=(User.supervisor == Supervisor.ID)) + .where(FormHistory.formID == statusKey) + .order_by(FormHistory.createdDate.desc(), FormHistory.formHistoryID.desc())) statusForm = LaborStatusForm.get(LaborStatusForm.laborStatusFormID == statusKey) currentDate = datetime.today() pendingformType = None @@ -166,10 +171,11 @@ def populateModal(statusKey): form.adjustedForm.oldValue = oldPosition.POSN_TITLE + " (" + oldPosition.WLS+")" if form.adjustedForm.fieldAdjusted == "department": - newDepartment = Department.get(Department.ORG == newValue) - oldDepartment = Department.get(Department.ORG == oldValue) - form.adjustedForm.newValue = newDepartment.DEPT_NAME - form.adjustedForm.oldValue = oldDepartment.DEPT_NAME + newDepartment = Department.get_or_none(Department.ORG == newValue) + oldDepartment = Department.get_or_none(Department.ORG == oldValue) + form.adjustedForm.newValue = newDepartment.DEPT_NAME if newDepartment else "Unknown " + newValue + form.adjustedForm.oldValue = oldDepartment.DEPT_NAME if oldDepartment else "Unknown " + oldValue + # Convert the field adjusted value out of camelcase into a more readable format form.adjustedForm.fieldAdjusted = re.sub(r"(\w)([A-Z])", r"\1 \2", form.adjustedForm.fieldAdjusted).title() diff --git a/app/logic/allPendingForms.py b/app/logic/allPendingForms.py index 60110d5e..e2310b77 100644 --- a/app/logic/allPendingForms.py +++ b/app/logic/allPendingForms.py @@ -283,6 +283,10 @@ def checkAdjustment(allForms): allForms.adjustedForm.oldValue = newPosition.POSN_TITLE if allForms.adjustedForm.fieldAdjusted == "department": - newDepartment = Department.get(Department.ORG==allForms.adjustedForm.newValue) - allForms.adjustedForm.newValue = newDepartment.DEPT_NAME - allForms.adjustedForm.oldValue = newDepartment.ORG + "-" + newDepartment.ACCOUNT + newDepartment = Department.get_or_none(Department.ORG==allForms.adjustedForm.newValue) + if newDepartment: + allForms.adjustedForm.newValue = newDepartment.DEPT_NAME + allForms.adjustedForm.oldValue = newDepartment.ORG + "-" + newDepartment.ACCOUNT + else: + allForms.adjustedForm.newValue = "Unknown" + " - " + allForms.adjustedForm.newValue + allForms.adjustedForm.oldValue = "Unknown" + " - " + allForms.adjustedForm.oldValue \ No newline at end of file diff --git a/app/templates/snips/studentHistoryModal.html b/app/templates/snips/studentHistoryModal.html index 462f11c0..324d5b95 100755 --- a/app/templates/snips/studentHistoryModal.html +++ b/app/templates/snips/studentHistoryModal.html @@ -80,8 +80,9 @@
Reject Reason:
-Reject Reason:
+{{form.adjustedForm.fieldAdjusted}} changed from {{form.adjustedForm.oldValue}} to {{form.adjustedForm.newValue}}
Labor Office Contact:
++ {% if form.overloadForm.laborApprover_id and (form.overloadForm.laborApprover.supervisor.FIRST_NAME or form.overloadForm.laborApprover.supervisor.LAST_NAME) %} + {{form.overloadForm.laborApprover.supervisor.FIRST_NAME}} {{form.overloadForm.laborApprover.supervisor.LAST_NAME}} + {% else %} + None + {% endif %} +
+Labor Review Date:
+{{form.overloadForm.laborReviewDate.strftime('%m-%d-%Y') if form.overloadForm.laborReviewDate else "Not yet reviewed"}}
+Reason for overload:
+