예제 #1
0
        public async Task GeneraRecibo(long documento, string usuario)
        {
            CobGeneralCobranza generalCobranzas = await GetGeneralCobranzaPorDocumento(documento);

            // CobGeneralCobranzaDto generalCobranzasDtos = new CobGeneralCobranzaDto();
            CobAdjuntosCobranza Adjunto = new CobAdjuntosCobranza();

            // CobAdjuntosCobranza AdjuntoJpg = new CobAdjuntosCobranza();
            if (generalCobranzas != null)
            {
                ReciboDto recibo = await GeneraReciboDto(documento);

                Metadata geberaPdf = GeneraPdfRecibo(recibo, "_Consultado");
                if (geberaPdf.IsValid)
                {
                    var nombreArchivo = "RC_" + documento.ToString() + "_Consultado" + ".pdf";

                    await _cobAdjuntosCobranzaService.DeleteByNameFile(recibo.CobGeneralCobranzaDto.Documento, nombreArchivo);



                    //ADJUNTAMOS EL RC///////////////////////////////
                    Adjunto.Documento         = documento;
                    Adjunto.IdTipoDocumento   = 20;
                    Adjunto.NombreArchivo     = nombreArchivo;
                    Adjunto.Archivo           = null;
                    Adjunto.IdUsuarioCreacion = usuario;
                    Adjunto.FechaCreacion     = DateTime.Now;
                    Adjunto.Ruta = _paginationOptions.FolderDocumentation + "\\";
                    //CobAdjuntosCobranza cobranzaAdjunto = await _cobAdjuntosCobranzaService.Insert(Adjunto);
                    await _cobAdjuntosCobranzaService.Insert(Adjunto);
                }
            }
        }
        public async Task <CobAdjuntosCobranza> Insert(CobAdjuntosCobranza cobAdjuntosCobranza)
        {
            await _unitOfWork.CobAdjuntosCobranzaRepository.Add(cobAdjuntosCobranza);

            await _unitOfWork.SaveChangesAsync();

            return(cobAdjuntosCobranza);
        }
예제 #3
0
        //public async Task<IActionResult> PostImage(IFormFile image)
        public async Task <IActionResult> PostImage(List <CobAdjuntosCobranzaDto> vmList)
        {
            int contadorImagenesProcesadas = 0;

            Metadata metadata = new Metadata
            {
                IsValid    = false,
                Message    = "",
                TotalCount = 0
            };

            try
            {
                foreach (CobAdjuntosCobranzaDto vm in vmList)
                {
                    //Viene establecido
                    //vm.Documento;

                    //Viene establecido
                    //vm.IdTipoDocumento

                    var generalCobranzas = await _generalCobranzaService.GetGeneralCobranzaPorDocumento(vm.Documento);

                    if (generalCobranzas == null)
                    {
                        vm.Valid = false;
                        _logger.LogWarning("PostImage - Error al insertar regitro en tabla del Documento, no existe ne CobGeneralCobranzas:" + vm.Documento);
                    }
                    else
                    {
                        _logger.LogWarning("PostImage - Iniciando Adjuntos del Documento:" + vm.Documento);

                        vm.NombreArchivo = $@"{DateTime.Now.Ticks}" + vm.Extension;

                        vm.IdUsuarioCreacion = vm.IdUsuarioCreacion;

                        vm.FechaCreacion = DateTime.Now;

                        vm.Ruta = _paginationOptions.FolderDocumentation + "\\";
                        //

                        //CREA EL ARCHIVO DE IMAGEN

                        //Convert Base64 Encoded string to Byte Array.
                        string base64     = vm.Data;
                        byte[] imageBytes = Convert.FromBase64String(base64);

                        //Ruta y nombre de la imagen
                        var imageFullName = vm.Ruta + vm.NombreArchivo;

                        _logger.LogWarning("PostImage - Creando archivo Adjuntos del Documento:" + vm.Documento);
                        //creo el fichero
                        await System.IO.File.WriteAllBytesAsync(imageFullName, imageBytes);

                        _logger.LogWarning("PostImage - Archivo Creado Adjuntos del Documento:" + vm.Documento);
                        //vm.Data = null;

                        //

                        //INSERT en la tabla CobAdjuntosCobranza (datos en el objeto vm )
                        CobAdjuntosCobranza cobAdjuntosCobranza = _mapper.Map <CobAdjuntosCobranza>(vm);
                        var cobranza = await _cobAdjuntosCobranzaService.Insert(cobAdjuntosCobranza);

                        if (cobranza == null)
                        {
                            //Error al insertar
                            vm.Valid = false;
                            _logger.LogWarning("PostImage - Error al insertar regitro en tabla del Documento:" + vm.Documento);
                        }
                        else
                        {
                            //insert valido
                            vm.Valid = true;
                            _logger.LogWarning("PostImage regitro insertado en tabla del Documento:" + vm.Documento);
                        }

                        contadorImagenesProcesadas += 1;
                    }
                }

                metadata.IsValid    = true;
                metadata.Message    = "Imágenes grabadas correctamente.";
                metadata.TotalCount = contadorImagenesProcesadas;
            }
            catch (Exception e)
            {
                metadata.IsValid = false;
                metadata.Message = e.InnerException.Message;
                _logger.LogError("PostImage - Error  del Documento:" + e.InnerException.Message);

                metadata.TotalCount = 0;
            }

            //devuelve en la lista solo los no validos
            vmList = vmList.Where(x => !x.Valid).ToList();

            var response = new ApiResponse <List <CobAdjuntosCobranzaDto> >(vmList)
            {
                Meta = metadata
            };

            return(Ok(response));
        }
예제 #4
0
        public async Task Delete(long id)
        {
            CobAdjuntosCobranza entity = await GetById(id);

            _context.CobAdjuntosCobranza.Remove(entity);
        }
예제 #5
0
 public async Task Add(CobAdjuntosCobranza entity)
 {
     await _context.CobAdjuntosCobranza.AddAsync(entity);
 }