public bool entregarPapeletas(String ini, String fin, String fec, String cip, String com, String tal, String cusu, int cant) { int cont = 0; String codrlTal = ""; bool fl = InsertRelTalonario(ini, fin, fec, cip, com, tal, cusu, cant); if (fl) { Conexion.Open(); cmd = new SqlCommand("SELECT id_relTalonario FROM RelTalonario WHERE inicio='" + ini + "' AND fin='" + fin + "' ORDER BY id_RelTalonario DESC", Conexion.sqlConexion); reader = cmd.ExecuteReader(); if (reader.Read()) { codrlTal = "" + (reader.GetInt64(0)); } for (int i = 0; i < cant; i++) { BDPapeleta pap = new BDPapeleta(); String num = (int.Parse(ini) + i).ToString(); if (pap.asignarPapeleta(num, codrlTal)) { cont++; } } } Conexion.Close(); return((fl && cont == cant)?true: false); }
public bool ReasignarTalonario(int cant, String ini, String fin, String fec, String efe, String com, String cusu) { int cont = 0; bool fl = false; String codreltal = null; String codTal = null; String fecreltal = "", cipreltal = "", comreltal = "", ofireltal = ""; int inireltal = 0, finreltal = 0, cantreltal = 0, devreltal = 0, usureltal = 0; Conexion.Open(); cmd = new SqlCommand("SELECT id_relTalonario, inicio, fin, cantidad, devueltas, fecha_entrega, id_usuario, " + "cip, id_comisaria, numero_oficio FROM relTalonario WHERE inicio <= '" + ini + "' and fin >='" + ini + "' and inicio <= '" + fin + "' and fin >='" + fin + "'", Conexion.sqlConexion); reader = cmd.ExecuteReader(); if (reader.Read()) { codreltal = "" + (reader.GetInt64(0)); inireltal = Convert.ToInt32(reader.GetString(1)); finreltal = Convert.ToInt32(reader.GetString(2)); cantreltal = reader.GetInt32(3); devreltal = reader.GetInt32(4); DateTime fechaRel1 = reader.GetDateTime(5); fecreltal = fechaRel1.Year + "/" + fechaRel1.Month + "/" + fechaRel1.Day; usureltal = reader.GetInt32(6); cipreltal = reader.GetString(7); comreltal = reader.GetString(8); //ofireltal = reader.GetString(9); int iniAsigTal = Convert.ToInt32(ini); int finAsigTal = Convert.ToInt32(fin); codTal = obtenerId(ini, fin); DataTable dt = new DataTable(); if (iniAsigTal == inireltal && finAsigTal == finreltal) { Conexion.Open(); cmd = new SqlCommand("UPDATE RelTalonario SET ini='" + (inireltal + cant) + "', devueltas='" + 0 + "', faltantes='" + (cantreltal) + "', fecha_entrega='" + fec + "', id_usuario='" + cusu + "', cip='" + efe + "', id_comisaria='" + com + "' WHERE id_relTalonario='" + codreltal + "'", Conexion.sqlConexion); fl = (cmd.ExecuteNonQuery() > 0) ? true : false; } if (iniAsigTal == inireltal && finAsigTal < finreltal) { if (this.InsertRelTalonario(ini, fin, fec, efe, com, codTal, cusu, cant)) { Conexion.Open(); cmd = new SqlCommand("UPDATE RelTalonario SET inicio='" + (inireltal + cant) + "', cantidad='" + (cantreltal - cant) + "', devueltas='" + (devreltal - cant) + "' WHERE id_relTalonario='" + codreltal + "'", Conexion.sqlConexion); fl = (cmd.ExecuteNonQuery() > 0) ? true : false; } else { fl = false; } } if (inireltal < iniAsigTal && finAsigTal == finreltal) { if (this.InsertRelTalonario(ini, fin, fec, efe, com, codTal, cusu, cant)) { Conexion.Open(); cmd = new SqlCommand("UPDATE RelTalonario SET fin='" + (finreltal - cant) + "', cantidad='" + (cantreltal - cant) + "', devueltas='" + (devreltal - cant) + "' WHERE id_relTalonario='" + codreltal + "'", Conexion.sqlConexion); fl = (cmd.ExecuteNonQuery() > 0) ? true : false; } else { fl = false; } } if (inireltal < iniAsigTal && finAsigTal < finreltal) { if (this.InsertRelTalonario(ini, fin, fec, efe, com, codTal, cusu, cant)) { int finPaptal1 = (iniAsigTal - 1); int nroPaptal1 = iniAsigTal - inireltal; BDPapeleta pap = new BDPapeleta(); int devPaptal1 = pap.cantDevuelta(inireltal.ToString(), finPaptal1.ToString()); Conexion.Open(); cmd = new SqlCommand("UPDATE RelTalonario SET fin='" + finPaptal1 + "', cantidad='" + nroPaptal1 + "', devueltas='" + devPaptal1 + "', faltantes='" + (nroPaptal1 - devPaptal1) + "' WHERE id_relTalonario='" + codreltal + "'", Conexion.sqlConexion); if (cmd.ExecuteNonQuery() > 0) { int iniPapTal2 = (finAsigTal + 1); int nroPapTal2 = (finreltal - finAsigTal); int devPapTal2 = pap.cantDevuelta(iniPapTal2.ToString(), finreltal.ToString()); Conexion.Open(); cmd = new SqlCommand("INSERT INTO RelTalonario(inicio,fin,cantidad, devueltas, faltantes,fecha_entrega,id_usuario,id_talonario,cip,id_comisaria)" + " VALUES('" + iniPapTal2 + "','" + finreltal + "','" + nroPapTal2 + "','" + devPapTal2 + "','" + (nroPapTal2 - devPapTal2) + "','" + fecreltal + "','" + usureltal + "','" + codTal + "','" + cipreltal + "','" + comreltal + "')", Conexion.sqlConexion); fl = (cmd.ExecuteNonQuery() > 0) ? true : false; } else { fl = false; } } else { fl = false; } } if (fl) { String newCodAsigTal = ""; Conexion.Open(); cmd = new SqlCommand("SELECT id_relTalonario FROM relTalonario WHERE inicio='" + ini + "' AND fin='" + fin + "' ORDER BY id_relTalonario DESC", Conexion.sqlConexion); reader = cmd.ExecuteReader(); if (reader.Read()) { newCodAsigTal = "" + (reader.GetInt64(0)); } for (int i = 0; i < cant; i++) { BDPapeleta pap = new BDPapeleta(); String num = (int.Parse(ini) + i).ToString(); if (pap.asignarPapeleta(num, newCodAsigTal)) { cont++; } } } } Conexion.Close(); return(true); }