parent
f8ef8eca9f
commit
ff2b0560f0
@ -1,60 +0,0 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/taoshihan1991/imaptool/config"
|
||||
"github.com/taoshihan1991/imaptool/database"
|
||||
"github.com/taoshihan1991/imaptool/tools"
|
||||
"os"
|
||||
)
|
||||
|
||||
func MysqlGetConf(c *gin.Context) {
|
||||
mysqlInfo := config.GetMysql()
|
||||
c.JSON(200, gin.H{
|
||||
"code": 200,
|
||||
"msg": "验证成功",
|
||||
"result": mysqlInfo,
|
||||
})
|
||||
}
|
||||
func MysqlSetConf(c *gin.Context) {
|
||||
|
||||
mysqlServer := c.PostForm("server")
|
||||
mysqlPort := c.PostForm("port")
|
||||
mysqlDb := c.PostForm("database")
|
||||
mysqlUsername := c.PostForm("username")
|
||||
mysqlPassword := c.PostForm("password")
|
||||
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8", mysqlUsername, mysqlPassword, mysqlServer, mysqlPort, mysqlDb)
|
||||
mysql := database.NewMysql()
|
||||
mysql.Dsn = dsn
|
||||
err := mysql.Ping()
|
||||
if err != nil {
|
||||
c.JSON(200, gin.H{
|
||||
"code": 403,
|
||||
"msg": "数据库连接失败:" + err.Error(),
|
||||
})
|
||||
return
|
||||
}
|
||||
isExist, _ := tools.IsFileExist(config.Dir)
|
||||
if !isExist {
|
||||
os.Mkdir(config.Dir, os.ModePerm)
|
||||
}
|
||||
fileConfig := config.MysqlConf
|
||||
file, _ := os.OpenFile(fileConfig, os.O_RDWR|os.O_CREATE, os.ModePerm)
|
||||
|
||||
format := `{
|
||||
"Server":"%s",
|
||||
"Port":"%s",
|
||||
"Database":"%s",
|
||||
"Username":"%s",
|
||||
"Password":"%s"
|
||||
}
|
||||
`
|
||||
data := fmt.Sprintf(format, mysqlServer, mysqlPort, mysqlDb, mysqlUsername, mysqlPassword)
|
||||
file.WriteString(data)
|
||||
|
||||
c.JSON(200, gin.H{
|
||||
"code": 200,
|
||||
"msg": "操作成功",
|
||||
})
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
package database
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
"github.com/taoshihan1991/imaptool/config"
|
||||
)
|
||||
|
||||
type Mysql struct {
|
||||
SqlDB *sql.DB
|
||||
Dsn string
|
||||
}
|
||||
|
||||
func NewMysql() *Mysql {
|
||||
mysql := config.CreateMysql()
|
||||
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&parseTime=True&loc=Local", mysql.Username, mysql.Password, mysql.Server, mysql.Port, mysql.Database)
|
||||
return &Mysql{
|
||||
Dsn: dsn,
|
||||
}
|
||||
}
|
||||
|
||||
func (db *Mysql) Ping() error {
|
||||
sqlDb, _ := sql.Open("mysql", db.Dsn)
|
||||
db.SqlDB = sqlDb
|
||||
return db.SqlDB.Ping()
|
||||
}
|
Loading…
Reference in new issue