public ResultadoTrama Fidelizado(string[] data) { try { List<string> mensajeTrama = new List<string>(); string _FechaActual = DateTime.Now.ToString("yyyy-MM-dd H:mm:ss"); string cara = data[1]; string serial = data[2]; string NomApeUsuario = ""; DataTable dtFidelizado; using (ModeloPOS modPOS = new ModeloPOS()) { dtFidelizado = modPOS.ObtenerFidelizadoPorSerial(serial); } if (dtFidelizado.Rows.Count == 0) return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "No se encontro fidelizado", "con codigo: " + serial }), "No se encontro fidelizado con serial " + serial); if (object.Equals(dtFidelizado.Rows[0]["nomPlan"], DBNull.Value) == true) { return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Usuario no tiene", "parametrizado puntos" }), "Usuario No Tiene Parametrizado Puntos"); } DataTable dtUsuario; int idXbee = 0; using (Generales modGenerales = new Generales()) { dtUsuario = modGenerales.ObtenerUsuario(dtFidelizado.Rows[0]["propietario"].ToString()); if (dtUsuario.Rows.Count == 0) return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Usuario no existe o incorrecto" }), "Usuario no existe o incorrecto"); NomApeUsuario = dtUsuario.Rows[0]["nomUsuario"].ToString().Trim() + " " + dtUsuario.Rows[0]["apeUsuario"].ToString().Trim(); using (ModeloPOS modPOS = new ModeloPOS()) { DataTable dtPosicion = modPOS.ObtenerPosicionesPorCara(cara); idXbee = (int)dtPosicion.Rows[0]["idXbee"]; if (dtPosicion.Rows.Count == 0) return new ResultadoTrama(false, null, "No se pudo obtener la posición."); var DatosTurno = modPOS.ObtenerTurnoPorPosicionyEstado(dtPosicion.Rows[0]["idPosicion"].ToString()); if (DatosTurno.Rows.Count == 0) return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "No hay turno en la cara " + cara }), "No hay turno en la cara " + cara); ResultadoTrama _resultado = new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Venta al usuario:", NomApeUsuario }), "Venta fidelizado al usuario: " + NomApeUsuario, idXbee, true); return _resultado; } } } catch (Exception e) { LocalLogManager.EscribeLog(e.Message, LocalLogManager.TipoImagen.TipoError); return new ResultadoTrama(false, null, e.Message); } }
public ResultadoTrama CerrarTurno(string[] data) { Generales modGenerales = new Generales(); try { List<string> mensajeTrama = new List<string>(); string _FechaActual = DateTime.Now.ToString("yyyy-MM-dd H:mm:ss"); string identificacion = data[1]; string cara = data[2]; int idXbee = 0; using (ModeloPOS modPOS = new ModeloPOS()) { DataTable dtPosicion = modPOS.ObtieneInformacionCara(cara); if (dtPosicion.Rows.Count == 0) return new ResultadoTrama(false, null, "La cara " + cara + "no existe!"); DataTable dtUsuario = modGenerales.ObtenerUsuario(identificacion); if (dtUsuario.Rows.Count == 0) return new ResultadoTrama(false, null, "El usuario con código " + identificacion + " no existe!"); DataTable dtTurno = modPOS.ObtenerTurnoPorCara(cara); if (dtTurno.Rows.Count == 0) return new ResultadoTrama(false, null, "No hay turno en la cara " + cara); if (dtTurno.Rows[0]["idUsuario"].ToString().Trim() != identificacion) return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "El usuario " + identificacion, "no tiene turno abierto"}), "El usuario " + identificacion + " no tiene turno abierto"); string idTurno = dtTurno.Rows[0][0].ToString(); string idPosicion = dtPosicion.Rows[0][0].ToString(); idXbee = Convert.ToInt32(dtPosicion.Rows[0]["idXbee"]); var resCierre = modPOS.GuardaCerrarTurno(idTurno,idPosicion,cara,_FechaActual); if (resCierre == false) return new ResultadoTrama(false, null, "No se pudo guardar el cierre de turno" + cara); VentasPorTurno datosVenta = modPOS.ObtenerDatosVentaPorIdTurno(idTurno); if (object.Equals(datosVenta,null)) return new ResultadoTrama(false, null, "No se pudo obtener información de las ventas del turno!"); return new ResultadoTrama(true, UtilidadesTramas.ConvertirListadoStringaByte(ArmarMensajeVentasTurno(datosVenta)), "",idXbee); } } catch (Exception e) { LocalLogManager.EscribeLog(e.Message, LocalLogManager.TipoImagen.TipoError); return new ResultadoTrama(false, null, e.Message); } finally { modGenerales.Dispose(); } }
/// <summary> /// Resuelve la peticion de consignacion en efectivo, H:1075227951:1075227951 /// </summary> /// <param name="data">recivo un array de strings con la informacion de la trama recibida /// donde 0 es el tipo de petición, 1 es la identificación del usuario, y 2 es el dinero que consigna</param> /// <returns></returns> public ResultadoTrama ConsignacionEfectivo(string[] data) { try { List<string> mensajeTrama = new List<string>(); string Identificacion = data[1]; int Dinero = Convert.ToInt32(data[2]); string NomApeUsuario = ""; bool encontroUsuario = false; DataTable dtUsuario = null; using (Generales modGenerales = new Generales()) { //Buscar el usuario y validar que sea islero. dtUsuario = modGenerales.ObtenerUsuario(Identificacion); if (dtUsuario != null && dtUsuario.Rows.Count > 0) { if (dtUsuario.Rows[0]["tipoPerfil"].ToString().Trim() == "3") { encontroUsuario = true; } } } if (encontroUsuario == true) { using (ModeloPOS modPOS = new ModeloPOS()) { if (modPOS.GuardaConsignacion(Identificacion,Dinero.ToString()) == true) //mando a guardar la consignación en la base de datos { NomApeUsuario = dtUsuario.Rows[0]["nomUsuario"].ToString().Trim() + " " + dtUsuario.Rows[0]["apeUsuario"].ToString().Trim(); //Devuelvo trama exitosa mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama("CONSIGNACION", Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.ambos, '-')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama(NomApeUsuario, Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.izquierda, ' ')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama(DateTime.Now.ToString("yyyy-MM-dd H:mm:ss"), Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.izquierda, ' ')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama("$" + Dinero.ToString(""), Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.izquierda, ' ')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama("-", Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.ambos, '-')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama(" ", Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.ambos, ' ')); mensajeTrama.Add(UtilidadesTramas.CentrarConcatenarMensajeTrama(" ", Enumeraciones.TipodeMensaje.ConAlerta, Enumeraciones.Direccion.ambos, ' ')); } else { return new ResultadoTrama(false, null,"No se pudo guardar la consignación en la base de datos"); } } } else { //Devuelvo trama que el usuario no es islero return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Usuario no existe o incorrecto"}), "Usuario no existe o incorrecto para consignación en efectivo"); } return new ResultadoTrama(true, UtilidadesTramas.ConvertirListadoStringaByte(mensajeTrama),""); } catch (Exception e) { LocalLogManager.EscribeLog(e.Message, LocalLogManager.TipoImagen.TipoError); return new ResultadoTrama(false, null,e.Message); } }
public ResultadoTrama AbrirTurno(string[] data) { try { List<string> mensajeTrama = new List<string>(); string _FechaActual = DateTime.Now.ToString("yyyy-MM-dd H:mm:ss"); string Identificacion = data[1]; string cara = data[2]; string NomApeUsuario = ""; bool encontroUsuario = false; DataTable dtUsuario; int idXbee = 0; using (Generales modGenerales = new Generales()) { //Buscar el usuario y validar que sea islero. dtUsuario = modGenerales.ObtenerUsuario(Identificacion); if (dtUsuario != null && dtUsuario.Rows.Count > 0) { if (dtUsuario.Rows[0]["tipoPerfil"].ToString().Trim() == "3") { encontroUsuario = true; } } if (encontroUsuario == true) { NomApeUsuario = dtUsuario.Rows[0]["nomUsuario"].ToString().Trim() + " " + dtUsuario.Rows[0]["apeUsuario"].ToString().Trim(); using (ModeloPOS modPOS = new ModeloPOS()) { DataTable dtPosicion = modPOS.ObtenerPosicionesPorCara(cara); idXbee = (int)dtPosicion.Rows[0]["idXbee"]; if (dtPosicion != null && dtPosicion.Rows.Count > 0) { //Valido si ya hay turno abierto en la cara var DatosTurno = modPOS.ObtenerTurnoPorPosicionyEstado(dtPosicion.Rows[0]["idPosicion"].ToString()); if (DatosTurno == null) { return new ResultadoTrama(false, null, "Error Sql al momento de obbtener los datos del turno"); } if (DatosTurno.Rows.Count == 0) { DataTable dtVentas = modPOS.ObtenerTotalesVentaPorCara(cara); if (dtVentas != null && dtVentas.Rows.Count > 0) { var resultGuardar = modPOS.GuardarAperturaTurno(Identificacion, dtPosicion.Rows[0]["idPosicion"].ToString(), _FechaActual, (int)(dtVentas.Rows[0][0])); if (resultGuardar >0) { mensajeTrama = ArmarMensajeAperturaTurno(resultGuardar.ToString()); } else { return new ResultadoTrama(false, null, "No se pudo guardar la apertura del turno"); } } else { return new ResultadoTrama(false, null, "No se encontraron totales de ventas para la cara " + cara + "."); } } else { return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Ya se abrio turno","en la cara: " + cara}), "Usuario no existe o incorrecto para consignación en efectivo"); } } else { return new ResultadoTrama(false, null, "No se pudo obtener la posición."); } } } else { //Devuelvo trama que el usuario no es islero return new ResultadoTrama(true, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "Usuario no existe o incorrecto" }), "Usuario no existe o incorrecto para apertura de turno"); } } return new ResultadoTrama(true, UtilidadesTramas.ConvertirListadoStringaByte(mensajeTrama), "",idXbee); } catch (Exception e) { LocalLogManager.EscribeLog(e.Message, LocalLogManager.TipoImagen.TipoError); return new ResultadoTrama(false, null, e.Message); } }