using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using MySql.Data.MySqlClient; namespace FangYar.OracleDAL.TBL { class SysPermDAL : FangYar.IDAL.TBL.SysPermIDAL { #region 私有方法 /// /// DataRow转model实体类对象 /// /// /// private void DataRowToModel(Model.TBL.TBL_SYS_PERM_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["PERM_NAME"])) model.PERM_NAME = dr["PERM_NAME"].ToString(); if (!DBNull.Value.Equals(dr["PERM_VALUE"])) model.PERM_VALUE = dr["PERM_VALUE"].ToString(); if (!DBNull.Value.Equals(dr["PERM_DES"])) model.PERM_DES = dr["PERM_DES"].ToString(); } /// /// DataRow转model实体类对象 /// /// /// private Model.TBL.TBL_SYS_PERM_Model DataRowToModel(DataRow dr) { Model.TBL.TBL_SYS_PERM_Model model = new Model.TBL.TBL_SYS_PERM_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["PERM_NAME"])) model.PERM_NAME = dr["PERM_NAME"].ToString(); if (!DBNull.Value.Equals(dr["PERM_VALUE"])) model.PERM_VALUE = dr["PERM_VALUE"].ToString(); if (!DBNull.Value.Equals(dr["PERM_DES"])) model.PERM_DES = dr["PERM_DES"].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_PERM_Model GetModelByID(string Id) { Model.TBL.TBL_SYS_PERM_Model model = null; string sql = "select * from TBL_SYS_PERM 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_PERM_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 根据APP_ID获取实体类对象 /// public Model.TBL.TBL_SYS_PERM_Model GetModelByAppId(string AppId) { Model.TBL.TBL_SYS_PERM_Model model = null; string sql = "select * from TBL_SYS_PERM 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_PERM_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 添加 /// public bool Add(Model.TBL.TBL_SYS_PERM_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("insert into TBL_SYS_PERM (APP_ID,PERM_NAME,PERM_VALUE,PERM_DES,ID)"); strsql.Append("values"); strsql.Append("(@APP_ID,@PERM_NAME,@PERM_VALUE,@PERM_DES,@ID)"); MySqlParameter[] paras ={ new MySqlParameter("@APP_ID",model.APP_ID), new MySqlParameter("@PERM_NAME",model.PERM_NAME), new MySqlParameter("@PERM_VALUE",model.PERM_VALUE), new MySqlParameter("@PERM_DES",model.PERM_DES), 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_PERM_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("update TBL_SYS_PERM set "); strsql.Append("APP_ID=@APP_ID,"); strsql.Append("PERM_NAME=@PERM_NAME,"); strsql.Append("PERM_VALUE=@PERM_VALUE,"); strsql.Append("PERM_DES=@PERM_DES "); strsql.Append(" where ID=@ID"); MySqlParameter[] paras ={ new MySqlParameter("@APP_ID",model.APP_ID), new MySqlParameter("@PERM_NAME",model.PERM_NAME), new MySqlParameter("@PERM_VALUE",model.PERM_VALUE), new MySqlParameter("@PERM_DES",model.PERM_DES), 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_PERM 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_PERM "; 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_PERM", strwhere); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_SYS_PERM", 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_PERM", "*", null, null, null); } #endregion } }