/// <summary> /// Agrega o modifica un registro de la tabla: Localidades /// (Código Fijo) /// </summary> /// <param name="p_dbcAccess">Conexion a la base de datos</param> /// <param name="p_entLocalidad">Entidad con los datos a procesar</param> /// <param name="p_smResult">Estado final de la operacion</param> internal static void LocSave_f(DBConn p_dbcAccess, ref ELocalidad p_entLocalidad, StatMsg p_smResult) { // ********* // Agregar acá los procesos adicionales // ********* }
/// <summary> /// Agrega validacion de integridad a una entidad: Localidad /// (Código Fijo) /// </summary> /// <param name="p_dbcAccess">Conexion a la base de datos</param> /// <param name="p_entLocalidad">Entidad con los datos a validar</param> /// <param name="p_smResult">Estado final de la operacion</param> internal static void LocTInt_f(DBConn p_dbcAccess, ELocalidad p_entLocalidad, StatMsg p_smResult) { // ********* // Agregar acá las validaciones adicionales // ********* }
// TODO : este requiere manejo transaccional!. /// <summary> /// /// </summary> /// <param name="ajuste"></param> /// <param name="terminal"></param> /// <param name="usuario"></param> /// <param name="localidad"></param> /// <param name="numero"></param> /// <param name="tipo"></param> /// <param name="contenido"></param> /// <param name="modeloImpresora"></param> /// <param name="respuesta"></param> public void GuardarAjuste(EAjuste ajuste, ETerminal terminal, EUsuario usuario, ELocalidad localidad, ETipoAjuste tipo, string contenido, string modeloImpresora, out Respuesta respuesta) { respuesta = new Respuesta(false); //1. Creamos el encabezado de la venta. string idAjuste = Guid.NewGuid().ToString(); RAjuste rajuste = new RAjuste(); RVenta rventa = new RVenta(); try { using (TransactionScope scope = new TransactionScope()) { var reg = rajuste.GetNumeroAjuste(); // int numero = reg.Field<int>("nro_ajuste"); int numero = (int)reg["nro_ajuste"]; if (rajuste.CrearAjuste(idAjuste, tipo.CalcularCostoVenta, "00", localidad.Codigo, ajuste.Estado, localidad.Codigo, numero + 1, tipo.Signo, tipo.Id, tipo.Codigo, 0, ajuste.TotalVenta, usuario.IdUsuario, ajuste.TotalImpuesto()) == 1) { //2. Creamos cada detalle de la venta. string idAjusteDetalle = Guid.NewGuid().ToString(); var tirilla = ajuste.CopiaTirilla; foreach (EItemVenta detalle in tirilla) { respuesta.Valida = true; rajuste.CrearAjusteDetalle(idAjusteDetalle, idAjuste, detalle.Articulo.Id, detalle.Cantidad, "00", detalle.Articulo.CodigoImpresion, 0, numero + 1, detalle.Articulo.PrecioVenta1, detalle.Impuesto, detalle.Articulo.Impuesto1); idAjusteDetalle = Guid.NewGuid().ToString(); } rventa.CrearCopiaImpresion("00", terminal.Localidad.Codigo, terminal.Codigo, ((int)Enums.TipoTransaccion.Ajuste).ToString(), usuario.IdUsuario, contenido, terminal.Localidad.Codigo, modeloImpresora, 0, numero + 1, terminal.Prefijo, terminal.Codigo, ((int)Enums.TipoTransaccion.Ajuste).ToString(), usuario.IdUsuario); } else { throw new Exception("[GuardarAjuste]: Transaccion no pudo ser guardada."); } scope.Complete(); } } catch (SqlException e) { if (e.Number == -2 || e.Number == 121) { respuesta.Valida = false; respuesta.Mensaje = "Se perdió la conexión con el servidor."; log.Error("[GuardarAjuste]: No pudo ser guardada la transaccion: " + e.Message); } else { respuesta.Valida = false; respuesta.Mensaje = "Hubo un problema al momento de guardar la transaccion. Por favor contacte al administrador del sistema."; log.Error("[GuardarAjuste]: No pudo ser guardada la transaccion: " + e.Message); } Telemetria.Instancia.AgregaMetrica(new Excepcion(e)); } catch (Exception ex) { respuesta.Valida = false; respuesta.Mensaje = "[GuardarAjuste]: No pudo ser guardado el ajuste."; log.Error("[GuardarAjuste]: No pudo ser guardado el ajuste: " + ex.Message); Telemetria.Instancia.AgregaMetrica(new Excepcion(ex)); } }
public static List <Cliente> TraerClientes() { List <Cliente> lista = new List <Cliente>(); comando.CommandText = "SELECT * FROM Clientes"; ELocalidad localidad = ELocalidad.ZonaSur; try { if (conexion.State != ConnectionState.Open) { conexion.Open(); } reader = comando.ExecuteReader(); while (reader.Read()) { if (reader["localidad"].ToString().Equals("ZonaSur")) { localidad = ELocalidad.ZonaSur; } if (reader["localidad"].ToString().Equals("ZonaOeste")) { localidad = ELocalidad.ZonaOeste; } if (reader["localidad"].ToString().Equals("CABA")) { localidad = ELocalidad.CABA; } string sexo = reader["sexo"].ToString(); if (sexo.Contains("Hombre")) { lista.Add(new Cliente(reader["nombre"].ToString(), reader["apellido"].ToString(), Persona.ESexo.Hombre, reader["direccion"].ToString(), int.Parse(reader["idCliente"].ToString()), localidad)); } else if (sexo.Contains("Mujer")) { lista.Add(new Cliente(reader["nombre"].ToString(), reader["apellido"].ToString(), Persona.ESexo.Mujer, reader["direccion"].ToString(), int.Parse(reader["idCliente"].ToString()), localidad)); } else if (sexo.Contains("Binario")) { lista.Add(new Cliente(reader["nombre"].ToString(), reader["apellido"].ToString(), Persona.ESexo.Binario, reader["direccion"].ToString(), int.Parse(reader["idCliente"].ToString()), localidad)); } } return(lista); } catch (Exception e) { throw new Exception(e.Message, e.InnerException); } finally { conexion.Close(); } }
/// <summary> /// Agrega validacion de integridad a una entidad: Localidad /// (Código Fijo) /// </summary> /// <param name="p_dbcAccess">Conexion a la base de datos</param> /// <param name="p_entLocalidad">Entidad con los datos a validar</param> /// <param name="p_smResult">Estado final de la operacion</param> internal static void LocTInt_f(DBConn p_dbcAccess, ELocalidad p_entLocalidad, StatMsg p_smResult) { }
/// <summary> /// Agrega o modifica un registro de la tabla: Localidades /// (Código Fijo) /// </summary> /// <param name="p_dbcAccess">Conexion a la base de datos</param> /// <param name="p_entLocalidad">Entidad con los datos a procesar</param> /// <param name="p_smResult">Estado final de la operacion</param> internal static void LocSave_f(DBConn p_dbcAccess, ref ELocalidad p_entLocalidad, StatMsg p_smResult) { }
/// <summary> /// Constructor parametrizado de la clase Cliente. /// </summary> /// <param name="nombre"></param> /// <param name="apellido"></param> /// <param name="sexo"></param> /// <param name="direccion"></param> /// <param name="idCliente"></param> public Cliente(string nombre, string apellido, ESexo sexo, string direccion, int idCliente, ELocalidad localidad) : base(idCliente, nombre, apellido, sexo) { this.IdCliente = idCliente; this.Direccion = direccion; this.Localidad = localidad; }