123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #include "rep_dbthread.h"
- Rep_DBThread::Rep_DBThread(QObject *parent) : QThread(parent)
- {
- keep = false;
- sqlList2.clear();
- }
- void Rep_DBThread::stop()
- {
- keep = false;
- }
- void Rep_DBThread::appendSql(QString sql)
- {
- sqlList2.append(sql);
- }
- bool Rep_DBThread::chk_table(QString tablename, QStringList tables)
- {
- for(int i=0;i<tables.length();i++)
- {
- if(tables.at(i).compare(tablename)==0)
- return true;
- }
- return false;
- }
- void Rep_DBThread::run()
- {
- keep = true;
- while (keep) {
- if(sqlList2.length()>0){
- if(QSqlDatabase::contains("rec_db")){
- recdb = QSqlDatabase::database("rec_db");
- }else{
- recdb = QSqlDatabase::addDatabase("QSQLITE","rec_db");
- }
- QString name = QString("/root/db/watchdoglog%1.db").arg(QDate::currentDate().toString("yyyyMMdd"));
- recdb.setDatabaseName(name);
- if(recdb.open()){
- if(!chk_table("ypsync_t_rec",recdb.tables()))
- {
- recdb.exec("create table `ypsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("ypsync_t_rec_dis",recdb.tables()))
- {
- recdb.exec("create table `ypsync_t_rec_dis` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("ypsync_t_rec_xy",recdb.tables()))
- {
- recdb.exec("create table `ypsync_t_rec_xy` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("cnsync_t_rec",recdb.tables())){
- recdb.exec("create table `cnsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("jasync_t_rec",recdb.tables())){
- recdb.exec("create table `jasync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("hpsync_t_rec",recdb.tables())){
- recdb.exec("create table `hpsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("newcnsync_t_rec",recdb.tables())){
- recdb.exec("create table `newcnsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("ypywsync_t_rec",recdb.tables())){
- recdb.exec("create table `ypywsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20))");
- }
- if(!chk_table("xfzdsync_t_rec",recdb.tables())){
- recdb.exec("create table `xfzdsync_t_rec` (`id` integer primary key autoincrement, `uuid` text(40), `data_str` text(1024), `send` integer , `store_time` text(20), `reply_str` text(1024), `reply_time` text(20), `device_code` text(40), `open_project_id` text(30))");
- }
- if(recdb.transaction()){
- while(sqlList2.length()>0){
- recdb.exec(sqlList2.first());
- sqlList2.removeFirst();
- usleep(1000);
- }
- recdb.commit();
- }
- recdb.close();
- }
- }
- usleep(10000);
- }
- }
|