1
0
mirror of https://github.com/ManyakRus/crud_generator.git synced 2025-06-08 12:16:14 +02:00

260 lines
7.2 KiB
Go
Raw Normal View History

2023-09-28 17:45:44 +03:00
package logic
import (
2023-11-15 13:58:31 +03:00
"github.com/ManyakRus/crud_generator/internal/config"
2024-08-16 12:44:58 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files"
"github.com/ManyakRus/crud_generator/internal/create_files/alias"
2024-05-03 15:57:49 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/constants_file"
2024-09-06 13:14:05 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/crud"
2023-10-26 17:03:50 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/crud_starter"
"github.com/ManyakRus/crud_generator/internal/create_files/crud_starter_tables"
2024-04-08 17:42:13 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/crud_tables"
"github.com/ManyakRus/crud_generator/internal/create_files/entities_tables"
"github.com/ManyakRus/crud_generator/internal/create_files/env_file"
2023-11-15 17:59:21 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/generation_code_sh"
2023-11-17 14:57:47 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/grpc_client"
2024-08-14 11:15:01 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/grpc_client_func"
2023-11-16 12:59:02 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/grpc_client_tables"
2023-11-15 11:43:15 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/main_file"
2023-11-15 17:59:21 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/makefile"
"github.com/ManyakRus/crud_generator/internal/create_files/nrpc_client"
2024-11-02 11:53:38 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/object_tables"
"github.com/ManyakRus/crud_generator/internal/create_files/protobuf"
2024-04-04 15:18:28 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/readme_file"
"github.com/ManyakRus/crud_generator/internal/create_files/server_grpc_func"
2023-11-15 11:43:15 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/server_grpc_starter"
2024-04-08 17:42:13 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/server_grpc_tables"
2023-11-15 13:58:31 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/server_nrpc_starter"
2024-04-08 17:42:13 +03:00
"github.com/ManyakRus/crud_generator/internal/create_files/tables_tables"
2024-10-14 16:13:02 +03:00
"github.com/ManyakRus/crud_generator/internal/database"
2023-11-15 13:58:31 +03:00
"github.com/ManyakRus/crud_generator/internal/folders"
2024-09-12 17:54:59 +03:00
"github.com/ManyakRus/crud_generator/internal/load_configs"
2024-08-16 12:44:58 +03:00
"github.com/ManyakRus/crud_generator/internal/types"
2024-10-10 16:00:43 +03:00
"github.com/ManyakRus/crud_generator/pkg/dbmeta"
2023-09-28 17:45:44 +03:00
"github.com/ManyakRus/starter/log"
2023-11-15 13:58:31 +03:00
"github.com/ManyakRus/starter/micro"
2023-09-28 17:45:44 +03:00
)
//var MassTable []types.Table
2023-10-24 18:03:04 +03:00
func StartFillAll() error {
var err error
2023-09-28 17:45:44 +03:00
//заполним MapAll
2024-10-10 16:00:43 +03:00
SettingsFillFromDatabase := types.SettingsFillFromDatabase{}
SettingsFillFromDatabase.INCLUDE_TABLES = config.Settings.INCLUDE_TABLES
SettingsFillFromDatabase.EXCLUDE_TABLES = config.Settings.EXCLUDE_TABLES
SettingsFillFromDatabase.NEED_USE_DB_VIEWS = config.Settings.NEED_USE_DB_VIEWS
2024-10-14 16:13:02 +03:00
SettingsFillFromDatabase.MapDBTypes = dbmeta.GetMappings()
MapAll, err := database.FillMapTable(SettingsFillFromDatabase)
2023-09-28 17:45:44 +03:00
if err != nil {
log.Error("FillMapTable() error: ", err)
2023-10-24 18:03:04 +03:00
return err
2023-09-28 17:45:44 +03:00
}
2023-10-24 18:03:04 +03:00
if len(MapAll) == 0 {
2023-11-29 15:56:40 +03:00
log.Error("FillMapTable()error: len(MapAll) == 0")
2023-10-24 18:03:04 +03:00
return err
2023-09-28 17:45:44 +03:00
}
2024-10-15 15:24:54 +03:00
//загрузим FindModelBy .json
load_configs.LoadFindModelBy(MapAll)
2024-08-16 12:44:58 +03:00
//
2024-09-12 17:54:59 +03:00
FillGlobalVariables(MapAll)
2024-08-16 12:44:58 +03:00
2023-11-15 13:58:31 +03:00
//копируем все файлы
dir := micro.ProgramDir_bin()
err = folders.CopyAllFiles_Exclude_(dir+config.Settings.TEMPLATE_FOLDERNAME, dir+config.Settings.READY_FOLDERNAME)
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("folders.CopyAllFiles_Exclude_() error: ", err)
2023-11-15 13:58:31 +03:00
return err
}
2023-11-08 17:37:35 +03:00
2023-10-25 16:22:30 +03:00
//модель
2024-04-08 17:42:13 +03:00
err = entities_tables.CreateAllFiles(MapAll)
2023-10-25 16:22:30 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("model.CreateAllFiles() error: ", err)
2023-10-25 16:22:30 +03:00
return err
}
//db crud
2024-04-08 17:42:13 +03:00
err = crud_tables.CreateAllFiles(MapAll)
2023-10-26 11:33:12 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("db_crud_tables.CreateAllFiles() error: ", err)
2023-10-26 11:33:12 +03:00
return err
}
//grpc_server
2024-04-08 17:42:13 +03:00
err = server_grpc_tables.CreateAllFiles(MapAll)
2023-10-26 11:33:12 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("grpc_server.CreateAllFiles() error: ", err)
2023-10-26 11:33:12 +03:00
return err
}
2023-11-17 14:57:47 +03:00
//grpc_client tables
2023-11-16 12:59:02 +03:00
err = grpc_client_tables.CreateAllFiles(MapAll)
2023-10-25 16:22:30 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("grpc_client_tables.CreateAllFiles() error: ", err)
2023-10-25 16:22:30 +03:00
return err
}
2023-09-28 17:45:44 +03:00
2023-11-17 14:57:47 +03:00
//grpc_client
err = grpc_client.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("grpc_client.CreateAllFiles() error: ", err)
2023-11-17 14:57:47 +03:00
return err
}
//nrpc_client
err = nrpc_client.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("nrpc_client.CreateAllFiles() error: ", err)
return err
}
////nrpc_client tables
//err = nrpc_client_tables.CreateAllFiles(MapAll)
//if err != nil {
// //log.Error("nrpc_client_tables.CreateAllFiles() error: ", err)
// return err
//}
2023-10-26 14:18:38 +03:00
//grpc_proto
err = protobuf.CreateAllFiles(MapAll)
2023-10-26 14:18:38 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("protobuf.CreateAllFiles() error: ", err)
2023-10-26 14:18:38 +03:00
return err
}
2023-10-26 17:03:50 +03:00
//crud_starter
err = crud_starter.CreateAllFiles(MapAll)
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("crud_starter.CreateAllFiles() error: ", err)
2023-10-26 17:03:50 +03:00
return err
}
2023-11-15 11:43:15 +03:00
//main file
err = main_file.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("main_file.CreateAllFiles() error: ", err)
2023-11-15 11:43:15 +03:00
return err
}
//server_grpc_starter
err = server_grpc_starter.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("server_grpc_starter.CreateAllFiles() error: ", err)
2023-11-15 11:43:15 +03:00
return err
}
2023-11-15 13:58:31 +03:00
//server_nrpc_starter
err = server_nrpc_starter.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("server_nrpc_starter.CreateAllFiles() error: ", err)
2023-11-15 13:58:31 +03:00
return err
}
//server_grpc_func
err = server_grpc_func.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("server_grpc_func.CreateAllFiles() error: ", err)
return err
}
2023-11-15 17:59:21 +03:00
//makefile
err = makefile.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("makefile.CreateAllFiles() error: ", err)
2023-11-15 17:59:21 +03:00
return err
}
//generation_code.sh
err = generation_code_sh.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("generation_code_sh.CreateAllFiles() error: ", err)
2023-11-15 17:59:21 +03:00
return err
}
2023-11-16 15:08:10 +03:00
//tables
2024-04-08 17:42:13 +03:00
err = tables_tables.CreateAllFiles(MapAll)
2023-11-16 15:08:10 +03:00
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("db_tables.CreateAllFiles() error: ", err)
2023-11-16 15:08:10 +03:00
return err
}
//tables
err = crud_starter_tables.CreateAllFiles(MapAll)
if err != nil {
//log.Error("db_tables.CreateAllFiles() error: ", err)
return err
}
//env
err = env_file.CreateAllFiles()
if err != nil {
2023-11-29 15:56:40 +03:00
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
//alias
err = alias.CreateAllFiles()
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2024-04-04 15:18:28 +03:00
//readme
err = readme_file.CreateAllFiles()
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2024-05-03 15:57:49 +03:00
//constants
err = constants_file.CreateAllFiles()
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2024-08-14 11:15:01 +03:00
//grpc_client_func
err = grpc_client_func.CreateAllFiles()
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2024-09-06 13:14:05 +03:00
//crud
err = crud.CreateAllFiles()
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2024-11-02 11:53:38 +03:00
//objects
err = object_tables.CreateAllFiles(MapAll)
if err != nil {
//log.Error("env_file.CreateAllFiles() error: ", err)
return err
}
2023-10-24 18:03:04 +03:00
return err
2023-09-28 17:45:44 +03:00
}
2024-10-10 16:00:43 +03:00
// FillGlobalVariables - заполняет глобальные переменные
func FillGlobalVariables(MapAll map[string]*types.Table) {
// MassFindBy
Mass1 := create_files.FindMass_TableColumns(MapAll, types.MassFindBy_String)
types.MassFindBy = Mass1
// MassFindMassBy
Mass1 = create_files.FindMass_TableColumns(MapAll, types.MassFindMassBy_String)
types.MassFindMassBy = Mass1
// ReadAll
types.MapReadAll = load_configs.LoadReadAll(MapAll)
}