コード例 #1
0
ファイル: SlnDac.cs プロジェクト: thachgiasoft/ue96
        public int SetOrderNum(SlnItemInfo oParam)
        {
            string     sql = "update sln_item set ordernum = " + oParam.OrderNum + " where sysno = " + oParam.SysNo;
            SqlCommand cmd = new SqlCommand(sql);

            return(SqlHelper.ExecuteNonQuery(cmd));
        }
コード例 #2
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public int InsertSlnItem(SlnItemInfo oParam)
        {
            string  sql = "select * from sln_item where slnsysno = " + oParam.SlnSysNo + " and ID=" + Util.ToSqlString(oParam.ID);
            DataSet ds  = SqlHelper.ExecuteDataSet(sql);

            if (Util.HasMoreRow(ds))
            {
                throw new BizException("the same ID exists already");
            }
            return(new SlnDac().Insert(oParam));
        }
コード例 #3
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
 private void mapSlnItem(SlnItemInfo oParam, DataRow tempdr)
 {
     oParam.SysNo       = Util.TrimIntNull(tempdr["SysNo"]);
     oParam.SlnSysNo    = Util.TrimIntNull(tempdr["SlnSysNo"]);
     oParam.ID          = Util.TrimNull(tempdr["ID"]);
     oParam.Name        = Util.TrimNull(tempdr["Name"]);
     oParam.Title       = Util.TrimNull(tempdr["Title"]);
     oParam.Description = Util.TrimNull(tempdr["Description"]);
     oParam.OrderNum    = Util.TrimIntNull(tempdr["OrderNum"]);
     oParam.Status      = Util.TrimIntNull(tempdr["Status"]);
 }
コード例 #4
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public void UpdateSlnItem(SlnItemInfo oParam)
        {
            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                new SlnDac().Update(oParam);
                scope.Complete();
            }
        }
コード例 #5
0
ファイル: SlnDac.cs プロジェクト: thachgiasoft/ue96
        public int GetSlnItemNewOrderNum(SlnItemInfo oParam)
        {
            string  sql = "select isnull(max(OrderNum),0)+1 as newOrderNum from sln_item where slnsysno=" + oParam.SlnSysNo;
            DataSet ds  = SqlHelper.ExecuteDataSet(sql);

            if (Util.HasMoreRow(ds))
            {
                return(Int32.Parse(ds.Tables[0].Rows[0][0].ToString()));
            }
            else
            {
                return(1);
            }
        }
コード例 #6
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public SlnItemInfo LoadSlnItem(int SysNo)
        {
            string      sql    = "select * from sln_item where sysno=" + SysNo;
            DataSet     ds     = SqlHelper.ExecuteDataSet(sql);
            SlnItemInfo oParam = new SlnItemInfo();

            if (Util.HasMoreRow(ds))
            {
                mapSlnItem(oParam, ds.Tables[0].Rows[0]);
            }
            else
            {
                oParam = null;
            }
            return(oParam);
        }
コード例 #7
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public SortedList GetSlnItemList(int SlnSysNo)
        {
            string sql = @"select * from sln_item where slnsysno = @slnsysno order by ordernum";

            sql = sql.Replace("@slnsysno", SlnSysNo.ToString());
            DataSet ds = SqlHelper.ExecuteDataSet(sql);

            if (!Util.HasMoreRow(ds))
            {
                return(null);
            }

            SortedList sl = new SortedList(ds.Tables[0].Rows.Count);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                SlnItemInfo item = new SlnItemInfo();
                mapSlnItem(item, dr);
                sl.Add(item, null);
            }
            return(sl);
        }
コード例 #8
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public void MoveBottom(SlnItemInfo oParam)
        {
            SortedList sl = GetSlnItemList(oParam.SlnSysNo);

            if (sl == null)
            {
                throw new BizException("no items");
            }

            if (oParam.OrderNum == sl.Count)
            {
                throw new BizException("it's the last one, can't be moved down");
            }

            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                SlnDac o = new SlnDac();

                foreach (SlnItemInfo item in sl.Keys)
                {
                    if (item.OrderNum > oParam.OrderNum)
                    {
                        item.OrderNum = item.OrderNum - 1;
                        o.SetOrderNum(item);
                    }
                }
                oParam.OrderNum = sl.Count;
                o.SetOrderNum(oParam);

                scope.Complete();
            }
        }
