public IActionResult Edit(int?id)
        {
            if (KiemTraDangNhap() == false)
            {
                return(View("../Login/Index"));
            }

            if (id == null)
            {
                return(RedirectToAction("Index"));
            }
            PhieuDatBanDTO pDTO = _services.GetById(id.Value);

            if (pDTO == null)
            {
                return(RedirectToAction("Index"));
            }

            SavePhieuDatBanDTO savePhieuDatBanDTO = _mapper.Map <PhieuDatBanDTO, SavePhieuDatBanDTO>(pDTO);
            KhachHang          kh = _services.GetKhachHang(savePhieuDatBanDTO.IdKhachHang);

            ViewBag.TenKhachHang = kh.Ten;

            NguoiDung nguoiDung = _services.GetNguoiDung(savePhieuDatBanDTO.IdUser);

            ViewBag.TenUser = nguoiDung.Ten;

            PhieuDatBanVM vm = new PhieuDatBanVM
            {
                PhieuDatBan = savePhieuDatBanDTO,
                BanAns      = _services.GetListBanAn()
            };

            return(View(vm));
        }
Exemplo n.º 2
0
        public bool Update(SavePhieuDatBanDTO SavePhieuDatBanDTO)
        {
            PhieuDatBan p = _mapper.Map <SavePhieuDatBanDTO, PhieuDatBan>(SavePhieuDatBanDTO);
            IEnumerable <PhieuDatBan> listp = _unitOfWork.PhieuDatBans.Find(s => s.Id != p.Id && s.TrangThai == "Chưa xử lý");
            DateTime pCong3h = p.ThoiGianDat + new TimeSpan(0, 3, 0, 0);

            foreach (PhieuDatBan phieu in listp)
            {
                TimeSpan aInterval = new System.TimeSpan(0, 3, 0, 0);
                // cộng một khoảng thời gian.
                DateTime ThoiGianPCongThem = phieu.ThoiGianDat.Add(aInterval);

                if (phieu.IdBanAn == p.IdBanAn && ((DateTime.Compare(pCong3h, phieu.ThoiGianDat) >= 0 && DateTime.Compare(pCong3h, ThoiGianPCongThem) <= 0) || (DateTime.Compare(p.ThoiGianDat, ThoiGianPCongThem) <= 0 && DateTime.Compare(p.ThoiGianDat, phieu.ThoiGianDat) >= 0)))
                {
                    return(false);
                }
            }

            // cập nhật trạng thái bàn ăn sau khi sửa bàn ăn khác trong phiếu đặt bàn
            // update bàn ăn cũ
            int   IdBanAnPhieuCu = _unitOfWork.PhieuDatBans.GetIdBanAn(p.Id);
            BanAn banAnCu        = _unitOfWork.BanAns.GetById(IdBanAnPhieuCu);

            banAnCu.TrangThai = "Trống";
            _unitOfWork.BanAns.Update(banAnCu);

            // update bàn ăn mới
            _unitOfWork.PhieuDatBans.UpdateBanAnCuaPhieuDatBanInTimeNow(p);

            _unitOfWork.PhieuDatBans.Update(p);
            _unitOfWork.Complete();

            return(true);
        }
