pansen
2019-01-30 dd5adf6383819915967b2a76b18ca6e4d88d60cd
QiaoJiaSystem/LocalDBTool/SqliteToolkit.hpp
@@ -28,6 +28,7 @@
    std::string uuid;
    FaceFeature feature;
    std::string faceUrl;
    std::string feature_base64;
};
struct FaceInfo {
@@ -37,6 +38,8 @@
    std::string sex;
    std::string idCard;
    std::string phoneNum;
    std::string enable;
    std::string monLevel;
};
typedef std::vector<FaceInfo> FaceInfos;
typedef std::map<std::string, FaceInfo> FaceInfosCache;
@@ -65,6 +68,8 @@
    std::string uuid;
    std::string faceurl;
    FaceFeature faceFeature;
    std::string enable;
    std::string monLevel;
};
typedef std::map<std::string, FaceFeatureWithUrl> FeatureDBWithUrlCache;
@@ -85,14 +90,15 @@
    //
    std::string getFacesFromTableSql(std::string tableName) {
//        #todo get monLevel 联合查询
        std::string sql =
            "select uuid,feature,create_time,faceUrl,del_flag from " + tableName +
            "_fea where feature is not null ";
            "select uuid,feature,create_time,faceUrl,del_flag from '" + tableName +
            "_fea' where feature is not null ";
        return sql;
    }
    std::string getTableListSqlWithType(std::string type) {
        std::string sql = "select tableName,del_flag from " + g_tableName + " where del_flag = 0";
        std::string sql = "select tableName,del_flag from '" + g_tableName + "' where del_flag = 0";
        if (type.size() > 0) {
            sql.append(" and tableType = '" + type + "'");
        }
@@ -100,7 +106,7 @@
    }
    std::string getTableInfosSql(std::string tableName) {
        std::string sql = "select * from " + tableName;// + " where del_flag = 0";
        std::string sql = "select * from '" + tableName + "';";// + " where del_flag = 0";
        return sql;
    }
@@ -108,7 +114,7 @@
    std::string getTableInfosSql() {
        //uuid,tableName,tableDesc,tableType,bwType,startTime,endTime
        std::string sql =
            "select uuid,tableName,tableType,bwType,startTime,endTime,uploadFlag,cmpThreshold,enabled from " +
            "select uuid,tableName,tableType,bwType,startTime,endTime,uploadFlag,cmpThreshold,enabled,create_by from " +
            g_tableName + " where del_flag = 0";
        return sql;
    }
@@ -129,7 +135,7 @@
        str_fea.assign(feature.begin(), feature.end());
        std::stringstream sql;//= ;
        sql << "INSERT INTO " << tableName << " (";
        sql << "INSERT INTO '" << tableName << "' (";
        //std::string sqlTemp = sql;
        std::string sql2 = ") VALUES(\"";
        if (id >= 0) {
@@ -154,7 +160,7 @@
            //#todo errInfo
            return "tableName or fieldValues is NULL";
        }
        std::string sql = "DELETE from " + tableName + " where 1 = 1 ";
        std::string sql = "DELETE from '" + tableName + "' where 1 = 1 ";
        for (auto item : fieldValues) {
            if (item.first.size() != 0) {
                sql.append("and " + item.first + " = '" + item.second + "' ");
@@ -174,11 +180,11 @@
            //#todo errInfo
            return "tableName or fieldValues is NULL";
        }
        std::string sql = "INSERT INTO " + tableName + " (";
        std::string sql = "INSERT INTO '" + tableName + "' (";
        std::string sqlTemp = sql;
        std::string sql2 = ") VALUES('";
        for (auto item : fieldValues) {
            if (item.first.size() != 0) {
            if (item.first.size() != 0 && item.second.size() != 0) {
                sql.append(item.first + ",");
                sql2.append(item.second + "','");
            }
@@ -187,7 +193,7 @@
        sql = sql.substr(0, sql.length() - 1);
        //sql2 delete 2 ,'  add )
        sql2 = sql2.substr(0, sql2.length() - 2);
        sql2.append(" )");
        sql2.append(" );");
        sql.append(sql2);
        return sql;
    }
@@ -230,9 +236,9 @@
            return "tableName is NULL";
        }
        // 人员信息表
        std::string sql = "CREATE TABLE " + g_dbName + ".";
        std::string sql = "CREATE TABLE " + g_dbName + ".'";
        sql.append(tableName);
        sql.append(" (  uuid        varchar(255) PRIMARY KEY,");
        sql.append("' (  uuid        varchar(255) PRIMARY KEY,");
        sql.append("personName  varchar(255) DEFAULT NULL,");
        sql.append("age         varchar(255) DEFAULT NULL,");
        sql.append("sex         varchar(255) DEFAULT NULL,");
@@ -241,11 +247,13 @@
        sql.append("create_time BLOB         DEFAULT (datetime('now', 'localtime')),");
        sql.append("update_time DATETIME     DEFAULT NULL,");
        sql.append("create_by   varchar(255) DEFAULT NULL,");
        sql.append("del_flag    INTEGER      DEFAULT 0");
        sql.append("del_flag    INTEGER      DEFAULT 0,");
        sql.append("monitorLevel    varchar(255)      DEFAULT 0,");
        sql.append("    enabled     varchar(255) DEFAULT 1");
        sql.append(");");
        // 人脸特征表
        sql.append("CREATE TABLE " + g_dbName + ".");
        sql.append(tableName + "_fea");
        sql.append("CREATE TABLE " + g_dbName + ".'");
        sql.append(tableName + "_fea'");
        sql.append(" (  uuid        varchar(255) PRIMARY KEY,");
        sql.append("    feature     BLOB NOT NULL,");
        sql.append("    faceUrl     BLOB NOT NULL,");
@@ -273,13 +281,13 @@
            SQLERR("fieldValues size is error");
            return "";
        }
        std::string sql = "update ";
        sql.append(tableName + " set ");
        std::string sql = "update '";
        sql.append(tableName + "' set ");
        for (auto &item :fieldValues) {
            sql.append(item.first + " =  '" + item.second + "',");
        }
        sql.append(" update_time ='" + AppUtil::getTimeSecString() + "'");
        sql.append(" where uuid ='" + uuid + "'");
        sql.append(" where uuid ='" + uuid + "';");
        return sql;
    }
@@ -290,8 +298,8 @@
            //#todo errInfo
            return "tableName is NULL";
        }
        std::string sql = "DROP TABLE " + g_dbName + "." + tableName + ";";
        sql.append("DROP TABLE " + g_dbName + "." + tableName + "_fea;");
        std::string sql = "DROP TABLE " + g_dbName + ".'" + tableName + "';";
        sql.append("DROP TABLE " + g_dbName + ".'" + tableName + "_fea';");
        return sql;
    }