Allow users to update TO information after it has been saved in the DB
This commit is contained in:
parent
e53e00397c
commit
3765bbea12
@ -70,10 +70,10 @@ class ShowTaskOrderWorkflow:
|
|||||||
task_order_dict[field] = ""
|
task_order_dict[field] = ""
|
||||||
|
|
||||||
# don't save other text in DB unless "other" is checked
|
# don't save other text in DB unless "other" is checked
|
||||||
if 'other' not in task_order_dict['complexity']:
|
if "other" not in task_order_dict["complexity"]:
|
||||||
task_order_dict['complexity_other'] = ""
|
task_order_dict["complexity_other"] = ""
|
||||||
if 'other' not in task_order_dict['dev_team']:
|
if "other" not in task_order_dict["dev_team"]:
|
||||||
task_order_dict['dev_team_other'] = ""
|
task_order_dict["dev_team_other"] = ""
|
||||||
|
|
||||||
return task_order_dict
|
return task_order_dict
|
||||||
|
|
||||||
@ -133,18 +133,28 @@ class UpdateTaskOrderWorkflow(ShowTaskOrderWorkflow):
|
|||||||
if self.task_order:
|
if self.task_order:
|
||||||
return self.task_order.portfolio
|
return self.task_order.portfolio
|
||||||
|
|
||||||
|
@property
|
||||||
|
def task_order_form_data(self):
|
||||||
|
to_data = self.form.data.copy()
|
||||||
|
if "portfolio_name" in to_data:
|
||||||
|
new_name = self.form.data["portfolio_name"]
|
||||||
|
old_name = self.task_order.to_dictionary()["portfolio_name"]
|
||||||
|
if not new_name is old_name:
|
||||||
|
Portfolios.update(self.task_order.portfolio, {"name": new_name})
|
||||||
|
to_data.pop("portfolio_name")
|
||||||
|
|
||||||
|
return to_data
|
||||||
|
|
||||||
def validate(self):
|
def validate(self):
|
||||||
return self.form.validate()
|
return self.form.validate()
|
||||||
|
|
||||||
def _update_task_order(self):
|
def _update_task_order(self):
|
||||||
if self.task_order:
|
if self.task_order:
|
||||||
TaskOrders.update(self.user, self.task_order, **self.form.data)
|
TaskOrders.update(self.user, self.task_order, **self.task_order_form_data)
|
||||||
else:
|
else:
|
||||||
ws = Portfolios.create(self.user, self.form.portfolio_name.data)
|
pf = Portfolios.create(self.user, self.form.portfolio_name.data)
|
||||||
to_data = self.form.data.copy()
|
self._task_order = TaskOrders.create(portfolio=pf, creator=self.user)
|
||||||
to_data.pop("portfolio_name")
|
TaskOrders.update(self.user, self.task_order, **self.task_order_form_data)
|
||||||
self._task_order = TaskOrders.create(self.user, ws)
|
|
||||||
TaskOrders.update(self.user, self.task_order, **to_data)
|
|
||||||
|
|
||||||
OFFICER_INVITATIONS = [
|
OFFICER_INVITATIONS = [
|
||||||
{
|
{
|
||||||
@ -192,10 +202,10 @@ class UpdateTaskOrderWorkflow(ShowTaskOrderWorkflow):
|
|||||||
officer = TaskOrders.add_officer(
|
officer = TaskOrders.add_officer(
|
||||||
self.user, self.task_order, officer_type["role"], officer_data
|
self.user, self.task_order, officer_type["role"], officer_data
|
||||||
)
|
)
|
||||||
ws_officer_member = PortfolioRoles.get(self.portfolio.id, officer.id)
|
pf_officer_member = PortfolioRoles.get(self.portfolio.id, officer.id)
|
||||||
invite_service = InvitationService(
|
invite_service = InvitationService(
|
||||||
self.user,
|
self.user,
|
||||||
ws_officer_member,
|
pf_officer_member,
|
||||||
officer_data["email"],
|
officer_data["email"],
|
||||||
subject=officer_type["subject"],
|
subject=officer_type["subject"],
|
||||||
email_template=officer_type["template"],
|
email_template=officer_type["template"],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user