Exemplo n.º 1
0
        /// <summary>
        /// 设置初始信息
        /// </summary>
        /// <param name="dal">访问元数据</param>
        /// <param name="moduleID">所属模块 </param>
        public void SetInfo(DataAccessLibrary dal, int moduleID)
        {
            ModuleID = moduleID;

            //寻找模块里最大的视图ID
            string sql       = "select top 1 PVID from Manage_PageView where ModuleID=" + moduleID;
            var    tmpViewID = dal.ExecuteScalar <string>(sql);

            if (tmpViewID == null)
            {
                PageViewID = int.Parse(moduleID + "01");
            }
            else
            {
                PageViewID = int.Parse(tmpViewID) + 1;
            }

            PageViewTitle = "";

            ColumnCount     = 1;
            ForeignColumnID = 0;
            LockColumnCount = 0;
            LockRowCount    = 0;
            PKColumnID      = 0;
            SqlTypeID       = SQLType.ParameterSQL;

            TableIDDataSource = 0;
            TableIDModifly    = 0;
            TableWidth        = 0;
        }
        protected void btnStart_Click(object sender, EventArgs e)
        {
            string            dataBaseID = GetDataBaseIDbyCookie();
            DataAccessLibrary dalSource  = CreateDalbyDataBaseID(dataBaseID);

            dataBaseID = lstSource.SelectedValue;
            DataAccessLibrary dalTarget = CreateDalbyDataBaseID(dataBaseID);

            DataAccessLibrary dalTargetSelect = CreateDalbyDataBaseID(dataBaseID);

            //在 OutputMeta.cs实现
            string err = IntoModule(dalSource, dalTarget, dalTargetSelect);

            if (err == "0")
            {
                //没有记录
                txtMsg.Text += "\n源数据库里没有记录!";
                return;
            }

            IntoButton(dalSource, dalTarget, dalTargetSelect);
            IntoPager(dalSource, dalTarget, dalTargetSelect);
            IntoPV(dalSource, dalTarget, dalTargetSelect);
            IntoPVCol(dalSource, dalTarget, dalTargetSelect);
        }
        private void LoadModule(GridView gv, string dataBaseID)
        {
            DataAccessLibrary dal = CreateDalbyDataBaseID(dataBaseID);

            //提取数据的SQL
            const string sqlGvSource = @"SELECT ModuleID,   ParentID, ParentIDAll, ModuleName, ModuleLevel, IsHidden, IsLock, DisOrder, 
                                  AddUserid, AddTime, IsDel, UpdateTime, UpdateUserID
                            FROM  Manage_Module 
                            where ModuleID in ({0})  order by DisOrder";

            bool isNotHasData = false;  //是否取到记录

            DataTable dt = dal.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                dt.Rows.Add(dt.NewRow());
                isNotHasData = true;
            }
            gv.DataSource = dt;
            gv.DataBind();

            if (isNotHasData)
            {
                int columnCount = dt.Columns.Count;
                gv.Rows[0].Cells.Clear();
                gv.Rows[0].Cells.Add(new TableCell());
                gv.Rows[0].Cells[0].ColumnSpan = columnCount;
                gv.Rows[0].Cells[0].Text       = "没有记录";
                gv.Rows[0].Cells[0].Style.Add("text-align", "center");
            }
        }
        private void LoadModule(GridView gv, string dataBaseID)
        {
            DataAccessLibrary dal = CreateDalbyDataBaseID(dataBaseID);

            //提取数据的SQL
            const string sqlGvSource = @"SELECT[TableID],[TableName],[PKColumnID],[TypeID],[HaveTableIDs],[Content],[ExcelTableName],[PDGuid],[DisOrder],[AddUserid],[AddTime],[IsDel]
                            FROM  [Manage_Table] 
                            where [TableID] in ({0})  order by TableID";

            bool isNotHasData = false;  //是否取到记录

            DataTable dt = dal.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                dt.Rows.Add(dt.NewRow());
                isNotHasData = true;
            }
            gv.DataSource = dt;
            gv.DataBind();

            if (isNotHasData)
            {
                int columnCount = dt.Columns.Count;
                gv.Rows[0].Cells.Clear();
                gv.Rows[0].Cells.Add(new TableCell());
                gv.Rows[0].Cells[0].ColumnSpan = columnCount;
                gv.Rows[0].Cells[0].Text       = "没有记录";
                gv.Rows[0].Cells[0].Style.Add("text-align", "center");
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// 获取指定的字段的说明
        /// </summary>
        /// <param name="dal"></param>
        /// <param name="tableName"></param>
        /// <param name="tableId"></param>
        /// <param name="colIndex"></param>
        /// <returns></returns>
        private string getColRemark(DataAccessLibrary dal, string tableName, string tableId, string colIndex)
        {
            tableName = tableName.Trim('\'');
            colIndex  = colIndex.TrimStart('0');

            string sql = "select top 1 [说明] from [{0}] where [表编号] = {1} and [字段编号] = {2}";

            string remark = dal.ExecuteString(string.Format(sql, tableName, tableId, colIndex));

            return(remark);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 创建访问excel的实例
        /// </summary>
        /// <returns></returns>
        private DataAccessLibrary GetDal()
        {
            const string sql = "SELECT TOP 1 ConnString FROM   Manage_DataBase WHERE  (DataBaseID = 6)";

            string excelPath = Dal.DalMetadata.ExecuteString(sql);

            string            cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            DataAccessLibrary acc      = DalFactory.CreateDal(cnString, "System.Data.OleDb");

            return(acc);
        }
        /// <summary>
        /// 获取指定的字段的说明
        /// </summary>
        /// <param name="dal"></param>
        /// <param name="tableName"></param>
        /// <param name="tableId"></param>
        /// <param name="colIndex"></param>
        /// <returns></returns>
        private string getColRemark(DataAccessLibrary dal,string tableName, string tableId, string colIndex)
        {
            tableName = tableName.Trim('\'');
            colIndex = colIndex.TrimStart('0');
            
            string sql = "select top 1 [说明] from [{0}] where [表编号] = {1} and [字段编号] = {2}";

            string remark = dal.ExecuteString(string.Format(sql, tableName, tableId, colIndex));

            return remark;

        }
        //获取数据访问函数库的实例
        private DataAccessLibrary CreateDalbyDataBaseID(string dataBaseID)
        {
            //数据库的连接字符串
            const string sqlDataBase = @"SELECT   ConnString, Provider
                            FROM      Manage_DataBase
                            WHERE   (DataBaseID = {0})";

            string[] cnInfo = Dal.DalMetadata.ExecuteStringsBySingleRow(string.Format(sqlDataBase, dataBaseID));

            DataAccessLibrary dal = DalFactory.CreateDal(cnInfo[0], cnInfo[1]);

            return(dal);
        }
Exemplo n.º 9
0
        public override void Process()
        {
            base.Process();

            DataAccessLibrary dal = GetDal();

            var oleConn = (OleDbConnection)dal.Command.Connection;

            oleConn.Open();
            DataTable dtExcelSchema = oleConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

            oleConn.Close();

            string colId = Request["id"];


            string remarks = "{";


            if (dtExcelSchema != null)
            {
                string[] ids = colId.Split(',');

                int index = 0;
                foreach (string id in ids)
                {
                    string remark   = "";
                    string tableId  = id.Substring(0, 4);
                    string colIndex = id.Substring(4, 3);

                    foreach (DataRow row in dtExcelSchema.Rows)
                    {
                        string tableName = row[2].ToString();
                        remark = getColRemark(dal, tableName, tableId, colIndex);

                        if (!string.IsNullOrEmpty(remark))
                        {
                            break;
                        }
                    }

                    remarks += "\"" + index++ + "\":\"" + remark + "\",";
                }

                remarks = remarks.TrimEnd(',') + "}";
            }

            Response.Write("\"remark\":");
            Response.Write(remarks);
        }
Exemplo n.º 10
0
        /// <summary>
        /// 根据父节点信息设置子节点的基本信息
        /// </summary>
        /// <param name="dal">数据访问函数库的实例 </param>
        /// <param name="parentID">父节点ID</param>
        /// <param name="moduleID">用户输入的模块ID </param>
        public void SetSonNote(DataAccessLibrary dal, int parentID, string moduleID)
        {
            #region 获取数据库里的最大的ModuleID
            //因为是功能节点管理,可以限制单人操作,所以这里不考虑并发的问题。
            if (moduleID.Length == 0)
            {
                string tmpModuleID =
                    dal.ExecuteString("select top 1 ModuleID from Manage_Module order by ModuleID desc ");
                ModuleID = int.Parse(tmpModuleID);
                ModuleID = ModuleID + 1;
            }
            //this.PowerMark = this.ModuleID;
            #endregion

            #region 设置其他信息
            //提取父节点信息
            //                       0           1           2          3       4     5
            string   sql        = "select ParentID, ParentIDAll, ModuleLevel, DisOrder, URL, Target FROM Manage_Module WHERE (ModuleID = {0})";
            string[] moduleInfo = dal.ExecuteStringsBySingleRow(string.Format(sql, parentID));
            if (moduleInfo != null)
            {
                ParentID    = parentID;                         //父节点
                ParentIDAll = moduleInfo[1] + "," + parentID;   //父节点路径
                ModuleLevel = int.Parse(moduleInfo[2]) + 1;     //节点级数
                URL         = moduleInfo[4];                    //网址
                Target      = moduleInfo[5];                    //目标

                GridPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "01");
                FindPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "02");

                #region 设置序号,子节点的情况
                //获取指定的节点的所有子节点的最大序号序号。如果有则+10设置,等真正保存的时候再修改后面的序号。
                //如果没有则本序号 + 10。

                sql = "select top 1 DisOrder from Manage_Module where ParentIDAll + ',' like '{0},{1},%' and DisOrder > {2} order by DisOrder desc";
                string tmpDisOrder = dal.ExecuteString(string.Format(sql, moduleInfo[1], parentID, moduleInfo[3]));
                if (tmpDisOrder != null)
                {
                    //有子节点,设置序号
                    DisOrder = Int32.Parse(tmpDisOrder) + 10;
                }
                else
                {
                    //选中的节点没有子节点
                    DisOrder = Int32.Parse(moduleInfo[3]) + 10;
                }
                #endregion
            }
            #endregion
        }
Exemplo n.º 11
0
        protected void Page_Load(object sender, EventArgs e)
        {
            _dalCustomer = Dal.DalCustomer;

            if (!Page.IsPostBack)
            {
                //获取数据库里最大的表编号
                string sql = @"SELECT  TOP 1 TableID FROM Manage_Table WHERE (TableID < 1000000) ORDER BY TableID DESC";

                int tableNo = _dalCustomer.ExecuteScalar <int>(sql);

                txtTableNo.Text = (tableNo + 5).ToString(CultureInfo.InvariantCulture);
                txtColNo.Text   = txtTableNo.Text + "010";
            }
        }
Exemplo n.º 12
0
 /// <summary>
 /// 回滚事务,并关闭连接。在程序出错的时候,自动调用。
 /// </summary>
 public void TranRollBack()
 {
     if (_dal.IsUseTrans)
     {
         _dbTran.Rollback();                         //回滚事务
         _dal.Command.Connection.Close();            //关闭连接
         _dal.IsUseTrans = false;                    //修改事务标志。
         //DbTran.Dispose();
     }
     else
     {
         //没有启用事务,或者已经回滚,或者已经提交了事务
         DataAccessLibrary.AddLogError("误操作。在没有启用事务,或者已经回滚,或者已经提交了事务的情况下再次回滚事务。请注意查看程序流程!");
     }
 }
