From 410dc2d04dbecf019129cd8cd65a3be2c62b4d0c Mon Sep 17 00:00:00 2001 From: ulysseskao <ulysseskao@gmail.com> Date: Tue, 03 May 2016 18:36:41 +0800 Subject: [PATCH] refator code --- CCSTrace/CCS/FinishEvent.cs | 237 +++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 133 insertions(+), 104 deletions(-) diff --git a/CCSTrace/CCS/FinishEvent.cs b/CCSTrace/CCS/FinishEvent.cs index f90b05e..011554a 100644 --- a/CCSTrace/CCS/FinishEvent.cs +++ b/CCSTrace/CCS/FinishEvent.cs @@ -1,5 +1,4 @@ using System; - using System.Data.OracleClient; using CCSTrace.CCS.Domain; using NLog; @@ -12,7 +11,7 @@ private bool _upLevel; private int _originCaseStatus = 0; - private Object.EventRecord _mEventRec = null; + private Object.EOSEventRecord _eosEventRecord = null; private OracleConnection _connectionTpc; private OracleTransaction _transaction; @@ -20,24 +19,26 @@ { } - public bool Finish(int mKind, Object.EventRecord mRecord, OracleConnection conn, OracleTransaction trx) + public bool Finish(int mKind, Object.EOSEventRecord eosEventRecord, OracleConnection conn, OracleTransaction trx) { - _mEventRec = mRecord; + _eosEventRecord = eosEventRecord; _connectionTpc = conn; _transaction = trx; Logger.Info("進行OMS資料更新程序..."); - if (mRecord.ParentId== 0) - { // Original Case - if (!(ProcessSingalCase(mRecord))) + if (eosEventRecord.ParentId == 0) + { + // Original Case + if (!(ProcessSingalCase(eosEventRecord))) { return false; } Logger.Info("更新eos.events成功!"); } else - { // Child Case - if (!(ProcessMergeCase(mRecord))) + { + // Child Case + if (!(ProcessMergeCase(eosEventRecord))) { return false; } @@ -45,7 +46,7 @@ } // inert into eos.eventrecord && eos.eventrecord_ex - OracleCommand command = new OracleCommand(mRecord.GetSqlStmt(), _connectionTpc, _transaction); + OracleCommand command = new OracleCommand(eosEventRecord.GetInsertSqlStmt(), _connectionTpc, _transaction); OracleCommand command1 = null; try @@ -57,7 +58,7 @@ return false; } - command.CommandText = mRecord.LocateEquipment.GetSqlStmt(); + command.CommandText = eosEventRecord.LocateEquipment.GetInsertSqlStmt(); if (command.ExecuteNonQuery() <= 0) { Logger.Error("儲存資料時發生錯誤: 無法更新eos.eventrecord_ex"); @@ -69,9 +70,9 @@ if ((mKind == GlobalVariable.Success) || (mKind == GlobalVariable.CaseTypeChanged)) { /* 當饋線全停時不需注意影響虛擬用戶,影響用戶資料會由實際切開關產生 */ - if (mRecord.Fsc!= GlobalVariable.Breaker) + if (eosEventRecord.Fsc != GlobalVariable.Breaker) { - if (!SetVisualCustomer(mRecord)) + if (!SetVisualCustomer(eosEventRecord)) { Logger.Error("新增影響用戶資料錯誤."); return false; @@ -81,14 +82,14 @@ _upLevel = false; /* 判斷交辦案件是否升級為母案件 */ - if (!(UpdateImportCase(mRecord))) + if (!(UpdateImportCase(eosEventRecord))) { Logger.Error("處理案件等級變更時發生錯誤."); return false; } Logger.Info("處理案件等級變更成功!"); - if (!(UpdateRecuseOrder(mRecord))) + if (!(UpdateRecuseOrder(eosEventRecord))) { Logger.Error("新增搶修順序資料時發生錯誤."); return false; @@ -97,7 +98,7 @@ if (mKind == GlobalVariable.CaseTypeChanged) { - if (!DeleteOldCase(mRecord)) + if (!DeleteOldCase(eosEventRecord)) { Logger.Error("案件轉換發生錯誤"); return false; @@ -105,7 +106,7 @@ Logger.Info("案件轉換成功!"); } - if (!SaveCustomerTel(mRecord)) + if (!SaveCustomerTel(eosEventRecord)) { Logger.Error("無法將用戶電話回存回資料庫."); return false; @@ -114,9 +115,9 @@ } else if (mKind == GlobalVariable.NoMeter) { - var sqlStmt = "INSERT INTO EOS.RESCUE_ORDER SELECT " + mRecord.CaseId+ ",999,COUNT(*) + 1,''," - + mRecord.LocateEquipment.GetDsufid() + " FROM EOS.RESCUE_ORDER WHERE DSUFID = " - + mRecord.LocateEquipment.GetDsufid(); + var sqlStmt = "INSERT INTO EOS.RESCUE_ORDER SELECT " + eosEventRecord.CaseId + ",999,COUNT(*) + 1,''," + + eosEventRecord.LocateEquipment.DsUfid + " FROM EOS.RESCUE_ORDER WHERE DSUFID = " + + eosEventRecord.LocateEquipment.DsUfid; command1 = new OracleCommand(sqlStmt, _connectionTpc, _transaction); if (command1.ExecuteNonQuery() <= 0) @@ -129,9 +130,9 @@ Logger.Info("新增搶修順序成功!"); } - if (mRecord.ParentId== 0) + if (eosEventRecord.ParentId == 0) { - if (!InsertIntoSri(mRecord)) + if (!InsertIntoSri(eosEventRecord)) { Logger.Error("新增資料庫(OCSDB.SRI)錯誤."); return false; @@ -153,11 +154,11 @@ return true; } - private bool ProcessSingalCase(Object.EventRecord mRecord) + private bool ProcessSingalCase(Object.EOSEventRecord eosEventRecord) { var result = false; - var sqlStmt = "INSERT INTO EOS.EVENTS VALUES(" + mRecord.CaseId+ "," + CCSCaseState.WaitForDespatch + ",1," - + GlobalVariable.OriginalCase + ",0)"; + var sqlStmt = "INSERT INTO EOS.EVENTS VALUES(" + eosEventRecord.CaseId + "," + CCSCaseState.WaitForDespatch + ",1," + + GlobalVariable.OriginalCase + ",0)"; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); @@ -179,11 +180,11 @@ return result; } - private bool ProcessMergeCase(Object.EventRecord mRecord) + private bool ProcessMergeCase(Object.EOSEventRecord eosEventRecord) { // insert eos.events - var sqlStmt = "INSERT INTO EOS.EVENTS VALUES(" + mRecord.CaseId+ "," + CCSCaseState.WaitForDespatch + ",1," - + GlobalVariable.ChildCase + ",0)"; + var sqlStmt = "INSERT INTO EOS.EVENTS VALUES(" + eosEventRecord.CaseId + "," + CCSCaseState.WaitForDespatch + ",1," + + GlobalVariable.ChildCase + ",0)"; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); @@ -197,7 +198,8 @@ } // insert into eos.mergecase - sqlStmt = "INSERT INTO EOS.MERGECASE VALUES(" + mRecord.CaseId+ ",'" + mRecord.AcceptNum+ "'," + mRecord.ParentId+ ")"; + sqlStmt = "INSERT INTO EOS.MERGECASE VALUES(" + eosEventRecord.CaseId + ",'" + eosEventRecord.AcceptNum + "'," + + eosEventRecord.ParentId + ")"; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -208,8 +210,9 @@ } // update parent case data(EOS.EVENTS) - sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.ParentCase + ",MERGECASECOUNT = MERGECASECOUNT + 1 " + "WHERE CASEID = " - + mRecord.ParentId; + sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.ParentCase + + ",MERGECASECOUNT = MERGECASECOUNT + 1 " + "WHERE CASEID = " + + eosEventRecord.ParentId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -220,8 +223,10 @@ } // update parent case data(EOS.EVENTRECORD) - sqlStmt = "UPDATE EOS.EVENTRECORD SET FSC = " + mRecord.Fsc+ ",UFID = " + mRecord.Ufid + " WHERE CASEID in (SELECT CASEID FROM EOS.MERGECASE WHERE PARENTID = " + mRecord.ParentId+ ") OR CASEID = " - + mRecord.ParentId; + sqlStmt = "UPDATE EOS.EVENTRECORD SET FSC = " + eosEventRecord.Fsc + ",UFID = " + eosEventRecord.Ufid + + " WHERE CASEID in (SELECT CASEID FROM EOS.MERGECASE WHERE PARENTID = " + eosEventRecord.ParentId + + ") OR CASEID = " + + eosEventRecord.ParentId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -242,12 +247,12 @@ return true; } - private bool SetVisualCustomer(Object.EventRecord mRecord) + private bool SetVisualCustomer(Object.EOSEventRecord eosEventRecord) { - string sqlStmt = ""; - string customerKind = "C"; // 高壓用戶or一般用戶 + var sqlStmt = ""; + var customerKind = "C"; // 高壓用戶or一般用戶 - sqlStmt = "SELECT COUNT(*) as COUNT FROM BASEDB.HICUSTOMER WHERE METR_NUMB = '" + mRecord.Meter+ "'"; + sqlStmt = "SELECT COUNT(*) as COUNT FROM BASEDB.HICUSTOMER WHERE METR_NUMB = '" + eosEventRecord.Meter + "'"; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); OracleDataReader reader = command.ExecuteReader(); @@ -272,11 +277,13 @@ command.Dispose(); } - if (mRecord.ParentId== 0) + if (eosEventRecord.ParentId == 0) { - sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + mRecord.CaseId+ ",A.M_NAME," - + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TRAN_CORD,M.CUST_TYPE,'" + customerKind + "' " - + "FROM BASEDB.METER M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) AND M.METR_NUMB = '" + mRecord.Meter+ "'"; + sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + eosEventRecord.CaseId + ",A.M_NAME," + + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TRAN_CORD,M.CUST_TYPE,'" + customerKind + "' " + + + "FROM BASEDB.METER M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) AND M.METR_NUMB = '" + + eosEventRecord.Meter + "'"; OracleCommand command1 = new OracleCommand(sqlStmt, _connectionTpc, _transaction); if (command1.ExecuteNonQuery() >= 0) @@ -289,18 +296,19 @@ } else { - return InsertMutilCustomer(customerKind, mRecord); + return InsertMutilCustomer(customerKind, eosEventRecord); } } - private bool InsertMutilCustomer(string customerKind, Object.EventRecord mRecord) + private bool InsertMutilCustomer(string customerKind, Object.EOSEventRecord eosEventRecord) { string sqlStmt = ""; bool updateCustomer = false; string mTpclidGroupId = ""; string mCustomerKind = "C"; - sqlStmt = "SELECT COUNT(*) as COUNT FROM EOS.TMPAFFECTCUSTMS WHERE CASEID = " + mRecord.ParentId + " OR CASEID IN (SELECT CASEID FROM EOS.MERGECASE WHERE PARENTID = " + mRecord.ParentId+ ")"; + sqlStmt = "SELECT COUNT(*) as COUNT FROM EOS.TMPAFFECTCUSTMS WHERE CASEID = " + eosEventRecord.ParentId + + " OR CASEID IN (SELECT CASEID FROM EOS.MERGECASE WHERE PARENTID = " + eosEventRecord.ParentId + ")"; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); OracleDataReader reader = command.ExecuteReader(); @@ -331,7 +339,8 @@ if (updateCustomer) { /* 找出原始案件的影響用戶資料 */ - sqlStmt = "SELECT TPCLIDGROUPID,CUSTOMERKIND FROM EOS.TMPAFFECTCUSTMS WHERE CASEID = " + mRecord.ParentId; + sqlStmt = "SELECT TPCLIDGROUPID,CUSTOMERKIND FROM EOS.TMPAFFECTCUSTMS WHERE CASEID = " + + eosEventRecord.ParentId; try { @@ -349,7 +358,7 @@ if (mCustomerKind.Equals("C")) { /* 刪除原始案件的既有用戶資料 */ - sqlStmt = "DELETE EOS.TMPAFFECTCUSTMS WHERE CASEID = " + mRecord.ParentId; + sqlStmt = "DELETE EOS.TMPAFFECTCUSTMS WHERE CASEID = " + eosEventRecord.ParentId; command1.CommandText = sqlStmt; if (command1.ExecuteNonQuery() < 0) @@ -360,10 +369,13 @@ } /* 將原始案件的影響用戶數改為變壓器的全部用戶 */ - sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + mRecord.ParentId+ ",A.M_NAME," - + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TPCLIDGROUPID,M.CUST_TYPE,'" + mCustomerKind + "' " - + "FROM (SELECT TELE_NUMB,METR_NUMB,TRAN_CORD as TPCLIDGROUPID,CUST_TYPE FROM BASEDB.METER " + "WHERE TRAN_CORD = '" - + mTpclidGroupId + "') M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) "; + sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + eosEventRecord.ParentId + ",A.M_NAME," + + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TPCLIDGROUPID,M.CUST_TYPE,'" + mCustomerKind + + "' " + + + "FROM (SELECT TELE_NUMB,METR_NUMB,TRAN_CORD as TPCLIDGROUPID,CUST_TYPE FROM BASEDB.METER " + + "WHERE TRAN_CORD = '" + + mTpclidGroupId + "') M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) "; command1.CommandText = sqlStmt; if (command1.ExecuteNonQuery() <= 0) @@ -384,10 +396,11 @@ } /* 新受理案件的影響用戶資料 */ - sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + mRecord.CaseId+ ",A.M_NAME," - + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TPCLIDGROUPID,M.CUST_TYPE,'" + customerKind + "' " - + "FROM (SELECT TELE_NUMB,METR_NUMB,TRAN_CORD as TPCLIDGROUPID,CUST_TYPE FROM BASEDB.METER " - + "WHERE TRAN_CORD = (SELECT TRAN_CORD FROM BASEDB.METER WHERE METR_NUMB = '" + mRecord.Meter + "')) M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) "; + sqlStmt = "INSERT INTO EOS.TMPAFFECTCUSTMS SELECT " + eosEventRecord.CaseId + ",A.M_NAME," + + "M.TELE_NUMB,M.METR_NUMB,A.M_ADDR,M.TPCLIDGROUPID,M.CUST_TYPE,'" + customerKind + "' " + + "FROM (SELECT TELE_NUMB,METR_NUMB,TRAN_CORD as TPCLIDGROUPID,CUST_TYPE FROM BASEDB.METER " + + "WHERE TRAN_CORD = (SELECT TRAN_CORD FROM BASEDB.METER WHERE METR_NUMB = '" + eosEventRecord.Meter + + "')) M,BASEDB.MSTADDR A WHERE M.METR_NUMB = A.M_CUST_NO(+) "; OracleCommand command2 = new OracleCommand(sqlStmt, _connectionTpc, _transaction); if (command2.ExecuteNonQuery() < 0) @@ -400,22 +413,22 @@ return true; } - private bool UpdateImportCase(Object.EventRecord mRecord) + private bool UpdateImportCase(Object.EOSEventRecord eosEventRecord) { /* 該案件不為交辦案件 */ - if (mRecord.ImportCase!= GlobalVariable.IsImportCase) + if (eosEventRecord.ImportCase != GlobalVariable.IsImportCase) { return true; } /* 該交辦案件為原始案件 */ - if (mRecord.ParentId== 0) + if (eosEventRecord.ParentId == 0) { return true; } /* 若母案件已為交辦案件,則不需再作任何更動 */ - var sqlStmt = "SELECT IMPORTCASE FROM EOS.EVENTRECORD WHERE CASEID = " + mRecord.ParentId; + var sqlStmt = "SELECT IMPORTCASE FROM EOS.EVENTRECORD WHERE CASEID = " + eosEventRecord.ParentId; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); OracleDataReader reader = command.ExecuteReader(); @@ -443,7 +456,8 @@ /* 將交辦案件改為母案件 */ sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.ParentCase + ",MERGECASECOUNT = " - + "(SELECT MERGECASECOUNT FROM EOS.EVENTS WHERE CASEID = " + mRecord.ParentId+ ") WHERE CASEID = " + mRecord.CaseId; + + "(SELECT MERGECASECOUNT FROM EOS.EVENTS WHERE CASEID = " + eosEventRecord.ParentId + + ") WHERE CASEID = " + eosEventRecord.CaseId; OracleCommand command1 = new OracleCommand(sqlStmt, _connectionTpc, _transaction); if (command1.ExecuteNonQuery() <= 0) @@ -454,7 +468,8 @@ } /* 將母案件改為子案件 */ - sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.ChildCase + ",MERGECASECOUNT = 0 WHERE CASEID = " + mRecord.ParentId; + sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.ChildCase + + ",MERGECASECOUNT = 0 WHERE CASEID = " + eosEventRecord.ParentId; command1.CommandText = sqlStmt; if (command1.ExecuteNonQuery() <= 0) @@ -465,7 +480,7 @@ } // 將EOS.MERGECASE內的資料修正 1.將原先該母案件下的子案件都改掛在交辦案件下 2.將已INSERT入EOS.MERGECASE內的交辦案件資料改為原先母案件的資料(CaseID,AcceptNum) - sqlStmt = "UPDATE EOS.MERGECASE SET PARENTID = " + mRecord.CaseId+ " WHERE PARENTID = " + mRecord.ParentId; + sqlStmt = "UPDATE EOS.MERGECASE SET PARENTID = " + eosEventRecord.CaseId + " WHERE PARENTID = " + eosEventRecord.ParentId; command1.CommandText = sqlStmt; if (command1.ExecuteNonQuery() <= 0) @@ -476,7 +491,7 @@ } sqlStmt = "UPDATE EOS.MERGECASE SET (CASEID,ACCEPTNUM) = (SELECT CASEID,ACCEPTNUM FROM EOS.EVENTRECORD WHERE CASEID = " - + mRecord.ParentId+ ") WHERE CASEID = " + mRecord.CaseId; + + eosEventRecord.ParentId + ") WHERE CASEID = " + eosEventRecord.CaseId; command1.CommandText = sqlStmt; if (command1.ExecuteNonQuery() <= 0) @@ -487,7 +502,7 @@ } command1.Dispose(); - return UpdateOtherTable(mRecord.ParentId, mRecord.CaseId, mRecord.AcceptNum); + return UpdateOtherTable(eosEventRecord.ParentId, eosEventRecord.CaseId, eosEventRecord.AcceptNum); } private bool UpdateOtherTable(int oldCaseId, int newCaseId, string newAcceptNum) @@ -525,7 +540,8 @@ return false; } - sqlStmt = "update eos.events set casestatus=" + CCSCaseState.WaitForSponsor + " where caseid=" + newCaseId; + sqlStmt = "update eos.events set casestatus=" + CCSCaseState.WaitForSponsor + " where caseid=" + + newCaseId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) { @@ -534,11 +550,12 @@ return false; } - _mEventRec.IsDespatched = true; + _eosEventRecord.IsDespatched = true; break; } - sqlStmt = "UPDATE EOS.EVENTS SET CASESTATUS = " + CCSCaseState.WaitForDespatch + " WHERE CASEID = " + oldCaseId; + sqlStmt = "UPDATE EOS.EVENTS SET CASESTATUS = " + CCSCaseState.WaitForDespatch + " WHERE CASEID = " + + oldCaseId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -548,8 +565,9 @@ return false; } - sqlStmt = "UPDATE OCSDB.SRI SET SCENENAME = '" + newAcceptNum + "' WHERE SCENENAME = (SELECT ACCEPTNUM FROM " - + "EOS.EVENTRECORD WHERE CASEID = " + oldCaseId + ")"; + sqlStmt = "UPDATE OCSDB.SRI SET SCENENAME = '" + newAcceptNum + + "' WHERE SCENENAME = (SELECT ACCEPTNUM FROM " + + "EOS.EVENTRECORD WHERE CASEID = " + oldCaseId + ")"; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) @@ -611,8 +629,9 @@ // return false; // } - sqlStmt = "UPDATE OCSDB.LOCKFEATURE SET DESCRIPTION = '" + newAcceptNum + "' WHERE DESCRIPTION = (SELECT ACCEPTNUM FROM " - + "EOS.EVENTRECORD WHERE CASEID = " + oldCaseId + ")"; + sqlStmt = "UPDATE OCSDB.LOCKFEATURE SET DESCRIPTION = '" + newAcceptNum + + "' WHERE DESCRIPTION = (SELECT ACCEPTNUM FROM " + + "EOS.EVENTRECORD WHERE CASEID = " + oldCaseId + ")"; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) @@ -634,14 +653,14 @@ return true; } - private bool UpdateRecuseOrder(Object.EventRecord mRecord) + private bool UpdateRecuseOrder(Object.EOSEventRecord eosEventRecord) { int rank = 999; int priority = 1; OracleCommand command = null; /* 單純的子案件或不需升級的交辦案件,不需要更新EOS.RESCUE_ORDER */ - if ((mRecord.ParentId!= 0) && !(_upLevel)) + if ((eosEventRecord.ParentId != 0) && !(_upLevel)) { return true; } @@ -658,7 +677,9 @@ if (_upLevel) { /* 將原先母案件的編號改為新的母案件編號 */ - sqlStmt = "UPDATE EOS.RESCUE_ORDER SET CASEID = " + mRecord.CaseId+ " WHERE CASEID = " + mRecord.ParentId + " AND DSUFID = " + mRecord.LocateEquipment.GetDsufid(); + sqlStmt = "UPDATE EOS.RESCUE_ORDER SET CASEID = " + eosEventRecord.CaseId + " WHERE CASEID = " + + eosEventRecord.ParentId + + " AND DSUFID = " + eosEventRecord.LocateEquipment.DsUfid; command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); if (command.ExecuteNonQuery() <= 0) @@ -671,7 +692,7 @@ else { /* 找出該饋線的等級 */ - sqlStmt = "SELECT RANK FROM EOS.IMP_FEEDER WHERE FEEDERID = " + mRecord.FdrId; + sqlStmt = "SELECT RANK FROM EOS.IMP_FEEDER WHERE FEEDERID = " + eosEventRecord.FdrId; command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); OracleDataReader reader = command.ExecuteReader(); @@ -683,8 +704,9 @@ reader.Close(); /* 找出同等級饋線中的最大搶修順序號碼 */ - sqlStmt = "SELECT MAX(PRIORITY) as PRIORITY FROM EOS.RESCUE_ORDER WHERE RANK = " + rank + " AND DSUFID = " - + mRecord.LocateEquipment.GetDsufid(); + sqlStmt = "SELECT MAX(PRIORITY) as PRIORITY FROM EOS.RESCUE_ORDER WHERE RANK = " + rank + + " AND DSUFID = " + + eosEventRecord.LocateEquipment.DsUfid; command.CommandText = sqlStmt; reader = command.ExecuteReader(); @@ -699,8 +721,8 @@ if (priority == 0 && rank > 0) { sqlStmt = "SELECT MAX(PRIORITY) as PRIORITY FROM EOS.RESCUE_ORDER WHERE RANK = " - + "(SELECT MAX(RANK) FROM EOS.RESCUE_ORDER WHERE RANK < " + rank + " AND DSUFID = " - + mRecord.LocateEquipment.GetDsufid() + ")"; + + "(SELECT MAX(RANK) FROM EOS.RESCUE_ORDER WHERE RANK < " + rank + " AND DSUFID = " + + eosEventRecord.LocateEquipment.DsUfid + ")"; command.CommandText = sqlStmt; reader = command.ExecuteReader(); @@ -715,13 +737,15 @@ /* 如果還是沒找到,就設Priority = 0 (只有當新增案件的Rank為最小時或第一筆案件才可能發生) */ if (priority == 0) - { // 若不寫清楚會看不懂 + { + // 若不寫清楚會看不懂 priority = 0; /* 將搶修順序號碼大於等於找出來號碼的都加1 */ } - sqlStmt = "UPDATE EOS.RESCUE_ORDER SET PRIORITY = PRIORITY + 1 WHERE PRIORITY > " + priority + " AND DSUFID = " - + mRecord.LocateEquipment.GetDsufid(); + sqlStmt = "UPDATE EOS.RESCUE_ORDER SET PRIORITY = PRIORITY + 1 WHERE PRIORITY > " + priority + + " AND DSUFID = " + + eosEventRecord.LocateEquipment.DsUfid; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) @@ -732,8 +756,9 @@ } /* 將本身資料存入資料庫內 */ - sqlStmt = "INSERT INTO EOS.RESCUE_ORDER (CASEID,RANK,PRIORITY,DSUFID) VALUES (" + mRecord.CaseId+ "," + rank + "," - + (priority + 1) + "," + mRecord.LocateEquipment.GetDsufid() + ")"; + sqlStmt = "INSERT INTO EOS.RESCUE_ORDER (CASEID,RANK,PRIORITY,DSUFID) VALUES (" + eosEventRecord.CaseId + + "," + rank + "," + + (priority + 1) + "," + eosEventRecord.LocateEquipment.DsUfid + ")"; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -759,7 +784,7 @@ } // 當原先同一用戶在事故受理後又報案,不過從一般案件轉為交辦案件所需作的轉換工作 - private bool DeleteOldCase(Object.EventRecord mRecord) + private bool DeleteOldCase(Object.EOSEventRecord eosEventRecord) { string sqlStmt; int caseId = 0; // 原先的事故號碼 @@ -769,8 +794,9 @@ OracleCommand command = null; sqlStmt = "SELECT R.CASEID as CASEID,E.CASETYPE as CASETYPE,E.CASESTATUS as CASESTATUS,E.COUNT as COUNT FROM " - + "EOS.EVENTRECORD R,EOS.EVENTS E WHERE R.CASEID = E.CASEID AND R.CUSTOMERMETER = '" + mRecord.Meter+ "' AND R.CASEID <> " - + mRecord.CaseId+ " AND E.CASESTATUS <= " + CCSCaseState.WaitForSponsor; + + "EOS.EVENTRECORD R,EOS.EVENTS E WHERE R.CASEID = E.CASEID AND R.CUSTOMERMETER = '" + + eosEventRecord.Meter + "' AND R.CASEID <> " + + eosEventRecord.CaseId + " AND E.CASESTATUS <= " + CCSCaseState.WaitForSponsor; try { @@ -833,9 +859,10 @@ return false; } - if (mRecord.ParentId== caseId) - { // 原本舊案件為母案件 - sqlStmt = "SELECT COUNT(*) as COUNT FROM EOS.MERGECASE WHERE PARENTID = " + mRecord.CaseId; + if (eosEventRecord.ParentId == caseId) + { + // 原本舊案件為母案件 + sqlStmt = "SELECT COUNT(*) as COUNT FROM EOS.MERGECASE WHERE PARENTID = " + eosEventRecord.CaseId; command.CommandText = sqlStmt; reader = command.ExecuteReader(); @@ -851,8 +878,9 @@ return false; case 1: // 子案件為之前受理的同一事故案件 - sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.OriginalCase + ",COUNT = " + (count + 1) - + ",MERGECASECOUNT = 0 WHERE CASEID = " + mRecord.CaseId; + sqlStmt = "UPDATE EOS.EVENTS SET CASETYPE = " + GlobalVariable.OriginalCase + + ",COUNT = " + (count + 1) + + ",MERGECASECOUNT = 0 WHERE CASEID = " + eosEventRecord.CaseId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() <= 0) @@ -863,8 +891,9 @@ return false; } - sqlStmt = "DELETE EOS.TMPAFFECTCUSTMS WHERE CUSTOMERMETER <> '" + mRecord.Meter+ "' AND CASEID = " - + mRecord.CaseId; + sqlStmt = "DELETE EOS.TMPAFFECTCUSTMS WHERE CUSTOMERMETER <> '" + eosEventRecord.Meter + + "' AND CASEID = " + + eosEventRecord.CaseId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) @@ -877,8 +906,9 @@ break; default: - sqlStmt = "UPDATE EOS.EVENTS SET MERGECASECOUNT = MERGECASECOUNT - 1,COUNT = " + (count + 1) + " WHERE CASEID = " - + mRecord.CaseId; + sqlStmt = "UPDATE EOS.EVENTS SET MERGECASECOUNT = MERGECASECOUNT - 1,COUNT = " + + (count + 1) + " WHERE CASEID = " + + eosEventRecord.CaseId; command.CommandText = sqlStmt; if (command.ExecuteNonQuery() < 0) @@ -925,13 +955,13 @@ return true; } - private bool InsertIntoSri(Object.EventRecord mRecord) + private bool InsertIntoSri(Object.EOSEventRecord eosEventRecord) { int count = 0; OracleCommand command = null; OracleDataReader reader = null; - var sqlStmt = "SELECT COUNT(*) as COUNT FROM OCSDB.SRI WHERE SCENENAME = '" + mRecord.AcceptNum+ "'"; + var sqlStmt = "SELECT COUNT(*) AS COUNT FROM OCSDB.SRI WHERE SCENENAME = '" + eosEventRecord.AcceptNum + "'"; try { @@ -957,7 +987,7 @@ return true; } - sqlStmt = "INSERT INTO OCSDB.SRI VALUES('" + mRecord.AcceptNum+ "',2,-1)"; + sqlStmt = "INSERT INTO OCSDB.SRI VALUES('" + eosEventRecord.AcceptNum + "',2,-1)"; try { @@ -978,29 +1008,28 @@ return true; } - private bool SaveCustomerTel(Object.EventRecord mRecord) + private bool SaveCustomerTel(Object.EOSEventRecord eosEventRecord) { - string sqlStmt; - // 無電號資料 /* * if (m_Record.getisReCall() == CCS.GlobalVariable.NotReCall) { return true; } */ // 沒有回覆電話可供回存 - if (mRecord.Tel== null || mRecord.Tel.Trim().Length == 0) + if (eosEventRecord.Tel == null || eosEventRecord.Tel.Trim().Length == 0) { return true; } // 電話資料過長 - if (mRecord.Tel.Trim().Length > 24) + if (eosEventRecord.Tel.Trim().Length > 24) { Logger.Warn("電話過長號碼,無法回存資料庫."); return true; } - sqlStmt = "UPDATE BASEDB.METER SET TELE_NUMB = '" + mRecord.Tel.Trim() + "' WHERE METR_NUMB = '" + mRecord.Meter+ "'"; + var sqlStmt = "UPDATE BASEDB.METER SET TELE_NUMB = '" + eosEventRecord.Tel.Trim() + "' WHERE METR_NUMB = '" + + eosEventRecord.Meter + "'"; OracleCommand command = new OracleCommand(sqlStmt, _connectionTpc, _transaction); -- Gitblit v0.0.0-SNAPSHOT