protected void ManageeList_RowDataBound(object sender, GridViewRowEventArgs e) { try { switch (e.Row.RowType) { case DataControlRowType.Header: //... break; case DataControlRowType.DataRow: int LMID = Int32.Parse(Session["UserId"].ToString()); Button ConsoBtn = (Button)e.Row.FindControl("ConsoBtn"); List<ERS.DAL.Managees> mylist = (List<ERS.DAL.Managees>)((GridView)sender).DataSource; int EmpID = (int)((GridView)sender).DataKeys[e.Row.RowIndex]["EmpID"]; Managees BALManageeInst = new Managees(); Reviews RevInst = new Reviews(); if (BALManageeInst.CanConsolidate(EmpID)) ConsoBtn.Enabled = true; else ConsoBtn.Enabled = false; if (BALManageeInst.isConsolidated(EmpID, LMID)) ConsoBtn.Text = "Show Consolidated Review"; Label Fail = (e.Row.FindControl("Fail") as Label); if (RevInst.GetStatus(LMID, EmpID) == "Completed") ConsoBtn.ToolTip = "Self Review Has Been Filled By This Managee"; else ConsoBtn.ToolTip = "Self Review Has Not Been Filled"; break; } } catch { //...throw } }
protected void Page_Load(object sender, EventArgs e) { // Init , check session MenuItemMyReviews = "active"; Response.Cache.SetCacheability(HttpCacheability.NoCache); if (Session["UserId"] == null) Response.Redirect("Default.aspx"); if (Request.QueryString["SRI"] != null && !IsPostBack) { string referer = Request.UrlReferrer.ToString(); int ReviewID = Int32.Parse(Request.QueryString["SRI"].ToString()); ERS.BAL.Reviews rev = new ERS.BAL.Reviews(); String Type = rev.GetType(ReviewID); ERS.DAL.EmployeeWithLM ReviewedEmp = rev.GetEmployeeFromReview(ReviewID); LMName.InnerText = ReviewedEmp.CurrEmployeeLM.Name; EmpName.InnerText = ReviewedEmp.CurrEmployee.Name; EmpDesignation.InnerText = ReviewedEmp.CurrEmployee.Position.PositionName; bool isLMOfReview = rev.isLMOfReview(Int32.Parse(Session["UserID"].ToString()), ReviewID); bool isEmpOfReview = rev.isEmpOfReview(Int32.Parse(Session["UserID"].ToString()), ReviewID); // Is it LM's Filled Review For Employee bool LMSConsolidation = rev.isLMSConsolidation(ReviewID); // If this review is opened by someone who is not LM of this review // OR it is opened by employee himself or Reviewer Self OR Reviewers //Setting all to false; PeerPanel.Visible = false; LineManagerRating.Visible = false; DirectorRating.Visible = false; CalcRating.Visible = false; submit.Visible = false; save.Visible = false; Reject.Visible = false; if (!(isLMOfReview || isEmpOfReview)) Response.Redirect("Default.aspx"); // LM Opens for seeing And is not his own consolidation if (isLMOfReview && LMSConsolidation) { PeerPanel.Visible = true; LineManagerRating.Visible = true; Reject.Visible = false; } else if ( isLMOfReview && Type == "Solicitation" ) { PeerPanel.Visible = true; Reject.Visible = true; } else { // Review is opened by an Employee PeerPanel.Visible = false; LineManagerRating.Visible = false; DirectorRating.Visible = false; CalcRating.Visible = false; submit.Visible = false; // Disabling , will enable after querying and gettiing actual status of review save.Visible = false; Reject.Visible = false; } // Save in Viewstate ViewState["PreviousPageUrl"] = Request.UrlReferrer.ToString(); ViewState["ReviewID"] = ReviewID; ViewState["EmpID"] = ReviewedEmp.CurrEmployee.EmpID; // Load Cats Categories.DataSource = rev.GetCategories(); Categories.DataBind(); # region Decide To Show LM Comment Or Not bool toShowOrNot = true; String StatusOfCurrentReview = rev.GetStatus(ReviewID); if (StatusOfCurrentReview != null) { if (StatusOfCurrentReview == "Complete") { toShowOrNot = false; submit.Visible = false; save.Visible = false; } else if (StatusOfCurrentReview != "Rejected") { toShowOrNot = true; submit.Visible = true; save.Visible = true; } } #endregion # region Loading Saved Text foreach (RepeaterItem a in Categories.Items) { int pReviewID = Int32.Parse(Request.QueryString["SRI"].ToString()); int pCategoryID = Int32.Parse((a.FindControl("CatID") as HiddenField).Value); String str = rev.GetStatus(ReviewID); ERS.ReviewInfo RevInfo = rev.GetReviewInfo(ReviewID, pCategoryID); if(RevInfo != null ) { TextBox RatingsTxt = (a.FindControl("RatingsTxt") as TextBox); RatingsTxt.Text = RevInfo.Rating.ToString(); RatingsTxt.Enabled = toShowOrNot; TextBox CommentsTxt = (a.FindControl("CommentsTxt") as TextBox); CommentsTxt.Text = RevInfo.Comments.ToString(); CommentsTxt.Enabled = toShowOrNot; } } if (Session["isLM"].Equals(true)) { int lCategoryID = rev.GetCategoryID("LineManager"); ERS.ReviewInfo RevInfo = rev.GetReviewInfo(ReviewID,lCategoryID); if(RevInfo != null ) { LMCommentsTxt.Text = RevInfo.Comments; LMRatingsTxt.Text = RevInfo.Rating.ToString(); LMCommentsTxt.Enabled = toShowOrNot; LMRatingsTxt.Enabled = toShowOrNot; } } #endregion } }