public ActionResult GetFullData(long[] RoomIds) { var hotelId = UserContext.CurrentUser.HotelId; if (RoomIds.Length > 0) { return(GetFullData2(RoomIds)); } var rooms = new List <object>(); foreach (var RoomId in RoomIds) { var item = RoomBll.GetById(RoomId); if (item.RoomRegId != 0) { item.RoomReg = RoomRegBll.GetById(item.RoomRegId); } LoadRoomInfo(item); // var sroom = RoomToSRoom(item); rooms.Add(RoomToSRoom(item)); } return(Content(JsonConvert.SerializeObject(new { Rooms = rooms }))); }
/// <summary> /// 房间留言 /// </summary> /// <param name="roomId"></param> /// <returns></returns> public ActionResult _SelMessage(long roomId) { var hotelId = UserContext.CurrentUser.HotelId; ViewBag.HotelId = hotelId; ViewBag.RoomId = roomId; var room = RoomBll.GetById(roomId); if (room != null) { var msg = RoomBll.GetMessage(roomId); if (msg == null) { msg = new RoomMessage(); } ViewBag.Message = msg; ViewBag.RoomRegId = room.RoomRegId; ViewBag.Room = room; ViewBag.RoomReg = RoomRegBll.GetById(room.RoomRegId); } else { ViewBag.Message = new RoomMessage(); ViewBag.Room = new Hotel.Model.Room(); ViewBag.RoomRegId = 0; ViewBag.RoomReg = new Hotel.Model.RoomReg(); } return(View()); }
public ActionResult GetRoomShowData(long roomId) { var apiResult = new APIResult(); var hotelId = UserContext.CurrentUser.HotelId; try { var item = RoomBll.GetById(roomId); if (item.RoomRegId != 0) { item.RoomReg = RoomRegBll.GetById(item.RoomRegId); } LoadRoomInfo(item); return(Json(RoomToSRoom(item))); } catch (Exception ex) { apiResult.Ret = -1; apiResult.Msg = ex.Message; if (!(ex is OperationExceptionFacade)) { LogFactory.GetLogger().Log(LogLevel.Error, ex); } } return(Json(apiResult)); }
public ActionResult ChangeRoom(long roomId, long roomRegId = 0) { var hotelId = UserContext.CurrentUser.HotelId; if (roomRegId != 0) { ViewBag.RoomRegId = roomRegId; var rg = RoomRegBll.GetById(roomRegId); ViewBag.RoomId = rg.RoomId; } else { ViewBag.RoomId = roomId; var model = RoomBll.GetById(roomId); if (model == null) { model = new Room(); } ViewBag.RoomRegId = model.RoomRegId; } return(View(UserContext.CurrentUser)); }
/// <summary> /// 选择特邀说明 /// </summary> /// <param name="roomId"></param> /// <returns></returns> public ActionResult _SelTysm(long roomRegId) { var tysmList = new List <Tysm>(); tysmList = TysmBll.GetList(UserContext.CurrentUser.HotelId); if (tysmList == null) { tysmList = new List <Tysm>(); } if (tysmList.Count > 0) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg != null) { string tysmids = roomReg.TysmIds; if (!string.IsNullOrWhiteSpace(tysmids)) { var tysmidArr = tysmids.Replace(',', ',').Split(','); foreach (var tysmid in tysmidArr) { tysmList.ForEach(m => { if (m.Id.ToString() == tysmid) { m.IsCheck = true; } }); } } } } return(View(tysmList)); }
public ActionResult Input(long roomRegId) { ViewBag.HotelId = UserContext.CurrentUser.HotelId; ViewBag.RoomRegId = roomRegId; ViewBag.Room = RoomRegBll.GetById(roomRegId); return(View()); }
// 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)); } }
public string GetYjSet(long roomRegId) { var hotelId = UserContext.CurrentUser.HotelId; var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { return(JsonConvert.SerializeObject(new { code = -1, msg = "房间未登记,不可操作" })); } var model = RoomRegYjBll.GetBy(roomReg.Id); return(JsonConvert.SerializeObject(new { code = 0, data = model })); }
public RoomRegZzwHelp getthis(long roomRegId) { var lflist = new List <Model.RoomReg>(); var treeList = RoomRegBll.GetLfTree(roomRegId, UserContext.CurrentUser.HotelId, ref lflist); var roomReg = new Model.RoomReg(); decimal yszk = 0, yuszk = 0, yjs = 0, zfy = 0, zstk = 0, jy = 0, bfsk = 0; if (treeList.Count > 0) { //roomRegId = long.Parse(treeList[0].id); //获取房间的登记信息 roomReg = RoomRegBll.GetById(roomRegId); if (roomReg != null) { yszk += roomReg.Yszk; yuszk += roomReg.Yuszk; yjs += roomReg.Yjs; zfy += roomReg.Money; zstk += roomReg.Zstk; jy += roomReg.Jy; bfsk += roomReg.YeBfSkMoney + roomReg.FyeBfSkMoney; } ViewBag.RoomReg = roomReg; //获取所有联房的房间的财务汇总 for (var i = 1; i < treeList.Count; i++) { var item = RoomRegBll.GetById(long.Parse(treeList[i].id)); if (item != null) { yszk += item.Yszk; yuszk += item.Yuszk; yjs += item.Yjs; zfy += item.Money; zstk += item.Zstk; jy += item.Jy; bfsk += item.YeBfSkMoney + item.FyeBfSkMoney; } } } RoomRegZzwHelp rrom = new RoomRegZzwHelp() { yszk = yszk, yuszk = yuszk, yjs = yjs, zfy = zfy, zstk = zstk, jy = jy, bfsk = bfsk }; return(rrom); }
// GET: Invoice public ActionResult Index(long roomRegId) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg(); } var model = new Invoice() { Id = 0, RoomRegId = roomReg.Id, DjdanNum = roomReg.DanJuNum, RoomNO = roomReg.RoomNO }; ViewBag.RoomReg = roomReg; return(View(model)); }
public ActionResult IndexYd(long roomRegId) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg() { Id = roomRegId } } ; ViewBag.RoomReg = roomReg; ViewBag.HotelId = UserContext.CurrentUser.HotelId; return(View()); }
// GET: XfCommission public ActionResult Index(long roomRegId) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg(); } var model = new XfCommission() { Id = 0, RoomRegId = roomReg.Id, DjdanNum = roomReg.DanJuNum, RoomNO = roomReg.RoomNO }; ViewBag.RoomRegId = roomRegId; ViewBag.HotelId = UserContext.CurrentUser.HotelId;; return(View(model)); }
// GET: RoomRegGoods /// <summary> /// 商品费用只做新增 /// </summary> /// <param name="roomRegId"></param> /// <returns></returns> public ActionResult Index(long roomRegId, long itemId = 0) { if (itemId == 0) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg(); } var model = new RoomRegGoods() { Id = 0, RoomRegId = roomRegId, RoomNO = roomReg.RoomNO, Name = roomReg.Name, Sex = roomReg.Sex }; ////绑定商品分类表格 var details = RoomRegGoodsDetailsBll.GetDetails(UserContext.CurrentUser.HotelId); //绑定商品列表 //再生 保命 舍生 灵敏 + 铁壁 反震 //ViewBag.Details = new List<RoomRegGoodsDetails>(); ViewBag.Details = details; return(View(model)); } else { var detail = RoomRegGoodsDetailsBll.SingleOrDefault(itemId); //获取主表数据 var model = new RoomRegGoods(); if (detail != null) { model = RoomRegGoodsBll.SingleOrDefault(detail.ZbId); } if (model == null) { model = new RoomRegGoods(); } //绑定商品分类表格 var details = RoomRegGoodsDetailsBll.GetDetails(UserContext.CurrentUser.HotelId, model.Id); ViewBag.Details = details; return(View(model)); } }
public ActionResult Index2(long roomRegId = 0) { var RoomNO = ""; if (roomRegId != 0) { var room = RoomRegBll.GetById(roomRegId); RoomNO = room.RoomNO; } var model = new RoomRegQtfy() { RoomRegId = roomRegId, RoomNO = RoomNO, FsTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm") }; return(View(model)); }
public string BatchRoomList(int page, int rows, long buildId, long floorId, string roomNO, string changeType) { var models = RoomBll.GetPager(page, rows, UserContext.CurrentUser.HotelId, buildId, floorId, roomNO, changeType); foreach (var item in models.rows) { if (item.RoomRegId != 0) { item.RoomReg = RoomRegBll.GetById(item.RoomRegId); } LoadRoomInfo2(item); } return(JsonConvert.SerializeObject(models)); }
/// <summary> /// 续住时获取预离时间 /// </summary> /// <returns></returns> public string GetYlTimeForXz(long roomRegId, int xzDays) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "房间登记数据不存在" })); } if (roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.全天房 && roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.长包房 && roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.免费房) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "只有【全天房、长包房、免费房】才可续住" })); } var globalFeeSet = GlobalFeeSetBll.GetByHotelId(UserContext.CurrentUser.HotelId); var now = TypeConvert.IntToDateTime(roomReg.RegTime); if (globalFeeSet == null) { return(JsonConvert.SerializeObject(new { Ret = 0, YlTime = "" })); } var yltime = now; //如果是6点,那么当天6点之后开的房间就是第二天中午退房,0点到6点开房就是当天中午退房 if (now.Hour >= 0 && now.Hour <= globalFeeSet.QTAfterPointToNextDay) { //当天中午退房 yltime = now.Date.AddDays(xzDays - 1).AddHours(globalFeeSet.QTExitPoint); } else { //第二天中午退房 yltime = now.Date.AddDays(1 + (xzDays - 1)).AddHours(globalFeeSet.QTExitPoint); } var yulidate = TypeConvert.IntToDateTime(roomReg.LeaveTime); yltime = yulidate.Date.AddDays(xzDays).AddHours(globalFeeSet.QTExitPoint); return(JsonConvert.SerializeObject(new { Ret = 0, YlTime = yltime.ToString("yyyy-MM-dd HH:mm:ss") })); }
public ActionResult InputBody(long posId, long roomRegId) { ViewBag.HotelId = UserContext.CurrentUser.HotelId; ViewBag.RoomRegId = roomRegId; ViewBag.PosId = posId; ViewBag.HotelId = UserContext.CurrentUser.HotelId; var types = PosCatBll.GetListByPos(posId); ViewBag.Types = types; ViewBag.Room = RoomRegBll.GetById(roomRegId); ViewBag.CurrentOrderNo = PosConsumeBll.GetNewOrderNo(posId); var o = PosConsumeBll.GetById(posId); return(View(new PosConsume() { OrderNo = PosConsumeBll.GetNewOrderNo(posId), OpUserName = UserContext.CurrentUser.UserName, RoomRegId = roomRegId, PosId = posId })); }
public string GetRuzhuDaysForXz(long roomRegId, string leaveTime) { var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "房间登记数据不存在" })); } if (roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.全天房 && roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.长包房 && roomReg.KaiFangFangShi != (int)KaifangFangshiEnum.免费房) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "只有【全天房、长包房、免费房】才可续住" })); } var globalFeeSet = GlobalFeeSetBll.GetByHotelId(UserContext.CurrentUser.HotelId); if (globalFeeSet == null) { return(JsonConvert.SerializeObject(new { Ret = 0, YlTime = "" })); } var days = (DateTime.Parse(leaveTime).Date - TypeConvert.IntToDateTime(roomReg.LeaveTime).Date).TotalDays; return(JsonConvert.SerializeObject(new { Ret = 0, RuzhuDays = Convert.ToInt32(days) })); }
/// <summary> /// 预订转入住界面的刷新--自动分房和取消分房后的刷新 /// </summary> /// <param name="ydid"></param> /// <returns></returns> public string YdzrzRefresh(long ydid) { var info = RoomYdBll.GetById(ydid); Model.RoomReg zfRoomReg = null; if (info.ZfRoomRegId > 0) { zfRoomReg = RoomRegBll.GetById(info.ZfRoomRegId); } var hotelId = UserContext.CurrentUser.HotelId; //获取房型 var roomTypeList = RoomTypeBll.GetList(hotelId); if (roomTypeList == null) { roomTypeList = new List <RoomType>(); } var ydRoomTypeList = new List <RoomType>(); //获取所有预订的房间 var roomYdRoomList = RoomYdRoomBll.GetLIst(ydid); if (roomYdRoomList != null && roomYdRoomList.Count > 0) { //循环获取房间 foreach (var roomtype in roomTypeList) { var roomList = roomYdRoomList.Where(m => m.RoomTypeId == roomtype.Id); if (roomList != null && roomList.Count() > 0) { roomtype.YdRoomList = new List <RoomYdRoom>(); foreach (var room in roomList) { room.Name = info.Name; room.IsZf = zfRoomReg == null ? false : (room.RoomRegId == zfRoomReg.Id ? true : false); //room.IsZf = room.RoomRegId == zfRoomReg.Id ? true : false; room.YdaoTime = info.YdaoTime; room.YliTime = info.YliTime; roomtype.YdRoomList.Add(room); } roomtype.RoomCount = roomList.ElementAt(0).RoomCount; //if (roomtype.RoomCount > roomtype.YdRoomList.Count) //{ // for (var p = roomtype.YdRoomList.Count; p < roomtype.RoomCount; p++) // { // roomtype.YdRoomList.Add(new RoomYdRoom() // { // Id = 0, // Name = info.Name, // RoomTypeId = roomtype.Id, // RoomTypeName = roomtype.Name, // RoomId = 0, // RoomNO = "", // IsZf = false, // Price = roomtype.YdRoomList.Count > 0 ? roomtype.YdRoomList[0].Price : roomtype.Price, // Sale = roomtype.YdRoomList.Count > 0 ? roomtype.YdRoomList[0].Sale : 1, // SalePrice = roomtype.YdRoomList.Count > 0 ? roomtype.YdRoomList[0].SalePrice : roomtype.Price, // YdaoTime = info.YdaoTime, // YliTime = info.YliTime, // }); // } //} } else { continue; //roomtype.YdRoomList = new List<RoomYdRoom>(); //roomtype.RoomCount = 0; } ydRoomTypeList.Add(roomtype); } } return(JsonConvert.SerializeObject(ydRoomTypeList)); }
// GET: RoomRegZw public ActionResult Index(long roomRegId) { var lflist = new List <Model.RoomReg>(); var user = UserContext.CurrentUser; var treeList = RoomRegBll.GetLfTree(roomRegId, UserContext.CurrentUser.HotelId, ref lflist); //RoomRegBll.AutoQtfy(lflist, user.Id, user.Name, user.HotelId); var roomReg = new Model.RoomReg(); decimal yszk = 0, yuszk = 0, yjs = 0, zfy = 0, zstk = 0, jy = 0, bfsk = 0; if (treeList.Count > 0) { //roomRegId = long.Parse(treeList[0].id); //获取房间的登记信息 roomReg = RoomRegBll.GetById(roomRegId); if (roomReg != null) { yszk += roomReg.Yszk; yuszk += roomReg.Yuszk; yjs += roomReg.Yjs; zfy += roomReg.Money; zstk += roomReg.Zstk; jy += roomReg.Jy; bfsk += roomReg.YeBfSkMoney + roomReg.FyeBfSkMoney; } ViewBag.RoomReg = roomReg; //获取所有联房的房间的财务汇总 for (var i = 1; i < treeList.Count; i++) { var item = RoomRegBll.GetById(long.Parse(treeList[i].id)); if (item != null) { yszk += item.Yszk; yuszk += item.Yuszk; yjs += item.Yjs; zfy += item.Money; zstk += item.Zstk; jy += item.Jy; bfsk += item.YeBfSkMoney + item.FyeBfSkMoney; } } } //在treelist上面加一个全部 //var root = new RoomRegTree() //{ // id = "0", // @checked = false, // children = treeList, // text = "全部" //}; //ViewBag.TreeList = new List<RoomRegTree>() { root }; ViewBag.TreeList = treeList; ViewBag.Zzw = new RoomRegZzwHelp() { yszk = yszk, yuszk = yuszk, yjs = yjs, zfy = zfy, zstk = zstk, jy = jy, bfsk = bfsk }; //获取未结账房间数,为了结账时方式的判断 //lflist = lflist.Where(m => m.CwState != 3 && m.CwState != 4 && m.CwState != 2).ToList(); lflist = lflist.Where(m => m.CwState == 1).ToList(); ViewBag.WjsRoomCount = lflist.Count; return(View(roomReg)); }
/// <summary> /// 部分结账页面--与结账页面大体相同 /// </summary> /// <param name="roomRegId"></param> /// <param name="models"></param> /// <returns></returns> public ActionResult _Bfjz(long roomRegId) { var user = UserContext.CurrentUser; var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg() { Id = roomRegId, HotelId = user.HotelId } } ; if (roomReg.CustomerType == 2) { //如果是连房成员,则需要获取主房登记id var zf = RoomRegBll.GetById(roomReg.ZfDjId); if (zf.CustomerType == 3) { //主房如果是酒店会员 var member = MemberBll.GetById(long.Parse(zf.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (zf.CustomerType == 4) { //主房如果是协议单位 var comAgree = AgreeCompanyBll.GetById(zf.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } } else if (roomReg.CustomerType == 3) { //如果是酒店会员 var member = MemberBll.GetById(long.Parse(roomReg.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (roomReg.CustomerType == 4) { //如果是协议单位 var comAgree = AgreeCompanyBll.GetById(roomReg.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } //获取支付方式列表 var payTypeList = PayTypeBll.GetList(user.HotelId, true, true); if (payTypeList == null) { payTypeList = new List <PayType>(); } var payList = new List <RoomRegZwPaytypeHelp>(); foreach (var item in payTypeList) { payList.Add(new RoomRegZwPaytypeHelp() { Id = item.Id.ToString(), PayId = item.Id.ToString(), PayName = item.Name, Money = 0, }); } ViewBag.PayList = payList; //获取卡类型 var cardTypeList = CardTypeBll.GetList(UserContext.CurrentUser.HotelId); ViewBag.CardTypeList = cardTypeList; return(View(roomReg)); }
/// <summary> /// 结账页面 /// </summary> /// <param name="roomRegId"></param> /// <param name="models"></param> /// <returns></returns> public ActionResult _Jz(long roomRegId, int jstype) { var user = UserContext.CurrentUser; var roomReg = RoomRegBll.GetById(roomRegId); if (roomReg == null) { roomReg = new Model.RoomReg() { Id = roomRegId, HotelId = user.HotelId } } ; if (roomReg.CustomerType == 2) { //如果是连房成员,则需要获取主房登记id var zf = RoomRegBll.GetById(roomReg.ZfDjId); if (zf.CustomerType == 3) { //主房如果是酒店会员 var member = MemberBll.GetById(long.Parse(zf.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (zf.CustomerType == 4) { //主房如果是协议单位 var comAgree = AgreeCompanyBll.GetById(zf.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } } else if (roomReg.CustomerType == 3) { //如果是酒店会员 var member = MemberBll.GetById(long.Parse(roomReg.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (roomReg.CustomerType == 4) { //如果是协议单位 var comAgree = AgreeCompanyBll.GetById(roomReg.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } //获取支付方式列表 var payTypeList = PayTypeBll.GetList(user.HotelId, true, true); if (payTypeList == null) { payTypeList = new List <PayType>(); } var payList = new List <RoomRegZwPaytypeHelp>(); foreach (var item in payTypeList) { payList.Add(new RoomRegZwPaytypeHelp() { Id = item.Id.ToString(), PayId = item.Id.ToString(), PayName = item.Name, Money = 0, }); } ViewBag.PayList = payList; //获取卡类型 var cardTypeList = CardTypeBll.GetList(UserContext.CurrentUser.HotelId); ViewBag.CardTypeList = cardTypeList; //获取未结账的联房数据 //获取未结算明细 //var wjsmxList = new List<RoomRegZw>(); if (jstype == (int)JzType.将其他所有联房费用数据转到该房间有该房间结账) { var lfList = RoomRegBll.Fetch($"where ZfDjId={roomReg.ZfDjId}"); //lfList = lfList.Where(m => m.CwState != 3 && m.CwState != 4 && m.CwState != 2).ToList(); lfList = lfList.Where(m => m.CwState == 1).ToList(); if (lfList == null || lfList.Count == 0) { return(Content("无未结算的联房数据")); } foreach (var lf in lfList) { //var wjsmx = RoomRegZwBll.GetFyListForBfjz(lf.Id); //if (wjsmx != null) // wjsmxList.AddRange(wjsmx); //计算汇总 if (lf.Id == roomRegId) { continue; } //roomReg.Yszk += lf.Yszk; roomReg.FfMoney += lf.FfMoney; roomReg.SpMoney += lf.SpMoney; roomReg.SwpcMoney += lf.SwpcMoney; roomReg.QtMoney += lf.QtMoney; roomReg.HcMoney += lf.HcMoney; roomReg.YhMoney += lf.YhMoney; roomReg.ExpYhMoney += lf.ExpYhMoney; roomReg.ZskMoney += lf.ZskMoney; roomReg.ZtkMoney += lf.ZtkMoney; } } //ViewBag.WjsmxList = wjsmxList; //获取信用卡预授权 var xykysqList = RoomRegXykBll.GetYsq(roomRegId); if (xykysqList == null || xykysqList.Count == 0) { xykysqList = new List <RoomRegXyk>(); } ViewBag.Xykysq = xykysqList; ViewBag.jstype = jstype; return(View(roomReg)); }
public ActionResult _Jz(long consumeId, int jstype) { var user = UserContext.CurrentUser; var consume = PosConsumeBll.GetById(consumeId); var details_list = PosConsumeDetailBll.GetList(consumeId); details_list = details_list.Where(a => a.ToRoomRegId == 0 && a.SourceRoomRegId == 0).ToList(); ViewBag.WjsmxList = details_list; var roomRegId = consume.RoomRegId; var roomReg = new Model.RoomReg() { Id = consume.RoomRegId, HotelId = user.HotelId }; if (consume.RoomRegId != 0) { roomReg = RoomRegBll.GetById(consume.RoomRegId); if (roomReg == null) { roomReg = new Model.RoomReg() { Id = consume.RoomRegId, HotelId = user.HotelId } } ; } if (roomReg.CustomerType == 2) { //如果是连房成员,则需要获取主房登记id var zf = RoomRegBll.GetById(roomReg.ZfDjId); if (zf.CustomerType == 3) { //主房如果是酒店会员 var member = MemberBll.GetById(long.Parse(zf.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (zf.CustomerType == 4) { //主房如果是协议单位 var comAgree = AgreeCompanyBll.GetById(zf.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } } else if (roomReg.CustomerType == 3) { //如果是酒店会员 var member = MemberBll.GetById(long.Parse(roomReg.MemCompId)); if (member == null) { member = new Member(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 3, Data = JsonConvert.SerializeObject(member) }; } else if (roomReg.CustomerType == 4) { //如果是协议单位 var comAgree = AgreeCompanyBll.GetById(roomReg.MemCompId); if (comAgree == null) { comAgree = new AgreeCompany(); } ViewBag.CustomerType = new CustomerTypeHelp { Type = 4, Data = JsonConvert.SerializeObject(comAgree) }; } else { ViewBag.CustomerType = new CustomerTypeHelp { Type = 1 }; } //获取支付方式列表 var payTypeList = PayTypeBll.GetList(user.HotelId, true, true); if (payTypeList == null) { payTypeList = new List <PayType>(); } var payList = new List <RoomRegZwPaytypeHelp>(); foreach (var item in payTypeList) { payList.Add(new RoomRegZwPaytypeHelp() { Id = item.Id.ToString(), PayId = item.Id.ToString(), PayName = item.Name, Money = 0, }); } ViewBag.PayList = payList; //获取卡类型 var cardTypeList = CardTypeBll.GetList(UserContext.CurrentUser.HotelId); ViewBag.CardTypeList = cardTypeList; //ViewBag.WjsmxList = wjsmxList; //获取信用卡预授权 var xykysqList = RoomRegXykBll.GetYsq(roomRegId); if (xykysqList == null || xykysqList.Count == 0) { xykysqList = new List <RoomRegXyk>(); } ViewBag.Xykysq = xykysqList; ViewBag.jstype = jstype; return(View(consume)); }
public string GetJJList(long posId, string isToday, PosConsumeSearchInfo search) { var user = UserContext.CurrentUser; List <PosConsume> data = new List <PosConsume>(); if (search.hasValue()) { data = PosConsumeBll.GetListByPos(posId, search); } else if (isToday == "Y") { data = PosConsumeBll.GetTodayListByPos(posId); } else { data = PosConsumeBll.GetListByPos(posId); } data = data.Where(a => a.PosShiftId == 0 && a.CwState == 1).ToList(); var payTypeList = PayTypeBll.GetList(user.HotelId, true, true); if (payTypeList == null) { payTypeList = new List <PayType>(); } var outdata = new List <Dictionary <string, object> >(); foreach (var item in data) { var outitem = new Dictionary <string, object>(); outitem["Id"] = item.Id; outitem["PosId"] = item.PosId; if (item.RoomRegId != 0) { var roomReg = RoomRegBll.GetById(item.RoomRegId); outitem["RoomNo"] = roomReg.RoomNO; outitem["RoomRegIdStr"] = item.RoomRegId.ToString(); outitem["RoomRegDanJuNum"] = roomReg.DanJuNum; } else { } var details = PosConsumeDetailBll.GetList(item.Id); var sk_list = PosConsumeSkBll.GetList(item.Id); var tk_list = PosConsumeTkBll.GetList(item.Id); decimal roomAmount = 0; if (item.RoomRegId == 0) { foreach (var detail in details) { if (!detail.IsFree && detail.ToRoomRegId != 0) { roomAmount += detail.Amount; } } outitem["RoomAmount"] = roomAmount; } else { outitem["RoomAmount"] = item.AmountSum; } foreach (var o in sk_list) { foreach (var payType in payTypeList) { if (o.PayTypeId == payType.Id) { var key = "Amount" + o.PayTypeName; if (!outitem.ContainsKey(key)) { outitem[key] = o.Money; } else { outitem[key] = Convert.ToDecimal(outitem[key]) + o.Money; } } } } outitem["NightDate"] = item.NightDate; outitem["OrderNo"] = item.OrderNo; outitem["OrderDate"] = item.OrderDate; outitem["OutTime"] = item.OutTime; outitem["Amount"] = item.Amount; outitem["JzskMoney"] = item.JzskMoney; outdata.Add(outitem); } return(Newtonsoft.Json.JsonConvert.SerializeObject(outdata)); }
/// <summary> /// 根据开房方式获取预离时间,同时绑定钟点房方案id或时段房方案id /// 20190828同时绑定价格 /// </summary> /// <returns></returns> public string GetYlTimeByKffs(long roomRegId, int type, int rzDays, long fnid = 0, long roomId = 0) { var roomReg = RoomRegBll.GetById(roomRegId); var now = DateTime.Now; if (roomReg != null) { now = TypeConvert.IntToDateTime(roomReg.RegTime); } var room = RoomBll.GetById(roomId); var roomType = RoomTypeBll.GetById(room.RoomTypeId); if (type == (int)KaifangFangshiEnum.全天房 || type == (int)KaifangFangshiEnum.长包房 || type == (int)KaifangFangshiEnum.免费房) { var globalFeeSet = GlobalFeeSetBll.GetByHotelId(UserContext.CurrentUser.HotelId); if (globalFeeSet == null) { return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"), YlTime = "" })); } var yltime = now; //如果是6点,那么当天6点之后开的房间就是第二天中午退房,0点到6点开房就是当天中午退房 if (now.Hour >= 0 && now.Hour <= globalFeeSet.QTAfterPointToNextDay) { //当天中午退房 yltime = now.Date.AddDays(rzDays - 1).AddHours(globalFeeSet.QTExitPoint); } else { //第二天中午退房 yltime = now.Date.AddDays(1 + (rzDays - 1)).AddHours(globalFeeSet.QTExitPoint); } if (type != (int)KaifangFangshiEnum.免费房) { return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"), YlTime = yltime.ToString("yyyy-MM-dd HH:mm:ss"), RoomPrice = roomType.Price })); } return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"), YlTime = yltime.ToString("yyyy-MM-dd HH:mm:ss") })); } else if (type == (int)KaifangFangshiEnum.钟点房) { //钟点房 var hourRoomList = HourRoomBll.GetList(UserContext.CurrentUser.HotelId); if (hourRoomList == null || hourRoomList.Count == 0) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "无钟点房方案" })); } var hourRoom = hourRoomList[0];//默认选择第一个 if (fnid != 0 && hourRoomList.Any(a => a.Id == fnid)) { hourRoom = hourRoomList.FirstOrDefault(a => a.Id == fnid); } var yltime = now.AddMinutes(hourRoom.Minute).ToString("yyyy-MM-dd HH:mm:ss"); return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"), YlTime = yltime, Id = hourRoom.Id, RoomPrice = hourRoom.Price })); } else if (type == (int)KaifangFangshiEnum.时段房) { //时段房 var periodRoomList = PeriodRoomBll.GetList(UserContext.CurrentUser.HotelId); if (periodRoomList == null || periodRoomList.Count == 0) { return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "无时段房方案" })); } if (fnid != 0 && periodRoomList.Any(a => a.Id == fnid)) { var periodRoom = periodRoomList.FirstOrDefault(a => a.Id == fnid); var CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"); var YlTime = now.ToShortDateString() + $" {periodRoom.EndPoint}:00:00"; return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = CurrentTime, YlTime = YlTime, Id = periodRoom.Id, RoomPrice = periodRoom.Price })); } else { foreach (var periodRoom in periodRoomList) { if (now.Hour >= periodRoom.StartPoint && now.Hour <= periodRoom.EndPoint) { var CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"); var YlTime = now.ToShortDateString() + $" {periodRoom.EndPoint}:00:00"; return(JsonConvert.SerializeObject(new { Ret = 0, CurrentTime = CurrentTime, YlTime = YlTime, Id = periodRoom.Id, RoomPrice = periodRoom.Price })); } } } return(JsonConvert.SerializeObject(new { Ret = -1, Msg = "无匹配的时段房方案,请手动选择" })); } return(""); }
public string GetRoomReg(long roomRegId) { var model = RoomRegBll.GetById(roomRegId); return(JsonConvert.SerializeObject(model)); }
// GET: RoomReg public ActionResult Index(long roomId) { var user = UserContext.CurrentUser; var hotelId = user.HotelId; var room = RoomBll.GetById(roomId); var globalFeeSet = GlobalFeeSetBll.GetByHotelId(hotelId); ViewBag.HotelId = hotelId; ViewBag.RoomId = roomId; ViewBag.GlobalFeeSet = globalFeeSet; var now = DateTime.Now; DateTime yuLiTime = now; //如果是6点,那么当天6点之后开的房间就是第二天中午退房,0点到6点开房就是当天中午退房 if (now.Hour >= 0 && now.Hour <= globalFeeSet.QTAfterPointToNextDay) { //当天中午退房 yuLiTime = now.Date.AddHours(globalFeeSet.QTExitPoint); } else { //第二天中午退房 yuLiTime = now.Date.AddDays(1).AddHours(globalFeeSet.QTExitPoint); } //var yltime = ""; //if (now.Hour > globalFeeSet.QTAfterPointToNextDay) //{ // //第二天退房 // yltime = now.AddDays(1).ToShortDateString() + $" {globalFeeSet.QTExitPoint}:00:00"; //} //else //{ // //当天退房 // yltime = now.ToShortDateString() + $" {globalFeeSet.QTExitPoint}:00:00"; //} ViewBag.CurrentTime = now.ToString("yyyy-MM-dd HH:mm:ss"); ViewBag.yltime = yuLiTime.ToString("yyyy-MM-dd HH:mm:ss"); var my = UserBll.GetById(user.Id); ViewBag.MyKdzk = my == null ? 10 : my.CanSale; //获取登记单 var roomReg = new Model.RoomReg(); if (room != null) { if (room.FjState == FjStateEnum.干净房) { roomReg = new Model.RoomReg(); } else { roomReg = RoomRegBll.GetById(room.RoomRegId); if (roomReg == null) { roomReg = new Model.RoomReg(); } } if ((int)roomReg.FjState >= (int)FjStateEnum.脏房) { // return Content("房间状态不允许开房登记"); } //if(roomReg.FjState ==4) // roomReg = new Model.RoomReg(); } ViewBag.PanelHeight = 300; if (Session["PanelHeight"] != null) { ViewBag.PanelHeight = Convert.ToInt32(Session["PanelHeight"]); } if (room == null) { room = new Room(); ViewBag.IsEmptyRoom = true; } else { ViewBag.IsEmptyRoom = false; } ViewBag.Room = room; return(View(roomReg)); }
public string GetListByIds(long[] Ids) { var data = PosConsumeBll.GetListByIds(Ids); var user = UserContext.CurrentUser; var payTypeList = PayTypeBll.GetList(user.HotelId, true, true); if (payTypeList == null) { payTypeList = new List <PayType>(); } var outdata = new List <Dictionary <string, object> >(); foreach (var item in data) { var outitem = new Dictionary <string, object>(); outitem["Id"] = item.Id; outitem["PosId"] = item.PosId; if (item.RoomRegId != 0) { var roomReg = RoomRegBll.GetById(item.RoomRegId); outitem["RoomNo"] = roomReg.RoomNO; outitem["RoomRegIdStr"] = item.RoomRegId.ToString(); outitem["RoomRegDanJuNum"] = roomReg.DanJuNum; } else { } var details = PosConsumeDetailBll.GetList(item.Id); var sk_list = PosConsumeSkBll.GetList(item.Id); var tk_list = PosConsumeTkBll.GetList(item.Id); decimal roomAmount = 0; if (item.RoomRegId == 0) { foreach (var detail in details) { if (!detail.IsFree && detail.ToRoomRegId != 0) { roomAmount += detail.Amount; } } outitem["RoomAmount"] = roomAmount; } else { outitem["RoomAmount"] = item.AmountSum; } foreach (var o in sk_list) { foreach (var payType in payTypeList) { if (o.PayTypeId == payType.Id) { var key = "Amount" + o.PayTypeName; if (!outitem.ContainsKey(key)) { outitem[key] = o.Money; } else { outitem[key] = Convert.ToDecimal(outitem[key]) + o.Money; } } } } outitem["NightDate"] = item.NightDate; outitem["OrderNo"] = item.OrderNo; outitem["OrderDate"] = item.OrderDate; outitem["OutTime"] = item.OutTime; outitem["Amount"] = item.Amount; outitem["JzskMoney"] = item.JzskMoney; outdata.Add(outitem); } return(JsonConvert.SerializeObject(outdata)); }
public string GetRoomReg(long roomRegId) { var roomReg = RoomRegBll.GetById(roomRegId); return(Newtonsoft.Json.JsonConvert.SerializeObject(roomReg)); }
public string GetRoomInfo(long roomId) { var model = RoomBll.GetById(roomId); List <RoomPrice> priceList = null; if (model != null) { //根据房型id获取房价方案 priceList = RoomPriceBll.GetList(UserContext.CurrentUser.HotelId, model.RoomTypeId); } else { model = new Room(); } Hotel.Model.RoomReg reg = null; if (model.RoomRegId != 0) { reg = RoomRegBll.GetById(model.RoomRegId); } var roomType = RoomTypeBll.GetById(model.RoomTypeId); var HolidaySet = HolidaySetBll.GetList(UserContext.CurrentUser.HotelId); var WeekendSet = WeekendSetBll.GetByHotelId(UserContext.CurrentUser.HotelId); var SalePrice = model.Price; //价 double SaleRate = 1.0; //折扣率 if (roomType.IsAllowWeekendRoom) //周末价判断 { if (WeekendSet.IsMonday && DateTime.Now.DayOfWeek == DayOfWeek.Monday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsTuesday && DateTime.Now.DayOfWeek == DayOfWeek.Tuesday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsWednesday && DateTime.Now.DayOfWeek == DayOfWeek.Wednesday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsThursday && DateTime.Now.DayOfWeek == DayOfWeek.Thursday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsFriday && DateTime.Now.DayOfWeek == DayOfWeek.Friday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsSaturday && DateTime.Now.DayOfWeek == DayOfWeek.Saturday) { SalePrice = roomType.WeekendPrice; } if (WeekendSet.IsSunday && DateTime.Now.DayOfWeek == DayOfWeek.Sunday) { SalePrice = roomType.WeekendPrice; } } if (roomType.IsAllowHolidayRoom) //假日价 { foreach (var h in HolidaySet) { var start = TypeConvert.IntToDateTime(h.StartDate); var end = TypeConvert.IntToDateTime(h.EndDate).AddDays(1).AddSeconds(-1); //定位在这天最后一秒 if (DateTime.Now > start && DateTime.Now < end) { SalePrice = roomType.HolidayPrice; } } } SaleRate = Convert.ToDouble(SalePrice) / Convert.ToDouble(model.Price); return(JsonConvert.SerializeObject(new { Room = model, RoomPrice = roomType.Price, SalePrice = SalePrice, SaleRate = SaleRate, PriceList = priceList, RoomReg = reg })); }