public async Task <PhimViewModel> LayThongTinPhim(int maPhim)
        {
            Phim phim = null;

            using (var connection = new SqlConnection(connectionString))
            {
                var p = new DynamicParameters();
                p.Add("@KEYWORD", maPhim);
                phim = connection.QuerySingleOrDefault <Phim>("SELECT * FROM [dbo].[PHIM] WHERE MaPhim = " + maPhim, p, commandType: CommandType.Text);
                IEnumerable <BinhLuanViewModel> listBinhLuan = connection.Query <BinhLuanViewModel>("SELECT * FROM dbo.View_BINH_LUAN WHERE MaPhim = " + maPhim, commandType: CommandType.Text);

                //PhimViewModel phimVM = Mapper.Map<Phim, PhimViewModel>(phim);
                PhimViewModel phimVM = new PhimViewModel();
                phimVM.TenPhim       = phim.TenPhim;
                phimVM.BiDanh        = phim.BiDanh;
                phimVM.DanhGia       = phim.DanhGia;
                phimVM.HinhAnh       = phim.HinhAnh;
                phimVM.MaPhim        = phim.MaPhim;
                phimVM.MoTa          = phim.MoTa;
                phimVM.Trailer       = phim.Trailer;
                phimVM.NgayKhoiChieu = phim.NgayKhoiChieu.ToString("dd/MM/yyyy");
                phimVM.DaoDien       = phim.DaoDien;
                phimVM.DienVien      = phim.DienVien;
                phimVM.DoTuoi        = phim.DoTuoi;
                phimVM.DaXoa         = phim.DaXoa;
                phimVM.KhoiChieu     = phim.KhoiChieu;
                phimVM.SapChieu      = phim.SapChieu;
                phimVM.ListBinhLuan  = listBinhLuan;
                return(phimVM);
            }
        }
        public async Task <object> CapNhatPhim(PhimViewModel phimUpdate)
        {
            using (var connection = new SqlConnection(connectionString))
            {
                IEnumerable <Phim> listPhim = connection.Query <Phim>("SELECT * FROM [dbo].[PHIM]", commandType: CommandType.Text);
                var phim = listPhim.Where(n => n.MaPhim == phimUpdate.MaPhim);
                if (phim == null)
                {
                    return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Mã phim không hợp lệ!"));
                }
                string tenPhim = LoaiBoKyTu.bestLower(phimUpdate.TenPhim);
                if (string.IsNullOrEmpty(tenPhim))
                {
                    return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Tên phim không hợp lệ!"));
                }
                var p = listPhim.Where(n => n.BiDanh == tenPhim);
                if (p.Count() > 2)
                {
                    return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Tên phim đã tồn tại!"));
                }

                //Kiểm tra hình ảnh và trailer
                if (phimUpdate.HinhAnh.Split('.').Count() > 1)
                {
                    phimUpdate.HinhAnh = LoaiBoKyTu.bestLower(phimUpdate.TenPhim) + "." + phimUpdate.HinhAnh.Split('.')[phimUpdate.HinhAnh.Split('.').Length - 1];
                }
                else
                {
                    var response = await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Hình ảnh không đúng định dạng!");

                    return(response);
                }
                if (!string.IsNullOrEmpty(phimUpdate.Trailer))
                {
                    string newString = phimUpdate.Trailer.Replace("https://www.youtube.com/embed/", "♥");
                    if (newString.Split('♥').Length == 1)
                    {
                        return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Link trailer không hợp lệ link trailer phải có định dạng: https://www.youtube.com/embed/[thamso]"));
                    }
                }

                DateTime temp;
                try
                {
                    try
                    {
                        temp = DateTimes.ConvertDate(phimUpdate.NgayKhoiChieu);
                    }
                    catch (Exception ex)
                    {
                        return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Ngày chiếu không hợp lệ, Ngày chiếu phải có định dạng dd/MM/yyyy !"));
                    }
                }
                catch (Exception ex)
                {
                    return(await thongBaoLoi.thongBaoLoi(ThongBaoLoi.Loi500, "Ngày khởi chiếu không hợp lệ, Ngày chiếu phải có định dạng dd/MM/yyyy !"));
                }

                var param = new DynamicParameters();
                param.Add("@MAPHIM", phimUpdate.MaPhim);
                param.Add("@TENPHIM", phimUpdate.TenPhim);
                param.Add("@TRAILER", phimUpdate.Trailer);
                param.Add("@HINHANH", hostName + phimUpdate.HinhAnh);
                param.Add("@MOTA", phimUpdate.MoTa);
                param.Add("@NGAYKHOICHIEU", temp);
                param.Add("@DANHGIA", phimUpdate.DanhGia);
                param.Add("@DIENVIEN", phimUpdate.DienVien);
                param.Add("@DAODIEN", phimUpdate.DaoDien);
                param.Add("@DOTUOI", phimUpdate.DoTuoi);
                param.Add("@BIDANH", phimUpdate.BiDanh);
                param.Add("@DAXOA", phimUpdate.DaXoa);
                param.Add("@KHOICHIEU", phimUpdate.KhoiChieu);
                param.Add("@SAPCHIEU", phimUpdate.SapChieu);
                await connection.QueryAsync <Phim>("PHIM_UPDATE", param, commandType : CommandType.StoredProcedure);

                return("Cập nhật phim thành công!");
            }
        }
        public async Task <IActionResult> CapNhatPhim(PhimViewModel phimCapNhat)
        {
            var result = await _quanLyPhimRespository.CapNhatPhim(phimCapNhat);

            return(Ok(result));
        }