using System; using System.Collections.Generic; using System.Linq; using System.Text; using Model; using Common; using Oracle.DataAccess.Client; using System.Data.Common; namespace Dao { /// /// 数据库事件通知表操作 /// public class GwEventLogDao : IDisposable { public void Dispose() { } private static GwEventLogDao _instance; public static GwEventLogDao Instance { get { if (_instance == null) { _instance = new GwEventLogDao(); } return _instance; } } //通道状态 public List> GetOpStatus(string permissionsSQL) { List> list = new List>(); StringBuilder builder = new StringBuilder(); builder.Append(" SELECT GEL.*, GWO.OP_NAME FROM GW_EVENT_LOG GEL "); builder.Append(" LEFT JOIN GW_OP GWO ON GWO.OP_ID = GEL.OP_ID "); builder.Append(" WHERE 1=1 "); //builder.Append(" AND EVENT_TYPE = 'OPWARING' AND ASSIGNED_TO = 'WEB' "); builder.Append(permissionsSQL); builder.Append(" ORDER BY HANDLE_FLAG, HANDLE_TIME DESC "); using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) { while (reader != null && ((DbDataReader)reader).Read()) { OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); int opId = oracleReaderWrapper.GetInt("OP_ID", 0); string opName = oracleReaderWrapper.GetString("OP_NAME", ""); int apId = oracleReaderWrapper.GetInt("AP_ID", 0); string clientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); string spId = oracleReaderWrapper.GetString("SP_ID", ""); DateTime eventTime = oracleReaderWrapper.GetDateTime("EVENT_TIME"); string eventType = oracleReaderWrapper.GetString("EVENT_TYPE", ""); string content = oracleReaderWrapper.GetString("CONTENT", ""); int handleFlag = oracleReaderWrapper.GetInt("HANDLE_FLAG", 0); DateTime handleTime = oracleReaderWrapper.GetDateTime("HANDLE_TIME"); Dictionary map = new Dictionary(); map.Add("opId", opId); map.Add("opName", opName); map.Add("apId", apId); map.Add("clientId", clientId); map.Add("spId", spId); map.Add("eventTime", eventTime); map.Add("eventType", eventType); map.Add("content", content); map.Add("handleFlag", handleFlag); map.Add("handleTime", handleTime); list.Add(map); } } return list; } } }