Exemplo n.º 13
0
        protected override void OnPreLoad(EventArgs e)
        {
            base.OnPreLoad(e);

            HttpCookie ck = Request.Cookies["DataBaseID"];

            string excelPath = "";

            if (ck == null)
            {
                //没有cookies
            }


            string sql = "";

            if (!Page.IsPostBack)
            {
                //获取选择文档的下拉列表
                sql = @"SELECT  DataBaseID AS id, DataTitle AS txt
                                FROM    Manage_DataBase
                                WHERE     (KindID = 3) AND (DataName = N'{0}')";

                string dataName = ck.Value;

                if (!Functions.IsInt(dataName))
                {
                    dataName = "1";
                }

                lstData.DataSource = Dal.DalMetadata.ExecuteFillDataTable(string.Format(sql, dataName));
                lstData.DataBind();
            }

            sql = "SELECT TOP 1 ConnString FROM   Manage_DataBase WHERE  (DataBaseID = {0})";

            excelPath = Dal.DalMetadata.ExecuteString(string.Format(sql, this.lstData.SelectedValue));

            //const string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|客户项目数据库设计.xls; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            //string cnString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";

            _acc = DalFactory.CreateDal(cnString, "System.Data.OleDb");

            Pager1.Dal = _acc;

            _dalCustomer = Dal.DalCustomer;
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            _dalCustomer = Dal.DalCustomer;

            if (!Page.IsPostBack )
            {
                //获取数据库里最大的表编号
                string sql = @"SELECT  TOP 1 TableID FROM Manage_Table WHERE (TableID < 1000000) ORDER BY TableID DESC";

                int tableNo = _dalCustomer.ExecuteScalar<int>(sql);

                txtTableNo.Text = (tableNo + 5).ToString(CultureInfo.InvariantCulture);
                txtColNo.Text = txtTableNo.Text + "010";

            }
        }
Exemplo n.º 15
0
        protected void LstDataSelectedIndexChanged(object sender, EventArgs e)
        {
            const string sql = "SELECT TOP 1 ConnString FROM   Manage_DataBase WHERE  (DataBaseID = {0})";

            string excelPath = Dal.DalMetadata.ExecuteString(string.Format(sql, this.lstData.SelectedValue));

            string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";

            _acc = DalFactory.CreateDal(cnString, "System.Data.OleDb");

            Pager1.Dal = _acc;

            Heidden();
            GetTableName();
            Btn_TableName.SelectedIndex = 0;
        }
Exemplo n.º 16
0
        protected override void OnPreLoad(EventArgs e)
        {
            base.OnPreLoad(e);
          
            HttpCookie ck = Request.Cookies["DataBaseID"];

            string excelPath = "";
            if (ck == null)
            {
                //没有cookies
            }
             

            string sql = "";

            if (!Page.IsPostBack)
            {
                //获取选择文档的下拉列表
                sql = @"SELECT  DataBaseID AS id, DataTitle AS txt
                                FROM    Manage_DataBase
                                WHERE     (KindID = 3) AND (DataName = N'{0}')";

                string dataName = ck.Value;

                if (!Functions.IsInt(dataName))
                {
                    dataName = "1";
                }

                lstData.DataSource = Dal.DalMetadata.ExecuteFillDataTable(string.Format(sql, dataName));
                lstData.DataBind();
            }

            sql = "SELECT TOP 1 ConnString FROM   Manage_DataBase WHERE  (DataBaseID = {0})";

            excelPath = Dal.DalMetadata.ExecuteString(string.Format(sql, this.lstData.SelectedValue));

            //const string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|客户项目数据库设计.xls; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            //string cnString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            _acc = DalFactory.CreateDal(cnString, "System.Data.OleDb");

            Pager1.Dal = _acc;
           
            _dalCustomer = Dal.DalCustomer;

        }
Exemplo n.º 17
0
        public bool CreateButton(DataAccessLibrary dal, MyCheckBoxList lst, string userID, string width, string height)
        {
            string tmpModuleID = lst.Items[0].Value.Substring(0, 3);

            //                                              0        1         2            3           4            5             6        7         8      9    10       11
            string sql = @"insert into Manage_ButtonBar (ButtonID,ModuleID,OpenModuleID,BtnTitle,OpenPageViewID,FindPageViewID,BtnTypeID,DisOrder,AddUserid,URL,WebWidth,WebHeight,IsNeedSelect) 
                            values ({0},{1},{2},'{3}',{4},{5},{6},{7},{8},'{9}',{10},{11},{12})";

            int i = 1;

            foreach (ListItem item in lst.Items)
            {
                string btnTitle = item.Text.Split('_')[1];
                if (item.Selected)
                {
                    //选择了,创建按钮
                    switch (item.Text.Split('_')[1])
                    {
                    //                                           0           1           2           3                4           5       6        7        8                  9                10      11
                    case "添加":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "04"), "0", "40" + i, i * 10, userID, "DataForm.htm", width, height, "0"));
                        break;

                    case "查看":
                    case "修改":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "04"), "0", "40" + i, i * 10, userID, "DataForm.htm", width, height, "1"));
                        break;

                    case "删除":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "03"), "0", "40" + i, i * 10, userID, "/Data/DataDelete.ashx", 0, 0, "1"));
                        break;

                    case "查询":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "02"), "0", "40" + i, i * 10, userID, "", 0, 0, "0"));
                        break;

                    case "导出Excel":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, "0", "0", "40" + i, i * 10, userID, "", 0, 0, "0"));
                        break;
                    }
                }
                i++;
            }
            return(true);
        }
Exemplo n.º 18
0
        public bool CreatePageView(DataAccessLibrary dal, MyCheckBoxList lstPageView, string tableID, string userID)
        {
            string moduleID = lstPageView.Items[0].Value.Substring(0, 3);

            //                                                  0      1         2      3        4      5                 6            7            8     9
            string sql       = @"insert into Manage_PageView (PVID,ModuleID,PVTypeID,PVTitle,DisOrder,AddUserid,TableID_DataSource,TableID_Modifly,PKColumnID,ColumnCount) 
                                    values ({0},{1},{2},'{3}',{4},{5},{6},{7},{8},{9})";
            var    pvTypeIDs = new[] { "701", "702", "704", "703", "703" };
            var    pvTitles  = new[] { "列表视图", "查询视图", "删除视图", "添加视图", "修改视图" };


            int i = 1;

            foreach (ListItem item in lstPageView.Items)
            {
                if (item.Selected)
                {
                    //选择了,创建视图                                  0           1              2            3            4        5         6     7     8
                    switch (item.Text.Split('_')[1])
                    {
                    case "列表":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, tableID, "0", tableID + "010", 1));
                        CreatePageTurn(dal, item.Value, tableID);
                        break;

                    case "查询":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, "0", "0", "0", 3));
                        break;

                    case "删除":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, "0", tableID, tableID + "010", 1));
                        break;

                    case "表单/添加":
                    case "修改":
                        dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, tableID, tableID, tableID + "010", 1));
                        break;
                    }
                }
                i++;
            }
            return(true);
        }
Exemplo n.º 19
0
        private void IntoData(ManagerParameter para, DataRow dr, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect, string sqlExists, string sqlUpdate, string sqlInsert, string title)
        {
            for (int i = 0; i < para.Count; i++)
            {
                var parameterName = para[i].ParameterName.Replace("@", "");

                switch (parameterName)
                {
                case "AddTime":
                case "UpdateTime":
                    para[i].Value = System.Convert.ToDateTime(dr[parameterName]).ToString("yyyy-MM-dd HH:mm:ss");
                    break;

                default:
                    para[i].Value = dr[parameterName].ToString();
                    break;
                }
            }

            #region 添加或者修改
            if (dalTargetSelect.ExecuteExists(string.Format(sqlExists, dr[0])))
            {
                //有记录,修改
                dalTarget.ExecuteNonQuery(sqlUpdate);
                txtMsg.Text += "\n修改一条" + title + "记录:" + dr[0];
            }
            else
            {
                //没有记录,添加
                dalTarget.ExecuteNonQuery(sqlInsert);
                txtMsg.Text += "\n添加一条" + title + "记录:" + dr[0];
            }

            //判断是否出错
            if (dalTarget.ErrorMessage.Length > 1)
            {
                //导入数据时出错
                txtMsg.Text += "\n导入" + title + "信息的时候出错!" + dr[0];
                txtMsg.Text += "\n" + dalTarget.ErrorMessage + "\n==========\n";
                WritePara(para);
            }
            #endregion
        }
Exemplo n.º 20
0
        /// <summary>
        /// 提交事务,并关闭连接
        /// </summary>
        public void TranCommit()
        {
            if (_dal.IsUseTrans)
            {
                //启用了事务
                _dbTran.Commit();                           //提交事务
                _dal.Command.Connection.Close();            //关闭连接
                _dal.IsUseTrans = false;                    //修改事务标志。
                _dbTran.Dispose();
            }
            else
            {
                string str = "误操作。在没有启用事务,或者已经回滚,或者已经提交了事务的情况下再次提交事务。请注意查看程序流程!";
                _dal._errorMessage = str;

                //没有启用事务,或者已经回滚,或者已经提交了事务
                DataAccessLibrary.AddLogError(str);
            }
        }
Exemplo n.º 21
0
        public Network(
            IConfiguration configuration,
            IInputLayer inputLayer,
            IOutputReader <T> outputLayer
            )
        {
            if (configuration.HiddenLayerCount <= 0)
            {
                throw new ArgumentException("Layer count should be positive");
            }
            if (configuration.NeuronPerLayer <= 0)
            {
                throw new ArgumentException("Neuron per layer should be positive");
            }

            _configuration = configuration;


            randomSource = new Random();

            _inputLayer  = inputLayer;
            _outputLayer = outputLayer;

            _layers = new Layer[configuration.HiddenLayerCount + 2];

            AttachInput(inputLayer);
            CreateHiddenLayer();
            AttachOutput(outputLayer, configuration.HiddenLayerCount + 1);

            BindAllNeuron();

            UpdateWeight();

            if (configuration.SaveToDisk)
            {
                _dal = new DataAccessLibrary <T>();
                _dal.CreateDatabase();
                _dal.SaveNetwork(this);
            }
        }
Exemplo n.º 22
0
        public bool DisOrderIsSample(DataAccessLibrary dal, string moduleID)
        {
            if (dal.ExecuteExists("select top 1 1 from Manage_Module where DisOrder =" + DisOrder))
            {
                string parentPath =
                    dal.ExecuteString("select  ParentIDAll FROM Manage_Module WHERE (ModuleID = " + moduleID + ")");
                if (parentPath != null)
                {
                    //向后移动序号
                    dal.ExecuteNonQuery(
                        "update Manage_Module set DisOrder = DisOrder + 10 where ParentIDAll + ',' like '" + parentPath +
                        ",%'  and DisOrder >= " + DisOrder);
                }

                string err = dal.ErrorMessage;
                if (err.Length > 0)
                {
                    return(false);
                }
            }

            return(true);
        }
