public ActionResult Delete(int id)
        {
            var _ventaBL = new VentaBL();
            var venta    = _ventaBL.Obtenerventas(id);

            return(View(venta));
        }
Пример #2
0
 public JsonResult AnularVenta(int id)
 {
     VentaBL.ActualizarParcial(new Venta {
         Id = id, Estado = "X"
     }, x => x.Estado);
     return(Json(true, JsonRequestBehavior.AllowGet));
 }
Пример #3
0
        public IHttpActionResult GetListadoVentasACuenta(string usuario, int idCliente, string desCliente)
        {
            try
            {
                if (desCliente == null)
                {
                    desCliente = "";
                }
                VentaBL        oVentaBL = new VentaBL(idCliente);
                ListadoVentaBE obe      = oVentaBL.ListadoVentasACuenta(usuario, idCliente, desCliente);

                if (obe != null && (obe.listado != null && obe.listado.Count > 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #4
0
        public IHttpActionResult GetComprobantes(string usuario, int idCliente, int idTienda)
        {
            try
            {
                VentaBL oVentaBL           = new VentaBL(idCliente);
                Venta_DatosInicialesBE obe = oVentaBL.ListarComprobantes(usuario, idCliente, idTienda);

                if (obe != null && (obe.loComprobante != null && obe.loComprobante.Count > 1))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else if (obe.loComprobante == null || (obe.loComprobante != null && obe.loComprobante.Count == 1))
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontró Tipo de Documento para la Tienda seleccionada.")));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #5
0
 private void BuscarVentaFechas()
 {
     this.dataListado.DataSource = VentaBL.VentaBuscarFecha(this.dtFecha1.Value.ToString("dd/MM/yyyy"),
                                                            this.dtFecha2.Value.ToString("dd/MM/yyyy"));
     this.OcultarColumnas();
     lblTotal.Text = "Total De Registros: " + Convert.ToString(dataListado.Rows.Count);
 }
        // GET: VentasMerkur
        public ActionResult Index()
        {
            var VentasBL     = new VentaBL();
            var Listadeventa = _ventaBL.Obtenerventa();

            return(View(Listadeventa));
        }
Пример #7
0
        private int GenerarID()
        {
            DataTable dt = new DataTable();

            dt = VentaBL.Generaridventa();
            return(Convert.ToInt32(dt.Rows[0][0].ToString()));
        }
Пример #8
0
        public IHttpActionResult GetDatosIniciales(string usuario, int idCliente)
        {
            try
            {
                VentaBL oVentaBL           = new VentaBL(idCliente);
                Venta_DatosInicialesBE obe = oVentaBL.ListarDatosIniciales(usuario, idCliente);

                if (obe != null && (obe.loTienda != null && obe.loTienda.Count > 1) && (obe.loEmisor != null && obe.loEmisor.Count >= 1))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else if (obe.loTienda == null || (obe.loTienda != null && obe.loTienda.Count == 1))
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se registraron Tiendas.")));
                }
                else if (obe.loEmisor == null || (obe.loEmisor != null && obe.loEmisor.Count == 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontró datos de Emisor Electrónico y/o Certificado Digital.")));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #9
0
 public JsonResult Guardar(Venta pVenta, List <VentaDetalle> pLista)
 {
     try
     {
         decimal total = 0;
         for (int i = 0; i < pLista.Count; i++)
         {
             pLista[i].Importe = pLista[i].Cantidad * pLista[i].Precio;
             total            += pLista[i].Importe;
         }
         pVenta.Fecha        = DateTime.Now;
         pVenta.Estado       = "P";
         pVenta.Total        = total;
         pVenta.VentaDetalle = pLista;
         pVenta.Serie        = VentaBL.ObtenerSerieDoc(pVenta.Tipo);
         pVenta.Numero       = VentaBL.ObtenerNumeroDoc(pVenta.Tipo);
         VentaBL.Crear(pVenta);
         pVenta.VentaDetalle = null;
         return(Json(new
         {
             pVenta.Id,
             pVenta.Fecha,
             pVenta.Serie,
             pVenta.Numero,
             pVenta.Total,
             Cliente = pVenta.ClienteId.HasValue ? PersonaBL.Obtener(pVenta.ClienteId.Value).NombreCompleto : "",
             pVenta.Estado
         }, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Пример #10
0
        public async Task <IHttpActionResult> Productos(VentaBE obj)
        {
            try
            {
                VentaBL oVentaBL           = new VentaBL(obj.IdCliente);
                Venta_DatosInicialesBE obe = oVentaBL.ListarProductos(obj.UsrCreador, obj.IdCliente, obj.IdTienda);

                if (obe != null && (obe.loProducto != null && obe.loProducto.Count > 0) && (obe.loTipoProducto != null && obe.loTipoProducto.Count > 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else if (obe.loProducto == null || (obe.loProducto != null && obe.loProducto.Count == 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron Productos registrados en la Tienda seleccionada.")));
                }
                else if (obe.loTipoProducto == null || (obe.loTipoProducto != null && obe.loTipoProducto.Count == 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron Tipos de Productos registrados en la Tienda seleccionada.")));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #11
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente de los canales front de venta y llamar
        /// al metodo de negocio registrar casos especiales
        /// </summary>
        /// <param name="casos">Objeto de negocio Venta</param>
        /// <returns>ventas</returns>
        public long CasosEspeciales(CasosBE casos)
        {
            long    resp           = 0;
            VentaBL casosEspeciles = new VentaBL();

            resp = casosEspeciles.CasosEspeciales(casos);
            return(resp);
        }
Пример #12
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente de los canales front de venta y llamar
        /// al metodo de negocio para Revisar los casos especiales registrados
        /// </summary>
        /// <param name="ventas">Objeto de negocio Venta</param>
        /// <returns>ventas</returns>
        public List <CasosBE> RevisionCasosEspeciales(string casos)
        {
            List <CasosBE> resp;
            VentaBL        revisionCasos = new VentaBL();

            resp = revisionCasos.RevisionCasosEspeciales(casos);
            return(resp);
        }
Пример #13
0
        public ActionResult Delete(venta venta)
        {
            var _ventaBL = new VentaBL();

            _ventaBL.EliminarVenta(venta);

            return(RedirectToAction("Index"));
        }
Пример #14
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente de los canales front de venta y llamar
        /// al metodo de negocio modificar venta
        /// </summary>
        /// <param name="objeto Detalle venta">Objeto de negocio DetalleVenta</param>
        /// <returns>identificador venta</returns>
        public long ModificarVenta(Detalle_VentaBE detVenta)
        {
            long    resp           = 0;
            VentaBL modificarVenta = new VentaBL();

            resp = modificarVenta.ModificarVenta(detVenta);
            return(resp);
        }
Пример #15
0
        /// <summary>
        /// Encargado de recibir el id_venta de los canales front de venta y llamar
        /// al metodo de negocio para consultar ventas
        /// </summary>
        /// <param name="cédula cliente, codigo pedido">cedula, codigopedido</param>
        /// <returns>Identificador venta</returns>
        public long ConsultarExistenciaVenta(string ventas)
        {
            long    resp;
            VentaBL ventaCil = new VentaBL();

            resp = ventaCil.ConsultarExistenciasVenta(ventas);
            return(resp);
        }
Пример #16
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente o código de la venta de los canales front de venta y llamar
        /// al metodo de negocio para consultar venta
        /// </summary>
        /// <param name="cédula, codigoVenta">cédula cliente o código venta</param>
        /// <returns>Objeto de Venta</returns>
        public VentaBE ConsultarVenta(string datoConsulta)
        {
            VentaBE resp;
            VentaBL consulVenta = new VentaBL();

            resp = consulVenta.ConsultarVenta(datoConsulta);
            return(resp);
        }
Пример #17
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente de los canales front de venta y llamar
        /// al metodo de negocio para registrar ventas
        /// </summary>
        /// <param name="ventas">Objeto de negocio Venta</param>
        /// <returns>Identificador Venta</returns>
        public long RegistrarVenta(VentaBE ventas)
        {
            long    resp;
            VentaBL ventaCil = new VentaBL();

            resp = ventaCil.RegistarVenta(ventas);
            return(resp);
        }
Пример #18
0
        public IHttpActionResult GetAnularNC(string usuario, int idCliente, int idVenta)
        {
            EDEDocumentoElectronico    objEDEDocumentoElectronicoResponse;
            EDEEnviarDocumentoResponse objEDERespuesta;
            FacturacionElectronicaBL   oFacturaElectronicaBL = new FacturacionElectronicaBL();

            try
            {
                VentaBL     oVentaBL = new VentaBL(idCliente);
                RespuestaBE rpta     = new RespuestaBE();
                VentaBE     obe      = new VentaBE();
                rpta = oVentaBL.AnularNC(usuario, idCliente, idVenta, out obe);

                if (rpta.codigo == 1 & rpta.isFactOnline)
                {
                    //Generar Estructura Nota de Crédito
                    objEDEDocumentoElectronicoResponse = new EDEDocumentoElectronico();
                    objEDEDocumentoElectronicoResponse = oFacturaElectronicaBL.GenerarEstructuraNotaCredito(obe);
                    //Procesar Nota de Crédito
                    HelperLog.PutLine("Inicio proceso Facturacion Electronica Nota de Crédito");
                    objEDERespuesta = oFacturaElectronicaBL.ProcesarNotaCredito(objEDEDocumentoElectronicoResponse);
                    string msg = "";
                    if (objEDERespuesta.Exito)
                    {
                        msg = "Se envío a SUNAT Correctamente.";
                        if (objEDERespuesta.Procesado)
                        {
                            HelperLog.PutLine(string.Format("Se han actualizado el registro."));
                        }
                        else
                        {
                            HelperLog.PutLine(string.Format("No existen registros para actualizar."));
                        }
                    }
                    else
                    {
                        msg = "Ocurrío un error al enviar a SUNAT.";
                        HelperLog.PutLineError(string.Format(string.Format("Se ha generado el siguiente error: {0}", objEDERespuesta.MensajeError)));
                    }
                    //Actualizar respuesta
                    ActualizarRespuesta(objEDERespuesta);
                    return(Ok(Models.Util.GetBodyResponse(200, rpta.descripcion + " " + msg)));
                }
                else if (rpta.codigo == 1)
                {
                    return(Ok(Models.Util.GetBodyResponse(200, rpta.descripcion)));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "Ocurrío un error inesperado.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #19
0
 public JsonResult ListarVenta10()
 {
     return(Json(
                VentaBL.Listar(orderBy: x => x.OrderByDescending(y => y.Id)
                               , includeProperties: "Persona").Take(25)
                .Select(x => new
     {
         x.Id,
         x.Fecha,
         x.Serie,
         x.Numero,
         x.Total,
         Cliente = x.Persona != null ? x.Persona.NombreCompleto : "",
         x.Estado
     }).ToList()
                , JsonRequestBehavior.AllowGet));
 }
Пример #20
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                string rpta = "";
                if (this.txtIdcliente.Text == string.Empty || this.txtIgv.Text == string.Empty)
                {
                    MensajeError("Falta ingresar algunos datos, serán remarcados");
                    errorIcono.SetError(txtIdcliente, "Ingrese un Valor");
                    errorIcono.SetError(txtIgv, "Ingrese un Valor");
                }
                else
                {
                    if (this.IsNuevo)
                    {
                        rpta = VentaBL.Insertar(Convert.ToInt32(this.txtIdventa.Text), Convert.ToInt32(this.txtIdcliente.Text), Idtrabajador,
                                                this.dtFecha.Value, this.cbTipo_Pago.Text, ncf, ncrefis, this.txtAuttarjeta.Text,
                                                Convert.ToDecimal(this.txtIgv.Text), 1, dtDetalle);
                    }

                    if (rpta.Equals("OK"))
                    {
                        if (this.IsNuevo)
                        {
                            this.MensajeOk("Se Insertó de forma correcta el registro");
                            this.FacturaConsumidorFinal();
                            totalPagado = 0;
                        }
                    }
                    else
                    {
                        this.MensajeError(rpta);
                    }

                    this.IsNuevo = false;
                    this.Botones();
                    this.Limpiar();
                    this.LimpiarDetalle();
                    this.Mostrar();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + ex.StackTrace);
            }
        }
Пример #21
0
        public IHttpActionResult GetListarImagenProducto(string usuario, int idCliente, int idProducto)
        {
            try
            {
                VentaBL oVentaBL = new VentaBL(idCliente);
                List <ListaArchivosAdjuntos> obe = oVentaBL.ListarImagenProducto(usuario, idProducto);

                if (obe != null && obe.Count > 0)
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #22
0
        public IHttpActionResult GetVerDetalleVenta(string usuario, int idCliente, int idVenta)
        {
            try
            {
                VentaBL         oVentaBL = new VentaBL(idCliente);
                RegistroVentaBE obe      = oVentaBL.VerDetalleVenta(usuario, idCliente, idVenta);

                if (obe != null && (obe.listadoDetalle != null && obe.listadoDetalle.Count > 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #23
0
        public IHttpActionResult GetListadoVentas(string usuario, int idCliente, bool isDia, bool isMes, bool isAnio, bool isRango,
                                                  string fechaInicio, string fechaFin)
        {
            try
            {
                VentaBL        oVentaBL = new VentaBL(idCliente);
                ListadoVentaBE obe      = oVentaBL.ListadoVentas(usuario, idCliente, isDia, isMes, isAnio, isRango, fechaInicio, fechaFin);

                if (obe != null && (obe.listado != null && obe.listado.Count > 0))
                {
                    return(Ok(Models.Util.GetBodyResponse(200, obe)));
                }
                else
                {
                    return(Ok(Models.Util.GetBodyResponse(300, "No se encontraron registros.")));
                }
            }
            catch (Exception ex)
            {
                /*LogSA.GrabarLogError("SOL TR", user, "GetListarOrdOtrs", ex);*/
                return(Ok(Models.Util.GetBodyResponse(400, ex.Message)));
            }
        }
Пример #24
0
        private void btnAnular_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult Opcion;
                Opcion = MessageBox.Show("Realmente Desea Anular los Registros", "Sistema de Ventas", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

                if (Opcion == DialogResult.OK)
                {
                    string Codigo;
                    string Rpta = "";

                    foreach (DataGridViewRow row in dataListado.Rows)
                    {
                        if (Convert.ToBoolean(row.Cells[0].Value))
                        {
                            Codigo = Convert.ToString(row.Cells[1].Value);
                            Rpta   = VentaBL.Anular(Convert.ToInt32(Codigo));
                        }
                        //Se evalua si se anuló el registro
                        if (Rpta.Equals("OK"))
                        {
                            this.MensajeOk("Se Anuló Correctamente el registro");
                        }
                        else
                        {
                            this.MensajeError(Rpta);
                        }
                    }
                    //this.Mostrar();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + ex.StackTrace);
            }
        }
Пример #25
0
 public ActionResult Comprobante(int id)
 {
     return(View(VentaBL.Obtener(x => x.Id == id, includeProperties: "VentaDetalle,VentaDetalle.Articulo,Persona")));
 }
Пример #26
0
 //metodo mostrar los detalles
 private void MostrarDetalle()
 {
     this.dataListadoDetalle.DataSource = VentaBL.MostrarDetalle(this.txtIdventa.Text);
 }
Пример #27
0
 //Metodo Mostrar
 private void Mostrar()
 {
     this.dataListado.DataSource = VentaBL.Mostrar();
     this.OcultarColumnas();
     lblTotal.Text = "Total De Registros: " + Convert.ToString(dataListado.Rows.Count);
 }
Пример #28
0
        private void FacturaConsumidorFinal()
        {
            VentaBL id = new VentaBL();

            decimal puni = 0, ptotal = 0, itb = 0, puniac = 0, itbac = 0;
            string  artic;
            int     cantidad = 0;

            CreaTicket Ticket1 = new CreaTicket();

            //Ticket1.AbreCajon();  //abre el cajon
            Ticket1.TextoCentro("Pos Vents");       // imprime en el centro "Venta mostrador"
            Ticket1.TextoCentro("Grupo 3");
            Ticket1.TextoCentro("RNC: 0000000000"); // imprime en el centro "Venta mostrador"
            Ticket1.TextoCentro(" ");

            Ticket1.TextoIzquierda("Factura # " + txtIdventa.Text); // imprime en el centro "Venta mostrador"
            Ticket1.TextoIzquierda("Fecha: " + dtFecha.Value.ToShortDateString());
            Ticket1.TextoIzquierda("Metodo de Pago: " + cbTipo_Pago.Text);
            Ticket1.TextoIzquierda("Cliente: " + this.txtCliente.Text);
            Ticket1.TextoIzquierda("RNC/Cedula: " + "000000000");
            Ticket1.TextoCentro("COMPROBANTE AUTORIZADO POR LA DGII");
            Ticket1.TextoIzquierda(dtFecha.Value.ToShortDateString());
            Ticket1.TextoIzquierda("NCF: " + ncf);
            Ticket1.LineasGuion(); // imprime una linea de guiones
            Ticket1.TextoCentro("Factura Para Consumidor Final");
            Ticket1.LineasGuion();
            Ticket1.EncabezadoVenta(); // imprime encabezados
            Ticket1.LineasGuion();
            //Ticket1.AgregaArticulo(descripcion, cantidad, precio, total); //imprime una linea de descripcion
            foreach (DataGridViewRow row in dataListadoDetalle.Rows)
            {
                artic    = row.Cells[1].Value.ToString();
                cantidad = Convert.ToInt32(row.Cells[2].Value.ToString());
                puni     = Convert.ToDecimal(row.Cells[3].Value.ToString());

                ptotal = cantidad * puni;
                //itb = ptotal * 18 / 100;
                itb = ptotal / Convert.ToDecimal(1.18) * 18 / 100;
                //ptotal = Convert.ToDouble(row.Cells[5].Value.ToString());
                Ticket1.TextoIzquierda(cantidad.ToString() + " x " + string.Format("{0:n}", puni));

                Ticket1.AgregaArticulo(artic, " ", string.Format("{0:n}", itb), string.Format("{0:n}", ptotal));
            }
            Ticket1.LineasGuion(); // imprime linea

            decimal descuento = Convert.ToDecimal(lblTotalDescontado.Text);
            decimal itbis     = (Convert.ToDecimal(lblTotalPagado.Text) - descuento) / Convert.ToDecimal(1.18) * 18 / 100; // hacemos una conversion para sacar el monto base
            decimal subtotal  = Math.Round(Convert.ToDecimal(lblTotalPagado.Text) + Convert.ToDecimal(lblTotalDescontado.Text), 2);
            decimal total     = Convert.ToDecimal(lblTotalPagado.Text);

            //-Ticket1.AgregaTotales("Subtotal:", string.Format("{0:n}", subtotal));
            //Ticket1.AgregaTotales("Descuento: ", string.Format("{0:n}", descuento));
            //Ticket1.AgregaTotales("Itbis 18%:", Math.Round( itbis,2).ToString());
            //Ticket1.AgregaTotales("Total: ", string.Format("{0:n}", total));  // imprime linea con total

            Ticket1.AgregaArticulo("Subtotal", " ", string.Format("{0:n}", itbis), string.Format("{0:n}", subtotal)); //imprime linea con el Subtotal
            Ticket1.AgregaArticulo("Total", " ", string.Format("{0:n}", itbis), string.Format("{0:n}", total));       //imprime linea con total

            Ticket1.TextoCentro("");
            Ticket1.LineasGuion();
            Ticket1.TextoCentro("Gracias por Preferirnos");
            Ticket1.LineasGuion();

            Ticket1.CortaTicket(); // corta el ticket
        }
Пример #29
0
 private void MostrarArticulo_Venta_Id()
 {
     this.dataListado.DataSource = VentaBL.BuscarArticuloVentaCodigo(this.txtBuscar.Text);
     this.OcultarColumnas();
     lblTotal.Text = "Total De Registros: " + Convert.ToString(dataListado.Rows.Count);
 }
Пример #30
0
 // Metodo BuscarNumero_Documento
 private void BuscarClienteVentaDocumento()
 {
     this.dataListado.DataSource = VentaBL.Buscar_Cliente_Venta_Documento(this.txtBuscar.Text);
     this.OcultarColumnas();
     lblTotal.Text = "Total De Registros: " + Convert.ToString(dataListado.Rows.Count);
 }