private bool SaveReservationPayment(SqlInt32 reservationId, Ferry ferry, int ferryAdultOrChild)
    {
        Reservation_Payments pay = new Reservation_Payments();

        pay.Reservation_ID      = reservationId;
        pay.PaymentPersonnel    = 0;//Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        pay.CreatedDate         = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        pay.Discount_ID         = SqlInt32.Parse(this.hidDiscountId.Value);
        pay.AvailedService_Type = ferryAdultOrChild; //1=Reservation;2=Bills & Services;3=Amenities
        pay.Discount_Offered    = new SqlMoney(0.00);
        pay.Rate_ID             = (SqlInt32)ferry.Ferry_ID;
        pay.PaymentStatus       = PaymentStatus.NOT_PAID;

        /*
         * if (ferryAdultOrChild == PAYMENT_AVAILED_SERVICETYPES.FERRY_ADULTS)
         * {
         *  pay.UnitsConsumed = SqlInt32.Parse(this.drpNumberOfAdults.SelectedValue);
         *  pay.TotalCost_Before_Discount = (ferry.Cost_For_Adults * pay.UnitsConsumed);
         *  SqlMoney costAfterDiscount = (pay.TotalCost_Before_Discount - pay.Discount_Offered);
         *  pay.Cost_After_Discount = costAfterDiscount;
         * }
         * else if (ferryAdultOrChild == PAYMENT_AVAILED_SERVICETYPES.FERRY_KIDS)
         * {
         *  pay.UnitsConsumed = SqlInt32.Parse(this.drpNumberOfChildren.SelectedValue);
         *  pay.TotalCost_Before_Discount = (ferry.Cost_For_Kids * pay.UnitsConsumed);
         *  SqlMoney costAfterDiscount = (pay.TotalCost_Before_Discount - pay.Discount_Offered);
         *  pay.Cost_After_Discount = costAfterDiscount;
         * }
         */
        pay.AmountReceived = 0;
        return(pay.Insert());
    }
