コード例 #1
0
        public async Task <IActionResult> PostDonhang([FromBody] Donhang donhang)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Donhang.Add(donhang);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (DonhangExists(donhang.MaDh))
                {
                    return(new StatusCodeResult(StatusCodes.Status409Conflict));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetDonhang", new { id = donhang.MaDh }, donhang));
        }
コード例 #2
0
        public void Create(Donhang_Model model)
        {
            var entity = new Donhang();

            entity.IDuser           = (int)(model.IDuser);
            entity.SDT              = model.SDT;
            entity.Hoten            = model.Hoten;
            entity.Mail             = model.Mail;
            entity.Diachi           = model.Diachi;
            entity.Tinh             = model.Tinh;
            entity.Huyen            = model.Huyen;
            entity.Xungho           = model.Xungho;
            entity.Hinhthucgiaohang = model.Hinhthucthanhtoan;
            entity.Goidichvu        = model.Goidichvu;
            entity.Tongtienhang     = Convert.ToDouble(model.Tongtienhang);
            entity.Thanhtoan        = Convert.ToDouble(model.Thanhtoan);
            entity.ngaydathang      = Convert.ToDateTime(model.ngaydathang);
            entity.KH                = model.KH;
            entity.Duyet             = model.Duyet;
            entity.Khuyenmai         = model.Khuyenmai;
            entity.Hinhthucthanhtoan = model.Hinhthucgiaohang;
            entity.GhiChuKhac        = model.GhiChuKhac;
            entity.Tiengiamgia       = (int)(model.Tiengiamgia);

            Connect_Enttity.Donhangs.Add(entity);
            Connect_Enttity.SaveChanges();
            //Dispose();
        }
コード例 #3
0
        public IActionResult GiaoHang(int Id)
        {
            IDonHang.GiaoHang(Id);
            Donhang   res = IDonHang.GetDonhang(Id);
            Khachhang _kh = IKhachHang.GetKhachHang(res.EmailKhachHang);

            try
            {
                var message = new MimeMessage();
                message.From.Add(new MailboxAddress("Thiên Ân", "*****@*****.**"));
                message.To.Add(new MailboxAddress(_kh.Ten, _kh.Email));
                message.Subject = "Thông báo cửa hàng Khoa Rau Củ: ";
                message.Body    = new TextPart("plain")
                {
                    Text = "Đơn Hàng Của Bạn Đang Trên Đường Vận Chuyển Tới Địa Chỉ : " + _kh.DiaChi + ". Vui Lòng Cho Chúng Tôi Biết Nếu Hàng Đã Tới Nơi."
                };
                using (var client = new SmtpClient())
                {
                    client.Connect("smtp.gmail.com", 587, false);
                    client.Authenticate("*****@*****.**", "Thienanbao0399");
                    client.Send(message);
                    client.Disconnect(true);
                }
            }
            catch (Exception ex)
            {
                ModelState.Clear();
                ViewBag.Message = $" Oops! We have a problem here {ex.Message}";
            }
            return(RedirectToAction("Index"));
        }
コード例 #4
0
        public void GiaoHang(int Id)
        {
            Donhang res = db.Donhang.Find(Id);

            res.TrangThai = 1;
            db.SaveChanges();
        }
コード例 #5
0
        public void HoanThanh(int Id)
        {
            Donhang e = db.Donhang.Find(Id);

            e.TrangThai = 2;
            db.SaveChanges();
            //update số lượng tiêu thụ chi tiết sản phẩm
            var ChiTietDonHang = db.Chitietdonhang.Where(p => p.Id == e.Id).ToList();

            foreach (Chitietdonhang item in ChiTietDonHang)
            {
                if (item.SoLuong != 0)
                {
                    Chitietsanpham up = db.Chitietsanpham.Where(p => p.IdSanPham == item.IdSanPham).FirstOrDefault();
                    up.SoLuongTieuThu = up.SoLuongTieuThu + item.SoLuong;
                    db.SaveChanges();
                    //check bảng thống kê
                    if (db.Thongkengay.Find(e.Ngay, item.IdSanPham) != null) // update
                    {
                        Thongkengay res = db.Thongkengay.Find(e.Ngay, item.IdSanPham);
                        res.SoLuongTieuThu = res.SoLuongTieuThu + item.SoLuong;
                        db.SaveChanges();
                    }
                    else // insert
                    {
                        Thongkengay res = new Thongkengay();
                        res.Ngay           = e.Ngay;
                        res.IdSanPham      = item.IdSanPham;
                        res.SoLuongTieuThu = item.SoLuong;
                        db.Thongkengay.Add(res);
                        db.SaveChanges();
                    }
                }
            }
        }
