protected void Page_Load(object sender, EventArgs e)
    {
        LocationFormUI locationFormUI = new LocationFormUI();


        if (!Page.IsPostBack)
        {
            if (Request.QueryString["LocationId"] != null)
            {
                locationFormUI.Tbl_LocationId = Request.QueryString["LocationId"];
                FillForm(locationFormUI);
                btnSave.Visible   = false;
                btnClear.Visible  = false;
                btnUpdate.Visible = true;
                btnDelete.Visible = true;
                lblHeading.Text   = "Update Location";
            }
            else
            {
                btnSave.Visible   = true;
                btnClear.Visible  = true;
                btnUpdate.Visible = false;
                btnDelete.Visible = false;
                lblHeading.Text   = "Add New Location";
            }
        }
    }
    private void FillForm(LocationFormUI locationFormUI)
    {
        try
        {
            DataTable dtb = locationFormBAL.GetLocationListById(locationFormUI);

            if (dtb.Rows.Count > 0)
            {
                txtLocationCode.Text = dtb.Rows[0]["LocationCode"].ToString();
                txtCity.Text         = dtb.Rows[0]["City"].ToString();
                txtDescription.Text  = dtb.Rows[0]["Description"].ToString();
                txtCountryGuid.Text  = dtb.Rows[0]["tbl_CountryId"].ToString();
                txtCountry.Text      = dtb.Rows[0]["CountryName"].ToString();
            }
            else
            {
                lblError.Text    = Resources.GlobalResource.msgCouldNotLoadData;
                divError.Visible = true;
            }
        }
        catch (Exception exp)
        {
            logExcpUIobj.MethodName       = "FillForm()";
            logExcpUIobj.ResourceName     = "Location_LocationForm.CS";
            logExcpUIobj.RecordId         = locationFormUI.Tbl_LocationId;
            logExcpUIobj.ExceptionDetails = "Error Occured. System Generated Error is: " + exp.ToString();
            logExcpDALobj.SaveExceptionToDB(logExcpUIobj);
            log.Error("[Location_LocationForm : FillForm] An error occured in the processing of Record Details : [" + exp.ToString() + "]");
        }
    }
    public int DeleteLocation(LocationFormUI locationFormUI)
    {
        int resutl = 0;

        resutl = locationFormDAL.DeleteLocation(locationFormUI);
        return(resutl);
    }
    public int UpdateLocation(LocationFormUI locationFormUI)
    {
        int resutl = 0;

        resutl = locationFormDAL.UpdateLocation(locationFormUI);
        return(resutl);
    }
    public int AddLocation(LocationFormUI locationFormUI)
    {
        int resutl = 0;

        resutl = locationFormDAL.AddLocation(locationFormUI);
        return(resutl);
    }
    public DataTable GetLocationListById(LocationFormUI locationFormUI)
    {
        DataTable dtb = new DataTable();

        dtb = locationFormDAL.GetLocationListById(locationFormUI);
        return(dtb);
    }
    public int UpdateLocation(LocationFormUI locationFormUI)
    {
        int result = 0;

        try
        {
            using (SqlConnection SupportCon = new SqlConnection(connectionString))
            {
                SupportCon.Open();
                SqlCommand sqlCmd = new SqlCommand("SP_Location_Update", SupportCon);
                sqlCmd.CommandType    = CommandType.StoredProcedure;
                sqlCmd.CommandTimeout = commandTimeout;

                sqlCmd.Parameters.Add("@ModifiedBy", SqlDbType.NVarChar);
                sqlCmd.Parameters["@ModifiedBy"].Value = locationFormUI.ModifiedBy;

                sqlCmd.Parameters.Add("@tbl_OrganizationId", SqlDbType.NVarChar);
                sqlCmd.Parameters["@tbl_OrganizationId"].Value = locationFormUI.Tbl_OrganizationId;

                sqlCmd.Parameters.Add("@tbl_LocationId", SqlDbType.NVarChar);
                sqlCmd.Parameters["@tbl_LocationId"].Value = locationFormUI.Tbl_LocationId;

                sqlCmd.Parameters.Add("@LocationCode", SqlDbType.NVarChar);
                sqlCmd.Parameters["@LocationCode"].Value = locationFormUI.LocationCode;

                sqlCmd.Parameters.Add("@Description", SqlDbType.NVarChar);
                sqlCmd.Parameters["@Description"].Value = locationFormUI.Description;

                sqlCmd.Parameters.Add("@tbl_CountryId", SqlDbType.NVarChar);
                sqlCmd.Parameters["@tbl_CountryId"].Value = locationFormUI.Tbl_CountryId;

                sqlCmd.Parameters.Add("@City", SqlDbType.NVarChar);
                sqlCmd.Parameters["@City"].Value = locationFormUI.City;

                result = sqlCmd.ExecuteNonQuery();

                sqlCmd.Dispose();
                SupportCon.Close();
            }
        }
        catch (Exception exp)
        {
            logExcpUIobj.MethodName       = "UpdateLocation()";
            logExcpUIobj.ResourceName     = "LocationFormDAL.CS";
            logExcpUIobj.RecordId         = locationFormUI.Tbl_LocationId;
            logExcpUIobj.ExceptionDetails = "Error Occured. System Generated Error is: " + exp.ToString();
            logExcpDALobj.SaveExceptionToDB(logExcpUIobj);

            log.Error("[LocationFormDAL : UpdateLocation] An error occured in the processing of Record Id : " + locationFormUI.Tbl_LocationId + ". Details : [" + exp.ToString() + "]");
        }

        return(result);
    }
    public DataTable GetLocationListById(LocationFormUI locationFormUI)
    {
        DataSet   ds   = new DataSet();
        DataTable dtbl = new DataTable();

        try
        {
            using (SqlConnection SupportCon = new SqlConnection(connectionString))
            {
                SqlCommand sqlCmd = new SqlCommand("SP_Location_SelectById", SupportCon);
                sqlCmd.CommandType    = CommandType.StoredProcedure;
                sqlCmd.CommandTimeout = commandTimeout;

                sqlCmd.Parameters.Add("@tbl_LocationId", SqlDbType.NVarChar);
                sqlCmd.Parameters["@tbl_LocationId"].Value = locationFormUI.Tbl_LocationId;

                using (SqlDataAdapter adapter = new SqlDataAdapter(sqlCmd))
                {
                    adapter.Fill(ds);
                }
            }
            if (ds.Tables.Count > 0)
            {
                dtbl = ds.Tables[0];
            }
        }
        catch (Exception exp)
        {
            logExcpUIobj.MethodName       = "GetLocationListById()";
            logExcpUIobj.ResourceName     = "LocationFormDAL.CS";
            logExcpUIobj.RecordId         = locationFormUI.Tbl_LocationId;
            logExcpUIobj.ExceptionDetails = "Error Occured. System Generated Error is: " + exp.ToString();
            logExcpDALobj.SaveExceptionToDB(logExcpUIobj);

            log.Error("[LocationFormDAL : GetLocationListById] An error occured in the processing of Record Id : " + locationFormUI.Tbl_LocationId + ". Details : [" + exp.ToString() + "]");
        }
        finally
        {
            ds.Dispose();
        }

        return(dtbl);
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        LocationFormUI locationFormUI = new LocationFormUI();

        try
        {
            locationFormUI.ModifiedBy         = SessionContext.UserGuid;
            locationFormUI.Tbl_OrganizationId = SessionContext.OrganizationId;
            locationFormUI.LocationCode       = txtLocationCode.Text;
            locationFormUI.Description        = txtDescription.Text;
            locationFormUI.Tbl_CountryId      = txtCountryGuid.Text;
            locationFormUI.City           = txtCity.Text;
            locationFormUI.Tbl_LocationId = Request.QueryString["LocationId"];
            if (locationFormBAL.UpdateLocation(locationFormUI) == 1)
            {
                divSuccess.Visible = true;
                divError.Visible   = false;
                lblSuccess.Text    = Resources.GlobalResource.msgRecordUpdatedSuccessfully;
                this.Page.ClientScript.RegisterStartupScript(this.GetType(), "clearform", "ClearForm();", true);
            }
            else
            {
                divSuccess.Visible = false;
                divError.Visible   = true;

                lblError.Text = Resources.GlobalResource.msgCouldNotUpdateRecord;
                this.Page.ClientScript.RegisterStartupScript(this.GetType(), "clearform", "ClearForm();", true);
            }
        }
        catch (Exception exp)
        {
            logExcpUIobj.MethodName       = "btnUpdate_Click()";
            logExcpUIobj.ResourceName     = "Location_LocationForm.CS";
            logExcpUIobj.RecordId         = "";
            logExcpUIobj.ExceptionDetails = "Error Occured. System Generated Error is: " + exp.ToString();
            logExcpDALobj.SaveExceptionToDB(logExcpUIobj);

            log.Error("[Location_LocationForm : btnUpdate_Click] An error occured in the processing of Record Id : " + locationFormUI.Tbl_LocationId + ".  Details : [" + exp.ToString() + "]");
        }
    }