Ejemplo n.º 2
0
 private void GetReservationPayment(SqlInt32 reservationId)
 {
     if (reservationPaymentsTbl == null)
     {
         Reservation_Payments rpay = new Reservation_Payments();
         rpay.Reservation_ID    = reservationId;
         reservationPaymentsTbl = rpay.SelectAll();
     }
 }
    private void BindReservationPayments(int reservationId)
    {
        //GetReservationPayments(reservationId, ref  paymentsTbl);
        Reservation_Payments payments = new Reservation_Payments();

        payments.Reservation_ID = reservationId;
        paymentsTbl             = payments.SelectAll();
        paymentsGrid.DataSource = paymentsTbl;
        paymentsGrid.DataBind();
    }
    private void CancelPayment(SqlInt32 paymentId)
    {
        Reservation_Payments rp = new Reservation_Payments();

        rp.Payment_ID = paymentId;
        int reservationId = Int32.Parse(hidReservationId.Value);

        if (rp.Delete())
        {
            BindReservationPayments(reservationId);
            return;
        }
    }
    protected void btnWelcomeLetter_Click(object sender, EventArgs e)
    {
        Reservation_Payments rp = new Reservation_Payments();

        rp.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        //  rp.SelectOne();

        DataTable resevePay = rp.GetReservationPayment();

        Session["welcomeLetter"] = resevePay;
        string popupScript = "<script language='javascript'>" +
                             "window.open('Welcome.aspx','ThisPopUp1', " +
                             "'left = 300, top=150,  " +
                             "menubar=no, scrollbars=yes, resizable=yes')" +
                             "</script>";

        Page.ClientScript.RegisterStartupScript(GetType(), "PopupScript", popupScript);
    }
    private void GetReservationPayments(int reservationId, ref DataTable paymentsTbl)
    {
        Reservation_Payments payments = new Reservation_Payments();

        payments.Reservation_ID = reservationId;
        paymentsTbl             = payments.SelectAll();

        /*if (Session["ReservationPaymentsTable"] == null)
         * {
         *  Reservation_Payments payments = new Reservation_Payments();
         *  payments.Reservation_ID = reservationId;
         *  paymentsTbl = payments.SelectAll();
         *  Session.Add("ReservationPaymentsTable", paymentsTbl);
         * }
         * else
         *  paymentsTbl = (DataTable)Session["ReservationPaymentsTable"];
         */
    }
    protected void btnPrintReservationConfirm_Click(object sender, EventArgs e)
    {
        if (Request.QueryString["Reservation_ID"] != null)
        {
            reservationId          = Request.Params["Reservation_ID"] != null || Request.Params["Reservation_ID"] != "" ? Int32.Parse(Request.Params["Reservation_ID"].ToString()) : 0;
            hidReservationId.Value = reservationId.ToString();
        }
        Reservation_Payments pay = new Reservation_Payments();

        pay.Reservation_ID = SqlInt32.Parse(hidReservationId.Value.ToString());
        DataTable resevePay = pay.GetReservationPayment();

        Session["resevePay"] = resevePay;
        string popupScript = "<script language='javascript'>" +
                             "window.open('ReservConfirm.aspx','ThisPopUp12', " +
                             "'left = 300, top=150,  " +
                             "menubar=no, scrollbars=yes, resizable=yes')" +
                             "</script>";

        Page.ClientScript.RegisterStartupScript(GetType(), "PopupScript", popupScript);
        return;
    }
    private void SaveBooking(SqlInt32 guestId, out SqlInt32 paymentId, out SqlInt32 reservationId)
    {
        paymentId     = -1;
        reservationId = -1;
        Reservations r = new Reservations();

        r.ReservationDate      = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        r.FromDate             = Utility.GetSqlDateTimeFromDateTime(DateTime.Parse(this.hidFromDate.Value));
        r.ToDate               = Utility.GetSqlDateTimeFromDateTime(DateTime.Parse(this.hidToDate.Value));
        r.ReservationPersonnel = 0; //Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        r.RateType             = SqlInt32.Parse(this.hidRateType.Value);
        SqlInt32 rateId = SqlInt32.Parse(this.hidRateId.Value);

        r.Rate_ID               = rateId;
        r.RoomType_ID           = SqlInt32.Parse(this.hidRoomTypeId.Value);
        r.Room_ID               = SqlInt32.Parse(this.hidRoomId.Value);
        r.Parent_Reservation_ID = 0;
        r.Connected_Room_ID     = 0;
        r.Guest_ID              = guestId;
        r.BookingStatus         = BookingStatus.CONFIRMED;
        r.Remarks               = string.Empty;
        Reservation_Payments pay = new Reservation_Payments();

        pay.PaymentPersonnel          = 0;//Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        pay.CreatedDate               = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        pay.Discount_ID               = SqlInt32.Parse(this.hidDiscountId.Value);
        pay.AvailedService_Type       = PAYMENT_AVAILED_SERVICETYPES.RESERVATION; //1=Reservation;2=Bills & Services;3=Amenities
        pay.Rate_ID                   = rateId;
        pay.UnitsConsumed             = SqlInt32.Parse(this.hidBookingDays.Value);
        pay.Discount_Offered          = SqlMoney.Parse(this.hidDiscountOffered.Value);
        pay.TotalCost_Before_Discount = SqlMoney.Parse(this.hidTotalCost.Value);
        SqlMoney costAfterDiscount = SqlMoney.Parse(this.hidCostAfterDiscount.Value);;

        pay.Cost_After_Discount = costAfterDiscount;
        pay.AmountReceived      = 0;
        if (pay.AmountReceived == 0)
        {
            r.PaymentStatus = PaymentStatus.NOT_PAID;
            r.PendingAmount = pay.Cost_After_Discount - pay.AmountReceived;
        }
        else
        {
            this.pnlStatus.Visible  = true;
            this.pnlStatus.CssClass = "alert alert-danger";
            lblMsg.Text             = "Booking Must be Less than or Equal to Cost after Discount";
            return;
        }
        if (pay.AmountReceived != 0)
        {
            pay.PaymentMode = SqlInt32.Parse(this.hidSelectedCardType.Value);
        }
        pay.Remarks       = r.Remarks;
        pay.PaymentStatus = 1;//Active

        if (r.Insert())
        {
            pay.Reservation_ID = r.Reservation_ID;
            reservationId      = r.Reservation_ID;
            Session.Add("ReservationID", reservationId);
            Session.Add("Reservation", r);
            if (pay.Insert())
            {
                this.pnlStatus.Visible  = true;
                this.pnlStatus.CssClass = "alert alert-danger";
                lblMsg.Text             = "Reservation & Payment was successfully saved.";
                paymentId = pay.Payment_ID;
                Session.Add("PaymentID", paymentId);
                Session.Add("Reservation_Payments", pay);

                /*
                 * //Insert Ferry Payment as well
                 * //Ferry
                 * Ferry ferry = new Ferry();
                 * Session.Add("WantFerry", false);
                 * if (this.chkWantFerry.Checked)
                 * {
                 *  Session.Add("WantFerry", true);
                 *  DataTable toReturn = ferry.SelectAll();
                 *  ferry.Ferry_ID =  (Int32)toReturn.Rows[0]["Ferry_ID"];
                 *  ferry.SelectOne();
                 *  ferry.NumberOfAdults = SqlInt32.Parse(this.drpNumberOfAdults.SelectedValue);
                 *  ferry.NumberOfKids = SqlInt32.Parse(this.drpNumberOfChildren.SelectedValue);
                 *  Session.Add("Ferry", ferry);
                 *  bool saveFerry = false;
                 *  if(Int32.Parse(drpNumberOfAdults.SelectedValue) > 0)
                 *      saveFerry=SaveReservationPayment(r.Reservation_ID, ferry, PAYMENT_AVAILED_SERVICETYPES.FERRY_ADULTS);
                 *  if (Int32.Parse(drpNumberOfChildren.SelectedValue) > 0)
                 *      saveFerry=SaveReservationPayment(r.Reservation_ID, ferry, PAYMENT_AVAILED_SERVICETYPES.FERRY_KIDS);
                 *  if (!saveFerry)
                 *  {
                 *      this.pnlStatus.Visible = true;
                 *      this.pnlStatus.CssClass = "alert alert-danger";
                 *      lblMsg.Text =  "There was a problem in saving the Ferry";
                 *      lblMsg.ForeColor = Color.Red;
                 *      return;
                 *  }
                 * }
                 */
                return;
            }
            else
            {
                this.pnlStatus.Visible  = true;
                this.pnlStatus.CssClass = "alert alert-danger";
                lblMsg.Text             = "Reservation was saved. However, there was a problem in saving the Payment";
                lblMsg.ForeColor        = Color.Red;
                return;
            }
        }
        else
        {
            this.pnlStatus.Visible  = true;
            this.pnlStatus.CssClass = "alert alert-danger";
            lblMsg.Text             = "There was a problem. Could not save Reservation";
            lblMsg.ForeColor        = Color.Red;
            return;
        }
    }
    private void BindReservation(KNET_Payments knet, Reservations reservation, Guests guest)
    {
        this.lblKnetPaymentId.Text = knet.KNET_Payment_ID;
        this.lblKnetReference.Text = knet.Ref;

        Reservation_Payments payments = new Reservation_Payments();

        payments.Reservation_ID = knet.Reservation_ID;
        DataTable pays = payments.SelectAll();
        int       numKidsFerry = 0, numAdultsFerry = 0, numDays = 0;
        SqlMoney  roomCharges     = new SqlMoney(0.00);
        SqlMoney  ferryCharges    = new SqlMoney(0.00);
        SqlMoney  kidsFerryCost   = new SqlMoney(0.00);
        SqlMoney  adultsFerryCost = new SqlMoney(0.00);
        SqlMoney  totalCost       = new SqlMoney(0.00);

        if (pays.Rows.Count > 0)
        {
            foreach (DataRow r in pays.Rows)
            {
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.FERRY_KIDS)
                {
                    numKidsFerry  = (Int32)r["UnitsConsumed"];
                    kidsFerryCost = (Decimal)r["Cost_After_Discount"];
                }
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.FERRY_ADULTS)
                {
                    numAdultsFerry  = (Int32)r["UnitsConsumed"];
                    adultsFerryCost = (Decimal)r["Cost_After_Discount"];
                }
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.RESERVATION)
                {
                    numDays     = (Int32)r["UnitsConsumed"];
                    roomCharges = (Decimal)r["Cost_After_Discount"];
                }
            }
        }
        ferryCharges              = (adultsFerryCost + kidsFerryCost);
        totalCost                 = (ferryCharges + roomCharges);
        this.lblRoomCharges.Text  = roomCharges.ToString();
        this.lblFerryCharges.Text = ferryCharges.ToString();
        this.lblTotalCharges.Text = totalCost.ToString();

        this.lblDays.Text        = numDays.ToString();
        this.lblFerryKids.Text   = numKidsFerry.ToString();
        this.lblFerryAdults.Text = numAdultsFerry.ToString();


        reservation.Reservation_ID = knet.Reservation_ID;
        reservation.SelectOne();
        this.lblFromDate.Text            = Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
        this.lblToDate.Text              = Utility.GetDateTimeFromSqlDateTime(reservation.ToDate).ToString("dd/MM/yyyy");
        this.lblRoomType.Text            = reservation.RoomType_ID.ToString();
        this.lblFerryKidsValidity.Text   = Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
        this.lblFerryAdultsValidity.Text = Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
        this.lblDepartureTickets.Text    = (numKidsFerry + numAdultsFerry).ToString();
        this.lblDepartureDate.Text       = Utility.GetDateTimeFromSqlDateTime(reservation.ToDate).ToString("dd/MM/yyyy");


        this.lblGuestFirstName.Text  = guest.FirstName.ToString();
        this.lblGuestMiddleName.Text = guest.MiddleName.ToString();
        this.lblGuestLastName.Text   = guest.LastName.ToString();
        this.lblGuestEmail.Text      = guest.Email.ToString();
        this.lblGuestMobile.Text     = guest.MobileNumber.ToString();
        this.lblGuestCvd.Text        = guest.Civil_ID.ToString();
    }
    protected void btnSavePayment_Click(object sender, EventArgs e)
    {
        if (drpServiceType.SelectedValue == "-1")
        {
            lblPaymentMsg.Text      = "Please select a Service Type";
            lblPaymentMsg.ForeColor = Color.Red;
            return;
        }

        if (drpService.SelectedValue == "-1")
        {
            lblPaymentMsg.Text      = "Please select a Service Type";
            lblPaymentMsg.ForeColor = Color.Red;
            return;
        }
        Reservation_Payments rp = new Reservation_Payments();

        rp.Reservation_ID      = SqlInt32.Parse(hidReservationId.Value);
        rp.CreatedDate         = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        rp.PaymentPersonnel    = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        rp.AvailedService_Type = SqlInt32.Parse(drpServiceType.SelectedValue);
        Reservations r = new Reservations();

        r.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        r.SelectOne();
        if (drpServiceType.SelectedValue.Equals("1"))//If type reservation
        {
            if (r.PendingAmount <= 0)
            {
                lblPaymentMsg.Text      = "There are no more Pending amounts to be paid for the reservation";
                lblPaymentMsg.ForeColor = Color.Red;
                return;
            }
            if (string.IsNullOrEmpty(lblCost.Text) || SqlMoney.Parse(lblCost.Text) == 0)
            {
                lblPaymentMsg.Text      = "There are no more Pending amounts to be paid for the reservation";
                lblPaymentMsg.ForeColor = Color.Red;
                return;
            }
            if (SqlMoney.Parse(lblCost.Text) != 0)
            {
                SqlMoney toPay          = SqlMoney.Parse(lblCost.Text);
                SqlMoney amountReceived = SqlMoney.Parse(txtAmountReceived.Text);
                if (amountReceived < toPay || amountReceived > toPay)
                {
                    lblPaymentMsg.Text      = "Please pay only the Pending Reservation Amount to confirm reservation";
                    lblPaymentMsg.ForeColor = Color.Red;
                    return;
                }
                r.PendingAmount = new SqlMoney(0.00);//SqlMoney.Parse(lblCost.Text);
                r.BookingStatus = BookingStatus.CONFIRMED;
                r.PaymentStatus = PaymentStatus.FULLY_PAID;
                r.Update();
            }
            rp.Rate_ID                   = r.Rate_ID;
            rp.UnitsConsumed             = 0;
            rp.TotalCost_Before_Discount = r.PendingAmount;
        }
        else
        {
            if (r.BookingStatus != BookingStatus.CHECKED_IN)
            {
                lblPaymentMsg.Text      = "Cannot Save Payment. Not yet Checked In";
                lblPaymentMsg.ForeColor = Color.Red;
                return;
            }
            if (String.IsNullOrEmpty(txtUnits.Text))
            {
                lblPaymentMsg.Text      = "Please enter Units consumed";
                lblPaymentMsg.ForeColor = Color.Red;
                return;
            }
            rp.Rate_ID                   = SqlInt32.Parse(drpService.SelectedValue);
            rp.UnitsConsumed             = SqlInt32.Parse(txtUnits.Text);
            rp.TotalCost_Before_Discount = SqlMoney.Parse(lblCost.Text);
        }
        if (drpPaymentModes.SelectedValue == "-1")
        {
            lblPaymentMsg.Text      = "Please select a Payment Mode";
            lblPaymentMsg.ForeColor = Color.Red;
            return;
        }
        rp.Invoice             = txtInvoice.Text == string.Empty ? string.Empty : txtInvoice.Text;
        rp.PaymentStatus       = 1;//Active;
        rp.Discount_Offered    = txtDiscount.Text == string.Empty ? 0 : SqlMoney.Parse(txtDiscount.Text);
        rp.Cost_After_Discount = rp.Discount_Offered == 0? rp.TotalCost_Before_Discount: SqlMoney.Parse(lblAfterDiscount.Text);
        rp.AmountReceived      = txtAmountReceived.Text == string.Empty ? 0 : SqlMoney.Parse(txtAmountReceived.Text);
        rp.PaymentMode         = SqlInt32.Parse(drpPaymentModes.SelectedValue);
        if (rp.Insert())
        {
            Response.Redirect("Reservation.aspx?Reservation_ID=" + hidReservationId.Value, true);
        }
        else
        {
            lblPaymentMsg.Text      = rp.ErrorDesc.ToString() + " Error Playment Not saved !!!";
            lblPaymentMsg.ForeColor = Color.Green;
            return;
        }
    }
