Example #1
0
 public MenuDataItem(SecPageEntity page, MenuDataItem parentMenu)
 {
     ParentMenu = parentMenu;
     Page = page;
     SubMenu = new List<MenuDataItem>();
     ValidControls = new List<SecPermissionEntity>();
 }
Example #2
0
        public virtual SecPageDomain CreateSecPageDomain()
        {
            SecPageEntity entity = new SecPageEntity();
            entity.PageId = Guid.NewGuid().ToString();

            return new SecPageDomain(entity);
        }
Example #3
0
 /// <summary>
 /// 页面选择绑定
 /// </summary>
 void DDLBind()
 {
     SecPageEntity rootPage = new SecPageEntity();
     rootPage.PageId = VSASYSConst.C_Root_Parent_ID;
     PageDomain rootDomain = new PageDomain(rootPage);
     AddPageToDDL(rootDomain.ChildsDomain, 0);
     if (0 < ddlParanet.Items.Count)
     {
         if (!string.IsNullOrEmpty(ddlParanet.Items[0].Value))
         {
             ddlParanet.Items.Insert(0, new ListItem(GetMessage("SYSTEM_ROLE_MESSAGE_ROLESELECT"), VSASYSConst.C_Root_Parent_ID));
         }
     }
 }
 /// <summary>
 /// 绑定页面选择
 /// </summary>
 void DDLBind()
 {
     SecPageEntity rootPage = new SecPageEntity();
     rootPage.PageId = VSASYSConst.C_Root_Parent_ID;
     PageDomain rootDomain = new PageDomain(rootPage);
     AddPageToDDL(rootDomain.ChildsDomain, 0);
 }
Example #5
0
        //保存报表
        public virtual bool SaveReport(DataTable dtReport, string reportName, string remark, string user, string reportID)
        {
            //1. 生成菜单项
            SecPageEntity objPage;
            if (reportID != "")
            {
                objPage = DataAccess.SelectSingle<SecPageEntity>(reportID);
                objPage.PageId = reportID;
            }
            else
            {
                objPage = new SecPageEntity();
                objPage.PageId = Guid.NewGuid().ToString();
                objPage.MenuOrder = GetLastReportOrder();
            }
            
            objPage.PageName = reportName;
            objPage.ParentId = "11";
            objPage.PageUrl = "~/Search/DynamicReportDisplay.aspx?ReportID=" + objPage.PageId;
            objPage.IsMenu = 1;
            objPage.MenuLevel = 1;
            
            objPage.Remark = remark;
            objPage.LastModifiedBy = user;
            objPage.LastModifiedTime = DateTime.Now;
            objPage.IcoCssclass = "Report";

            using (DataAccessBroker broker = DataAccessFactory.Instance())
            {
                broker.BeginTransaction();
                try
                {
                    if (reportID != "")
                    {
                        DataAccess.Update(objPage, broker);
                    }
                    else
                    {
                        DataAccess.Insert(objPage, broker);
                    }


                    if (dtReport != null && dtReport.Rows.Count > 0)
                    {
                        string strSql = @"delete " + ReportTable.C_TableName + "  where " + ReportTable.C_Report_ID + "='" + objPage.PageId + "'";
                        broker.ExecuteNonQuery(strSql, null, CommandType.Text);

                        ReportEntity objEntity;
                        foreach (DataRow drReport in dtReport.Rows)
                        {
                            objEntity = new ReportEntity();
                            objEntity.Id = Guid.NewGuid().ToString();
                            objEntity.ReportId = objPage.PageId;
                            objEntity.Type = drReport["Type"].ToString();
                            objEntity.ColumnName = drReport["Column_Name"].ToString();
                            objEntity.DisplayName = drReport["Display_Name"].ToString();
                            objEntity.DisplayOrder = drReport["Display_Order"].ToString();

                            objEntity.IsQuery = drReport["Is_Query"].ToString();
                            objEntity.IsDeleted = "0";
                            objEntity.ModifyDate = DateTime.Now;
                            objEntity.ModifyUser = user;
                            objEntity.Datatype = drReport["DataType"].ToString();

                            DataAccess.Insert(objEntity, broker);
                        }
                    }
                    BPSC.Common.WebUtils.WebCaching.PageCaching = null;
                    broker.Commit();
                    return true;
                }
                catch
                {
                    broker.RollBack();
                    return false;
                }
            }
        }
Example #6
0
        public virtual bool DeleteReport(List<string> reportIDS)
        {
            using (DataAccessBroker objBroker = DataAccessFactory.Instance())
            {
                try
                {
                    objBroker.BeginTransaction();

                    foreach (string reportID in reportIDS)
                    {
                        string strSql = @"delete " + ReportTable.C_TableName + "  where " + ReportTable.C_Report_ID + "='" + reportID + "'";
                        objBroker.ExecuteNonQuery(strSql, null, CommandType.Text);

                        SecPageEntity report = new SecPageEntity();
                        report.PageId = reportID;
                        DataAccess.Delete(report, objBroker);
                    }
                    objBroker.Commit();
                    return true;
                }
                catch (Exception e)
                {
                    objBroker.RollBack();
                    return false;
                }
            }
        }
