/// <summary> /// Devuelve información de ventas de un turno por consecutivo /// </summary> /// <param name="data"></param> /// <returns></returns> public ResultadoTrama ConsecutivoCierre_AperturaTurno(string[] data) { try { List<string> mensajeTrama = new List<string>(); string _FechaActual = DateTime.Now.ToString("yyyy-MM-dd H:mm:ss"); string tipoTurno = data[1]; //1-> apertura, 2->Cierre string idTurno = data[2]; if (tipoTurno == "1") { return new ResultadoTrama(true, UtilidadesTramas.ConvertirListadoStringaByte(ArmarMensajeAperturaTurno(idTurno)), ""); } else { using (ModeloPOS modPOS = new ModeloPOS()) { VentasPorTurno datosVenta = modPOS.ObtenerDatosVentaPorIdTurno(idTurno); if (object.Equals(datosVenta, null)) return new ResultadoTrama(false, AsistenteMensajes.GenerarMensajeAlerta(new string[] { "No se obtuvo informacion", "de las ventas del turno " + idTurno }), "No se pudo obtener información de las ventas del turno!"); return new ResultadoTrama(true, UtilidadesTramas.ConvertirListadoStringaByte(ArmarMensajeVentasTurno(datosVenta)), ""); } } } 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(); } }