blob: b4ecdd123a9730a63543bec37be5bf24fe2c4a24 [file] [log] [blame]
package com.supwisdom.db
import android.content.Context
import android.database.sqlite.SQLiteDatabase
import android.database.sqlite.SQLiteOpenHelper
import java.util.concurrent.locks.Lock
import java.util.concurrent.locks.ReentrantLock
/**
** create by zzq on 2019/7/24
** @desc
**/
class DBTransdtlHelper private constructor(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, VERSION) {
companion object {
private val DB_NAME = "db_transdtl"
private val VERSION = 1
private var instance: DBTransdtlHelper? = null
const val TABLE_NAME_CONFIGPARA = "tb_configpara"
const val TABLE_NAME_DTL_ONLINE = "tb_dtl_online"
const val TABLE_NAME_DTL_OFFLINE = "tb_dtl_offline"
fun getInstance(context: Context): DBTransdtlHelper {
if (null == instance) {
synchronized(DBTransdtlHelper::class.java) {
if (null == instance) {
instance = DBTransdtlHelper(context)
}
}
}
return instance!!
}
}
/**
* SQL for create table
*/
private val CREATE_TABLE_NAME_CONFIGPARA = ("create table IF NOT EXISTS "
+ TABLE_NAME_CONFIGPARA + " ( "
+ BeanPropEnum.ConfigPara.id + " long primary key, "
+ BeanPropEnum.ConfigPara.mode + " integer, "
+ BeanPropEnum.ConfigPara.devphyid + " char(8), "
+ BeanPropEnum.ConfigPara.psamno + " char(12), "
+ BeanPropEnum.ConfigPara.epayIP + " varchar(128), "
+ BeanPropEnum.ConfigPara.epayPort + " integer, "
+ BeanPropEnum.ConfigPara.epayUri + " varchar(128), "
+ BeanPropEnum.ConfigPara.managePwd + " char(6),"
+ BeanPropEnum.ConfigPara.initOK + " integer ) ")
private val DROP_TABLE_NAME_CONFIGPARA = "DROP TABLE IF EXISTS $TABLE_NAME_CONFIGPARA"
private val CRAETE_TABLE_NAME_DTL_ONLINE = ("create table IF NOT EXISTS "
+ TABLE_NAME_DTL_ONLINE + " ( "
+ BeanPropEnum.TransdtlOnline.devphyid + " char(8),"
+ BeanPropEnum.TransdtlOnline.transdate + " char(8),"
+ BeanPropEnum.TransdtlOnline.transtime + " char(6),"
+ BeanPropEnum.TransdtlOnline.devseqno + " long primary key,"
+ BeanPropEnum.TransdtlOnline.cardno + " varchar(32),"
+ BeanPropEnum.TransdtlOnline.cardphyid + " varchar(32),"
+ BeanPropEnum.TransdtlOnline.qrcode + " varchar(254),"
+ BeanPropEnum.TransdtlOnline.transtype + " varchar(8),"
+ BeanPropEnum.TransdtlOnline.payamt + " integer,"
+ BeanPropEnum.TransdtlOnline.extraamt + " integer,"
+ BeanPropEnum.TransdtlOnline.balance + " integer,"
+ BeanPropEnum.TransdtlOnline.managefeetype + " varchar(10),"
+ BeanPropEnum.TransdtlOnline.username + " varchar(32),"
+ BeanPropEnum.TransdtlOnline.billno + " varchar(32),"
+ BeanPropEnum.TransdtlOnline.reversalflag + " varchar(8),"
+ BeanPropEnum.TransdtlOnline.reversalbillno + " varchar(32),"
+ BeanPropEnum.TransdtlOnline.status + " varchar(8),"
+ BeanPropEnum.TransdtlOnline.upflag + " integer )")
private val CRAETE_TABLE_NAME_DTL_OFFLINE = ("create table IF NOT EXISTS "
+ TABLE_NAME_DTL_OFFLINE + " ( "
+ BeanPropEnum.TransdtlOffline.devphyid + " char(8),"
+ BeanPropEnum.TransdtlOffline.transdate + " char(8),"
+ BeanPropEnum.TransdtlOffline.transtime + " char(6),"
+ BeanPropEnum.TransdtlOffline.devseqno + " long primary key,"
+ BeanPropEnum.TransdtlOffline.cardno + " varchar(32),"
+ BeanPropEnum.TransdtlOffline.cardphyid + " varchar(32),"
+ BeanPropEnum.TransdtlOffline.payamt + " integer,"
+ BeanPropEnum.TransdtlOffline.extraamt + " integer,"
+ BeanPropEnum.TransdtlOffline.reversalflag + " varchar(8),"
+ BeanPropEnum.TransdtlOffline.reversalseqno + " integer,"
+ BeanPropEnum.TransdtlOffline.reversaltransdate + " char(8),"
+ BeanPropEnum.TransdtlOffline.reversaltranstime + " char(6),"
+ BeanPropEnum.TransdtlOffline.status + " varchar(8),"
+ BeanPropEnum.TransdtlOffline.upflag + " integer )")
private val lock = ReentrantLock()
fun getLock(): Lock {
return lock
}
override fun onCreate(db: SQLiteDatabase) {
db.execSQL(CREATE_TABLE_NAME_CONFIGPARA)
db.execSQL(CRAETE_TABLE_NAME_DTL_ONLINE)
db.execSQL(CRAETE_TABLE_NAME_DTL_OFFLINE)
}
override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {
if (oldVersion < newVersion) {
}
}
}