Exemplo n.º 23
0
        private void CreatePageTurn(DataAccessLibrary dal, string pvid, string tableID)
        {
            string sql;

            string orderColumns;

            sql = "select top 1 1 from Manage_Columns where TableID ={0} and ColSysName='DisOrder'";
            if (dal.ExecuteExists(string.Format(sql, tableID)))
            {
                orderColumns = "DisOrder";
            }
            else
            {
                sql          = "select top 1 ColSysName from Manage_Columns where TableID ={0} order by ColumnID ";
                orderColumns = dal.ExecuteString(string.Format(sql, tableID));
            }

            sql = "select top 1 1 from Manage_Pagination where PVID=" + pvid;
            if (!dal.ExecuteExists(sql))
            {
                sql = @"insert into Manage_Pagination (PVID,OrderColumns )  values ({0},'{1}' )";
                dal.ExecuteNonQuery(string.Format(sql, pvid, orderColumns));
            }
        }
Exemplo n.º 24
0
        private string IntoButton(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM Manage_ButtonBar where ModuleID in ({0}) order by ButtonID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的按钮用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlDelete = string.Format("delete FROM [Manage_ButtonBar] WHERE ModuleID in ({0})",DataIDs);

            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_ButtonBar] WHERE ButtonID = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_ButtonBar](
                                         [ButtonID]
                                        ,[ModuleID]
                                        ,[OpenModuleID]
                                        ,[OpenPageViewID]
                                        ,[FindPageViewID]
                                        ,[BtnTitle]
                                        ,[BtnTypeID]
                                        ,[BtnKind]
                                        ,[URL]
                                        ,[WebWidth]
                                        ,[WebHeight]
                                        ,[IsNeedSelect]
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]
                                        ,[UpdateTime]
                                        ,[UpdateUserID]  )
 
                                 VALUES(
                                        @ButtonID
                                       ,@ModuleID
                                       ,@OpenModuleID
                                       ,@OpenPageViewID
                                       ,@FindPageViewID
                                       ,@BtnTitle
                                       ,@BtnTypeID
                                       ,@BtnKind
                                       ,@URL
                                       ,@WebWidth
                                       ,@WebHeight
                                       ,@IsNeedSelect
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_ButtonBar] SET 
                                       [ModuleID]          = @ModuleID
                                      ,[OpenModuleID]      = @OpenModuleID
                                      ,[OpenPageViewID]    = @OpenPageViewID
                                      ,[FindPageViewID]    = @FindPageViewID
                                      ,[BtnTitle]          = @BtnTitle
                                      ,[BtnTypeID]         = @BtnTypeID
                                      ,[BtnKind]           = @BtnKind
                                      ,[URL]               = @URL
                                      ,[WebWidth]          = @WebWidth
                                      ,[WebHeight]         = @WebHeight
                                      ,[IsNeedSelect]      = @IsNeedSelect
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                      ,[UpdateTime]        = @UpdateTime
                                      ,[UpdateUserID]      = @UpdateUserID
                                WHERE ButtonID = @ButtonID ";
            #endregion

            #region 删除原有的按钮,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有按钮数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("ButtonID", 0);
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("OpenModuleID", 0);
            para.AddNewInParameter("OpenPageViewID", 0);
            para.AddNewInParameter("FindPageViewID", 0);
            para.AddNewInParameter("BtnTitle", "", 50);
            para.AddNewInParameter("BtnTypeID", 0);
            para.AddNewInParameter("BtnKind", 0);
            para.AddNewInParameter("URL", "", 240);
            para.AddNewInParameter("WebWidth", 0);
            para.AddNewInParameter("WebHeight", 0);
            para.AddNewInParameter("IsNeedSelect",true);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);
            #endregion
           
            sw.Start();

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget,dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "按钮");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入按钮数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";
        }
Exemplo n.º 25
0
        private string IntoPager(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_Pagination] where PVID in (
                                            SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})
                                         ) order by PVID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的分页用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_Pagination] WHERE [PVID] = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_Pagination](
                                         [PVID]
                                        ,[OrderColumns]
                                        ,[PageSize]
                                        ,[QueryAlways]
                                        ,[Query]
                                        ,[PageTurnTypeID]
                                        ,[NaviCount]
                                       
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]          )
                                 VALUES(
                                        @PVID
                                       ,@OrderColumns
                                       ,@PageSize
                                       ,@QueryAlways
                                       ,@Query
                                       ,@PageTurnTypeID
                                       ,@NaviCount
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_Pagination] SET 
                                       [OrderColumns]      = @OrderColumns
                                      ,[PageSize]          = @PageSize
                                      ,[QueryAlways]       = @QueryAlways
                                      ,[Query]             = @Query
                                      ,[PageTurnTypeID]    = @PageTurnTypeID
                                      ,[NaviCount]         = @NaviCount
                                   
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                WHERE PVID = @PVID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("OrderColumns","", 200);
            para.AddNewInParameter("PageSize", 0);
            para.AddNewInParameter("QueryAlways", "", 300);
            para.AddNewInParameter("Query", "", 300);
            para.AddNewInParameter("PageTurnTypeID", 0);
            para.AddNewInParameter("NaviCount", 0);
            
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget,dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "分页信息");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入分页信息数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";

        }
Exemplo n.º 26
0
        protected void LstDataSelectedIndexChanged(object sender, EventArgs e)
        {
             const string sql = "SELECT TOP 1 ConnString FROM   Manage_DataBase WHERE  (DataBaseID = {0})";

             string excelPath = Dal.DalMetadata.ExecuteString(string.Format(sql, this.lstData.SelectedValue));

            string cnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + excelPath + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
            _acc = DalFactory.CreateDal(cnString, "System.Data.OleDb");

            Pager1.Dal = _acc;

            Heidden();
            GetTableName();
            Btn_TableName.SelectedIndex = 0;
        }
Exemplo n.º 27
0
        public bool CreatePageView(DataAccessLibrary dal, MyCheckBoxList lstPageView, string tableID, string userID)
        {
            string moduleID = lstPageView.Items[0].Value.Substring(0, 3);
            
            //                                                  0      1         2      3        4      5                 6            7            8     9     
            string sql = @"insert into Manage_PageView (PVID,ModuleID,PVTypeID,PVTitle,DisOrder,AddUserid,TableID_DataSource,TableID_Modifly,PKColumnID,ColumnCount) 
                                    values ({0},{1},{2},'{3}',{4},{5},{6},{7},{8},{9})";
            var pvTypeIDs = new[] { "701", "702", "704","703", "703" };
            var pvTitles = new[] { "列表视图", "查询视图", "删除视图","添加视图", "修改视图" };

             
            int i = 1;
            foreach (ListItem item in lstPageView.Items)
            {
                if (item.Selected)
                {
                    //选择了,创建视图                                  0           1              2            3            4        5         6     7     8
                    switch (item.Text.Split('_')[1])
                    {
                        case "列表":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, tableID, "0"    , tableID + "010",1));
                            CreatePageTurn(dal, item.Value, tableID);
                            break;
                        case "查询":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, "0"     ,"0"      ,"0",3));
                            break;
                        case "删除":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, "0"     , tableID, tableID + "010",1));
                            break;
                        case "表单/添加":
                        case "修改":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, moduleID, pvTypeIDs[i - 1], pvTitles[i - 1], i * 10, userID, tableID, tableID, tableID + "010",1));
                            break;
                    }
                }
                i++;
            }
            return true;
        }
        private void IntoData(ManagerParameter para, DataRow dr, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect, string sqlExists, string sqlUpdate, string sqlInsert, string title)
        {
            for (int i = 0; i < para.Count; i++)
            {
                var parameterName = para[i].ParameterName.Replace("@", "");

                switch (parameterName)
                {
                    case "AddTime":
                    case "UpdateTime":
                        para[i].Value =  System.Convert.ToDateTime(dr[parameterName]).ToString("yyyy-MM-dd HH:mm:ss");
                        break;

                    default:
                        para[i].Value = dr[parameterName].ToString();
                        break;
                }
            }

            #region 添加或者修改
            if (dalTargetSelect.ExecuteExists(string.Format(sqlExists, dr[0])))
            {
                //有记录,修改
                dalTarget.ExecuteNonQuery(sqlUpdate);
                txtMsg.Text += "\n修改一条" + title + "记录:" + dr[0];

            }
            else
            {
                //没有记录,添加
                dalTarget.ExecuteNonQuery(sqlInsert);
                txtMsg.Text += "\n添加一条" + title + "记录:" + dr[0];

            }

            //判断是否出错
            if (dalTarget.ErrorMessage.Length > 1)
            {
                //导入数据时出错
                txtMsg.Text += "\n导入" + title + "信息的时候出错!" + dr[0];
                txtMsg.Text += "\n" + dalTarget.ErrorMessage + "\n==========\n";
                WritePara(para);
            }
            #endregion
        }
Exemplo n.º 29
0
 /// <summary>
 /// 初始化
 /// </summary>
 /// <param name="dal">数据访问函数库的实例</param>
 public SelectData(DataAccessLibrary dal)
 {
     _dal = dal;
 }
Exemplo n.º 30
0
        private string IntoPager(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_Pagination] where PVID in (
                                            SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})
                                         ) order by PVID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的分页用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_Pagination] WHERE [PVID] = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_Pagination](
                                         [PVID]
                                        ,[OrderColumns]
                                        ,[PageSize]
                                        ,[QueryAlways]
                                        ,[Query]
                                        ,[PageTurnTypeID]
                                        ,[NaviCount]
                                       
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]          )
                                 VALUES(
                                        @PVID
                                       ,@OrderColumns
                                       ,@PageSize
                                       ,@QueryAlways
                                       ,@Query
                                       ,@PageTurnTypeID
                                       ,@NaviCount
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_Pagination] SET 
                                       [OrderColumns]      = @OrderColumns
                                      ,[PageSize]          = @PageSize
                                      ,[QueryAlways]       = @QueryAlways
                                      ,[Query]             = @Query
                                      ,[PageTurnTypeID]    = @PageTurnTypeID
                                      ,[NaviCount]         = @NaviCount
                                   
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                WHERE PVID = @PVID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("OrderColumns", "", 200);
            para.AddNewInParameter("PageSize", 0);
            para.AddNewInParameter("QueryAlways", "", 300);
            para.AddNewInParameter("Query", "", 300);
            para.AddNewInParameter("PageTurnTypeID", 0);
            para.AddNewInParameter("NaviCount", 0);

            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "分页信息");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入分页信息数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }
        private string IntoTable(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_Table] where [TableID] in ({0}) order by [TableID]";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n==========================\n提取源数据库里的“表”用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_Table] WHERE TableID = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_Table](
                                        [TableID]
                                       ,[TableName]
                                       ,[PKColumnID]
                                       ,[TypeID]
                                       ,[HaveTableIDs]
                                       ,[Content]
                                       ,[ExcelTableName]
                                       ,[PDGuid]
                                       ,[DisOrder]
                                       ,[AddUserid]
                                       ,[AddTime]
                                       ,[IsDel]              )
                                 VALUES(
                                        @TableID
                                       ,@TableName
                                       ,@PKColumnID
                                       ,@TypeID
                                       ,@HaveTableIDs
                                       ,@Content
                                       ,@ExcelTableName
                                       ,@PDGuid
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel 
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_Table] SET 
                                     [TableName]= @TableName
                                    ,[PKColumnID]= @PKColumnID
                                    ,[TypeID]= @TypeID
                                    ,[HaveTableIDs]= @HaveTableIDs
                                    ,[Content]= @Content
                                    ,[ExcelTableName]= @ExcelTableName
                                    ,[PDGuid]= @PDGuid
                                    ,[DisOrder]= @DisOrder
                                    ,[AddUserid]= @AddUserid
                                    ,[AddTime]= @AddTime
                                    ,[IsDel]= @IsDel
                                    
                                WHERE TableID = @TableID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();
            para.AddNewInParameter("TableID", 0);
            para.AddNewInParameter("TableName","",60);
            para.AddNewInParameter("PKColumnID", 0);
            para.AddNewInParameter("TypeID", "",2);
            para.AddNewInParameter("HaveTableIDs", "",500);
            para.AddNewInParameter("Content", "", 50);
            para.AddNewInParameter("ExcelTableName", "",50);
            para.AddNewInParameter("PDGuid", "", 36);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            
            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "表");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入表用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";
        }