Ejemplo n.º 11
0
    protected void btnSaveBooking_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(txtFromDate.Text) || string.IsNullOrEmpty(txtToDate.Text) ||
            drpRoomTypes.SelectedValue.Equals("-1") || drpRateTypes.SelectedValue.Equals("-1") ||
            drpRatesAvailable.SelectedValue.Equals("-1") || drpAvailableRooms.SelectedValue.Equals("-1")
            )
        {
            lblMsg.Text      = "Please select all the Booking fields";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        if (string.IsNullOrEmpty(txtBookingAmount.Text))
        {
            lblMsg.Text      = "Please calculate your booking amount";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        if (string.IsNullOrEmpty(hidNewGuestId.Value))
        {
            lblMsg.Text      = "Please select a Guest";
            lblMsg.ForeColor = Color.Red;
            return;
        }


        lblMsg.Text = string.Empty;
        Reservations r = new Reservations();

        r.ReservationDate      = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        r.FromDate             = Utility.GetSqlDateTimeFromDateTime(DateTime.Parse(txtFromDate.Text));
        r.ToDate               = Utility.GetSqlDateTimeFromDateTime(DateTime.Parse(txtToDate.Text));
        r.ReservationPersonnel = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        r.RateType             = SqlInt32.Parse(drpRateTypes.SelectedValue);
        SqlInt32 rateId = SqlInt32.Parse(drpRatesAvailable.SelectedValue);

        r.Rate_ID               = rateId;
        r.RoomType_ID           = SqlInt32.Parse(drpRoomTypes.SelectedValue);
        r.Room_ID               = SqlInt32.Parse(drpAvailableRooms.SelectedValue);
        r.Parent_Reservation_ID = 0;
        r.Connected_Room_ID     = 0;
        r.Guest_ID              = SqlInt32.Parse(hidNewGuestId.Value);
        r.BookingStatus         = BookingStatus.CONFIRMED;
        r.Remarks               = string.Empty;
        Reservation_Payments pay = new Reservation_Payments();

        pay.PaymentPersonnel          = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        pay.CreatedDate               = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        pay.Discount_ID               = SqlInt32.Parse(hidDiscountId.Value);
        pay.AvailedService_Type       = 1; //1=Reservation;2=Bills & Services;3=Amenities
        pay.Rate_ID                   = rateId;
        pay.UnitsConsumed             = SqlInt32.Parse(hidBookingDays.Value);
        pay.Discount_Offered          = SqlMoney.Parse(hidDiscountOffered.Value);
        pay.TotalCost_Before_Discount = SqlMoney.Parse(hidTotalCost.Value);
        pay.Cost_After_Discount       = SqlMoney.Parse(hidCostAfterDiscount.Value);
        pay.AmountReceived            = SqlMoney.Parse(txtBookingAmount.Text);
        if (pay.AmountReceived < pay.Cost_After_Discount)
        {
            r.PaymentStatus = PaymentStatus.PARTIAL_PAID;
            r.PendingAmount = pay.Cost_After_Discount - pay.AmountReceived;
        }
        else if (pay.AmountReceived == pay.Cost_After_Discount)
        {
            r.PaymentStatus = PaymentStatus.FULLY_PAID;
        }
        else
        {
            lblMsg.Text      = "Booking Must be Less than or Equal to Cost after Discount";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        if (pay.AmountReceived != 0)
        {
            if (drpPaymentModes.SelectedValue == "-1")
            {
                lblMsg.Text      = "Please select a Payment Mode";
                lblMsg.ForeColor = Color.Red;
                return;
            }
            else
            {
                pay.PaymentMode = SqlInt32.Parse(drpPaymentModes.SelectedValue);
            }
        }
        pay.Remarks       = r.Remarks;
        pay.PaymentStatus = 1;    //Active

        if (r.Insert())
        {
            pay.Reservation_ID = r.Reservation_ID;
            if (pay.Insert())
            {
                // DataTable resevePay = pay.GetReservationPayment();
                //Session["resevePay"] = resevePay;

                //string popupScript = "<script language='javascript'>" +
                //               "window.open('ReservConfirm.aspx','ThisPopUp', " +
                //               "'left = 300, top=150,  " +
                //               "menubar=no, scrollbars=yes, resizable=yes')" +
                //               "</script>";
                //Page.ClientScript.RegisterStartupScript(GetType(), "PopupScript", popupScript);

                Response.Redirect("Reservation.aspx?Reservation_ID=" + r.Reservation_ID.ToString(), true);
            }
            else
            {
                lblMsg.Text      = "Reservation was saved. However, there was a problem in saving the Payment";
                lblMsg.ForeColor = Color.Red;
                return;
            }
        }
    }
    protected void btnSave_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(hidCheckInID.Value) || hidCheckInID.Value == "0")
        {
            lblStatus.Text = "The Reservation is invalid. Not Checked In"; return;
        }
        if (drpBillServices.SelectedValue == "-1")
        {
            lblStatus.Text = "Please choose a Bill Service"; return;
        }
        if (drpCheckIn.SelectedValue == "-1")
        {
            lblStatus.Text = "Please Bill Service"; return;
        }
        Reservation_Payments rp = new Reservation_Payments();

        rp.Reservation_ID            = SqlInt32.Parse(drpCheckIn.SelectedValue);
        rp.CreatedDate               = Utility.GetSqlDateTimeFromDateTime(DateTime.Today);
        rp.PaymentPersonnel          = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        rp.AvailedService_Type       = PAYMENT_AVAILED_SERVICETYPES.BILLS_SERVICES;
        rp.Rate_ID                   = SqlInt32.Parse(drpBillServices.SelectedValue);
        rp.UnitsConsumed             = SqlInt32.Parse(txtQuantity.Text);
        rp.TotalCost_Before_Discount = SqlMoney.Parse(txtPrice.Text);
        rp.Invoice                   = txtInvoice.Text == string.Empty ? string.Empty : txtInvoice.Text;
        rp.PaymentStatus             = 1;//Active;
        rp.Discount_Offered          = txtDiscount.Text == string.Empty ? 0 : SqlMoney.Parse(txtDiscount.Text);
        rp.Cost_After_Discount       = rp.Discount_Offered == 0 ? rp.TotalCost_Before_Discount : SqlMoney.Parse(lblAfterDiscount.Text);
        rp.AmountReceived            = txtAmountReceived.Text == string.Empty ? 0 : SqlMoney.Parse(txtAmountReceived.Text);
        if (rp.AmountReceived > 0)
        {
            if (drpPaymentModes.SelectedValue == "-1")
            {
                lblStatus.Text      = "Please select a Payment Mode";
                lblStatus.ForeColor = Color.Red;
                return;
            }
            else
            {
                rp.PaymentMode = SqlInt32.Parse(drpPaymentModes.SelectedValue);
            }
        }
        if (rp.Insert())
        {
            rp.InsertServiceInvoice();

            lblStatus.Text      = "Payment Saved";
            lblStatus.ForeColor = Color.Green;
            // return;
            //---------------for Printing the Amenity invoice----------------------------------------
            DataTable  amenitytbl     = new DataTable();
            DataColumn Id             = new DataColumn("ID", typeof(int));
            DataColumn ReservationID  = new DataColumn("ReservationID", typeof(int));
            DataColumn RoomId         = new DataColumn("RoomID", typeof(string));
            DataColumn ServiceName    = new DataColumn("ServiceName", typeof(string));
            DataColumn Invoice        = new DataColumn("Invoice", typeof(string));
            DataColumn Cost           = new DataColumn("Cost", typeof(double));
            DataColumn Qty            = new DataColumn("Quantity", typeof(int));
            DataColumn TotCost        = new DataColumn("TotCost", typeof(double));
            DataColumn Discount       = new DataColumn("Discount", typeof(double));
            DataColumn AfterDiscount  = new DataColumn("AfterDiscount", typeof(double));
            DataColumn AmountReceived = new DataColumn("AmountRecevied", typeof(double));
            DataColumn PaymentMode    = new DataColumn("PaymentMode", typeof(string));
            DataColumn CreatedBy      = new DataColumn("CreatedBy", typeof(string));
            DataColumn InvoiceNo      = new DataColumn("InvoiceNo", typeof(string));

            amenitytbl.Columns.Add(Id);
            amenitytbl.Columns.Add(ReservationID);
            amenitytbl.Columns.Add(RoomId);
            amenitytbl.Columns.Add(ServiceName);
            amenitytbl.Columns.Add(Invoice);
            amenitytbl.Columns.Add(Cost);
            amenitytbl.Columns.Add(Qty);
            amenitytbl.Columns.Add(TotCost);
            amenitytbl.Columns.Add(Discount);
            amenitytbl.Columns.Add(AfterDiscount);
            amenitytbl.Columns.Add(AmountReceived);
            amenitytbl.Columns.Add(PaymentMode);
            amenitytbl.Columns.Add(CreatedBy);
            amenitytbl.Columns.Add(InvoiceNo);

            DataRow row = amenitytbl.NewRow();
            row["Id"]             = 1;
            row["ReservationID"]  = Int32.Parse(rp.Reservation_ID.ToString());
            row["ServiceName"]    = drpBillServices.SelectedItem.Text;
            row["Invoice"]        = txtInvoice.Text;
            row["Cost"]           = double.Parse(lblPrice.Text);
            row["Quantity"]       = int.Parse(rp.UnitsConsumed.ToString());
            row["TotCost"]        = double.Parse(rp.TotalCost_Before_Discount.ToString());
            row["Discount"]       = double.Parse(rp.Discount_Offered.ToString());
            row["AfterDiscount"]  = double.Parse(rp.Cost_After_Discount.ToString());
            row["AmountRecevied"] = double.Parse(rp.AmountReceived.ToString());
            row["PaymentMode"]    = drpPaymentModes.SelectedItem.Text;
            row["CreatedBy"]      = HttpContext.Current.User.Identity.Name;
            row["InvoiceNo"]      = rp.ServiceNo.ToString();

            amenitytbl.Rows.Add(row);
            Session["Inv"] = amenitytbl;
            string popupScript = "<script language='javascript'>" +
                                 "window.open('AmenityInvView.aspx','ThisPopUp1', " +
                                 "'left = 300, top=150,  " +
                                 "menubar=no, scrollbars=yes, resizable=yes')" +
                                 "</script>";
            Page.ClientScript.RegisterStartupScript(GetType(), "PopupScript", popupScript);
            //----------------------------------------------------------------------------------
        }
        else
        {
            lblStatus.Text      = rp.ErrorDesc.ToString() + " Error Playment Not saved !!!";
            lblStatus.ForeColor = Color.Red;
            return;
        }
    }
