mirror of
https://github.com/ManyakRus/crud_generator.git
synced 2025-05-19 22:43:13 +02:00
127 lines
3.1 KiB
Go
127 lines
3.1 KiB
Go
package crud_tables
|
|
|
|
import (
|
|
"github.com/ManyakRus/crud_generator/internal/config"
|
|
"github.com/ManyakRus/crud_generator/internal/create_files"
|
|
"github.com/ManyakRus/crud_generator/internal/types"
|
|
"github.com/ManyakRus/starter/log"
|
|
"strings"
|
|
)
|
|
|
|
// CreateAllFiles - создаёт все файлы в папке db
|
|
func CreateAllFiles(MapAll map[string]*types.Table) error {
|
|
var err error
|
|
|
|
for _, Table1 := range MapAll {
|
|
//проверка что таблица нормальная
|
|
err1 := create_files.IsGoodTable(Table1)
|
|
if err1 != nil {
|
|
log.Warn(err1)
|
|
continue
|
|
}
|
|
|
|
//файлы crud
|
|
if config.Settings.NEED_CREATE_DB == true {
|
|
err = CreateFiles(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFiles() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
|
|
//тестовые файлы crud
|
|
if config.Settings.NEED_CREATE_DB_TEST == true {
|
|
err = CreateFilesTest(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesTest() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
|
|
//файлы UpdateEveryColumn
|
|
if config.Settings.NEED_CREATE_UPDATE_EVERY_COLUMN == true {
|
|
//файлы db update
|
|
err = CreateFilesUpdateEveryColumn(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFiles() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
|
|
//тестовые файлы db update
|
|
err = CreateFilesUpdateEveryColumnTest(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesTest() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
|
|
//файлы Cache
|
|
if config.Settings.NEED_CREATE_CACHE_API == true {
|
|
//файлы cache
|
|
if config.Settings.NEED_CREATE_CACHE_FILES == true {
|
|
err = CreateFilesCache(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFiles() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
|
|
//тестовые файлы cache
|
|
if config.Settings.NEED_CREATE_CACHE_TEST_FILES == true {
|
|
err = CreateFilesCacheTest(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesTest() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
|
|
//
|
|
err = CreateFilesFindBy(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesFindBy() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
|
|
//
|
|
err = CreateFilesFindByTest(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesFindByTest() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
|
|
//
|
|
err = CreateFilesFindMassBy(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesFindMassBy() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
|
|
//
|
|
err = CreateFilesFindMassByTest(Table1)
|
|
if err != nil {
|
|
log.Error("CreateFilesFindMassByTest() table: ", Table1.Name, " error: ", err)
|
|
return err
|
|
}
|
|
}
|
|
}
|
|
|
|
return err
|
|
}
|
|
|
|
// RenameFunctions - заменяет названия функций, на названия из файла
|
|
func RenameFunctions(TextDB string, Table1 *types.Table) string {
|
|
Otvet := TextDB
|
|
|
|
TableName := strings.ToLower(Table1.Name)
|
|
Rename1, ok := types.MapRenameFunctions[TableName]
|
|
if ok == false {
|
|
return Otvet
|
|
}
|
|
|
|
for _, v := range Rename1 {
|
|
Otvet = strings.ReplaceAll(Otvet, "func "+v.Old+"(", "func "+v.New+"(")
|
|
}
|
|
|
|
return Otvet
|
|
}
|