private void AddModif(Persona local, char Tipo) { ClienteNegocio negocioCli = new ClienteNegocio(); ProveedorNegocio negocioProv = new ProveedorNegocio(); LocalidadNegocio negocioLoc = new LocalidadNegocio(); DomicilioNegocio negocioDoc = new DomicilioNegocio(); TelefonoNegocio negocioTel = new TelefonoNegocio(); MailNegocio negocioMail = new MailNegocio(); if (btnAgregar.Text == "Agregar") { if (llenarLocal(local)) { //Domicilio int idLocalidad = negocioLoc.buscarLocalidad(local.Domicilio.Localidad); if (txtCalle.Text.Trim() != "" && txtAltura.Text.Trim() != "") { if (idLocalidad == -1 && txtLocalidad.Text != "") { local.Domicilio.Localidad.ID = negocioLoc.agregarLocalidad(local.Domicilio.Localidad); } else { local.Domicilio.Localidad.ID = idLocalidad; } local.Domicilio.ID = negocioDoc.agregarDomicilio(local.Domicilio); } if (Tipo == 'P') { negocioProv.agregarProveedor((Proveedor)local); } else { negocioCli.agregarCliente((Cliente)local); } //Mail for (int i = 0; i < local.Mails.Count; i++) { int idMail = negocioMail.agregarMail(local.Mails[i]); if (Tipo == 'P') { negocioProv.agregarMailXProveedor((Proveedor)local, idMail); } else { negocioCli.agregarMailXCliente((Cliente)local, idMail); } } //Telefono for (int i = 0; i < local.Telefonos.Count; i++) { int idMail = negocioTel.agregarTelefono(local.Telefonos[i]); if (Tipo == 'P') { negocioProv.agregarTelefonoXProveedor((Proveedor)local, idMail); } else { negocioCli.agregarTelefonoXCliente((Cliente)local, idMail); } } Close(); } } else { if (llenarLocal(local)) { if (txtCalle.Text.Trim() != "" && txtAltura.Text.Trim() != "") { int idLocalidad = negocioLoc.buscarLocalidad(local.Domicilio.Localidad); if (local.Domicilio.ID < 1) { if (local.Domicilio.Localidad.ID == 0) { if (idLocalidad == -1 && txtLocalidad.Text != "") { local.Domicilio.Localidad.ID = negocioLoc.agregarLocalidad(local.Domicilio.Localidad); } else { local.Domicilio.Localidad.ID = idLocalidad; } } local.Domicilio.ID = negocioDoc.agregarDomicilio(local.Domicilio); } else { if (local.Domicilio.Localidad.ID == 0) { if (idLocalidad == -1 && txtLocalidad.Text != "") { local.Domicilio.Localidad.ID = negocioLoc.agregarLocalidad(local.Domicilio.Localidad); } else { local.Domicilio.Localidad.ID = idLocalidad; } } negocioDoc.modificarDomicilio(local.Domicilio); } } else if (local.Domicilio.Calle == "" || local.Domicilio.Altura == 0) { negocioDoc.eliminarDomicilio(local.Domicilio); } //Mail if (Tipo == 'P') { negocioProv.eliminarMailXProveedor((Proveedor)local); } else { negocioCli.eliminarMailXCliente((Cliente)local); } for (int i = 0; i < local.Mails.Count; i++) { int idMail = negocioMail.agregarMail(local.Mails[i]); if (Tipo == 'P') { negocioProv.agregarMailXProveedor((Proveedor)local, idMail); } else { negocioCli.agregarMailXCliente((Cliente)local, idMail); } } //Telefono if (Tipo == 'P') { negocioProv.eliminarTelefonoXProveedor((Proveedor)local); } else { negocioCli.eliminarTelefonoXCliente((Cliente)local); } for (int i = 0; i < local.Telefonos.Count; i++) { int idMail = negocioTel.agregarTelefono(local.Telefonos[i]); if (Tipo == 'P') { negocioProv.agregarTelefonoXProveedor((Proveedor)local, idMail); } else { negocioCli.agregarTelefonoXCliente((Cliente)local, idMail); } } if (Tipo == 'P') { negocioProv.modificarProveedor((Proveedor)local); } else { negocioCli.modificarCliente((Cliente)local); } Close(); } } }