1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
 
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<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));
    }
  }
}