コード例 #6
0
        public void ChuaXuLy(int Id)
        {
            Donhang res = db.Donhang.Find(Id);

            res.TrangThai = 0;
            db.SaveChanges();
        }
コード例 #7
0
        public JsonResult themdonhang(Donhang dt)
        {
            string st = dhb.themdonhang(dt);

            dhb.xoa();
            return(Json(st, JsonRequestBehavior.AllowGet));
        }
コード例 #8
0
        public async Task <IActionResult> Cancel(string id)
        {
            HttpClient          client  = GetAPI("DonHangUrl");
            HttpResponseMessage respond = await client.GetAsync($"{pathDH}/{id}");

            if (!respond.IsSuccessStatusCode)
            {
                ModelState.AddModelError("", "Hủy đơn hàng thất bại!");
            }
            else
            {
                Donhang donhang = await respond.Content.ReadAsAsync <Donhang>();

                List <Chitietdonhang> chitietdonhang = GetChiTietDonHangAsync(donhang.MaDh).GetAwaiter().GetResult();
                foreach (var item in chitietdonhang)
                {
                    Sanpham sanpham = GetSanphamAsync(item.MaSp).GetAwaiter().GetResult();
                    CapNhatSLSanPhamAsync(sanpham, (int)item.SoLuong);
                    item.Status = 0;
                    capNhatChiTietDonHangAsync(item);
                }
                donhang.Status = 0;
                capNhatDonHangAsync(donhang);
            }

            return(RedirectToAction("Index", "DonHang"));
        }
コード例 #9
0
        public async Task <IActionResult> PutDonhang([FromRoute] string id, [FromBody] Donhang donhang)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != donhang.MaDh)
            {
                return(BadRequest());
            }

            _context.Entry(donhang).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DonhangExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #10
0
ファイル: checkoutBus.cs プロジェクト: huonghuong291019/doan3
        public void MuaHang(Khachhang kh, int thanhtien, List <CTDHang> ds, string diachigh, string sdtgh, int trangthai)
        {
            KhachhangdathangModel kdb = new KhachhangdathangModel();

            kdb.ThemKhach(kh);
            string       ngay  = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString();
            DonhangModel ddb   = new DonhangModel();
            string       MHMax = ddb.LayDonHangCungNgay(ngay);
            //xu ly sinh ma hoa don theo quy tac
            string ma = SinhMa(MHMax, ngay);
            //end
            Donhang dh = new Donhang();

            dh.madonhang = ma;
            dh.makh      = sdtgh;
            dh.diachigh  = diachigh;
            dh.sdtgh     = sdtgh;
            dh.ngaytao   = DateTime.Now.ToString();
            dh.thanhtien = thanhtien;
            ddb.ThemDonHang(dh);
            ChiTietDonHangModel cdb = new ChiTietDonHangModel();

            foreach (CTDHang ct in ds)
            {
                ct.MaDHang = ma;
            }
            cdb.LuuDanhSachCTDH(ds);
        }
コード例 #11
0
        public void UpdatePhuongThuc(int?Id, string phuongthuc)
        {
            Donhang res = getDonHang(Id);

            res.PhuongThucThanhToan = phuongthuc;
            db.Donhang.Update(res);
            db.SaveChanges();
        }
