public int RegistrarAduana(RegistrarActualizarAduanaRequestDTO request)
        {
            Aduana Aduana = _Mapper.Map <Aduana>(request);

            Aduana.FechaRegistro = DateTime.Now;
            //Aduana.NombreArchivo = file.FileName;
            Aduana.UsuarioRegistro = request.Usuario;
            Aduana.Numero          = _ICorrelativoRepository.Obtener(request.EmpresaId, Documentos.Aduana);

            int id = _IAduanaRepository.Insertar(Aduana);

            List <AduanaCertificacionTipo> aduanaCertificacionTipoList = new List <AduanaCertificacionTipo>();

            request.Certificaciones.ForEach(z =>
            {
                AduanaCertificacionTipo item = new AduanaCertificacionTipo();
                item.AduanaId                     = id;
                item.CodigoCertificacion          = z.CodigoCertificacion;
                item.TipoCertificacionId          = z.TipoCertificacionId;
                item.EmpresaProveedoraAcreedoraId = z.EmpresaProveedoraAcreedoraId;
                item.TipoId = z.TipoId;

                aduanaCertificacionTipoList.Add(item);
            });

            _IAduanaRepository.ActualizarAduanaCertificacion(aduanaCertificacionTipoList, id);

            foreach (AduanaCargamento cargamento in request.Cargamentos)
            {
                cargamento.AduanaId = id;
                _IAduanaRepository.InsertarAduanaCargamento(cargamento);
            }

            return(id);
        }
        public int ActualizarAduana(RegistrarActualizarAduanaRequestDTO request)
        {
            Aduana Aduana = _Mapper.Map <Aduana>(request);


            Aduana.FechaUltimaActualizacion   = DateTime.Now;
            Aduana.UsuarioUltimaActualizacion = request.Usuario;
            ////Adjuntos
            //if (file != null)
            //{
            //    if (file.Length > 0)
            //    {
            //        Aduana.NombreArchivo = file.FileName;
            //        ResponseAdjuntarArchivoDTO response = AdjuntoBl.AgregarArchivo(new RequestAdjuntarArchivosDTO()
            //        {
            //            filtros = new AdjuntarArchivosDTO()
            //            {
            //                archivoStream = fileBytes,
            //                filename = file.FileName,
            //            },
            //            pathFile = _fileServerSettings.Value.FincasCertificacion

            //        });

            //        Aduana.PathArchivo = _fileServerSettings.Value.FincasCertificacion + "\\" + response.ficheroReal;
            //    }
            //}
            int affected = _IAduanaRepository.Actualizar(Aduana);

            List <AduanaCertificacionTipo> aduanaCertificacionTipoList = new List <AduanaCertificacionTipo>();

            request.Certificaciones.ForEach(z =>
            {
                AduanaCertificacionTipo item = new AduanaCertificacionTipo();
                item.AduanaId                     = request.AduanaId;
                item.CodigoCertificacion          = z.CodigoCertificacion;
                item.TipoCertificacionId          = z.TipoCertificacionId;
                item.EmpresaProveedoraAcreedoraId = z.EmpresaProveedoraAcreedoraId;
                item.TipoId = z.TipoId;

                aduanaCertificacionTipoList.Add(item);
            });


            _IAduanaRepository.ActualizarAduanaCertificacion(aduanaCertificacionTipoList, request.AduanaId);

            _IAduanaRepository.EliminarAduanaCargamento(request.AduanaId);

            foreach (AduanaCargamento cargamento in request.Cargamentos)
            {
                cargamento.AduanaId = request.AduanaId;
                _IAduanaRepository.InsertarAduanaCargamento(cargamento);
            }



            return(affected);
        }