public static string CountItem()
 {
     if (HttpContext.Current.Session["uid"] == null)
     {
         return(GioHangBus.GetAll().Where(m => m.DiaChiIp == Cart.IpAddress).ToList().Count.ToString());
     }
     return(GioHangBus.GetAll().Where(m => m.MaKh == int.Parse(HttpContext.Current.Session["uid"].ToString()))
            .ToList().Count.ToString());
 }
        public static string AddToCart(FilterClass fc)
        {
            if (HttpContext.Current.Session["uid"] == null)
            {
                var gioHang = GioHangBus.GetAll()
                              .FirstOrDefault(m => m.DiaChiIp == Cart.IpAddress && m.MaSp == fc.ProductId);

                if (gioHang != null)
                {
                    return(@"<div class='alert alert-warning'>
							<a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
							<b>Sản phẩm đã tồn tại trong giỏ hàng !</b>
					</div>"                    );
                }

                if (GioHangBus.Insert(new DTO.GioHang
                {
                    MaSp = fc.ProductId, DiaChiIp = Cart.IpAddress, SoLuong = 1
                }) != null)
                {
                    return(@"<div class='alert alert-success'>
						<a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
						<b>Sản phẩm đã được thêm !</b>
					</div>"                    );
                }
            }
            else
            {
                var gioHang = GioHangBus.GetAll()
                              .FirstOrDefault(m =>
                                              m.MaKh == int.Parse(HttpContext.Current.Session["uid"].ToString()) && m.MaSp == fc.ProductId);

                if (gioHang != null)
                {
                    return(@"<div class='alert alert-warning'>
							<a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
							<b>Sản phẩm đã tồn tại trong giỏ hàng !</b>
					</div>"                    );
                }

                if (GioHangBus.Insert(new DTO.GioHang
                {
                    MaSp = fc.ProductId,
                    MaKh = int.Parse(HttpContext.Current.Session["uid"].ToString()),
                    SoLuong = 1
                }) != null)
                {
                    return(@"<div class='alert alert-success'>
						<a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
						<b>Sản phẩm đã được thêm !</b>
					</div>"                    );
                }
            }

            return("OK");
        }
        public static string UpdateItemFromCart(FilterClass fc)
        {
            DTO.GioHang gh;
            gh = HttpContext.Current.Session["uid"] != null
                ? GioHangBus.GetAll().FirstOrDefault(m =>
                                                     m.MaSp == fc.UpdateId && m.MaKh == int.Parse(HttpContext.Current.Session["uid"].ToString()))
                : GioHangBus.GetAll().FirstOrDefault(m =>
                                                     m.MaSp == fc.UpdateId && m.DiaChiIp == Cart.IpAddress);

            if (gh != null)
            {
                gh.SoLuong = fc.Quantity;
                GioHangBus.Update(gh);
            }

            return(@"<div class='alert alert-danger'>
                   <a href = '#' class='close' data-dismiss='alert' aria-label='close'>&times;</a>
                <b>Sản phẩm đã được sửa</b>
                </div>");
        }
        public static string GetCartItems(FilterClass fc, ActionClass ac)
        {
            var sb     = new StringBuilder();
            var result = HttpContext.Current.Session["uid"] == null
                ? from p in Sp_BUS.GetAll()
                         join g in GioHangBus.GetAll()
                         on p.MaSp equals g.MaSp
                         where g.DiaChiIp == Cart.IpAddress
                         select new
            {
                MaSanPham   = p.MaSp,
                TenSanPham  = p.TenSp,
                GiaSanPham  = p.DonGia,
                HinhSanPham = p.HinhSp,
                g.MaGioHang,
                g.SoLuong,
                g.DiaChiIp,
                g.MaKh
            }
                : GioHangBus.GetAll().Join(Sp_BUS.GetAll(), c => c.MaSp, p => p.MaSp,
                                           (gioHang, sanPham) => new
            {
                MaSanPham   = sanPham.MaSp,
                TenSanPham  = sanPham.TenSp,
                GiaSanPham  = sanPham.DonGia,
                HinhSanPham = sanPham.HinhSp,
                gioHang.MaGioHang,
                gioHang.SoLuong,
                gioHang.DiaChiIp,
                gioHang.MaKh
            }).Where(m => m.MaKh == int.Parse(HttpContext.Current.Session["uid"].ToString()));

            var enumerable = result.ToList();

            if (ac.LaySanPhamGioHang)
            {
                var n = 0;
                foreach (var x in enumerable)
                {
                    sb.Append($@"
                    <div class='row'>
                        <div class='col-md-3'>{++n}</div>
						<div class='col-md-3'><img class='img-responsive' src='product_images/{x.HinhSanPham}' /></div>
						<div class='col-md-3'>{x.TenSanPham}</div>
						<div class='col-md-3'>{x.GiaSanPham}</div>
					</div>
                    ");
                }
                sb.Append(
                    "<a style='float:right; ' href='/GioHang' class='btn btn-warning'>Edit&nbsp;&nbsp;<span class='glyphicon glyphicon-edit'></span></a>");
            }

            if (ac.LaySanPhamGioHangCheckOut)
            {
                foreach (var x in enumerable)
                {
                    sb.Append($@"<div class='row'>
                        <div class='col-md-2'>
                        <div class='btn-group'>
                        <a href = '#' remove_id='{x.MaSanPham}' class='btn btn-danger remove'><span class='glyphicon glyphicon-trash'></span></a>
                        <a href = '#' update_id='{x.MaSanPham}' class='btn btn-primary update'><span class='glyphicon glyphicon-ok-sign'></span></a>
                        </div>
                        </div>
                        <input type = 'hidden' name='product_id[]' value='{x.MaSanPham}'/>
                        <input type = 'hidden' name='' value='{x.MaGioHang}'/>
                        <div class='col-md-2'><img class='img-responsive' src='product_images/{x.HinhSanPham}'></div>
                        <div class='col-md-2'>{x.TenSanPham}</div>
                        <div class='col-md-2'><input type = 'text' class='form-control qty' value='{x.SoLuong}' ></div>
                        <div class='col-md-2'><input type = 'text' class='form-control price' value='{x.GiaSanPham}' readonly='readonly'></div>
                        <div class='col-md-2'><input type = 'text' class='form-control total' value='{x.GiaSanPham}' readonly='readonly'></div>
                        </div>");
                }
                sb.Append(@"<div class='row'>
                    <div class='col-md-8'></div>
                    <div class='col-md-4'>
                    <b class='net_total' style='font-size:20px;'> </b>
                    </div>");

                if (HttpContext.Current.Session["uid"] == null)
                {
                    sb.Append(
                        "<input type='submit' style='float:right; ' name='login_user_with_product' onclick='submit()' class='btn btn-info btn-lg' value='Ready to Checkout' >");
                }
                else
                {
                    sb.Append(@"
                        <input type = 'hidden' name = 'cmd' value='_cart'>
                        <input type = 'hidden' name = 'business' value = '*****@*****.**' >
                        <input type = 'hidden' name = 'upload' value = '1' > ");

                    var collections = from p in Sp_BUS.GetAll()
                                      join g in GioHangBus.GetAll()
                                      on p.MaSp equals g.MaSp
                                      where g.MaKh == int.Parse(HttpContext.Current.Session["uid"].ToString())
                                      select new
                    {
                        MaSanPham   = p.MaSp,
                        TenSanPham  = p.TenSp,
                        GiaSanPham  = p.DonGia,
                        HinhSanPham = p.HinhSp,
                        g.MaGioHang,
                        g.SoLuong,
                        g.DiaChiIp,
                        g.MaKh
                    };
                    var i = 0;
                    foreach (var x in collections)
                    {
                        i++;
                        sb.Append($@"
                            <input type='hidden' name='item_name_{i}' value='{x.TenSanPham}'>
                            <input type = 'hidden' name = 'item_number_{i}' value = '{i}' >
                            <input type = 'hidden' name = 'amount_{i}' value = '{x.GiaSanPham}' >
                            <input type = 'hidden' name = 'quantity_{i}' value = '{x.SoLuong}' > ");
                    }

                    sb.Append(
                        $@"<input type='hidden' name='return' value='/GiaoDichThanhCong'/>

                        <input type = 'hidden' name = 'notify_url' value = '/GiaoDichThanhCong' >
     
                        <input type = 'hidden' name = 'cancel_return' value = '/GiaoDichThatBai' />
          
                        <input type = 'hidden' name = 'currency_code' value = 'USD' />
               
                        <input type = 'hidden' name = 'custom' value = '{HttpContext.Current.Session["uid"]}' />
                      
                        <input style = 'float:right;margin-right:80px;' type = 'image' name = 'submit'

                    src = 'https://www.paypalobjects.com/webstatic/en_US/i/btn/png/blue-rect-paypalcheckout-60px.png' alt = 'PayPal Checkout'

                    alt = 'PayPal - The safer, easier way to pay online' > ");
                }
            }


            return(sb.ToString());
        }
Exemplo n.º 5
0
 public ActionResult CapNhat(int SoLuong, int MaSanPham)
 {
     GioHangBus.CapNhat(SoLuong, MaSanPham, User.Identity.GetUserId());
     return(RedirectToAction("Index"));
 }
Exemplo n.º 6
0
 public ActionResult Them(int MaSanPham)
 {
     GioHangBus.Them(MaSanPham, User.Identity.GetUserId());
     return(RedirectToAction("Index"));
 }
Exemplo n.º 7
0
        // GET: GioHang
        public ActionResult Index()
        {
            string MaTaiKhoan = User.Identity.GetUserId();

            return(View(GioHangBus.DanhSach(MaTaiKhoan)));
        }