Exemplo n.º 32
0
        private string IntoModule(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM Manage_Module where ModuleID in ({0}) order by ModuleID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n==========================\n提取源数据库里的模块列表用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlExists = "SELECT TOP 1 1 FROM [Manage_Module] WHERE ModuleID = {0}";
            string sqlInsert = @"INSERT INTO [Manage_Module](
                                       [ModuleID]
                                       ,[ProjectID]
                                       ,[ParentID]
                                       ,[ParentIDAll]
                                       ,[FarmIDs]
                                       ,[ModuleAloneID]
                                       ,[ModuleName]
                                       ,[PowerMark]
                                       ,[ModuleLevel]
                                       ,[IconID]
                                       ,[URL]
                                       ,[Target]
                                       ,[IsLeaf]
                                       ,[GridPageViewID]
                                       ,[FindPageViewID]
                                       ,[IsHidden]
                                       ,[IsLock]
                                       ,[DisOrder]
                                       ,[AddUserid]
                                       ,[AddTime]
                                       ,[IsDel]
                                       ,[UpdateTime]
                                       ,[UpdateUserID])
                                 VALUES(
                                        @ModuleID
                                       ,@ProjectID
                                       ,@ParentID
                                       ,@ParentIDAll
                                       ,@FarmIDs
                                       ,@ModuleAloneID
                                       ,@ModuleName
                                       ,@PowerMark
                                       ,@ModuleLevel
                                       ,@IconID
                                       ,@URL
                                       ,@Target
                                       ,@IsLeaf
                                       ,@GridPageViewID
                                       ,@FindPageViewID
                                       ,@IsHidden
                                       ,@IsLock
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID  ) ";

            string sqlUpdate = @"UPDATE [Manage_Module] SET 
                                    [ProjectID]= @ProjectID
                                    ,[ParentID]= @ParentID
                                    ,[ParentIDAll]= @ParentIDAll
                                    ,[FarmIDs]= @FarmIDs
                                    ,[ModuleAloneID]= @ModuleAloneID
                                    ,[ModuleName]= @ModuleName
                                    ,[PowerMark]= @PowerMark
                                    ,[ModuleLevel]= @ModuleLevel
                                    ,[IconID]= @IconID
                                    ,[URL]= @URL
                                    ,[Target]= @Target
                                    ,[IsLeaf]= @IsLeaf
                                    ,[GridPageViewID]= @GridPageViewID
                                    ,[FindPageViewID]= @FindPageViewID
                                    ,[IsHidden]= @IsHidden
                                    ,[IsLock]= @IsLock
                                    ,[DisOrder]= @DisOrder
                                    ,[AddUserid]= @AddUserid
                                    ,[AddTime]= @AddTime
                                    ,[IsDel]= @IsDel
                                    ,[UpdateTime]= @UpdateTime
                                    ,[UpdateUserID]= @UpdateUserID  
                                WHERE ModuleID = @ModuleID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("ProjectID", 0);
            para.AddNewInParameter("ParentID", 0);
            para.AddNewInParameter("ParentIDAll", "", 300);
            para.AddNewInParameter("FarmIDs", "", 300);
            para.AddNewInParameter("ModuleAloneID", 0);
            para.AddNewInParameter("ModuleName", "", 20);
            para.AddNewInParameter("PowerMark", "", 50);
            para.AddNewInParameter("ModuleLevel", 0);
            para.AddNewInParameter("IconID", 0);
            para.AddNewInParameter("URL", "", 200);
            para.AddNewInParameter("Target", "", 10);
            para.AddNewInParameter("IsLeaf", true);
            para.AddNewInParameter("GridPageViewID", 0);
            para.AddNewInParameter("FindPageViewID", 0);
            para.AddNewInParameter("IsHidden", 0);
            para.AddNewInParameter("IsLock", true);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);
            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "模块");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入目标数据库里的模块列表用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }
Exemplo n.º 33
0
        public bool CreateButton(DataAccessLibrary dal, MyCheckBoxList lst,string userID,string width,string height)
        {
            string tmpModuleID = lst.Items[0].Value.Substring(0, 3);
           
            //                                              0        1         2            3           4            5             6        7         8      9    10       11
            string sql = @"insert into Manage_ButtonBar (ButtonID,ModuleID,OpenModuleID,BtnTitle,OpenPageViewID,FindPageViewID,BtnTypeID,DisOrder,AddUserid,URL,WebWidth,WebHeight,IsNeedSelect) 
                            values ({0},{1},{2},'{3}',{4},{5},{6},{7},{8},'{9}',{10},{11},{12})";

            int i = 1;
            foreach (ListItem item in lst.Items)
            {
                string btnTitle = item.Text.Split('_')[1];
                if (item.Selected)
                {
                    //选择了,创建按钮                                
                    switch (item.Text.Split('_')[1])
                    {
                           //                                           0           1           2           3                4           5       6        7        8                  9                10      11
                        case "添加":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "04"), "0", "40" + i, i * 10, userID, "DataForm.htm", width, height, "0"));
                            break;
                        case "查看":
                        case "修改":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle,(tmpModuleID + "04"), "0", "40" + i, i * 10, userID, "DataForm.htm", width, height,"1"));
                            break;
                        case "删除":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "03"), "0", "40" + i, i * 10, userID, "/Data/DataDelete.ashx", 0, 0,"1"));
                            break;
                        case "查询":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, (tmpModuleID + "02"), "0", "40" + i, i * 10, userID, "", 0, 0, "0"));
                            break;
                        case "导出Excel":
                            dal.ExecuteNonQuery(string.Format(sql, item.Value, tmpModuleID, tmpModuleID, btnTitle, "0", "0", "40" + i, i * 10, userID, "", 0, 0, "0"));
                            break;
                    }
                }
                i++;
            }
            return true;
        }
Exemplo n.º 34
0
        /// <summary>
        /// 添加同级节点
        /// </summary>
        public void SetBortherNote(DataAccessLibrary dal, string bortherID, string moduleID)
        {
            #region 获取数据库里的最大的ModuleID
            if (moduleID.Length == 0)
            {
                string tmpModuleID =
                    dal.ExecuteString("select top 1 ModuleID from Manage_Module order by ModuleID desc ");
                ModuleID = int.Parse(tmpModuleID);
                ModuleID = ModuleID + 1;
            }
            //this.PowerMark = ModuleID;
            #endregion

            #region 设置其他信息
            //获取选中节点的信息。
            //                       0           1           2         3       4       5
            string sql = "select ParentID, ParentIDAll, ModuleLevel, DisOrder, URL, Target FROM Manage_Module WHERE (ModuleID = {0})";
            string[] funInfo = dal.ExecuteStringsBySingleRow(string.Format(sql,bortherID ));
            if (funInfo != null)
            {
                //同级节点,下列信息一致
                ParentID = int.Parse(funInfo[0]);           //父节点
                ParentIDAll = funInfo[1];                   //父节点路径
                ModuleLevel = int.Parse(funInfo[2]);        //级数
                URL = funInfo[4];                           //网址
                Target = funInfo[5];                        //目标

                GridPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "01");
                FindPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "02");

                #region 设置序号,同级节点的情况
                //获取指定节点的下一个节点的序号。如果有下一个节点,则直接设置,等真正保存的时候在修改后面的序号。
                //如果没有则用指定节点的序号 + 100 。

                //获取指定节点的下一个同级节点的序号
                sql = "select top 1 DisOrder from Manage_Module where ParentID = " + funInfo[0] + " and DisOrder > " + funInfo[3] + " order by DisOrder";
                string tmpDisOrder = dal.ExecuteString(sql);// != null:指定的节点有下一个同级节点,设置序号
                if (tmpDisOrder == null)
                {
                    //指定的节点有没有下一个同级节点,判断是否是一级节点,是的话,指定节点的序号 + 10000。
                    if (funInfo[0] == "0")
                    {
                        //一级节点
                        DisOrder = Int32.Parse(funInfo[3]) + 10000;
                    }
                    else
                    {
                        //非一级节点,寻找指定节点的子节点的最大的序号
                        sql = "select top 1 DisOrder from Manage_Module where ParentIDAll + ',' like '" + funInfo[1] + ",%' order by DisOrder desc ";
                        tmpDisOrder = dal.ExecuteString(sql);
                        if (tmpDisOrder != null)
                            DisOrder = Int32.Parse(tmpDisOrder) + 10;
                    }
                }

                
                #endregion
            }
            #endregion
        }
Exemplo n.º 35
0
        public bool DisOrderIsSample(DataAccessLibrary dal, string moduleID)
        {
            if (dal.ExecuteExists("select top 1 1 from Manage_Module where DisOrder =" + DisOrder))
            {
                string parentPath =
                    dal.ExecuteString("select  ParentIDAll FROM Manage_Module WHERE (ModuleID = " + moduleID +  ")");
                if (parentPath != null)
                {
                    //向后移动序号
                    dal.ExecuteNonQuery(
                        "update Manage_Module set DisOrder = DisOrder + 10 where ParentIDAll + ',' like '" + parentPath +
                        ",%'  and DisOrder >= " + DisOrder);
                }

                string err = dal.ErrorMessage;
                if (err.Length >0)
                    return false;
            }

            return true;
        }
        /// <summary>
        /// 设置初始信息
        /// </summary>
        /// <param name="dal">访问元数据</param>
        /// <param name="moduleID">所属模块 </param>
        public void SetInfo(DataAccessLibrary dal,int moduleID)
        {
            ModuleID = moduleID;
            
            //寻找模块里最大的视图ID
            string sql = "select top 1 PVID from Manage_PageView where ModuleID=" + moduleID;
            var tmpViewID = dal.ExecuteScalar<string>(sql);

            if (tmpViewID == null)
                PageViewID = int.Parse(moduleID + "01");
            else 
                PageViewID = int.Parse(tmpViewID) + 1;

            PageViewTitle = "";
          
            ColumnCount = 1;
            ForeignColumnID = 0;
            LockColumnCount = 0;
            LockRowCount = 0;
            PKColumnID = 0;
            SqlTypeID = SQLType.ParameterSQL;

            TableIDDataSource = 0;
            TableIDModifly = 0;
            TableWidth = 0;

        }
