using System; using System.Data; using System.Text; using System.Collections.Generic; using System.Data.SqlClient; using ApServerProvider; using DbCommon; using System.Collections; using Estsh.Web.Util; namespace Estsh.Core.Repositories { /*************************************************************************** * * 能源管理 * Noah * *****************************************************************************/ public class EnergyDefineDal : BaseApp { public EnergyDefineDal(RemotingProxy remotingProxy) : base(remotingProxy) { } #region 成员方法 /// /// 根据分页条件获取分页数据列表 /// public Hashtable getEnergyListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy) { lock (_remotingProxy) { Hashtable result = new Hashtable(); List parameters = new List(); parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalCount", 100)); parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalPage", 100)); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Table", "g_energy ")); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", "device_id,device_name,target_value,seq ")); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", OrderBy)); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@GroupColumn", "")); parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@PageSize", PageSize)); parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@CurrentPage", PageIndex)); parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@Group", 0)); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Condition", strWhere)); Hashtable values = new Hashtable(2); DataTable dt = new DataTable(); dt = _remotingProxy.ExecuteSotreProcedure("Com_Pagination", parameters, ref values); ArrayList dataList = DataTypeConvert.NewObject.DataTableToArrayList(dt); result.Add("dataList", dataList); result.Add("totalCount", values["@TotalCount"].ToString()); return result; } } /// /// 根据传入条件获得菜单列表数据 /// public DataTable getEnergyDetail(string strWhere, string filedOrder) { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append(" select * from dbo.g_energy "); if (strWhere != null && !strWhere.Trim().Equals("")) { strSql.Append(" where " + strWhere); } if (filedOrder != null && !filedOrder.Trim().Equals("")) { strSql.Append(" order by " + filedOrder); } return this._remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取分页记录总数 /// public int getCountWhere(string strWhere) { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select count(*) as Total from g_energy "); if (strWhere.Trim() != "") { strSql.Append(" and " + strWhere); } int i = 0; DataTable dt = _remotingProxy.GetDataTable(strSql.ToString()); if (dt.Rows.Count > 0) { if (dt.Rows[0]["Total"].ToString() != "") { i = int.Parse(dt.Rows[0]["Total"].ToString()); } } return i; } } /// /// 插入菜单数据 /// /// /// public int saveEnergy(Hashtable htParams) { lock (_remotingProxy) { StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("INSERT INTO dbo.g_energy(device_id,device_name ,target_value ,seq )VALUES "); SqlStringBuilder.Append("(@device_id,@device_name,@target_value,@seq) "); return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams); } } /// /// 更新菜单数据 /// /// /// public int updateEnergy(Hashtable htParams) { lock (_remotingProxy) { StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("UPDATE g_energy SET "); SqlStringBuilder.Append("device_id=device_id,device_name=@device_name,target_value=@target_value,seq=@seq "); SqlStringBuilder.Append("WHERE device_id=@device_id "); return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams); } } /// /// 删除菜单数据 /// /// /// public int deleteMenu(String ruid) { lock (_remotingProxy) { String delStr = "DELETE FROM g_energy WHERE ruid = @ruid"; Hashtable htparams = new Hashtable(); htparams.Add("@ruid", ruid); return _remotingProxy.ExecuteNonQuery(delStr, htparams); } } #endregion 成员方法 } }