Moving files and adding auth
This commit is contained in:
		
							
								
								
									
										64
									
								
								services/companydb/companydb.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								services/companydb/companydb.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
			
		||||
package services
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"database/sql"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"github.com/astaxie/beego/orm"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var dbs map[string]*sql.DB
 | 
			
		||||
 | 
			
		||||
// InitCompanyService Init companydb service and open system db connection
 | 
			
		||||
func InitCompanyService() {
 | 
			
		||||
	fmt.Println("Hello from init") // test if init gets called from each orm
 | 
			
		||||
	dbs := make(map[string]*sql.DB)
 | 
			
		||||
 | 
			
		||||
	orm.RegisterDataBase("default", "postgres", "host=127.0.0.1 port=5435 user=postgres password=postgre sslmode=disable")
 | 
			
		||||
 | 
			
		||||
	systemDB, err := sql.Open("postgres", "host=127.0.0.1 port=5435 user=postgres password=postgre dbname=company5 sslmode=disable")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		fmt.Println("Fatal: could not connect to db, exiting... Error:", err)
 | 
			
		||||
		os.Exit(1)
 | 
			
		||||
	}
 | 
			
		||||
	dbs["system"] = systemDB
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetDatabase Get orm and user information
 | 
			
		||||
func GetDatabase(token string) {
 | 
			
		||||
	// validate token
 | 
			
		||||
	// retrieve correct user/database
 | 
			
		||||
	// check if open first
 | 
			
		||||
	// try to open second
 | 
			
		||||
	// return error otherwise
 | 
			
		||||
	// return db with orm or error
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// CreateDatabase Create a database by copying the template
 | 
			
		||||
func CreateDatabase(token string) {
 | 
			
		||||
	/*
 | 
			
		||||
			db, err = sql.Open("postgres", "host=127.0.0.1 port=5435 user=postgres password=postgre dbname=company5 sslmode=disable")
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			log.Fatal(err)
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		or, err := orm.NewOrmWithDB("postgres", "temp", db)
 | 
			
		||||
	*/
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// DeleteDatabase Delete an entire database, this is very very dangerous :-)
 | 
			
		||||
func DeleteDatabase(token string) {
 | 
			
		||||
	/*
 | 
			
		||||
		db.Close()
 | 
			
		||||
		fmt.Println("Closed company5")
 | 
			
		||||
		//}
 | 
			
		||||
 | 
			
		||||
		res, err := o.Raw("DROP DATABASE company5;").Exec()
 | 
			
		||||
		if err == nil {
 | 
			
		||||
			num, _ := res.RowsAffected()
 | 
			
		||||
			fmt.Println("mysql row affected number: ", num)
 | 
			
		||||
		}
 | 
			
		||||
	*/
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user