Exemplo n.º 37
0
        private string IntoPV(DataAccessLibrary dalSource, DataAccessLibrary dalTarget,
                              DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_PageView] where ModuleID in ({0}) order by PVID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的视图用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();

            #region 定义SQL
            string sqlDelete = string.Format("delete FROM [Manage_PageView] WHERE ModuleID in ({0})", DataIDs);
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_PageView] WHERE [PVID] = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_PageView](
                                         [PVID]
                                        ,[ModuleID]
                                        ,[PVTypeID]
                                        ,[PVTitle]
                                        ,[TableID_DataSource]
                                        ,[TableID_Modifly]
                                        ,[PKColumnID]
                                        ,[ForeignColumnID]
                                        ,[T_SQLTypeID]
                                        ,[ViewExtend]
                                        ,[ColumnCount]
                                        ,[LockRowCount]
                                        ,[LockColumnCount]
                                        ,[TableWidth]
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]
                                        ,[UpdateTime]
                                        ,[UpdateUserID]       )
                                 VALUES(
                                        @PVID
                                       ,@ModuleID
                                       ,@PVTypeID
                                       ,@PVTitle
                                       ,@TableID_DataSource
                                       ,@TableID_Modifly
                                       ,@PKColumnID
                                       ,@ForeignColumnID
                                       ,@T_SQLTypeID
                                       ,@ViewExtend
                                       ,@ColumnCount
                                       ,@LockRowCount
                                       ,@LockColumnCount
                                       ,@TableWidth
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_PageView] SET 
                                      [ModuleID]          = @ModuleID
                                     ,[PVTypeID]          = @PVTypeID
                                     ,[PVTitle]           = @PVTitle
                                     ,[TableID_DataSource]= @TableID_DataSource
                                     ,[TableID_Modifly]   = @TableID_Modifly
                                     ,[PKColumnID]        = @PKColumnID
                                     ,[ForeignColumnID]   = @ForeignColumnID
                                     ,[T_SQLTypeID]       = @T_SQLTypeID
                                     ,[ViewExtend]        = @ViewExtend
                                     ,[ColumnCount]       = @ColumnCount
                                     ,[LockRowCount]      = @LockRowCount
                                     ,[LockColumnCount]   = @LockColumnCount
                                     ,[TableWidth]        = @TableWidth
                                   
                                     ,[DisOrder]          = @DisOrder
                                     ,[AddUserid]         = @AddUserid
                                     ,[AddTime]           = @AddTime
                                     ,[IsDel]             = @IsDel
                                     ,[UpdateTime]        = @UpdateTime
                                     ,[UpdateUserID]      = @UpdateUserID
                                WHERE PVID = @PVID ";

            #endregion

            #region 删除原有的视图,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有视图数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数

            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("PVTypeID", 0);
            para.AddNewInParameter("PVTitle", "", 20);
            para.AddNewInParameter("TableID_DataSource", "", 20);
            para.AddNewInParameter("TableID_Modifly", 0);
            para.AddNewInParameter("PKColumnID", 0);
            para.AddNewInParameter("ForeignColumnID", 0);
            para.AddNewInParameter("T_SQLTypeID", 0);
            para.AddNewInParameter("ViewExtend", "", 500);
            para.AddNewInParameter("ColumnCount", 0);
            para.AddNewInParameter("LockRowCount", 0);
            para.AddNewInParameter("LockColumnCount", 0);
            para.AddNewInParameter("TableWidth", 0);

            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);

            #endregion

            sw.Start();

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "视图");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入视图数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";

        }
Exemplo n.º 38
0
        /// <summary>
        /// 根据父节点信息设置子节点的基本信息
        /// </summary>
        /// <param name="dal">数据访问函数库的实例 </param>
        /// <param name="parentID">父节点ID</param>
        /// <param name="moduleID">用户输入的模块ID </param>
        public void SetSonNote(DataAccessLibrary dal, int parentID, string moduleID)
        {
            #region 获取数据库里的最大的ModuleID
            //因为是功能节点管理,可以限制单人操作,所以这里不考虑并发的问题。
            if (moduleID.Length == 0)
            {
                string tmpModuleID =
                    dal.ExecuteString("select top 1 ModuleID from Manage_Module order by ModuleID desc ");
                ModuleID = int.Parse(tmpModuleID);
                ModuleID = ModuleID + 1;
            }
            //this.PowerMark = this.ModuleID;
            #endregion

            #region 设置其他信息
            //提取父节点信息
            //                       0           1           2          3       4     5
            string sql = "select ParentID, ParentIDAll, ModuleLevel, DisOrder, URL, Target FROM Manage_Module WHERE (ModuleID = {0})";
            string[] moduleInfo = dal.ExecuteStringsBySingleRow(string.Format(sql,parentID));
            if (moduleInfo != null)
            {
                ParentID = parentID;                            //父节点
                ParentIDAll = moduleInfo[1] + "," + parentID;   //父节点路径
                ModuleLevel = int.Parse(moduleInfo[2]) + 1;     //节点级数
                URL = moduleInfo[4];                            //网址
                Target = moduleInfo[5];                         //目标

                GridPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "01");
                FindPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "02");

                #region 设置序号,子节点的情况
                //获取指定的节点的所有子节点的最大序号序号。如果有则+10设置,等真正保存的时候再修改后面的序号。
                //如果没有则本序号 + 10。

                sql = "select top 1 DisOrder from Manage_Module where ParentIDAll + ',' like '{0},{1},%' and DisOrder > {2} order by DisOrder desc";
                string tmpDisOrder = dal.ExecuteString(string.Format(sql,moduleInfo[1],parentID,moduleInfo[3]));
                if (tmpDisOrder != null)
                {
                    //有子节点,设置序号
                    DisOrder = Int32.Parse(tmpDisOrder) + 10;
                }
                else
                {
                    //选中的节点没有子节点
                    DisOrder = Int32.Parse(moduleInfo[3]) + 10;

                }
                #endregion

            }
            #endregion

        }
Exemplo n.º 39
0
        private string IntoPVCol(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {

            //DataAccessLibrary dal = DalFactory.CreateDal(dalTarget.Command.Connection.ConnectionString ,dalTarget.Command.Connection.)

            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_PageViewCol] where PVID in (
                                            SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})
                                         ) order by PVColID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的视图详细用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlDelete = string.Format("delete FROM [Manage_PageViewCol] WHERE [PVID] in ( SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})) ", DataIDs);

            const string sqlExists = "SELECT TOP 1 PVColID FROM [Manage_PageViewCol] WHERE [PVID] = {0} AND ColumnID = {1}";
            const string sqlInsert = @"INSERT INTO [Manage_PageViewCol](
                                         [PVID]
                                        ,[ColumnID]
                                        ,[ColTitle]
                                        ,[ColHelp]
                                        ,[HelpStation]
                                        ,[DefaultValue]
                                        ,[ClearTDStart]
                                        ,[ClearTDEnd]
                                        ,[TDColspan]
                                        ,[ColWidth]
                                        ,[ColAlign]
                                        ,[ControlState]
                                        ,[Ser_IsSave]
                                        ,[IsClear]
                                        ,[Kind]
                                        ,[IsSort]
                                        ,[Format]
                                        ,[MaxLength]
                                        ,[Ser_FindKindID]
                                        ,[Ser_CustomerFindKind]
                                        ,[Json]
                                       
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]          )
                                 VALUES(
                                        @PVID
                                       ,@ColumnID
                                       ,@ColTitle
                                       ,@ColHelp
                                       ,@HelpStation
                                       ,@DefaultValue
                                       ,@ClearTDStart
                                       ,@ClearTDEnd
                                       ,@TDColspan
                                       ,@ColWidth
                                       ,@ColAlign
                                       ,@ControlState
                                       ,@Ser_IsSave
                                       ,@IsClear
                                       ,@Kind
                                       ,@IsSort
                                       ,@Format
                                       ,@MaxLength
                                       ,@Ser_FindKindID
                                       ,@Ser_CustomerFindKind
                                       ,@Json
                                       
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_PageViewCol] SET 
                                       [ColTitle]      = @ColTitle
                                      ,[ColHelp]      = @ColHelp
                                      ,[HelpStation]      = @HelpStation
                                      ,[DefaultValue]      = @DefaultValue
                                      ,[ClearTDStart]      = @ClearTDStart
                                      ,[ClearTDEnd]      = @ClearTDEnd
                                      ,[TDColspan]      = @TDColspan
                                      ,[ColWidth]      = @ColWidth
                                      ,[ColAlign]      = @ColAlign
                                      ,[ControlState]      = @ControlState
                                      ,[Ser_IsSave]      = @Ser_IsSave
                                      ,[IsClear]      = @IsClear
                                      ,[Kind]      = @Kind
                                      ,[IsSort]      = @IsSort
                                      ,[Format]      = @Format
                                      ,[MaxLength]      = @MaxLength
                                      ,[Ser_FindKindID]      = @Ser_FindKindID
                                      ,[Ser_CustomerFindKind]      = @Ser_CustomerFindKind
                                      ,[Json]      = @Json
                                      
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                     
                                WHERE PVColID = @PVColID ";
            #endregion

            #region 删除原有的视图里的字段,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有视图里的字段数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVColID", 0);
            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("ColumnID", 0);
            para.AddNewInParameter("ColTitle","",30);
            para.AddNewInParameter("ColHelp", "", 100);
            para.AddNewInParameter("HelpStation", 0);
            para.AddNewInParameter("DefaultValue", "",50);
            para.AddNewInParameter("ClearTDStart", 0);
            para.AddNewInParameter("ClearTDEnd", 0);
            para.AddNewInParameter("TDColspan", 0);
            para.AddNewInParameter("ColWidth", 0);
            para.AddNewInParameter("ColAlign", "", 10);
            para.AddNewInParameter("ControlState", 0);
            para.AddNewInParameter("Ser_IsSave", 0);
            para.AddNewInParameter("IsClear", true);
            para.AddNewInParameter("Kind", 0);
            para.AddNewInParameter("IsSort", true);
            para.AddNewInParameter("Format", "",800);
            para.AddNewInParameter("MaxLength", 0);
            para.AddNewInParameter("Ser_FindKindID", 0);
            para.AddNewInParameter("Ser_CustomerFindKind", "", 255);
            para.AddNewInParameter("Json","",1000);
            
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            #endregion

            sw.Start();

            //dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                for (int i = 0; i < para.Count; i++)
                {
                    //para[i].Value = dr[para[i].ParameterName.Replace("@", "")].ToString();

                    var parameterName = para[i].ParameterName.Replace("@", "");

                    switch (parameterName)
                    {
                        case "AddTime":
                        case "UpdateTime":
                            para[i].Value = System.Convert.ToDateTime(dr[parameterName]).ToString("yyyy-MM-dd HH:mm:ss");
                            break;

                        default:
                            para[i].Value = dr[parameterName].ToString();
                            break;
                    }
                }

                #region 添加或者修改

                string pvColID = dalTargetSelect.ExecuteString(string.Format(sqlExists, dr[1], dr[2]));

                if (!string.IsNullOrEmpty(pvColID))
                {
                    //有记录,修改
                    para["PVColID"].Value = pvColID;
                    dalTarget.ExecuteNonQuery(sqlUpdate);
                    txtMsg.Text += "\n修改一条视图详细记录:" + pvColID + "_" + dr[1] + "_" + dr[2];

                }
                else
                {
                    //没有记录,添加
                    dalTarget.ExecuteNonQuery(sqlInsert);
                    txtMsg.Text += "\n添加一条视图详细记录:" + dr[1] + "_" + dr[2];

                }

                //判断是否出错
                if (dalTarget.ErrorMessage.Length > 1)
                {
                    //导入数据时出错
                    txtMsg.Text += "\n导入视图详细信息的时候出错!" + dr[0];
                    txtMsg.Text += "\n" + dalTarget.ErrorMessage + "\n==========\n";
                    WritePara(para);
                }
                #endregion
            }
            
            //dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入视图详细用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";

        }
