mirror of
https://github.com/ManyakRus/crud_generator.git
synced 2025-01-03 01:22:21 +02:00
сделал manual
This commit is contained in:
parent
4d7b0d3631
commit
75e717b43c
@ -17,16 +17,26 @@ import (
|
|||||||
func CreateAllFiles(MapAll map[string]*types.Table) error {
|
func CreateAllFiles(MapAll map[string]*types.Table) error {
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
|
//crud_starter.go
|
||||||
err = CreateFileCrudStarter(MapAll)
|
err = CreateFileCrudStarter(MapAll)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error("CreateFileCrudStarter() error: ", err)
|
log.Error("CreateFileCrudStarter() error: ", err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//crud_starter_manual.go
|
||||||
|
if config.Settings.NEED_CREATE_MANUAL_FILES == true {
|
||||||
|
err = CreateFileCrudStarter_manual(MapAll)
|
||||||
|
if err != nil {
|
||||||
|
log.Error("CreateFileCrudStarter_manual() error: ", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateFileCrudStarter - создаёт 1 файл в папке grpc
|
// CreateFileCrudStarter - создаёт 1 файл в папке crud_starter
|
||||||
func CreateFileCrudStarter(MapAll map[string]*types.Table) error {
|
func CreateFileCrudStarter(MapAll map[string]*types.Table) error {
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
@ -88,8 +98,7 @@ func CreateFileCrudStarter(MapAll map[string]*types.Table) error {
|
|||||||
// FindTextImport - возвращает текст всех функций .proto для таблицы
|
// FindTextImport - возвращает текст всех функций .proto для таблицы
|
||||||
func FindTextImport(MapAll map[string]*types.Table, ModelURL string) string {
|
func FindTextImport(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
Otvet := `
|
Otvet := `
|
||||||
import (
|
import (`
|
||||||
`
|
|
||||||
//сортировка по названию таблиц
|
//сортировка по названию таблиц
|
||||||
keys := make([]string, 0, len(MapAll))
|
keys := make([]string, 0, len(MapAll))
|
||||||
for k := range MapAll {
|
for k := range MapAll {
|
||||||
@ -99,10 +108,10 @@ import (
|
|||||||
|
|
||||||
//все таблицы
|
//все таблицы
|
||||||
TextStarter := ""
|
TextStarter := ""
|
||||||
TextModel := ""
|
//TextModel := ""
|
||||||
TextDB := ""
|
TextDB := ""
|
||||||
TextGRPC := ""
|
TextGRPC := ""
|
||||||
TextNRPC := ""
|
//TextNRPC := ""
|
||||||
for _, key1 := range keys {
|
for _, key1 := range keys {
|
||||||
Table1, ok := MapAll[key1]
|
Table1, ok := MapAll[key1]
|
||||||
if ok == false {
|
if ok == false {
|
||||||
@ -120,10 +129,10 @@ import (
|
|||||||
//TextModel = TextModel + FindTextImportModel1(Table1)
|
//TextModel = TextModel + FindTextImportModel1(Table1)
|
||||||
TextDB = TextDB + FindTextImportDB1(Table1)
|
TextDB = TextDB + FindTextImportDB1(Table1)
|
||||||
TextGRPC = TextGRPC + FindTextImportGRPC1(Table1)
|
TextGRPC = TextGRPC + FindTextImportGRPC1(Table1)
|
||||||
TextNRPC = TextNRPC + FindTextImportNRPC1(Table1)
|
//TextNRPC = TextNRPC + FindTextImportNRPC1(Table1)
|
||||||
}
|
}
|
||||||
|
|
||||||
Otvet = Otvet + TextStarter + "\n" + TextModel + "\n" + TextDB + "\n" + TextGRPC + "\n" + TextNRPC
|
Otvet = Otvet + TextStarter + "\n" + TextDB + "\n" + TextGRPC
|
||||||
|
|
||||||
Otvet = Otvet + "\n)"
|
Otvet = Otvet + "\n)"
|
||||||
|
|
||||||
@ -153,7 +162,7 @@ func FindTextImportDB1(Table1 *types.Table) string {
|
|||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
DB_URL := config.Settings.SERVICE_REPOSITORY_URL + "/" + config.Settings.TEMPLATE_FOLDERNAME_CRUD
|
DB_URL := config.Settings.SERVICE_REPOSITORY_URL + "/" + config.Settings.TEMPLATE_FOLDERNAME_CRUD
|
||||||
TableNameWithPrefix := config.Settings.PREFIX_CRUD + TableName
|
TableNameWithPrefix := config.Settings.PREFIX_CRUD + TableName
|
||||||
Otvet := "\n\t" + " \"" + DB_URL + "/" + TableNameWithPrefix + `"`
|
Otvet := "\n\t" + "\"" + DB_URL + "/" + TableNameWithPrefix + `"`
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
@ -176,7 +185,7 @@ func FindTextImportNRPC1(Table1 *types.Table) string {
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindText_InitCrudTransport_DB - возвращает текст всех функций .proto для таблицы
|
// FindText_InitCrudTransport_DB - возвращает текст для всех таблиц
|
||||||
func FindText_InitCrudTransport_DB(MapAll map[string]*types.Table, ModelURL string) string {
|
func FindText_InitCrudTransport_DB(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
Otvet := `
|
Otvet := `
|
||||||
// InitCrudTransport_DB - заполняет объекты crud для работы с БД напрямую
|
// InitCrudTransport_DB - заполняет объекты crud для работы с БД напрямую
|
||||||
@ -214,7 +223,7 @@ func InitCrudTransport_DB() {`
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextDB1 - возвращает текст для 1 таблицы
|
||||||
func FindTextDB1(Table1 *types.Table) string {
|
func FindTextDB1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(" + config.Settings.PREFIX_CRUD + TableName + ".Crud_DB{})"
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(" + config.Settings.PREFIX_CRUD + TableName + ".Crud_DB{})"
|
||||||
@ -222,7 +231,7 @@ func FindTextDB1(Table1 *types.Table) string {
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindTextNRPC - возвращает текст всех функций .proto для таблицы
|
// FindTextGRPC - возвращает текст для всех таблиц
|
||||||
func FindTextGRPC(MapAll map[string]*types.Table, ModelURL string) string {
|
func FindTextGRPC(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
Otvet := `
|
Otvet := `
|
||||||
// InitCrudTransport_GRPC - заполняет объекты crud для работы с БД напрямую
|
// InitCrudTransport_GRPC - заполняет объекты crud для работы с БД напрямую
|
||||||
@ -262,7 +271,7 @@ func InitCrudTransport_GRPC() {`
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC1 - возвращает текст для 1 таблицы
|
||||||
func FindTextGRPC1(Table1 *types.Table) string {
|
func FindTextGRPC1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(grpc_" + TableName + ".Crud_GRPC{})"
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(grpc_" + TableName + ".Crud_GRPC{})"
|
||||||
@ -270,7 +279,7 @@ func FindTextGRPC1(Table1 *types.Table) string {
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindTextNRPC - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC - возвращает текст для всех таблиц
|
||||||
func FindTextNRPC(MapAll map[string]*types.Table, ModelURL string) string {
|
func FindTextNRPC(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
Otvet := `
|
Otvet := `
|
||||||
// InitCrudTransport_NRPC - заполняет объекты crud для работы с БД напрямую
|
// InitCrudTransport_NRPC - заполняет объекты crud для работы с БД напрямую
|
||||||
@ -310,10 +319,200 @@ func InitCrudTransport_NRPC() {`
|
|||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC1 - возвращает текст 1 таблицы
|
||||||
func FindTextNRPC1(Table1 *types.Table) string {
|
func FindTextNRPC1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(nrpc_" + TableName + ".Crud_NRPC{})"
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(nrpc_" + TableName + ".Crud_NRPC{})"
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CreateFileCrudStarter_manual - создаёт 1 файл в папке crud_starter
|
||||||
|
func CreateFileCrudStarter_manual(MapAll map[string]*types.Table) error {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
if config.Settings.NEED_CREATE_DB == false {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
//чтение файлов
|
||||||
|
DirBin := micro.ProgramDir_bin()
|
||||||
|
//DirTemplates := DirBin + constants.FolderTemplates + micro.SeparatorFile()
|
||||||
|
DirReady := DirBin + config.Settings.READY_FOLDERNAME + micro.SeparatorFile()
|
||||||
|
//DirTemplatesCrudStarter := DirTemplates + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile()
|
||||||
|
//FilenameTemplateCrudStarter := DirTemplatesCrudStarter + "crud_starter.go_"
|
||||||
|
DirReadyCrudStarter := DirReady + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile()
|
||||||
|
FilenameReadyCrudStarter := DirReadyCrudStarter + "crud_starter_manual.go"
|
||||||
|
|
||||||
|
//создадим папку готовых файлов
|
||||||
|
folders.CreateFolder(DirReadyCrudStarter)
|
||||||
|
|
||||||
|
//
|
||||||
|
TextCrudStarter := config.Settings.TEXT_MODULE_GENERATED + `package crud_starter`
|
||||||
|
|
||||||
|
//найдём новый текст для каждой таблицы
|
||||||
|
RepositoryURL := config.Settings.SERVICE_REPOSITORY_URL
|
||||||
|
ModelURL := RepositoryURL + config.Settings.TEMPLATE_FOLDERNAME_MODEL
|
||||||
|
|
||||||
|
//импорт
|
||||||
|
TextImport := FindTextImport(MapAll, ModelURL)
|
||||||
|
TextCrudStarter = TextCrudStarter + "\n" + TextImport
|
||||||
|
|
||||||
|
//DB
|
||||||
|
TextDB := FindText_InitCrudTransport_DB_manual(MapAll, ModelURL)
|
||||||
|
TextCrudStarter = TextCrudStarter + "\n" + TextDB
|
||||||
|
|
||||||
|
//GRPC
|
||||||
|
if config.Settings.NEED_CREATE_GRPC == true {
|
||||||
|
TextGRPC := FindTextGRPC_manual(MapAll, ModelURL)
|
||||||
|
TextCrudStarter = TextCrudStarter + "\n" + TextGRPC
|
||||||
|
}
|
||||||
|
|
||||||
|
//NRPC
|
||||||
|
if config.Settings.NEED_CREATE_NRPC == true {
|
||||||
|
TextNRPC := FindTextNRPC_manual(MapAll, ModelURL)
|
||||||
|
TextCrudStarter = TextCrudStarter + "\n" + TextNRPC
|
||||||
|
}
|
||||||
|
|
||||||
|
//замена импортов на новые URL
|
||||||
|
TextCrudStarter = create_files.ReplaceServiceURLImports(TextCrudStarter)
|
||||||
|
|
||||||
|
//удаление пустого импорта
|
||||||
|
TextCrudStarter = create_files.DeleteEmptyImport(TextCrudStarter)
|
||||||
|
|
||||||
|
//запись файла
|
||||||
|
err = os.WriteFile(FilenameReadyCrudStarter, []byte(TextCrudStarter), constants.FILE_PERMISSIONS)
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindText_InitCrudTransport_DB_manual - возвращает текст для каждой таблицы
|
||||||
|
func FindText_InitCrudTransport_DB_manual(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
|
Otvet := `
|
||||||
|
// initCrudTransport_manual_DB - заполняет объекты crud для работы с БД напрямую
|
||||||
|
func initCrudTransport_manual_DB() {`
|
||||||
|
// if config.Settings.USE_DEFAULT_TEMPLATE == true {
|
||||||
|
// Otvet = Otvet + `
|
||||||
|
//`
|
||||||
|
// }
|
||||||
|
//сортировка по названию таблиц
|
||||||
|
keys := make([]string, 0, len(MapAll))
|
||||||
|
for k := range MapAll {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
sort.Strings(keys)
|
||||||
|
|
||||||
|
for _, key1 := range keys {
|
||||||
|
Table1, ok := MapAll[key1]
|
||||||
|
if ok == false {
|
||||||
|
log.Panic("MapAll[key1] not found, key: ", key1)
|
||||||
|
}
|
||||||
|
|
||||||
|
//проверка что таблица нормальная
|
||||||
|
err1 := create_files.CheckGoodTable(Table1)
|
||||||
|
if err1 != nil {
|
||||||
|
log.Warn(err1)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + FindTextDB_manual1(Table1)
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + "\n}"
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindTextDB_manual1 - возвращает текст для 1 таблицы
|
||||||
|
func FindTextDB_manual1(Table1 *types.Table) string {
|
||||||
|
TableName := strings.ToLower(Table1.Name)
|
||||||
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudManualInterface(" + config.Settings.PREFIX_CRUD + TableName + ".Crud_DB{})"
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindTextGRPC_manual - возвращает текст для всех таблиц
|
||||||
|
func FindTextGRPC_manual(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
|
Otvet := `
|
||||||
|
// initCrudTransport_manual_GRPC - заполняет объекты crud для работы с БД через протокол GRPC
|
||||||
|
func initCrudTransport_manual_GRPC() {`
|
||||||
|
|
||||||
|
// if config.Settings.USE_DEFAULT_TEMPLATE == true {
|
||||||
|
// Otvet = Otvet + `
|
||||||
|
//`
|
||||||
|
// }
|
||||||
|
|
||||||
|
//сортировка по названию таблиц
|
||||||
|
keys := make([]string, 0, len(MapAll))
|
||||||
|
for k := range MapAll {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
sort.Strings(keys)
|
||||||
|
|
||||||
|
for _, key1 := range keys {
|
||||||
|
Table1, ok := MapAll[key1]
|
||||||
|
if ok == false {
|
||||||
|
log.Panic("MapAll[key1] not found, key: ", key1)
|
||||||
|
}
|
||||||
|
|
||||||
|
//проверка что таблица нормальная
|
||||||
|
err1 := create_files.CheckGoodTable(Table1)
|
||||||
|
if err1 != nil {
|
||||||
|
log.Warn(err1)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + FindTextGRPC_manual1(Table1)
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + "\n}"
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindTextGRPC_manual1 - возвращает текст для 1 таблицы
|
||||||
|
func FindTextGRPC_manual1(Table1 *types.Table) string {
|
||||||
|
TableName := strings.ToLower(Table1.Name)
|
||||||
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudManualInterface(grpc_" + TableName + ".Crud_GRPC{})"
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindTextNRPC - возвращает текст для всех таблиц
|
||||||
|
func FindTextNRPC_manual(MapAll map[string]*types.Table, ModelURL string) string {
|
||||||
|
Otvet := `
|
||||||
|
// initCrudTransport_manual_NRPC - заполняет объекты crud для работы с БД через протокол NRPC
|
||||||
|
func initCrudTransport_manual_NRPC() {`
|
||||||
|
|
||||||
|
// if config.Settings.USE_DEFAULT_TEMPLATE == true {
|
||||||
|
// Otvet = Otvet + `
|
||||||
|
//`
|
||||||
|
// }
|
||||||
|
//сортировка по названию таблиц
|
||||||
|
keys := make([]string, 0, len(MapAll))
|
||||||
|
for k := range MapAll {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
sort.Strings(keys)
|
||||||
|
|
||||||
|
for _, key1 := range keys {
|
||||||
|
Table1, ok := MapAll[key1]
|
||||||
|
if ok == false {
|
||||||
|
log.Panic("MapAll[key1] not found, key: ", key1)
|
||||||
|
}
|
||||||
|
|
||||||
|
//проверка что таблица нормальная
|
||||||
|
err1 := create_files.CheckGoodTable(Table1)
|
||||||
|
if err1 != nil {
|
||||||
|
log.Warn(err1)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + FindTextGRPC_manual1(Table1) //GRPC будет делать функции NRPC
|
||||||
|
//Otvet = Otvet + FindTextNRPC1(Table1)
|
||||||
|
}
|
||||||
|
|
||||||
|
Otvet = Otvet + "\n}"
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user