示例#1
0
 public List <LichChieuDTO> DanhSachLichChieu()
 {
     try
     {
         using (var context = new QLRPContext())
         {
             List <LichChieu>    lichChieus    = context.LichChieus.Select(p => p).ToList();
             List <LichChieuDTO> lichChieuDTOs = new List <LichChieuDTO>();
             foreach (LichChieu lc in lichChieus)
             {
                 var lcDTO = new LichChieuDTO
                 {
                     MaLichChieu  = lc.MaLichChieu,
                     MaPhim       = lc.MaPhim,
                     MaPhong      = lc.MaPhong,
                     NgayGioChieu = lc.NgayGioChieu,
                     RowVersion   = BitConverter.ToUInt64(lc.RowVersion, 0).ToString(),
                     TenPhim      = lc.Phim.TenPhim,
                     TenPhong     = lc.PhongChieu.TenPhong,
                     PhimMoTa     = lc.Phim.MoTa,
                     SoGheTrong   = getSoGheTrong(lc.MaPhong, lc.MaLichChieu)
                 };
                 lichChieuDTOs.Add(lcDTO);
             }
             return(lichChieuDTOs);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#2
0
        public static void Them(LichChieuDTO lichchieu)
        {
            // mở kết nối
            SqlConnection connection = SQLConnectionData.HamKetNoi();

            connection.Open();

            // tạo câu lệnh Thêm
            SqlCommand command = connection.CreateCommand();

            command.CommandType = CommandType.Text;

            command.CommandText = " EXEC ThemLichChieu @NGAYCHIEU,@MAPHIM,@MACC,@MAPC ";
            command.Parameters.Add("@NGAYCHIEU", SqlDbType.Date);
            command.Parameters.Add("@MAPHIM", SqlDbType.VarChar, 10);
            command.Parameters.Add("@MACC", SqlDbType.VarChar, 10);
            command.Parameters.Add("@MAPC", SqlDbType.VarChar, 10);


            // gán giá trị
            command.Parameters["@NGAYCHIEU"].Value = lichchieu.NgayChieu;
            command.Parameters["@MAPHIM"].Value    = lichchieu.MaPhim;
            command.Parameters["@MACC"].Value      = lichchieu.MaCC;
            command.Parameters["@MAPC"].Value      = lichchieu.MaPC;

            command.ExecuteNonQuery();

            // đóng kết nối
            connection.Close();
        }
示例#3
0
 public bool ThemLichChieu(LichChieuDTO lichChieu)
 {
     try
     {
         using (var context = new QLRPContext())
         {
             context.LichChieus.Add(new LichChieu()
             {
                 MaPhim       = lichChieu.MaPhim,
                 NgayTao      = DateTime.Now,
                 NguoiTao     = CurrentUser.Username,
                 NgaySua      = DateTime.Now,
                 NguoiSua     = CurrentUser.Username,
                 MaPhong      = lichChieu.MaPhong,
                 NgayGioChieu = lichChieu.NgayGioChieu
             });
             context.SaveChanges();
             return(true);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#4
0
 public bool UpdateLichChieu(LichChieuDTO lichChieu)
 {
     try
     {
         using (var context = new QLRPContext())
         {
             var lichChieu_update = context.LichChieus.SingleOrDefault(p => p.MaLichChieu == lichChieu.MaLichChieu);
             if (lichChieu_update != null)
             {
                 if (Utils.ValidateRowversion(lichChieu_update.RowVersion, lichChieu.RowVersion))
                 {
                     lichChieu_update.MaPhong      = lichChieu.MaPhong;
                     lichChieu_update.MaPhim       = lichChieu.MaPhim;
                     lichChieu_update.NgayGioChieu = lichChieu.NgayGioChieu;
                     lichChieu_update.NguoiSua     = CurrentUser.Username;
                     lichChieu_update.NgaySua      = DateTime.Now;
                     context.SaveChanges();
                     return(true);
                 }
                 throw new Exception("Có ai đó đã update đối tượng này trước đó. Danh sách sẽ được load lại.");
             }
             throw new Exception("Lịch chiếu này đã bị xóa bởi ai đó. Danh sách sẽ được load lại.");
         }
     }
     catch (DbUpdateConcurrencyException)
     {
         throw new Exception("Hiện tại, có ai đó cũng đang update đối tượng này. Danh sách sẽ được load lại.");
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#5
0
        public void Sua(LichChieuDTO lichchieu)
        {
            /// mở kết nối
            connection.Open();

            // tạo câu lệnh Thêm
            SqlCommand command = connection.CreateCommand();

            command.CommandType = CommandType.Text;
            //command.CommandText = "INSERT INTO CACHIEU VALUES(@MACC,@TENCC,@BATDAU,@KETTHUC)";
            command.CommandText = "EXEC SuaLichChieu @NGAYCHIEU,@MAPHIM,@MACC,@MAPC";
            command.Parameters.Add("@NGAYCHIEU", SqlDbType.Date);
            command.Parameters.Add("@MAPHIM", SqlDbType.VarChar, 10);
            command.Parameters.Add("@MACC", SqlDbType.VarChar, 10);
            command.Parameters.Add("@MAPC", SqlDbType.VarChar, 10);


            // gán giá trị
            command.Parameters["@NGAYCHIEU"].Value = lichchieu.NgayChieu;
            command.Parameters["@MAPHIM"].Value    = lichchieu.MaPhim;
            command.Parameters["@MACC"].Value      = lichchieu.MaCC;
            command.Parameters["@MAPC"].Value      = lichchieu.MaPC;

            command.ExecuteNonQuery();

            // đóng kết nối
            connection.Close();
        }
示例#6
0
        public PhongDatVe(LichChieuDTO lc)
        {
            InitializeComponent();
            lichChieu = lc;
            datVeBLL  = new DatVeBLL();

            // Trang : con
            // Do : da dat ve
            // Xanh la cay : da chon
        }
示例#7
0
        private void cbbNgay_SelectedIndexChanged(object sender, EventArgs e)
        {
            lcDTO = (LichChieuDTO)cbbNgay.SelectedItem;

            if (lcDTO.ThoiGian.ToString() != "")
            {
                LoadLichChieuTheoNgay(lcDTO.ThoiGian);
                ResetForm();
            }
        }
示例#8
0
 public BanVe(LichChieuDTO lcDTO)
 {
     InitializeComponent();
     lbHi.Text         = $"Hi {Login.UserName}!";
     lc                = lcDTO;
     txtNgayChieu.Text = lcDTO.NgayChieu;
     txtTenPhim.Text   = lcDTO.TenPhim;
     txtGioChieu.Text  = lcDTO.GioChieu;
     pbPoster.SizeMode = PictureBoxSizeMode.StretchImage;
     txtTenPhong.Text  = lcDTO.TenPhong;
     pbPoster.Image    = Image.FromFile(NVBVForm.posterPath);
 }
 private void dtgDSLichChieu_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
 {
     index = dtgDSLichChieu.SelectedIndex;
     if (index >= 0) // tránh lỗi click vẫn trong datagrid nhưng mà click chỗ k có dòng nào
     {
         Selected = true;
         LichChieuDTO nv = dtgDSLichChieu.SelectedItem as LichChieuDTO;
         txtNgayChieu.Text = nv.NgayChieu_String;
         txtMaphim.Text    = nv.MaPhim;
         txtMapc.Text      = nv.MaPC;
         txtMacc.Text      = nv.MaCC;
     }
 }
        public List <LichChieuDTO> LayLichChieuTheoTen(string tenphim)
        {
            List <LichChieuDTO> listLichChieuDTO = new List <LichChieuDTO>();

            String    query = "SELECT * FROM LichChieu WHERE TenPhim = N'" + tenphim + "'";
            DataTable dt    = DataProvider.ExecuteQuery(query);

            foreach (DataRow dr in dt.Rows)
            {
                LichChieuDTO lichChieuDTO = new LichChieuDTO();
                lichChieuDTO.TenPhim      = dr["TenPhim"].ToString();
                lichChieuDTO.NgayChieu    = dr["NgayChieu"].ToString();
                lichChieuDTO.SuatChieu    = dr["SuatChieu"].ToString();
                lichChieuDTO.MaPhongChieu = dr["MaPhongChieu"].ToString();
                listLichChieuDTO.Add(lichChieuDTO);
            }
            return(listLichChieuDTO);
        }
示例#11
0
        public List <LichChieuDTO> loadLC()
        {
            SqlConnection       conn       = DataProvider.TaoKetNoi();
            string              strTruyVan = "Select * From LichChieu where TrangThai=1";
            SqlDataReader       sdr        = DataProvider.TruyVanDuLieu(strTruyVan, conn);
            List <LichChieuDTO> ls         = new List <LichChieuDTO>();

            while (sdr.Read())
            {
                LichChieuDTO ketqua = new LichChieuDTO();
                ketqua.MaLich    = int.Parse(sdr["MaLich"].ToString());
                ketqua.NgayNhap  = DateTime.Parse(sdr["NgayNhap"].ToString());
                ketqua.ThoiGian  = DateTime.Parse(sdr["ThoiGian"].ToString());
                ketqua.TrangThai = int.Parse(sdr["TrangThai"].ToString());
                ls.Add(ketqua);
            }
            sdr.Close();
            conn.Close();
            return(ls);
        }
示例#12
0
        public LichChieuDTO loadLC(DateTime ngay)
        {
            SqlConnection conn       = DataProvider.TaoKetNoi();
            string        strTruyVan = "Select * From LichChieu where ThoiGian = @ThoiGian AND TrangThai=1";

            SqlParameter[] par = new SqlParameter[1];
            par[0] = new SqlParameter("@ThoiGian", ngay);
            SqlDataReader sdr    = DataProvider.TruyVanDuLieu(strTruyVan, par, conn);
            LichChieuDTO  ketqua = new LichChieuDTO();

            while (sdr.Read())
            {
                ketqua.MaLich    = int.Parse(sdr["MaLich"].ToString());
                ketqua.NgayNhap  = DateTime.Parse(sdr["NgayNhap"].ToString());
                ketqua.ThoiGian  = DateTime.Parse(sdr["ThoiGian"].ToString());
                ketqua.TrangThai = int.Parse(sdr["TrangThai"].ToString());
            }
            sdr.Close();
            conn.Close();
            return(ketqua);
        }
示例#13
0
        private void LoadLichChieuTheoNgay(DateTime NgayChieu)
        {
            string date = "";

            if (NgayChieu != null)
            {
                // Dữ liệu trả về dạng MM/dd/yyyy. VD: "11/14/2018"
                date = ((System.DateTime)(NgayChieu)).Month.ToString() + "/" + ((System.DateTime)(NgayChieu)).Day.ToString() + "/" + ((System.DateTime)(NgayChieu)).Year.ToString();

                DateTime ngay = DateTime.ParseExact(date, "MM/dd/yyyy", null);

                // Lưu data lịch chiếu ngày vừa chọn
                lcDTO = lc.LoadLich(ngay);
            }
            else
            {
                MessageBox.Show("Sai Ngày!");
                return;
            }


            // Nếu ko có lịch chiếu của ngày đó
            if (lcDTO == null)
            {
                MessageBox.Show("Ngày " + lcDTO.ThoiGian.ToShortDateString() + " chưa có lịch chiếu!");

                return;
            }

            // Lấy 'Chi tiết lịch chiếu' hiện tại khi 'Ca' thay đổi
            ctlcDTO = ctlc.loadCTLC(lcDTO.MaLich);

            // Lấy Mã lịch chiếu
            LichChieu_MaLC = lcDTO.MaLich;

            // Đổ dữ liệu vào ListView
            LoadPhim(LichChieu_MaLC);
        }
        private void BtnLuu_Click(object sender, RoutedEventArgs e)
        {
            bool TrungMaLC = false;

SuaLai:
            string maphim = null;

            if (cbbTenPhim.Text.Length != 0)
            {
                int index = cbbTenPhim.SelectedIndex;
                maphim = listMaPhim[index];
            }
            string macc = null;

            if (cbbTenCC.Text.Length != 0)
            {
                int index = cbbTenCC.SelectedIndex;
                macc = listMaCC[index];
            }
            string mapc = null;

            if (cbbTenPC.Text.Length != 0)
            {
                int index = cbbTenPC.SelectedIndex;
                mapc = listMaPC[index];
            }

            DateTime ngaychieu = DateTime.Parse(ThangTruocNgaySau(txtNgayChieu.Text));

            LichChieuDTO lc = new LichChieuDTO(ngaychieu, maphim, macc, mapc);

            if (maphim == null)
            {
                if (TrungMaLC == false)
                {
                    MessageBox.Show("Mã phim không được để trống");
                }
                else
                {
                    MessageBox.Show("Mã phim bị trùng");
                }
                cbbTenPhim.Focus();
            }
            else if (macc == null)
            {
                MessageBox.Show("Mã ca chiếu không được để trống");
                cbbTenCC.Focus();
            }
            else if (mapc == null)
            {
                MessageBox.Show("Mã phòng chiếu không được để trống");
                cbbTenPC.Focus();
            }
            else
            {
                try
                {
                    LichChieuBUS.Them(lc);
                }
                catch
                {
                    TrungMaLC = true;
                    goto SuaLai;
                }
                MessageBox.Show("Thêm thông tin lịch chiếu  thành công", "Thông báo");
                this.Close();
            }
        }
示例#15
0
        private void btnDatVe_Click(object sender, EventArgs e)
        {
            LichChieuDTO lc = dgvLichChieu.CurrentRow.DataBoundItem as LichChieuDTO;

            new BanVe(lc).ShowDialog();
        }
示例#16
0
 public static void Them(LichChieuDTO lc)
 {
     LichChieuDAO.Them(lc);
 }
示例#17
0
 public static void Sua(LichChieuDTO lc)
 {
     LichChieuDAO.Sua(lc);
 }
        private void BtnLuu_Sua_Click(object sender, RoutedEventArgs e)
        {
            bool TrungMaLC = false;

SuaLai:
            string maphim = null;

            if (txtMaphim.Text.Length != 0)
            {
                maphim = listMaPhim[index];
            }
            string macc = null;

            if (txtMacc.Text.Length != 0)
            {
                macc = listMaCC[index];
            }
            string mapc = null;

            if (txtMapc.Text.Length != 0)
            {
                mapc = listMaPC[index];
            }

            DateTime ngaychieu = DateTime.Parse(dtpNgayChieu.ToString());

            LichChieuDTO lc = new LichChieuDTO(ngaychieu, maphim, macc, mapc);

            if (maphim == null)
            {
                if (TrungMaLC == false)
                {
                    MessageBox.Show("Mã phim không được để trống");
                }
                else
                {
                    MessageBox.Show("Mã phim bị trùng");
                }
                txtMacc.Focus();
            }
            else if (macc == null)
            {
                MessageBox.Show("Mã ca chiếu không được để trống");
                txtMacc.Focus();
            }
            else if (mapc == null)
            {
                MessageBox.Show("Mã phòng chiếu không được để trống");
                txtMapc.Focus();
            }
            else
            {
                try
                {
                    LichChieuBUS.Sua(lc);
                }
                catch
                {
                    txtMaphim.Clear();
                    TrungMaLC = true;
                    goto SuaLai;
                }
                MessageBox.Show("Sửa thông tin lịch chiếu  thành công", "Thông báo");

                DataTable dataTable = new DataTable();
                dataTable = LichChieuBUS.LoadDSLC();
                Load_Data(dataTable);

                KhongChoNhap();
                txtNgayChieu.Clear();
                btnLuu_Sua.Visibility    = Visibility.Hidden;
                btnSua.Visibility        = Visibility.Visible;
                btnThem.IsEnabled        = btnXoa.IsEnabled = true;
                dtgDSLichChieu.IsEnabled = true;
            }
        }