public void TestMetho6() { ComunRegistro comunRegistro = new ComunRegistro();; UploadTempResponse uploadTempResponse = new UploadTempResponse(); EClasificacionDocumento clasificacion = new EClasificacionDocumento(); clasificacion.IdClasificacionDoc = 1; ETipoDocumento tipoDocumento = new ETipoDocumento(); tipoDocumento.IdTipoDoc = 1; EDocumentoTem documento = new EDocumentoTem(); documento.NombreArchivo = "ProbandoEnTest"; //documento.Temporal = true; //documento.ClasificacionDocumento = clasificacion; //Resolutivo, cambiar esto depues. //documento.NroDocumento = "1234567890"; //documento.TipoDocumento = tipoDocumento; EDocumentoTem _documento = new EDocumentoTem(); //_documento.NombreArchivo = "xxxxxx"; uploadTempResponse = comunRegistro.GrabarDatosDocumentoTemporal(documento); _documento = uploadTempResponse.data; Assert.IsNotNull(_documento); }
/* public EOpcionesUbigeo ObtenerOpcionesUbigeo(string IdDre) * { * throw new NotImplementedException(); * }*/ public UploadTempResponse Upload(Stream data) { // Boundary is auto-detected but can also be specified. //var parser = new MultipartFormDataParser(data, Encoding.UTF8 EUser user = new EUser { nameId = "_", IdUser = 0 }; //EDocumento documento = new EDocumento(); EDocumentoTem documentoTem = new EDocumentoTem(); string descTipoFuncion; // = "DeCreacion"; //"DeDesignacionDirector" UploadTempResponse uploadTempResponse = new UploadTempResponse(); Complementarias complementarias = new Complementarias(); var parser = MultipartFormDataParser.Parse(data); //Parámetros string username = parser.GetParameterValue("usuario"); string finalidad = parser.GetParameterValue("finalidad"); string idDocumentoTemString = parser.GetParameterValue("idDocumentoTem"); int _idDocumentoTem = 0; if (idDocumentoTemString != null && idDocumentoTemString != "" && idDocumentoTemString != "0") { _idDocumentoTem = int.Parse(idDocumentoTemString); /*uploadTempResponse.result = false; * uploadTempResponse.message = _idDocumento.ToString() + " **"; * uploadTempResponse.data = null; * * return uploadTempResponse;*/ } user.nameId = username; descTipoFuncion = username + finalidad; // Files are stored in a list: var file = parser.Files.First(); string filename = file.FileName; //******Validar la extención**** ValidacionResponse validarExtension = new ValidacionResponse(); validarExtension = complementarias.validarExtension(filename, ".pdf"); if (!(validarExtension.result)) { uploadTempResponse.result = false; uploadTempResponse.message = validarExtension.message; uploadTempResponse.data = null; return(uploadTempResponse); } Stream dataResult = file.Data; //******Validar la tamaño**** ValidacionResponse validarTamanio = new ValidacionResponse(); validarTamanio = complementarias.validarTamanio(dataResult, 1); if (!(validarTamanio.result)) { uploadTempResponse.result = false; uploadTempResponse.message = validarTamanio.message; uploadTempResponse.data = null; return(uploadTempResponse); } ValidacionResponse validarFidelidad = new ValidacionResponse(); validarFidelidad = complementarias.validarFidelidad(dataResult); if (!(validarFidelidad.result)) { uploadTempResponse.result = false; uploadTempResponse.message = validarFidelidad.message; uploadTempResponse.data = null; return(uploadTempResponse); } string rutaBase = ConfigurationManager.AppSettings["URL_FILE_SERVER"]; //Crear un nombre temporal_aleatorio. combinación de fecha + random try { var ruta = Path.Combine("Temporales", user.nameId); var path = Path.Combine(rutaBase, ruta); // SI EL DIRECTORIO DE USUARIO NO EXISTE: CREA. if (!(Directory.Exists(path))) { Directory.CreateDirectory(path); } //SI DIRECTORIO EXISTE: if ((Directory.Exists(path))) { //CREA EL NOMBRE DEL ARCHIVO var newFileName = descTipoFuncion + ".pdf"; //var fullPath = @"logo-minedu3.pdf"; var fullPath = Path.Combine(path, newFileName); try { if (File.Exists(fullPath)) { FileInfo fi2 = new FileInfo(fullPath); fi2.Delete(); } } catch (Exception e) { newFileName = descTipoFuncion + "1" + ".pdf"; fullPath = Path.Combine(path, newFileName); } using (var fileStream = new FileStream(fullPath, FileMode.Create, FileAccess.Write)) { try { dataResult.Seek(0, SeekOrigin.Begin); //dataResult.CopyTo(fileStream, input.Length); dataResult.CopyTo(fileStream); //fileStream.Flush(); //EClasificacionDocumento clasificacion = new EClasificacionDocumento(); //clasificacion.IdClasificacionDoc = 1; //ETipoDocumento tipoDocumento = new ETipoDocumento(); //tipoDocumento.IdTipoDoc = 1; documentoTem.IdDocumentoTem = _idDocumentoTem; documentoTem.NombreArchivo = newFileName; // fileStream.Name; documentoTem.Ruta = ruta; // path.ToString(); documentoTem.Finalidad = finalidad; //documento.Temporal = true; //documento.ClasificacionDocumento = clasificacion; //Resolutivo, cambiar esto depues. //documento.NroDocumento = "1234567891"; //documento.TipoDocumento = tipoDocumento; try { EDocumentoTem _documentoTem = new EDocumentoTem(); uploadTempResponse = comunRegistro.GrabarDatosDocumentoTemporal(documentoTem); //uploadTempResponse.result = true; //uploadTempResponse.message = "OK"; //uploadTempResponse.data = _documentoTem; return(uploadTempResponse); } catch (Exception e) { uploadTempResponse.result = false; uploadTempResponse.message = e.Message.ToString() + e.Source.ToString() + e.Data.ToString() + "Error al grabar" + " id: " + documentoTem.IdDocumentoTem.ToString() + " Nombre: " + documentoTem.NombreArchivo + " Ruta:" + documentoTem.Ruta + " Finalidad: " + documentoTem.Finalidad; uploadTempResponse.data = null; return(uploadTempResponse); } } catch (Exception e) { uploadTempResponse.result = false; uploadTempResponse.message = e.Message.ToString() + "Error al intentar copiar el archivo" + " id: " + documentoTem.IdDocumentoTem.ToString() + " Nombre: " + documentoTem.NombreArchivo + " Ruta:" + documentoTem.Ruta + " Finalidad: " + documentoTem.Finalidad; uploadTempResponse.data = null; return(uploadTempResponse); } } } } catch (Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } finally { } //return resp + " tamaño: " + FileLen.ToString(); // "OK-Ana " + filename; uploadTempResponse.result = false; uploadTempResponse.message = "Ocurrio Algo"; uploadTempResponse.data = null; return(uploadTempResponse); }