|
|
@@ -19,11 +19,11 @@ class SQLiteContext extends SQLiteOpenHelper {
|
|
|
const dbPath = context.getDatabasePath(name).getAbsolutePath();
|
|
|
console.log("Creating database at: " + dbPath);
|
|
|
|
|
|
- // 如果需要强制重新创建表,先删除现有数据库
|
|
|
- // if (forceRecreate) {
|
|
|
+ // 只有在明确需要强制重新创建表时,才删除现有数据库
|
|
|
+ if (forceRecreate) {
|
|
|
console.log("Force recreating tables requested, deleting existing database if exists");
|
|
|
context.deleteDatabase(name);
|
|
|
- // }
|
|
|
+ }
|
|
|
|
|
|
//1版本号
|
|
|
super(UTSAndroid.getAppContext()!!, name, null, 1);
|
|
|
@@ -44,24 +44,291 @@ class SQLiteContext extends SQLiteOpenHelper {
|
|
|
const createTableSQLs = [
|
|
|
// app_user表结构
|
|
|
`CREATE TABLE IF NOT EXISTS app_user (
|
|
|
- id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
- username TEXT NOT NULL,
|
|
|
- name TEXT,
|
|
|
- userno INTEGER,
|
|
|
- password TEXT NOT NULL,
|
|
|
- token TEXT,
|
|
|
- status INTEGER NOT NULL DEFAULT 1,
|
|
|
- avatar TEXT,
|
|
|
- createtime TEXT,
|
|
|
- createuser INTEGER NOT NULL DEFAULT 1,
|
|
|
- updatetime TEXT,
|
|
|
- updateuser INTEGER NOT NULL DEFAULT 1,
|
|
|
- role TEXT,
|
|
|
- UNIQUE (id ASC),
|
|
|
- UNIQUE (username ASC),
|
|
|
- UNIQUE (userno ASC)
|
|
|
+ id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ username TEXT NOT NULL,
|
|
|
+ name TEXT,
|
|
|
+ userno INTEGER,
|
|
|
+ password TEXT NOT NULL,
|
|
|
+ token TEXT,
|
|
|
+ status INTEGER DEFAULT 1,
|
|
|
+ avatar TEXT,
|
|
|
+ createtime TEXT,
|
|
|
+ createuser INTEGER,
|
|
|
+ updatetime TEXT,
|
|
|
+ updateuser INTEGER,
|
|
|
+ role TEXT DEFAULT 'user',
|
|
|
+ UNIQUE (username ASC),
|
|
|
+ UNIQUE (userno ASC)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 日志表
|
|
|
+ `CREATE TABLE "app_log" (
|
|
|
+ "id" INTEGER NOT NULL UNIQUE,
|
|
|
+ "module" text,
|
|
|
+ "dataid" INTEGER,
|
|
|
+ "content" text,
|
|
|
+ "status" text,
|
|
|
+ "params" text,
|
|
|
+ "createtime" text,
|
|
|
+ "createuser" integer,
|
|
|
+ "updatetime" text,
|
|
|
+ "updateuser" integer,
|
|
|
+ PRIMARY KEY("id" AUTOINCREMENT)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 媒体信息表
|
|
|
+ `CREATE TABLE "app_media_info" (
|
|
|
+ "pdid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "workorder" TEXT,
|
|
|
+ "invname" TEXT,
|
|
|
+ "productno" TEXT,
|
|
|
+ "cardno" TEXT,
|
|
|
+ "model" TEXT,
|
|
|
+ "graphid" TEXT,
|
|
|
+ "ver" TEXT,
|
|
|
+ "phase" TEXT,
|
|
|
+ "processno" TEXT,
|
|
|
+ "progress" TEXT,
|
|
|
+ "status" INTEGER,
|
|
|
+ "createtime" TEXT,
|
|
|
+ "createuser" text,
|
|
|
+ "updatetime" TEXT,
|
|
|
+ "updateuser" text,
|
|
|
+ "uploadFlag" integer DEFAULT 0,
|
|
|
+ "uploadtime" text,
|
|
|
+ UNIQUE ("pdid" ASC)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 媒体记录表
|
|
|
+ `CREATE TABLE "app_media_record" (
|
|
|
+ "sxid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "senum" TEXT,
|
|
|
+ "photoitem" TEXT,
|
|
|
+ "productno" TEXT,
|
|
|
+ "part" TEXT,
|
|
|
+ "partno" TEXT,
|
|
|
+ "pk" TEXT,
|
|
|
+ "exampleid" text,
|
|
|
+ "descb" TEXT,
|
|
|
+ "num" INTEGER,
|
|
|
+ "status" INTEGER NOT NULL,
|
|
|
+ "date" TEXT,
|
|
|
+ "urlspl" TEXT,
|
|
|
+ "imgname" TEXT,
|
|
|
+ "urlpdt" TEXT,
|
|
|
+ "createtime" TEXT,
|
|
|
+ "createuser" text,
|
|
|
+ "updatetime" TEXT,
|
|
|
+ "updateuser" text,
|
|
|
+ "pid" INTEGER,
|
|
|
+ "uploadFlag" integer NOT NULL DEFAULT 0,
|
|
|
+ UNIQUE ("sxid" ASC)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 媒体任务表
|
|
|
+ `CREATE TABLE "app_media_task" (
|
|
|
+ "id" INTEGER NOT NULL UNIQUE,
|
|
|
+ "pid" INTEGER NOT NULL,
|
|
|
+ "name" TEXT,
|
|
|
+ "num" INTEGER,
|
|
|
+ "step" INTEGER,
|
|
|
+ "status" INTEGER NOT NULL DEFAULT 1,
|
|
|
+ "createtime" TEXT,
|
|
|
+ "createuser" INTEGER,
|
|
|
+ "updatetime" TEXT,
|
|
|
+ "updateuser" INTEGER DEFAULT 1,
|
|
|
+ PRIMARY KEY("id" AUTOINCREMENT)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 操作日志表
|
|
|
+ `CREATE TABLE "app_operate_log" (
|
|
|
+ "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "module" text,
|
|
|
+ "title" text,
|
|
|
+ "content" text,
|
|
|
+ "msg" text,
|
|
|
+ "createtime" text,
|
|
|
+ "createuser" text,
|
|
|
+ UNIQUE ("id" ASC)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 产品表
|
|
|
+ `CREATE TABLE "app_product" (
|
|
|
+ "pdid" integer NOT NULL UNIQUE,
|
|
|
+ "productno" text,
|
|
|
+ "cardno" text,
|
|
|
+ "model" text,
|
|
|
+ "workorder" text,
|
|
|
+ "invname" text,
|
|
|
+ "graphid" text,
|
|
|
+ "processno" text,
|
|
|
+ "ver" text,
|
|
|
+ "phase" text,
|
|
|
+ "progress" TEXT,
|
|
|
+ "status" text NOT NULL DEFAULT 1,
|
|
|
+ "createtime" text,
|
|
|
+ "createuser" integer NOT NULL DEFAULT 1,
|
|
|
+ "updatetime" text,
|
|
|
+ "updateuser" integer NOT NULL DEFAULT 1,
|
|
|
+ PRIMARY KEY("pdid" AUTOINCREMENT)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 产品点位表
|
|
|
+ `CREATE TABLE "app_product_points" (
|
|
|
+ "sxid" INTEGER NOT NULL UNIQUE,
|
|
|
+ "pid" INTEGER NOT NULL,
|
|
|
+ "senum" INTEGER,
|
|
|
+ "part" text,
|
|
|
+ "photoitem" text,
|
|
|
+ "desb" text,
|
|
|
+ "partno" text,
|
|
|
+ "num" INTEGER,
|
|
|
+ "status" INTEGER NOT NULL DEFAULT 1,
|
|
|
+ "urlspl" text,
|
|
|
+ "imgname" text,
|
|
|
+ "urlpdt" text,
|
|
|
+ "createtime" TEXT,
|
|
|
+ "createuser" integer,
|
|
|
+ "updatetime" TEXT,
|
|
|
+ "updateuser" integer,
|
|
|
+ PRIMARY KEY("sxid" AUTOINCREMENT)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 产品任务表
|
|
|
+ `CREATE TABLE "app_product_task" (
|
|
|
+ "id" INTEGER NOT NULL UNIQUE,
|
|
|
+ "pid" INTEGER NOT NULL,
|
|
|
+ "name" TEXT,
|
|
|
+ "num" INTEGER,
|
|
|
+ "step" INTEGER,
|
|
|
+ "status" INTEGER NOT NULL DEFAULT 1,
|
|
|
+ "createtime" TEXT,
|
|
|
+ "createuser" INTEGER,
|
|
|
+ "updatetime" TEXT,
|
|
|
+ "updateuser" INTEGER DEFAULT 1,
|
|
|
+ PRIMARY KEY("id" AUTOINCREMENT)
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 任务信息表
|
|
|
+ `CREATE TABLE "app_task_info" (
|
|
|
+ "pdid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "gxpk" text,
|
|
|
+ "pk_serial" text,
|
|
|
+ "cardno" text,
|
|
|
+ "productcode" text,
|
|
|
+ "model" text,
|
|
|
+ "workorder" text,
|
|
|
+ "invname" text,
|
|
|
+ "graphid" text,
|
|
|
+ "processno" text,
|
|
|
+ "gxno" text,
|
|
|
+ "ver" text,
|
|
|
+ "lastupdatetime" text,
|
|
|
+ "updateuser" text,
|
|
|
+ "uploadFlag" integer DEFAULT 0,
|
|
|
+ "uploadtime" text
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 任务关键工序表
|
|
|
+ `CREATE TABLE "app_task_keyprocess" (
|
|
|
+ "sxid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "pdid" INTEGER,
|
|
|
+ "pk" text,
|
|
|
+ "testapparatus" text,
|
|
|
+ "tableid" text,
|
|
|
+ "testrequirelower" text,
|
|
|
+ "testrequireupper" text,
|
|
|
+ "parametername" text,
|
|
|
+ "parameterorder" text,
|
|
|
+ "measureunit" text,
|
|
|
+ "parameterinstruction" text,
|
|
|
+ "parameterid" text,
|
|
|
+ "fk_creator" text,
|
|
|
+ "fk_prodcode" text,
|
|
|
+ "prodno" text,
|
|
|
+ "processstep" text,
|
|
|
+ "fk_processtask" text,
|
|
|
+ "measuredvaluemin" text,
|
|
|
+ "measuredvaluemax" text,
|
|
|
+ "result" TEXT,
|
|
|
+ "memo" TEXT,
|
|
|
+ "fks_operator" text,
|
|
|
+ "cs" text,
|
|
|
+ "ts" text,
|
|
|
+ "operator" TEXT
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 任务照片表
|
|
|
+ `CREATE TABLE "app_task_photo" (
|
|
|
+ "sxid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "pdid" INTEGER,
|
|
|
+ "pk" text,
|
|
|
+ "photographpoint" text,
|
|
|
+ "photographdescription" text,
|
|
|
+ "imgname" TEXT,
|
|
|
+ "photourl" text,
|
|
|
+ "exampleurl" text,
|
|
|
+ "photoname" text,
|
|
|
+ "fk_qcRecord" text,
|
|
|
+ "fk_prodcode" text,
|
|
|
+ "prodno" text,
|
|
|
+ "fk_creator" text,
|
|
|
+ "fks_operator" text,
|
|
|
+ "operator" text,
|
|
|
+ "processStep" text,
|
|
|
+ "fk_processTask" text,
|
|
|
+ "cs" text,
|
|
|
+ "ts" text,
|
|
|
+ "uploadFlag" integer NOT NULL DEFAULT 0
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 任务记录表
|
|
|
+ `CREATE TABLE "app_task_record" (
|
|
|
+ "sxid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "pdid" INTEGER,
|
|
|
+ "pk" text,
|
|
|
+ "fk_invcode" text,
|
|
|
+ "no" text,
|
|
|
+ "invcode" text,
|
|
|
+ "invname" text,
|
|
|
+ "processStep" text,
|
|
|
+ "fk_processTask" text,
|
|
|
+ "checkTarget" text,
|
|
|
+ "checknum" INTEGER,
|
|
|
+ "oknum" INTEGER,
|
|
|
+ "ngnum" INTEGER,
|
|
|
+ "status" text,
|
|
|
+ "result" text,
|
|
|
+ "checkTime" text,
|
|
|
+ "fk_creator" text,
|
|
|
+ "cs" text,
|
|
|
+ "ts" text
|
|
|
+ )`,
|
|
|
+
|
|
|
+ // 任务记录明细表
|
|
|
+ `CREATE TABLE "app_task_record_item" (
|
|
|
+ "sxid" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "psxid" INTEGER,
|
|
|
+ "pk" text,
|
|
|
+ "fk_qcRecord" text,
|
|
|
+ "fk_prodcode" text,
|
|
|
+ "prodno" text,
|
|
|
+ "name" text,
|
|
|
+ "no" text,
|
|
|
+ "nature" text,
|
|
|
+ "unit" text,
|
|
|
+ "maxNum" text,
|
|
|
+ "minNum" text,
|
|
|
+ "status" text,
|
|
|
+ "memo" text,
|
|
|
+ "measuredvalue" text,
|
|
|
+ "measuredvaluemax" TEXT,
|
|
|
+ "result" text,
|
|
|
+ "cs" text,
|
|
|
+ "ts" text,
|
|
|
+ "recorder" TEXT
|
|
|
)`
|
|
|
- // 可以添加更多表结构...
|
|
|
+
|
|
|
];
|
|
|
|
|
|
// 执行所有建表语句
|
|
|
@@ -228,7 +495,6 @@ export const createSQLiteContext = function (dbName: string): SQLiteContext {
|
|
|
// 确保数据库名称包含.db后缀
|
|
|
const name = dbName.endsWith('.db') ? dbName : dbName + '.db';
|
|
|
|
|
|
- console.log("Initializing SQLiteContext for database: " + name);
|
|
|
// 注意:根据接口定义,只接受一个参数,默认不强制重新创建表
|
|
|
return new SQLiteContext(name, false);
|
|
|
}
|