mirror of
https://github.com/ManyakRus/crud_generator.git
synced 2024-12-22 00:36:41 +02:00
сделал ./crud_functions_rename.json
This commit is contained in:
parent
5c6452cd6d
commit
67b9f1cb39
@ -5,7 +5,8 @@ FILEMAIN=./cmd/$(SERVICENAME)/main.go
|
|||||||
FILEAPP=./bin/$(SERVICENAME)
|
FILEAPP=./bin/$(SERVICENAME)
|
||||||
|
|
||||||
NEW_REPO=$(SERVICENAME)
|
NEW_REPO=$(SERVICENAME)
|
||||||
GENERATION_PROTO=cd ./api && ./generation_code.sh
|
CD_GENERATION_PROTO=cd ./api
|
||||||
|
GENERATION_PROTO=generation_code.sh
|
||||||
|
|
||||||
|
|
||||||
run:
|
run:
|
||||||
@ -53,6 +54,7 @@ conn:
|
|||||||
init:
|
init:
|
||||||
clear
|
clear
|
||||||
go mod init gitlab.aescorp.ru/dsp_dev/claim/sync_service
|
go mod init gitlab.aescorp.ru/dsp_dev/claim/sync_service
|
||||||
|
$(CD_GENERATION_PROTO)
|
||||||
$(GENERATION_PROTO)
|
$(GENERATION_PROTO)
|
||||||
go mod tidy
|
go mod tidy
|
||||||
go mod vendor
|
go mod vendor
|
@ -1,3 +1,14 @@
|
|||||||
{
|
{
|
||||||
|
"lawsuit_payments.id": "alias.PaymentId",
|
||||||
|
"lawsuit_payments.invoice_id": "alias.InvoiceId",
|
||||||
|
"lawsuit_payments.lawsuit_id": "alias.LawsuitId",
|
||||||
|
"lawsuit_payments.id": "alias.PaymentId",
|
||||||
|
"invoice_debt_type_stats.invoice_id": "alias.InvoiceId",
|
||||||
|
"invoice_debt_type_stats.lawsuit_id": "alias.LawsuitId",
|
||||||
|
"contract_black_items.contract_number": "alias.ContractNumber",
|
||||||
|
"contract_white_items.contract_number": "alias.ContractNumber",
|
||||||
|
"lawsuits.number_claim": "alias.ClaimNumber",
|
||||||
|
"lawsuits.number": "alias.LawsuitNumber",
|
||||||
|
"contracts.number": "alias.ContractNumber"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,2 +1,8 @@
|
|||||||
{
|
{
|
||||||
|
"lawsuits": [
|
||||||
|
{
|
||||||
|
"old": "create_update_ctx",
|
||||||
|
"new": "create_update_ctx_original"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
@ -1,2 +1,3 @@
|
|||||||
{
|
{
|
||||||
|
"lawsuits": "NewLawsuit,AsLawsuit,create_update_ctx"
|
||||||
}
|
}
|
||||||
|
@ -1,2 +1,19 @@
|
|||||||
{
|
{
|
||||||
|
"inn": "INN",
|
||||||
|
"kpp": "KPP",
|
||||||
|
"okpo": "OKPO",
|
||||||
|
"ogrn": "OGRN",
|
||||||
|
"okato": "OKATO",
|
||||||
|
"nsi_flat": "NSIFlat",
|
||||||
|
"nsi_flat_id": "NSIFlatID",
|
||||||
|
"nsi_id": "NSIID",
|
||||||
|
"www": "WWW",
|
||||||
|
"bik": "BIK",
|
||||||
|
"city_name": "City",
|
||||||
|
"edms_link": "EDMSLink",
|
||||||
|
"code_nsi": "CodeNSI",
|
||||||
|
"json_updated_at": "JSONUpdatedAt",
|
||||||
|
"pdf_updated_at": "PDFUpdatedAt",
|
||||||
|
"pdf_file_id": "PDFFileID",
|
||||||
|
"json_file_id": "JSONFileID"
|
||||||
}
|
}
|
@ -1,2 +1,4 @@
|
|||||||
{
|
{
|
||||||
|
"ext_id": true,
|
||||||
|
"created_at": false
|
||||||
}
|
}
|
||||||
|
@ -21,15 +21,15 @@ DB_PASSWORD=
|
|||||||
INCLUDE_TABLES=""
|
INCLUDE_TABLES=""
|
||||||
|
|
||||||
#INCLUDE_TABLES - table name ignore filter. Regular expression
|
#INCLUDE_TABLES - table name ignore filter. Regular expression
|
||||||
EXCLUDE_TABLES=
|
EXCLUDE_TABLES="ext_"
|
||||||
|
|
||||||
#---------------------Template settings---------------------
|
#---------------------Template settings---------------------
|
||||||
|
|
||||||
#SERVICE_REPOSITORY_URL - URL of your new service repository (Github, gitlab, etc.)
|
#SERVICE_REPOSITORY_URL - URL of your new service repository (Github, gitlab, etc.)
|
||||||
SERVICE_REPOSITORY_URL="gitlab.aescorp.ru/dsp_dev/claim/crud_service"
|
SERVICE_REPOSITORY_URL="gitlab.aescorp.ru/dsp_dev/claim/sync_service"
|
||||||
|
|
||||||
#SERVICE_NAME - service name for your new service
|
#SERVICE_NAME - service name for your new service
|
||||||
SERVICE_NAME=crud_service
|
SERVICE_NAME=sync_service
|
||||||
|
|
||||||
#TEMPLATE_SERVICE_NAME - service name in your template files
|
#TEMPLATE_SERVICE_NAME - service name in your template files
|
||||||
TEMPLATE_SERVICE_NAME=sync_service
|
TEMPLATE_SERVICE_NAME=sync_service
|
||||||
@ -96,7 +96,7 @@ TEXT_TEMPLATE_TABLENAME="lawsuit_status_types"
|
|||||||
USE_DEFAULT_TEMPLATE=true
|
USE_DEFAULT_TEMPLATE=true
|
||||||
|
|
||||||
#HAS_IS_DELETED - fill "true" if you have "is_deleted" column, and want Delete() Restore() functions.
|
#HAS_IS_DELETED - fill "true" if you have "is_deleted" column, and want Delete() Restore() functions.
|
||||||
HAS_IS_DELETED=false
|
HAS_IS_DELETED=true
|
||||||
|
|
||||||
#---------------------Create files settings---------------------
|
#---------------------Create files settings---------------------
|
||||||
|
|
||||||
|
@ -7,7 +7,6 @@ import (
|
|||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/grpc/grpc_proto"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/grpc/grpc_proto"
|
||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
||||||
"testing"
|
"testing"
|
||||||
"math"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// LawsuitStatusType_ID_Test - ID таблицы для тестирования
|
// LawsuitStatusType_ID_Test - ID таблицы для тестирования
|
||||||
@ -38,7 +37,7 @@ func Test_server_LawsuitStatusType_Delete(t *testing.T) {
|
|||||||
|
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
Request := grpc_proto.RequestId{}
|
Request := grpc_proto.RequestId{}
|
||||||
Request.Id = math.MinInt64
|
Request.Id = LawsuitStatusType_ID_Test
|
||||||
Request.VersionModel = lawsuit_status_types.LawsuitStatusType{}.GetStructVersion()
|
Request.VersionModel = lawsuit_status_types.LawsuitStatusType{}.GetStructVersion()
|
||||||
|
|
||||||
server1 := &ServerGRPC{}
|
server1 := &ServerGRPC{}
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
package crud_starter_lawsuit_status_types
|
||||||
|
|
||||||
|
import (
|
||||||
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
||||||
|
)
|
||||||
|
|
||||||
|
// SetCrudInterface - заполняет интерфейс crud: DB, GRPC, NRPC
|
||||||
|
func SetCrudInterface(crud lawsuit_status_types.ICrud_LawsuitStatusType) {
|
||||||
|
lawsuit_status_types.Crud_LawsuitStatusType = crud
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
package starter_crud_starter_lawsuit_status_types
|
||||||
|
|
||||||
|
import (
|
||||||
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/db/crud/crud_lawsuit_status_types"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestSetCrudInterface(t *testing.T) {
|
||||||
|
crud := crud_lawsuit_status_types.Crud_DB{}
|
||||||
|
|
||||||
|
SetCrudInterface(crud)
|
||||||
|
}
|
@ -4,7 +4,6 @@ import (
|
|||||||
config "github.com/ManyakRus/starter/config_main"
|
config "github.com/ManyakRus/starter/config_main"
|
||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/grpc/grpc_client"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/grpc/grpc_client"
|
||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
||||||
"math"
|
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -111,12 +110,45 @@ func TestDelete(t *testing.T) {
|
|||||||
|
|
||||||
crud := Crud_GRPC{}
|
crud := Crud_GRPC{}
|
||||||
Otvet := lawsuit_status_types.LawsuitStatusType{}
|
Otvet := lawsuit_status_types.LawsuitStatusType{}
|
||||||
Otvet.ID = math.MinInt64
|
Otvet.ID = Postgres_ID_Test
|
||||||
|
err := crud.Read(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestRead() error: ", err)
|
||||||
|
}
|
||||||
|
|
||||||
err := crud.Delete(&Otvet)
|
if Otvet.IsDeleted == false {
|
||||||
|
err = crud.Delete(&Otvet)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Error("TestDelete() error: ", err)
|
t.Error("TestDelete() error: ", err)
|
||||||
}
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
|
||||||
|
err = crud.Restore(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
err = crud.Restore(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
|
||||||
|
err = crud.Delete(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestFindByExtID(t *testing.T) {
|
func TestFindByExtID(t *testing.T) {
|
||||||
|
@ -5,7 +5,6 @@ import (
|
|||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/nrpc/nrpc_client"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/network/nrpc/nrpc_client"
|
||||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/object_model/entities/lawsuit_status_types"
|
||||||
"testing"
|
"testing"
|
||||||
"math"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Postgres_ID_Test - ID таблицы для тестирования
|
// Postgres_ID_Test - ID таблицы для тестирования
|
||||||
@ -111,11 +110,45 @@ func TestDelete(t *testing.T) {
|
|||||||
|
|
||||||
crud := Crud_NRPC{}
|
crud := Crud_NRPC{}
|
||||||
Otvet := lawsuit_status_types.LawsuitStatusType{}
|
Otvet := lawsuit_status_types.LawsuitStatusType{}
|
||||||
Otvet.ID = math.MinInt64
|
Otvet.ID = Postgres_ID_Test
|
||||||
err := crud.Delete(&Otvet)
|
err := crud.Read(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestRead() error: ", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
if Otvet.IsDeleted == false {
|
||||||
|
err = crud.Delete(&Otvet)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Error("TestDelete() error: ", err)
|
t.Error("TestDelete() error: ", err)
|
||||||
}
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
|
||||||
|
err = crud.Restore(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
err = crud.Restore(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
|
||||||
|
err = crud.Delete(&Otvet)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("TestDelete() error: ", err)
|
||||||
|
}
|
||||||
|
if Otvet.ID == 0 {
|
||||||
|
t.Error("TestDelete() error: ID =0")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestFindByExtID(t *testing.T) {
|
func TestFindByExtID(t *testing.T) {
|
||||||
|
@ -11,8 +11,8 @@ import (
|
|||||||
// versionLawsuitStatusType - версия структуры модели, с учётом имен и типов полей
|
// versionLawsuitStatusType - версия структуры модели, с учётом имен и типов полей
|
||||||
var versionLawsuitStatusType uint32
|
var versionLawsuitStatusType uint32
|
||||||
|
|
||||||
// crud_LawsuitStatusType - объект контроллер crud операций
|
// Crud_LawsuitStatusType - объект контроллер crud операций
|
||||||
var crud_LawsuitStatusType ICrud_LawsuitStatusType
|
var Crud_LawsuitStatusType ICrud_LawsuitStatusType
|
||||||
|
|
||||||
// интерфейс стандартных CRUD операций, для использования в DB или GRPC или NRPC
|
// интерфейс стандартных CRUD операций, для использования в DB или GRPC или NRPC
|
||||||
type ICrud_LawsuitStatusType interface {
|
type ICrud_LawsuitStatusType interface {
|
||||||
@ -92,84 +92,84 @@ func (m LawsuitStatusType) GetJSON() (string, error) {
|
|||||||
|
|
||||||
// Read - находит запись в БД по ID, и заполняет в объект
|
// Read - находит запись в БД по ID, и заполняет в объект
|
||||||
func (m *LawsuitStatusType) Read() error {
|
func (m *LawsuitStatusType) Read() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Read(m)
|
err := Crud_LawsuitStatusType.Read(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save - записывает объект в БД по ID
|
// Save - записывает объект в БД по ID
|
||||||
func (m *LawsuitStatusType) Save() error {
|
func (m *LawsuitStatusType) Save() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Save(m)
|
err := Crud_LawsuitStatusType.Save(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update - обновляет объект в БД по ID
|
// Update - обновляет объект в БД по ID
|
||||||
func (m *LawsuitStatusType) Update() error {
|
func (m *LawsuitStatusType) Update() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Update(m)
|
err := Crud_LawsuitStatusType.Update(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create - создаёт объект в БД с новым ID
|
// Create - создаёт объект в БД с новым ID
|
||||||
func (m *LawsuitStatusType) Create() error {
|
func (m *LawsuitStatusType) Create() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Create(m)
|
err := Crud_LawsuitStatusType.Create(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Delete - устанавливает признак пометки удаления в БД
|
// Delete - устанавливает признак пометки удаления в БД
|
||||||
func (m *LawsuitStatusType) Delete() error {
|
func (m *LawsuitStatusType) Delete() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Delete(m)
|
err := Crud_LawsuitStatusType.Delete(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Restore - снимает признак пометки удаления в БД
|
// Restore - снимает признак пометки удаления в БД
|
||||||
func (m *LawsuitStatusType) Restore() error {
|
func (m *LawsuitStatusType) Restore() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Restore(m)
|
err := Crud_LawsuitStatusType.Restore(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find_ByExtID - находит объект по ExtID
|
// Find_ByExtID - находит объект по ExtID
|
||||||
func (m *LawsuitStatusType) Find_ByExtID() error {
|
func (m *LawsuitStatusType) Find_ByExtID() error {
|
||||||
if crud_LawsuitStatusType == nil {
|
if Crud_LawsuitStatusType == nil {
|
||||||
return constants.ErrorCrudIsNotInit
|
return constants.ErrorCrudIsNotInit
|
||||||
}
|
}
|
||||||
|
|
||||||
err := crud_LawsuitStatusType.Find_ByExtID(m)
|
err := Crud_LawsuitStatusType.Find_ByExtID(m)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetCrudInterface - заполняет интерфейс crud: DB, GRPC, NRPC
|
// SetCrudInterface - заполняет интерфейс crud: DB, GRPC, NRPC
|
||||||
func (m LawsuitStatusType) SetCrudInterface(crud ICrud_LawsuitStatusType) {
|
func (m LawsuitStatusType) SetCrudInterface(crud ICrud_LawsuitStatusType) {
|
||||||
crud_LawsuitStatusType = crud
|
Crud_LawsuitStatusType = crud
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -35,3 +35,7 @@ const SERVER_GRPC_FUNC_FILENAME = "server_grpc_func.go"
|
|||||||
|
|
||||||
const MAKEFILE_FILENAME = "Makefile"
|
const MAKEFILE_FILENAME = "Makefile"
|
||||||
const ENV_FILENAME = ".env"
|
const ENV_FILENAME = ".env"
|
||||||
|
|
||||||
|
const STARTER_TABLES_FILENAME = "starter_tables.go_"
|
||||||
|
const STARTER_TABLES_FILENAME_TEST = "starter_tables_test.go_"
|
||||||
|
const STARTER_TABLES_PREFIX = "crud_starter_"
|
||||||
|
@ -98,6 +98,7 @@ import (
|
|||||||
sort.Strings(keys)
|
sort.Strings(keys)
|
||||||
|
|
||||||
//все таблицы
|
//все таблицы
|
||||||
|
TextStarter := ""
|
||||||
TextModel := ""
|
TextModel := ""
|
||||||
TextDB := ""
|
TextDB := ""
|
||||||
TextGRPC := ""
|
TextGRPC := ""
|
||||||
@ -115,19 +116,29 @@ import (
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
TextModel = TextModel + FindTextImportModel1(Table1)
|
TextStarter = TextStarter + FindTextImportStarter1(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 + TextModel + "\n" + TextDB + "\n" + TextGRPC + "\n" + TextNRPC
|
Otvet = Otvet + TextStarter + "\n" + TextModel + "\n" + TextDB + "\n" + TextGRPC + "\n" + TextNRPC
|
||||||
|
|
||||||
Otvet = Otvet + "\n)"
|
Otvet = Otvet + "\n)"
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FindTextImportStarter1 - возвращает текст импорта crud_starter_ для 1 таблицы
|
||||||
|
func FindTextImportStarter1(Table1 *types.Table) string {
|
||||||
|
TableName := strings.ToLower(Table1.Name)
|
||||||
|
DB_URL := config.Settings.SERVICE_REPOSITORY_URL + "/" + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + "/" + constants.STARTER_TABLES_PREFIX + TableName
|
||||||
|
Otvet := "\n\t\"" + DB_URL + `"`
|
||||||
|
|
||||||
|
return Otvet
|
||||||
|
}
|
||||||
|
|
||||||
// FindTextImportModel1 - возвращает текст импорта Model для 1 таблицы
|
// FindTextImportModel1 - возвращает текст импорта Model для 1 таблицы
|
||||||
func FindTextImportModel1(Table1 *types.Table) string {
|
func FindTextImportModel1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
@ -206,8 +217,7 @@ func InitCrudTransport_DB() {`
|
|||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
||||||
func FindTextDB1(Table1 *types.Table) string {
|
func FindTextDB1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
ModelName := Table1.NameGo
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(" + config.Settings.PREFIX_CRUD + TableName + ".Crud_DB{})"
|
||||||
Otvet := "\n\t" + TableName + "." + ModelName + "{}.SetCrudInterface(" + config.Settings.PREFIX_CRUD + TableName + ".Crud_DB{})"
|
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
@ -255,8 +265,7 @@ func InitCrudTransport_GRPC() {`
|
|||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
||||||
func FindTextGRPC1(Table1 *types.Table) string {
|
func FindTextGRPC1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
ModelName := Table1.NameGo
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(grpc_" + TableName + ".Crud_GRPC{})"
|
||||||
Otvet := "\n\t" + TableName + "." + ModelName + "{}.SetCrudInterface(grpc_" + TableName + ".Crud_GRPC{})"
|
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
@ -303,8 +312,7 @@ func InitCrudTransport_NRPC() {`
|
|||||||
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
// FindTextNRPC1 - возвращает текст всех функций .proto для таблицы
|
||||||
func FindTextNRPC1(Table1 *types.Table) string {
|
func FindTextNRPC1(Table1 *types.Table) string {
|
||||||
TableName := strings.ToLower(Table1.Name)
|
TableName := strings.ToLower(Table1.Name)
|
||||||
ModelName := Table1.NameGo
|
Otvet := "\n\t" + constants.STARTER_TABLES_PREFIX + TableName + ".SetCrudInterface(nrpc_" + TableName + ".Crud_NRPC{})"
|
||||||
Otvet := "\n\t" + TableName + "." + ModelName + "{}.SetCrudInterface(nrpc_" + TableName + ".Crud_NRPC{})"
|
|
||||||
|
|
||||||
return Otvet
|
return Otvet
|
||||||
}
|
}
|
||||||
|
163
internal/create_files/crud_starter_tables/crud_starter_tables.go
Normal file
163
internal/create_files/crud_starter_tables/crud_starter_tables.go
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
package crud_starter_tables
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/config"
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/constants"
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/create_files"
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/folders"
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/types"
|
||||||
|
"github.com/ManyakRus/starter/log"
|
||||||
|
"github.com/ManyakRus/starter/micro"
|
||||||
|
"os"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
// CreateAllFiles - создаёт все файлы в папке db
|
||||||
|
func CreateAllFiles(MapAll map[string]*types.Table) error {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
for _, Table1 := range MapAll {
|
||||||
|
//проверка что таблица нормальная
|
||||||
|
err1 := create_files.CheckGoodTable(Table1)
|
||||||
|
if err1 != nil {
|
||||||
|
log.Warn(err1)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
//файлы starter
|
||||||
|
if config.Settings.NEED_CREATE_DB == true {
|
||||||
|
err = CreateFiles(Table1)
|
||||||
|
if err != nil {
|
||||||
|
log.Error("CreateFiles() table: ", Table1.Name, " error: ", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//тестовые файлы starter
|
||||||
|
if config.Settings.NEED_CREATE_DB_TEST == true {
|
||||||
|
err = CreateTestFiles(Table1)
|
||||||
|
if err != nil {
|
||||||
|
log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// CreateFiles - создаёт 1 файл в папке db
|
||||||
|
func CreateFiles(Table1 *types.Table) error {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
//чтение файлов
|
||||||
|
DirBin := micro.ProgramDir_bin()
|
||||||
|
DirTemplates := DirBin + config.Settings.TEMPLATE_FOLDERNAME + micro.SeparatorFile()
|
||||||
|
DirReady := DirBin + config.Settings.READY_FOLDERNAME + micro.SeparatorFile()
|
||||||
|
DirTemplatesDB := DirTemplates + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile() + "starter_tables" + micro.SeparatorFile()
|
||||||
|
DirReadyDB := DirReady + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile()
|
||||||
|
|
||||||
|
FilenameTemplateDB := DirTemplatesDB + constants.STARTER_TABLES_FILENAME
|
||||||
|
TableName := strings.ToLower(Table1.Name)
|
||||||
|
DirReadyTable := DirReadyDB + constants.STARTER_TABLES_PREFIX + TableName
|
||||||
|
FilenameReadyDB := DirReadyTable + micro.SeparatorFile() + constants.STARTER_TABLES_PREFIX + TableName + ".go"
|
||||||
|
|
||||||
|
//создадим каталог
|
||||||
|
ok, err := micro.FileExists(DirReadyTable)
|
||||||
|
if ok == false {
|
||||||
|
err = os.MkdirAll(DirReadyTable, 0777)
|
||||||
|
if err != nil {
|
||||||
|
log.Panic("Mkdir() ", DirReadyTable, " error: ", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bytes, err := os.ReadFile(FilenameTemplateDB)
|
||||||
|
if err != nil {
|
||||||
|
log.Panic("ReadFile() ", FilenameTemplateDB, " error: ", err)
|
||||||
|
}
|
||||||
|
TextDB := string(bytes)
|
||||||
|
|
||||||
|
//заменим имя пакета на новое
|
||||||
|
TextDB = create_files.ReplacePackageName(TextDB, DirReadyTable)
|
||||||
|
|
||||||
|
//заменим импорты
|
||||||
|
if config.Settings.USE_DEFAULT_TEMPLATE == true {
|
||||||
|
TextDB = create_files.DeleteTemplateRepositoryImports(TextDB)
|
||||||
|
|
||||||
|
ModelTableURL := create_files.FindModelTableURL(TableName)
|
||||||
|
TextDB = create_files.AddImport(TextDB, ModelTableURL)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//создание текста
|
||||||
|
ModelName := Table1.NameGo
|
||||||
|
TextDB = strings.ReplaceAll(TextDB, config.Settings.TEXT_TEMPLATE_MODEL, ModelName)
|
||||||
|
TextDB = strings.ReplaceAll(TextDB, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name)
|
||||||
|
TextDB = config.Settings.TEXT_MODULE_GENERATED + TextDB
|
||||||
|
|
||||||
|
//замена импортов на новые URL
|
||||||
|
TextDB = create_files.ReplaceServiceURLImports(TextDB)
|
||||||
|
|
||||||
|
//удаление пустого импорта
|
||||||
|
TextDB = create_files.DeleteEmptyImport(TextDB)
|
||||||
|
|
||||||
|
//запись файла
|
||||||
|
err = os.WriteFile(FilenameReadyDB, []byte(TextDB), constants.FILE_PERMISSIONS)
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// CreateTestFiles - создаёт 1 файл в папке db
|
||||||
|
func CreateTestFiles(Table1 *types.Table) error {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
TableName := strings.ToLower(Table1.Name)
|
||||||
|
|
||||||
|
//чтение файлов
|
||||||
|
DirBin := micro.ProgramDir_bin()
|
||||||
|
DirTemplates := DirBin + config.Settings.TEMPLATE_FOLDERNAME + micro.SeparatorFile()
|
||||||
|
DirReady := DirBin + config.Settings.READY_FOLDERNAME + micro.SeparatorFile()
|
||||||
|
DirTemplatesDB := DirTemplates + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile() + "starter_tables" + micro.SeparatorFile()
|
||||||
|
DirReadyDB := DirReady + config.Settings.TEMPLATE_FOLDERNAME_CRUD_STARTER + micro.SeparatorFile()
|
||||||
|
|
||||||
|
FilenameTemplateDB := DirTemplatesDB + constants.STARTER_TABLES_FILENAME_TEST
|
||||||
|
DirReadyTable := DirReadyDB + constants.STARTER_TABLES_PREFIX + TableName
|
||||||
|
FilenameReadyDB := DirReadyTable + micro.SeparatorFile() + constants.STARTER_TABLES_PREFIX + TableName + "_test.go"
|
||||||
|
|
||||||
|
//создадим папку готовых файлов
|
||||||
|
folders.CreateFolder(DirReadyTable)
|
||||||
|
|
||||||
|
bytes, err := os.ReadFile(FilenameTemplateDB)
|
||||||
|
if err != nil {
|
||||||
|
log.Panic("ReadFile() ", FilenameTemplateDB, " error: ", err)
|
||||||
|
}
|
||||||
|
TextDB := string(bytes)
|
||||||
|
|
||||||
|
//заменим имя пакета на новое
|
||||||
|
TextDB = create_files.ReplacePackageName(TextDB, DirReadyTable)
|
||||||
|
|
||||||
|
//заменим импорты
|
||||||
|
if config.Settings.USE_DEFAULT_TEMPLATE == true {
|
||||||
|
TextDB = create_files.DeleteTemplateRepositoryImports(TextDB)
|
||||||
|
|
||||||
|
ModelTableURL := create_files.FindModelTableURL(TableName)
|
||||||
|
TextDB = create_files.AddImport(TextDB, ModelTableURL)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//создание текста
|
||||||
|
ModelName := Table1.NameGo
|
||||||
|
TextDB = strings.ReplaceAll(TextDB, config.Settings.TEXT_TEMPLATE_MODEL, ModelName)
|
||||||
|
TextDB = strings.ReplaceAll(TextDB, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name)
|
||||||
|
TextDB = config.Settings.TEXT_MODULE_GENERATED + TextDB
|
||||||
|
|
||||||
|
//замена импортов на новые URL
|
||||||
|
TextDB = create_files.ReplaceServiceURLImports(TextDB)
|
||||||
|
|
||||||
|
//удаление пустого импорта
|
||||||
|
TextDB = create_files.DeleteEmptyImport(TextDB)
|
||||||
|
|
||||||
|
//запись файла
|
||||||
|
err = os.WriteFile(FilenameReadyDB, []byte(TextDB), constants.FILE_PERMISSIONS)
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
@ -0,0 +1 @@
|
|||||||
|
package crud_starter_tables
|
@ -3,6 +3,7 @@ package logic
|
|||||||
import (
|
import (
|
||||||
"github.com/ManyakRus/crud_generator/internal/config"
|
"github.com/ManyakRus/crud_generator/internal/config"
|
||||||
"github.com/ManyakRus/crud_generator/internal/create_files/crud_starter"
|
"github.com/ManyakRus/crud_generator/internal/create_files/crud_starter"
|
||||||
|
"github.com/ManyakRus/crud_generator/internal/create_files/crud_starter_tables"
|
||||||
"github.com/ManyakRus/crud_generator/internal/create_files/db_crud_tables"
|
"github.com/ManyakRus/crud_generator/internal/create_files/db_crud_tables"
|
||||||
"github.com/ManyakRus/crud_generator/internal/create_files/db_tables"
|
"github.com/ManyakRus/crud_generator/internal/create_files/db_tables"
|
||||||
"github.com/ManyakRus/crud_generator/internal/create_files/env_file"
|
"github.com/ManyakRus/crud_generator/internal/create_files/env_file"
|
||||||
@ -162,6 +163,13 @@ func StartFillAll() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//tables
|
||||||
|
err = crud_starter_tables.CreateAllFiles(MapAll)
|
||||||
|
if err != nil {
|
||||||
|
//log.Error("db_tables.CreateAllFiles() error: ", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
//env
|
//env
|
||||||
err = env_file.CreateAllFiles()
|
err = env_file.CreateAllFiles()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user