|
using Common;
|
using Model;
|
using Oracle.ManagedDataAccess.Client;
|
using System;
|
using System.Collections.Generic;
|
using System.Data.Common;
|
|
namespace Dao
|
{
|
public class GwOpGroupDao : IDisposable
|
{
|
public List<GwOpGroup> GetGroupList()
|
{
|
List<GwOpGroup> list = new List<GwOpGroup>();
|
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));
|
}
|
}
|
}
|