private CustomerContactDto captureContact() { if (Tag == null) { Tag = new CustomerContactDto { Person = new PersonDto() }; } var contactTag = Tag as CustomerContactDto; if (contactTag != null) { if (contactTag.Person == null) { contactTag.Person = new PersonDto(); } contactTag.Person.Name = txtName.Text; contactTag.Person.LastName = txtLastName.Text; contactTag.Job = txtJob.Text; contactTag.Email = txtEmail.Text; contactTag.Person.PersonPhones = new List<PersonPhoneDto>(); // Phone A capturePersonPhone(txtPhoneA, cmbPhoneTypeA, contactTag.Person.PersonPhones); // Phone B capturePersonPhone(txtPhoneB, cmbPhoneTypeB, contactTag.Person.PersonPhones); // Phone C capturePersonPhone(txtPhoneC, cmbPhoneTypeC, contactTag.Person.PersonPhones); } return contactTag; }
// Get Customer public CustomerResponse getCustomer(CustomerRequest request) { CustomerResponse response = new CustomerResponse(); // Check if customers needs a binding if (request.CustomerId == 0 && request.Customer.Name != "") { // Apply the search the customer var customerFound = Asgard._Foreing.CLI_CLIENTES.Where(x => x.CLI_Nombre.ToUpper() == request.Customer.Name.ToUpper()).FirstOrDefault(); if (customerFound != null) { // Add the Customer to Nexus var newCustomer = new CustomerDto() { Name = customerFound.CLI_Nombre, Address = customerFound.CLI_Direccion }; newCustomer.BindCustomer = new BindCustomerDto { AlienId = customerFound.CLI_Cliente }; // Check if the Customer has a contact defined if (customerFound.CLI_Contacto != null) { // Add Person to Contact var newPerson = new PersonDto() { Name = customerFound.CLI_Contacto, LastName = "" }; // Add Contact to Customer var newCustomerContact = new CustomerContactDto() { Job = "Funcionario", Person = newPerson, Email = "*****@*****.**" }; newCustomer.CustomerContacts.Add(newCustomerContact); } response.Customer = newCustomer; } } return response; }
// Load Contact Manager private void loadContactManager() { var contactManager = new ContactManager(); var customerContact = cmbContact.Tag as CustomerContactDto; // Validate if we have an customer selected if (customerContact != null && customerContact.Id > 0) { var customer = cmbCustomerName.Tag as CustomerDto; customerContact.Customer = customer; contactManager.Tag = customerContact; contactManager.ShowDialog(); if (contactManager.DialogResult == System.Windows.Forms.DialogResult.OK) { cmbContact.Properties.Items.Remove(customerContact); cmbContact.Properties.Items.Add(contactManager.Tag); cmbContact.SelectedItem = contactManager.Tag; } } else { var newCustomerContact = new CustomerContactDto(); var customer = cmbCustomerName.Tag as CustomerDto; newCustomerContact.Customer = customer; contactManager.Tag = newCustomerContact; contactManager.ShowDialog(); if (contactManager.DialogResult == System.Windows.Forms.DialogResult.OK) { cmbContact.Properties.Items.Add(contactManager.Tag); cmbContact.SelectedItem = contactManager.Tag; } } }
// Load the Contact private void loadContact(CustomerContactDto contact) { cmbContact.Tag = contact; lblContactJob.Text = string.Empty; loadPhoneList(null); if (contact != null) { lblContactJob.Text = contact.Job; loadPhoneList(contact.Person.PersonPhones); } }
// Loads the Contact on the form private void loadContact(CustomerContactDto customerContact) { if (customerContact != null && customerContact.Id > 0) { txtName.Text = customerContact.Person.Name; txtLastName.Text = customerContact.Person.LastName; txtJob.Text = customerContact.Job; txtEmail.Text = customerContact.Email; if (customerContact.Person.PersonPhones != null) { int index = 0; foreach (var personPhone in customerContact.Person.PersonPhones) { switch (index) { case 0: txtPhoneA.Text = personPhone.Phone; txtPhoneA.Tag = personPhone; cmbPhoneTypeA.SelectedItem = personPhone.PhoneType; break; case 1: txtPhoneB.Text = personPhone.Phone; txtPhoneB.Tag = personPhone; cmbPhoneTypeB.SelectedItem = personPhone.PhoneType; break; case 2: txtPhoneC.Text = personPhone.Phone; txtPhoneC.Tag = personPhone; cmbPhoneTypeC.SelectedItem = personPhone.PhoneType; break; default: break; } index++; } } } }
private void FixupCustomerContact(CustomerContactDto previousValue) { if (previousValue != null && previousValue.BudgetRequests.Contains(this)) { previousValue.BudgetRequests.Remove(this); } if (CustomerContact != null) { if (!CustomerContact.BudgetRequests.Contains(this)) { CustomerContact.BudgetRequests.Add(this); } if (CustomerContactId != CustomerContact.Id) { CustomerContactId = CustomerContact.Id; } } }