Exemplo n.º 40
0
 /// <summary>
 /// 初始化
 /// </summary>
 /// <param name="dal">数据访问函数库的实例</param>
 public ManagerJson(DataAccessLibrary dal)
 {
     _dal = dal;
 }
        private string IntoColumn(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_Columns] where [TableID] in ({0}) order by [TableID]";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n==========================\n提取源数据库里的“字段”用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_Columns] WHERE ColumnID = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_Columns](
                                        [ColumnID]
                                       ,[TableID]
                                       ,[ColumnKind]
                                       ,[ColSysName]
                                       ,[ColName]
                                       ,[ColType]
                                       ,[ColSize]
                                       ,[ControlTypeID]
                                       ,[CheckTypeID]
                                       ,[CheckUserDefined]
                                       ,[CheckTip]
                                       ,[ControlInfo]
                                       ,[ForeignTableID]
                                       ,[ForeignColumnID]
                                       ,[PDGuid]
                                       ,[DisOrder]
                                       ,[AddUserid]
                                       ,[AddTime]
                                       ,[IsDel]              )
                                 VALUES(
                                        @ColumnID
                                       ,@TableID
                                       ,@ColumnKind
                                       ,@ColSysName
                                       ,@ColName
                                       ,@ColType
                                       ,@ColSize
                                       ,@ControlTypeID
                                       ,@CheckTypeID
                                       ,@CheckUserDefined
                                       ,@CheckTip
                                       ,@ControlInfo
                                       ,@ForeignTableID
                                       ,@ForeignColumnID
                                       ,@PDGuid
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel 
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_Columns] SET 
                                     [TableID]= @TableID
                                    ,[ColumnKind]= @ColumnKind
                                    ,[ColSysName]= @ColSysName
                                    ,[ColName]= @ColName
                                    ,[ColType]= @ColType
                                    ,[ColSize]= @ColSize
                                    ,[ControlTypeID]= @ControlTypeID
                                    ,[CheckTypeID]= @CheckTypeID
                                    ,[CheckUserDefined]= @CheckUserDefined
                                    ,[CheckTip]= @CheckTip
                                    ,[ControlInfo]= @ControlInfo
                                    ,[ForeignTableID]= @ForeignTableID
                                    ,[ForeignColumnID]= @ForeignColumnID
                                    ,[PDGuid]= @PDGuid
                                    ,[DisOrder]= @DisOrder
                                    ,[AddUserid]= @AddUserid
                                    ,[AddTime]= @AddTime
                                    ,[IsDel]= @IsDel
                                    
                                WHERE ColumnID = @ColumnID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();
            para.AddNewInParameter("ColumnID", 0);
            para.AddNewInParameter("TableID", 0);
            para.AddNewInParameter("ColumnKind", 0);
            para.AddNewInParameter("ColSysName","",50);
            para.AddNewInParameter("ColName","",50);
            para.AddNewInParameter("ColType", "", 20);
            para.AddNewInParameter("ColSize", 0);
            para.AddNewInParameter("ControlTypeID", 0);
            para.AddNewInParameter("CheckTypeID", 0);
            para.AddNewInParameter("CheckUserDefined", "", 50);
            para.AddNewInParameter("CheckTip", "", 255);
            para.AddNewInParameter("ControlInfo", "", 500);
            para.AddNewInParameter("ForeignTableID", 0);
            para.AddNewInParameter("ForeignColumnID", 0);
            para.AddNewInParameter("PDGuid", "", 36);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);

            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "字段");
            }

            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入字段用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";
        }
Exemplo n.º 42
0
        private string IntoColumn(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_Columns] where [TableID] in ({0}) order by [TableID]";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n==========================\n提取源数据库里的“字段”用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_Columns] WHERE ColumnID = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_Columns](
                                        [ColumnID]
                                       ,[TableID]
                                       ,[ColumnKind]
                                       ,[ColSysName]
                                       ,[ColName]
                                       ,[ColType]
                                       ,[ColSize]
                                       ,[ControlTypeID]
                                       ,[CheckTypeID]
                                       ,[CheckUserDefined]
                                       ,[CheckTip]
                                       ,[ControlInfo]
                                       ,[ForeignTableID]
                                       ,[ForeignColumnID]
                                       ,[PDGuid]
                                       ,[DisOrder]
                                       ,[AddUserid]
                                       ,[AddTime]
                                       ,[IsDel]              )
                                 VALUES(
                                        @ColumnID
                                       ,@TableID
                                       ,@ColumnKind
                                       ,@ColSysName
                                       ,@ColName
                                       ,@ColType
                                       ,@ColSize
                                       ,@ControlTypeID
                                       ,@CheckTypeID
                                       ,@CheckUserDefined
                                       ,@CheckTip
                                       ,@ControlInfo
                                       ,@ForeignTableID
                                       ,@ForeignColumnID
                                       ,@PDGuid
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel 
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_Columns] SET 
                                     [TableID]= @TableID
                                    ,[ColumnKind]= @ColumnKind
                                    ,[ColSysName]= @ColSysName
                                    ,[ColName]= @ColName
                                    ,[ColType]= @ColType
                                    ,[ColSize]= @ColSize
                                    ,[ControlTypeID]= @ControlTypeID
                                    ,[CheckTypeID]= @CheckTypeID
                                    ,[CheckUserDefined]= @CheckUserDefined
                                    ,[CheckTip]= @CheckTip
                                    ,[ControlInfo]= @ControlInfo
                                    ,[ForeignTableID]= @ForeignTableID
                                    ,[ForeignColumnID]= @ForeignColumnID
                                    ,[PDGuid]= @PDGuid
                                    ,[DisOrder]= @DisOrder
                                    ,[AddUserid]= @AddUserid
                                    ,[AddTime]= @AddTime
                                    ,[IsDel]= @IsDel
                                    
                                WHERE ColumnID = @ColumnID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();
            para.AddNewInParameter("ColumnID", 0);
            para.AddNewInParameter("TableID", 0);
            para.AddNewInParameter("ColumnKind", 0);
            para.AddNewInParameter("ColSysName", "", 50);
            para.AddNewInParameter("ColName", "", 50);
            para.AddNewInParameter("ColType", "", 20);
            para.AddNewInParameter("ColSize", 0);
            para.AddNewInParameter("ControlTypeID", 0);
            para.AddNewInParameter("CheckTypeID", 0);
            para.AddNewInParameter("CheckUserDefined", "", 50);
            para.AddNewInParameter("CheckTip", "", 255);
            para.AddNewInParameter("ControlInfo", "", 500);
            para.AddNewInParameter("ForeignTableID", 0);
            para.AddNewInParameter("ForeignColumnID", 0);
            para.AddNewInParameter("PDGuid", "", 36);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);

            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "字段");
            }

            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入字段用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }
Exemplo n.º 43
0
        /// <summary>
        /// 添加同级节点
        /// </summary>
        public void SetBortherNote(DataAccessLibrary dal, string bortherID, string moduleID)
        {
            #region 获取数据库里的最大的ModuleID
            if (moduleID.Length == 0)
            {
                string tmpModuleID =
                    dal.ExecuteString("select top 1 ModuleID from Manage_Module order by ModuleID desc ");
                ModuleID = int.Parse(tmpModuleID);
                ModuleID = ModuleID + 1;
            }
            //this.PowerMark = ModuleID;
            #endregion

            #region 设置其他信息
            //获取选中节点的信息。
            //                       0           1           2         3       4       5
            string   sql     = "select ParentID, ParentIDAll, ModuleLevel, DisOrder, URL, Target FROM Manage_Module WHERE (ModuleID = {0})";
            string[] funInfo = dal.ExecuteStringsBySingleRow(string.Format(sql, bortherID));
            if (funInfo != null)
            {
                //同级节点,下列信息一致
                ParentID    = int.Parse(funInfo[0]);        //父节点
                ParentIDAll = funInfo[1];                   //父节点路径
                ModuleLevel = int.Parse(funInfo[2]);        //级数
                URL         = funInfo[4];                   //网址
                Target      = funInfo[5];                   //目标

                GridPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "01");
                FindPageViewID = int.Parse(ModuleID.ToString(CultureInfo.InvariantCulture) + "02");

                #region 设置序号,同级节点的情况
                //获取指定节点的下一个节点的序号。如果有下一个节点,则直接设置,等真正保存的时候在修改后面的序号。
                //如果没有则用指定节点的序号 + 100 。

                //获取指定节点的下一个同级节点的序号
                sql = "select top 1 DisOrder from Manage_Module where ParentID = " + funInfo[0] + " and DisOrder > " + funInfo[3] + " order by DisOrder";
                string tmpDisOrder = dal.ExecuteString(sql);// != null:指定的节点有下一个同级节点,设置序号
                if (tmpDisOrder == null)
                {
                    //指定的节点有没有下一个同级节点,判断是否是一级节点,是的话,指定节点的序号 + 10000。
                    if (funInfo[0] == "0")
                    {
                        //一级节点
                        DisOrder = Int32.Parse(funInfo[3]) + 10000;
                    }
                    else
                    {
                        //非一级节点,寻找指定节点的子节点的最大的序号
                        sql         = "select top 1 DisOrder from Manage_Module where ParentIDAll + ',' like '" + funInfo[1] + ",%' order by DisOrder desc ";
                        tmpDisOrder = dal.ExecuteString(sql);
                        if (tmpDisOrder != null)
                        {
                            DisOrder = Int32.Parse(tmpDisOrder) + 10;
                        }
                    }
                }


                #endregion
            }
            #endregion
        }
