//public void ReportThread(string result, string strRptFolder) public void BankRateThread(object QueryCode) { List <BANK_RULES> lbr = new List <BANK_RULES>(); BankRuleService brs = new BankRuleService(); lbr = brs.findAll(); foreach (BANK_RULES BR in lbr) { try { string result = ""; BankService bs = new BankService(); BANK b = new BANK(); b = bs.find(BR.BankCode); if (b != null) { string groupCode = Guid.NewGuid().ToString(); RATE_HISTORY rateHistory = new RATE_HISTORY(); RateHistoryService rhs = new RateHistoryService(); if (b.BankCode == "OCB") { Thread.Sleep(180000); if (BankRateService.LastOCBRun.AddMinutes(5) < DateTime.Now) { BankRateService.LastOCBRun = DateTime.Now; string bankData = DataExtractorFactory.getDataExtractor(b).extractData(b); result = RuleProcessor.process(bankData, BR.BankRule, b.BankCode); } } else { string bankData = DataExtractorFactory.getDataExtractor(b).extractData(b); result = RuleProcessor.process(bankData, BR.BankRule, b.BankCode); } if (result != "") { rateHistory = rhs.get(b.BankCode, BR.TenorCode); float finalResult; if (rateHistory != null) { if (float.TryParse(result, out finalResult)) { rateHistory.InsRate = result; rateHistory.GroupCode = groupCode; rateHistory.Timestamp = DateTime.Now; rhs.editRateHistory(rateHistory); } } else { if (float.TryParse(result, out finalResult)) { rateHistory = new RATE_HISTORY(); rateHistory.BankCode = b.BankCode; rateHistory.TenorCode = BR.TenorCode; rateHistory.InsRate = result; rateHistory.GroupCode = groupCode; rateHistory.Timestamp = DateTime.Now; rhs.addRateHistory(rateHistory); } } } } } catch (Exception ex) { log.Info("Error: ", ex); } } }