public void RegistrarPar(int numero, Calidad calidad, Empleado empleado, TimeSpan?hora = null) { if (numero > 0) { Par par = new Par(DateTime.Now, calidad, empleado, hora); Pares.Add(par); } if (numero < 0) { if (Pares.Count() > 0) { var par = Pares.ToList().LastOrDefault(p => p.Calidad.Equals(calidad)); Pares.Remove(par); } } }
public bool RegistrarPar(int numero, Calidad calidad, Empleado empleado, TimeSpan?hora = null) { Horario horarioActual = Horarios.LastOrDefault(); if (horarioActual.Turno.SoyTurnoActual()) { horarioActual.RegistrarPar(numero, calidad, empleado, hora); return(true); } else { if ((int)horarioActual.Turno.HeFilalizadoHace().TotalMinutes < 10) { horarioActual.RegistrarPar(numero, calidad, empleado, hora); return(true); } return(false); } }
public async Task <MemoryStream> GetAlbumCover(int idAlbum, Calidad calidad) { var channel = new Channel(Configuration.URIGrpcServer, ChannelCredentials.Insecure); var client = new Portadas.PortadasClient(channel); var request = CreateSolicitudObtenerPortada(idAlbum, ApiServiceLogin.GetServiceLogin().GetAccessToken(), calidad); var call = client.ObtenerPortadaAlbum(request); MemoryStream cover = null; for (var i = 1; i <= TryNumbres; i++) { try { cover = await GetCover(call); break; } catch (RpcException ex) { throw new RpcException(ex.Status, ex.Message); } }
public Par(DateTime now, Calidad calidad, Empleado empleado, TimeSpan?hora = null) { if (hora == null) { Hora = now; } else { Hora = now; if ((Hora.Date + hora) > now) { Hora = ((DateTime)(Hora.Date + hora)).AddDays(-1); } else { Hora = (DateTime)(Hora.Date + hora); } } Empleado = empleado; Calidad = calidad; }
/// <summary> /// Recupera la portada del album de la cancion que se va a reproducir y se lo coloca /// </summary> /// <param name="album">El album a colocar la imagen</param> /// <param name="calidad">La calidad de la iamgen a recuperar</param> /// <returns>Task</returns> private async Task ColocarImagenAlbum(Album album, Calidad calidad) { var clientePortadas = new CoversClient(); try { MostrarElementosSinConexion(); var bitmap = await clientePortadas.GetAlbumCover(album.id, calidad); if (bitmap != null) { album.PortadaImagen = ImagenUtil.CrearBitmapDeMemory(bitmap); } else { album.PortadaImagen = (BitmapImage)FindResource("AlbumDesconocido"); } } catch (Exception) { album.PortadaImagen = (BitmapImage)FindResource("AlbumDesconocido"); OcultarElementosSinConexion(); } }
private SolicitudObtenerPortada CreateSolicitudObtenerPortada(int idElement, string token, Calidad calidad) { var request = new SolicitudObtenerPortada(); request.IdElementoDePortada = idElement; request.CalidadPortadaARecuperar = calidad; request.TokenAutenticacion = token; return(request); }
protected Prenda(double precio, int cantidad, Calidad calidad) { Precio = precio; Cantidad = cantidad; Calidad = calidad; }
/// <summary> /// Solicita al servidor la cancion con el id cancion en la calidad indicada /// </summary> /// <param name="idGetSong">El id de la cancion a solicitar al servidor</param> /// <param name="calidad">La calidad de la cancion a solicitar</param> /// <param name="isPersonalGetSong">Indica si la cancion es personal o normal</param> public async void GetSong(int idGetSong, Calidad calidad, bool isPersonalGetSong) { _getSong = true; var channel = new Channel(Configuration.URIGrpcServer, ChannelCredentials.Insecure); var client = new Canciones.CancionesClient(channel); var request = new SolicitudObtenerCancion(); var memoryStream = new MemoryStream(); var position = 0; FormatoAudio formatAudio; var error = Error.Ninguno; for (var i = 1; i <= CounTrys; i++) { try { request.IdCancion = idGetSong; request.CalidadCancionARecuperar = calidad; request.TokenAutenticacion = ApiServiceLogin.GetServiceLogin().GetAccessToken(); var call = isPersonalGetSong ? client.ObtenerCancionPersonal(request) : client.ObtenerCancion(request); using (call) { while (await call.ResponseStream.MoveNext() && _getSong) { var response = call.ResponseStream.Current; memoryStream.Write(response.Data.ToByteArray(), 0, response.Data.Length); position += response.Data.Length; formatAudio = response.FormatoCancion; error = response.Error; if (position == ChunkSize) { OnInitialRecivedSong?.Invoke(response.Data.ToByteArray(), ConvertFormatAudioToExtension(formatAudio)); } else if (position > ChunkSize) { OnSongChunkRived?.Invoke(response.Data.ToByteArray()); } if (!_getSong) { memoryStream.Dispose(); } } } } catch (RpcException) { OnErrorRaised?.Invoke("No se pudo recuperar la canción, porfavor verifique su conexion a internet"); break; } if (error != Error.Ninguno) { if (error == Error.TokenFaltante || error == Error.TokenInvalido) { await ApiServiceLogin.GetServiceLogin().ReLogin(); } else { OnErrorRaised?.Invoke(ManageGetSongError(error)); break; } } else { OnTerminatedRecivedSong?.Invoke(); memoryStream.Dispose(); break; } } if (error == Error.TokenFaltante || error == Error.TokenInvalido) { OnErrorRaised?.Invoke("AuntenticacionFallida"); } }
public Camisa(double precio, int cantidad, Calidad calidad, bool isMangaC, bool isCuelloMao) : base(precio, cantidad, calidad) { this.IsCuelloMao = isCuelloMao; this.IsMangaCorta = isMangaC; }
private void btnCotizar(object sender, EventArgs e) { Calidad calidad = Calidad.STANDAR; Pantalon pantalon = null; Camisa camisa = null; bool ischupin = checkChupin.Checked; bool isMangaC = checkMangaC.Checked; bool iscuelloMao = checkCuello.Checked; //validaciones bool validarPrecio = Utiles.ValidarCampo(txtPrecio.Text, "double"); bool validarCantidad = Utiles.ValidarCampo(txtCantidad.Text, "int"); if (!validarCantidad) { txtCantidad.BackColor = Color.Red; } else { txtCantidad.BackColor = Color.White; } if (!validarPrecio) { txtPrecio.BackColor = Color.Red; } else { txtPrecio.BackColor = Color.White; } if (!validarPrecio || !validarCantidad) { MessageBox.Show("Los datos ingresados no son válidos"); } else if (!radioCamisa.Checked && !radioPantalon.Checked) { MessageBox.Show("Seleccione algun tipo de prenda"); } else { //obtener precio double precio = Convert.ToDouble(txtPrecio.Text); int cantidad = Convert.ToInt32(txtCantidad.Text); double total = precio * cantidad; //verificaciones if (radioCamisa.Checked) { if (checkMangaC.Checked) { precio -= precio * 0.1; total -= total * 0.1; } if (checkCuello.Checked) { precio += precio * 0.03; total += total * 0.03; } } else if (checkChupin.Checked) { precio -= precio * 0.12; total -= total * 0.12; } if (radioPremium.Checked) { precio += precio * 0.3; total += total * 0.3; calidad = Calidad.PREMIUM; } if (cantidad > Convert.ToInt32(txtCantidad.Text)) { MessageBox.Show("La cantidad no puede superar el stock"); } else { lblTotal.Text = total.ToString(); } Cotizacion cotizacion = new Cotizacion(); cotizacion.Fecha = DateTime.Now; cotizacion.Numero = nroCotizacion++; cotizacion.Resultado = total; cotizacion.CodigoVendedor = tienda.Vendedor != null ? tienda.Vendedor.Codigo : ""; if (radioCamisa.Checked) { camisa = new Camisa(precio, cantidad, calidad, isMangaC, iscuelloMao); cotizacion.Prenda = camisa; } else if (radioPantalon.Checked) { pantalon = new Pantalon(precio, cantidad, calidad, ischupin); cotizacion.Prenda = pantalon; } cotizaciones.Add(cotizacion); } }
public Pantalon(double precio, int cantidad, Calidad calidad, bool isChupin) : base(precio, cantidad, calidad) { this.IsChupin = isChupin; }