2022-03-17 15:11:43 +00:00
|
|
|
|
package model
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"database/sql"
|
2022-08-20 02:31:18 +00:00
|
|
|
|
"sync"
|
2022-03-17 15:11:43 +00:00
|
|
|
|
|
2022-03-18 02:13:35 +00:00
|
|
|
|
_ "modernc.org/sqlite"
|
2022-03-17 15:11:43 +00:00
|
|
|
|
|
|
|
|
|
log "github.com/sirupsen/logrus"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
db *sql.DB
|
2022-08-20 02:31:18 +00:00
|
|
|
|
|
|
|
|
|
db1 *sql.DB
|
2022-03-17 15:11:43 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
|
var err error
|
2022-03-18 02:13:35 +00:00
|
|
|
|
db, err = sql.Open("sqlite", "./config/user.db")
|
2022-03-17 15:11:43 +00:00
|
|
|
|
if err != nil {
|
|
|
|
|
log.Errorln("用户数据库打开失败,请检查config目录权限")
|
|
|
|
|
log.Panicln(err.Error())
|
|
|
|
|
}
|
2022-07-31 12:33:39 +00:00
|
|
|
|
|
2022-03-17 15:11:43 +00:00
|
|
|
|
_, _ = db.Exec(`create table user
|
|
|
|
|
(
|
|
|
|
|
nick TEXT,
|
|
|
|
|
uid TEXT not null
|
|
|
|
|
constraint user_pk
|
|
|
|
|
primary key,
|
|
|
|
|
token TEXT not null,
|
2022-07-24 07:56:12 +00:00
|
|
|
|
login_time integer not null,
|
|
|
|
|
push_id TEXT
|
2022-03-17 15:11:43 +00:00
|
|
|
|
);
|
2022-08-18 07:39:03 +00:00
|
|
|
|
`)
|
2022-09-09 15:14:06 +00:00
|
|
|
|
|
|
|
|
|
_, _ = db.Exec(`
|
|
|
|
|
create table wechat_user(
|
|
|
|
|
open_id TEXT not null constraint user_pk primary key,
|
|
|
|
|
remark TEXT default '',
|
|
|
|
|
status INTEGER default 0,
|
|
|
|
|
last_request_time INTEGER not null
|
|
|
|
|
)
|
|
|
|
|
`)
|
2022-08-18 07:39:03 +00:00
|
|
|
|
_, _ = db.Exec(`alter table user
|
|
|
|
|
add status integer default 1;
|
2022-03-17 15:11:43 +00:00
|
|
|
|
`)
|
|
|
|
|
}
|
|
|
|
|
|
2022-08-20 02:31:18 +00:00
|
|
|
|
func initQuestionDb() {
|
|
|
|
|
once := sync.Once{}
|
|
|
|
|
once.Do(func() {
|
|
|
|
|
var err error
|
2022-08-26 15:00:28 +00:00
|
|
|
|
db1, err = sql.Open("sqlite", "./QuestionBank.db")
|
2022-08-20 02:31:18 +00:00
|
|
|
|
if err != nil {
|
2022-09-22 12:17:06 +00:00
|
|
|
|
log.Errorln("题目数据库打开失败,请检查QuestionDB是否存在")
|
2022-08-20 02:31:18 +00:00
|
|
|
|
log.Panicln(err.Error())
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
2022-03-17 15:11:43 +00:00
|
|
|
|
func ping() {
|
|
|
|
|
err := db.Ping()
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Errorln("数据库断开了连接")
|
|
|
|
|
}
|
|
|
|
|
}
|