protected void Statusgrdvw_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string           name, desc, id;
        int              StatusId   = 0;
        ChangeStatus_mst ObjStatus1 = new ChangeStatus_mst();

        name = ((TextBox)Statusgrdvw.Rows[e.RowIndex].Cells[1].Controls[0].FindControl("txtStatusName")).Text;
        desc = ((TextBox)Statusgrdvw.Rows[e.RowIndex].Cells[2].Controls[0].FindControl("txtStatusdesc")).Text;
        id   = Convert.ToString(Statusgrdvw.Rows[e.RowIndex].Cells[0].Text);

        StatusId = Convert.ToInt16(id);

        statusnamecount = ObjStatus1.Get_By_StatusName(name);
        ObjStatus1      = ObjStatus1.Get_By_id(StatusId);

        if ((statusnamecount == 0) && (name != ""))
        {
            ObjStatus1.Statusname     = name;
            ObjStatus1.ChangeStatusid = StatusId;
            ObjStatus1.Description    = desc;
            ObjStatus1.Update();
            Statusgrdvw.EditIndex = -1;
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errupdate.ToString();
        }
        else if (name == "")
        {
            BindGrid();
            lblerrmsg.Text = "Status name should not be empty";
        }
        else if (ObjStatus1.Statusname == name)
        {
            ObjStatus1.ChangeStatusid = StatusId;
            ObjStatus1.Statusname     = name;
            ObjStatus1.Description    = desc;
            ObjStatus1.Update();
            Statusgrdvw.EditIndex = -1;
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errupdate.ToString();
        }

        else
        {
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errStatusExist.ToString();
        }
        Statusgrdvw.EditIndex = -1;
    }
 protected void btnStatusAdd_Click(object sender, EventArgs e)
 {
     statusnamecount = ObjStatus.Get_By_StatusName(txtStatusName.Text.ToString());
     if (statusnamecount == 0)
     {
         ObjStatus.Description = txtStatusDesc.Text.ToString();
         ObjStatus.Statusname  = txtStatusName.Text.ToString();
         ObjStatus.Insert();
         BindGrid();
         lblerrmsg.Text = Resources.MessageResource.erradd.ToString();
     }
     else
     {
         lblerrmsg.Text = Resources.MessageResource.errStatusExist.ToString();
     }
     txtStatusName.Text = "";
     txtStatusDesc.Text = "";
 }
    protected void Statusgrdvw_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string name, desc, id;
        int StatusId = 0;
        ChangeStatus_mst ObjStatus1 = new ChangeStatus_mst();

            name = ((TextBox)Statusgrdvw.Rows[e.RowIndex].Cells[1].Controls[0].FindControl("txtStatusName")).Text;
            desc = ((TextBox)Statusgrdvw.Rows[e.RowIndex].Cells[2].Controls[0].FindControl("txtStatusdesc")).Text;
            id = Convert.ToString(Statusgrdvw.Rows[e.RowIndex].Cells[0].Text);

        StatusId = Convert.ToInt16(id);

        statusnamecount = ObjStatus1.Get_By_StatusName(name);
        ObjStatus1 = ObjStatus1.Get_By_id(StatusId);

        if ((statusnamecount == 0) && (name != ""))
        {
            ObjStatus1.Statusname = name;
            ObjStatus1.ChangeStatusid = StatusId;
            ObjStatus1.Description = desc;
            ObjStatus1.Update();
            Statusgrdvw.EditIndex = -1;
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errupdate.ToString();
        }
        else if (name == "")
        {
            BindGrid();
            lblerrmsg.Text = "Status name should not be empty";
        }
        else if (ObjStatus1.Statusname == name)
        {
            ObjStatus1.ChangeStatusid = StatusId;
            ObjStatus1.Statusname = name;
            ObjStatus1.Description = desc;
            ObjStatus1.Update();
            Statusgrdvw.EditIndex = -1;
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errupdate.ToString();
        }

        else
        {
            BindGrid();
            lblerrmsg.Text = Resources.MessageResource.errStatusExist.ToString();
        }
        Statusgrdvw.EditIndex = -1;
    }
    protected void BindGridForAllParameter()
    {
        #region Declaration of localvariable and table Variable
        int       filterId;
        DataTable dtTable = new DataTable();
        dtTable = CreateDataTable();
        string userName        = "";
        int    varTechnicianId = 0;
        if (drpTechnician.SelectedValue != "")
        {
            varTechnicianId = Convert.ToInt16(drpTechnician.SelectedValue);
        }

        string varSortParameter = "";
        varSortParameter = drpSort.SelectedValue;
        if (varSortParameter == "0")
        {
            varSortParameter = "createdatetime";
        }
        #endregion
        #region Get Current User and his Role
        MembershipUser User              = Membership.GetUser();
        string         varUserRole       = "";
        string         varRoleTechnician = "";
        if (User != null)
        {
            userName = User.UserName.ToString();

            string[] arrUserRole = Roles.GetRolesForUser();
            varUserRole       = arrUserRole[0].ToString();
            varRoleTechnician = Resources.MessageResource.strTechnicianRole.ToString();
        }
        #endregion
        #region Get User object  by Calling Function Get_UserLogin_By_UserName() via passing parameter username and organizationid
        objOrganization = objOrganization.Get_Organization();
        objUser         = objUser.Get_UserLogin_By_UserName(userName, objOrganization.Orgid);
        #endregion
        #region if UserExist
        if (objUser.Userid != 0)
        {
            ViewState["Userid"] = objUser.Userid;
            string fromdate = null;
            string todate   = null;
            if (ViewState["fromdate"] != null)
            {
                fromdate = ViewState["fromdate"].ToString();
            }
            if (ViewState["todate"] != null)
            {
                todate = ViewState["todate"].ToString();
            }
            if (fromdate == "")
            {
                fromdate = null;
            }
            if (todate == "")
            {
                todate = null;
            }
            #region Declare Local Variables and Collection of Incident_mst Type
            string Status;

            //            int siteid;
            #endregion
            #region Get the Siteid and Filter Parameter
            //siteid = obj.Siteid;
            filterId = Convert.ToInt16(drpFilter.SelectedValue);
            #endregion
            #region If Role of User is Technician
            if (varUserRole == varRoleTechnician)
            {
                lblTechnician.Visible = false;
                drpTechnician.Visible = false;
                //lblTechnician1.Visible = false;
                //drpTechnician1.Visible = false;
                //btnAssigned.Visible = false;
                #region If Filter Variable is All
                if (filterId == 0)
                {
                    //  col = objIncident.Get_All_By_Siteid_Technicianid(siteid, objUser.Userid, fromdate, todate, varSortParameter);
                }
                #endregion
                #region If Filter Variable is Requested
                else if (filterId == 1)
                {
                    Status = Resources.MessageResource.strChangestatusrequested.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Approval
                else if (filterId == 2)
                {
                    Status = Resources.MessageResource.StrApproval.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Approval
                else if (filterId == 3)
                {
                    Status = Resources.MessageResource.StrApproved.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Rejected
                else if (filterId == 4)
                {
                    Status = Resources.MessageResource.StrRejected.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Planning
                else if (filterId == 5)
                {
                    Status = Resources.MessageResource.StrPlanning.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Testing
                else if (filterId == 6)
                {
                    Status = Resources.MessageResource.StrTesting.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Release
                else if (filterId == 7)
                {
                    Status = Resources.MessageResource.StrRelease.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Implemented
                else if (filterId == 8)
                {
                    Status = Resources.MessageResource.StrImplemented.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Completed
                else if (filterId == 9)
                {
                    Status = Resources.MessageResource.StrCompleted.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid_technicianid(statusid, objUser.Userid, fromdate, todate, varSortParameter);
                }

                #endregion
            }
            #endregion
            #region If User Role is other then technician
            else
            {
                #region If Filter Variable is All
                if (filterId == 0)
                {
                    //  col = objIncident.Get_All_By_Siteid_Technicianid(siteid, objUser.Userid, fromdate, todate, varSortParameter);
                }
                #endregion
                #region If Filter Variable is Requested
                else if (filterId == 1)
                {
                    Status = Resources.MessageResource.strChangestatusrequested.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);


                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Approval
                else if (filterId == 2)
                {
                    Status = Resources.MessageResource.StrApproval.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Approval
                else if (filterId == 3)
                {
                    Status = Resources.MessageResource.StrApproved.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Rejected
                else if (filterId == 4)
                {
                    Status = Resources.MessageResource.StrRejected.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Planning
                else if (filterId == 5)
                {
                    Status = Resources.MessageResource.StrPlanning.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Testing
                else if (filterId == 6)
                {
                    Status = Resources.MessageResource.StrTesting.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Release
                else if (filterId == 7)
                {
                    Status = Resources.MessageResource.StrRelease.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Implemented
                else if (filterId == 8)
                {
                    Status = Resources.MessageResource.StrImplemented.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
                #region If Filter Variable is Completed
                else if (filterId == 9)
                {
                    Status = Resources.MessageResource.StrCompleted.ToString();
                    int statusid;

                    statusid = ObjChangeStatus.Get_By_StatusName(Status);

                    col = ObjChange.Get_All_By_Statusid(statusid, fromdate, todate, varTechnicianId, varSortParameter);
                }

                #endregion
            }
            #endregion
        }
        #endregion
        #region Fetch Each object of type Change_mst from Collection Change_mst
        foreach (Change_mst obj in col)
        {
            #region Create Table row and assign value to it
            DataRow row;
            row                = dtTable.NewRow();
            row["Changeid"]    = Convert.ToString(obj.Changeid);
            row["title"]       = obj.Title;
            row["Requestedby"] = Convert.ToString(obj.Requestedby);
            row["CreatedByid"] = Convert.ToString(obj.CreatedByID);
            row["Technician"]  = Convert.ToString(obj.Technician);
            row["Statusid"]    = obj.Statusid;
            row["Priority"]    = obj.Priority;
            row["Createdtime"] = obj.Createdtime;
            dtTable.Rows.Add(row);
            #endregion
        }
        //}
        #endregion
        #region Bind Grid from datasource dtTable
        grdvwChange.DataSource = dtTable;
        grdvwChange.DataBind();

        #endregion
    }