Exemplo n.º 44
0
        //protected delegate void ActionToFunction(HttpContext context);
        //protected static Dictionary<string, ActionToFunction> ActionList = new Dictionary<string, ActionToFunction>();


        /// <summary>
        /// 通过实现 <see cref="T:System.Web.IHttpHandler"/> 接口的自定义 HttpHandler 启用 HTTP Web 请求的处理。
        /// </summary>
        /// <param name="context"><see cref="T:System.Web.HttpContext"/> 对象,它提供对用于为 HTTP 请求提供服务的内部服务器对象(如 Request、Response、Session 和 Server)的引用。</param>
        /// user:jyk
        /// time:2012/10/18 17:41
        public void ProcessRequest(HttpContext context)
        {
            //记录一下,不用传参数了。
            Context = context;
            //允许跨域的设置
            #region
            string webAppId = HttpContext.Current.Request.QueryString["webappid"];
            if (!string.IsNullOrEmpty(webAppId))
            {
                string url = HttpContext.Current.Request.Url.Host;

                switch (webAppId)
                {
                case "1":    //支撑平台
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "http://nature.com");
                    break;

                case "7":    //芒果网站综合管理
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin",
                                                           url.IndexOf("lc", System.StringComparison.Ordinal) >= 0
                                                                    ? "http://192.168.3.96:8108"
                                                                    : "http://naturemanage.517.cn/");
                    break;

                case "4":    //手机推广
                    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin",
                                                           url.IndexOf("lc", System.StringComparison.Ordinal) >= 0
                                                                   ? "http://lcmobileplat.naturefw.com"
                                                                   : "http://mobileplat.naturefw.com");
                    break;
                }

                //"http://nature.com,http://192.168.3.96:8108"
            }
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Credentials", "true");
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "POST, GET,Origin, X-Requested-With, Content-Type, Accept");

            CallBack = context.Request.QueryString["callback"] ?? ""; //看看是不是跨域
            if (CallBack.Length == 0)
            {
                //不是跨域application/json
                context.Response.ContentType = "text/plain";
                //cors的方式跨域,运行访问的域名还需要处理

                context.Response.Write("{");
            }
            else
            {
                //跨域z!z\":0
                context.Response.ContentType = "application/x-javascript";
                context.Response.Write(CallBack + "({");
            }
            #endregion

            //context.Response.ContentType = "application/json";

            //要访问的数据库ID
            DataBaseID = Request["dbid"];

            if (!Functions.IsIDString(DataBaseID))
            {
                //context.Response.Write(string.IsNullOrEmpty(CallBack) ? re : string.Format("{0}({1})", CallBack, re));
                //context.Response.End();
                DataBaseID = null;
            }

            //看看是不是跨域表单post提交
            ResourceUrl = context.Request.QueryString["reurl"] ?? ""; //看看是不是跨域表单post提交

            //记录调试信息,经过了多少步骤,每个步骤用了多少毫秒
            BaseDebug = new NatureDebug {
                StartTime = DateTime.Now, DetailList = new List <NatureDebugInfo>()
            };


            DataAccessLibrary dal = DalFactory.CreateDal();
            //[Content],
            string sql = "SELECT  TOP (20) ArticleId, Category1Id, Title,  AgreeCount, OppositionCount, DiscussCount, UserHits, Hits, AddUserID, AddTime FROM blog_Article WHERE(IsDel = 0)";
            string str = dal.ManagerJson.ExecuteFillJsonByColName(sql);

            context.Response.Write(str);


            //模板模式,在子类里实现具体操作,便于流程控制
            Process();


            //流程完毕,输出json格式的debug信息
            ProcessEnd();
        }
 public PatientManager(DataAccessLibrary.IPatientRepository repository)
 {
     patientRepository = repository;
 }
Exemplo n.º 46
0
        private string IntoModule(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM Manage_Module where ModuleID in ({0}) order by ModuleID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));
            if (dt.Rows.Count == 0)
            {
                return "0";
            }
            sw.Stop();

            txtMsg.Text += "\n==========================\n提取源数据库里的模块列表用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlExists = "SELECT TOP 1 1 FROM [Manage_Module] WHERE ModuleID = {0}";
            string sqlInsert = @"INSERT INTO [Manage_Module](
                                       [ModuleID]
                                       ,[ProjectID]
                                       ,[ParentID]
                                       ,[ParentIDAll]
                                       ,[FarmIDs]
                                       ,[ModuleAloneID]
                                       ,[ModuleName]
                                       ,[PowerMark]
                                       ,[ModuleLevel]
                                       ,[IconID]
                                       ,[URL]
                                       ,[Target]
                                       ,[IsLeaf]
                                       ,[GridPageViewID]
                                       ,[FindPageViewID]
                                       ,[IsHidden]
                                       ,[IsLock]
                                       ,[DisOrder]
                                       ,[AddUserid]
                                       ,[AddTime]
                                       ,[IsDel]
                                       ,[UpdateTime]
                                       ,[UpdateUserID])
                                 VALUES(
                                        @ModuleID
                                       ,@ProjectID
                                       ,@ParentID
                                       ,@ParentIDAll
                                       ,@FarmIDs
                                       ,@ModuleAloneID
                                       ,@ModuleName
                                       ,@PowerMark
                                       ,@ModuleLevel
                                       ,@IconID
                                       ,@URL
                                       ,@Target
                                       ,@IsLeaf
                                       ,@GridPageViewID
                                       ,@FindPageViewID
                                       ,@IsHidden
                                       ,@IsLock
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID  ) ";

            string sqlUpdate = @"UPDATE [Manage_Module] SET 
                                    [ProjectID]= @ProjectID
                                    ,[ParentID]= @ParentID
                                    ,[ParentIDAll]= @ParentIDAll
                                    ,[FarmIDs]= @FarmIDs
                                    ,[ModuleAloneID]= @ModuleAloneID
                                    ,[ModuleName]= @ModuleName
                                    ,[PowerMark]= @PowerMark
                                    ,[ModuleLevel]= @ModuleLevel
                                    ,[IconID]= @IconID
                                    ,[URL]= @URL
                                    ,[Target]= @Target
                                    ,[IsLeaf]= @IsLeaf
                                    ,[GridPageViewID]= @GridPageViewID
                                    ,[FindPageViewID]= @FindPageViewID
                                    ,[IsHidden]= @IsHidden
                                    ,[IsLock]= @IsLock
                                    ,[DisOrder]= @DisOrder
                                    ,[AddUserid]= @AddUserid
                                    ,[AddTime]= @AddTime
                                    ,[IsDel]= @IsDel
                                    ,[UpdateTime]= @UpdateTime
                                    ,[UpdateUserID]= @UpdateUserID  
                                WHERE ModuleID = @ModuleID ";
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("ProjectID", 0);
            para.AddNewInParameter("ParentID", 0);
            para.AddNewInParameter("ParentIDAll", "", 300);
            para.AddNewInParameter("FarmIDs", "", 300);
            para.AddNewInParameter("ModuleAloneID", 0);
            para.AddNewInParameter("ModuleName", "", 20);
            para.AddNewInParameter("PowerMark", "", 50);
            para.AddNewInParameter("ModuleLevel", 0);
            para.AddNewInParameter("IconID", 0);
            para.AddNewInParameter("URL", "", 200);
            para.AddNewInParameter("Target", "", 10);
            para.AddNewInParameter("IsLeaf", true);
            para.AddNewInParameter("GridPageViewID", 0);
            para.AddNewInParameter("FindPageViewID", 0);
            para.AddNewInParameter("IsHidden", 0);
            para.AddNewInParameter("IsLock", true);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);
            #endregion

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect,sqlExists, sqlUpdate, sqlInsert, "模块");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入目标数据库里的模块列表用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return "";
        }
Exemplo n.º 47
0
        private string IntoPV(DataAccessLibrary dalSource, DataAccessLibrary dalTarget,
                              DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_PageView] where ModuleID in ({0}) order by PVID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的视图用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();

            #region 定义SQL
            string       sqlDelete = string.Format("delete FROM [Manage_PageView] WHERE ModuleID in ({0})", DataIDs);
            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_PageView] WHERE [PVID] = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_PageView](
                                         [PVID]
                                        ,[ModuleID]
                                        ,[PVTypeID]
                                        ,[PVTitle]
                                        ,[TableID_DataSource]
                                        ,[TableID_Modifly]
                                        ,[PKColumnID]
                                        ,[ForeignColumnID]
                                        ,[T_SQLTypeID]
                                        ,[ViewExtend]
                                        ,[ColumnCount]
                                        ,[LockRowCount]
                                        ,[LockColumnCount]
                                        ,[TableWidth]
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]
                                        ,[UpdateTime]
                                        ,[UpdateUserID]       )
                                 VALUES(
                                        @PVID
                                       ,@ModuleID
                                       ,@PVTypeID
                                       ,@PVTitle
                                       ,@TableID_DataSource
                                       ,@TableID_Modifly
                                       ,@PKColumnID
                                       ,@ForeignColumnID
                                       ,@T_SQLTypeID
                                       ,@ViewExtend
                                       ,@ColumnCount
                                       ,@LockRowCount
                                       ,@LockColumnCount
                                       ,@TableWidth
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_PageView] SET 
                                      [ModuleID]          = @ModuleID
                                     ,[PVTypeID]          = @PVTypeID
                                     ,[PVTitle]           = @PVTitle
                                     ,[TableID_DataSource]= @TableID_DataSource
                                     ,[TableID_Modifly]   = @TableID_Modifly
                                     ,[PKColumnID]        = @PKColumnID
                                     ,[ForeignColumnID]   = @ForeignColumnID
                                     ,[T_SQLTypeID]       = @T_SQLTypeID
                                     ,[ViewExtend]        = @ViewExtend
                                     ,[ColumnCount]       = @ColumnCount
                                     ,[LockRowCount]      = @LockRowCount
                                     ,[LockColumnCount]   = @LockColumnCount
                                     ,[TableWidth]        = @TableWidth
                                   
                                     ,[DisOrder]          = @DisOrder
                                     ,[AddUserid]         = @AddUserid
                                     ,[AddTime]           = @AddTime
                                     ,[IsDel]             = @IsDel
                                     ,[UpdateTime]        = @UpdateTime
                                     ,[UpdateUserID]      = @UpdateUserID
                                WHERE PVID = @PVID ";

            #endregion

            #region  除原有的视图,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有视图数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数

            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("PVTypeID", 0);
            para.AddNewInParameter("PVTitle", "", 20);
            para.AddNewInParameter("TableID_DataSource", "", 20);
            para.AddNewInParameter("TableID_Modifly", 0);
            para.AddNewInParameter("PKColumnID", 0);
            para.AddNewInParameter("ForeignColumnID", 0);
            para.AddNewInParameter("T_SQLTypeID", 0);
            para.AddNewInParameter("ViewExtend", "", 500);
            para.AddNewInParameter("ColumnCount", 0);
            para.AddNewInParameter("LockRowCount", 0);
            para.AddNewInParameter("LockColumnCount", 0);
            para.AddNewInParameter("TableWidth", 0);

            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);

            #endregion

            sw.Start();

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "视图");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入视图数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }
Exemplo n.º 48
0
        private void CreatePageTurn(DataAccessLibrary dal, string pvid,string tableID)
        {
            string sql ;
            
            string orderColumns;

            sql = "select top 1 1 from Manage_Columns where TableID ={0} and ColSysName='DisOrder'";
            if (dal.ExecuteExists(string.Format(sql,tableID)))
            {
                orderColumns = "DisOrder";
            }
            else
            {
                sql = "select top 1 ColSysName from Manage_Columns where TableID ={0} order by ColumnID ";
                orderColumns = dal.ExecuteString(string.Format(sql, tableID));
            }

            sql = "select top 1 1 from Manage_Pagination where PVID=" + pvid;
            if (!dal.ExecuteExists(sql))
            {
                sql = @"insert into Manage_Pagination (PVID,OrderColumns )  values ({0},'{1}' )";
                dal.ExecuteNonQuery(string.Format(sql, pvid, orderColumns));
        
            }
        
                           
        }
