Пример #1
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="p_BE">要删除的实体</param>
        /// <param name="sqlTrans">事务类</param>
        public void RDelete(BaseEntity p_BE, IDBTransAccess sqlTrans)
        {
            try
            {
                this.CheckCorrect(p_BE);
                Structure    entity  = (Structure)p_BE;
                StructureCtl control = new StructureCtl(sqlTrans);
                control.Delete(entity);

                string    sql = "SELECT * FROM Data_Structure WHERE ParentID=" + SysString.ToDBString(entity.ID);
                DataTable dt  = sqlTrans.Fill(sql);
                if (dt.Rows.Count > 0)
                {
                    throw new BaseException("该项有子项目,请删除其相关子项目后再删除此项目");
                }

                sql = "DELETE FROM Data_Structure WHERE ID=" + SysString.ToDBString(entity.ID);
                sqlTrans.ExecuteNonQuery(sql);

                sql = "DELETE Data_StructureMember WHERE StuctureID=" + SysString.ToDBString(entity.ID);
                sqlTrans.ExecuteNonQuery(sql);
            }
            catch (BaseException)
            {
                throw;
            }
            catch (Exception E)
            {
                throw new BaseException(E.Message);
            }
        }
Пример #2
0
 /// <summary>
 /// 新增(传入事务处理)
 /// </summary>
 /// <param name="p_BE">要新增的实体</param>
 /// <param name="sqlTrans">事务类</param>
 public void RAdd(BaseEntity p_BE, IDBTransAccess sqlTrans)
 {
     try
     {
         this.CheckCorrect(p_BE);
         Structure    entity  = (Structure)p_BE;
         StructureCtl control = new StructureCtl(sqlTrans);
         string       sql     = "SELECT * FROM Data_Structure WHERE Name=" + SysString.ToDBString(entity.Name);
         DataTable    dt      = SysUtils.Fill(sql);
         if (dt.Rows.Count > 0)
         {
             throw new BaseException("名称已经存在了,请重新输入");
         }
         entity.ID = (int)EntityIDTable.GetID((long)SysEntity.Data_Structure, sqlTrans);
         control.AddNew(entity);
     }
     catch (BaseException)
     {
         throw;
     }
     catch (Exception E)
     {
         throw new BaseException(E.Message);
     }
 }
Пример #3
0
 /// <summary>
 /// 修改
 /// </summary>
 /// <param name="p_BE">要修改的实体</param>
 /// <param name="sqlTrans">事务类</param>
 public void RUpdate(BaseEntity p_BE, IDBTransAccess sqlTrans)
 {
     try
     {
         this.CheckCorrect(p_BE);
         Structure    entity  = (Structure)p_BE;
         StructureCtl control = new StructureCtl(sqlTrans);
         control.Update(entity);
     }
     catch (BaseException)
     {
         throw;
     }
     catch (Exception E)
     {
         throw new BaseException(E.Message);
     }
 }