/// <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); } }
/// <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); } }
/// <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); } }