/// <summary> /// Inicializa las variables de la clase /// </summary> private void inicializar() { pzaNueva = new pieza(); avServ = new AveriaServicio(tEnt); pzaServ = new PiezaServicio(tEnt); criteriosPieza = new List <Predicate <pieza> >(); predicadoFiltro = new Predicate <object>(filtroCombinado); }
// Use this for initialization void Start() { tam = PuzzleManager.Instance.dameTam(); matriz = new pieza[tam, tam]; matrizSolucion = new pieza[tam, tam]; hueco = new pieza(tam * tam - 1, tam - 1, tam - 1); matrizInicial(); // Debug.Log(tam); }
//C# al igualar matrices te apunta al mismo sitio de memoria, así que hay que copiarla a lo bestia void copiaMatriz(pieza[,] original, out pieza[,] copia, int tam) { copia = new pieza[tam, tam]; for (int i = 0; i < tam; i++) { for (int j = 0; j < tam; j++) { copia[i, j] = original[i, j]; } } }
/// <summary> /// Inicializa las variables de la clase /// </summary> private void inicializar() { tarjeta = new Tarjeta("", "", ""); paypal = new Paypal("", ""); avSel = new averia(); pzaSel = new pieza(); empSel = new empleado(); clntSel = new cliente(); fechaFactura = DateTime.Now; clientServ = new ClienteServicio(tEnt); avServ = new AveriaServicio(tEnt); empServ = new EmpleadoServicio(tEnt); pzaServ = new PiezaServicio(tEnt); }
/// <summary> /// Gestiona el filtro combinado del control de usuario busqueda pieza /// </summary> /// <param name="item"></param> /// <returns>Devuelve false, si criteriosPieza es igual a cualquier numero que no sea 0, /// si se cumple los criterios, devuelve true</returns> private bool filtroCombinado(object item) { bool esta = false; if (item != null) { pieza p = (pieza)item; if (criteriosPieza.Count != 0) { if (criteriosPieza.TrueForAll(x => x(p))) { esta = true; } } } return(esta); }
//Este cambio es para una matriz en general bool cambio(pos x, ref pieza[,] matriz, ref pieza Hueco) { int valor; bool cambiado = false; if (dameCasilla(x, matriz, Hueco, out valor)) { switch (x) { case pos.arriba: Hueco.SetIJ(Hueco.i - 1, Hueco.j); matriz[Hueco.i, Hueco.j].valor = Hueco.valor; matriz[Hueco.i + 1, Hueco.j].valor = valor; break; case pos.abajo: Hueco.SetIJ(Hueco.i + 1, Hueco.j); matriz[Hueco.i, Hueco.j].valor = Hueco.valor; matriz[Hueco.i - 1, Hueco.j].valor = valor; break; case pos.izquierda: Hueco.SetIJ(Hueco.i, Hueco.j - 1); matriz[Hueco.i, Hueco.j].valor = Hueco.valor; matriz[Hueco.i, Hueco.j + 1].valor = valor; cambiado = true; break; case pos.derecha: Hueco.SetIJ(Hueco.i, Hueco.j + 1); matriz[Hueco.i, Hueco.j].valor = Hueco.valor; matriz[Hueco.i, Hueco.j - 1].valor = valor; break; } cambiado = true; } //Método que ilustra el cambio return(cambiado); }
/// <summary> /// Gestiona la notificacion por pieza, /// si la cantidad de la pieza es inferior a 5, /// se muestra si se ha agotado el stock y la cantidad restante /// si la cantidad es mayor que 5 y menor que 15, /// muestra una notificacion de advertencia, con la cantidad del stock restante /// </summary> /// <param name="pza"></param> private void gestionaNotificacionPieza(pieza pza) { if (pza.Cantidad <= 5) { string cantidad = pza.Cantidad + ""; if (pza.Cantidad == 0) { notifier.ShowError("Se a agotado el stock de: ''" + pza.Descripcion + "''"); } else { notifier.ShowError("Se esta agotando el stock de: ''" + pza.Descripcion + "'' la cantidad restante es: " + cantidad); } } else if (pza.Cantidad > 5 && pza.Cantidad <= 15) { notifier.ShowWarning("El volumen de stock de la pieza: ''" + pza.Descripcion + "'' es inferior a 15, vaya pensando en realizar un pedido nuevo"); } }
///Devuelve el valor de una casilla adyacente al hueco para una matriz en general bool dameCasilla(pos x, pieza[,] matriz, pieza Hueco, out int valor) { valor = 0; if (x == pos.arriba) { if (Hueco.i - 1 >= 0) { valor = matriz[Hueco.i - 1, Hueco.j].valor; return(true); } } else if (x == pos.abajo) { if (Hueco.i + 1 < tam) { valor = matriz[Hueco.i + 1, Hueco.j].valor; return(true); } } else if (x == pos.derecha) { if (Hueco.j + 1 < tam) { valor = matriz[Hueco.i, Hueco.j + 1].valor; return(true); } } else if (x == pos.izquierda) { if (Hueco.j - 1 >= 0) { valor = matriz[Hueco.i, Hueco.j - 1].valor; return(true); } } return(false); }
public Estado() { estado = new pieza[tam, tam]; estadoPrevio = new pieza[tam, tam]; hueco = new pieza(); }