/// <summary> /// Buscar cliente final /// </summary> /// <param name="busquedaClienteFinalRequest">Dto con parametros de busqueda del cliente final</param> /// <returns>Resultado de la operación</returns> public ResponseBussiness <BusquedaClienteFinalResponse[]> BuscarClienteFinal(BusquedaClienteFinalRequest busquedaClienteFinalRequest) { return(tryCatch.SafeExecutor(() => { List <BusquedaClienteFinalResponse> listaClientes = new List <BusquedaClienteFinalResponse>(); ProxyMayoristas.InfoClientesFinales infoClientesFinales = wsVentaMayoristaSoapClient.BuscarClienteFinal(this.token.CodeStore, this.token.CodeBox, this.token.CodeEmployee, busquedaClienteFinalRequest.CodigoMayorista, busquedaClienteFinalRequest.CodigoClienteFinal, busquedaClienteFinalRequest.Nombres, busquedaClienteFinalRequest.Apellidos, busquedaClienteFinalRequest.Ine, busquedaClienteFinalRequest.Rfc); if (infoClientesFinales.sError == "") { foreach (ProxyMayoristas.ClientesFinales cliente in infoClientesFinales.clientesFinales) { BusquedaClienteFinalResponse clienteEncontrado = new BusquedaClienteFinalResponse(); clienteEncontrado.Apellidos = cliente.sApellidos; clienteEncontrado.CodigoClienteFinal = cliente.codigoClienteFinal; clienteEncontrado.CodigoMayorista = cliente.codigoMayorista; clienteEncontrado.Error = cliente.sError; clienteEncontrado.FechaNacimiento = cliente.dtFechaNatimiento.ToShortDateString(); clienteEncontrado.Ine = cliente.sIFE; clienteEncontrado.Mensaje = cliente.sMensaje; clienteEncontrado.Nombres = cliente.sNombre; clienteEncontrado.Rfc = cliente.sRFC; clienteEncontrado.Sexo = cliente.sSexo; clienteEncontrado.Telefono = cliente.sSexo; listaClientes.Add(clienteEncontrado); } } return listaClientes.ToArray(); })); }
/// <summary> /// Agregar cliente final /// </summary> /// <param name="altaClienteFinalRequest">Dto con los datos del cliente</param> /// <returns>Resultado de la operacion</returns> public ResponseBussiness <BusquedaClienteFinalResponse> AgregarCliente(AltaClienteFinalRequest altaClienteFinalRequest) { return(tryCatch.SafeExecutor(() => { BusquedaClienteFinalResponse clienteGenerado = new BusquedaClienteFinalResponse(); if (altaClienteFinalRequest.NumeroInterior == string.Empty) { altaClienteFinalRequest.NumeroInterior = "NA"; } int anio = int.Parse(altaClienteFinalRequest.Rfc.Substring(4, 2)); int mes = int.Parse(altaClienteFinalRequest.Rfc.Substring(6, 2)); int dia = int.Parse(altaClienteFinalRequest.Rfc.Substring(8, 2)); DateTime fechaRfc = new DateTime(); if (anio >= 0 && anio <= DateTime.Now.Year - 2000) { fechaRfc = new DateTime(2000 + anio, mes, dia); } else { fechaRfc = new DateTime(1900 + anio, mes, dia); } DateTime nacimiento = DateTime.Parse(altaClienteFinalRequest.FechaNacimiento); int edad = DateTime.Today.AddTicks(-nacimiento.Ticks).Year - 1; altaClienteFinalRequest.Municipio = altaClienteFinalRequest.Ciudad; if (fechaRfc == DateTime.Parse(altaClienteFinalRequest.FechaNacimiento)) { if (edad >= 18) { ProxyMayoristas.ClientesFinales cliente = wsVentaMayoristaSoapClient.CrearClienteFinal(this.token.CodeStore, this.token.CodeBox, this.token.CodeEmployee, altaClienteFinalRequest.Ine, altaClienteFinalRequest.Rfc, altaClienteFinalRequest.Nombre, altaClienteFinalRequest.Apellidos, DateTime.Parse(altaClienteFinalRequest.FechaNacimiento), altaClienteFinalRequest.Sexo, altaClienteFinalRequest.Calle, altaClienteFinalRequest.NumeroExterior, altaClienteFinalRequest.NumeroInterior, altaClienteFinalRequest.Colonia, altaClienteFinalRequest.Municipio, altaClienteFinalRequest.Cp, altaClienteFinalRequest.Ciudad, altaClienteFinalRequest.Estado, altaClienteFinalRequest.CodigoMayorista, altaClienteFinalRequest.Telefono); clienteGenerado.Apellidos = cliente.sApellidos; clienteGenerado.CodigoClienteFinal = cliente.codigoClienteFinal; clienteGenerado.CodigoMayorista = cliente.codigoMayorista; clienteGenerado.Error = cliente.sError; clienteGenerado.FechaNacimiento = cliente.dtFechaNatimiento.ToShortDateString(); clienteGenerado.Ine = cliente.sIFE; clienteGenerado.Mensaje = cliente.sMensaje; clienteGenerado.Nombres = cliente.sNombre; clienteGenerado.Rfc = cliente.sRFC; clienteGenerado.Sexo = cliente.sSexo; clienteGenerado.Telefono = cliente.sSexo; } else { clienteGenerado.CodigoClienteFinal = 0; clienteGenerado.Error = this.repository.ObtenerMensajeMenorEdad().CodeDescription; } } else { clienteGenerado.CodigoClienteFinal = 0; clienteGenerado.Error = this.repository.ObtenerMensajeFechasInvalidaRFC().CodeDescription; } return clienteGenerado; })); }