using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using MySql.Data.MySqlClient; namespace FangYar.OracleDAL.TBL { public class SysRoleDAL : FangYar.IDAL.TBL.SysRoleIDAL { #region 私有方法 /// /// DataRow转model实体类对象 /// /// /// private void DataRowToModel(Model.TBL.TBL_SYS_ROLE_Model model, DataRow dr) { if (!DBNull.Value.Equals(dr["ID"])) model.ID = dr["ID"].ToString(); if (!DBNull.Value.Equals(dr["APP_ID"])) model.APP_ID = dr["APP_ID"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_NAME"])) model.ROLE_NAME = dr["ROLE_NAME"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_DES"])) model.ROLE_DES = dr["ROLE_DES"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_SYS"])) model.ROLE_SYS = dr["ROLE_SYS"].ToString(); if (!DBNull.Value.Equals(dr["ORG_ID"])) model.ORG_ID = dr["ORG_ID"].ToString(); } /// /// DataRow转model实体类对象 /// /// /// private Model.TBL.TBL_SYS_ROLE_Model DataRowToModel(DataRow dr) { Model.TBL.TBL_SYS_ROLE_Model model = new Model.TBL.TBL_SYS_ROLE_Model(); if (!DBNull.Value.Equals(dr["ID"])) model.ID = dr["ID"].ToString(); if (!DBNull.Value.Equals(dr["APP_ID"])) model.APP_ID = dr["APP_ID"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_NAME"])) model.ROLE_NAME = dr["ROLE_NAME"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_DES"])) model.ROLE_DES = dr["ROLE_DES"].ToString(); if (!DBNull.Value.Equals(dr["ROLE_SYS"])) model.ROLE_SYS = dr["ROLE_SYS"].ToString(); if (!DBNull.Value.Equals(dr["ORG_ID"])) model.ORG_ID = dr["ORG_ID"].ToString(); return model; } /// /// 把DataTable行转成实体类List集合 /// private List DataTableToList(DataTable dt) { List modellist = new List(); if (dt.Rows.Count > 0) { foreach (DataRow myRow in dt.Rows) { modellist.Add(DataRowToModel(myRow)); } } return modellist; } #endregion #region 基本方法 /// /// 根据ID获取实体对象 /// public Model.TBL.TBL_SYS_ROLE_Model GetModelByID(string Id) { Model.TBL.TBL_SYS_ROLE_Model model = null; string sql = "select * from TBL_SYS_ROLE where ID=@ID"; MySqlParameter[] paras ={ new MySqlParameter("@ID",MySqlDbType.VarChar,36) }; paras[0].Value = Id; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new Model.TBL.TBL_SYS_ROLE_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 根据APP_ID获取实体类对象 /// public Model.TBL.TBL_SYS_ROLE_Model GetModelByAppId(string AppId) { Model.TBL.TBL_SYS_ROLE_Model model = null; string sql = "select * from TBL_SYS_ROLE where APP_ID=@APP_ID"; MySqlParameter[] paras ={ new MySqlParameter("@APP_ID",MySqlDbType.VarChar,50) }; paras[0].Value = AppId; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new Model.TBL.TBL_SYS_ROLE_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 添加 /// public bool Add(Model.TBL.TBL_SYS_ROLE_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("insert into TBL_SYS_ROLE (APP_ID,ROLE_NAME,ROLE_DES,ROLE_SYS,ORG_ID,ID)"); strsql.Append("values"); strsql.Append("(@APP_ID,@ROLE_NAME,@ROLE_DES,@ROLE_SYS,@ORG_ID,@ID)"); MySqlParameter[] paras ={ new MySqlParameter("@APP_ID", model.APP_ID), new MySqlParameter("@ROLE_NAME",model.ROLE_NAME), new MySqlParameter("@ROLE_DES",model.ROLE_DES), new MySqlParameter("@ROLE_SYS", model.ROLE_SYS), new MySqlParameter("@ORG_ID",model.ORG_ID), new MySqlParameter("@ID",model.ID), }; int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras); if (i > 0) { return true; } else { return false; } } /// ///修改 /// public bool Edit(Model.TBL.TBL_SYS_ROLE_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("update TBL_SYS_ROLE set "); strsql.Append("APP_ID=@APP_ID,"); strsql.Append("ROLE_NAME=@ROLE_NAME,"); strsql.Append("ROLE_DES=@ROLE_DES, "); strsql.Append("ROLE_SYS=@ROLE_SYS, "); strsql.Append("ORG_ID=@ORG_ID "); strsql.Append(" where ID=@ID"); MySqlParameter[] paras ={ new MySqlParameter("@APP_ID",model.APP_ID), new MySqlParameter("@ROLE_NAME",model.ROLE_NAME), new MySqlParameter("@ROLE_DES",model.ROLE_DES), new MySqlParameter("@ROLE_SYS",model.ROLE_SYS), new MySqlParameter("@ORG_ID",model.ORG_ID), new MySqlParameter("@ID",model.ID) }; int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras); if (i > 0) { return true; } else { return false; } } /// /// 删除 /// public bool Delete(string IDList) { string sql = "delete from TBL_SYS_ROLE where ID in('" + IDList + "')"; try { int i = FangYar.Common.MySqlHelper.ExecuteSql(sql); if (i > 0) { return true; } else { return false; } } catch { return false; } } //记录总数 public int Count(string where) { string sql = "select count(1) from TBL_SYS_ROLE "; if (where != null && where != "") { sql += " where " + where; } try { return FangYar.Common.MySqlHelper.GetCount(sql); } catch { return 0; } } #endregion #region 分页 /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public string QueryJsonList(int PageIndex, int PageSize, string strwhere) { return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public string QueryJsonList(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere, order)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public List QueryList(int PageIndex, int PageSize, string strwhere) { return DataTableToList(QueryPage(PageIndex, PageSize, strwhere)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public List QueryList(int PageIndex, int PageSize, string strwhere, string order) { return DataTableToList(QueryPage(PageIndex, PageSize, strwhere, order)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_SYS_ROLE", strwhere); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_SYS_ROLE", strwhere, order); } /// /// 存储过程分页 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public void QueryProc(int PageIndex, int PageSize, string strwhere, string order) { int totalcount = 0; FangYar.Common.SqlPagerHelperOra.Select(PageSize, PageIndex, out totalcount, "TBL_SYS_ROLE", "*", null, null, null); } #endregion #region 扩展方法 public DataTable RolegetMenu(string appid, string roleId) { StringBuilder strsql = new StringBuilder(); strsql.Append("select t.id,t.menu_title,b.menu_id from TBL_SYS_MENU t "); strsql.Append("left join"); strsql.AppendFormat("(select menu_id from TBL_SYS_ROLEMENU where app_ID='{0}' and ROLE_ID='{1}') ", appid, roleId); strsql.Append(" b on t.id=b.menu_id"); DataTable dt = FangYar.Common.MySqlHelper.QueryTable(strsql.ToString()); if (dt.Rows.Count > 0) { return dt; } else { return null; } } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public DataTable QueryDataTable(int PageIndex, int PageSize, string strwhere, string order) { int startnum = (PageIndex - 1) * PageSize; StringBuilder strSql = new StringBuilder(); strSql.Append(" select * from(select t.* ,o.org_name from TBL_SYS_ROLE t left join fire_org o on t.org_id = o.org_id) s "); if (strwhere != null && strwhere != "") { strSql.Append(" where " + strwhere); } if (order != null && order != "") { strSql.Append(" ORDER BY " + order); } strSql.Append(" limit " + startnum + ", " + PageSize); return Common.MySqlHelper.QueryTable(strSql.ToString()); } #endregion } }