Ejemplo n.º 13
0
    private void ConfirmCheckOut(SqlInt32 reserationId)
    {
        if (reserationId == 0)
        {
            this.lblMsg.Text = "Invalid Reservation. Try Again";
            lblMsg.ForeColor = Color.Red;
            return;
        }

        Reservations r = new Reservations();

        r.Reservation_ID = reserationId;
        r.SelectOne();

        Reservation_Payments rps = new Reservation_Payments();

        rps.Reservation_ID = reserationId;
        DataTable rpsTable = rps.SelectAll();

        CheckIn chkIn = new CheckIn();

        chkIn.Reservation_ID = reserationId;
        chkIn.SelectOne();

        lblBookingFromDate.Text = r.FromDate.Value.ToString("MMMM d, yyyy");
        lblBookingToDate.Text   = r.ToDate.Value.ToString("MMMM d, yyyy");
        int bookedDays = Utility.GetNumberOfDaysFromRange(r.FromDate.Value, r.ToDate.Value);

        lblBookedDays.Text  = bookedDays.ToString();
        lblCheckInDate.Text = chkIn.CheckIn_Date.Value.ToString("MMMM d, yyyy");
        SqlDateTime chkOutDate = Utility.GetSqlCheckOutTimeFromDate(DateTime.Now);

        if (r.ToDate.Value >= DateTime.Now)
        {
            chkOutDate = r.ToDate;
        }

        lblCheckOutDate.Text = chkOutDate.Value.ToString("MMMM d, yyyy");
        int stayedDays = Utility.GetNumberOfDaysFromRange(r.FromDate.Value, chkOutDate.Value);

        lblStayedDays.Text = stayedDays.ToString();

        CheckOut chkOut = new CheckOut();

        chkOut.Reservation_ID = reserationId;
        DataTable table = chkOut.ConfirmCheckOut();

        grid.DataSource = table;
        grid.DataBind();

        SqlMoney pendingAmount = new SqlMoney(0.00);

        foreach (DataRow row in table.Rows)
        {
            SqlMoney amount = SqlMoney.Parse(row["PendingAmount"].ToString());
            pendingAmount = pendingAmount + amount;
        }
        if (stayedDays > bookedDays)
        {
            int   difference = stayedDays - bookedDays;
            Rates rate       = new Rates();
            rate.Rate_ID = r.Rate_ID;
            rate.SelectOne();
            pendingAmount = pendingAmount + (difference * rate.Rate);
        }
        this.lblPendingPayment.Text = pendingAmount.ToString();
    }
