private List <ComprobanteDetalleEntidad> MapearMuchos(DataSet ds) { List <ComprobanteDetalleEntidad> ResUnosItem = new List <ComprobanteDetalleEntidad>(); try { foreach (DataRow row in ds.Tables[0].Rows) { ComprobanteDetalleEntidad unItem = new ComprobanteDetalleEntidad(); unItem.IdComprobanteDetalle = (int)row["IdComprobanteDetalle"]; unItem.NroComprobante = (int)row["NroComprobante"]; unItem.IdSucursal = (int)row["IdSucursal"]; unItem.IdTipoComprobante = (int)row["IdTipoComprobante"]; unItem.CUIT = row["CUIT"].ToString(); unItem.miProducto = new ProductoEntidad(); unItem.miProducto.IdProducto = (int)row["IdProducto"]; unItem.CantidadProducto = (int)row["CantidadProducto"]; unItem.PrecioUnitarioFact = (decimal)row["PrecioUnitarioFact"]; ResUnosItem.Add(unItem); } return(ResUnosItem); } catch (Exception es) { throw; } }
/// <summary> /// Updates a record in the ComprobanteDetalle table. /// </summary> public void Update(ComprobanteDetalleEntidad comprobanteDetalle) { ValidationUtility.ValidateArgument("comprobanteDetalle", comprobanteDetalle); SqlParameter[] parameters = new SqlParameter[] { new SqlParameter("@IdComprobanteDetalle", comprobanteDetalle.IdComprobanteDetalle), new SqlParameter("@NroComprobante", comprobanteDetalle.NroComprobante), new SqlParameter("@IdSucursal", comprobanteDetalle.IdSucursal), new SqlParameter("@IdTipoComprobante", comprobanteDetalle.IdTipoComprobante), new SqlParameter("@CUIT", comprobanteDetalle.CUIT), new SqlParameter("@IdProducto", comprobanteDetalle.IdProducto), new SqlParameter("@CantidadProducto", comprobanteDetalle.CantidadProducto), new SqlParameter("@PrecioUnitarioFact", comprobanteDetalle.PrecioUnitarioFact) }; SqlClientUtility.ExecuteNonQuery(SqlClientUtility.connectionStringName, CommandType.StoredProcedure, "ComprobanteDetalleUpdate", parameters); }
/// <summary> /// Selects a single record from the ComprobanteDetalle table. /// </summary> public ComprobanteDetalleEntidad Select(int idComprobanteDetalle, int nroComprobante, int idSucursal, int idTipoComprobante, int cUIT) { SqlParameter[] parameters = new SqlParameter[] { new SqlParameter("@IdComprobanteDetalle", idComprobanteDetalle), new SqlParameter("@NroComprobante", nroComprobante), new SqlParameter("@IdSucursal", idSucursal), new SqlParameter("@IdTipoComprobante", idTipoComprobante), new SqlParameter("@CUIT", cUIT) }; using (DataTable dt = SqlClientUtility.ExecuteDataTable(SqlClientUtility.connectionStringName, CommandType.StoredProcedure, "ComprobanteDetalleSelect", parameters)) { ComprobanteDetalleEntidad ComprobanteDetalleEntidad = new ComprobanteDetalleEntidad(); ComprobanteDetalleEntidad = Mapeador.MapearFirst <ComprobanteDetalleEntidad>(dt); return(ComprobanteDetalleEntidad); } }
public static bool GenerarNotaDebWebMethod(string MontoNotaDebito, string NroFactAsocND) { ComprobanteCore ComprobanteBLL = new ComprobanteCore(); ComprobanteEntidad ComprobanteRow = new ComprobanteEntidad(); try { string ultimos8delcode = NroFactAsocND.Substring(NroFactAsocND.Length - 8); string nrocomprobantesincerosalaizquierda = ultimos8delcode.TrimStart('0'); //var comprobantes = ComprobanteBLL.ComprobanteSelectAllListadosByCUIT_NroComprobante(Convert.ToInt32(nrocomprobantesincerosalaizquierda)); ComprobanteRow = ComprobanteBLL.ComprobanteSelectAllByCUIT_NroComprobante(Convert.ToInt32(nrocomprobantesincerosalaizquierda)); List <ComprobanteDetalleEntidad> ListadeDetalles = new List <ComprobanteDetalleEntidad>(); ListadeDetalles = ComprobanteBLL.DetallesSelectByComprobante(ComprobanteRow.NroComprobante, ComprobanteRow.miSucursal.IdSucursal, ComprobanteRow.miTipoComprobante.IdTipoComprobante); decimal montoAux = 0; if (!string.IsNullOrWhiteSpace(MontoNotaDebito)) { montoAux = Decimal.Parse(MontoNotaDebito); } if (ListadeDetalles.Sum(X => X.PrecioUnitarioFact) < Decimal.Parse(MontoNotaDebito) | montoAux < 1) { return(false); } ComprobanteEntidad unaNotaDebito = new ComprobanteEntidad(); unaNotaDebito = ComprobanteRow; unaNotaDebito.FechaComprobante = DateTime.Now; unaNotaDebito.Detalles = new List <ComprobanteDetalleEntidad>(); switch (ComprobanteRow.miTipoComprobante.IdTipoComprobante) { case 1: unaNotaDebito.miTipoComprobante.IdTipoComprobante = 8; break; case 2: unaNotaDebito.miTipoComprobante.IdTipoComprobante = 9; break; case 3: unaNotaDebito.miTipoComprobante.IdTipoComprobante = 10; break; default: unaNotaDebito.miTipoComprobante.IdTipoComprobante = 8; break; } int ContadorDetalle = 0; foreach (var item in ListadeDetalles) { ComprobanteDetalleEntidad unDetalleComprobante = new ComprobanteDetalleEntidad(); ContadorDetalle = ContadorDetalle + 1; unDetalleComprobante.IdComprobanteDetalle = ContadorDetalle; unDetalleComprobante.NroComprobante = ComprobanteRow.NroComprobante; unDetalleComprobante.IdSucursal = ComprobanteRow.miSucursal.IdSucursal; unDetalleComprobante.IdTipoComprobante = unaNotaDebito.miTipoComprobante.IdTipoComprobante; unDetalleComprobante.CUIT = ConfigSection.Default.Site.Cuit; unDetalleComprobante.miProducto = new ProductoEntidad(); unDetalleComprobante.miProducto.IdProducto = item.miProducto.IdProducto; unDetalleComprobante.CantidadProducto = item.CantidadProducto; unDetalleComprobante.PrecioUnitarioFact = item.PrecioUnitarioFact; unaNotaDebito.Detalles.Add(unDetalleComprobante); //ComprobanteDetalleEntidad NCDetalle = detalle; //NCDetalle.IdTipoComprobante = NotaDeCredito.IdTipoComprobante; //ComprobanteBLL.DetalleCreate(NCDetalle); } unaNotaDebito.Ajuste = int.Parse(MontoNotaDebito); ComprobanteBLL.Create(unaNotaDebito); return(true); } catch (Exception) { return(false); } //System.Text.StringBuilder sb = new System.Text.StringBuilder(); //sb.Append(@"<script type='text/javascript'>"); //sb.Append("alert('Nota de credito generada');"); //sb.Append(@"</script>"); //ScriptManager.RegisterClientScriptBlock(this, this.GetType(), // "ModalScript3", sb.ToString(), false); }
//Si esta en Pendiente y pasa a Pago (llamada por estado==Pendiente) public void AvanzarPaso(PedidoEntidad elPedido, SucursalEntidad laSucursal, UsuarioEntidad elCliente, int elIdFormaPago) { PagoEntidad unPago = new PagoEntidad(); unPago.IdPedido = elPedido.IdPedido; unPago.miFormaPago = new FormaPagoEntidad(); unPago.miFormaPago.IdFormaPago = elIdFormaPago; unPago.MontoPago = (decimal)elPedido.misDetalles.Select(x => x.Cantidad * x.PrecioUnitario).Sum(); unPago.CUIT = elPedido.miUsuario.CUIT; unPago.FechaPago = DateTime.Now; RegistrarPago(unPago); ComprobanteEntidad unComprobante = new ComprobanteEntidad();// unComprobante.miTipoComprobante = new TipoComprobanteEntidad(); unComprobante.miSucursal = new SucursalEntidad(); unComprobante.Detalles = new List <ComprobanteDetalleEntidad>(); // ComprobanteCore unManagerComprobante = new ComprobanteCore(); // int ContadorDetalle = 0; // string NroCompSolo = ""; int NroComp; if (unManagerComprobante.FindAll().Count == 0) { NroCompSolo = "0"; } //Toma el nro de comprobante y lo desglosa para formar el nuevo nro de comprobante if (NroCompSolo != "0") { NroComp = unManagerComprobante.FindAll().LastOrDefault().NroComprobante; var NroCompString = NroComp.ToString(); NroCompSolo = NroCompString; //NroCompSolo = NroCompString.Remove(0, 2); } NroComp = int.Parse(NroCompSolo) + 1; // unComprobante.NroComprobante = int.Parse(logueado.IdCondicionFiscal.ToString() + sucursalId.ToString() + NroComp.ToString()); unComprobante.NroComprobante = NroComp; unComprobante.miSucursal.IdSucursal = laSucursal.IdSucursal; if (elCliente.IdCondicionFiscal == 1) { unComprobante.miTipoComprobante.IdTipoComprobante = 2;//Factura B } else if (elCliente.IdCondicionFiscal == 2) { unComprobante.miTipoComprobante.IdTipoComprobante = 1; //Factura A } unComprobante.FechaComprobante = DateTime.Now; unComprobante.IdPedido = elPedido.IdPedido; foreach (var item in elPedido.misDetalles) { ComprobanteDetalleEntidad unDetalleComprobante = new ComprobanteDetalleEntidad(); ContadorDetalle = ContadorDetalle + 1; unDetalleComprobante.IdComprobanteDetalle = ContadorDetalle; unDetalleComprobante.NroComprobante = unComprobante.NroComprobante; unDetalleComprobante.IdSucursal = unComprobante.miSucursal.IdSucursal; unDetalleComprobante.IdTipoComprobante = unComprobante.miTipoComprobante.IdTipoComprobante; unDetalleComprobante.CUIT = ConfigSection.Default.Site.Cuit; unDetalleComprobante.miProducto = new ProductoEntidad(); unDetalleComprobante.miProducto.IdProducto = item.miProducto.IdProducto; unDetalleComprobante.CantidadProducto = item.Cantidad; unDetalleComprobante.PrecioUnitarioFact = item.PrecioUnitario; unComprobante.Detalles.Add(unDetalleComprobante); } //Cambiar Estado del Pedido en memoria a Pago elPedido.Avanzar(false, elPedido.miFormaEntrega.IdFormaEntrega); PedidoSetearEstadoDescripEnMemoria(elPedido); //Generar factura unManagerComprobante.Create(unComprobante); //Insertar nuevo estado en BD _pedidoEstadoPedidoDal.Insert(new PedidoEstadoPedidoEntidad() { Fecha = DateTime.Now, IdEstadoPedido = elPedido.VerEstadoActual().IdEstadoPedido, IdPedido = elPedido.IdPedido }); }
public void DetalleCreate(ComprobanteDetalleEntidad e) { _dalDetalleComprobante.Insert(e); }