Пример #1
0
    private bool SaveChangeDetails(bool isSubmit, out string strMessage)
    {
        char[] ch = new char[1];
        ch[0] = Convert.ToChar("$");
        CamperApplication   objCamperApplication = new CamperApplication();
        structChangeDetails ChangeDetails = new structChangeDetails();
        string oldGrant, newGrant, oldSession, newSession, reqComments, strCamperAnswers;
        bool   bGrantChange, bFJCAmountPaid, sameAsExistingSession;
        int    requestID = 0;

        sameAsExistingSession = bGrantChange = bFJCAmountPaid = false;
        strCamperAnswers      = oldGrant = newGrant = oldSession = newSession = reqComments = string.Empty;

        ChangeDetails.FJCID       = long.Parse(strFJCID);
        ChangeDetails.RequestType = rdBtnLstAdjustmentType.SelectedItem != null?Int32.Parse(rdBtnLstAdjustmentType.SelectedValue) : 0;

        ChangeDetails.Current_Status  = UpdateStatus(out bGrantChange, out bFJCAmountPaid);
        ChangeDetails.Original_Status = Int32.TryParse(lblCurrStatus.Text, out ChangeDetails.Original_Status) ? Int32.Parse(lblCurrStatus.Text) : 0;
        //added by sreevani to get campyear id based on fjcid from database.
        string campYearId = objCamperApplication.getCampYearId(strFJCID);

        ChangeDetails.CampYearID = Convert.ToInt32(campYearId);


        if (ChangeDetails.RequestType == 1) //Cancellation request
        {
            ChangeDetails.Cancellation_Reason = txtCancelComments.Text.Trim();
            if (iUserRole.ToString() == FJCAdminUserRole)
            {
                reqComments = txtComments.Text.Trim() != string.Empty ? txtComments.Text.Trim() : txtCancelComments.Text.Trim();
            }
            else if (iUserRole.ToString() == FEDAdminUserRole)
            {
                reqComments = txtCancelComments.Text.Trim();
            }
        }
        else if (ChangeDetails.RequestType == 2) //Session change request
        {
            if (!txtCampSession.Text.Equals(string.Empty))
            {
                ChangeDetails.NewSession           = txtCampSession.Text.Trim();
                ChangeDetails.NewSession_StartDate = txtNewStartDate.Text.Trim();
                ChangeDetails.NewSession_EndDate   = txtNewEndDate.Text.Trim();
            }
            else if (ddlCampSession.SelectedValue != "0" && ddlCampSession.SelectedIndex != -1)
            {
                ChangeDetails.NewSession           = ddlCampSession.SelectedValue;
                ChangeDetails.NewSession_StartDate = lblSysNewStartDate.Text;
                ChangeDetails.NewSession_EndDate   = lblSysNewEndDate.Text;
            }

            ChangeDetails.OldSession           = lblSession.Text;
            ChangeDetails.OldSession_StartDate = lblStartDate.Text;
            ChangeDetails.OldSession_EndDate   = lblEndDate.Text;

            sameAsExistingSession = IsNewSessionDetailsSameAsExisting();
            if (sameAsExistingSession)
            {
                valobj.InnerHtml = "<ul><li>New session is the same as existing session, please change the session name or dates again.</li></ul>"; strMessage = ""; return(false);
            }

            ChangeDetails.NewGrantAmount = lblNewGrant.Text.TrimStart(ch) != string.Empty ? Convert.ToDouble(lblNewGrant.Text.TrimStart(ch)) : 0.0;
            ChangeDetails.OldGrantAmount = lblGrant.Text.TrimStart(ch) != string.Empty ? Convert.ToDouble(lblGrant.Text.TrimStart(ch)) : 0.0;

            oldSession = lblStartDate.Text + " - " + lblEndDate.Text;
            newSession = ChangeDetails.NewSession_StartDate + " - " + ChangeDetails.NewSession_EndDate;
        }

        if (isSubmit && (hdnRequestStatus.Value == "0" || String.IsNullOrEmpty(hdnRequestStatus.Value))) //Request not submitted
        {
            ChangeDetails.SubmittedDate = DateTime.Now.ToString();
        }

        ChangeDetails.RequestStatus = isSubmit ? int.Parse(Enum.Format(typeof(RequestStatus), RequestStatus.Submitted, "D")):0; //Is submit clicked or save & exit
        ChangeDetails.RequestID     = String.IsNullOrEmpty(hdnRequestID.Value) ? 0 : Int32.Parse(hdnRequestID.Value);

        if (hdnRequestStatus.Value == "0" || String.IsNullOrEmpty(hdnRequestStatus.Value))
        {
            if (ChangeDetails.RequestID != 0)
            {
                objCamperApplication.UpdateChangeDetails(ChangeDetails); //update changerequest table
            }
            else
            {
                ChangeDetails.CreatedDate = DateTime.Now.ToString();
                objCamperApplication.InsertChangeDetails(ChangeDetails, out requestID); //insert changerequest table
                hdnRequestID.Value = requestID.ToString();
            }
            if (ChangeDetails.RequestStatus == 1) //if it is submit request
            {
                string strType = ChangeDetails.RequestType == 1 ? "Cancellation Request Submitted" : "Session Change Request Submitted";

                if (ChangeDetails.Current_Status == ChangeDetails.Original_Status)//if the there is no change in status (session change request) then update new session details in tblcamperanswer table
                {
                    if (pnlSystemSessionDates.Visible == true)
                    {
                        strCamperAnswers = ConstructCamperAnswers(ddlCampSession.SelectedValue, ChangeDetails.NewSession_StartDate, ChangeDetails.NewSession_EndDate);
                    }
                    else if (pnlManualSessionDates.Visible == true)
                    {
                        strCamperAnswers = ConstructCamperAnswers(txtCampSession.Text, ChangeDetails.NewSession_StartDate, ChangeDetails.NewSession_EndDate);
                    }

                    strCamperAnswers = string.IsNullOrEmpty(strCamperAnswers) ? null : strCamperAnswers;
                }
                objCamperApplication.UpdateDetailsOnRequestType(strFJCID, string.Empty, ChangeDetails.RequestID, strCamperAnswers, strType, iUserID, null, null, ChangeDetails.RequestStatus);

                strMessage = "Request has been submitted successfully.";
            }
            else
            {
                strMessage = "Request has been saved successfully.";
            }
        }
        else
        {
            strMessage = "Request " + lblRequestStatus.Text.ToLower() + ", cannot do any modifications.";
        }
        hdnNewRequest.Value = string.Empty;
        return(true);
    }