Ejemplo n.º 14
0
    protected void btnCheckOut_Click(object sender, EventArgs e)
    {
        Reservations r = new Reservations();

        r.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        r.SelectOne();

        Reservation_Payments rps = new Reservation_Payments();

        rps.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        DataTable rpsTable = rps.SelectAll();

        CheckIn chkIn = new CheckIn();

        chkIn.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        chkIn.SelectOne();

        CheckOut chkOut = new CheckOut();

        chkOut.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        chkOut.SelectOne();
        DataTable table = chkOut.ConfirmCheckOut();

        chkOut.CheckOut_Date         = Utility.GetSqlDateTimeFromDateTime(DateTime.Now);
        chkOut.CheckIn_ID            = chkIn.CheckIn_ID;
        chkOut.FinalSettlementAmount = SqlMoney.Parse(lblPendingPayment.Text);
        chkOut.Remarks = txtComments.Text;
        SqlMoney totalCostOfReservation                    = new SqlMoney(0.00);
        SqlMoney totalDiscountForReservation               = new SqlMoney(0.00);
        SqlMoney totalCostOfReservationAfterDiscount       = new SqlMoney(0.00);
        SqlMoney totalRcvdForReservation                   = new SqlMoney(0.00);
        SqlMoney totalCostOfServicesAmneities              = new SqlMoney(0.00);
        SqlMoney totalDiscountForServicesAmneities         = new SqlMoney(0.00);
        SqlMoney totalCostOfServicesAmneitiesAfterDiscount = new SqlMoney(0.00);
        SqlMoney totalRcvdForServicesAmneities             = new SqlMoney(0.00);

        foreach (DataRow row in table.Rows)
        {
            if (row["ServiceType"].ToString().Equals("Reservation"))
            {
                totalCostOfReservation              += SqlMoney.Parse(row["Total_Before_Discount"].ToString());
                totalDiscountForReservation         += SqlMoney.Parse(row["DiscountOffered"].ToString());
                totalCostOfReservationAfterDiscount += SqlMoney.Parse(row["Cost_After_Discount"].ToString());
                totalRcvdForReservation             += SqlMoney.Parse(row["AmountReceived"].ToString());
            }
            else
            {
                totalCostOfServicesAmneities += SqlMoney.Parse(row["Total_Before_Discount"].ToString());
                totalCostOfServicesAmneities += SqlMoney.Parse(row["DiscountOffered"].ToString());
                totalCostOfServicesAmneitiesAfterDiscount += SqlMoney.Parse(row["Cost_After_Discount"].ToString());
                totalRcvdForServicesAmneities             += SqlMoney.Parse(row["AmountReceived"].ToString());
            }
        }
        SqlMoney pendingPayment = SqlMoney.Parse(lblPendingPayment.Text);

        chkOut.Cost_Of_Reservation = totalCostOfReservation;
        chkOut.DiscountOffered_For_Reservations = totalDiscountForReservation;
        chkOut.AmountReceived_For_Reservation   = totalRcvdForReservation;

        chkOut.Cost_Of_ServicesAmenities             = totalCostOfServicesAmneities;
        chkOut.DiscountOffered_For_ServicesAmenities = totalDiscountForServicesAmneities;
        chkOut.AmountReceived_For_ServicesAmenities  = totalRcvdForServicesAmneities;

        chkOut.FinalSettlementAmount = pendingPayment;
        if (chkOut.FinalSettlementAmount > 0)
        {
            if (drpPaymentModes.SelectedValue == "-1")
            {
                lblMsg.Text      = "Please select a Payment Mode";
                lblMsg.ForeColor = Color.Red;
                return;
            }
            else
            {
                chkOut.PaymentMode = SqlInt32.Parse(drpPaymentModes.SelectedValue);
            }
        }

        chkOut.CheckOut_Personnel = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);
        if (chkOut.Insert())
        {
            hidCheckOutId.Value = chkOut.CheckIn_ID.ToString();

            //-------------INSERT TO iNVOICES TABLE TO GENERATE THE iNVOICE NO-------------

            chkOut.InsertInvoice();

            //-------------------------------------------------------------------------------
            lblMsg.Text      = "Successfully Checked Out";
            lblMsg.ForeColor = Color.Green;
        }
        else
        {
            lblMsg.Text      = "Error in Checking Out";
            lblMsg.ForeColor = Color.Red;
        }
    }
