using System; using System.Collections.Generic; using System.Linq; using System.Text; using FangYar.Model.TBL; using System.Data; using MySql.Data.MySqlClient; namespace FangYar.OracleDAL.TBL { public class BaseMenuDAL:FangYar.IDAL.TBL.BaseMenuIDAL { #region 私有方法 /// /// DataRow转model实体类对象 /// private void DataRowToModel(TBL_BASE_MENU_Model model,DataRow dr) { if (!DBNull.Value.Equals(dr["ID"])) model.ID = dr["ID"].ToString(); if (!DBNull.Value.Equals(dr["MENU_CODE"])) model.MENU_CODE = dr["MENU_CODE"].ToString(); if(!DBNull.Value.Equals(dr["MENU_TITLE"])) model.MENU_TITLE=dr["MENU_TITLE"].ToString(); if (!DBNull.Value.Equals(dr["MENU_URL"])) model.MENU_URL = dr["MENU_URL"].ToString(); if (!DBNull.Value.Equals(dr["MENU_PARENT"])) model.MENU_PARENT = dr["MENU_PARENT"].ToString(); if (!DBNull.Value.Equals(dr["MENU_TYPE"])) model.MENU_TYPE = dr["MENU_TYPE"].ToString(); if (!DBNull.Value.Equals(dr["MENU_FLAG"])) model.MENU_FLAG = dr["MENU_FLAG"].ToString(); if (!DBNull.Value.Equals(dr["MENU_LEVEL"])) model.MENU_LEVEL = dr["MENU_LEVEL"].ToString(); if (!DBNull.Value.Equals(dr["MENU_ORDER"])) model.MENU_ORDER = dr["MENU_ORDER"].ToString(); if (!DBNull.Value.Equals(dr["MENU_ICON"])) model.MENU_ICON = dr["MENU_ICON"].ToString(); } /// /// DataRow转model实体类对象 /// private TBL_BASE_MENU_Model DataRowToModel(DataRow dr) { TBL_BASE_MENU_Model model=new TBL_BASE_MENU_Model(); if (!DBNull.Value.Equals(dr["ID"])) model.ID = dr["ID"].ToString(); if (!DBNull.Value.Equals(dr["MENU_CODE"])) model.MENU_CODE = dr["MENU_CODE"].ToString(); if (!DBNull.Value.Equals(dr["MENU_TITLE"])) model.MENU_TITLE = dr["MENU_TITLE"].ToString(); if (!DBNull.Value.Equals(dr["MENU_URL"])) model.MENU_URL = dr["MENU_URL"].ToString(); if (!DBNull.Value.Equals(dr["MENU_PARENT"])) model.MENU_PARENT = dr["MENU_PARENT"].ToString(); if (!DBNull.Value.Equals(dr["MENU_TYPE"])) model.MENU_TYPE = dr["MENU_TYPE"].ToString(); if (!DBNull.Value.Equals(dr["MENU_FLAG"])) model.MENU_FLAG = dr["MENU_FLAG"].ToString(); if (!DBNull.Value.Equals(dr["MENU_LEVEL"])) model.MENU_LEVEL = dr["MENU_LEVEL"].ToString(); if (!DBNull.Value.Equals(dr["MENU_ORDER"])) model.MENU_ORDER = dr["MENU_ORDER"].ToString(); if (!DBNull.Value.Equals(dr["MENU_ICON"])) model.MENU_ICON = dr["MENU_ICON"].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获取baseMenu的model /// /// /// public TBL_BASE_MENU_Model GetModelByID(string ID) { TBL_BASE_MENU_Model model = null; string sql = "select * from TBL_BASE_MENU where ID =@ID"; MySqlParameter[] paras ={ new MySqlParameter("@ID",MySqlDbType.VarChar,50)}; paras[0].Value = ID; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new TBL_BASE_MENU_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else return null; } /// /// 根据menuCode获得实体类对象 /// /// /// public TBL_BASE_MENU_Model GetModelByMenuCode(string Code) { TBL_BASE_MENU_Model model = null; string sql = "select * from TBL_BASE_MENU where MENU_CODE =@MENU_CODE"; MySqlParameter[] paras = { new MySqlParameter("@MENU_CODE", MySqlDbType.VarChar, 6) }; paras[0].Value = Code; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new TBL_BASE_MENU_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else return null; } /// /// 添加菜单 /// public bool Add(TBL_BASE_MENU_Model BaseMenu) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into TBL_BASE_MENU(MENU_CODE,MENU_TITLE,MENU_URL,MENU_PARENT,MENU_TYPE,MENU_FLAG,MENU_LEVEL,MENU_ORDER,MENU_ICON)"); strSql.Append("values"); strSql.Append("(@MENU_CODE,@MENU_TITLE,@MENU_URL,@MENU_PARENT,@MENU_TYPE,@MENU_FLAG,@MENU_LEVEL,@MENU_ORDER,@MENU_ICON)"); MySqlParameter[] paras ={ new MySqlParameter("@MENU_CODE",MySqlDbType.VarChar,6), new MySqlParameter("@MENU_TITLE",MySqlDbType.VarChar,50), new MySqlParameter("@MENU_URL",MySqlDbType.VarChar,100), new MySqlParameter("@MENU_PARENT",MySqlDbType.VarChar,6), new MySqlParameter("@MENU_TYPE",MySqlDbType.VarChar,1), new MySqlParameter("@MENU_FLAG",MySqlDbType.VarChar,1), new MySqlParameter("@MENU_LEVEL",MySqlDbType.VarChar,1), new MySqlParameter("@MENU_ORDER",MySqlDbType.VarChar,1), new MySqlParameter("@MENU_ICON",MySqlDbType.VarChar,50) }; paras[0].Value = BaseMenu.MENU_CODE; paras[1].Value = BaseMenu.MENU_TITLE; paras[2].Value = BaseMenu.MENU_URL; paras[3].Value = BaseMenu.MENU_PARENT; paras[4].Value = BaseMenu.MENU_TYPE; paras[5].Value = BaseMenu.MENU_FLAG; paras[6].Value = BaseMenu.MENU_LEVEL; paras[7].Value = BaseMenu.MENU_ORDER; paras[8].Value = BaseMenu.MENU_ICON; 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_BASE_MENU where ID in ('" + IDList + "')"; try { FangYar.Common.MySqlHelper.ExecuteSql(sql); return true; } catch { return false; } } /// /// 修改菜单 /// public bool Edit(TBL_BASE_MENU_Model BaseMenu) { StringBuilder strsql = new StringBuilder(); strsql.Append("update TBL_BASE_MENU set "); strsql.Append("MENU_CODE=@MENU_CODE,"); strsql.Append("MENU_TITLE=@MENU_TITLE,"); strsql.Append("MENU_URL=@MENU_URL,"); strsql.Append("MENU_PARENT=@MENU_PARENT,"); strsql.Append("MENU_TYPE=@MENU_TYPE,"); strsql.Append("MENU_FLAG=@MENU_FLAG,"); strsql.Append("MENU_LEVEL=@MENU_LEVEL,"); strsql.Append("MENU_ORDER=@MENU_ORDER, "); strsql.Append("MENU_ICON=@MENU_ICON "); strsql.Append(" where ID=@ID"); MySqlParameter[] paras ={ new MySqlParameter("@MENU_CODE",BaseMenu.MENU_CODE), new MySqlParameter("@MENU_TITLE",BaseMenu.MENU_TITLE), new MySqlParameter("@MENU_URL",BaseMenu.MENU_URL), new MySqlParameter("@MENU_PARENT",BaseMenu.MENU_PARENT), new MySqlParameter("@MENU_TYPE",BaseMenu.MENU_TYPE), new MySqlParameter("@MENU_FLAG",BaseMenu.MENU_FLAG), new MySqlParameter("@MENU_LEVEL",BaseMenu.MENU_LEVEL), new MySqlParameter("@MENU_ORDER", BaseMenu.MENU_ORDER), new MySqlParameter("@MENU_ICON", BaseMenu.MENU_ICON), new MySqlParameter("@ID",BaseMenu.ID) }; paras[0].Value = BaseMenu.MENU_CODE; paras[1].Value = BaseMenu.MENU_TITLE; paras[2].Value = BaseMenu.MENU_URL; paras[3].Value = BaseMenu.MENU_PARENT; paras[4].Value = BaseMenu.MENU_TYPE; paras[5].Value = BaseMenu.MENU_FLAG; paras[6].Value = BaseMenu.MENU_LEVEL; paras[7].Value = BaseMenu.MENU_ORDER; paras[8].Value = BaseMenu.MENU_ICON; paras[9].Value = BaseMenu.ID; int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras); if (i > 0) { return true; } else { return false; } } /// /// 获取记录数 /// public int Count(string strwhere) { string sql = "select count(1) from TBL_BASE_MENU "; if (strwhere != null && strwhere != "") { sql += " where " + strwhere; } try { return FangYar.Common.MySqlHelper.GetCount(sql); } catch { return 0; } } /// /// 查询 /// /// /// public List QueryWhere(string strwhere) { return DataTableToList(Query( strwhere)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public DataTable Query( string strwhere) { string sql = "select * from TBL_BASE_MENU "; if (strwhere != null) { sql += " where " + strwhere; } return FangYar.Common.MySqlHelper.QueryTable(sql); } #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_BASE_MENU", strwhere); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_BASE_MENU", 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_BASE_MENU", "*", null, null, null); } #endregion } }