public void CreateScheduleTest1() { List <ScheduleDetail> schedDetails = new List <ScheduleDetail>(); DateTime timeStart = new DateTime(2018, 8, 2, 7, 0, 0); DateTime timeEnd = new DateTime(2018, 8, 2, 9, 12, 0); schedDetails.Add(new ScheduleDetail(null, null, timeStart, timeEnd, "Room Seat")); schedDetails.Add(new ScheduleDetail(null, null, timeStart, timeEnd, "Room Seat")); Schedule sche = new Schedule(null, 0, null, "07:00, 08:00", 3, 1, schedDetails); Assert.True(sbl.CreateSchedule(sche)); }
/// <summary> /// Create schedule /// </summary> /// <param name="lstdrivers"> List of all driver for selected route</param> /// <param name="rootid"> Selected root</param> public static void CreateSchedule(List <Driver> lstdrivers, string rootid) { schedulebl.CreateSchedule(lstdrivers, rootid); GetTable(Constants.week); Constants.week += 1; }
public void CreateSchedule(User us) { Console.Clear(); string row1 = "====================================================================="; string row2 = "---------------------------------------------------------------------"; Console.WriteLine(row1); Console.WriteLine("Tạo lịch chiếu phim."); Console.WriteLine(row2); Console.WriteLine("[Danh sách Phim]\n"); MovieBL mbl = new MovieBL(); string[] properties = { "MovieId", "MovieName", "MovieCategory", "MovieTime", "MovieDateStart", "MovieDateEnd" }; string[] cols = { "Mã phim", "Tên phim", "Thể loại", "Thời lượng(Phút)", "Ngày bắt đầu", "Ngày kết thúc" }; List <Movie> movies = mbl.GetMoviesByCineId(us.Cine.CineId); // cine = cbl.GetCinemaByCineId(us.Cine.CineId); cs.DisplayTableData(movies, properties, cols, "dd/MM/yyyy"); Console.WriteLine(row1); Console.Write("\nChọn phim(theo mã): "); sche.MovieId = cs.input(Console.ReadLine()); while (mbl.GetMovieByMovieId(sche.MovieId) == null) { Console.Write("Không có mã này, mời bạn nhập lại: "); sche.MovieId = cs.input(Console.ReadLine()); } cine = us.Cine; Console.Clear(); List <ScheduleDetail> lsd = null; int? scheNewId; ScheduleBL sbl = new ScheduleBL(); Schedule scheNew = null; while (true) { // row1 = "========================================"; // row2 = "----------------------------------------"; Console.WriteLine(row1); Console.WriteLine("Tạo lịch chiếu phim."); Console.WriteLine(row2); Console.WriteLine("[Danh sách phòng]\n"); string[] proper = { "RoomId", "RoomName", "RTName" }; string[] col = { "Mã phòng", "Tên phòng", "Loại phòng" }; lr = rbl.GetRoomsByCineId(1); cs.DisplayTableData(lr, proper, col, null); Console.WriteLine(row1); Console.Write("\nChọn phòng(theo mã): "); sche.RoomId = cs.input(Console.ReadLine()); while (rbl.GetRoomByRoomId(sche.RoomId) == null) { Console.Write("Không có mã này, mời bạn nhập lại: "); sche.RoomId = cs.input(Console.ReadLine()); } // while (sbl.GetScheduleByMovieIdAndRoomId(sche.MovieId, sche.RoomId) != null) // { // Console.Write("Trùng lịch chiếu, mời bạn nhập lại: "); // sche.RoomId = cs.input(Console.ReadLine()); // while (rbl.GetRoomByRoomId(sche.RoomId) == null) // { // Console.Write("Không có mã này, mời bạn nhập lại: "); sche.RoomId = cs.input(Console.ReadLine()); // } // } scheNew = sbl.GetScheduleByMovieIdAndRoomId(sche.MovieId, sche.RoomId); if (scheNew == null) { scheNewId = null; } else { scheNewId = scheNew.ScheId; } movie = mbl.GetMovieByMovieId(sche.MovieId); room = rbl.GetRoomByRoomId(sche.RoomId); lsd = DisplayTime(movie, room, scheNew); // Console.Write("Không tìm thấy khung giờ hoặc trùng, bạn có muốn chọn lại?(C/K)"); // string choice = Console.ReadLine(); // switch (choice) // { // case "C": // scheNew = sbl.GetScheduleByMovieIdAndRoomId(sche.MovieId, sche.RoomId); // movie = mbl.GetMovieByMovieId(sche.MovieId); // room = rbl.GetRoomByRoomId(sche.RoomId); // lsd = DisplayTime(movie, room, scheNew); // break; // case "c": // scheNew = sbl.GetScheduleByMovieIdAndRoomId(sche.MovieId, sche.RoomId); // movie = mbl.GetMovieByMovieId(sche.MovieId); // room = rbl.GetRoomByRoomId(sche.RoomId); // lsd = DisplayTime(movie, room, scheNew); // break; // case "K": // mn.menuManager(us); // return; // case "k": // mn.menuManager(us); // return; // default: // continue; // // break; // } if (lsd != null) { break; } Console.Clear(); Console.WriteLine("Phim: {0} tại phòng: {1} đã đủ suất chiếu !", movie.MovieName, room.RoomName); } Console.Clear(); Console.WriteLine(row1); Console.WriteLine("Tạo lịch chiếu phim."); Console.WriteLine(row2); Console.WriteLine("[Chi tiết lịch chiếu]\n"); Console.WriteLine("Bộ phim: " + movie.MovieName); Console.WriteLine("Chiếu tại rạp: " + cine.CineName); Console.WriteLine("Chiếu tại phòng: " + room.RoomName); Console.WriteLine("Trong các khung giờ lặp mỗi ngày từ ngày {0} - {1} cụ thể như sau: ", movie.MovieDateStart.ToString("dd/MM/yyyy"), movie.MovieDateEnd.ToString("dd/MM/yyyy")); int count = 1; string timeline = ""; if (scheNew != null) { timeline = scheNew.ScheTimeline; } for (int i = 1; i < lsd.Count - 1; i++) { if (lsd[0].SchedTimeStart?.ToString("HH:mm") == lsd[i].SchedTimeStart?.ToString("HH:mm")) { break; } count++; } for (int i = 0; i < count; i++) { try { Console.WriteLine("{0}.{1} -> {2}", i + 1, lsd[i].SchedTimeStart?.ToString("HH:mm"), lsd[i].SchedTimeEnd?.ToString("HH:mm")); if (timeline == "") { timeline = timeline + lsd[i].SchedTimeStart?.ToString("HH:mm"); } else { timeline = timeline + ", " + lsd[i].SchedTimeStart?.ToString("HH:mm"); } } catch (System.Exception) { } } // foreach (var item in lsd) // { // if (Schedule) // { // } // { // Console.WriteLine("{0}.{1} {2} -> {3}", count, item.SchedTimeEnd?.ToString("dd/MM/yyyy"), item.SchedTimeStart?.ToString("HH:mm"), item.SchedTimeEnd?.ToString("HH:mm")); // } // if (timeline == "") // { // timeline = timeline + item.SchedTimeStart?.ToString("HH:mm"); // } // else // { // timeline = timeline + ", " + item.SchedTimeStart?.ToString("HH:mm"); // } // count++; // } sche = new Schedule(scheNewId, 0, null, timeline, sche.RoomId, sche.MovieId, lsd); Console.WriteLine(row1); while (true) { Console.Write("Xác nhận tạo lịch chiếu?(C/K)"); string choice = Console.ReadLine(); switch (choice) { case "C": sbl.CreateSchedule(sche); break; case "c": sbl.CreateSchedule(sche); break; case "K": break; case "k": break; default: continue; // break; } break; } Console.Clear(); mn.menuManager(us); }