private void PreLoadFTData()
        {
            var hotelId = UserContext.CurrentUser.HotelId;

            if (!_ft_isLoaded)
            {
                _ft_isLoaded           = true;
                _ft_rooms              = RoomBll.GetListBy(hotelId);
                _ft_roomregs           = RoomRegBll.GetListByHotelId(hotelId);
                _ft_members            = MemberBll.GetList(hotelId);
                _ft_membersType        = MemberTypeBll.GetList(hotelId);
                _ft_RoomRegGuestInfoCN = RoomRegGuestInfoCNBll.GetListByHotelId(hotelId);
                _ft_RoomRegGuestInfoEN = RoomRegGuestInfoENBll.GetListByHotelId(hotelId);
                _ft_MaterialLease      = MaterialLeaseBll.GetListByHotel(hotelId);
                _ft_RoomType           = RoomTypeBll.GetListByHotelId(hotelId);
                _ft_RoomYdRecord       = RoomYdRecordBll.GetListByHotel(hotelId);
                _ft_GlobalFeeSet       = GlobalFeeSetBll.GetByHotelId(hotelId);
                _ft_MaintainRoom       = MaintainRoomBll.GetListByHotelId(hotelId);
                _ft_RoomSelfuse        = RoomSelfBll.GetListByHotelId(hotelId);
                _ft_RoomYD             = RoomYdBll.GetListByHotel(hotelId);
                _ft_RoomSet            = RoomSetBll.GetBy(hotelId);
                if (_ft_RoomSet == null)
                {
                    _ft_RoomSet = RoomSetBll.GetBy(0);
                }
            }
        }
        // GET: RoomRegJfyh
        public ActionResult Index(long roomRegId, long itemId = 0)
        {
            //获取前台优惠限额
            var hotelId = UserContext.CurrentUser.HotelId;
            var roomReg = RoomRegBll.GetById(roomRegId);

            if (roomReg == null)
            {
                return(Content("房间登记数据不存在"));
            }
            if (roomReg.CustomerType != 3)
            {
                return(Content("登记客人非会员,不可操作"));
            }
            if (string.IsNullOrWhiteSpace(roomReg.MemCompId))
            {
                return(Content("房间登记未选择会员"));
            }
            var member = MemberBll.GetById(long.Parse(roomReg.MemCompId));

            if (member == null)
            {
                return(Content("会员不存在"));
            }
            var memType = MemberTypeBll.GetById(member.MemberTypeId);

            if (memType == null)
            {
                memType = new MemberType();
            }
            ViewBag.MemberType = memType;
            if (itemId == 0)
            {
                //新增
                return(View(new RoomRegJfyh()
                {
                    HotelId = hotelId,
                    Name = member.Name,
                    Sex = member.Sex,
                    Birth = member.Birth.ToString("yyyy-MM-dd"),
                    RoomRegId = roomRegId,
                    KyExp = (int)member.Exp
                }));
            }
            else
            {
                //修改
                var model = RoomRegJfyhBll.GetById(itemId);
                if (model == null)
                {
                    model = new RoomRegJfyh();
                }
                return(View(model));
            }
        }
        //绑定下拉框数据的方法
        private void LoadMemberTypeByDelFlag(int p)
        {
            MemberTypeBll     mtBll = new MemberTypeBll();
            List <MemberType> list  = mtBll.GetAllMemberTypeByDelFlag(p);

            list.Insert(0, new MemberType()
            {
                MemTypeName = "请选择", MemType = -1
            });
            cmbType.DataSource    = list;          //绑定数据
            cmbType.DisplayMember = "MemTypeName"; //显示的值
            cmbType.ValueMember   = "MemType";     //实际保存的值
        }
        public ActionResult Edit(long id = 0)
        {
            var hotelId = UserContext.CurrentUser.HotelId;

            ViewBag.HotelId = hotelId;

            if (id == 0)
            {
                return(View(new MemberType()));
            }
            var info = MemberTypeBll.GetById(id);

            return(View(info));
        }
        // GET: MemberTypeSale
        public ActionResult Index()
        {
            var hotelId = UserContext.CurrentUser.HotelId;
            ViewBag.HotelId = hotelId;

            var memberTypeList = MemberTypeBll.GetList(hotelId);
            if (memberTypeList != null && memberTypeList.Count > 0)
            {
                ViewBag.MemberTypeId = memberTypeList[0].Id;
            }
            else
            {
                ViewBag.MemberTypeId = 0;
            }

            return View();
        }
        public ActionResult Delete(long id)
        {
            var apiResult = new APIResult();

            try
            {
                MemberTypeBll.DeleteById(id);
            }
            catch (Exception ex)
            {
                apiResult.Ret = -1;
                apiResult.Msg = ex.Message;
                if (!(ex is OperationExceptionFacade))
                {
                    LogFactory.GetLogger().Log(LogLevel.Error, ex);
                }
            }
            return(Json(apiResult));
        }
        public JsonResult Edit(MemberType model)
        {
            var apiResult = new APIResult();

            try
            {
                MemberTypeBll.AddOrUpdate(model, UserContext.CurrentUser.HotelId);
            }
            catch (Exception ex)
            {
                apiResult.Ret = -1;
                apiResult.Msg = ex.Message;
                if (!(ex is OperationExceptionFacade))
                {
                    LogFactory.GetLogger().Log(LogLevel.Error, ex);
                }
            }

            return(Json(apiResult));
        }
        public string GetList()
        {
            var models = MemberTypeBll.GetList(UserContext.CurrentUser.HotelId);

            return(JsonConvert.SerializeObject(models));
        }