Exemplo n.º 3
0
        public int Add(SavePhieuDatBanDTO SavePhieuDatBanDTO)
        {
            PhieuDatBan p = _mapper.Map <SavePhieuDatBanDTO, PhieuDatBan>(SavePhieuDatBanDTO);
            int         i = _unitOfWork.PhieuDatBans.ThemPhieuDatBan(p);

            if (i == 1)
            {
                _unitOfWork.Complete();
                return(1);
            }
            else if (i == -2)
            {
                return(-2);
            }
            else if (i == 0)
            {
                return(0);
            }
            else
            {
                return(-1); //trạng thái của bàn là Đang phục vụ
            }
        }
        public IActionResult Delete(int?Id)
        {
            if (KiemTraDangNhap() == false)
            {
                return(View("../Login/Index"));
            }
            if (Id == null)
            {
                return(RedirectToAction("Index"));
            }
            PhieuDatBanDTO pDTO = _services.GetById(Id.Value);

            if (pDTO == null)
            {
                return(RedirectToAction("Index"));
            }
            SavePhieuDatBanDTO savePhieuDatBanDTO = _mapper.Map <PhieuDatBanDTO, SavePhieuDatBanDTO>(pDTO);
            KhachHang          kh        = _services.GetKhachHang(savePhieuDatBanDTO.IdKhachHang);
            NguoiDung          nguoiDung = _services.GetNguoiDung(savePhieuDatBanDTO.IdUser);

            ViewBag.TenUser      = nguoiDung.Ten;
            ViewBag.TenKhachHang = kh.Ten;
            return(View(savePhieuDatBanDTO));
        }
        public IActionResult Create(PhieuDatBanVM vm)
        {
            if (KiemTraDangNhap() == false)
            {
                return(View("../Login/Index"));
            }

            SavePhieuDatBanDTO p = new SavePhieuDatBanDTO
            {
                IdBanAn     = vm.PhieuDatBan.IdBanAn,
                IdKhachHang = vm.PhieuDatBan.IdKhachHang,
                IdUser      = vm.PhieuDatBan.IdUser,
                ThoiGianDat = vm.PhieuDatBan.ThoiGianDat,
                GhiChu      = vm.PhieuDatBan.GhiChu
            };
            int i = _services.Add(p);

            if (i == -2)
            {
                ViewBag.MessagePhieuDatBan = "Khách hàng này không tồn tại";
                System.DateTime day = DateTime.Now;
                vm = new PhieuDatBanVM
                {
                    PhieuDatBan = new SavePhieuDatBanDTO
                    {
                        IdBanAn     = vm.PhieuDatBan.IdBanAn,
                        IdKhachHang = p.IdKhachHang,
                        IdUser      = vm.PhieuDatBan.IdUser,
                        ThoiGianDat = Convert.ToDateTime(day),
                        GhiChu      = vm.PhieuDatBan.GhiChu,
                    },
                    BanAns     = _services.GetListBanAn(),
                    KhachHangs = _services.GetListKH()
                };
                return(View(vm));
            }
            if (i == 0)
            {
                ViewBag.MessagePhieuDatBan = "Bàn này đã có người đặt";
                System.DateTime day = DateTime.Now;
                vm = new PhieuDatBanVM
                {
                    PhieuDatBan = new SavePhieuDatBanDTO
                    {
                        IdBanAn     = vm.PhieuDatBan.IdBanAn,
                        IdKhachHang = p.IdKhachHang,
                        IdUser      = vm.PhieuDatBan.IdUser,
                        ThoiGianDat = Convert.ToDateTime(day),
                        GhiChu      = vm.PhieuDatBan.GhiChu,
                    },
                    BanAns     = _services.GetListBanAn(),
                    KhachHangs = _services.GetListKH()
                };
                return(View(vm));
            }
            else if (i == -1)
            {
                ViewBag.MessagePhieuDatBan = "Bàn này đang được phục vụ";
                System.DateTime day = DateTime.Now;
                vm = new PhieuDatBanVM
                {
                    PhieuDatBan = new SavePhieuDatBanDTO
                    {
                        IdBanAn     = vm.PhieuDatBan.IdBanAn,
                        IdKhachHang = p.IdKhachHang,
                        IdUser      = vm.PhieuDatBan.IdUser,
                        ThoiGianDat = Convert.ToDateTime(day),
                        GhiChu      = vm.PhieuDatBan.GhiChu,
                    },
                    BanAns     = _services.GetListBanAn(),
                    KhachHangs = _services.GetListKH()
                };
                return(View(vm));
            }
            return(RedirectToAction("Index"));
        }