Exemple #1
0
        /// <summary>
        /// 根据查询条件获取当天预定列表
        /// </summary>
        /// <param name="req"></param>
        /// <returns></returns>
        public ActionResult GetChoseTables(TableChoseSearchDTO req)
        {
            Response res = new Response();

            res.Data = TableRepository.GetReseverChoseList(req);
            return(Json(res, JsonRequestBehavior.AllowGet));
        }
Exemple #2
0
        public ActionResult ChoseTable(TableChoseSearchDTO req)
        {
            var areas = _areaRepository.GetList(req.RestaurantId);

            ViewBag.Paras = req;
            ViewBag.Areas = areas;
            return(View());
        }
Exemple #3
0
        public ActionResult OpenChoseTable(TableChoseSearchDTO req)
        {
            var areas = _areaRepository.GetList(req.RestaurantId);

            req.CythStatus = Domain.Restaurant.Model.CythStatus.空置;
            ViewBag.Paras  = req;
            ViewBag.Areas  = areas;
            return(View());
        }
Exemple #4
0
        public ActionResult GetReseverChoseTables(TableChoseSearchDTO req)
        {
            var tables = TableRepository.GetReseverChoseList(req);
            var areas  = AreaRepository.GetList(req.RestaurantId);

            return(Json(new
            {
                areas = areas,
                tables = tables
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #5
0
        public List <TableListDTO> GetReseverChoseList(TableChoseSearchDTO req)
        {
            using (var db = new SqlSugarClient(Connection))
            {
                string date = req.ReverDate.ToString("yyyyMMdd");
                List <TableListDTO> list = new List <TableListDTO>();

                var data = db.Sqlable().From <R_Table>("s1");

                if (req.RestaurantId > 0)
                {
                    data = data.Where("s1.R_Restaurant_Id=" + req.RestaurantId);
                }

                if (req.AreaId > 0)
                {
                    data = data.Where("s1.R_Area_Id=" + req.AreaId);
                }
                data = data.Where("s1.IsDelete=0");
                list = data.SelectToList <TableListDTO>("s1.*,s1.R_Area_Id as AreaId");

                //取已存在的预订记录
                var records = db.SqlQuery <BookingTableDTO>($@"
                    select p2.R_Table_Id as TableId, p2.R_Order_Id as OrderId, p1.R_Market_Id as MarketId,
                           convert(varchar(8), p1.ReserveDate, 112) as BookingDate 
                    from R_Order p1
                    inner join R_OrderTable p2 on p1.Id=p2.R_Order_Id
                    where p1.CyddStatus={(int)CyddStatus.预定} and p1.R_Market_Id={req.Market}
                          and convert(varchar(8), p1.ReserveDate, 112) = '{date}'");

                var ids = records.Select(x => x.TableId).ToArray();
                if (req.CurrentReservedOrderId > 0)//过滤非当前预订单关联的TableId
                {
                    ids = records
                          .Where(x => x.OrderId != req.CurrentReservedOrderId)
                          .Select(x => x.TableId).ToArray();
                }

                list = list.Where(x => !ids.Contains(x.Id)).ToList();
                return(list);
            }
        }