wangsheng
2021-12-01 5944b55b1486943c696a3beb004d564dceb81cf2
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
 
using Common;
using Model;
using Oracle.DataAccess.Client;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Text;
 
namespace Dao
{
  public class GwMoRouteDao : IDisposable
  {
    /// <summary>
    /// 加载上行路由表信息
    /// </summary>
    /// <param name="OpID"></param>
    /// <param name="SpID"></param>
    /// <param name="AccessCode"></param>
    /// <param name="recordcount"></param>
    /// <param name="PageIndex"></param>
    /// <param name="pageSize"></param>
    /// <returns></returns>
    public List<GwMoRoute> LoadInfoList(int OpID, string SpID, string AccessCode, out int recordcount, int PageIndex, int pageSize)
    {
      List<GwMoRoute> list = new List<GwMoRoute>();
      recordcount = 0;
      try
      {
        StringBuilder stringBuilder = new StringBuilder();
        stringBuilder.Append("from GW_MO_ROUTE_VIEW where 1=1");
        OracleParameter[] oracleParameterArray = new OracleParameter[3];
        if (OpID > 0)
        {
          oracleParameterArray[0] = new OracleParameter(":OpID", (OracleDbType) 112);
          ((DbParameter) oracleParameterArray[0]).Value = (object) OpID;
          stringBuilder.Append(" and OP_ID=:OpID");
        }
        if (SpID != null && SpID != "")
        {
          oracleParameterArray[1] = new OracleParameter(":SpID", (OracleDbType) 126);
          ((DbParameter) oracleParameterArray[1]).Value = (object) SpID;
          stringBuilder.Append(" and SP_ID=:SpID");
        }
        if (AccessCode != null && AccessCode != "")
        {
          oracleParameterArray[2] = new OracleParameter(":AccessCode", (OracleDbType) 126);
          ((DbParameter) oracleParameterArray[2]).Value = (object) AccessCode;
          stringBuilder.Append(" and INSTR(:AccessCode,ACCESS_CODE) = 1");
        }
        using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count " + stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
        {
          while (((DbDataReader) reader).Read())
          {
            OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
            recordcount = oracleReaderWrapper.GetInt("count", 0);
          }
        }
        stringBuilder.Append(" order by OP_ID ASC,ACCESS_CODE DESC,PRIORITY DESC");
        using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(PageIndex, pageSize, recordcount, "select * " + stringBuilder.ToString()).ToString(), OracleHelper.Connection, oracleParameterArray))
        {
          while (((DbDataReader) reader).Read())
          {
            GwMoRoute o = new GwMoRoute();
            if (this.ReadInfo(reader, o))
              list.Add(o);
          }
        }
      }
      catch (Exception ex)
      {
        LogHelper.Error(ex);
        return list;
      }
      return list;
    }
 
    public List<GwMoRoute> LoadInfoList()
    {
      List<GwMoRoute> list = new List<GwMoRoute>();
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_MO_ROUTE", OracleHelper.Connection))
      {
        while (((DbDataReader) reader).Read())
        {
          GwMoRoute o = new GwMoRoute();
          if (this.ReadInfo(reader, o))
            list.Add(o);
        }
      }
      return list;
    }
 
    private bool ReadInfo(OracleDataReader reader, GwMoRoute o)
    {
      OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
      o.RouteID = oracleReaderWrapper.GetInt("ROUTE_ID", 0);
      o.Priority = oracleReaderWrapper.GetInt("PRIORITY", 0);
      o.OpID = oracleReaderWrapper.GetInt("OP_ID", 0);
      o.AccessCode = oracleReaderWrapper.GetString("ACCESS_CODE", "");
      o.SpID = oracleReaderWrapper.GetString("SP_ID", "");
      o.IsManual = oracleReaderWrapper.GetInt("IS_MANUAL", 0);
      return true;
    }
 
    public bool Update(GwMoRoute o)
    {
      return OracleHelper.ExecuteSql("update GW_MO_ROUTE set PRIORITY=:PRIORITY,OP_ID=:OP_ID,ACCESS_CODE=:ACCESS_CODE,SP_ID=:SP_ID,IS_MANUAL=1 where ROUTE_ID=:ROUTE_ID", OracleHelper.Connection, new OracleParameter(":ROUTE_ID", (object) o.RouteID), new OracleParameter(":PRIORITY", (object) o.Priority), new OracleParameter(":OP_ID", (object) o.OpID), new OracleParameter(":ACCESS_CODE", (object) o.AccessCode), new OracleParameter(":SP_ID", (object) o.SpID)) > 0;
    }
 
    public bool Add(GwMoRoute o)
    {
      return OracleHelper.ExecuteSql("insert into GW_MO_ROUTE(ROUTE_ID,PRIORITY,OP_ID,ACCESS_CODE,SP_ID,IS_MANUAL) values(GW_MO_ROUTE_ID_SEQ.NEXTVAL,:PRIORITY,:OP_ID,:ACCESS_CODE,:SP_ID,1)", OracleHelper.Connection, new OracleParameter(":PRIORITY", (object) o.Priority), new OracleParameter(":OP_ID", (object) o.OpID), new OracleParameter(":ACCESS_CODE", (object) o.AccessCode), new OracleParameter(":SP_ID", (object) o.SpID)) > 0;
    }
 
    public GwMoRoute GetGwMoRoute(int rid)
    {
      GwMoRoute o = new GwMoRoute();
      if (rid == 0)
        return o;
      using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_MO_ROUTE where ROUTE_ID=:ROUTE_ID"), OracleHelper.Connection, new OracleParameter(":ROUTE_ID", (object) rid)))
      {
        if (((DbDataReader) reader).Read())
        {
          if (!this.ReadInfo(reader, o))
            throw new Exception("ReadInfo发生异常");
          return o;
        }
      }
      return o;
    }
 
    public bool Delete(int rid)
    {
      if (rid == 0)
        return false;
      return OracleHelper.ExecuteSql("delete from GW_MO_ROUTE where ROUTE_ID=:ROUTE_ID", OracleHelper.Connection, new OracleParameter(":ROUTE_ID", (object) rid)) > 0;
    }
 
    public bool LoadRefresh()
    {
      return OracleHelper.ExecuteSql("INSERT INTO GW_EVENT_LOG(EVENT_ID,ASSIGNED_TO,EVENT_TYPE,CONTENT,EVENT_TIME,HANDLE_FLAG)VALUES(GW_EVENT_LOG_SEQ.NEXTVAL,'SMEXC','MO','',SYSDATE,0)", OracleHelper.Connection) > 0;
    }
 
    public void Dispose()
    {
    }
  }
}