using Common; using Model; using Oracle.DataAccess.Client; using System; using System.Collections.Generic; using System.Data.Common; namespace Dao { public class GwOpGroupDao : IDisposable { public List GetGroupList() { List list = new List(); using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_OP_GROUP ORDER BY GROUP_ID ASC", OracleHelper.Connection)) { while (reader != null && ((DbDataReader) reader).Read()) { OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); int @int = oracleReaderWrapper.GetInt("GROUP_ID", 0); string string1 = oracleReaderWrapper.GetString("GROUP_NAME", ""); string string2 = oracleReaderWrapper.GetString("GROUP_DATA", ""); DateTime dateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"); list.Add(new GwOpGroup() { GroupID = @int, GroupName = string1, GroupData = string2, CreateTime = dateTime }); } } return list; } public void Update(int groupID, string groupName, string groupData) { OracleHelper.ExecuteSql("UPDATE GW_OP_GROUP SET GROUP_NAME=:GROUP_NAME,GROUP_DATA=:GROUP_DATA WHERE GROUP_ID=:GROUP_ID", OracleHelper.Connection, new OracleParameter(":GROUP_NAME", (object) groupName), new OracleParameter(":GROUP_DATA", (object) groupData), new OracleParameter(":GROUP_ID", (object) groupID)); } //新加删除通道是否被通道组使用 public int OpItemCount(int opid) { int num = 0; using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT count(*) as Count from GW_OP_GROUP_ITEM where OP_ID=:OP_ID ", OracleHelper.Connection, new OracleParameter(":OP_ID", (object)opid))) { while (((DbDataReader)reader).Read()) num = this.ReadCount(reader); } return num; } // public void Add(string groupName, string groupData) { OracleHelper.ExecuteSql("INSERT INTO GW_OP_GROUP(GROUP_ID,GROUP_NAME,GROUP_DATA,CREATE_TIME) VALUES(GW_OP_GROUP_ID.nextval,:GROUP_NAME,:GROUP_DATA,SYSDATE)", OracleHelper.Connection, new OracleParameter(":GROUP_NAME", (object) groupName), new OracleParameter(":GROUP_DATA", (object) groupData)); } public GwOpGroup GetGroup(int groupID) { using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_OP_GROUP WHERE GROUP_ID=:GROUP_ID", OracleHelper.Connection, new OracleParameter(":GROUP_ID", (object) groupID))) { if (reader != null && ((DbDataReader) reader).Read()) { OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); string string1 = oracleReaderWrapper.GetString("GROUP_NAME", ""); string string2 = oracleReaderWrapper.GetString("GROUP_DATA", ""); DateTime dateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"); return new GwOpGroup() { GroupID = groupID, GroupName = string1, GroupData = string2, CreateTime = dateTime }; } } throw new ArgumentException("通道组数据不存在!" + (object) groupID); } public bool IsGroupNameExists(int groupID, string groupName) { return Convert.ToInt32(OracleHelper.ExecuteScalar("SELECT COUNT(*) FROM GW_OP_GROUP WHERE GROUP_NAME=:GROUP_NAME AND GROUP_ID <> :GROUP_ID", OracleHelper.Connection, new OracleParameter(":GROUP_NAME", (object) groupName), new OracleParameter(":GROUP_ID", (object) groupID))) > 0; } // 新加删除通道是否被通道组使用 private int ReadCount(OracleDataReader reader) { try { return new OracleReaderWrapper(reader).GetInt("count", 0); } catch (Exception ex) { LogHelper.Error(ex); return 0; } } // public void Dispose() { } public void Delete(int groupID) { OracleHelper.Execute("DELETE FROM GW_OP_GROUP WHERE GROUP_ID=:GROUP_ID", OracleHelper.Connection, new OracleParameter(":GROUP_ID", (object) groupID)); } } }