コード例 #12
0
        public ActionResult DeleteConfirmed(string id)
        {
            Donhang donhang = db.Donhangs.Find(id);

            db.Donhangs.Remove(donhang);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #13
0
        public void UpdateDescription(int?Id, string description)
        {
            Donhang res = getDonHang(Id);

            res.Description = description;
            db.Donhang.Update(res);
            db.SaveChanges();
        }
コード例 #14
0
        public void removeDonHang(int Id)
        {
            Donhang res = getDonHang(Id);

            db.Remove(res);
            db.SaveChanges();
            //throw new NotImplementedException();
        }
コード例 #15
0
 public ActionResult Edit([Bind(Include = "Madonhang,Chitiethang,Ngaydathang")] Donhang donhang)
 {
     if (ModelState.IsValid)
     {
         db.Entry(donhang).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(donhang));
 }
コード例 #16
0
 public ActionResult Edit([Bind(Include = "MaDH,GiatriDH,TinhtrangDH,Ghichu")] Donhang donhang)
 {
     if (ModelState.IsValid)
     {
         db.Entry(donhang).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(donhang));
 }
コード例 #17
0
ファイル: DonhangsController.cs プロジェクト: duongab/QLBS
 public ActionResult Edit([Bind(Include = "madh,tinhtrangdonhang,ngaydat,ngaygiao")] Donhang donhang)
 {
     if (ModelState.IsValid)
     {
         db.Entry(donhang).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(donhang));
 }
コード例 #18
0
        public ActionResult Create([Bind(Include = "Madonhang,Chitiethang,Ngaydathang")] Donhang donhang)
        {
            if (ModelState.IsValid)
            {
                db.Donhangs.Add(donhang);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(donhang));
        }
コード例 #19
0
ファイル: Database.cs プロジェクト: SpicyNoodle1267/AppMuaBan
 public Task <int> SaveDonhangAsync(Donhang DH)
 {
     if (DH.ID != 0)
     {
         return(_database.UpdateAsync(DH));
     }
     else
     {
         return(_database.InsertAsync(DH));
     }
 }
コード例 #20
0
ファイル: DonhangsController.cs プロジェクト: duongab/BTL
 public ActionResult Edit([Bind(Include = "madh,tinhtrangdonhang,ngaydat,ngaygiao,makh")] Donhang donhang)
 {
     if (ModelState.IsValid)
     {
         db.Entry(donhang).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.makh = new SelectList(db.Khachhangs, "makh", "tenkh", donhang.makh);
     return(View(donhang));
 }
コード例 #21
0
ファイル: DonhangsController.cs プロジェクト: duongab/QLBS
        public ActionResult Create([Bind(Include = "madh,tinhtrangdonhang,ngaydat,ngaygiao")] Donhang donhang)
        {
            if (ModelState.IsValid)
            {
                db.Donhangs.Add(donhang);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(donhang));
        }
コード例 #22
0
        public ActionResult Create([Bind(Include = "MaDH,GiatriDH,TinhtrangDH,Ghichu")] Donhang donhang)
        {
            if (ModelState.IsValid)
            {
                db.Donhangs.Add(donhang);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(donhang));
        }
コード例 #23
0
        public IActionResult Payment(string mobile, string address, string email)
        {
            var userName = HttpContext.Session.GetString("userName");

            if (userName != null && userName != "")
            {
                Donhang donhang = new Donhang();
                donhang.NgayTao     = DateTime.Now;
                donhang.ShipAddress = address;
                donhang.ShipMobile  = mobile;
                var maDh = GetMaDHAsync().GetAwaiter().GetResult();
                donhang.MaDh        = maDh;
                donhang.Status      = 1;
                donhang.TaiKhoan    = userName;
                donhang.DaThanhToan = 0;
                //Xong tao chi tiet don hang
                int TongTien = 0;
                var cart     = HttpContext.Session.GetComplexData <List <CartItem> >(CartSession);
                foreach (var item in cart)
                {
                    //Kiem tra so luong trc khi them don hang
                    Sanpham sanpham = GetSanphamAsync(item.SP.MaSp).GetAwaiter().GetResult();
                    if (sanpham.SoLuongTon >= item.SoLuong)
                    {
                        Chitietdonhang chitetdh = new Chitietdonhang();
                        chitetdh.MaDh      = maDh;
                        chitetdh.MaSp      = item.SP.MaSp;
                        chitetdh.SoLuong   = item.SoLuong;
                        chitetdh.ThanhTien = item.SP.GiaBanLe * item.SoLuong;
                        chitetdh.Status    = 1;
                        TongTien          += (int)chitetdh.ThanhTien;
                        taoChiTietDHAsync(chitetdh);
                        CapNhatSLSanPhamAsync(sanpham, item.SoLuong);
                    }
                    else
                    {
                        ModelState.AddModelError("", "Sản phần không đủ số lượng!");
                    }
                }

                donhang.TongTien = TongTien;
                taoDonHangAsync(donhang);
                HttpContext.Session.Remove(CartSession);
            }
            else
            {
                return(RedirectToAction("dangnhap", "home", ""));
            }

            return(RedirectToAction("ThanhCong"));
        }
コード例 #24
0
        // GET: Donhangs/Delete/5
        public ActionResult Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Donhang donhang = db.Donhangs.Find(id);

            if (donhang == null)
            {
                return(HttpNotFound());
            }
            return(View(donhang));
        }
コード例 #25
0
ファイル: DonhangsController.cs プロジェクト: duongab/BTL
        // GET: Donhangs/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Donhang donhang = db.Donhangs.Find(id);

            if (donhang == null)
            {
                return(HttpNotFound());
            }
            ViewBag.makh = new SelectList(db.Khachhangs, "makh", "tenkh", donhang.makh);
            return(View(donhang));
        }