コード例 #9
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
        public void MoveTop(SlnItemInfo oParam)
        {
            if (oParam.OrderNum == 1)
            {
                throw new BizException("it's the top one already");
            }
            SortedList sl = GetSlnItemList(oParam.SlnSysNo);

            if (sl == null)
            {
                throw new BizException("no item for this solution");
            }

            TransactionOptions options = new TransactionOptions();

            options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            options.Timeout        = TransactionManager.DefaultTimeout;

            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options))
            {
                SlnDac o = new SlnDac();

                foreach (SlnItemInfo item in sl.Keys)
                {
                    if (item.OrderNum < oParam.OrderNum)
                    {
                        item.OrderNum = item.OrderNum + 1;
                        o.SetOrderNum(item);
                    }
                }
                oParam.OrderNum = 1;
                o.SetOrderNum(oParam);

                scope.Complete();
            }
        }
コード例 #10
0
ファイル: SlnManager.cs プロジェクト: thachgiasoft/ue96
 public int GetSlnItemNewOrderNum(SlnItemInfo oParam)
 {
     return(new SlnDac().GetSlnItemNewOrderNum(oParam));
 }
コード例 #11
0
ファイル: SlnDac.cs プロジェクト: thachgiasoft/ue96
        public int Update(SlnItemInfo oParam)
        {
            string     sql = @"UPDATE sln_item SET 
                            SlnSysNo=@SlnSysNo, ID=@ID, 
                            Name=@Name, Title=@Title, 
                            Description=@Description, OrderNum=@OrderNum, 
                            Status=@Status
                            WHERE SysNo=@SysNo";
            SqlCommand cmd = new SqlCommand(sql);

            SqlParameter paramSysNo       = new SqlParameter("@SysNo", SqlDbType.Int, 4);
            SqlParameter paramSlnSysNo    = new SqlParameter("@SlnSysNo", SqlDbType.Int, 4);
            SqlParameter paramID          = new SqlParameter("@ID", SqlDbType.NVarChar, 50);
            SqlParameter paramName        = new SqlParameter("@Name", SqlDbType.NVarChar, 500);
            SqlParameter paramTitle       = new SqlParameter("@Title", SqlDbType.NVarChar, 500);
            SqlParameter paramDescription = new SqlParameter("@Description", SqlDbType.Text, 0);
            SqlParameter paramOrderNum    = new SqlParameter("@OrderNum", SqlDbType.Int, 4);
            SqlParameter paramStatus      = new SqlParameter("@Status", SqlDbType.Int, 4);

            if (oParam.SysNo != AppConst.IntNull)
            {
                paramSysNo.Value = oParam.SysNo;
            }
            else
            {
                paramSysNo.Value = System.DBNull.Value;
            }

            if (oParam.SlnSysNo != AppConst.IntNull)
            {
                paramSlnSysNo.Value = oParam.SlnSysNo;
            }
            else
            {
                paramSlnSysNo.Value = System.DBNull.Value;
            }
            if (oParam.ID != AppConst.StringNull)
            {
                paramID.Value = oParam.ID;
            }
            else
            {
                paramID.Value = System.DBNull.Value;
            }
            if (oParam.Name != AppConst.StringNull)
            {
                paramName.Value = oParam.Name;
            }
            else
            {
                paramName.Value = System.DBNull.Value;
            }
            if (oParam.Title != AppConst.StringNull)
            {
                paramTitle.Value = oParam.Title;
            }
            else
            {
                paramTitle.Value = System.DBNull.Value;
            }
            if (oParam.Description != AppConst.StringNull)
            {
                paramDescription.Value = oParam.Description;
            }
            else
            {
                paramDescription.Value = System.DBNull.Value;
            }
            if (oParam.OrderNum != AppConst.IntNull)
            {
                paramOrderNum.Value = oParam.OrderNum;
            }
            else
            {
                paramOrderNum.Value = System.DBNull.Value;
            }
            if (oParam.Status != AppConst.IntNull)
            {
                paramStatus.Value = oParam.Status;
            }
            else
            {
                paramStatus.Value = System.DBNull.Value;
            }

            cmd.Parameters.Add(paramSysNo);
            cmd.Parameters.Add(paramSlnSysNo);
            cmd.Parameters.Add(paramID);
            cmd.Parameters.Add(paramName);
            cmd.Parameters.Add(paramTitle);
            cmd.Parameters.Add(paramDescription);
            cmd.Parameters.Add(paramOrderNum);
            cmd.Parameters.Add(paramStatus);

            return(SqlHelper.ExecuteNonQuery(cmd));
        }
