private void checkBakDB() { try { string tbName = configM.TbName; string bkName = tbName + ICL.STR_TB_BAK; bool bok = DBTools.checkBakTable(tbName, bkName); } catch (Exception ex) { logger.Error(ex, "创建日志表失败"); MessageBox.Show(ex.Message); } }
private bool checkConfDB() { bool bok = false; try { bok = DBTools.checkConfigTable(); } catch (Exception ex) { logger.Error(ex, "创建配置表失败"); MessageBox.Show(ex.Message); } return(bok); }
private void TestDBLink(object sender, EventArgs e) { if (configM != null && !string.IsNullOrEmpty(CURR_DBConf)) { if (string.IsNullOrEmpty(DBTools.DBLink)) { DBTools.DBLink = CURR_DBConf; } string bgtime = DBTools.GetSearchBgTime(configM.Sid); MessageBox.Show(string.Format("获取到任务开始查询时间{0}", bgtime)); } else { MessageBox.Show("没有数据库配置信息!"); } }
/// <summary> /// 同步数据到备份表 /// </summary> public void SyncDataToBakTable(string edtime) { //获取备份表 string tbName = configM.TbName; string bkName = tbName + ICL.STR_TB_BAK; string timefld = configM.Timefld; string pkfld = configM.getTablePkFld(); string cont = timefld + "<='" + edtime + "'";; string bgtime = DBTools.GetMaxBakBgTime(bkName, timefld); if (!string.IsNullOrEmpty(bgtime)) { cont += " and " + timefld + ">='" + bgtime + "'"; } cont += " and isnull(" + timefld + ",'')<>''"; string fld = configM.getDBFlds(); DBTools.WriteRecordToBakTable(bkName, tbName, cont, pkfld, fld); }
/// <summary> /// 点击按钮自动更新数据到备份表 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Modify_data_Click(object sender, EventArgs e) { if (!checkConfigFLDInfo()) { //MessageBox.Show("请先获取配置信息!"); return; } string tbName = configM.TbName; string bkName = tbName + ICL.STR_TB_BAK; string timefld = configM.Timefld; string pkfld = configM.getTablePkFld(); string cont = timefld + "<='" + Tools.Now() + "'"; string bgtime = DBTools.GetMaxBakBgTime(bkName, timefld); if (!string.IsNullOrEmpty(bgtime)) { cont += " and " + timefld + ">='" + bgtime + "'"; } string fld = configM.getDBFlds(); DBTools.WriteRecordToBakTable(bkName, tbName, cont, pkfld, fld); }
private void GetServerConfigInfo(object sender, EventArgs e) { string url = tb_uri.Text; if (string.IsNullOrEmpty(url) && string.IsNullOrWhiteSpace(url)) { MessageBox.Show("请输入【服务器地址】"); return; } string configId = tb_conf_id.Text; if (string.IsNullOrEmpty(configId) && string.IsNullOrWhiteSpace(configId)) { MessageBox.Show("请输入【配置Id】"); return; } string queryparam = "type=400&sid=" + configId; try { string res = Tools.HttpPostInfo(url + "wmdatas2", queryparam); if (!string.IsNullOrWhiteSpace(res)) { ResultInfo rInfo = JsonConvert.DeserializeObject <ResultInfo>(res); if (rInfo.Data != null) { string conf = rInfo.Data["conf"]; configM = JsonConvert.DeserializeObject <DBConfigM>(conf); string dbconf = configM.Dbconf; if (string.IsNullOrWhiteSpace(dbconf)) { MessageBox.Show("服务端没有数据库配置信息!"); return; } iniFile.IniWriteValue(ICL.DB_LAB, ICL.DB_DBLINK, configM.Dbconf); iniFile.IniWriteValue(ICL.SERV_LAB, ICL.SERV_SCONF, Tools.EncodeBase64("UTF-8", JsonConvert.SerializeObject(configM))); iniFile.IniWriteValue(ICL.SERV_LAB, ICL.SERV_URI, url); iniFile.IniWriteValue(ICL.SERV_LAB, ICL.SERV_SID, configId); CURR_URI = url; CURR_DBConf = configM.Dbconf; DBTools.DBLink = CURR_DBConf; bool bok = checkConfDB(); if (bok) { DBTools.insertOrUpDate(configM.Sid, configM.Bgtime); } checkBakDB(); checkLogDB(); tb_conf_id.Enabled = false; tb_uri.Enabled = false; } else { MessageBox.Show("没有获取到配置信息"); } } else { MessageBox.Show("没有获取到配置信息"); } } catch (Exception ex) { logger.Error(ex, "访问服务器失败"); MessageBox.Show(ex.Message); } }
private void UpLoadWeightData(object sender, ElapsedEventArgs e) { if (canRun) { canRun = false; try { string bgtime = DBTools.GetSearchBgTime(configM.Sid); DateTime d1 = DateTime.Now; int jgmin = -configM.Inter; d1 = d1.AddMinutes(jgmin); if (string.IsNullOrEmpty(bgtime)) { bgtime = configM.Bgtime; } string edtime = d1.ToString(ICL.DATE_FMT_L); //开始同步数据 SyncDataToBakTable(edtime); //同步数据结束 string s1 = string.Format(rsql, bgtime, edtime); string log = "{0}-->开始执行任务,查询区间{1}===={2}"; log = string.Format(log, Tools.Now(), bgtime, edtime); updateTabsLogs(log); logger.Info("任务开始执行:" + s1);//执行sql查询 List <JObject> list = null; try { list = DBTools.Query(s1); int size = 0; if (list != null && list.Count > 0) { List <DBParams> listup = new List <DBParams>(); foreach (JObject obj in list) { DBParams param = JsonConvert.DeserializeObject <DBParams>(obj.ToString()); if (!DBTools.checkRecordUped(param.Bdid)) { size++; if (string.IsNullOrEmpty(param.Sbid)) { param.Sbid = cURR_DBID; } if (string.IsNullOrEmpty(param.Scm)) { param.Scm = cURR_SCM; } if (string.IsNullOrEmpty(param.Sopr)) { param.Sopr = cURR_OPR; } listup.Add(param); } if (listup.Count >= 10) { string sup = JsonConvert.SerializeObject(listup); logger.Info("开始执行上传:" + sup); sup = Tools.EncodeBase64("UTF-8", sup); sup = Tools.EscapeExprSpecialWord(sup); Tools.HttpPostInfo(url + "wmdatas2", "type=210&json=" + sup); logger.Info("小组执行完成:" + sup); logger.Info("开始写小组日志:"); DBTools.WriteSysUpLog(listup); listup.Clear(); Thread.Sleep(5); } } if (listup.Count > 0) { string sup = JsonConvert.SerializeObject(listup); logger.Info("开始执行尾数上传:" + sup); sup = Tools.EncodeBase64("UTF-8", sup); sup = Tools.EscapeExprSpecialWord(sup); Tools.HttpPostInfo(url + "wmdatas2", "type=210&json=" + sup); logger.Info("尾数执行完成:" + sup); logger.Info("开始写尾数日志:"); DBTools.WriteSysUpLog(listup); listup.Clear(); } logger.Info(string.Format("本次执行完成,上传总条数【{0}】", size)); } else { logger.Info("没有查询到数据;"); } DBTools.insertOrUpDate(configM.Sid, edtime); updateTabsLogs(string.Format(Tools.Now() + "-->任务执行完成【{0}】", size)); } catch (Exception ex) { logger.Error("错误SQL:" + s1); logger.Error(ex, "执行查询出错"); updateTabsLogs(Tools.Now() + "-->任务执行报错:" + ex.Message); } } catch (Exception ex) { logger.Error(ex, "上传出错!"); } finally { canRun = true; } } }