コード例 #26
0
        public void AddKhachHang(Khachhang KhachHang, int?Id)
        {
            if (GetKhachHang(KhachHang.Email) == null)
            {
                db.Khachhang.Add(KhachHang);
                db.SaveChanges();
            }
            else
            {
                UpdateKhachHang(KhachHang);
            }
            //update đơn hàng
            Donhang e = db.Donhang.Where(p => p.Id == Id).FirstOrDefault();

            e.EmailKhachHang = KhachHang.Email;
            db.SaveChanges();
            // update số lượng tiêu thụ chi tiết sản phẩm
            //var ChiTietDonHang = db.Chitietdonhang.Where(p => p.Id == e.Id).ToList();
            //foreach(Chitietdonhang item in ChiTietDonHang)
            //{
            //    if (item.SoLuong != 0)
            //    {
            //        Chitietsanpham up = db.Chitietsanpham.Where(p => p.IdSanPham == item.IdSanPham).FirstOrDefault();
            //        up.SoLuongTieuThu = up.SoLuongTieuThu + item.SoLuong;
            //        db.SaveChanges();
            //        //check bảng thống kê
            //        if (db.Thongkengay.Find(e.Ngay, item.IdSanPham) != null) // update
            //        {
            //            Thongkengay res = db.Thongkengay.Find(e.Ngay, item.IdSanPham);
            //            res.SoLuongTieuThu = res.SoLuongTieuThu + item.SoLuong;
            //            db.SaveChanges();
            //        }
            //        else // insert
            //        {
            //            Thongkengay res = new Thongkengay();
            //            res.Ngay = e.Ngay;
            //            res.IdSanPham = item.IdSanPham;
            //            res.SoLuongTieuThu = item.SoLuong;
            //            db.Thongkengay.Add(res);
            //            db.SaveChanges();
            //        }
            //    }
            //}
        }
コード例 #27
0
ファイル: DonHangDAL.cs プロジェクト: phuonggthaotran/moi
        public List <Donhang> Tolist(DataTable dt)
        {
            List <Donhang> dh = new List <Donhang>();

            foreach (DataRow dr in dt.Rows)
            {
                Donhang d = new Donhang();
                d.id               = Convert.ToInt32(dr[0]);
                d.name             = Convert.ToString(dr[1]);
                d.quantity         = Convert.ToInt32(dr[2]);
                d.price            = Convert.ToInt32(dr[3]);
                d.address_shipping = Convert.ToString(dr[4]);
                d.phone_number     = Convert.ToString(dr[5]);
                d.email            = Convert.ToString(dr[6]);
                d.total            = Convert.ToInt32(dr[7]);
                d.status           = Convert.ToString(dr[8]);
                d.date             = Convert.ToString(dr[9]);
                dh.Add(d);
            }
            return(dh);
        }
コード例 #28
0
        public IActionResult Start()
        {
            Random rand = new Random();
            int    sess = rand.Next(1, 9) * 100000 + rand.Next(0, 9) * 10000 + rand.Next(0, 9) * 1000 + rand.Next(0, 9) * 100 + rand.Next(0, 9) * 10 + rand.Next(0, 9);

            HttpContext.Session.SetInt32("Id", sess);

            // ADD DON HANG
            Donhang dh = new Donhang();

            dh.Id = HttpContext.Session.GetInt32("Id");
            DateTime now = DateTime.Now;

            dh.Ngay                = now;
            dh.TrangThai           = 0;
            dh.EmailKhachHang      = "not";
            dh.PhuongThucThanhToan = "None";
            dh.Description         = "null";
            _Donhang.addDonHang(dh);

            // ADD CHI TIET DON HANG
            Chitietdonhang        ctdh  = new Chitietdonhang();;
            IEnumerable <Sanpham> list  = _Sanpham.GetSanPhams;
            List <Sanpham>        listt = list.ToList();

            foreach (Sanpham l in listt)
            {
                ctdh.Id        = HttpContext.Session.GetInt32("Id");
                ctdh.IdSanPham = l.Id;
                ctdh.SoLuong   = 0;
                ctdh.Gia       = 0;
                _Donhang.addChiTietDonHang(ctdh);
            }

            //getSession();
            return(RedirectToAction("Index", "Home", new { area = "" }));
        }
コード例 #29
0
        public async Task <IActionResult> ThanhToan(string id)
        {
            HttpClient          client  = GetAPI("DonHangUrl");
            HttpResponseMessage respond = await client.GetAsync($"{pathDH}/{id}");

            if (!respond.IsSuccessStatusCode)
            {
                ModelState.AddModelError("", "Mã đơn hàng không tồn tại!");
            }
            else
            {
                Donhang donhang = await respond.Content.ReadAsAsync <Donhang>();

                donhang.DaThanhToan = 1;
                HttpResponseMessage result = await client.PutAsJsonAsync($"{pathDH}/{id}", donhang);

                if (!result.IsSuccessStatusCode)
                {
                    ModelState.AddModelError("", "Quá trình thanh toán đã thất bại!");
                }
            }

            return(RedirectToAction("Index"));
        }
コード例 #30
0
ファイル: Database.cs プロジェクト: SpicyNoodle1267/AppMuaBan
 public Task <int> DeleteDonhangAsync(Donhang DH)
 {
     return(_database.DeleteAsync(DH));
 }