コード例 #12
0
ファイル: SlnDac.cs プロジェクト: thachgiasoft/ue96
        public int Insert(SlnItemInfo oParam)
        {
            string     sql = @"INSERT INTO sln_item
                            (
                            SlnSysNo, ID, Name, Title, 
                            Description, OrderNum, Status
                            )
                            VALUES (
                            @SlnSysNo, @ID, @Name, @Title, 
                            @Description, @OrderNum, @Status
                            );set @SysNo = SCOPE_IDENTITY();";
            SqlCommand cmd = new SqlCommand(sql);

            SqlParameter paramSysNo       = new SqlParameter("@SysNo", SqlDbType.Int, 4);
            SqlParameter paramSlnSysNo    = new SqlParameter("@SlnSysNo", SqlDbType.Int, 4);
            SqlParameter paramID          = new SqlParameter("@ID", SqlDbType.NVarChar, 50);
            SqlParameter paramName        = new SqlParameter("@Name", SqlDbType.NVarChar, 500);
            SqlParameter paramTitle       = new SqlParameter("@Title", SqlDbType.NVarChar, 500);
            SqlParameter paramDescription = new SqlParameter("@Description", SqlDbType.Text, 0);
            SqlParameter paramOrderNum    = new SqlParameter("@OrderNum", SqlDbType.Int, 4);
            SqlParameter paramStatus      = new SqlParameter("@Status", SqlDbType.Int, 4);

            paramSysNo.Direction = ParameterDirection.Output;
            if (oParam.SlnSysNo != AppConst.IntNull)
            {
                paramSlnSysNo.Value = oParam.SlnSysNo;
            }
            else
            {
                paramSlnSysNo.Value = System.DBNull.Value;
            }
            if (oParam.ID != AppConst.StringNull)
            {
                paramID.Value = oParam.ID;
            }
            else
            {
                paramID.Value = System.DBNull.Value;
            }
            if (oParam.Name != AppConst.StringNull)
            {
                paramName.Value = oParam.Name;
            }
            else
            {
                paramName.Value = System.DBNull.Value;
            }
            if (oParam.Title != AppConst.StringNull)
            {
                paramTitle.Value = oParam.Title;
            }
            else
            {
                paramTitle.Value = System.DBNull.Value;
            }
            if (oParam.Description != AppConst.StringNull)
            {
                paramDescription.Value = oParam.Description;
            }
            else
            {
                paramDescription.Value = System.DBNull.Value;
            }
            if (oParam.OrderNum != AppConst.IntNull)
            {
                paramOrderNum.Value = oParam.OrderNum;
            }
            else
            {
                paramOrderNum.Value = System.DBNull.Value;
            }
            if (oParam.Status != AppConst.IntNull)
            {
                paramStatus.Value = oParam.Status;
            }
            else
            {
                paramStatus.Value = System.DBNull.Value;
            }

            cmd.Parameters.Add(paramSysNo);
            cmd.Parameters.Add(paramSlnSysNo);
            cmd.Parameters.Add(paramID);
            cmd.Parameters.Add(paramName);
            cmd.Parameters.Add(paramTitle);
            cmd.Parameters.Add(paramDescription);
            cmd.Parameters.Add(paramOrderNum);
            cmd.Parameters.Add(paramStatus);

            return(SqlHelper.ExecuteNonQuery(cmd, out oParam.SysNo));
        }