moduleFactory1
moduleFactory1
using System;
using System.Collections.Generic;
using System.Text;
using Com.Csddt.BBS.Model;
using Com.Csddt.BBS.IDAL;
using Microsoft.Practices.EnterpriseLibrary.Data;
using Microsoft.Practices.EnterpriseLibrary.Common;
using System.Data.Common;
using System.Data;
using Com.Csddt.Admin.Model;
namespace Com.Csddt.BBS.OracleDAL
{
public class BBSModuleFactory : IBBSModule
{
/// <summary>
/// 数据库连接字符串
/// </summary>
private Database db = DatabaseFactory.CreateDatabase("Com.Csddt.bbs.ConnectionString");
/// <summary>
/// 添加
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool AddModule(BBSModuleEntity model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(" insert into bbs_module m ");
strSql.Append(" ( m.mid,");
strSql.Append(" m.modulename, ");
strSql.Append(" m.ISDel, ");
strSql.Append(" m.description,");
strSql.Append(" m.addtime,");
strSql.Append(" m.img,");
strSql.Append(" m.parentid,");
strSql.Append(" m.sort, ");
strSql.Append(" m.iscommon,");
strSql.Append(" m.admuser_id,");
strSql.Append(" m.level_id, ");
strSql.Append(" m.FUBANZHU,");
strSql.Append(" m.AUDIT_STATE_ID,");
strSql.Append(" m.UPDATETIME,");
strSql.Append(" m.SYSTEM_TYPE,");
strSql.Append(" m.SYSTEM_ID,");
strSql.Append(" m.AUDIT_DATE,");
strSql.Append(" m.AUDIT_USER)");
strSql.Append(" values ");
strSql.Append(" (:mid,");
strSql.Append(" :moduleName, ");
strSql.Append(" :isDel, ");
strSql.Append(" :description,");
strSql.Append(" :addTime, ");
strSql.Append(" :img, ");
strSql.Append(" :parentId, ");
strSql.Append(" :sort, ");
strSql.Append(" :isCommon, ");
strSql.Append(" :admuserID, ");
strSql.Append(" :levelID, ");
strSql.Append(" :Fubanzhu,");
strSql.Append(" :auditStateID,");
strSql.Append(" :updateTime,");
strSql.Append(" :systemType,");
strSql.Append(" :systemId,");
strSql.Append(" :auditData,");
strSql.Append(" :auditUser)");
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
model.MID = GetCurrentBBSID() + 1;
db.AddInParameter(cmd, "mid", DbType.Int32, model.MID);
db.AddInParameter(cmd, "moduleName", DbType.String, model.MODULENAME);
db.AddInParameter(cmd, "isDel", DbType.Int32, model.ISDEL);
db.AddInParameter(cmd, "description", DbType.String, model.DESCRIPTION);
db.AddInParameter(cmd, "addTime", DbType.DateTime, model.ADDTIME);
db.AddInParameter(cmd, "img", DbType.String, model.IMG);
db.AddInParameter(cmd, "parentId", DbType.Int32, model.PARENTID);
db.AddInParameter(cmd, "sort", DbType.Int32, model.MID);//新添加的排序赋值为当前的模块id
db.AddInParameter(cmd, "isCommon", DbType.Int32, model.ISCOMMON);
db.AddInParameter(cmd, "admuserID", DbType.Int32, model.ADMUSER_ID);
db.AddInParameter(cmd, "levelID", DbType.Int32, model.LevelId);
db.AddInParameter(cmd, "updateTime", DbType.DateTime, model.UpdateTime);
db.AddInParameter(cmd, "systemType", DbType.Int32, model.SystemType);
db.AddInParameter(cmd, "systemId", DbType.Int32, model.SystemID);
db.AddInParameter(cmd, "auditData", DbType.DateTime, model.AuditData);
db.AddInParameter(cmd, "auditUser", DbType.Int32, model.AuditUser);
db.AddInParameter(cmd, "Fubanzhu", DbType.String, model.Fubanzhu);
db.AddInParameter(cmd, "auditStateID", DbType.Int32, model.AuditStateID);
try
{
db.ExecuteNonQuery(cmd);
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(BBSModuleEntity model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update bbs_module m ");
strSql.Append(" set m.modulename = :moduleName,");
strSql.Append(" m.isdel = :isDel,");
strSql.Append(" m.description = :description,");
strSql.Append(" m.addtime = :addTime,");
strSql.Append(" m.img = :img,");
strSql.Append(" m.parentid = :parentId,");
strSql.Append(" m.sort = :sort,");
strSql.Append(" m.iscommon = :isCommon,");
strSql.Append(" m.admuser_id = :admuserID,");
strSql.Append(" m.Level_Id = :levelID,");
strSql.Append(" m.fubanzhu =:fubanzhu , ");
strSql.Append(" m.AUDIT_STATE_ID =:auditStateID,");
strSql.Append(" m.UPDATETIME =:updateTime,");
strSql.Append(" m.SYSTEM_TYPE =:systemType, ");
strSql.Append(" m.SYSTEM_ID =:systemId, ");
strSql.Append(" m.AUDIT_DATE =:auditData, ");
strSql.Append(" m.AUDIT_USER =:auditUser ");
strSql.Append(" where m.mid = :mid");
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(cmd, "moduleName", DbType.String, model.MODULENAME);
db.AddInParameter(cmd, "isDel", DbType.Int32, model.ISDEL);
db.AddInParameter(cmd, "description", DbType.String, model.DESCRIPTION);
db.AddInParameter(cmd, "addTime", DbType.DateTime, model.ADDTIME);
db.AddInParameter(cmd, "img", DbType.String, model.IMG);
db.AddInParameter(cmd, "parentId", DbType.Int32, model.PARENTID);
db.AddInParameter(cmd, "sort", DbType.Int32, model.SORT);
db.AddInParameter(cmd, "isCommon", DbType.Int32, model.ISCOMMON);
db.AddInParameter(cmd, "admuserID", DbType.Int32, model.ADMUSER_ID);
db.AddInParameter(cmd, "levelID", DbType.Int32, model.LevelId);
db.AddInParameter(cmd, "updateTime", DbType.DateTime, model.UpdateTime);
db.AddInParameter(cmd, "fubanzhu", DbType.String, model.Fubanzhu);
db.AddInParameter(cmd, "mid", DbType.Int32, model.MID);
db.AddInParameter(cmd, "systemType", DbType.Int32, model.SystemType);
db.AddInParameter(cmd, "systemId", DbType.Int32, model.SystemID);
db.AddInParameter(cmd, "auditData", DbType.DateTime, model.AuditData);
db.AddInParameter(cmd, "auditUser", DbType.Int32, model.AuditUser);
db.AddInParameter(cmd, "auditStateID", DbType.Int32, model.AuditStateID);
try
{
if (db.ExecuteNonQuery(cmd) > 0)
{
return true;
}
else
{
return false;
}
}
catch
{
return false;
}
}
public bool modelUpdate(BBSModuleEntity model)
{
String strSql = "update bbs_module t " +
" set t.modulename = :modulename," +
" t.description = :description, " +
" t.parentid = :parentid, " +
" t.fubanzhu = :fubanzhu, " +
" t.admuser_id = :admuser_id, " +
"t.img = :img " +
" where t.mid = :mid";
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(cmd, "modulename", DbType.String,model.MODULENAME);
db.AddInParameter(cmd, "description", DbType.String, model.DESCRIPTION);
db.AddInParameter(cmd, "parentid", DbType.Int32, model.PARENTID);
db.AddInParameter(cmd, "fubanzhu", DbType.String, model.Fubanzhu);
db.AddInParameter(cmd, "admuser_id", DbType.Int32, model.ADMUSER_ID);
db.AddInParameter(cmd, "img", DbType.String,model.IMG);
db.AddInParameter(cmd, "mid", DbType.Int32,model.MID);
try
{
db.ExecuteNonQuery(cmd);
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 删除一条数据 mids:编号列表(如:1,2,3,20)
/// </summary>
public bool Delete(string mids)
{
string sql = @"update BBS_MODULE set ISDEL=1 where mid in(" + mids + ")";
DbCommand cmd = db.GetSqlStringCommand(sql);
if (db.ExecuteNonQuery(cmd) > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 更新排序
/// </summary>
/// <param name="mid">模块ID</param>
/// <param name="sort">排序位置</param>
/// <returns></returns>
public bool UpdateSort(int mid, int sort)
{
string sql = @"update BBS_MODULE set sort=" + sort + " where mid =" + mid;
DbCommand cmd = db.GetSqlStringCommand(sql);
if (db.ExecuteNonQuery(cmd) > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 分页
/// </summary>
/// <param name="pageSize">每页显示条数</param>
/// <param name="pageIndex">页面索引</param>
/// <param name="keys">名字关键字</param>
/// <param name="parentID">父编号</param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetPageList(int pageSize, int pageIndex, string keys, int parentID, ref int refTotal)
{
List<BBSModuleEntity> listModel = new List<BBSModuleEntity>();
string sql = @"select row_number() over (order by t.mid desc) as rn, t.* from bbs_module t where isdel=0 ";
string sql2 = "select count(*) from bbs_module t where isdel=0 ";
string url = "";
if (!string.IsNullOrEmpty(keys))
{
url += " and t.modulename like '%" + keys + "%'";
}
if (parentID > 0)
{
url += " and t.parentid=" + parentID;
}
DbCommand cmd = db.GetSqlStringCommand(sql2 + url);
object temp = db.ExecuteScalar(cmd);
if (temp == null)
{
return null;
}
else
{
refTotal = int.Parse(temp.ToString());//rn between {1} and {2}
}
DbCommand cmd2 = db.GetSqlStringCommand(string.Format("select * from ({0}) where rn>{1} and rn<= {2} ", sql + url, pageSize * (pageIndex - 1), pageSize * pageIndex));
DataSet ds = db.ExecuteDataSet(cmd2);
foreach (DataRow dr in ds.Tables[0].Rows)
{
listModel.Add(GetModel(dr));
}
return listModel;
}
/// <summary>
/// 分页
/// </summary>
/// <param name="pageSize">每页显示条数</param>
/// <param name="pageIndex">页面索引</param>
/// <param name="keys">名字关键字</param>
/// <param name="parentID">父编号</param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetPageListBySort(int pageSize, int pageIndex, string keys, int parentID, ref int refTotal)
{
List<BBSModuleEntity> listModel = new List<BBSModuleEntity>();
string sql = @"select row_number() over (order by t.Sort desc) as rn, t.* from bbs_module t where isdel=0 ";
string sql2 = "select count(*) from bbs_module t where isdel=0 ";
string url = "";
if (!string.IsNullOrEmpty(keys))
{
url += " and t.modulename like '%" + keys + "%'";
}
if (parentID > 0)
{
url += " and t.parentid=" + parentID;
}
DbCommand cmd = db.GetSqlStringCommand(sql2 + url);
object temp = db.ExecuteScalar(cmd);
if (temp == null)
{
return null;
}
else
{
refTotal = int.Parse(temp.ToString());//rn between {1} and {2}
}
DbCommand cmd2 = db.GetSqlStringCommand(string.Format("select * from ({0}) where rn>{1} and rn<= {2} ", sql + url, pageSize * (pageIndex - 1), pageSize * pageIndex));
DataSet ds = db.ExecuteDataSet(cmd2);
foreach (DataRow dr in ds.Tables[0].Rows)
{
listModel.Add(GetModel(dr));
}
return listModel;
}
/// <summary>
/// 分页
/// </summary>
/// <param name="pageSize">每页显示条数</param>
/// <param name="pageIndex">页面索引</param>
/// <param name="keys">名字关键字</param>
/// <param name="parentID">父编号</param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetIsCommonBySort(int pageSize, int pageIndex, int parentID, ref int refTotal)
{
List<BBSModuleEntity> listModel = new List<BBSModuleEntity>();
string sql = @"select row_number() over (order by t.Sort desc) as rn, t.* from bbs_module t where isdel=0 and iscommon=1";
string sql2 = "select count(*) from bbs_module t where isdel=0 and iscommon=1 ";
string url = "";
if (parentID > 0)
{
url += " and t.parentid=" + parentID;
}
DbCommand cmd = db.GetSqlStringCommand(sql2 + url);
object temp = db.ExecuteScalar(cmd);
if (temp == null)
{
return null;
}
else
{
refTotal = int.Parse(temp.ToString());
}
DbCommand cmd2 = db.GetSqlStringCommand(string.Format("select * from ({0}) where rn>{1} and rn<= {2} ", sql + url, pageSize * (pageIndex - 1), pageSize * pageIndex));
DataSet ds = db.ExecuteDataSet(cmd2);
foreach (DataRow dr in ds.Tables[0].Rows)
{
listModel.Add(GetModel(dr));
}
return listModel;
}
public List<BBSModuleEntity> GetInfoOrderSort(int pageSize, int pageIndex, bool isCommom, int parentID, ref int refTotal)
{
List<BBSModuleEntity> listModel = new List<BBSModuleEntity>();
string sql = @"select row_number() over (order by t.Sort desc) as rn, t.* from bbs_module t where isdel=0";
string sql2 = "select count(*) from bbs_module t where isdel=0 ";
string url = "";
if (isCommom)
{
url += " and iscommon=1 ";
}
if (parentID > 0)
{
url += " and t.parentid=" + parentID;
}
DbCommand cmd = db.GetSqlStringCommand(sql2 + url);
object temp = db.ExecuteScalar(cmd);
if (temp == null)
{
return null;
}
else
{
refTotal = int.Parse(temp.ToString());//rn between {1} and {2}
}
DbCommand cmd2 = db.GetSqlStringCommand(string.Format("select * from ({0}) where rn>{1} and rn<= {2} ", sql + url, pageSize * (pageIndex - 1), pageSize * pageIndex));
DataSet ds = db.ExecuteDataSet(cmd2);
foreach (DataRow dr in ds.Tables[0 ].Rows)
{
listModel.Add(GetModel(dr));
}
return listModel;
}
/// <summary>
/// 获得模块列表
/// </summary>
/// <param name="isCommon">是否通用的(0:是,1:不是)</param>
/// <param name="parentID">父节点ID</param>
/// <param name="isDisplay">是否被屏蔽(0:不是,1:是)</param>
/// <param name="isClose">是否被关闭(0:不是,1:是)</param>
/// <param name="shqId">属于莫个生活圈(生活圈ID列表)</param>
/// <param name="keyword">关键字</param>
/// <param name="pageIndex">当前页</param>
/// <param name="pageSieze"></param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetModuleList(int? isCommon, int parentID, int? isDisplay, int? isClose, string shqId, string keyword, int pageIndex,
int pageSieze, ref int refTotal)
{
int startIndex = pageSieze * (pageIndex - 1) + 1;
int endIndex = pageIndex * pageSieze;
StringBuilder strWhere = new StringBuilder();
strWhere.Append( "where 1=1 ");
//父节点ID
strWhere.Append(" and b.parentid=" + parentID);
//是否通用
if (isCommon.HasValue)
{
strWhere.Append(" and b.iscommon=" + isCommon);
}
//是否被屏蔽
if (isDisplay.HasValue)
{
strWhere.Append(" and b.ISDISPLAY= " + isDisplay);
}
//是否被关闭
if (isClose.HasValue)
{
strWhere.Append(" and b.AUDIT_STATE_ID= " + isClose);
}
//是否属于生活圈
if (!String.IsNullOrEmpty(shqId))
{
strWhere.AppendFormat(" and b.SHQ_ID in ({0})", shqId);
}
//板块名称
if (!string.IsNullOrEmpty(keyword))
{
strWhere.AppendFormat(" and b.modulename like '%{0}%'", keyword);
}
//获得符号条件的总数
StringBuilder strSql = new StringBuilder();
strSql.Append(" select count(*) from bbs_module b ");
strSql.Append(strWhere);
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
try
{
Object objValue = db.ExecuteScalar(cmd);
if (DBNull.Value != objValue)
{
refTotal = Convert.ToInt32(objValue);
}
else
{
refTotal = 0;
return null;
}
}
catch
{
refTotal = 0;
return null;
}
string orderStr = "order by b.Sort desc"; //排序规律是按照排序倒序
string strJoin = " left join adm_user u on b.admuser_ID=u.user_id ";
List<BBSModuleEntity> list = new List<BBSModuleEntity>();
strSql = new StringBuilder();
strSql.Append("select * from (");
strSql.Append("select rownum as rowIndex ,c.* from (");
strSql.Append("select b.*,u.login_name,u.user_name from bbs_module b ");
strSql.Append(strJoin);
strSql.Append(strWhere.ToString());
strSql.Append(orderStr);
strSql.Append(") c");
strSql.Append(") t where t.rowIndex>=:startIndex and t.rowIndex<=:endIndex");
cmd = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(cmd, "startIndex", DbType.Int32, startIndex);
db.AddInParameter(cmd, "endIndex", DbType.Int32, endIndex);
using (IDataReader reader = db.ExecuteReader(cmd))
{
list = BindData(reader);
reader.Dispose();
}
return list;
}
/// <summary>
/// 获得模块列表
/// </summary>
/// <param name="isCommon">是否通用(0:通用,1:不通用;2:通用并是兴趣小组板块) 3.通用并且是活动专区模块)</param>
/// <param name="parentID">父节点ID</param>
/// <param name="isClose">是否被关闭(0:不是,1:是)</param>
/// <param name="keyword">关键字</param>
/// <param name="pageIndex">当前页</param>
/// <param name="pageSieze"></param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetModuleList(int? isCommon, int parentID, int? isClose, string keyword, int pageIndex,
int pageSieze, ref int refTotal)
{
int startIndex = pageSieze * (pageIndex - 1) + 1;
int endIndex = pageIndex * pageSieze;
StringBuilder strWhere = new StringBuilder();
strWhere.Append("where 1=1 ");
//父节点ID
strWhere.Append(" and b.parentid=" + parentID);
//是否通用
if (isCommon.HasValue)
{
strWhere.Append(" and b.iscommon=" + isCommon);
}
//是否被关闭
if (isClose.HasValue)
{
strWhere.Append(" and b.AUDIT_STATE_ID= " + isClose);
}
//板块名称
if (!string.IsNullOrEmpty(keyword))
{
strWhere.AppendFormat(" and b.modulename like '%{0}%'", keyword);
}
//获得符号条件的总数
StringBuilder strSql = new StringBuilder();
strSql.Append(" select count(*) from bbs_module b ");
strSql.Append(strWhere);
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
try
{
Object objValue = db.ExecuteScalar(cmd);
if (DBNull.Value != objValue)
{
refTotal = Convert.ToInt32(objValue);
}
else
{
refTotal = 0;
return null;
}
}
catch
{
refTotal = 0;
return null;
}
string orderStr = "order by b.Sort desc"; //排序规律是按照排序倒序
string strJoin = " left join adm_user u on b.admuser_ID=u.user_id ";
List<BBSModuleEntity> list = new List<BBSModuleEntity>();
strSql = new StringBuilder();
strSql.Append("select * from (");
strSql.Append("select rownum as rowIndex ,c.* from (");
strSql.Append("select b.*,u.login_name,u.user_name from bbs_module b ");
strSql.Append(strJoin);
strSql.Append(strWhere.ToString());
strSql.Append(orderStr);
strSql.Append(") c");
strSql.Append(") t where t.rowIndex>=:startIndex and t.rowIndex<=:endIndex");
cmd = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(cmd, "startIndex", DbType.Int32, startIndex);
db.AddInParameter(cmd, "endIndex", DbType.Int32, endIndex);
using (IDataReader reader = db.ExecuteReader(cmd))
{
list = BindData(reader);
reader.Dispose();
}
return list;
}
/// <summary>
/// 获得模块列表
/// </summary>
/// <param name="isCommon">是否通用的类型[多个用,隔开](是否通用(0:通用,1:不通用;2:通用并是兴趣小组板块) 3.通用并且是活动专区模块)</param>
/// <param name="parentID">父节点ID</param>
/// <param name="isClose">是否被关闭(0:不是,1:是)</param>
/// <param name="keyword">关键字</param>
/// <param name="pageIndex">当前页</param>
/// <param name="pageSieze"></param>
/// <param name="refTotal"></param>
/// <returns></returns>
public List<BBSModuleEntity> GetList(string iscommond, int parentID, int? isClose, string keyword, int pageIndex,
int pageSieze, ref int refTotal)
{
int startIndex = pageSieze * (pageIndex - 1) + 1;
int endIndex = pageIndex * pageSieze;
StringBuilder strWhere = new StringBuilder();
strWhere.Append("where 1=1 ");
//父节点ID
strWhere.Append(" and b.parentid=" + parentID);
//是否通用
if (!string.IsNullOrEmpty(iscommond))
{
strWhere.Append(" and b.iscommon in (" + iscommond + ")");
}
//是否被关闭
if (isClose.HasValue)
{
strWhere.Append(" and b.AUDIT_STATE_ID= " + isClose);
}
//板块名称
if (!string.IsNullOrEmpty(keyword))
{
strWhere.AppendFormat(" and b.modulename like '%{0}%'", keyword);
}
//获得符号条件的总数
StringBuilder strSql = new StringBuilder();
strSql.Append(" select count(*) from bbs_module b ");
strSql.Append(strWhere);
DbCommand cmd = db.GetSqlStringCommand(strSql.ToString());
try
{
Object objValue = db.ExecuteScalar(cmd);
if (DBNull.Value != objValue)
{
refTotal = Convert.ToInt32(objValue);
}
else
{
refTotal = 0;
return null;
}
}
catch
{
refTotal = 0;
return null;
}
string orderStr = "order by b.Sort desc"; //排序规律是按照排序倒序
string strJoin = " left join adm_user u on b.admuser_ID=u.user_id ";
List<BBSModuleEntity> list = new List<BBSModuleEntity>();
strSql = new StringBuilder();
strSql.Append("select * from (");
strSql.Append("select rownum as rowIndex ,c.* from (");
strSql.Append("select b.*,u.login_name,u.user_name from bbs_module b ");
strSql.Append(strJoin);
strSql.Append(strWhere.ToString());
strSql.Append(orderStr);
strSql.Append(") c");
strSql.Append(") t where t.rowIndex>=:startIndex and t.rowIndex<=:endIndex");
cmd = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(cmd, "startIndex", DbType.Int32, startIndex);
db.AddInParameter(cmd, "endIndex", DbType.Int32, endIndex);
using (IDataReader reader = db.ExecuteReader(cmd))
{
list = BindData(reader);
reader.Dispose();
}
return list;
}
/// <summary>
/// 通过父节点查询下面的一级子节点
/// </summary>
/// <returns></returns>
public List<BBSModuleEntity> GetModulelistByParentID(int parentId)
{
string strSql = "select m.*,u.login_name from bbs_module m " +
"left join adm_user u on m.admuser_id=u.user_id where m.parentid=" + parentId +
" order by m.sort desc ";
DbCommand cmd = db.GetSqlStringCommand(strSql);
List<BBSModuleEntity> list = new List<BBSModuleEntity>();
using (IDataReader reader = db.ExecuteReader(cmd))
{
list = BindData(reader);
reader.Dispose();
}
return list;
}
/// <summary>
/// 获得一个对象
/// </summary>
/// <param name="mid"></param>
/// <returns></returns>
public BBSModuleEntity GetModel(int mid)
{
BBSModuleEntity bssModuleEty = new BBSModuleEntity();
string sql = "select * from bbs_module where mid=" + mid;
DbCommand cmd = db.GetSqlStringCommand(sql);
DataSet ds = db.ExecuteDataSet(cmd);
if (ds != null)
{
if (ds.Tables[0].Rows.Count > 0)
{
bssModuleEty =GetModel(ds.Tables[0].Rows[0]);
}
}
return bssModuleEty;
}
public BBSModuleEntity GetModuleById(int mid)
{
String sql = "select * from bbs_module where mid= "+mid;
DbCommand cmd = db.GetSqlStringCommand(sql);
IList<BBSModuleEntity> list = new List<BBSModuleEntity>();
using (IDataReader reader = db.ExecuteReader(cmd))
{
list = BindData(reader);
reader.Dispose();
}
if (list != null && list.Count > 0)
{
return list[0];
}
return null;
}
private BBSModuleEntity GetModel(DataRow dr)
{
BBSModuleEntity model = new BBSModuleEntity();
if (dr["MID"] != null)
{
model.MID = Convert.ToInt32(dr["MID"]);
}
if (dr["MODULENAME"] != null)
{
model.MODULENAME = dr["MODULENAME"] as string;
}
if (dr["ISDEL"] != null)
{
model.ISDEL = Convert.ToInt32(dr["ISDEL"]);
}
if (dr["DESCRIPTION"] != null)
{
model.DESCRIPTION = dr["DESCRIPTION"].ToString();
}
if (dr["ADDTIME"] != null)
{
model.ADDTIME = Convert.ToDateTime(dr["ADDTIME"]);
}
if (dr["IMG"] != null)
{
model.IMG = Convert.ToString(dr["IMG"]);
}
if (dr["PARENTID"] != null)
{
model.PARENTID = Convert.ToInt32(dr["PARENTID"]);
}
if (dr["SORT"] != null)
{
model.SORT = Convert.ToInt32(dr["SORT"]);
}
if (dr["ISCOMMON"] != null)
{
model.ISCOMMON = Convert.ToInt32(dr["ISCOMMON"]);
}
if (dr["ADMUSER_ID"] != null)
{
model.ADMUSER_ID = Convert.ToInt32(dr["ADMUSER_ID"]);
}
if (dr["LEVEL_ID"] != null)
{
model.LevelId = Convert.ToInt32(dr["LEVEL_ID"]);
}
if (dr["FUBANZHU"] != null)
{
model.Fubanzhu = Convert.ToString(dr["FUBANZHU"]);
}
if (dr["UPDATETIME"] != null)
{
model.UpdateTime = Convert.ToDateTime(dr["UPDATETIME"]);
}
if (dr["AUDIT_STATE_ID"] != null)
{
model.AuditStateID = Convert.ToInt32(dr["AUDIT_STATE_ID"]);
}
if (dr["AUDIT_DATE"] != null)
{
model.AuditData = Convert.ToDateTime(dr["AUDIT_DATE"]);
}
if (dr["AUDIT_USER"]!=null)
{
model.AuditUser = Convert.ToInt32(dr["AUDIT_USER"]);
}
if (dr["SYSTEM_TYPE"] != null)
{
model.SystemType = Convert.ToInt32(dr["SYSTEM_TYPE"]);
}
if (dr["SYSTEM_ID"] != null)
{
model.SystemID = Convert.ToInt32(dr["SYSTEM_ID"]);
}
return model;
}
/// <summary>
/// 获得树形结构
/// </summary>
/// <returns></returns>
public List<BBSModuleEntity> GetCategorys(int parentid)
{
List<BBSModuleEntity> listModel = new List<BBSModuleEntity>();
string sql = "select * from bbs_module start with parentid=" + parentid + "and isdel=0 connect by prior mid = parentid order siblings by sort desc";
DbCommand cmd = db.GetSqlStringCommand(sql);
DataSet ds = db.ExecuteDataSet(cmd);
foreach (DataRow dr in ds.Tables[0].Rows)
{
listModel.Add(GetModel(dr));
}
return listModel;
}
/// <summary>
/// 获得某个分支下的编号
/// </summary>
/// <param name="parentid">分支编号</param>
/// <returns>编号列表,如 23,223,234,24, </returns>
public string GetIDs(string parentIDs)
{
string result = "";
string sql = "select mid from bbs_module start with parentid in(" + parentIDs + ") and isdel=0 connect by prior mid = parentid order siblings by mid";
DbCommand cmd = db.GetSqlStringCommand(sql);
DataSet ds = db.ExecuteDataSet(cmd);
foreach (DataRow dr in ds.Tables[0].Rows)
{
result += dr["mid"].ToString() + ",";
}
return result;
}