private DataTable GetAllTickets(string Where) { string whereSQLFilter = string.Empty; if (!string.IsNullOrEmpty(Where)) { whereSQLFilter = string.Format("WHERE {0}", Where); } DataTable dtAllTickets = (DataTable)DBProcess.SimpleQuery( "KUYRUK INNER JOIN GRUPLAR ON KUYRUK.GRPID = GRUPLAR.GRPID JOIN BILETLER B ON KUYRUK.BID = B.BID ", whereSQLFilter, "ORDER BY " + SanalTerminal.GetBiletSiralamaTipi(), //order by "GRUPLAR.GRUP_ISMI, KUYRUK.BID, KUYRUK.GRPID, KUYRUK.BILET_NO, B.MusteriAdi " //"", "GRUPLAR.GRUP_ISMI, KUYRUK.BID, KUYRUK.GRPID, KUYRUK.BILET_NO" orj )["DataTable"]; return(dtAllTickets); }
private DataRow DetectTicketNumber2() { var kuyrukList = GetRealetedGroupsOfTerminal().AsEnumerable(); KuyrukSira.KuyruktaBiletYok = false; if (!kuyrukList.Any()) { KuyrukSira.KuyruktaBiletYok = true; return(null); } DataRow data = kuyrukList.FirstOrDefault(); //ysadece yardým gruplarýndan kalmýþsa if (!kuyrukList.Where(x => x.Field <bool>("YARDIM_GRUBU") == false).Any() && kuyrukList.Where(x => x.Field <bool>("YARDIM_GRUBU") == true).Any()) //normal bilet kalmadýysa { return(data); } if (kuyrukList.FirstOrDefault()["CagriSiralamaTipi"].ToString() == "2") { return(data); } // Farklý Grupta çalýþan terminalin grubunu belirledik #region Ömer Ekledi var Colun = new StringBuilder(); Colun.Append("TGID, GRPID, CAGRI_ORAN, GRUP_TIPI "); var GRP = (DataTable)Library.Classes.DBProcess.SimpleQuery("VGRUPLAR ", "WHERE TID =" + terminal.TID, " ORDER BY ONCELIK, GRPID, GRUP_TIPI ", Colun.ToString())["DataTable"]; DataRow sonSatir1 = GRP.Rows[GRP.Rows.Count - 1]; foreach (DataRow item in GRP.Rows) { if (KuyrukSira.GrupId != int.Parse(item["GRPID"].ToString())) { if (item.Equals(sonSatir1)) { KuyrukSira.CagrilanGruplar = Convert.ToString(KuyrukSira.GrupId = Library.Classes.DBProcess.SelectProcess2("select GRPID from BILETLER where TID =" + terminal.TID + "and BID = (select max (BID) From BILETLER where TID =" + terminal.TID + ")")); } } else { break; } if (KuyrukSira.GrupId <= 0) { break; } } #endregion //gönderilecek bilet için grup belirle if (KuyrukSira.GrupId <= 0) #region ilk gönderilen { KuyrukSira.GrupId = Convert.ToInt32(kuyrukList.FirstOrDefault()["GRPID"].ToString()); KuyrukSira.CagrilanGruplar = kuyrukList.FirstOrDefault()["GRPID"].ToString(); if (kuyrukList.FirstOrDefault()["TRANSFER"].ToString() == "1") { KuyrukSira.Cagrilacak = int.Parse(kuyrukList.FirstOrDefault()["TRANSFER_ORAN"].ToString()); KuyrukSira.CagrilanGrupTipi = "2"; } else { KuyrukSira.Cagrilacak = int.Parse(kuyrukList.FirstOrDefault()["CAGRI_ORAN"].ToString()); KuyrukSira.CagrilanGrupTipi = "1"; } } #endregion else if (KuyrukSira.Cagrilan >= KuyrukSira.Cagrilacak) //çaðrýlacak sayýsý tamam ise grup deðiþtir #region çaðrýlan, çaðrýlacak kadar oluysa { /* * 0 FIKTIF * 1 NORMAL * 2 TRANSFER * 3 YARDIM * 4 YARDIM TRANSFER */ var Columns = new StringBuilder(); Columns.Append("TGID, GRPID, CAGRI_ORAN, GRUP_TIPI "); var Groups = (DataTable)Library.Classes.DBProcess.SimpleQuery("VGRUPLAR ", "WHERE TID =" + terminal.TID, " ORDER BY ONCELIK, GRPID, GRUP_TIPI ", Columns.ToString())["DataTable"]; bool currentGroupFound = false; DataRow sonSatir = Groups.Rows[Groups.Rows.Count - 1]; DataRow ilkSatir = Groups.Rows[0]; foreach (DataRow satir in Groups.Rows) { if (currentGroupFound) { KuyrukSira.GrupId = Convert.ToInt32(satir["GRPID"].ToString()); KuyrukSira.CagrilanGruplar = satir["GRPID"].ToString(); KuyrukSira.Cagrilacak = int.Parse(satir["CAGRI_ORAN"].ToString()); KuyrukSira.CagrilanGrupTipi = satir["GRUP_TIPI"].ToString(); KuyrukSira.Cagrilan = 0; break; } if (satir["GRPID"].ToString() == KuyrukSira.CagrilanGruplar && satir["GRUP_TIPI"].ToString() == KuyrukSira.CagrilanGrupTipi) { currentGroupFound = true; if (satir.Equals(sonSatir)) { KuyrukSira.GrupId = Convert.ToInt32(ilkSatir["GRPID"].ToString()); KuyrukSira.CagrilanGruplar = ilkSatir["GRPID"].ToString(); KuyrukSira.Cagrilacak = int.Parse(ilkSatir["CAGRI_ORAN"].ToString()); KuyrukSira.CagrilanGrupTipi = ilkSatir["GRUP_TIPI"].ToString(); KuyrukSira.Cagrilan = 0; break; } } } } #endregion KuyrukSira.Cagrilan += 1; string where = "WHERE G.TID =" + terminal.TID; where += " ";// " AND (K.I_yf3 = 0 or K.I_yf3 is null) AND NOT EXISTS (SELECT BID FROM HAVUZ WHERE TID=G.TID AND BID=K.BID)"; //örnek týp merkezi için eklendi. string where2 = ""; var strBlColumns = new StringBuilder(); //AYRICALIKLI VAR MI, varsa onu gönder yoksa devam et #region ayrýcalýklý where2 = " AND G.AYRICALIKLI = 1 "; //grup belli, ilk bileti bulalým strBlColumns.Append("K.BID, K.GRPID, K.BILET_NO, K.TRANSFER, K.OZEL_MUSTERI, G.GRPID AS TGRPID, G.TID, "); strBlColumns.Append("G.CAGRI_ORAN, G.TRANSFER_ORAN, G.YARDIM_GRUBU, G.CAGRILAN, G.TRANSFER_CAGRILAN "); var dtBiletler = (DataTable)Library.Classes.DBProcess.SimpleQuery("KUYRUK K INNER JOIN TERMINAL_GRUP G ON K.GRPID = G.GRPID", where + where2, " ORDER BY K.OZEL_MUSTERI DESC, G.ONCELIK, G.TGID, K.TRANSFER, " + SanalTerminal.GetBiletSiralamaTipi(), //"K.BILET_NO", strBlColumns.ToString())["DataTable"]; if (dtBiletler.Rows.Count > 0) { data = dtBiletler.AsEnumerable().FirstOrDefault(); KuyrukSira.Cagrilan = 0; KuyrukSira.GrupId = 0; return(data); } #endregion //FÝKTÝF VAR MI, varsa onu gönder yoksa devam et #region fiktif where = "WHERE G.TID =" + terminal.TID + " AND G.GRPID = " + KuyrukSira.GrupId.ToString(); where += " ";// " AND (K.I_yf3 = 0 or K.I_yf3 is null) AND NOT EXISTS (SELECT BID FROM HAVUZ WHERE TID=G.TID AND BID=K.BID)"; //örnek týp merkezi için eklendi. where2 = " AND K.OZEL_MUSTERI = 1 "; //grup belli, ilk bileti bulalým strBlColumns = new StringBuilder(); strBlColumns.Append("K.BID, K.GRPID, K.BILET_NO, K.TRANSFER, K.OZEL_MUSTERI, G.GRPID AS TGRPID, G.TID, "); strBlColumns.Append("G.CAGRI_ORAN, G.TRANSFER_ORAN, G.YARDIM_GRUBU, G.CAGRILAN, G.TRANSFER_CAGRILAN "); dtBiletler = (DataTable)Library.Classes.DBProcess.SimpleQuery("KUYRUK K INNER JOIN TERMINAL_GRUP G ON K.GRPID = G.GRPID", where + where2, " ORDER BY K.OZEL_MUSTERI DESC, G.ONCELIK, G.TGID, K.TRANSFER, " + SanalTerminal.GetBiletSiralamaTipi(), //"K.BILET_NO", strBlColumns.ToString())["DataTable"]; if (dtBiletler.Rows.Count > 0) { data = dtBiletler.AsEnumerable().FirstOrDefault(); KuyrukSira.Cagrilan = 0; KuyrukSira.GrupId = 0; return(data); } #endregion if (KuyrukSira.CagrilanGrupTipi == "2") // transfer { where2 = " AND K.TRANSFER = 1 "; } else { where2 = ""; } //grup belli, ilk bileti bulalým strBlColumns = new StringBuilder(); strBlColumns.Append("K.BID, K.GRPID, K.BILET_NO, K.TRANSFER, K.OZEL_MUSTERI, G.GRPID AS TGRPID, G.TID, "); strBlColumns.Append("G.CAGRI_ORAN, G.TRANSFER_ORAN, G.YARDIM_GRUBU, G.CAGRILAN, G.TRANSFER_CAGRILAN "); dtBiletler = (DataTable)Library.Classes.DBProcess.SimpleQuery("KUYRUK K INNER JOIN TERMINAL_GRUP G ON K.GRPID = G.GRPID", where + where2, " ORDER BY K.OZEL_MUSTERI DESC, G.ONCELIK, G.TGID, K.TRANSFER, " + SanalTerminal.GetBiletSiralamaTipi(), //"K.BILET_NO", strBlColumns.ToString())["DataTable"]; KuyrukSira.Transfer = Transfer; if (dtBiletler != null) { data = dtBiletler.AsEnumerable().FirstOrDefault(); //return data; } else { data = null; } return(data); }
//private DataTable GetRealetedGroupsOfTerminal() //{ // StringBuilder strBlColumns = new StringBuilder(); // strBlColumns.Append("KUYRUK.BID, KUYRUK.GRPID, KUYRUK.BILET_NO, KUYRUK.TRANSFER, KUYRUK.OZEL_MUSTERI, "); // strBlColumns.Append("TERMINAL_GRUP.GRPID AS TGRPID, TERMINAL_GRUP.TID, TERMINAL_GRUP.CAGRI_ORAN, "); // strBlColumns.Append("TERMINAL_GRUP.TRANSFER_ORAN, TERMINAL_GRUP.YARDIM_GRUBU, TERMINAL_GRUP.CAGRILAN, "); // strBlColumns.Append("TERMINAL_GRUP.TRANSFER_CAGRILAN"); // DataTable dtGroups = (DataTable) DBProcess.SimpleQuery( // "KUYRUK INNER JOIN TERMINAL_GRUP ON KUYRUK.GRPID = TERMINAL_GRUP.GRPID", // "WHERE (TERMINAL_GRUP.TID =" + terminal.TID + ")", // "ORDER BY TERMINAL_GRUP.ONCELIK, KUYRUK.TRANSFER DESC, KUYRUK.BID", // strBlColumns.ToString() // )["DataTable"]; // return dtGroups; //} private DataTable GetRealetedGroupsOfTerminal() { var strBlColumns = new StringBuilder(); strBlColumns.Append("K.BID, K.GRPID, K.BILET_NO, K.TRANSFER, K.OZEL_MUSTERI, G.GRPID AS TGRPID, G.TID, "); strBlColumns.Append("G.CAGRI_ORAN, G.TRANSFER_ORAN, G.YARDIM_GRUBU, G.CAGRILAN, G.TRANSFER_CAGRILAN, G.AYRICALIKLI, T.CagriSiralamaTipi"); var dtGroups = (DataTable)Library.Classes.DBProcess.SimpleQuery("KUYRUK K INNER JOIN TERMINAL_GRUP G ON K.GRPID = G.GRPID INNER JOIN TERMINALLER T ON G.TID = T.TID ", "WHERE (K.I_yf3 = 0 or K.I_yf3 is null) AND G.TID =" + terminal.TID + " AND NOT EXISTS (SELECT BID FROM HAVUZ WHERE TID=G.TID AND BID=K.BID)", //örnek týp merkezi için eklendi. "ORDER BY G.AYRICALIKLI DESC, K.OZEL_MUSTERI DESC, G.YARDIM_GRUBU, ONCELIK, G.TGID, K.TRANSFER, " + SanalTerminal.GetBiletSiralamaTipi(), //"K.BILET_NO", strBlColumns.ToString())["DataTable"]; return(dtGroups); }