Пример #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        objCamperApplication = new CamperApplication();
        structChangeDetails changeDetails = new structChangeDetails();
        string campYearId = null;

        valobj.InnerHtml        = string.Empty;
        pnlUpdateStatus.Visible = pnlNewRequest.Visible = false;
        bool error = false;

        if (Session["UsrID"] != null)
        {
            if (Session["FJCID"] != null)
            {
                strFJCID = Session["FJCID"].ToString();
                if (!IsPostBack)
                {
                    ExisitingDetailsDataBind(strFJCID, changeDetails, false);
                    changeDetails = new structChangeDetails();
                    DataSet dsChangeDetails = objCamperApplication.GetChangeRequestDetails(strFJCID);
                    if (dsChangeDetails.Tables[0].Rows.Count > 0)
                    {
                        foreach (DataRow dr in dsChangeDetails.Tables[0].Rows)
                        {
                            changeDetails      = objCamperApplication.SetChangeDetailsFromDataRow(dr);
                            hdnRequestID.Value = changeDetails.RequestID.ToString();
                            SetControlValues(changeDetails);
                            hdnRequestStatus.Value = changeDetails.RequestStatus.ToString();
                            if (changeDetails.RequestStatus == 3 || changeDetails.RequestStatus == 2)
                            {
                                lnkBtnNewRequest.Visible = true;
                            }
                            else
                            {
                                lnkBtnNewRequest.Visible = false;
                            }
                        }
                    }
                }

                GetRequestUserDetails(Session["UsrID"].ToString());

                imgbtnCalStartDt.Attributes.Add("onclick", "return ShowCalendar('" + txtNewStartDate.ClientID + "');");
                imgbtnCalEndDt.Attributes.Add("onclick", "return ShowCalendar('" + txtNewEndDate.ClientID + "');");

                if (hdnRequestStatus.Value != "0" && !String.IsNullOrEmpty(hdnRequestStatus.Value))
                {
                    pnlForm.Enabled = false;
                }
                else
                {
                    pnlForm.Enabled = true;
                }

                if (iUserRole.ToString() == FJCAdminUserRole && hdnRequestStatus.Value == "1")
                {
                    pnlUpdateStatus.Visible = ddlRequestStatus.Enabled = btnUpdateStatus.Enabled = pnlUpdateStatus.Enabled = true;
                }
                if (iUserRole.ToString() == FEDAdminUserRole && hdnNewRequest.Value != "1" && (hdnRequestStatus.Value == "2" || hdnRequestStatus.Value == "3"))
                {
                    pnlNewRequest.Visible = lnkBtnNewRequest.Enabled = true;
                }

                pnlComments.Visible = false;
                rfvComments.Enabled = false;
                //added by sreevani to display calender according to session year.
                campYearId = objCamperApplication.getCampYearId(strFJCID);
                string campyear = Application["CampYear"].ToString();

                CampStartDate = ConfigurationManager.AppSettings["CampSessionStartMonth"] + "/01/" + campyear;
                hdnCampSessionStartDate.Value = DateTime.Parse(CampStartDate).AddDays(-1.0).ToShortDateString();
                CampEndDate = ConfigurationManager.AppSettings["CampSessionEndMonth"] + "/01/" + campyear;
                hdnCampSessionEndDate.Value     = DateTime.Parse(CampEndDate).AddMonths(1).ToShortDateString();
                hdncampSeasonErrorMessage.Value = "Choose camp session between " + DateTime.Parse(CampStartDate).ToShortDateString() + " and " + DateTime.Parse(CampEndDate).AddMonths(1).AddDays(-1.0).ToShortDateString();
            }
            else
            {
                error = true;
            }
        }
        else
        {
            error = true;
        }

        if (error)
        {
            strScript = "<script language=javascript>alert('Error occured please try again!'); window.opener.location.href = window.opener.location.href;" +
                        "if (window.opener.progressWindow)" +
                        "{    window.opener.progressWindow.close()" +
                        "}    window.close();</script>";
            if (!ClientScript.IsStartupScriptRegistered("clientScript"))
            {
                ClientScript.RegisterStartupScript(Page.GetType(), "clientScript", strScript);
            }
        }
        if (pnlForm.Enabled)
        {
            btnSaveExit.Attributes.Add("onclick", "JavaScript:return ValidateForm(0);false;");
            btnSubmit.Attributes.Add("onclick", "JavaScript:return ValidateForm(1);false;");
        }
    }