public EVentasEspecial GetAllVentaEspecial(EClientes clientes) { var repositorio = new RVentaEspecial(); var ventas = new EVentasEspecial(); var registros = repositorio.GetAllVentaEspecial(); EVentaEspecial anterior = null; foreach (DataRow registro in registros.Rows) { var venta = VentaEspecialUtil.InstanciarDesde(registro, clientes); if (anterior != null) { if (!String.Equals(anterior.Id, venta.Id, StringComparison.Ordinal)) { ventas.ListaVentas.Add(anterior); } else { foreach (ECliente c in anterior.Clientes.ListClientes) { venta.Clientes.ListClientes.Add(c); } } } anterior = venta; } ventas.ListaVentas.Add(anterior); return(ventas); }
public CmdAgregarVentaEspecialSinMedioPago(ISolicitud solicitud) : base(solicitud) { if (!Entorno.Instancia.Venta.EstaAbierta) { Solicitud = solicitud as Solicitudes.SolicitudAgregarVentaEspecial; idventa = Solicitud.ValorEntrada; EVentaEspecial ventaEspecial = Entorno.Instancia.TipoVentaEspecial.Venta(idventa); Entorno.Instancia.VentaEspecialSinMedioPago = new EFacturaVentaEspecialSinMedioPago(ventaEspecial); Entorno.Instancia.VentaEspecialSinMedioPago.EstaAbierta = false; } else { log.Debug("[CmdAgregarVentaEspecialSinMedioPago] Ya hay una venta en curso."); } }
public static EVentaEspecial InstanciarDesde(DataRow registro, EClientes clientes) { //log.Info("[InstanciarDesde] Parametros "+registro.Field<string>("id_cliente")); Respuesta respuesta = new Respuesta(); if (registro == null) { respuesta.Valida = false; respuesta.Mensaje = "Registro nulo o contiene campos nulos."; return(null); //throw new ApplicationException("Registro nulo o contiene campos nulos."); } EVentaEspecial a; if (Convert.ToBoolean((byte)registro["registra_cliente"])) { EClientesVentaEspecial clientesVenta; if (Convert.ToBoolean((byte)registro["especifica_clientes"])) { string clientid = ((string)registro["id_cliente"]).Trim(); var c = clientes.Cliente(clientid, out respuesta); clientesVenta = new EClientesVentaEspecial( Convert.ToBoolean((byte)registro["diligencia_tipo_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_primer_nombre"]), Convert.ToBoolean((byte)registro["diligencia_segundo_nombre"]), Convert.ToBoolean((byte)registro["diligencia_primer_apellido"]), Convert.ToBoolean((byte)registro["diligencia_segundo_apellido"]), Convert.ToBoolean((byte)registro["diligencia_tipo_cliente"]), Convert.ToBoolean((byte)registro["diligencia_ciudad"]), Convert.ToBoolean((byte)registro["diligencia_pais"]), Convert.ToBoolean((byte)registro["diligencia_celular"]), Convert.ToBoolean((byte)registro["diligencia_telefono"]), Convert.ToBoolean((byte)registro["diligencia_correo"]), Convert.ToBoolean((byte)registro["diligencia_direccion"]) ); } else { clientesVenta = new EClientesVentaEspecial( Convert.ToBoolean((byte)registro["diligencia_tipo_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_identificacion"]), Convert.ToBoolean((byte)registro["diligencia_primer_nombre"]), Convert.ToBoolean((byte)registro["diligencia_segundo_nombre"]), Convert.ToBoolean((byte)registro["diligencia_primer_apellido"]), Convert.ToBoolean((byte)registro["diligencia_segundo_apellido"]), Convert.ToBoolean((byte)registro["diligencia_tipo_cliente"]), Convert.ToBoolean((byte)registro["diligencia_ciudad"]), Convert.ToBoolean((byte)registro["diligencia_pais"]), Convert.ToBoolean((byte)registro["diligencia_celular"]), Convert.ToBoolean((byte)registro["diligencia_telefono"]), Convert.ToBoolean((byte)registro["diligencia_correo"]), Convert.ToBoolean((byte)registro["diligencia_direccion"]) ); } a = new EVentaEspecial( (string)registro["id_tipo_venta"], (string)registro["descripcion"], Convert.ToBoolean((byte)registro["impto1"]), Convert.ToBoolean((byte)registro["impto2"]), Convert.ToBoolean((byte)registro["impto3"]), Convert.ToBoolean((byte)registro["impto4"]), (string)registro["mensaje"], Convert.ToBoolean((byte)registro["registra_pago"]), Convert.ToBoolean((byte)registro["registra_cliente"]), clientesVenta ); } else { a = new EVentaEspecial( (string)registro["id_tipo_venta"], (string)registro["descripcion"], Convert.ToBoolean((byte)registro["impto1"]), Convert.ToBoolean((byte)registro["impto2"]), Convert.ToBoolean((byte)registro["impto3"]), Convert.ToBoolean((byte)registro["impto4"]), (string)registro["mensaje"], Convert.ToBoolean((byte)registro["registra_pago"]), Convert.ToBoolean((byte)registro["registra_cliente"]) ); } return(a); }