public async Task <ApiResponse <bool> > CreateContactoAlTables(ContactoCreateDto dto) { bool resultDto = new bool(); Metadata metadata = new Metadata { IsValid = true, Message = "" }; ApiResponse <bool> response = new ApiResponse <bool>(resultDto); try { SapTratamientoContacto sapTratamientoContacto = await _unitOfWork.SapTratamientoContactoRepository.GetById(dto.Tratamiento); if (sapTratamientoContacto == null) { metadata.IsValid = false; metadata.Message = "Tratamiento no existe!!"; response.Data = false; response.Meta = metadata; return(response); } SapDepartamentoContacto sapDepartamentoContacto = await _unitOfWork.SapDepartamentoContactoRepository.GetById(dto.Departamento); if (sapDepartamentoContacto == null) { metadata.IsValid = false; metadata.Message = "Departamento no existe!!"; response.Data = false; response.Meta = metadata; return(response); } SapCargoContacto sapCargoContacto = await _unitOfWork.SapCargoContactoRepository.GetById(dto.Cargo); if (sapCargoContacto == null) { metadata.IsValid = false; metadata.Message = "Cargo no existe!!"; response.Data = false; response.Meta = metadata; return(response); } SapPoderContacto sapPoderContacto = await _unitOfWork.SapPoderContactoRepository.GetById(dto.Poder); if (sapPoderContacto == null) { metadata.IsValid = false; metadata.Message = "Poder no existe!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Rif)) { metadata.IsValid = false; metadata.Message = "Rif Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Nombre)) { metadata.IsValid = false; metadata.Message = "Nombre Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Apellido)) { metadata.IsValid = false; metadata.Message = "Apellido Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Celular)) { metadata.IsValid = false; metadata.Message = "Celular Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Telefono)) { metadata.IsValid = false; metadata.Message = "Telefono Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } if (String.IsNullOrEmpty(dto.Email)) { metadata.IsValid = false; metadata.Message = "Telefono Invalido!!"; response.Data = false; response.Meta = metadata; return(response); } var newIdContacto = await _unitOfWork.SapContactoRepository.NextId(); string FlagProcesado = ""; if (dto.IdCliente == "0") { FlagProcesado = "X"; } SapContactos newSapContactos = new SapContactos(); newSapContactos.IdContacto = newIdContacto; newSapContactos.Kunnr = dto.IdCliente; newSapContactos.Parnr = ""; newSapContactos.TitleMedi = sapTratamientoContacto.NombreTratamiento; newSapContactos.Name1 = dto.Apellido; newSapContactos.Namev = dto.Nombre; newSapContactos.Pafkt = sapCargoContacto.Codigo; newSapContactos.Abtnr = sapDepartamentoContacto.Codigo; newSapContactos.Telf1 = dto.Telefono; newSapContactos.Telf2 = dto.Celular; newSapContactos.StmpAddr = dto.Email; newSapContactos.Fax = dto.Fax; newSapContactos.Pavip = "3";//Activo if (dto.FechaNacimiento != null) { newSapContactos.Gbdat = dto.FechaNacimiento.Value.Year.ToString() + dto.FechaNacimiento.Value.Month.ToString() + dto.FechaNacimiento.Value.Day.ToString(); } newSapContactos.Parvo = sapPoderContacto.Codigo; newSapContactos.Nmail = "X"; newSapContactos.Procesado = FlagProcesado; newSapContactos.FechaCreacion = DateTime.Now; newSapContactos.UsuarioCreacion = dto.UsuarioConectado; await _unitOfWork.SapContactoRepository.Add(newSapContactos); MtrContactos newMtrContactos = new MtrContactos(); newMtrContactos.IdContacto = (long)newIdContacto; newMtrContactos.IdCliente = dto.IdCliente; newMtrContactos.Rif = dto.Rif; newMtrContactos.Nombre = dto.Nombre + " " + dto.Apellido; newMtrContactos.Cargo = sapCargoContacto.Descripcion; newMtrContactos.Area = sapDepartamentoContacto.Descripcion; newMtrContactos.Telefono1 = dto.Telefono; newMtrContactos.Celular = dto.Celular; newMtrContactos.Email = dto.Email; newMtrContactos.Fax = dto.Fax; newMtrContactos.Inactivo = false; newMtrContactos.FechaCreacion = DateTime.Now; newMtrContactos.Usuario = dto.UsuarioConectado; await _unitOfWork.MtrContactosRepository.Add(newMtrContactos); Wsmy265 newWsmy265 = new Wsmy265(); decimal decimalVal = 0; decimalVal = System.Convert.ToDecimal(dto.IdCliente); var newCorrelativoContactoCliente = await _unitOfWork.Wsmy265Repository.NextCorrelativoContactoCliente(decimalVal, dto.Rif); newWsmy265.Id = (long)newIdContacto; newWsmy265.Cliente = decimalVal; newWsmy265.Rif = dto.Rif; newWsmy265.Nombre = dto.Nombre + " " + dto.Apellido; newWsmy265.Cargo = sapCargoContacto.Descripcion; newWsmy265.Area = sapDepartamentoContacto.Descripcion; newWsmy265.TelefonoOficina1 = dto.Telefono; newWsmy265.TelefonoCelular = dto.Celular; newWsmy265.Email = dto.Email; newWsmy265.Fax = dto.Fax; newWsmy265.IdContactos = newCorrelativoContactoCliente; newWsmy265.Inactivo = ""; if (dto.FechaNacimiento != null) { newWsmy265.FechaCumpleanos = dto.FechaNacimiento.Value.Year.ToString() + dto.FechaNacimiento.Value.Month.ToString() + dto.FechaNacimiento.Value.Day.ToString(); } newWsmy265.TomaDecision = sapPoderContacto.Id; newWsmy265.AceptaEmail = "X"; newWsmy265.FechaCreacion = DateTime.Now; newWsmy265.Usuario = dto.UsuarioConectado; await _unitOfWork.Wsmy265Repository.Add(newWsmy265); await _unitOfWork.SaveChangesAsync(); response.Data = true; response.Meta = metadata; return(response); } catch (Exception ex) { metadata.IsValid = false; metadata.Message = ex.InnerException.Message; response.Data = false; response.Meta = metadata; return(response); } }
public async Task <IActionResult> CreateContactoAlTables(ContactoCreateDto dto) { var response = await _mtrContactosService.CreateContactoAlTables(dto); return(Ok(response)); }