diff --git a/frontend/src/components/Modals/OrganizationModal.vue b/frontend/src/components/Modals/OrganizationModal.vue index 553063d6..0e955e67 100644 --- a/frontend/src/components/Modals/OrganizationModal.vue +++ b/frontend/src/components/Modals/OrganizationModal.vue @@ -17,7 +17,16 @@ +<<<<<<< HEAD +======= + +>>>>>>> 9362997 (refactor: organization modal code refactor)
@@ -47,6 +56,10 @@ import { ref, nextTick, onMounted } from 'vue' import { useRouter } from 'vue-router' const props = defineProps({ + data: { + type: Object, + default: () => ({}), + }, options: { type: Object, default: { @@ -60,27 +73,19 @@ const { isManager } = usersStore() const router = useRouter() const show = defineModel() -const organization = defineModel('organization') const loading = ref(false) -const title = ref(null) - -const { document: _organization } = useDocument('CRM Organization') - -if (Object.keys(_organization.doc).length != 0) { - _organization.doc = { no_of_employees: '1-10' } -} - -let doc = ref({}) const error = ref(null) +const { document: organization } = useDocument('CRM Organization') + async function createOrganization() { const doc = await call( 'frappe.client.insert', { doc: { doctype: 'CRM Organization', - ..._organization.doc, + ...organization.doc, }, }, { @@ -104,8 +109,6 @@ function handleOrganizationUpdate(doc) { name: 'Organization', params: { organizationId: doc.name }, }) - } else { - organization.value?.reload?.() } show.value = false props.options.afterInsert && props.options.afterInsert(doc) @@ -123,13 +126,13 @@ const tabs = createResource({ column.fields.forEach((field) => { if (field.fieldname == 'address') { field.create = (value, close) => { - _organization.doc.address = value + organization.doc.address = value openAddressModal() close() } field.edit = (address) => openAddressModal(address) } else if (field.fieldtype === 'Table') { - _organization.doc[field.fieldname] = [] + organization.doc[field.fieldname] = [] } }) }) @@ -139,10 +142,8 @@ const tabs = createResource({ }) onMounted(() => { - Object.assign( - _organization.doc, - organization.value?.doc || organization.value || {}, - ) + organization.doc = { no_of_employees: '1-10' } + Object.assign(organization.doc, props.data) }) function openQuickEntryModal() { diff --git a/frontend/src/pages/Deal.vue b/frontend/src/pages/Deal.vue index 454565c0..9d438146 100644 --- a/frontend/src/pages/Deal.vue +++ b/frontend/src/pages/Deal.vue @@ -272,8 +272,9 @@ :errorMessage="errorMessage" />