Example #7
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="SecPageEntity"></param>
 public PageDomain(SecPageEntity SecPageEntity)
     : base(SecPageEntity)
 {
 }
        private void LoadData(SecPageEntity entity)
        {
            //1. 获取报表基本信息
            txtReportName.Text = entity.PageName;
            txtRemark.Text = entity.Remark;



            //2. 获取选中的table
            //dexTableList_RowDataBound

            //3. 获取选中的列
            DataTable dtSelectedTable = SelectedTable;
            if (dtSelectedTable == null)
            {
                dtSelectedTable = new DataTable();
                dtSelectedTable.Columns.Add("tableName");
                dtSelectedTable.Columns.Add("ColumnName");
                dtSelectedTable.Columns.Add("DisplayName");
                dtSelectedTable.Columns.Add("Display_Order");
                dtSelectedTable.Columns.Add("DataType");
                dtSelectedTable.Columns.Add("Checked");
            }
            DataTable dtTableNames;
            for (int i = 0; i < dexTableList.Rows.Count; i++)
            {
                if (((CheckBox)dexTableList.Rows[i].FindControl("cbxSelect")).Checked)
                {
                    DataRow drColumn;
                    DataTable dtSelectTable = MainService.ReportService.GetAllColumnsByTable(((Label)dexTableList.Rows[i].FindControl("lblTableName")).Text.Trim());
                    foreach (DataRow drSelect in dtSelectTable.Rows)
                    {
                        drColumn = dtSelectedTable.NewRow();
                        drColumn["tableName"] = drSelect["tableName"].ToString().Trim();
                        drColumn["ColumnName"] = drSelect["ColumnName"].ToString().Trim();
                        drColumn["DisplayName"] = "";
                        drColumn["Display_Order"] = "";
                        drColumn["DataType"] = drSelect["DataType"].ToString().Trim();
                        drColumn["Checked"] = "";

                        dtTableNames = MainService.ReportService.GetSelectColumns(ReportID);
                        foreach (DataRow drColumnName in dtTableNames.Rows)
                        {
                            if ("[" + drSelect["tableName"].ToString().Trim() + "].[" + drSelect["ColumnName"].ToString().Trim() + "]" == drColumnName["Column_Name"].ToString().Trim())
                            {
                                drColumn["DisplayName"] = drColumnName["Display_Name"].ToString().Trim();
                                drColumn["Display_Order"] = drColumnName["Display_Order"].ToString().Trim();
                                drColumn["Checked"] = "1";
                            }
                        }
                        dtSelectedTable.Rows.Add(drColumn);
                    }
                }
            }

            SelectedTable = dtSelectedTable;
            dexSelectedTable.DataSource = dtSelectedTable;
            dexSelectedTable.DataBind();


            //汇总统计列
            txtSumColumn.Text = MainService.ReportService.GetSunColumn(ReportID);

            //多表关联
            txtWhere.Text = MainService.ReportService.GetValueByType(ReportID, "where");


            //分组查询
            txtGroupBy.Text = MainService.ReportService.GetValueByType(ReportID, "Group By");

            //排序
            txtOrderBy.Text = MainService.ReportService.GetValueByType(ReportID, "Order By");
        }
Example #9
0
 public virtual void UpdateSecPageEntity(SecPageEntity entity, DataAccessBroker broker)
 {
     DataAccess.Update(entity, broker);
 }
Example #10
0
 public virtual void InsertSecPageEntity(SecPageEntity entity, DataAccessBroker broker)
 {
     DataAccess.Insert(entity, broker);
 }
Example #11
0
        public virtual List<MenuDataItem> GetMenuDataItemByUserId(string userId)
        {
            List<MenuDataItem> menuDataItemList = new List<MenuDataItem>();
            SecPageEntity SecPageEntity = new SecPageEntity();
            SecPageEntity.PageId = BPSC.Common.Const.VSASYSConst.C_Root_Parent_ID;
            PageDomain baseDomain = new PageDomain(SecPageEntity);
            Dictionary<string, decimal> pageDataScopes = GetPageDataScope(userId);//页面数据权限

            foreach (PageDomain pageDomain in baseDomain.ChildsDomain)
            {
                if (GetPageIds(userId).Contains(pageDomain.SecPageEntity.PageId))
                {
                    MenuDataItem rootMenuDataItem = pageDataScopes.ContainsKey(pageDomain.SecPageEntity.PageId) ? new MenuDataItem(pageDomain.SecPageEntity, null,(DataScope)Enum.Parse(typeof(DataScope),pageDataScopes[pageDomain.SecPageEntity.PageId].ToString())):new MenuDataItem(pageDomain.SecPageEntity, null) ;
                    foreach (PermissionDomain permissionDomain in pageDomain.PermissionDomainList)
                    {
                        if (GetPermissionIds(userId).Contains(permissionDomain.SecPermissionEntity.PermissionId))
                        {
                            rootMenuDataItem.ValidControls.Add(permissionDomain.SecPermissionEntity);
                        }
                    }
                    Bind(rootMenuDataItem, pageDomain, userId);
                    menuDataItemList.Add(rootMenuDataItem);
                }
            }
            return menuDataItemList;
        }
Example #12
0
 public SecPageDomain(SecPageEntity entity)
     : base(entity)
 {
     masterEntity = entity;
 }
Example #13
0
 /// <summary>
 /// 绑定页面选择
 /// </summary>
 void DDLBind(string moduleID)
 {
     ddlPage.Items.Clear();
     SecPageEntity rootPage = new SecPageEntity();
     rootPage.PageId = VSASYSConst.C_Root_Parent_ID;
     PageDomain rootDomain = new PageDomain(rootPage);
     AddPageToDDL(SystemService.PageService.GetDomainChildsByParentId(VSASYSConst.C_Root_Parent_ID), 0);
 }