ulysseskao
2016-04-29 b0c18d369abd06075c83759b0e19823c2a11d716
CCSTrace/CCS/Object/Dept_Contrast.cs
@@ -1,54 +1,46 @@
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Collections;
using System.Data.OracleClient;
namespace CCSTrace.CCS.Object
{
    public class Dept_Contrast
    public class DeptContrast
    {
        private ArrayList m_TotalData = null;
        public static String DefaultDept = "市區巡修課";
        private ArrayList _mTotalData = null;
        public static string DefaultDept = "市區巡修課";
        public Dept_Contrast(OracleConnection _ConnectionTPC,OracleTransaction _Trx)
        public DeptContrast(OracleConnection connectionTpc, OracleTransaction trx)
        {
            if (m_TotalData == null)
                this.Initial(_ConnectionTPC,_Trx);
            if (_mTotalData == null)
                Initial(connectionTpc, trx);
        }
        public int getDept_Code(String m_Meter)
        public int getDept_Code(string mMeter)
        {
            //int Result = CCS.CCSMain.EOSCodelist.getKeyID(CCS.LocalVariable.Dept, DefaultDept);
            int Result = -1;
            //int Result = CCS.CCSMain.EOSCodelist.getKeyID(CCS.GlobalVariable.Dept, DefaultDept);
            int result = -1;
            try
            {
                for (int i = 0; i < m_TotalData.Count; i++)
                for (int i = 0; i < _mTotalData.Count; i++)
                {
                    ArrayList TmpData = (ArrayList)m_TotalData[i];
                    ArrayList tmpData = (ArrayList)_mTotalData[i];
                    if (TmpData[2] == null)
                    if (tmpData[2] == null)
                    {
                        Result = Convert.ToInt32(TmpData[1].ToString());
                        result = Convert.ToInt32(tmpData[1].ToString());
                        break;
                    }
                    else
                    {// 一對多(需作比對)
                        long MinMeter = Convert.ToInt64(TmpData[3].ToString());
                        long MaxMeter = Convert.ToInt64(TmpData[2].ToString());
                        long CustMeter = Convert.ToInt64(m_Meter);
                        long minMeter = Convert.ToInt64(tmpData[3].ToString());
                        long maxMeter = Convert.ToInt64(tmpData[2].ToString());
                        long custMeter = Convert.ToInt64(mMeter);
                        if ((CustMeter > MinMeter) && (CustMeter < MaxMeter))
                        if ((custMeter > minMeter) && (custMeter < maxMeter))
                        {
                            Result = Convert.ToInt32(TmpData[1].ToString());
                            result = Convert.ToInt32(tmpData[1].ToString());
                            break;
                        }
                    }
@@ -58,36 +50,36 @@
            {
                Console.WriteLine(ex.Message);
            }
            return Result;
            return result;
        }
        public int getDept_Code(int SC_Code, String Meter)
        public int getDept_Code(int scCode, string meter)
        {
            int Result = CCS.CCSMain.EOSCodelist.getKeyID(CCS.LocalVariable.Dept, DefaultDept);
            int result = GlobalVariable.EosCodelist.GetKeyId(GlobalVariable.Dept, DefaultDept);
            try
            {
                for (int i = 0; i < m_TotalData.Count; i++)
                for (int i = 0; i < _mTotalData.Count; i++)
                {
                    ArrayList TmpData = (ArrayList)m_TotalData[i];
                    int Tmp_Dept = Convert.ToInt32(TmpData[0].ToString());
                    ArrayList tmpData = (ArrayList)_mTotalData[i];
                    int tmpDept = Convert.ToInt32(tmpData[0].ToString());
                    if (Tmp_Dept == SC_Code)
                    if (tmpDept == scCode)
                    {
                        // 一對一(無最大最小電號限制)
                        if (TmpData[2] == null)
                        if (tmpData[2] == null)
                        {
                            Result = Convert.ToInt32(TmpData[1].ToString());
                            result = Convert.ToInt32(tmpData[1].ToString());
                            break;
                        }
                        else
                        {// 一對多(需作比對)
                            long MinMeter = Convert.ToInt64(TmpData[3].ToString());
                            long MaxMeter = Convert.ToInt64(TmpData[2].ToString());
                            long CustMeter = Convert.ToInt64(Meter);
                            long minMeter = Convert.ToInt64(tmpData[3].ToString());
                            long maxMeter = Convert.ToInt64(tmpData[2].ToString());
                            long custMeter = Convert.ToInt64(meter);
                            if ((CustMeter > MinMeter) && (CustMeter < MaxMeter))
                            if ((custMeter > minMeter) && (custMeter < maxMeter))
                            {
                                Result = Convert.ToInt32(TmpData[1].ToString());
                                result = Convert.ToInt32(tmpData[1].ToString());
                                break;
                            }
                        }
@@ -99,31 +91,30 @@
                Console.WriteLine(ex.Message);
            }
            return Result;
            return result;
        }
        private void Initial(OracleConnection _ConnectionTPC,OracleTransaction _Trx)
        private void Initial(OracleConnection connectionTpc, OracleTransaction trx)
        {
            String SqlStmt;
            m_TotalData = new ArrayList();
            string sqlStmt;
            _mTotalData = new ArrayList();
            SqlStmt = "SELECT SC_CODE,DEPT_CODE,MAX_METER,MIN_METER FROM CCS.DEPT_CONTRAST";
            OracleCommand Command = new OracleCommand(SqlStmt, _ConnectionTPC,_Trx);
            OracleDataReader reader = Command.ExecuteReader();
            sqlStmt = "SELECT SC_CODE,DEPT_CODE,MAX_METER,MIN_METER FROM CCS.DEPT_CONTRAST";
            OracleCommand command = new OracleCommand(sqlStmt, connectionTpc, trx);
            OracleDataReader reader = command.ExecuteReader();
            try
            {
                while (reader.Read())
                {
                    ArrayList Record = new ArrayList();
                    int SC_Code = Convert.ToInt32(reader["SC_CODE"].ToString());
                    Record.Add(SC_Code);
                    Record.Add(Convert.ToInt32(reader["Dept_Code"].ToString()));
                    Record.Add(reader["Max_Meter"].ToString());
                    Record.Add(reader["Min_Meter"].ToString());
                    ArrayList record = new ArrayList();
                    int scCode = Convert.ToInt32(reader["SC_CODE"].ToString());
                    record.Add(scCode);
                    record.Add(Convert.ToInt32(reader["Dept_Code"].ToString()));
                    record.Add(reader["Max_Meter"].ToString());
                    record.Add(reader["Min_Meter"].ToString());
                    m_TotalData.Add(Record);
                    _mTotalData.Add(record);
                }
            }
            catch (Exception e)
@@ -131,11 +122,10 @@
                Console.WriteLine(e.StackTrace);
            }
            finally
            {
            {
                reader.Close();
                Command.Dispose();
                command.Dispose();
            }
        }
    }
}
}