示例#1
0
        public void ActualizarEstadoComprobante(dto.ComprobanteByIdRequest request, byte estado)
        {
            var comprobante = new dom.Comprobante().BuscarPorId(request.IdComprobante);

            comprobante.Estado = estado;
            new dom.Comprobante().Modificar(comprobante);
        }
示例#2
0
        public List <dto.ComprobanteGrilla> ObtenerComprobantes(dto.ComprobantesObtenerRequest request)
        {
            var query     = new dom.Comprobante().BuscarComprobantes(request.Empresa_id, request.Serie, request.ClienteNombre, request.ComprobanteTipo_id, request.Estado, request.FechaEmitidoInicio, request.FechaEmitidoFin);
            var Resultado = Mapper.Map <IEnumerable <datoDto.ComprobanteGrilla>, IEnumerable <dto.ComprobanteGrilla> >(query);

            return(Resultado.ToList());
        }
示例#3
0
 public dto.ErrorClass EliminarCliente(ent.Cliente r)
 {
     dto.ErrorClass error = new dto.ErrorClass();
     try
     {
         var contarComprobantes = new dom.Comprobante().Buscar(c => c.ClienteId == r.Id);
         if (contarComprobantes.Count() > 0)
         {
             error.Error   = true;
             error.Mensaje = ConstantesErrores.NoEliminar;
         }
         else
         {
             var entidad = Mapper.Map <ent.Cliente, dato.Cliente>(r);
             new dom.Cliente().Eliminar(entidad);
             error.Error = false;
         }
     }
     catch (Exception Ex)
     {
         error.Error   = true;
         error.Mensaje = ConstantesErrores.NoControlado;
     }
     return(error);
 }
示例#4
0
        public List <dto.ReporteDiarioResponse> ObtenerReporteDiario(dto.ReporteDiarioRequest r)
        {
            var Entidad      = Mapper.Map <dto.ReporteDiarioRequest, datoDto.ReporteDiarioRequest>(r);
            var DetalleQuery = new dom.Comprobante().ObtenerReporteDiario(Entidad);
            var Resultado    = Mapper.Map <IEnumerable <datoDto.ReporteDiarioResponse>, IEnumerable <dto.ReporteDiarioResponse> >(DetalleQuery);

            return(Resultado.ToList());
        }
示例#5
0
        public void AnularComprobante(dto.ComprobanteAnulacionElectronicaRequest request, byte estado)
        {
            var comprobante = new dom.Comprobante().BuscarPorId(request.IdComprobante);

            comprobante.Estado        = estado;
            comprobante.MotiAnulacion = request.MotivoAnulacion;
            new dom.Comprobante().Modificar(comprobante);
            byte tipodete = 1;

            if (comprobante.ComprobanteTipoId == 7)
            {
                tipodete = 2;
            }
            var detalle = new dom.ComprobanteDetalles().Buscar(c => c.ComprobanteId == comprobante.Id).ToList();

            dato.Almacen objAlmacen;
            foreach (var item in detalle)
            {
                var producto = new dom.Producto().BuscarPorId(item.ProductoId);
                if (item.Tipo == 1)
                {
                    if (tipodete == 2)
                    {
                        if (producto.Stock - item.Cantidad > 0)
                        {
                            producto.Stock = producto.Stock - item.Cantidad;
                        }
                        else
                        {
                            producto.Stock = 0;
                        }
                    }
                    else
                    {
                        producto.Stock = producto.Stock + item.Cantidad;
                    }
                    new dom.Producto().Modificar(producto);
                    objAlmacen                = new dato.Almacen();
                    objAlmacen.Tipo           = tipodete;
                    objAlmacen.UsuarioId      = request.UsuarioId;
                    objAlmacen.ProductoId     = item.ProductoId;
                    objAlmacen.ProductoNombre = item.ProductoNombre;
                    objAlmacen.UnidadMedidaId = item.UnidadMedidaId;
                    objAlmacen.Cantidad       = (decimal)item.Cantidad;
                    objAlmacen.Fecha          = DateTime.Now;
                    objAlmacen.EmpresaId      = comprobante.EmpresaId;
                    objAlmacen.ComprobanteId  = comprobante.Id;
                    objAlmacen.Precio         = item.PrecioTotal;
                    new dom.Almacen().Adicionar(objAlmacen);
                }
            }
        }
示例#6
0
        public ent.Comprobante ObtenerComprobanteById(dto.ComprobanteByIdRequest request)
        {
            var comprobante = new dom.Comprobante().BuscarPorId(request.IdComprobante);

            comprobante.Comprobantedetalle = new dom.ComprobanteDetalles().Buscar(c => c.ComprobanteId == request.IdComprobante);
            var Resultado = Mapper.Map <dato.Comprobante, ent.Comprobante>(comprobante);

            Resultado.ComprobanteTipoNombre = new dom.TablaDato().BuscarPrimero(c => c.Relacion == "comprobantetipo" && c.Value == Resultado.ComprobanteTipoId.ToString()).Nombre;
            Resultado.EstadoNombre          = new dom.TablaDato().BuscarPrimero(c => c.Relacion == "comprobanteestado" && c.Value == Resultado.Estado.ToString()).Nombre;
            Resultado.MedioPagoNombre       = new dom.TablaDato().BuscarPrimero(c => c.Relacion == "MedioPago" && c.Value == Resultado.MedioPago.ToString()).Nombre;
            if (comprobante.TipoOperacionId.HasValue)
            {
                Resultado.TipoOperacionNombre = new dom.TablaDato().BuscarPrimero(c => c.Relacion == "TipoOperacion" && Convert.ToInt32(c.Value) == Resultado.TipoOperacionId).Nombre;
            }
            if (!String.IsNullOrEmpty(comprobante.DetraccionId))
            {
                Resultado.DetraccionNombre = new dom.TablaDato().BuscarPrimero(c => c.Relacion == "Detraccion" && c.Value == Resultado.DetraccionId).Nombre;
            }


            if (!String.IsNullOrEmpty(comprobante.TipoNotaId))
            {
                string relacionTipoNota = string.Empty;
                if (Resultado.ComprobanteTipoId == 7)
                {
                    relacionTipoNota = "tiponotacredito";
                }
                if (Resultado.ComprobanteTipoId == 8)
                {
                    relacionTipoNota = "tiponotadebito";
                }
                Resultado.TipoNotaNombre = new dom.TablaDato().BuscarPrimero(c => c.Relacion == relacionTipoNota && c.Value == comprobante.TipoNotaId).Nombre;
            }
            Resultado.HoraEmisionDate = DateTime.Now;
            return(Resultado);
        }