Exemplo n.º 49
0
        private string IntoButton(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //提取数据
            const string sqlGvSource = @"SELECT * FROM Manage_ButtonBar where ModuleID in ({0}) order by ButtonID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的按钮用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlDelete = string.Format("delete FROM [Manage_ButtonBar] WHERE ModuleID in ({0})", DataIDs);

            const string sqlExists = "SELECT TOP 1 1 FROM [Manage_ButtonBar] WHERE ButtonID = {0}";
            const string sqlInsert = @"INSERT INTO [Manage_ButtonBar](
                                         [ButtonID]
                                        ,[ModuleID]
                                        ,[OpenModuleID]
                                        ,[OpenPageViewID]
                                        ,[FindPageViewID]
                                        ,[BtnTitle]
                                        ,[BtnTypeID]
                                        ,[BtnKind]
                                        ,[URL]
                                        ,[WebWidth]
                                        ,[WebHeight]
                                        ,[IsNeedSelect]
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]
                                        ,[UpdateTime]
                                        ,[UpdateUserID]  )
 
                                 VALUES(
                                        @ButtonID
                                       ,@ModuleID
                                       ,@OpenModuleID
                                       ,@OpenPageViewID
                                       ,@FindPageViewID
                                       ,@BtnTitle
                                       ,@BtnTypeID
                                       ,@BtnKind
                                       ,@URL
                                       ,@WebWidth
                                       ,@WebHeight
                                       ,@IsNeedSelect
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                       ,@UpdateTime
                                       ,@UpdateUserID
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_ButtonBar] SET 
                                       [ModuleID]          = @ModuleID
                                      ,[OpenModuleID]      = @OpenModuleID
                                      ,[OpenPageViewID]    = @OpenPageViewID
                                      ,[FindPageViewID]    = @FindPageViewID
                                      ,[BtnTitle]          = @BtnTitle
                                      ,[BtnTypeID]         = @BtnTypeID
                                      ,[BtnKind]           = @BtnKind
                                      ,[URL]               = @URL
                                      ,[WebWidth]          = @WebWidth
                                      ,[WebHeight]         = @WebHeight
                                      ,[IsNeedSelect]      = @IsNeedSelect
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                      ,[UpdateTime]        = @UpdateTime
                                      ,[UpdateUserID]      = @UpdateUserID
                                WHERE ButtonID = @ButtonID ";
            #endregion

            #region  除原有的按钮,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有按钮数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("ButtonID", 0);
            para.AddNewInParameter("ModuleID", 0);
            para.AddNewInParameter("OpenModuleID", 0);
            para.AddNewInParameter("OpenPageViewID", 0);
            para.AddNewInParameter("FindPageViewID", 0);
            para.AddNewInParameter("BtnTitle", "", 50);
            para.AddNewInParameter("BtnTypeID", 0);
            para.AddNewInParameter("BtnKind", 0);
            para.AddNewInParameter("URL", "", 240);
            para.AddNewInParameter("WebWidth", 0);
            para.AddNewInParameter("WebHeight", 0);
            para.AddNewInParameter("IsNeedSelect", true);
            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            para.AddNewInParameter("UpdateTime", "", 20);
            para.AddNewInParameter("UpdateUserID", 0);
            #endregion

            sw.Start();

            dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                IntoData(para, dr, dalTarget, dalTargetSelect, sqlExists, sqlUpdate, sqlInsert, "按钮");
            }
            dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入按钮数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }
Exemplo n.º 50
0
        private string IntoPVCol(DataAccessLibrary dalSource, DataAccessLibrary dalTarget, DataAccessLibrary dalTargetSelect)
        {
            //DataAccessLibrary dal = DalFactory.CreateDal(dalTarget.Command.Connection.ConnectionString ,dalTarget.Command.Connection.)

            //提取数据
            const string sqlGvSource = @"SELECT * FROM [Manage_PageViewCol] where PVID in (
                                            SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})
                                         ) order by PVColID";

            Stopwatch sw = new Stopwatch();

            sw.Start();
            DataTable dt = dalSource.ExecuteFillDataTable(string.Format(sqlGvSource, DataIDs));

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            sw.Stop();

            txtMsg.Text += "\n\n==========================\n提取源数据库里的视图详细用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            //遍历确认是否有记录,没有记录则添加;有记录则修改

            sw.Reset();
            sw.Start();
            #region 定义SQL
            string sqlDelete = string.Format("delete FROM [Manage_PageViewCol] WHERE [PVID] in ( SELECT PVID FROM Manage_PageView WHERE ModuleID in ({0})) ", DataIDs);

            const string sqlExists = "SELECT TOP 1 PVColID FROM [Manage_PageViewCol] WHERE [PVID] = {0} AND ColumnID = {1}";
            const string sqlInsert = @"INSERT INTO [Manage_PageViewCol](
                                         [PVID]
                                        ,[ColumnID]
                                        ,[ColTitle]
                                        ,[ColHelp]
                                        ,[HelpStation]
                                        ,[DefaultValue]
                                        ,[ClearTDStart]
                                        ,[ClearTDEnd]
                                        ,[TDColspan]
                                        ,[ColWidth]
                                        ,[ColAlign]
                                        ,[ControlState]
                                        ,[Ser_IsSave]
                                        ,[IsClear]
                                        ,[Kind]
                                        ,[IsSort]
                                        ,[Format]
                                        ,[MaxLength]
                                        ,[Ser_FindKindID]
                                        ,[Ser_CustomerFindKind]
                                        ,[Json]
                                       
                                        ,[DisOrder]
                                        ,[AddUserid]
                                        ,[AddTime]
                                        ,[IsDel]          )
                                 VALUES(
                                        @PVID
                                       ,@ColumnID
                                       ,@ColTitle
                                       ,@ColHelp
                                       ,@HelpStation
                                       ,@DefaultValue
                                       ,@ClearTDStart
                                       ,@ClearTDEnd
                                       ,@TDColspan
                                       ,@ColWidth
                                       ,@ColAlign
                                       ,@ControlState
                                       ,@Ser_IsSave
                                       ,@IsClear
                                       ,@Kind
                                       ,@IsSort
                                       ,@Format
                                       ,@MaxLength
                                       ,@Ser_FindKindID
                                       ,@Ser_CustomerFindKind
                                       ,@Json
                                       
                                       ,@DisOrder
                                       ,@AddUserid
                                       ,@AddTime
                                       ,@IsDel
                                        ) ";

            const string sqlUpdate = @"UPDATE [Manage_PageViewCol] SET 
                                       [ColTitle]      = @ColTitle
                                      ,[ColHelp]      = @ColHelp
                                      ,[HelpStation]      = @HelpStation
                                      ,[DefaultValue]      = @DefaultValue
                                      ,[ClearTDStart]      = @ClearTDStart
                                      ,[ClearTDEnd]      = @ClearTDEnd
                                      ,[TDColspan]      = @TDColspan
                                      ,[ColWidth]      = @ColWidth
                                      ,[ColAlign]      = @ColAlign
                                      ,[ControlState]      = @ControlState
                                      ,[Ser_IsSave]      = @Ser_IsSave
                                      ,[IsClear]      = @IsClear
                                      ,[Kind]      = @Kind
                                      ,[IsSort]      = @IsSort
                                      ,[Format]      = @Format
                                      ,[MaxLength]      = @MaxLength
                                      ,[Ser_FindKindID]      = @Ser_FindKindID
                                      ,[Ser_CustomerFindKind]      = @Ser_CustomerFindKind
                                      ,[Json]      = @Json
                                      
                                      ,[DisOrder]          = @DisOrder
                                      ,[AddUserid]         = @AddUserid
                                      ,[AddTime]           = @AddTime
                                      ,[IsDel]             = @IsDel
                                     
                                WHERE PVColID = @PVColID ";
            #endregion

            #region  除原有的视图里的字段,2014-2-8 增加
            dalTarget.ExecuteNonQuery(sqlDelete);
            txtMsg.Text += "\n删除原有视图里的字段数据用时:" + Functions.TimeSpantoFloat(sw.Elapsed);
            txtMsg.Text += "。删除记录:" + dalTarget.ExecuteRowCount;
            sw.Stop();
            sw.Reset();
            #endregion

            #region 定义参数
            var para = dalTarget.ManagerParameter;
            para.ClearParameter();

            para.AddNewInParameter("PVColID", 0);
            para.AddNewInParameter("PVID", 0);
            para.AddNewInParameter("ColumnID", 0);
            para.AddNewInParameter("ColTitle", "", 30);
            para.AddNewInParameter("ColHelp", "", 100);
            para.AddNewInParameter("HelpStation", 0);
            para.AddNewInParameter("DefaultValue", "", 50);
            para.AddNewInParameter("ClearTDStart", 0);
            para.AddNewInParameter("ClearTDEnd", 0);
            para.AddNewInParameter("TDColspan", 0);
            para.AddNewInParameter("ColWidth", 0);
            para.AddNewInParameter("ColAlign", "", 10);
            para.AddNewInParameter("ControlState", 0);
            para.AddNewInParameter("Ser_IsSave", 0);
            para.AddNewInParameter("IsClear", true);
            para.AddNewInParameter("Kind", 0);
            para.AddNewInParameter("IsSort", true);
            para.AddNewInParameter("Format", "", 800);
            para.AddNewInParameter("MaxLength", 0);
            para.AddNewInParameter("Ser_FindKindID", 0);
            para.AddNewInParameter("Ser_CustomerFindKind", "", 255);
            para.AddNewInParameter("Json", "", 1000);

            para.AddNewInParameter("DisOrder", 0);
            para.AddNewInParameter("AddUserid", 0);
            para.AddNewInParameter("AddTime", "", 20);
            para.AddNewInParameter("IsDel", true);
            #endregion

            sw.Start();

            //dalTarget.ManagerTran.TranBegin();

            //遍历记录,导入数据
            foreach (DataRow dr in dt.Rows)
            {
                for (int i = 0; i < para.Count; i++)
                {
                    //para[i].Value = dr[para[i].ParameterName.Replace("@", "")].ToString();

                    var parameterName = para[i].ParameterName.Replace("@", "");

                    switch (parameterName)
                    {
                    case "AddTime":
                    case "UpdateTime":
                        para[i].Value = System.Convert.ToDateTime(dr[parameterName]).ToString("yyyy-MM-dd HH:mm:ss");
                        break;

                    default:
                        para[i].Value = dr[parameterName].ToString();
                        break;
                    }
                }

                #region 添加或者修改

                string pvColID = dalTargetSelect.ExecuteString(string.Format(sqlExists, dr[1], dr[2]));

                if (!string.IsNullOrEmpty(pvColID))
                {
                    //有记录,修改
                    para["PVColID"].Value = pvColID;
                    dalTarget.ExecuteNonQuery(sqlUpdate);
                    txtMsg.Text += "\n修改一条视图详细记录:" + pvColID + "_" + dr[1] + "_" + dr[2];
                }
                else
                {
                    //没有记录,添加
                    dalTarget.ExecuteNonQuery(sqlInsert);
                    txtMsg.Text += "\n添加一条视图详细记录:" + dr[1] + "_" + dr[2];
                }

                //判断是否出错
                if (dalTarget.ErrorMessage.Length > 1)
                {
                    //导入数据时出错
                    txtMsg.Text += "\n导入视图详细信息的时候出错!" + dr[0];
                    txtMsg.Text += "\n" + dalTarget.ErrorMessage + "\n==========\n";
                    WritePara(para);
                }
                #endregion
            }

            //dalTarget.ManagerTran.TranCommit();

            sw.Stop();

            txtMsg.Text += "\n导入视图详细用时:" + Functions.TimeSpantoFloat(sw.Elapsed);

            return("");
        }