Пример #1
0
        private void CreateTreeData()
        {
            try
            {
                SelectedNodes = (List <string>)Session["SelectedNodes"];
                List <GroupPerjawatan>           data     = (List <GroupPerjawatan>)Session["GroupPerjawatansData"];
                List <GroupPerjawatanTreeHelper> TreeData = new List <GroupPerjawatanTreeHelper>();
                if (data.Count > 0)
                {
                    TreeData = data.Where(x => x.ParentGroupPerjawatanID == string.Empty).OrderBy(x => x.GroupPerjawatanCode).Select(x =>
                                                                                                                                     new GroupPerjawatanTreeHelper()
                    {
                        GroupPerjawatanCode     = x.GroupPerjawatanCode,
                        GroupPerjawatanDesc     = x.GroupPerjawatanDesc,
                        ParentGroupPerjawatanID = x.ParentGroupPerjawatanID,
                        Status     = x.Status,
                        Level      = 0,
                        ChildCount = data.Where(y => y.ParentGroupPerjawatanID == x.GroupPerjawatanCode).Count()
                    }).ToList();

                    if (SelectedNodes == null || SelectedNodes.Count == 0)
                    {
                        Session["SelectedNodes"] = new List <string>();
                        SelectedNodes            = new List <string>();
                    }
                    else
                    {
                        //while(TreeData.Where(x=>x.IsExpanded).Select(x=>x).Count() < SelectedNodes.Count)
                        //{
                        for (int i = 0; i < TreeData.Count; i++)
                        {
                            if (SelectedNodes.Contains(TreeData[i].GroupPerjawatanCode))
                            {
                                //TreeData[i].IsExpanded = true;
                                foreach (GroupPerjawatan sd in data.Where(x => x.ParentGroupPerjawatanID == TreeData[i].GroupPerjawatanCode).OrderByDescending(x => x.GroupPerjawatanCode))
                                {
                                    GroupPerjawatanTreeHelper objSH = new GroupPerjawatanTreeHelper()
                                    {
                                        GroupPerjawatanCode     = sd.GroupPerjawatanCode,
                                        GroupPerjawatanDesc     = sd.GroupPerjawatanDesc,
                                        ParentGroupPerjawatanID = sd.ParentGroupPerjawatanID,
                                        Status     = sd.Status,
                                        Level      = TreeData[i].Level + 1,
                                        ChildCount = data.Where(y => y.ParentGroupPerjawatanID == sd.GroupPerjawatanCode).Count()
                                    };
                                    TreeData.Insert(i + 1, objSH);
                                }
                            }
                        }
                        //}
                    }
                }
                Session["GroupPerjawatansTree"] = TreeData;
                BindGrid();
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }
Пример #2
0
        //protected void btnCancel_Click(object sender, EventArgs e)
        //{
        //    ClearPageData();
        //    Session["SelectedGroupPerjawatan"] = null;
        //}

        protected void gvGroupPerjawatans_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            try
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    GroupPerjawatanTreeHelper rowItem = (GroupPerjawatanTreeHelper)e.Row.DataItem;
                    //((Label)e.Row.FindControl("lblIndent")).Width = Unit.Pixel(rowItem.Level * 30);
                    //((Label)e.Row.FindControl("lblDetailCode")).Text = rowItem.DetailCode;
                    int width = rowItem.Level * 30;

                    string strHTML = string.Empty;
                    if (rowItem.ChildCount > 0)
                    {
                        if (SelectedNodes.Contains(rowItem.GroupPerjawatanCode))
                        {
                            strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-minus-square pull-right\"></i></label> ";
                        }
                        else
                        {
                            strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-plus-square pull-right\"></i></label> ";
                        }
                    }
                    else
                    {
                        strHTML = "<label style=\"width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i></i></label> ";
                    }

                    LinkButton btnExpand = ((LinkButton)e.Row.FindControl("btnExpand"));
                    btnExpand.Text = "<div>" + strHTML + rowItem.GroupPerjawatanCode + "</div>";

                    if (rowItem.ParentGroupPerjawatanID != string.Empty)
                    {
                        ((LinkButton)e.Row.FindControl("lbAddItem")).Visible = false;
                    }
                    if (rowItem.ParentGroupPerjawatanID == string.Empty)
                    {
                        ((LinkButton)e.Row.FindControl("lbMakeRoot")).Visible = false;
                    }
                    if (rowItem.GroupPerjawatanCode == string.Empty)
                    {
                        ((LinkButton)e.Row.FindControl("btnExpand")).Visible  = false;
                        ((LinkButton)e.Row.FindControl("lbEit")).Visible      = false;
                        ((LinkButton)e.Row.FindControl("lbDelete")).Visible   = false;
                        ((LinkButton)e.Row.FindControl("lbCut")).Visible      = false;
                        ((LinkButton)e.Row.FindControl("lbPaste")).Visible    = false;
                        ((LinkButton)e.Row.FindControl("lbMakeRoot")).Visible = false;
                        ((LinkButton)e.Row.FindControl("lbAddChild")).Visible = false;
                    }

                    if (Session["SelectedGroupPerjawatan"] != null && ((GroupPerjawatan)Session["SelectedGroupPerjawatan"]).GroupPerjawatanCode == rowItem.GroupPerjawatanCode)
                    {
                        e.Row.Style["background-color"] = "skyblue";
                    }

                    var span = ((HtmlGenericControl)e.Row.Cells[2].FindControl("CustomStatus"));
                    if (rowItem.Status == "A")
                    {
                        span.InnerHtml = "<span class=\"label label-sm label-success arrowed-in arrowed-in-right tooltip-success\" " +
                                         "data-rel=\"tooltip\" data-placement=\"right\" title=\"Active Status. All operation has been enabled.\">Active</span>";
                    }
                    else if (rowItem.Status == "D")
                    {
                        span.InnerHtml = "<span class=\"label label-sm label-danger arrowed-in arrowed-in-right tooltip-error\" " +
                                         "data-rel=\"tooltip\" data-placement=\"right\" title=\"Inactive Status. All operation has been disabled.\">Inactive</span>";
                    }
                }
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }