diff --git a/crm/fcrm/doctype/crm_deal/crm_deal.py b/crm/fcrm/doctype/crm_deal/crm_deal.py index 4ca327ad..395619b7 100644 --- a/crm/fcrm/doctype/crm_deal/crm_deal.py +++ b/crm/fcrm/doctype/crm_deal/crm_deal.py @@ -298,8 +298,11 @@ def create_deal(args): deal.update({ "organization": args.get("organization") or create_organization(args), "contacts": [{"contact": contact, "is_primary": 1}] if contact else [], - "deal_owner": args.get("deal_owner"), - "status": args.get("status"), }) + + args.pop("organization", None) + + deal.update(args) + deal.insert(ignore_permissions=True) return deal.name diff --git a/crm/fcrm/doctype/crm_lead/crm_lead.py b/crm/fcrm/doctype/crm_lead/crm_lead.py index c9269e8a..ee99057d 100644 --- a/crm/fcrm/doctype/crm_lead/crm_lead.py +++ b/crm/fcrm/doctype/crm_lead/crm_lead.py @@ -339,10 +339,11 @@ def convert_to_deal(lead, doc=None): frappe.throw(_("Not allowed to convert Lead to Deal"), frappe.PermissionError) lead = frappe.get_cached_doc("CRM Lead", lead) - lead.status = "Qualified" + if frappe.db.exists("CRM Lead Status", "Qualified"): + lead.status = "Qualified" lead.converted = 1 - if lead.sla: - lead.communication_status = 'Replied' + if lead.sla and frappe.db.exists("CRM Communication Status", "Replied"): + lead.communication_status = "Replied" lead.save(ignore_permissions=True) contact = lead.create_contact(False) organization = lead.create_organization()