using System; using System.Configuration; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Windows.Forms; using WebService.SDK; namespace MobilePayStatic { public partial class MainForm : Form { protected static string _connectstring = ConfigurationManager.AppSettings["connectstring"].ToString(); protected static string _connectstringex = ConfigurationManager.AppSettings["connectstringex"].ToString(); protected static string _OracleHelperString = ConfigurationManager.AppSettings["OracleHelperString"].ToString(); public MainForm() { InitializeComponent(); PPath.Text = System.IO.Directory.GetParent(System.Environment.CurrentDirectory).FullName; //TransferData(); DealErrorTxt(); timer1.Start(); timer2.Start(); timer3.Start(); if (Directory.Exists(PPath.Text + "\\ErrorLog")) { DirectoryInfo DirectoryInfos = new DirectoryInfo(PPath.Text + "\\ErrorLog"); foreach (DirectoryInfo _DirectoryInfo in DirectoryInfos.GetDirectories()) { if (_DirectoryInfo.LastWriteTime < DateTime.Now.AddMonths(-1)) { foreach (FileInfo _FileInfo in _DirectoryInfo.GetFiles()) { _FileInfo.Delete(); } _DirectoryInfo.Delete(); } } } } #region 方法 -> 获取日志文件(根据文件日期) protected string GetPayInfo(int AddDays = 0) { int PayCount = 0, InsertCount = 0; string ErrorTicket = "", Serverpart_Code = ""; if (Directory.Exists(PPath.Text + "\\ErrorLog\\" + DateTime.Now.AddDays(AddDays).ToString("yyyyMMdd"))) { DirectoryInfo _DirectoryInfo = new DirectoryInfo(PPath.Text + "\\ErrorLog\\" + DateTime.Now.AddDays(AddDays).ToString("yyyyMMdd")); foreach (FileInfo _FileInfo in _DirectoryInfo.GetFiles()) { string WriteTxt = File.ReadAllText(_FileInfo.FullName, Encoding.UTF8); if (string.IsNullOrEmpty(WriteTxt)) { ErrorTicket += (ErrorTicket == "" ? "" : ",") + (_FileInfo.Name.Contains('.') ? _FileInfo.Name.Remove(_FileInfo.Name.LastIndexOf('.')) : _FileInfo.Name); } if (Serverpart_Code == "" && _FileInfo.Name.Length >= 6) { Serverpart_Code = _FileInfo.Name.Substring(0, 6); } PayCount++; } } try { OracleHelper _OracleHelper = new OracleHelper(_connectstring.Split(',')[0], _connectstring.Split(',')[1], _connectstring.Split(',')[2], _connectstring.Split(',')[3]); InsertCount = _OracleHelper.ExcuteSqlGetDataSet(@"SELECT DISTINCT TICKETCODE FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE SELLDATA_TYPE IN ('ALIPAY','WECHAT','UNIONPAY') AND TRUNC(SELLDATA_DATE) = TRUNC(SYSDATE) + " + AddDays).Tables[0].Rows.Count; } catch (Exception ex) { LogHelper.WriteSendLog(ex.Message); } textBox1.Text = "共产生" + PayCount + "笔移动支付交易,数据库记录" + InsertCount + "笔交易" + (string.IsNullOrEmpty(ErrorTicket) ? "。" : ",其中订单号为" + ErrorTicket + "的单据未记录成功!"); return Serverpart_Code + "|" + PayCount + "|" + ErrorTicket + "|" + InsertCount; } #endregion #region 方法 -> 插入移动支付数据 protected void InsertData() { string WriteTxt = ""; if (Directory.Exists(PPath.Text + "\\InsertData")) { DirectoryInfo _DirectoryInfo = new DirectoryInfo(PPath.Text + "\\InsertData"); foreach (FileInfo _FileInfo in _DirectoryInfo.GetFiles()) { try { WriteTxt = File.ReadAllText(_FileInfo.FullName, Encoding.UTF8).Replace("'", " "); if (!string.IsNullOrEmpty(WriteTxt.Trim()) && WriteTxt.Contains("|")) { string[] SplitContent = WriteTxt.Split('|'); if( InsertData(SplitContent[0], SplitContent[1], SplitContent[2], SplitContent[3], SplitContent[4].Length > 1000 ? SplitContent[4].Substring(0, 1000) + "..." : SplitContent[4], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 3 : 4)], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 2 : 3)], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 1 : 2)], SplitContent.Length < 9 ? "" : SplitContent[SplitContent.Length - 1], _FileInfo.FullName)) { _FileInfo.Delete(); } } } catch (Exception ex) { LogHelper.WriteSendLog(ex.Message + "(" + WriteTxt + ")"); } } } } #endregion #region 方法 -> 统计异常日志文件 protected void TransferData() { //if (DateTime.Now.Hour >= 4 && DateTime.Now.Hour < 8) //{ string SendContent = GetPayInfo(-1), SQLString = ""; if (string.IsNullOrEmpty(SendContent) || SendContent.Split('|')[0] == "" || SendContent.Split('|').Length < 3) { return; } try { OracleHelper _OracleHelper = new OracleHelper(_OracleHelperString.Split(',')[0], _OracleHelperString.Split(',')[1], _OracleHelperString.Split(',')[2], _OracleHelperString.Split(',')[3], _OracleHelperString.Split(',').Length > 4 ? _OracleHelperString.Split(',')[4] : "1521"); if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_TRANSFERTOOL_PAY WHERE SERVERPARTCODE = '" + SendContent.Split('|')[0] + "' AND TRUNC(MOBILEPAY_DATE) = TRUNC(SYSDATE - 1)").Tables[0].Rows.Count > 0) { SQLString = "UPDATE HIGHWAY_EXCHANGE.T_TRANSFERTOOL_PAY SET TICKET_COUNT = " + SendContent.Split('|')[1] + ",INSERT_COUNT = " + SendContent.Split('|')[3] + ",ERROR_COUNT = '" + SendContent.Split('|')[2] + "',TRANSFERTOOL_DATE = SYSDATE WHERE SERVERPARTCODE = '" + SendContent.Split('|')[0] + "' AND TRUNC(MOBILEPAY_DATE) = TRUNC(SYSDATE - 1)"; _OracleHelper.ExcuteSql(SQLString); CommonHelper.SaveTextFile("日志_Send.log", DateTime.Now + ":发送内容:" + SendContent + ",成功发送移动支付统计数据!"); } else { SQLString = @"INSERT INTO HIGHWAY_EXCHANGE.T_TRANSFERTOOL_PAY (TRANSFERTOOL_PAY_ID,SERVERPARTCODE, TICKET_COUNT,INSERT_COUNT,ERROR_COUNT,MOBILEPAY_DATE,TRANSFERTOOL_DATE,TRANSFERTOOL_PAY_DESC) VALUES (HIGHWAY_EXCHANGE.SEQ_TRANSFERTOOL_PAY.NEXTVAL,'" + SendContent.Split('|')[0] + "'," + SendContent.Split('|')[1] + "," + SendContent.Split('|')[3] + ",'" + SendContent.Split('|')[2] + "',TRUNC(SYSDATE - 1),SYSDATE,'')"; _OracleHelper.ExcuteSql(SQLString); CommonHelper.SaveTextFile("日志_Send.log", DateTime.Now + ":发送内容:" + SendContent + ",成功发送移动支付统计数据!"); } } catch (Exception ex) { LogHelper.WriteSendLog(ex.Message); } /*} else { string SendContent = GetPayInfo(-2), SQLString = ""; if (string.IsNullOrEmpty(SendContent) || SendContent.Split('|')[0] == "" || SendContent.Split('|').Length < 3) { return; } try { OracleHelper _OracleHelper = new OracleHelper(_OracleHelperString.Split(',')[0], _OracleHelperString.Split(',')[1], _OracleHelperString.Split(',')[2], _OracleHelperString.Split(',')[3]); if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_TRANSFERTOOL_PAY WHERE SERVERPARTCODE = '" + SendContent.Split('|')[0] + "' AND TRUNC(MOBILEPAY_DATE) = TRUNC(SYSDATE - 2)").Tables[0].Rows.Count == 0) { SQLString = @"INSERT INTO HIGHWAY_EXCHANGE.T_TRANSFERTOOL_PAY (TRANSFERTOOL_PAY_ID,SERVERPARTCODE, SERVERPART_NAME,TICKET_COUNT,ERROR_COUNT,MOBILEPAY_DATE,TRANSFERTOOL_DATE,TRANSFERTOOL_PAY_DESC) VALUES (HIGHWAY_EXCHANGE.SEQ_TRANSFERTOOL_PAY.NEXTVAL,'" + SendContent.Split('|')[0] + "',''," + SendContent.Split('|')[1] + ",'" + SendContent.Split('|')[2] + "',TRUNC(SYSDATE - 2),SYSDATE,'')"; _OracleHelper.ExcuteSql(SQLString); CommonHelper.SaveTextFile("日志_Send.log", DateTime.Now + ":发送内容:" + SendContent + ",成功发送移动支付统计数据!"); } } catch (Exception ex) { LogHelper.WriteSendLog(ex.Message); } }*/ } #endregion #region 方法 -> 插入数据 private bool InsertData(string TICKETCODE, string PAYTYPE, string TICKETPRICE, string result_code, string _result_desc, string trade_no, string trade_num, string _PayCreateResult, string strPaymentChannel, string SourceFile) { bool Flag = false; string PayTime = TICKETCODE.Substring(TICKETCODE.Length - 14, 14); string FilePath = "ErrorLog\\" + PayTime.Substring(0, 8); string result_desc = _result_desc == CommonHelper.get_reqmsg("3") || CommonHelper.GetResult_Code(_result_desc) == "100" ? "SUCCESS" : _result_desc; try { //支付时间 PayTime = PayTime.Substring(0, 4) + "/" + PayTime.Substring(4, 2) + "/" + PayTime.Substring(6, 2) + " " + PayTime.Substring(8, 2) + ":" + PayTime.Substring(10, 2) + ":" + PayTime.Substring(12, 2); //本地数据库 OracleHelper _OracleHelper = new OracleHelper(_connectstring.Split(',')[0], _connectstring.Split(',')[1], _connectstring.Split(',')[2], _connectstring.Split(',')[3]); #region 插入本地数据库 using (DataTable _MobilePayTable = _OracleHelper.ExcuteSqlGetDataSet( @"SELECT TICKETCODE,UPPER(SELLDATA_EXTRA_DESC) AS SELLDATA_EXTRA_DESC FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + "'").Tables[0]) { if (_MobilePayTable.Rows.Count == 0 || _MobilePayTable.Select("SELLDATA_EXTRA_DESC LIKE 'SUCCESS%'").Count() == 0) { string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) VALUES (HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; _OracleHelper.ExcuteSql(str); } } #endregion #region 插入本地数据库(原方式) //if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + // TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + "'").Tables[0].Rows.Count == 0) //{ // //无支付记录 // string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, // SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) // VALUES(HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + // "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + // (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + // (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : // TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? // TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + // TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + // (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; // _OracleHelper.ExcuteSql(str); //} //else if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + // TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + // "' AND UPPER(SELLDATA_EXTRA_DESC) LIKE 'SUCCESS%'").Tables[0].Rows.Count == 0) //{ // //无支付成功记录 // string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, // SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) // VALUES(HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + // "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + // (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + // (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : // TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? // TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + // TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + // (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; // _OracleHelper.ExcuteSql(str); //} #endregion if (Directory.Exists(PPath.Text + "\\" + FilePath)) { CommonHelper.SaveTextFile(PPath.Text + "\\" + FilePath + "\\" + TICKETCODE + ".txt", result_desc, 1); } Flag = true; } catch (Exception ex) { string LocalPath = System.AppDomain.CurrentDomain.BaseDirectory + "\\ErrorLog"; if (!Directory.Exists(LocalPath)) { Directory.CreateDirectory(LocalPath); } if (!File.Exists(LocalPath + "\\" + TICKETCODE + ".txt")) { File.Copy(SourceFile, LocalPath + "\\" + TICKETCODE + ".txt"); } LogHelper.WriteSendLog("订单号:" + TICKETCODE + "," + ex.Message); try { //总部服务器数据库 OracleHelper _OracleHelper = new OracleHelper(_connectstringex.Split(',')[0], _connectstringex.Split(',')[1], _connectstringex.Split(',')[2], _connectstringex.Split(',')[3]); #region 插入交互数据库 using (DataTable _MobilePayTable = _OracleHelper.ExcuteSqlGetDataSet( @"SELECT TICKETCODE,UPPER(SELLDATA_EXTRA_DESC) AS SELLDATA_EXTRA_DESC FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + "'").Tables[0]) { if (_MobilePayTable.Rows.Count == 0 || _MobilePayTable.Select("SELLDATA_EXTRA_DESC LIKE 'SUCCESS%'").Count() == 0) { string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) VALUES (HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; _OracleHelper.ExcuteSql(str); } } #endregion #region 插入交互数据库(原方式) //if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + // TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + "'").Tables[0].Rows.Count == 0) //{ // //无支付记录 // string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, // SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) // VALUES(HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + // "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + // (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + // (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : // TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? // TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + // TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + // (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; // _OracleHelper.ExcuteSql(str); //} //else if (_OracleHelper.ExcuteSqlGetDataSet("SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA WHERE TICKETCODE = '" + // TICKETCODE + "' AND SELLDATA_TYPE = '" + PAYTYPE + "' AND UPPER(SELLDATA_EXTRA_DESC) LIKE 'SUCCESS%'" // ).Tables[0].Rows.Count == 0) //{ // //无支付成功记录 // string str = @"INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE, // SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,COMMODITY_CODE,FACTAMOUNT,SELLDATA_EXTRA_DESC,LINENUM) // VALUES(HIGHWAY_EXCHANGE.SEQ_SELLDATA_EXTRA.NEXTVAL,'" + PAYTYPE + "',TO_DATE('" + PayTime + // "','YYYY/MM/DD HH24:MI:SS'),'" + TICKETCODE.Substring(0, 6) + "','" + // (TICKETCODE.Length == 28 ? TICKETCODE.Substring(6, 4) : TICKETCODE.Substring(6, 6)) + "','" + // (TICKETCODE.Length == 28 ? (TICKETCODE.Substring(10, 4).StartsWith("0") ? TICKETCODE.Substring(11, 3) : // TICKETCODE.Substring(10, 4)) : (TICKETCODE.Substring(12, 4).StartsWith("0") ? // TICKETCODE.Substring(13, 3) : TICKETCODE.Substring(12, 4))) + "','" + // TICKETCODE + "','" + trade_no + "'," + TICKETPRICE + ",'" + result_desc + "'," + // (strPaymentChannel == "" ? "1" : strPaymentChannel) + ")"; // _OracleHelper.ExcuteSql(str); //} #endregion if (Directory.Exists(PPath.Text + "\\" + FilePath)) { CommonHelper.SaveTextFile(PPath.Text + "\\" + FilePath + "\\" + TICKETCODE + ".txt", result_desc, 1); } //Flag = true; } catch (Exception _Exception) { LogHelper.WriteSendLog("订单号:" + TICKETCODE + "," + _Exception.Message); } } /*try { //本地数据库 OracleHelper _OracleHelper = new OracleHelper(_connectstring.Split(',')[0], _connectstring.Split(',')[1], _connectstring.Split(',')[2], _connectstring.Split(',')[3]); string str = "SELECT * FROM HIGHWAY_EXCHANGE.T_MOBILE_PAYCHECK WHERE TICKET_CODE = '" + TICKETCODE + "'"; DataTable _DataTable = _OracleHelper.ExcuteSqlGetDataSet(str, "T_MOBILE_PAYCHECK").Tables[0]; if (_DataTable.Rows.Count == 0) { str = @"INSERT INTO HIGHWAY_EXCHANGE.T_MOBILE_PAYCHECK (MOBILE_PAYCHECK_ID,MOBILEPAY_DATE, MOBILEPAY_TYPE,TICKET_CODE,TICKET_PRICE,TRADE_NO,TRADE_NUM,RESULT_CODE,RESULT_DESC,JSON_STRING) VALUES (1,TO_DATE('" + PayTime + "','YYYY/MM/DD HH24:MI:SS'),'" + PAYTYPE + "','" + TICKETCODE + "'," + TICKETPRICE + ",'" + trade_no + "','" + trade_num + "','" + result_code + "','" + _result_desc + "','" + _PayCreateResult.Replace("\\r\\n","").Replace("\\","") + "')"; _OracleHelper.ExcuteSql(str); } else if (_DataTable.Rows[0]["TRADE_NO"].ToString() == "") { str = "UPDATE HIGHWAY_EXCHANGE.T_MOBILE_PAYCHECK SET TRADE_NO = '" + trade_no + "' WHERE TICKET_CODE = '" + TICKETCODE + "'"; _OracleHelper.ExcuteSql(str); } } catch (Exception _Exception) { LogHelper.WriteSendLog(_Exception.Message); }*/ return Flag; } #endregion #region 方法 -> 处理异常日志 protected void DealErrorTxt() { string WriteTxt = "", LocalPath = System.AppDomain.CurrentDomain.BaseDirectory + "\\ErrorLog"; if (Directory.Exists(LocalPath)) { DirectoryInfo _DirectoryInfo = new DirectoryInfo(LocalPath); foreach (FileInfo _FileInfo in _DirectoryInfo.GetFiles()) { try { WriteTxt = File.ReadAllText(_FileInfo.FullName, Encoding.UTF8).Replace("'", " "); if (!string.IsNullOrEmpty(WriteTxt.Trim()) && WriteTxt.Contains("|")) { string[] SplitContent = WriteTxt.Split('|'); if (InsertData(SplitContent[0], SplitContent[1], SplitContent[2], SplitContent[3], SplitContent[4].Length > 1000 ? SplitContent[4].Substring(0, 1000) + "..." : SplitContent[4], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 3 : 4)], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 2 : 3)], SplitContent[SplitContent.Length - (SplitContent.Length < 9 ? 1 : 2)], SplitContent.Length < 9 ? "" : SplitContent[SplitContent.Length - 1], _FileInfo.FullName)) { _FileInfo.Delete(); } } else { _FileInfo.Delete(); } } catch (Exception ex) { LogHelper.WriteSendLog(ex.Message + "(" + WriteTxt + ")"); } } } } #endregion private void timer1_Tick(object sender, EventArgs e) { //if (DateTime.Now.Hour >= 4 && DateTime.Now.Hour < 8) //{ // TransferData(); //} } private void timer2_Tick(object sender, EventArgs e) { InsertData(); } private void timer3_Tick(object sender, EventArgs e) { DealErrorTxt(); } } }