软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

376 lines
15 KiB

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 私有方法
/// <summary>
/// DataRow转model实体类对象
/// </summary>
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();
}
/// <summary>
/// DataRow转model实体类对象
/// </summary>
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;
}
/// <summary>
/// 把DataTable行转成实体类List集合
/// </summary>
private List<TBL_BASE_MENU_Model> DataTableToList(DataTable dt)
{
List<TBL_BASE_MENU_Model> modellist = new List<TBL_BASE_MENU_Model>();
if (dt.Rows.Count > 0)
{
foreach (DataRow myRow in dt.Rows)
{
modellist.Add(DataRowToModel(myRow));
}
}
return modellist;
}
#endregion
#region 基本方法
/// <summary>
/// 根据id获取baseMenu的model
/// </summary>
/// <param name="ID"></param>
/// <returns></returns>
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;
}
/// <summary>
/// 根据menuCode获得实体类对象
/// </summary>
/// <param name="Code"></param>
/// <returns></returns>
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;
}
/// <summary>
/// 添加菜单
/// </summary>
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;
}
}
/// <summary>
/// 删除菜单
/// </summary>
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;
}
}
/// <summary>
/// 修改菜单
/// </summary>
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; }
}
/// <summary>
/// 获取记录数
/// </summary>
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;
}
}
/// <summary>
/// 查询
/// </summary>
/// <param name="strwhere"></param>
/// <returns></returns>
public List<TBL_BASE_MENU_Model> QueryWhere(string strwhere)
{
return DataTableToList(Query( strwhere));
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <param name="strwhere">排序</param>
/// <returns></returns>
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 分页
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public string QueryJsonList(int PageIndex, int PageSize, string strwhere)
{
return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere));
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public string QueryJsonList(int PageIndex, int PageSize, string strwhere, string order)
{
return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere, order));
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public List<TBL_BASE_MENU_Model> QueryList(int PageIndex, int PageSize, string strwhere)
{
return DataTableToList(QueryPage(PageIndex, PageSize, strwhere));
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public List<TBL_BASE_MENU_Model> QueryList(int PageIndex, int PageSize, string strwhere, string order)
{
return DataTableToList(QueryPage(PageIndex, PageSize, strwhere, order));
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable QueryPage(int PageIndex, int PageSize, string strwhere)
{
return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_BASE_MENU", strwhere);
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <param name="strwhere">排序</param>
/// <returns></returns>
public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order)
{
return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_BASE_MENU", strwhere, order);
}
/// <summary>
/// 存储过程分页
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <param name="strwhere">排序</param>
/// <returns></returns>
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
}
}