public PartialViewResult AddUsingCustomers(int checkinID)
        {
            var obj   = _svustomerArrive.GetRoomUsingCheckIn(checkinID);
            var model = new CustomeCheckInModel();

            model.CheckInID     = obj.CheckInID.GetValueOrDefault();
            model.CustomerIdOld = obj.customerid.GetValueOrDefault();
            model.Roomid        = obj.roomid.GetValueOrDefault();
            model.DOB           = DateTime.Now.ToString("dd/MM/yyyy");
            model.SysHotelID    = obj.SysHotelID.GetValueOrDefault();
            //model.Id = obj.Id;
            //model.Name = obj.Name;
            //model.CountryId = obj.CountryId;
            //model.DOB = obj.DOB.GetValueOrDefault().ToString("dd/MM/yyyy");
            //model.Address = obj.Address;
            //model.Sex = obj.Sex;
            //model.TeamSTT = obj.TeamSTT;
            //model.TeamMergeSTT = obj.TeamMergeSTT;
            //model.Email = obj.Email;
            //model.IdentifyNumber = obj.IdentifyNumber;
            //model.Phone = obj.Phone;
            //model.Company = obj.Company;
            //model.Payer = true;
            //model.Leader = true;
            model.ListCountry = _svustomerArrive.getAllCountry();
            return(PartialView("AddUsingCustomer", model));
        }
        /// <summary>
        ///  thêm khách ở cùng
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public ActionResult AddUsingRoom(CustomeCheckInModel obj)
        {
            //return Json(new { result = 0 }, JsonRequestBehavior.AllowGet);
            var rs = _svustomerArrive.AddUsingRoom(obj);

            return(Json(rs, JsonRequestBehavior.AllowGet));
        }
        public JsonRs UndoRoom(CustomeCheckInModel obj)
        {
            var rs = new JsonRs();


            using (var db = _connectionData.OpenDbConnection())
            {
                try
                {
                    var usingroom =
                        db.Single <tbl_RoomUsing>(
                            x => x.status == 1 && x.CheckInID == obj.CheckInID && x.roomid == obj.Roomid);
                    if (usingroom != null)
                    {
                        usingroom.status = 2;
                        db.Update(usingroom);
                        rs.Status  = "01";
                        rs.Message = "Trả phòng thành công.";
                        return(rs);
                    }
                    else
                    {
                        rs.Status  = "00";
                        rs.Message = "Không tìm thấy phòng của khách hàng. Vui lòng kiểm tra lại.";
                    }
                }
                catch (Exception e)
                {
                    rs.Status  = "00";
                    rs.Message = "Trả phòng thất bại!";
                    return(rs);
                }
            }

            return(rs);
        }
        public JsonRs AddUsingRoom(CustomeCheckInModel obj)
        {
            var rs = new JsonRs();


            using (var db = _connectionData.OpenDbConnection())
            {
                if (obj.CustomerId > 0)
                {
                    try
                    {
                        var usingroom = new tbl_RoomUsing();
                        usingroom.SysHotelID  = comm.GetHotelId();// obj.SysHotelID;
                        usingroom.CheckInID   = obj.CheckInID;
                        usingroom.customerid  = obj.CustomerId;
                        usingroom.datecreated = DateTime.Now;
                        usingroom.roomid      = obj.Roomid;
                        usingroom.status      = 2;
                        db.Insert(usingroom);
                        rs.Status  = "01";
                        rs.Message = "Thêm mới khách ở cùng thàng công.";
                        return(rs);
                    }
                    catch (Exception e)
                    {
                        rs.Status  = "00";
                        rs.Message = "Thêm mới khách ở cùng thất bại!";
                        return(rs);
                    }
                }
                else
                {
                    using (var tran = db.OpenTransaction())
                    {
                        DateTime DOB;
                        DateTime.TryParse(obj.DOB, CultureInfo.GetCultureInfo("vi-vn"), DateTimeStyles.None, out DOB);
                        try
                        {
                            var Customer = new tbl_Customer();
                            Customer.Name           = obj.Name;
                            Customer.CountryId      = obj.CountryId;
                            Customer.DOB            = DOB;
                            Customer.Address        = obj.Address;
                            Customer.Sex            = obj.Sex;
                            Customer.TeamSTT        = obj.TeamSTT;
                            Customer.TeamMergeSTT   = obj.TeamMergeSTT;
                            Customer.Email          = obj.Email;
                            Customer.IdentifyNumber = obj.IdentifyNumber;
                            Customer.Phone          = obj.Phone;
                            Customer.Address        = obj.Address;
                            Customer.Company        = obj.Company;
                            Customer.Status         = true;
                            Customer.TeamMergeSTT   = obj.TeamMergeSTT;
                            Customer.TeamSTT        = obj.TeamSTT;
                            Customer.Payer          = 0;
                            Customer.Status         = true;
                            Customer.ReservationID  = obj.CheckInID;
                            Customer.HotelCode      = comm.GetHotelCode();
                            Customer.SysHotelID     = comm.GetHotelId();

                            long idCustomer = db.Insert(Customer, true);

                            var usingroom = new tbl_RoomUsing();
                            usingroom.SysHotelID   = comm.GetHotelId();//Customer.SysHotelID;
                            usingroom.SysHotelCode = comm.GetHotelCode();
                            usingroom.CheckInID    = obj.CheckInID;
                            usingroom.customerid   = (int)idCustomer;// Customer.Id;
                            usingroom.datecreated  = DateTime.Now;
                            usingroom.roomid       = obj.Roomid;
                            usingroom.status       = 2;
                            db.Insert(usingroom);

                            /*
                             * var group = new tbl_CustomerGroup();
                             * group.Doan_ID = obj.TeamSTT;
                             * group.Gop_Doan_ID = obj.TeamMergeSTT;
                             * group.Customer_ID = Customer.Id;
                             * db.Insert(group);
                             */

                            tran.Commit();
                            rs.Status  = "01";
                            rs.Message = "Thêm mới khách ở cùng thàng công.";
                            return(rs);
                        }
                        catch (Exception)
                        {
                            tran.Rollback();
                            rs.Status  = "00";
                            rs.Message = "Thêm mới khách ở cùng thất bại!";
                            return(rs);
                        }
                    }
                }
            }
        }
        /// <summary>
        ///  Trả phòng
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public JsonResult UndoRoom(CustomeCheckInModel obj)
        {
            var rs = _svustomerArrive.UndoRoom(obj);

            return(Json(rs, JsonRequestBehavior.AllowGet));
        }