|
|
@@ -25,103 +25,199 @@ bool Database::openDB()
|
|
|
return _database.open();
|
|
|
}
|
|
|
|
|
|
-bool Database::createDatabase()
|
|
|
+bool Database::createProductDatabase()
|
|
|
{
|
|
|
- QSqlDatabase db = QSqlDatabase::database("db"); //建立数据库连接
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
QSqlQuery query(db);
|
|
|
|
|
|
// query.exec("DROP TABLE dabaodata");
|
|
|
|
|
|
- bool success = query.exec("CREATE TABLE dabaodata ("
|
|
|
- "goods_id INTEGER NOT NULL,"
|
|
|
- "code_single INTEGER NOT NULL,"
|
|
|
- "level_id INTEGER NOT NULL,"
|
|
|
- "tube_number INTEGER NOT NULL,"
|
|
|
- "gross_weight DOUBLE NOT NULL,"
|
|
|
- "net_weight DOUBLE NOT NULL,"
|
|
|
- "machine_no VARCHAR(5),"
|
|
|
- "packing_time VARCHAR(15),"
|
|
|
- "packing_type VARCHAR(10),"
|
|
|
- "carton_type VARCHAR(5) NOT NULL,"
|
|
|
- "operator INTEGER NOT NULL,"
|
|
|
- "case_number INTEGER NOT NULL,"
|
|
|
- "backet_weight DOUBLE NOT NULL,"
|
|
|
- "sort VARCHAR NOT NULL,"
|
|
|
- "tongbu VARCHAR(1) DEFAULT 0,"
|
|
|
- "remark VARCHAR);");
|
|
|
-
|
|
|
+// bool success = query.exec("CREATE TABLE dabaodata ("
|
|
|
+// "goods_id INTEGER NOT NULL,"
|
|
|
+// "code_single INTEGER NOT NULL,"
|
|
|
+// "level_id INTEGER NOT NULL,"
|
|
|
+// "tube_number INTEGER NOT NULL,"
|
|
|
+// "gross_weight DOUBLE NOT NULL,"
|
|
|
+// "net_weight DOUBLE NOT NULL,"
|
|
|
+// "machine_no VARCHAR(5),"
|
|
|
+// "packing_time VARCHAR(15),"
|
|
|
+// "packing_type VARCHAR(10),"
|
|
|
+// "carton_type VARCHAR(5) NOT NULL,"
|
|
|
+// "operator INTEGER NOT NULL,"
|
|
|
+// "case_number INTEGER NOT NULL,"
|
|
|
+// "backet_weight DOUBLE NOT NULL,"
|
|
|
+// "sort VARCHAR NOT NULL,"
|
|
|
+// "tongbu VARCHAR(1) DEFAULT 0,"
|
|
|
+// "remark VARCHAR);");
|
|
|
+
|
|
|
+ bool success = query.exec("CREATE TABLE product ("
|
|
|
+ "goods_id INTEGER NOT NULL,"
|
|
|
+ "code_single VARCHAR NOT NULL,"
|
|
|
+ "quantity INTEGER NOT NULL,"
|
|
|
+ "level_id INTEGER NOT NULL,"
|
|
|
+ "tube_number INTEGER NOT NULL,"
|
|
|
+ "gross_weight INTEGER NOT NULL,"
|
|
|
+ "net_weight INTEGER NOT NULL,"
|
|
|
+ "machine_no VARCHAR NOT NULL,"
|
|
|
+ "packing_time VARCHAR NOT NULL,"
|
|
|
+ "packing_type VARCHAR NOT NULL,"
|
|
|
+ "carton_type VARCHAR NOT NULL,"
|
|
|
+ "operator_id INTEGER NOT NULL,"
|
|
|
+ "remark VARCHAR);"
|
|
|
+ "tongbu VARCHAR(1) DEFAULT 0,");
|
|
|
|
|
|
if(success)
|
|
|
{
|
|
|
- qDebug() << QObject::tr("数据库表创建成功!\n");
|
|
|
+ qDebug() << QObject::tr("product数据库表创建成功!\n");
|
|
|
return true;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- qDebug() << QObject::tr("数据库表创建失败!\n");
|
|
|
+ qDebug() << QObject::tr("product数据库表创建失败!\n");
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-bool Database::changeState(QString xianghao)
|
|
|
+bool Database::createDetailsDatabase()
|
|
|
{
|
|
|
- QSqlDatabase db = QSqlDatabase::database("db"); //建立数据库连接
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
QSqlQuery query(db);
|
|
|
|
|
|
- bool success = query.exec("update dabaodata set tongbu=1 where case_number="+xianghao);
|
|
|
+ bool success = query.exec("CREATE TABLE details ("
|
|
|
+ "code_single VARCHAR NOT NULL,"
|
|
|
+ "case_number VARCHAR NOT NULL,"
|
|
|
+ "box_weight INTEGER NOT NULL,"
|
|
|
+ "tube_number INTEGER NOT NULL,"
|
|
|
+ "bucket_weight INTEGER NOT NULL,"
|
|
|
+ "gross_weight INTEGER NOT NULL,"
|
|
|
+ "net_weight INTEGER NOT NULL,"
|
|
|
+ "sort VARCHAR NOT NULL,"
|
|
|
+ "remark VARCHAR);");
|
|
|
+
|
|
|
if(success)
|
|
|
{
|
|
|
+ qDebug() << QObject::tr("details数据库表创建成功!\n");
|
|
|
return true;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
+ qDebug() << QObject::tr("details数据库表创建失败!\n");
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-bool Database::insert(QString &table, QStringList &names, QStringList &values)
|
|
|
+
|
|
|
+
|
|
|
+//bool Database::insert(QString &table, QStringList &names, QStringList &values)
|
|
|
+//{
|
|
|
+// if(names.size() != values.size())
|
|
|
+// {
|
|
|
+// return false;
|
|
|
+// }
|
|
|
+
|
|
|
+//// QSqlQuery query(QSqlDatabase::database());
|
|
|
+
|
|
|
+// QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
+// QSqlQuery query(db);
|
|
|
+
|
|
|
+// QString sql = QString("insert into ") + table + QString("(");
|
|
|
+
|
|
|
+// int i;
|
|
|
+// for(i = 0; i < names.size(); i++)
|
|
|
+// {
|
|
|
+// sql = sql + names.value(i);
|
|
|
+// if(i != names.size()-1)
|
|
|
+// {
|
|
|
+// sql += QString(",");
|
|
|
+// }
|
|
|
+// else
|
|
|
+// {
|
|
|
+// sql += QString(")");
|
|
|
+// }
|
|
|
+// }
|
|
|
+
|
|
|
+// sql = sql + QString("values (");
|
|
|
+
|
|
|
+// for(i = 0; i < values.size(); i++)
|
|
|
+// {
|
|
|
+// sql = sql + QString("'") + values.value(i) + QString("'");
|
|
|
+// if (i != values.size()-1)
|
|
|
+// {
|
|
|
+// sql += QString(",");
|
|
|
+// }
|
|
|
+// }
|
|
|
+// sql += QString(")");
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+// return (query.exec(sql)) ? true : false;
|
|
|
+//}
|
|
|
+
|
|
|
+bool Database::insertProduct(product_data productData)
|
|
|
{
|
|
|
- if(names.size() != values.size())
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
+ QSqlQuery query(db);
|
|
|
|
|
|
-// QSqlQuery query(QSqlDatabase::database());
|
|
|
+ query.prepare("INSERT INTO product(goods_id,"
|
|
|
+ "code_single, quantity, level_id, tube_number,"
|
|
|
+ "gross_weight, net_weight, machine_no, packing_time,"
|
|
|
+ "packing_type, carton_type, operator_id, remark)"
|
|
|
+ "VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)");
|
|
|
+ query.bindValue(0,productData.goods_id);
|
|
|
+ query.bindValue(1,productData.code_single);
|
|
|
+ query.bindValue(2,productData.quantity);
|
|
|
+ query.bindValue(3,productData.level_id);
|
|
|
+ query.bindValue(4,productData.tube_number);
|
|
|
+ query.bindValue(5,productData.gross_weight);
|
|
|
+ query.bindValue(6,productData.net_weight);
|
|
|
+ query.bindValue(7,productData.machine_no);
|
|
|
+ query.bindValue(8,productData.packing_time);
|
|
|
+ query.bindValue(9,productData.packing_type);
|
|
|
+ query.bindValue(10,productData.carton_type);
|
|
|
+ query.bindValue(11,productData.operator_id);
|
|
|
+ query.bindValue(12,productData.remark);
|
|
|
+
|
|
|
+ bool success=query.exec();
|
|
|
+ return success;
|
|
|
+}
|
|
|
|
|
|
- QSqlDatabase db = QSqlDatabase::database("db"); //建立数据库连接
|
|
|
+bool Database::insertDetails(details_data detailsData)
|
|
|
+{
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
QSqlQuery query(db);
|
|
|
|
|
|
- QString sql = QString("insert into ") + table + QString("(");
|
|
|
+ query.prepare("INSERT INTO details(code_single,"
|
|
|
+ "case_number, box_weight, tube_number, bucket_weight,"
|
|
|
+ "gross_weight, net_weight, sort, remark)"
|
|
|
+ "VALUES(?,?,?,?,?,?,?,?,?)");
|
|
|
+ query.bindValue(0,detailsData.code_single);
|
|
|
+ query.bindValue(1,detailsData.case_number);
|
|
|
+ query.bindValue(2,detailsData.box_weight);
|
|
|
+ query.bindValue(3,detailsData.tube_number);
|
|
|
+ query.bindValue(4,detailsData.bucket_weight);
|
|
|
+ query.bindValue(5,detailsData.gross_weight);
|
|
|
+ query.bindValue(6,detailsData.net_weight);
|
|
|
+ query.bindValue(7,detailsData.sort);
|
|
|
+ query.bindValue(8,detailsData.remark);
|
|
|
+
|
|
|
+ bool success=query.exec();
|
|
|
+ return success;
|
|
|
+}
|
|
|
+
|
|
|
+bool Database::changeState(QString codesingle)
|
|
|
+{
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
+ QSqlQuery query(db);
|
|
|
|
|
|
- int i;
|
|
|
- for(i = 0; i < names.size(); i++)
|
|
|
+ bool success = query.exec("update product set tongbu=1 where code_single="+codesingle);
|
|
|
+ if(success)
|
|
|
{
|
|
|
- sql = sql + names.value(i);
|
|
|
- if(i != names.size()-1)
|
|
|
- {
|
|
|
- sql += QString(",");
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- sql += QString(")");
|
|
|
- }
|
|
|
+ return true;
|
|
|
}
|
|
|
-
|
|
|
- sql = sql + QString("values (");
|
|
|
-
|
|
|
- for(i = 0; i < values.size(); i++)
|
|
|
+ else
|
|
|
{
|
|
|
- sql = sql + QString("'") + values.value(i) + QString("'");
|
|
|
- if (i != values.size()-1)
|
|
|
- {
|
|
|
- sql += QString(",");
|
|
|
- }
|
|
|
+ return false;
|
|
|
}
|
|
|
- sql += QString(")");
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- return (query.exec(sql)) ? true : false;
|
|
|
}
|
|
|
|
|
|
bool Database::update(QString &table, QStringList &names, QStringList &values, QString &expression)
|
|
|
@@ -131,7 +227,7 @@ bool Database::update(QString &table, QStringList &names, QStringList &values, Q
|
|
|
//UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
|
|
|
// QSqlQuery query(QSqlDatabase::database());
|
|
|
|
|
|
- QSqlDatabase db = QSqlDatabase::database("db"); //建立数据库连接
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
QSqlQuery query(db);
|
|
|
|
|
|
QString sql = QString("update ")+table+QString(" set ");
|
|
|
@@ -160,7 +256,7 @@ QList<QStringList> Database::GetValues(QString &table, QStringList &values)
|
|
|
{
|
|
|
dbmxdata.clear();
|
|
|
dbmxlist.clear();
|
|
|
- QSqlDatabase db = QSqlDatabase::database("db"); //建立数据库连接
|
|
|
+ QSqlDatabase db = QSqlDatabase::database("db");
|
|
|
QSqlQuery query(db);
|
|
|
|
|
|
QString sql = QString("select * from ") + table;
|