Added sales order items as tasks to the project.

This commit is contained in:
rocketdebris 2026-01-22 10:46:11 -05:00
parent e67805c01f
commit c0b1f3f37a

View file

@ -25,7 +25,7 @@ def create_job_from_sales_order(sales_order_name):
try:
sales_order = frappe.get_doc("Sales Order", sales_order_name)
project_template = frappe.get_doc("Project Template", "SNW Install")
new_job = frappe.get_doc({
new_project = frappe.get_doc({
"doctype": "Project",
"custom_address": sales_order.custom_job_address,
# "custom_installation_address": sales_order.custom_installation_address,
@ -35,13 +35,22 @@ def create_job_from_sales_order(sales_order_name):
"sales_order": sales_order,
"custom_company": sales_order.company
})
new_job.insert()
new_project.insert()
for sales_order_item in sales_order.items:
new_task = frappe.get_doc({
"doctype": "Task",
"project": new_project.name,
"company": sales_order.company,
"custom_property": sales_order.custom_job_address,
"subject": sales_order_item.description,
})
new_task.insert()
# Iterate through new tasks (if any) and set customer, address
# job_tasks = frappe.get_all("Task", filters={"Project": new_job.name})
# for task in job_tasks:
# task.custom_property = new_job.job_address
# task.save()
return build_success_response(new_job.as_dict())
return build_success_response(new_project.as_dict())
except Exception as e:
return build_error_response(str(e), 500)