1
0
mirror of https://github.com/ManyakRus/crud_generator.git synced 2024-12-25 00:46:20 +02:00

сделал initCrudTransport_manual_NRPC()

This commit is contained in:
Nikitin Aleksandr 2023-11-13 16:42:54 +03:00
parent cd23bcb86e
commit 37adeda7c1
11 changed files with 125 additions and 30 deletions

View File

@ -10,6 +10,7 @@ import (
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
"gorm.io/gorm"
"time"
"github.com/ManyakRus/starter/contextmain"
)
// TableName - имя таблицы в БД Postgres
@ -23,7 +24,7 @@ type Crud_DB struct {
func (crud Crud_DB) Read(m *lawsuit_status_types.LawsuitStatusType) error {
var err error
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -35,6 +36,11 @@ func (crud Crud_DB) Read(m *lawsuit_status_types.LawsuitStatusType) error {
func (crud Crud_DB) Read_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
id := int64(m.ID)
db := postgres_gorm.GetConnection()
@ -48,7 +54,7 @@ func (crud Crud_DB) Read_ctx(ctx context.Context, m *lawsuit_status_types.Lawsui
// Save - записывает новый или существующий объект в базу данных
func (crud Crud_DB) Save(m *lawsuit_status_types.LawsuitStatusType) error {
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -58,14 +64,20 @@ func (crud Crud_DB) Save(m *lawsuit_status_types.LawsuitStatusType) error {
// Save_ctx - записывает новый или существующий объект в базу данных
func (crud Crud_DB) Save_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
is_create := !micro.BoolFromInt64(int64(m.ID))
err := crud.create_update_ctx(ctx, m, is_create)
err = crud.create_update_ctx(ctx, m, is_create)
return err
}
// Update - записывает существующий объект в базу данных
func (crud Crud_DB) Update(m *lawsuit_status_types.LawsuitStatusType) error {
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -75,13 +87,19 @@ func (crud Crud_DB) Update(m *lawsuit_status_types.LawsuitStatusType) error {
// Update_ctx - записывает существующий объект в базу данных
func (crud Crud_DB) Update_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
err := crud.create_update_ctx(ctx, m, false)
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
err = crud.create_update_ctx(ctx, m, false)
return err
}
// Create - записывает новый объект в базу данных
func (crud Crud_DB) Create(m *lawsuit_status_types.LawsuitStatusType) error {
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -91,7 +109,13 @@ func (crud Crud_DB) Create(m *lawsuit_status_types.LawsuitStatusType) error {
// Create_ctx - записывает новый объект в базу данных
func (crud Crud_DB) Create_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
err := crud.create_update_ctx(ctx, m, true)
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
err = crud.create_update_ctx(ctx, m, true)
return err
}
@ -99,7 +123,7 @@ func (crud Crud_DB) Create_ctx(ctx context.Context, m *lawsuit_status_types.Laws
func (crud Crud_DB) create_update(m *lawsuit_status_types.LawsuitStatusType, is_create bool) error {
var err error
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -113,6 +137,11 @@ func (crud Crud_DB) create_update_ctx(ctx context.Context, m *lawsuit_status_typ
// log.Trace("start Save() ", TableName, " id: ", int64(m.ID))
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
// проверка ID
if is_create == true {
if int64(m.ID) != 0 {
@ -177,7 +206,7 @@ func (crud Crud_DB) create_update_ctx(ctx context.Context, m *lawsuit_status_typ
func (crud Crud_DB) Delete(m *lawsuit_status_types.LawsuitStatusType) error {
var err error
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -189,6 +218,11 @@ func (crud Crud_DB) Delete(m *lawsuit_status_types.LawsuitStatusType) error {
func (crud Crud_DB) Delete_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
m2 := lawsuit_status_types.LawsuitStatusType{}
m2.ID = m.ID
err = crud.Read_ctx(ctx, &m2)
@ -208,7 +242,7 @@ func (crud Crud_DB) Delete_ctx(ctx context.Context, m *lawsuit_status_types.Laws
func (crud Crud_DB) Restore(m *lawsuit_status_types.LawsuitStatusType) error {
var err error
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -220,6 +254,11 @@ func (crud Crud_DB) Restore(m *lawsuit_status_types.LawsuitStatusType) error {
func (crud Crud_DB) Restore_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
m2 := lawsuit_status_types.LawsuitStatusType{}
m2.ID = m.ID
err = crud.Read_ctx(ctx, &m2)
@ -245,7 +284,7 @@ func (crud Crud_DB) Find_ByExtID(m *lawsuit_status_types.LawsuitStatusType) erro
}
//
ctxMain := context.Background()
ctxMain := contextmain.GetContext()
ctx, ctxCancelFunc := context.WithTimeout(ctxMain, time.Second*time.Duration(constants.TIMEOUT_DB_SECONDS))
defer ctxCancelFunc()
@ -258,6 +297,11 @@ func (crud Crud_DB) Find_ByExtID(m *lawsuit_status_types.LawsuitStatusType) erro
func (crud Crud_DB) Find_ByExtID_ctx(ctx context.Context, m *lawsuit_status_types.LawsuitStatusType) error {
var err error
if micro.ContextDone(ctx) == true {
err = context.Canceled
return err
}
if m.ExtID == 0 {
err = errors.New("Error: ExtID=0")
return err

View File

@ -13,6 +13,7 @@ var versionLawsuitStatusType uint32
// crud_LawsuitStatusType - объект контроллер crud операций
var crud_LawsuitStatusType ICrud_LawsuitStatusType
// интерфейс стандартных CRUD операций, для использования в DB или GRPC или NRPC
type ICrud_LawsuitStatusType interface {
Read(*LawsuitStatusType) error
Save(*LawsuitStatusType) error

View File

@ -42,6 +42,11 @@ type SettingsINI struct {
PREFIX_SERVER_GRPC string
COMMENT_MODEL_STRUCT string
TEXT_MODULE_GENERATED string
NEED_CREATE_DB_TEST bool
NEED_CREATE_GRPC_SERVER_TEST bool
NEED_CREATE_GRPC_CLIENT_TEST bool
NEED_CREATE_NRPC_SERVER_TEST bool
NEED_CREATE_NRPC_CLIENT_TEST bool
}
// FillSettings загружает переменные окружения в структуру из переменных окружения
@ -108,6 +113,27 @@ func FillSettings() {
Settings.COMMENT_MODEL_STRUCT = os.Getenv("COMMENT_MODEL_STRUCT")
Settings.TEXT_MODULE_GENERATED = os.Getenv("TEXT_MODULE_GENERATED")
sNEED_CREATE_DB_TEST := os.Getenv("NEED_CREATE_DB_TEST")
NEED_CREATE_DB_TEST := BoolFromString(sNEED_CREATE_DB_TEST)
Settings.NEED_CREATE_DB_TEST = NEED_CREATE_DB_TEST
sNEED_CREATE_GRPC_SERVER_TEST := os.Getenv("NEED_CREATE_GRPC_SERVER_TEST")
NEED_CREATE_GRPC_SERVER_TEST := BoolFromString(sNEED_CREATE_GRPC_SERVER_TEST)
Settings.NEED_CREATE_GRPC_SERVER_TEST = NEED_CREATE_GRPC_SERVER_TEST
sNEED_CREATE_GRPC_CLIENT_TEST := os.Getenv("NEED_CREATE_GRPC_CLIENT_TEST")
NEED_CREATE_GRPC_CLIENT_TEST := BoolFromString(sNEED_CREATE_GRPC_CLIENT_TEST)
Settings.NEED_CREATE_GRPC_CLIENT_TEST = NEED_CREATE_GRPC_CLIENT_TEST
sNEED_CREATE_NRPC_SERVER_TEST := os.Getenv("NEED_CREATE_NRPC_SERVER_TEST")
NEED_CREATE_NRPC_TEST := BoolFromString(sNEED_CREATE_NRPC_SERVER_TEST)
Settings.NEED_CREATE_NRPC_SERVER_TEST = NEED_CREATE_NRPC_TEST
sNEED_CREATE_NRPC_CLIENT_TEST := os.Getenv("NEED_CREATE_NRPC_CLIENT_TEST")
NEED_CREATE_NRPC_CLIENT_TEST := BoolFromString(sNEED_CREATE_NRPC_CLIENT_TEST)
Settings.NEED_CREATE_NRPC_CLIENT_TEST = NEED_CREATE_NRPC_CLIENT_TEST
}
// CurrentDirectory - возвращает текущую директорию ОС

View File

@ -167,6 +167,11 @@ func FindText_InitCrudTransport_DB(MapAll map[string]*types.Table, ModelURL stri
Otvet := `
// InitCrudTransport_DB - заполняет объекты crud для работы с БД напрямую
func InitCrudTransport_DB() {`
if config.Settings.USE_DEFAULT_TEMPLATE == true {
Otvet = Otvet + `
initCrudTransport_manual_DB()
`
}
//сортировка по названию таблиц
keys := make([]string, 0, len(MapAll))
for k := range MapAll {
@ -209,6 +214,13 @@ func FindTextGRPC(MapAll map[string]*types.Table, ModelURL string) string {
Otvet := `
// InitCrudTransport_GRPC - заполняет объекты crud для работы с БД напрямую
func InitCrudTransport_GRPC() {`
if config.Settings.USE_DEFAULT_TEMPLATE == true {
Otvet = Otvet + `
initCrudTransport_manual_GRPC()
`
}
//сортировка по названию таблиц
keys := make([]string, 0, len(MapAll))
for k := range MapAll {
@ -251,6 +263,12 @@ func FindTextNRPC(MapAll map[string]*types.Table, ModelURL string) string {
Otvet := `
// InitCrudTransport_NRPC - заполняет объекты crud для работы с БД напрямую
func InitCrudTransport_NRPC() {`
if config.Settings.USE_DEFAULT_TEMPLATE == true {
Otvet = Otvet + `
initCrudTransport_manual_NRPC()
`
}
//сортировка по названию таблиц
keys := make([]string, 0, len(MapAll))
for k := range MapAll {

View File

@ -32,10 +32,12 @@ func CreateAllFiles(MapAll map[string]*types.Table) error {
}
//тестовые файлы db
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
if config.Settings.NEED_CREATE_DB_TEST == true {
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
}
}
}

View File

@ -31,10 +31,12 @@ func CreateAllFiles(MapAll map[string]*types.Table) error {
}
//тестовые файлы grpc_client
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
if config.Settings.NEED_CREATE_GRPC_CLIENT_TEST == true {
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
}
}
}

View File

@ -31,13 +31,14 @@ func CreateAllFiles(MapAll map[string]*types.Table) error {
}
//тестовые файлы grpc_server
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
if config.Settings.NEED_CREATE_GRPC_SERVER_TEST == true {
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
}
}
}
return err
}

View File

@ -93,7 +93,7 @@ func CreateFilesModel_struct(Table1 *types.Table, DirTemplatesModel, DirReadyMod
//
TextModel = strings.ReplaceAll(TextModel, config.Settings.TEXT_TEMPLATE_MODEL, ModelName)
TextModel = strings.ReplaceAll(TextModel, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name)
TextModel = config.Settings.TEXT_MODULE_GENERATED + TextModel
//TextModel = config.Settings.TEXT_MODULE_GENERATED + TextModel
if config.Settings.HAS_IS_DELETED == true {
TextModel = DeleteFuncDelete(TextModel, ModelName, Table1)

View File

@ -31,13 +31,14 @@ func CreateAllFiles(MapAll map[string]*types.Table) error {
}
//тестовые файлы nrpc_client
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
if config.Settings.NEED_CREATE_NRPC_CLIENT_TEST == true {
err = CreateTestFiles(Table1)
if err != nil {
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
return err
}
}
}
return err
}