private void CalcularTiempoInsercion(Pieza p) { int fila = -1; int columna = -1; #region Numero de la izquierda (fila) if (rbSeparado.Checked) fila = 9; else fila = (chAseguradaInmediato.Checked ? 3 : 0) + (chDestinoNoAlcanzado.Checked ? (rbObstruidoOr.Checked ? 1 : 2): 0); #endregion #region Numero de la derecha (columna) if (rbAgregada.Checked) { //Sacando numero columna si es de la primera seccion if (!chAseguradaInmediato.Checked) { columna = (chPresion.Checked ? 6 : 0); columna += (!chDificilAlinear.Checked ? 0 : 2); columna += (chResistencia.Checked ? 1 : 0); } //Sacando numero de columna en caso de ser la segunda seccion else { if (chDeformacionPlastica.Checked) { columna = rbRemache.Checked ? 5 : 2; columna += !chDificilAlinear.Checked ? 0 : (chResistencia.Checked ? 2 : 1); } else { columna = chTornillo.Checked ? 8 : 0; columna += !chDificilAlinear.Checked ? 0 : 1; } } } //Caso ultima seccion else { if(rbProcesoSinAmarre.Checked) { columna = rbSubEnsamble.Checked ? 8 : 9; } else if (rbProcesoMecanico.Checked) { if (chDeformacionPlastica2.Checked) columna = 3; else columna = panelProceso1.Controls.OfType<RadioButton>().Single(rb => rb.Checked).TabIndex; } else { if(chProcesoMetalurgico.Checked) columna = chMaterialAdicional.Checked ? (rbSoldadura1.Checked ? 5 : 6) : 4; else columna = 7; } } #endregion p.InsertionCode = fila.ToString() + columna.ToString(); p.InsertionTime = TablaPiezaData.InsertionTime(fila, columna); }
private void CalcularTiempoManejo(Pieza p) { int columna = -1; int fila = -1; #region Analizando Numero de la izquierda (fila) switch(this.tabPage1.Controls.OfType<RadioButton>().Single(rb => rb.Checked).TabIndex) { case 1: int? theta = p.Alfa + p.Beta; if (theta < 360) fila = 0; else if (theta < 540) fila = 1; else if (theta < 720) fila = 2; else fila = 3; break; case 2: if(p.Alfa == 360) { if (p.Beta <= 180) fila = 6; else fila = 7; } else { if (p.Beta <= 180) fila = 4; else fila = 5; } break; case 3: fila = 8; break; case 4: fila = 9; break; } #endregion #region Analizando Numero de la derecha (Columna) switch (this.tabPage1.Controls.OfType<RadioButton>().Single(rb => rb.Checked).TabIndex) { case 1: if (rbFacil.Checked) { if (p.Ancho > 2) { columna = p.Largo > 15 ? 0 : p.Largo > 6 ? 1 : 2; } else { columna = p.Largo > 6 ? 3 : 4; } } else { if (p.Ancho > 2) { columna = p.Largo > 15 ? 5 : p.Largo > 6 ? 6 : 7; } else { columna = p.Largo > 6 ? 8 : 9; } } break; case 2: if (this.panelSeccion2Sub.Enabled) { columna = this.panelSeccion2Sub.Controls. OfType<RadioButton>().Single(rb => rb.Checked).TabIndex; break; } else { if (!checkBox1.Checked) { if (rbFacil.Checked) columna = p.Ancho > 0.25 ? 0 : 1; else columna = p.Ancho > 0.25 ? 2 : 3; } else { if (rbFacil.Checked) columna = p.Ancho > 0.25 ? 4 : 5; else columna = p.Ancho > 0.25 ? 6 : 7; } } break; case 3: if(rbFacil.Checked) { if (p.Alfa <= 180) { columna = p.Largo > 15 ? 0 : p.Largo > 6 ? 1 : 2; } else { columna = p.Largo > 6 ? 3 : 4; } } else { if (p.Alfa <= 180) { columna = p.Largo > 15 ? 5 : p.Largo > 6 ? 6: 7; } else { columna = p.Largo > 6 ? 8 : 9; } } break; case 4: if (!checkBox3.Checked) columna = 9; else { if (!checkBox4.Checked) { columna = 8; break; } else { if (rbLigero.Checked) { if (rbFacil.Checked) columna = p.Alfa <= 180 ? 0 : 1; else columna = p.Alfa <= 180 ? 2 : 3; } else { if (rbFacil.Checked) columna = p.Alfa <= 180 ? 4 : 5; else columna = p.Alfa <= 180 ? 6 : 7; } } } break; } #endregion p.HandlingCode = fila.ToString() + columna.ToString(); p.HandlingTime = TablaPiezaData.HandlingTime(fila, columna); }