Ejemplo n.º 15
0
    protected void btnCheckIn_Click(object sender, EventArgs e)
    {
        DateTime    checkInDate  = DateTime.Parse(txtCheckInDate.Text);
        SqlDateTime sCheckInDate = Utility.GetSqlCheckInTimeFromDate(checkInDate);

        if (checkInDate.Date > DateTime.Today || checkInDate.Date < DateTime.Today)
        {
            lblMsg.Text = "Invalid Date is wrong";
        }

        Reservations r = new Reservations();

        r.Reservation_ID = SqlInt32.Parse(hidReservationId.Value);
        r.SelectOne();
        Reservation_Payments rp = new Reservation_Payments();

        rp.Reservation_ID = r.Reservation_ID;
        rp.SelectAll();

        if (r.BookingStatus == BookingStatus.CHECKED_IN)
        {
            lblMsg.Text      = "Invalid Check In. Already Checked In";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        if (r.PaymentStatus == PaymentStatus.PARTIAL_PAID)
        {
            lblMsg.Text      = "Please pay the pending amount";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        if (sCheckInDate.Value.Date > r.ToDate.Value.Date)
        {
            lblMsg.Text       = "Invalid Check In Date. Booking Period is past";
            lblMsg.ForeColor  = Color.Red;
            btnCancel.Visible = true;
            return;
        }
        if (sCheckInDate.Value.Date < r.FromDate.Value.Date)
        {
            lblMsg.Text      = "Invalid Check In Date. Selected date is earlier than Booked From date";
            lblMsg.ForeColor = Color.Red;
            return;
        }
        CheckIn checkIn = new CheckIn();

        checkIn.Reservation_ID    = r.Reservation_ID;
        checkIn.CheckIn_Date      = sCheckInDate;
        checkIn.Remarks           = txtComments.Text;
        checkIn.CheckIn_Date      = Utility.GetSqlDateTimeFromDateTime(DateTime.Now);
        checkIn.CheckIn_Personnel = Utility.GetUserIdFromUserName(HttpContext.Current.User.Identity.Name);

        if (checkIn.Insert())
        {
            lblMsg.Text      = "Sucessfully Checked In";
            lblMsg.ForeColor = Color.Green;

            return;
        }
        else
        {
            lblMsg.Text      = checkIn.ErrorCode.ToString() + " - " + checkIn.ErrorDesc.ToString();
            lblMsg.ForeColor = Color.Red;
            return;
        }
    }
Ejemplo n.º 16
0
    protected void SetPreviousPageProperties()
    {
        //Guest Info;
        Guests guest = (Guests)Session["Guest"];

        this.lblGuestName.Text   = (guest.FirstName + " " + guest.MiddleName + " " + guest.LastName).ToString();
        this.lblGuestMobile.Text = guest.MobileNumber.ToString();
        this.lblGuestCvd.Text    = guest.Civil_ID.ToString();
        this.lblGuestEmail.Text  = guest.Email.ToString();
        this.hidGuestId.Value    = guest.Guest_ID.ToString();
        this.Guest_ID            = guest.Guest_ID;

        //Reservation Info;
        Reservations reservation = (Reservations)Session["Reservation"];

        this.hidFromDate.Value = reservation.FromDate.ToString();
        this.lblFromDate.Text  = "<span class=\"glyphicon glyphicon-calendar\" aria-hidden=\"true\"></span> " + Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
        this.FromDate          = reservation.FromDate;
        this.hidToDate.Value   = reservation.ToDate.ToString();
        this.lblToDate.Text    = "<span class=\"glyphicon glyphicon-calendar\" aria-hidden=\"true\"></span> " + Utility.GetDateTimeFromSqlDateTime(reservation.ToDate).ToString("dd/MM/yyyy");
        this.ToDate            = reservation.ToDate;

        this.hidNumAdults.Value   = Session["NumAdults"].ToString();
        this.lblAdults.Text       = Session["NumAdults"].ToString();
        this.NumAdults            = (SqlInt32)Session["NumAdults"];
        this.hidNumKids.Value     = Session["NumKids"].ToString();
        this.lblKids.Text         = Session["NumKids"].ToString();
        this.NumKids              = (SqlInt32)Session["NumKids"];
        this.hidBookingDays.Value = Session["BookingDays"].ToString();
        this.lblDays.Text         = Session["BookingDays"].ToString();
        this.BookingDays          = (SqlInt32)Session["BookingDays"];

        this.NumRooms          = (SqlInt32)Session["NumRooms"];
        this.hidNumRooms.Value = Session["NumRooms"].ToString();

        this.lblRoomType.Text    = Session["RoomType"].ToString();
        this.hidRoomType.Value   = Session["RoomType"].ToString();
        this.RoomType            = Session["RoomType"].ToString();
        this.hidRoomTypeId.Value = Session["RoomType_ID"].ToString();
        this.RoomType_ID         = (SqlInt32)Session["RoomType_ID"];
        this.hidRoomId.Value     = Session["Room_ID"].ToString();
        this.Room_ID             = (SqlInt32)Session["Room_ID"];
        this.hidRate.Value       = Session["Rate"].ToString();
        this.Rate = (SqlMoney)Session["Rate"];
        this.hidRateType.Value        = Session["RateType"].ToString();
        this.RateType                 = (SqlInt32)Session["RateType"];
        this.hidRateId.Value          = Session["Rate_ID"].ToString();
        this.Rate_ID                  = (SqlInt32)Session["Rate_ID"];
        this.TotalCostAfterDiscount   = (SqlMoney)Session["TotalCostAfterDiscount"];
        this.hidDiscountOffered.Value = Session["DiscountOffered"].ToString();
        this.DiscountOffered          = (SqlMoney)Session["DiscountOffered"];
        this.hidTotalCost.Value       = Session["TotalCost"].ToString();
        this.TotalCost                = (SqlMoney)Session["TotalCost"];
        this.hidDiscountId.Value      = Session["Discount_ID"].ToString();
        this.Discount_ID              = (SqlInt32)Session["Discount_ID"];
        this.hidReservationId.Value   = Session["ReservationID"].ToString();
        this.Reservation_ID           = (SqlInt32)Session["ReservationID"];
        this.hidPaymentId.Value       = Session["PaymentID"].ToString();
        this.Payment_ID               = (SqlInt32)Session["PaymentID"];

        //Payment Info
        Reservation_Payments pay = (Reservation_Payments)Session["Reservation_Payments"];

        this.lblRoomCharges.Text        = pay.Cost_After_Discount.ToString();
        this.hidRoomCharges.Value       = pay.Cost_After_Discount.ToString();
        this.hidCostAfterDiscount.Value = pay.Cost_After_Discount.ToString();

        SqlMoney totalRoomCost   = new SqlMoney(0.00);
        SqlMoney totalFerryCost  = new SqlMoney(0.00);
        SqlMoney kidsFerryCost   = new SqlMoney(0.00);
        SqlMoney adultsFerryCost = new SqlMoney(0.00);
        SqlMoney totalCost       = new SqlMoney(0.00);

        GetReservationPayment(reservation.Reservation_ID);
        if (reservationPaymentsTbl != null)
        {
            foreach (DataRow r in reservationPaymentsTbl.Rows)
            {
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.FERRY_KIDS)
                {
                    kidsFerryCost = (Decimal)r["Cost_After_Discount"];
                }
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.FERRY_ADULTS)
                {
                    adultsFerryCost = (Decimal)r["Cost_After_Discount"];
                }
                if ((Int32)r["AvailedService_Type"] == PAYMENT_AVAILED_SERVICETYPES.RESERVATION)
                {
                    totalRoomCost = (Decimal)r["Cost_After_Discount"];
                }
            }
        }
        totalFerryCost = (adultsFerryCost + kidsFerryCost);
        totalCost      = (totalFerryCost + totalRoomCost);


        /*
         * //Ferry Ticket Info
         * bool wantFerry = (bool)Session["WantFerry"];
         * if (wantFerry)
         * {
         *  Ferry ferry = (Ferry)Session["Ferry"];
         *  if (ferry != null)
         *  {
         *      this.lblFerryAdults.Text = ferry.NumberOfAdults.ToString();
         *      this.lblFerryKids.Text = ferry.NumberOfKids.ToString();
         *      this.lblFerryAdultsValidity.Text = Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
         *      this.lblFerryKidsValidity.Text = Utility.GetDateTimeFromSqlDateTime(reservation.FromDate).ToString("dd/MM/yyyy");
         *      this.lblDepartureDate.Text = Utility.GetDateTimeFromSqlDateTime(reservation.ToDate).ToString("dd/MM/yyyy");
         *      this.lblDepartureTickets.Text = (ferry.NumberOfAdults + ferry.NumberOfKids).ToString();
         *      this.lblFerryCharges.Text = totalFerryCost.ToString();//ferry.Total_Cost.ToString();
         *      this.lblTotalCharges.Text = totalCost.ToString();//(pay.Cost_After_Discount + ferry.Total_Cost).ToString();
         *      this.hidCostAfterDiscount.Value = totalCost.ToString();//(pay.Cost_After_Discount + ferry.Total_Cost).ToString();
         *  }
         * }
         * else
         * {
         *  this.lblFerryAdults.Text = "0";
         *  this.lblFerryKids.Text = "0";
         *  this.lblFerryAdultsValidity.Text = "N/A";
         *  this.lblFerryKidsValidity.Text = "N/A";
         *  this.lblDepartureDate.Text = "N/A";
         *  this.lblDepartureTickets.Text = "0";
         *  this.lblFerryCharges.Text = "0.00";
         *  this.lblTotalCharges.Text = (pay.Cost_After_Discount).ToString();
         * }
         */
        this.lblTotalCharges.Text = (pay.Cost_After_Discount).ToString();
        roomTbl = (DataTable)Session["AvailableRooms"]; //PreviousPage.AvailableRooms;
    }