static TeamInfoUploader() { QueryString = $"SELECT S.group_id, S.cooperator_id, P.project_id, P.credit_code, P.unit_name, S.`name`, P.remark FROM f_group S INNER JOIN f_cooperator P ON S.cooperator_id = P.cooperator_id WHERE P.project_id = { HjApiCaller.Project_id };"; var resultSet = DBHelperMySQL.TryQuery(QueryString); cache = resultSet.Tables[0]; }
static WorkerAttendanceUploader() { QueryString = $"SELECT S.record_id, S.project_id, S.worker_id, S.device_id, S.record_time, S.type FROM zhgd_person.d_card_record S INNER JOIN zhgd_lw.f_worker W ON S.worker_id = W.worker_id INNER JOIN zhgd_lw.f_group G ON W.group_id = G.group_id INNER JOIN zhgd_lw.f_cooperator C ON G.cooperator_id = C.cooperator_id WHERE S.record_time BETWEEN '2021-04-17 00:00:00' AND '2021-04-17 23:59:59' AND C.project_id = { HjApiCaller.Project_id };"; var resultSet = DBHelperMySQL.TryQuery(QueryString); cache = resultSet.Tables[0]; }
static ProjectWorkerUploader() { QueryString = $"SELECT S.worker_id, S.company_id, S.project_id, S.cooperator_id, S.group_id, S.person_id, S.`name`, S.sex, S.birthday, S.id_card, S.profession_id, S.role_id, S.nation, S.address, S.mobile, S.entry_time FROM f_worker S INNER JOIN f_group G ON S.group_id = G.group_id INNER JOIN f_cooperator C ON G.cooperator_id = C.cooperator_id WHERE S.STATUS IN ( 1, 2 ) AND C.project_id = { HjApiCaller.Project_id };"; var resultSet = DBHelperMySQL.TryQuery(QueryString); cache = resultSet.Tables[0]; }
static ProjectSubContractorUploader() { // 只查询总包和劳务分包数据 QueryString = $"SELECT cooperator_id, company_id, project_id, unit_name, unit_type, credit_code, unit_person, contacts_mobile, remark FROM f_cooperator S WHERE S.project_id = { HjApiCaller.Project_id } AND S.unit_type IN (1,2,3,4,5,6,9,12,13) AND S.`status` = 1;"; var resultSet = DBHelperMySQL.TryQuery(QueryString); cache = resultSet.Tables[0]; }
public static void LoadMarker() { IDBHelper dBHelper = new DBHelperMySQL("", Program.Settings.DNALims); string marker = "select locus_type,locus_name,national_locus_name,alias,ord from locus_info order by locus_type, ord"; DataTable dtMarker = dBHelper.getDataTable(marker); if (dtMarker != null && dtMarker.Rows.Count > 0) { Marker = dtMarker; } dBHelper.closeConn(); }
static void Main(string[] args) { SetConsoleWindowVisibility(Visible); notifyIcon.DoubleClick += (s, e) => { Visible = !Visible; SetConsoleWindowVisibility(Visible); }; notifyIcon.Icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath); notifyIcon.Visible = true; notifyIcon.Text = "实名制信息推送程序【鄂州市劳保】"; // 初始化上传标段参数 if (!HjApiCaller.TryInit()) { Environment.Exit(0); } try { Task.Factory .StartNew(StartUpload) .ContinueWith(t => { anyExceptions = (t.Exception != null); Application.Exit(); }); } catch (Exception e) { LogUtils4Error.Logger.Error(e.Message); } finally { Application.Run(); notifyIcon.Visible = false; // 1、日志记录完成 LogUtils4Debug.Logger.Debug($"================={ HjApiCaller.ProjectName },已上传完成!================="); LogUtils.Logger.Info($"{ HjApiCaller.ProjectName },{ DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") },上传完成并{ (anyExceptions ? "有" : "无")}异常发生"); DBHelperMySQL.Dispose(); // 2、打开新的程序 var p = Process.Start(Assembly.GetExecutingAssembly().Location); Environment.Exit(0); } }
public static void DBSyncManage() { if (SyncManage.sync_status_db_str == STATUS.Initing) { return; } SyncManage.sync_status_db_str = STATUS.Initing; //验证位点 if (SyncManage.Marker == null || SyncManage.Marker.Rows.Count <= 0) { SyncManage.LoadMarker(); } IDBHelper dBHelper = new DBHelperMySQL("", Program.Settings.DNALims); try { //分页同步 //状态,默认0 插入,1 删除,2 更新 string maxIdSql = "SELECT max(id) FROM `comparedatatask` where ex8=0 and `type`=0 order by updatetime desc,`level`"; var maxId = dBHelper.execScalar(maxIdSql); if (maxId.Equals(DBNull.Value)) { SyncManage.sync_status_db_str = STATUS.Exiting; return; } string minIdSql = "select min(id) from comparedatatask where ex8=0 and `type`=0 order by updatetime desc,`level`"; var minId = dBHelper.execScalar(minIdSql); if (minId.Equals(DBNull.Value)) { minId = 0; } DBSync(Convert.ToInt32(minId), Convert.ToInt32(maxId)); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { dBHelper.closeConn(); SyncManage.sync_status_db_str = STATUS.Exiting; } }
public List <TEntity> GetList <TEntity>(string connectionString, string sqlString) where TEntity : class, new() { List <TEntity> list = new List <TEntity>(); using (DataSet ds = DBHelperMySQL.Create(connectionString).Query(sqlString)) { if (ds == null) { return(list); } if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { list = ds.Tables[0].ConvertToList <TEntity>(); } } return(list); }
public List <TValue> GetValues <TValue>(string connectionString, string sqlString, params MySqlParameter[] parameters) { List <TValue> list = new List <TValue>(); using (DataSet ds = DBHelperMySQL.Create(connectionString).Query(sqlString, parameters)) { if (ds == null) { return(list); } if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { list = ds.Tables[0].ConvertToValues <TValue>(); } } return(list); }
public TEntity GetEntityByProcedure <TEntity>(string connectionString, string procedureName, params MySqlParameter[] parameters) where TEntity : class, new() { TEntity entity = null; using (DataSet ds = DBHelperMySQL.Create(connectionString).RunProcedure(procedureName, parameters)) { if (ds == null) { return(entity); } if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { entity = ds.Tables[0].Rows[0].ConvertToModel <TEntity>(); } } return(entity); }
public List <TEntity> GetListByProcedure <TEntity>(string connectionString, string procedureName, params MySqlParameter[] parameters) where TEntity : class, new() { List <TEntity> list = new List <TEntity>(); using (DataSet ds = DBHelperMySQL.Create(connectionString).RunProcedure(procedureName, parameters)) { if (ds == null) { return(list); } if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { list = ds.Tables[0].ConvertToList <TEntity>(); } } return(list); }
private static void DBSync(int minId, int maxId) { IDBHelper dBHelper = new DBHelperMySQL("", Program.Settings.DNALims); try { string sql = $"SELECT * from comparedatatask where id BETWEEN {minId} and {maxId} and ex8=0 and `type`=0 order by updatetime desc,`level`"; var dtGene = dBHelper.getDataTable(sql); if (dtGene != null && dtGene.Rows.Count > 0) { for (int i = 0; i < dtGene.Rows.Count; i++) { var status = Convert.ToInt32(dtGene.Rows[i]["status"]); var id = dtGene.Rows[i]["id"].ToString(); var geneIndexid = dtGene.Rows[i]["geneindexid"].ToString(); var server = dtGene.Rows[i]["server"].ToString(); if (status == 1) { Console.WriteLine($"接收到删除数据 compare:{id} {DateTime.Now}"); DeleteGeno(dBHelper, id, geneIndexid, server); } else if (status == 0 || status == 2) { Console.WriteLine($"接收到新增数据 compare:{id} {DateTime.Now}"); AddGeno(dBHelper, id, geneIndexid, server); } } } } catch (Exception ex) { throw ex; } finally { dBHelper.closeConn(); } }
//private DBHelperMySQL dBHelper = new DBHelperMySQL(); /// <summary> /// 负责文本信息处理 /// </summary> /// <param name="message">文本信息</param> /// <returns></returns> public static MessageModel main(String message, string fromQQ) { string resultContent = "\n无数据"; string content = message; MessageModel messageModel = null; if (message == null || message == "" || message.Length == 0) { messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: ""); return(messageModel); } resultContent = "\n无数据"; message = executeCodeReplace(message); message = message.Trim(); if (message.Length == 0 || message == "") { messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: ""); return(messageModel); } else if (message.Contains(MessageConstant.RANDOM_CONTENT_TITLE)) { // 标题查询随机文章 message = message.Replace(MessageConstant.RANDOM_CONTENT_TITLE, "").Trim(); resultContent = DBHelperMySQL.GetContentRandomByTitle(message); // 标题查询随机课程 string classContent = DBHelperMySQL.getClassRandomByTitle(message); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_TITLE); } else if (message.Contains(MessageConstant.DESC_CONTENT_TITLE)) { // 标题查询最新文章 message = message.Replace(MessageConstant.DESC_CONTENT_TITLE, "").Trim(); string classContent = ""; if (message.Length == 0 || message == "" || "".Equals(message) || message == null) { // 调用每日最新 resultContent = DBHelperMySQL.getContentDateByToday(); // 标题查询最新课程 classContent = DBHelperMySQL.getClassDateByTitle(""); } else { resultContent = DBHelperMySQL.getContentDateByTitle(message); classContent = DBHelperMySQL.getClassDateByTitle(message); } if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_TITLE); } else if (message.Contains(MessageConstant.DESC_CONTENT_AUTHOR)) { // 作者查询最新文章 message = message.Replace(MessageConstant.DESC_CONTENT_AUTHOR, "").Trim(); resultContent = DBHelperMySQL.getContentDateByAuthor(message); // 作者查询最新课程 string classContent = DBHelperMySQL.getClassDateByAuthor(message); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_AUTHOR); } else if (message.Contains(MessageConstant.RANDOM_CONTENT_AUTHOR)) { // 作者查询随机文章 message = message.Replace(MessageConstant.RANDOM_CONTENT_AUTHOR, "").Trim(); resultContent = DBHelperMySQL.getContentRandomByAuthor(message); // 作者查询随机课程 string classContent = DBHelperMySQL.getClassRandomByAuthor(message); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_AUTHOR); } else if (message.Contains(MessageConstant.DESC_CONTENT_TODAY) || message.Contains(MessageConstant.DESC_CONTENT)) { // 今日最新 message = message.Replace(MessageConstant.DESC_CONTENT_TODAY, "").Trim(); resultContent = DBHelperMySQL.getContentDateByToday(); string classContent = DBHelperMySQL.getClassDateByTitle(""); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_TODAY); } else if (message.Contains(MessageConstant.GONG_GAO)) { // 公告处理 bool flag = DBHelperMySQL.isAdmin(fromQQ); // 判断是否管理员 if (flag) { message = message.Replace(MessageConstant.GONG_GAO, "来自i春秋机器人的智能推送\n"); resultContent = message; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.GONG_GAO); } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.GONG_GAO); } } else if (message.Contains(MessageConstant.AITE_ALL)) { // 艾特全体处理 bool flag = DBHelperMySQL.isAdmin(fromQQ); if (flag) { message = message.Replace(MessageConstant.AITE_ALL, "来自i春秋机器人的智能推送\n"); resultContent = message; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.AITE_ALL); } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.AITE_ALL); } } else if (message.Contains(MessageConstant.HELP) || message.Contains(MessageConstant.HELP_TWO)) { // Help 帮助等指令 resultContent = MessageConstant.HELP_CONTENT; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP_TWO); } else if (message.Contains(MessageConstant.DESC_VIDEO)) { // 标题查询最新教程 message = message.Replace(MessageConstant.DESC_VIDEO, "").Trim(); resultContent = DBHelperMySQL.getCourseDateByTitle(message); // 标题查询最新课程 string classContent = DBHelperMySQL.getClassDateByTitle(message); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_VIDEO); } else if (message.Contains(MessageConstant.RANDOM_VIDEO)) { // 标题查询随机教程 message = message.Replace(MessageConstant.RANDOM_VIDEO, "").Trim(); resultContent = DBHelperMySQL.getCourseRandomByTitle(message); // 标题查询随机课程 string classContent = DBHelperMySQL.getClassRandomByTitle(message); if (classContent.Length > 0 && !"".Equals(classContent)) { resultContent += classContent; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_VIDEO); } else if (message.Contains(MessageConstant.TEST)) { // 测试命令 resultContent = " [CQ:image,file=photo.jpg]"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.TEST); } else if (message.Contains(MessageConstant.SELECT_MONEY)) { string tmpStr = message.Replace(MessageConstant.SELECT_MONEY, "").Trim(); // 判断是否为管理员 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); string money = ""; if (tmpStr.Length > 0 && isAdmin) { // 查询余额 money = DBHelperMySQL.getBlankMoney(tmpStr); } else { // 查询余额 money = DBHelperMySQL.getBlankMoney(fromQQ); } if (money == "" || money == null || money.Length == 0) { resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。"; } else { resultContent = "\n当前余额为 " + money; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.SELECT_MONEY); } else if (message.Contains(MessageConstant.HISTORY_MONEY)) { // 提现记录 string historyMoney = DBHelperMySQL.getBlankHistory(fromQQ); // 查询当前余额 string money = DBHelperMySQL.getBlankMoney(fromQQ); if (money == "" || money == null || money.Length == 0) { resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。"; } else { resultContent = "\n当前余额为 " + money + "\n"; // 查询历史记录 resultContent += "提现记录\n"; resultContent += "金额\t\t时间\n" + historyMoney; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HISTORY_MONEY); } else if (message.Contains(MessageConstant.APPLY_MONEY)) { // 申请提现 resultContent = "请联系【坏蛋】,QQ号:286894635。\n[CQ:at,qq=286894635]"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.APPLY_MONEY); } else if (message.Contains(MessageConstant.ABOUT)) { resultContent = "i春秋社区机器人,研发人员为:0nise,产品设计为:坏蛋!"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.ABOUT); } else if (message.Contains(MessageConstant.UPDATE_MONEY)) { // 更新金额 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); if (isAdmin) { try { decimal tmpMoney = 0.0M; // 提现 if (message.Contains(MessageConstant.PUT_FORWARD)) { int moneyIndex = message.IndexOf(MessageConstant.PUT_FORWARD + ":"); int index = message.IndexOf(MessageConstant.UPDATE_MONEY); if (moneyIndex >= 0 && index >= 0) { decimal money = Convert.ToDecimal(message.Substring(moneyIndex).Replace("提现:", "").Replace(" ", "")); if (money > tmpMoney) { string qq = message.Replace(message.Substring(moneyIndex), "").Replace(MessageConstant.UPDATE_MONEY, "").Replace(" ", ""); resultContent = DBHelperMySQL.updateBlank(qq, money, "0"); } else { resultContent = "提现金额必须大于0!"; } } } // 加钱 else if (message.Contains(MessageConstant.ADD_MONEY)) { int moneyIndex = message.IndexOf(MessageConstant.ADD_MONEY + ":"); int index = message.IndexOf(MessageConstant.ADD_MONEY); if (moneyIndex >= 0 && index >= 0) { decimal money = Convert.ToDecimal(message.Substring(moneyIndex).Replace("加钱:", "").Replace(" ", "")); if (money > tmpMoney) { string qq = message.Replace(message.Substring(moneyIndex), "").Replace(MessageConstant.UPDATE_MONEY, "").Replace(" ", ""); resultContent = DBHelperMySQL.updateBlank(qq, money, "1"); } else { resultContent = "加钱金额必须大于0!"; } } } } catch (Exception) { resultContent = "更新失败。"; } } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.UPDATE_MONEY); } else if (message.Contains(MessageConstant.TODAY_COUNT)) { // 今日使用数量 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); if (isAdmin) { int count = DBHelperMySQL.getToday(); resultContent = "今日使用人数达" + count + "人"; } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.TODAY_COUNT); } else if (message.Contains(MessageConstant.USER_TOTAL)) { // 总人数 // 判定是否为管理员 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); if (isAdmin) { int count = DBHelperMySQL.getUserTotal(); DateTime dt = DateTime.Now; // 获取日期 string date = dt.ToLongDateString().ToString(); resultContent = "截止" + date + ",机器人历史使用人数达" + count + "人。"; } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL); } else if (message.Contains(MessageConstant.THIS_WEEK)) { // 七日使用 // 判定是否为管理员 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); if (isAdmin) { Hashtable hashtable = DBHelperMySQL.getThisWeek(); resultContent = ""; foreach (Object item in hashtable.Keys) { string dateData = item.ToString(); string count = hashtable[item].ToString(); resultContent += dateData + " 使用人数为:" + count + "人;\n"; } } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL); } else if (message.Contains(MessageConstant.QUN_TOTAL)) { // 群数量 // 判定是否为管理员 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); if (isAdmin) { resultContent = "群数量"; } else { resultContent = "您不是管理员!请联系坏蛋,QQ286894635!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.QUN_TOTAL); } else if (message.Contains(MessageConstant.MONEY_DESC)) { // 财富榜 bool isAdmin = DBHelperMySQL.isAdmin(fromQQ); // 检索是否为做作家团 if (DBHelperMySQL.exitsUser(fromQQ) || isAdmin) { resultContent = DBHelperMySQL.Top30Money(); } else { resultContent = "您不是作家团成员!"; } messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.MONEY_DESC); } else { // 其他内容 resultContent = MessageConstant.HELP_CONTENT; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: ""); } if (resultContent == "" || resultContent == null || resultContent.Length == 0) { messageModel.SendMessage = "\n无数据"; messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP); } // 记录用户操作数据 DBHelperMySQL.addUserData(fromQQ, content, resultContent); return(messageModel); }