You've already forked crud_generator
							
							
				mirror of
				https://github.com/ManyakRus/crud_generator.git
				synced 2025-10-31 00:17:48 +02:00 
			
		
		
		
	сделал CreateFilesUpdateEveryColumn()
This commit is contained in:
		| @@ -0,0 +1,29 @@ | |||||||
|  | // LawsuitStatusType_Read - изменяет колонку ColumnName в базе данных | ||||||
|  | func (s *ServerGRPC) LawsuitStatusType_Read(ctx context.Context, Request *grpc_proto.RequestId) (*grpc_proto.ResponseEmpty, error) { | ||||||
|  | 	var Otvet grpc_proto.ResponseEmpty | ||||||
|  | 	var err error | ||||||
|  |  | ||||||
|  | 	//проверим контекст уже отменён | ||||||
|  | 	if micro.ContextDone(ctx) == true { | ||||||
|  | 		err = context.Canceled | ||||||
|  | 		return &Otvet, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	//проверим совпадения версии модели | ||||||
|  | 	VersionServer := lawsuit_status_types.LawsuitStatusType{}.GetStructVersion() | ||||||
|  | 	VersionClient := Request.VersionModel | ||||||
|  | 	if VersionServer != VersionClient { | ||||||
|  | 		err = ErrorModelVersion(lawsuit_status_types.LawsuitStatusType{}) | ||||||
|  | 		return &Otvet, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	//запрос в БД | ||||||
|  | 	Model := &lawsuit_status_types.LawsuitStatusType{} | ||||||
|  | 	Model.ID = Request.ID | ||||||
|  | 	err = Model.Read() | ||||||
|  | 	if err != nil { | ||||||
|  | 		return &Otvet, err | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return &Otvet, err | ||||||
|  | } | ||||||
| @@ -0,0 +1,18 @@ | |||||||
|  | func Test_server_LawsuitStatusType_Read(t *testing.T) { | ||||||
|  | 	config_main.LoadEnv() | ||||||
|  | 	crud_starter.InitCrudTransport_DB() | ||||||
|  |  | ||||||
|  | 	ctx := context.Background() | ||||||
|  | 	Request := grpc_proto.RequestId{} | ||||||
|  | 	Request.ID = LawsuitStatusType_ID_Test | ||||||
|  | 	Request.VersionModel = lawsuit_status_types.LawsuitStatusType{}.GetStructVersion() | ||||||
|  |  | ||||||
|  | 	server1 := &ServerGRPC{} | ||||||
|  | 	Otvet, err := server1.LawsuitStatusType_Read(ctx, &Request) | ||||||
|  | 	if err != nil { | ||||||
|  | 		t.Error("Test_server_LawsuitStatusType_Read() error: ", err) | ||||||
|  | 	} | ||||||
|  | 	if Otvet.ModelString == "" { | ||||||
|  | 		t.Error("Test_server_LawsuitStatusType_Read() error: ModelString=''") | ||||||
|  | 	} | ||||||
|  | } | ||||||
| @@ -47,3 +47,6 @@ const CRUD_TABLES_FREFIX = "crud_" | |||||||
|  |  | ||||||
| const MODEL_TABLE_MANUAL_FILENAME = "model_table_manual.go_" | const MODEL_TABLE_MANUAL_FILENAME = "model_table_manual.go_" | ||||||
| const MODEL_TABLE_UPDATE_FILENAME = "model_table_update.go_" | const MODEL_TABLE_UPDATE_FILENAME = "model_table_update.go_" | ||||||
|  |  | ||||||
|  | const SERVER_GRPC_TABLE_UPDATE_FUNC_FILENAME = "server_grpc_table_update_func.go_" | ||||||
|  | const SERVER_GRPC_TABLE_UPDATE_FUNC_TEST_FILENAME = "server_grpc_table_update_func_test.go_" | ||||||
|   | |||||||
| @@ -824,6 +824,7 @@ func DeleteEmptyLines(Text string) string { | |||||||
| 	Otvet = strings.ReplaceAll(Otvet, "\n\t//\n\n", "\n\n") | 	Otvet = strings.ReplaceAll(Otvet, "\n\t//\n\n", "\n\n") | ||||||
| 	//Otvet = strings.ReplaceAll(Otvet, "\r\r", "\r") | 	//Otvet = strings.ReplaceAll(Otvet, "\r\r", "\r") | ||||||
| 	//Otvet = strings.ReplaceAll(Otvet, "\r\n", "\n") | 	//Otvet = strings.ReplaceAll(Otvet, "\r\n", "\n") | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "}\n\n", "}\n") | ||||||
| 	pos1 := strings.Index(Otvet, "\n\n\n") | 	pos1 := strings.Index(Otvet, "\n\n\n") | ||||||
| 	if pos1 >= 0 { | 	if pos1 >= 0 { | ||||||
| 		Otvet = DeleteEmptyLines(Otvet) | 		Otvet = DeleteEmptyLines(Otvet) | ||||||
| @@ -889,3 +890,50 @@ func AddInterfaceFunction(s, TextAdd string) string { | |||||||
|  |  | ||||||
| 	return Otvet | 	return Otvet | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // FindTextProtobufRequest - возвращает имя message из .proto, в зависимости от типа, а также название поля | ||||||
|  | func FindTextProtobufRequest(TypeGo string) (string, string) { | ||||||
|  | 	Otvet := "RequestID" | ||||||
|  | 	TextRequestFieldName := "ID" | ||||||
|  |  | ||||||
|  | 	switch TypeGo { | ||||||
|  | 	case "int", "int64": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestId" | ||||||
|  | 			TextRequestFieldName = "ID" | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 	case "int32": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestInt32" | ||||||
|  | 			TextRequestFieldName = "Int32" | ||||||
|  | 		} | ||||||
|  | 	case "string": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestString" | ||||||
|  | 			TextRequestFieldName = "StringFind" | ||||||
|  | 		} | ||||||
|  | 	case "time.Time": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestDate" | ||||||
|  | 			TextRequestFieldName = "Date" | ||||||
|  | 		} | ||||||
|  | 	case "float32": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestFloat32" | ||||||
|  | 			TextRequestFieldName = "Float32" | ||||||
|  | 		} | ||||||
|  | 	case "float64": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestFloat64" | ||||||
|  | 			TextRequestFieldName = "Float64" | ||||||
|  | 		} | ||||||
|  | 	case "bool": | ||||||
|  | 		{ | ||||||
|  | 			Otvet = "RequestBool" | ||||||
|  | 			TextRequestFieldName = "Bool" | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return Otvet, TextRequestFieldName | ||||||
|  | } | ||||||
|   | |||||||
| @@ -9,6 +9,7 @@ import ( | |||||||
| 	"github.com/ManyakRus/starter/log" | 	"github.com/ManyakRus/starter/log" | ||||||
| 	"github.com/ManyakRus/starter/micro" | 	"github.com/ManyakRus/starter/micro" | ||||||
| 	"os" | 	"os" | ||||||
|  | 	"sort" | ||||||
| 	"strings" | 	"strings" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -39,6 +40,26 @@ func CreateAllFiles(MapAll map[string]*types.Table) error { | |||||||
| 				return err | 				return err | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
|  | 		// | ||||||
|  | 		if config.Settings.NEED_CREATE_UPDATE_EVERY_COLUMN == true { | ||||||
|  | 			//файлы grpc_server update | ||||||
|  | 			err = CreateFilesUpdateEveryColumn(Table1) | ||||||
|  | 			if err != nil { | ||||||
|  | 				log.Error("CreateFiles() table: ", Table1.Name, " error: ", err) | ||||||
|  | 				return err | ||||||
|  | 			} | ||||||
|  |  | ||||||
|  | 			//тестовые файлы grpc_server update | ||||||
|  | 			if config.Settings.NEED_CREATE_GRPC_SERVER_TEST == true { | ||||||
|  | 				err = CreateFilesUpdateEveryColumnTest(Table1) | ||||||
|  | 				if err != nil { | ||||||
|  | 					log.Error("CreateTestFiles() table: ", Table1.Name, " error: ", err) | ||||||
|  | 					return err | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
|  |  | ||||||
|  | 		} | ||||||
| 	} | 	} | ||||||
| 	return err | 	return err | ||||||
| } | } | ||||||
| @@ -342,3 +363,236 @@ func ConvertID(Text string, Table1 *types.Table) string { | |||||||
|  |  | ||||||
| 	return Otvet | 	return Otvet | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // CreateFilesUpdateEveryColumn - создаёт 1 файл в папке grpc_server | ||||||
|  | func CreateFilesUpdateEveryColumn(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() | ||||||
|  | 	DirTemplatesGRPCServer := DirTemplates + config.Settings.TEMPLATE_FOLDERNAME_GRPC_SERVER + micro.SeparatorFile() | ||||||
|  | 	DirReadyGRPCServer := DirReady + config.Settings.TEMPLATE_FOLDERNAME_GRPC_SERVER + micro.SeparatorFile() | ||||||
|  |  | ||||||
|  | 	FilenameTemplateGRPCServer := DirTemplatesGRPCServer + constants.SERVER_GRPC_TABLE_UPDATE_FUNC_FILENAME | ||||||
|  | 	TableName := strings.ToLower(Table1.Name) | ||||||
|  | 	DirReadyTable := DirReadyGRPCServer | ||||||
|  | 	FilenameReadyGRPCServerUpdate := DirReadyTable + config.Settings.PREFIX_SERVER_GRPC + TableName + "_update.go" | ||||||
|  |  | ||||||
|  | 	//создадим папку готовых файлов | ||||||
|  | 	folders.CreateFolder(DirReadyTable) | ||||||
|  |  | ||||||
|  | 	bytes, err := os.ReadFile(FilenameTemplateGRPCServer) | ||||||
|  | 	if err != nil { | ||||||
|  | 		log.Panic("ReadFile() ", FilenameTemplateGRPCServer, " error: ", err) | ||||||
|  | 	} | ||||||
|  | 	TextGRPCServerUpdateFunc := string(bytes) | ||||||
|  |  | ||||||
|  | 	TextGRPCServer := "package " + config.Settings.TEMPLATE_FOLDERNAME_GRPC + "\n\n" | ||||||
|  | 	TextGRPCServer = TextGRPCServer + `import ( | ||||||
|  | 	"context" | ||||||
|  | 	"github.com/ManyakRus/starter/micro" | ||||||
|  | 	) | ||||||
|  |  | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | 	//заменим импорты | ||||||
|  | 	//if config.Settings.USE_DEFAULT_TEMPLATE == true { | ||||||
|  | 	ModelTableURL := create_files.FindModelTableURL(TableName) | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ModelTableURL) | ||||||
|  |  | ||||||
|  | 	ProtoURL := create_files.FindProtoURL() | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ProtoURL) | ||||||
|  |  | ||||||
|  | 	ModelURL := create_files.FindModelURL() | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ModelURL) | ||||||
|  |  | ||||||
|  | 	TextGRPCServer = ConvertID(TextGRPCServer, Table1) | ||||||
|  | 	//} | ||||||
|  |  | ||||||
|  | 	//создание текста | ||||||
|  | 	TextUpdateEveryColumn := FindTextUpdateEveryColumn(TextGRPCServerUpdateFunc, Table1) | ||||||
|  | 	//ModelName := Table1.NameGo | ||||||
|  | 	//TextGRPCServer = strings.ReplaceAll(TextGRPCServer, config.Settings.TEXT_TEMPLATE_MODEL, ModelName) | ||||||
|  | 	//TextGRPCServer = strings.ReplaceAll(TextGRPCServer, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name) | ||||||
|  | 	TextGRPCServer = TextGRPCServer + TextUpdateEveryColumn | ||||||
|  |  | ||||||
|  | 	TextGRPCServer = config.Settings.TEXT_MODULE_GENERATED + TextGRPCServer | ||||||
|  |  | ||||||
|  | 	//удаление пустого импорта | ||||||
|  | 	TextGRPCServer = create_files.DeleteEmptyImport(TextGRPCServer) | ||||||
|  | 	TextGRPCServer = create_files.DeleteEmptyLines(TextGRPCServer) | ||||||
|  |  | ||||||
|  | 	//запись файла | ||||||
|  | 	err = os.WriteFile(FilenameReadyGRPCServerUpdate, []byte(TextGRPCServer), constants.FILE_PERMISSIONS) | ||||||
|  |  | ||||||
|  | 	return err | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // FindTextUpdateEveryColumn - возвращает текст для всех таблиц | ||||||
|  | func FindTextUpdateEveryColumn(TextGRPCServerUpdateFunc string, Table1 *types.Table) string { | ||||||
|  | 	Otvet := "" | ||||||
|  |  | ||||||
|  | 	//сортировка по названию таблиц | ||||||
|  | 	keys := make([]string, 0, len(Table1.MapColumns)) | ||||||
|  | 	for k := range Table1.MapColumns { | ||||||
|  | 		keys = append(keys, k) | ||||||
|  | 	} | ||||||
|  | 	sort.Strings(keys) | ||||||
|  |  | ||||||
|  | 	//найдём новый текст для каждой таблицы | ||||||
|  | 	for _, key1 := range keys { | ||||||
|  | 		Column1, ok := Table1.MapColumns[key1] | ||||||
|  | 		if ok == false { | ||||||
|  | 			log.Panic("FindTextProtoTable1_UpdateEveryColumn() Table1.MapColumns[key1] = false") | ||||||
|  | 		} | ||||||
|  | 		if create_files.Is_Common_Сolumn(Column1) == true { | ||||||
|  | 			continue | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 		TextColumn1 := FindTextUpdateEveryColumn1(TextGRPCServerUpdateFunc, Table1, Column1) | ||||||
|  | 		Otvet = Otvet + TextColumn1 + "\n\n" | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return Otvet | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // FindTextUpdateEveryColumn1 - возвращает текст для одной таблицы | ||||||
|  | func FindTextUpdateEveryColumn1(TextGRPCServerUpdateFunc string, Table1 *types.Table, Column1 *types.Column) string { | ||||||
|  | 	Otvet := TextGRPCServerUpdateFunc | ||||||
|  |  | ||||||
|  | 	ModelName := Table1.NameGo | ||||||
|  | 	ColumnName := Column1.NameGo | ||||||
|  | 	FuncName := "Update_" + ColumnName | ||||||
|  | 	TextRequest, TextRequestFieldName := create_files.FindTextProtobufRequest(Column1.TypeGo) | ||||||
|  |  | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_MODEL+"_Read", ModelName+"_"+FuncName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_MODEL, ModelName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "grpc_proto.RequestId", "grpc_proto."+TextRequest) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "ColumnName", ColumnName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "Model.ID", "Model."+ColumnName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "Request.ID", "Request."+TextRequestFieldName) | ||||||
|  |  | ||||||
|  | 	return Otvet | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // CreateFilesUpdateEveryColumnTest - создаёт 1 файл в папке grpc_server | ||||||
|  | func CreateFilesUpdateEveryColumnTest(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() | ||||||
|  | 	DirTemplatesGRPCServer := DirTemplates + config.Settings.TEMPLATE_FOLDERNAME_GRPC_SERVER + micro.SeparatorFile() | ||||||
|  | 	DirReadyGRPCServer := DirReady + config.Settings.TEMPLATE_FOLDERNAME_GRPC_SERVER + micro.SeparatorFile() | ||||||
|  |  | ||||||
|  | 	FilenameTemplateGRPCServer := DirTemplatesGRPCServer + constants.SERVER_GRPC_TABLE_UPDATE_FUNC_TEST_FILENAME | ||||||
|  | 	TableName := strings.ToLower(Table1.Name) | ||||||
|  | 	DirReadyTable := DirReadyGRPCServer | ||||||
|  | 	FilenameReadyGRPCServerUpdate := DirReadyTable + config.Settings.PREFIX_SERVER_GRPC + TableName + "_update_test.go" | ||||||
|  |  | ||||||
|  | 	//создадим папку готовых файлов | ||||||
|  | 	folders.CreateFolder(DirReadyTable) | ||||||
|  |  | ||||||
|  | 	bytes, err := os.ReadFile(FilenameTemplateGRPCServer) | ||||||
|  | 	if err != nil { | ||||||
|  | 		log.Panic("ReadFile() ", FilenameTemplateGRPCServer, " error: ", err) | ||||||
|  | 	} | ||||||
|  | 	TextGRPCServerUpdateFunc := string(bytes) | ||||||
|  |  | ||||||
|  | 	TextGRPCServer := "package " + config.Settings.TEMPLATE_FOLDERNAME_GRPC + "\n\n" | ||||||
|  | 	TextGRPCServer = TextGRPCServer + `import ( | ||||||
|  | 	"context" | ||||||
|  | 	"github.com/ManyakRus/starter/config_main" | ||||||
|  | 	) | ||||||
|  |  | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | 	//заменим импорты | ||||||
|  | 	//if config.Settings.USE_DEFAULT_TEMPLATE == true { | ||||||
|  | 	ModelTableURL := create_files.FindModelTableURL(TableName) | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ModelTableURL) | ||||||
|  |  | ||||||
|  | 	ProtoURL := create_files.FindProtoURL() | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ProtoURL) | ||||||
|  |  | ||||||
|  | 	ModelURL := create_files.FindModelURL() | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, ModelURL) | ||||||
|  |  | ||||||
|  | 	CrudStarterURL := create_files.FindCrudStarterURL() | ||||||
|  | 	TextGRPCServer = create_files.AddImport(TextGRPCServer, CrudStarterURL) | ||||||
|  |  | ||||||
|  | 	TextGRPCServer = ConvertID(TextGRPCServer, Table1) | ||||||
|  | 	//} | ||||||
|  |  | ||||||
|  | 	//создание текста | ||||||
|  | 	TextUpdateEveryColumn := FindTextUpdateEveryColumnTest(TextGRPCServerUpdateFunc, Table1) | ||||||
|  | 	//ModelName := Table1.NameGo | ||||||
|  | 	//TextGRPCServer = strings.ReplaceAll(TextGRPCServer, config.Settings.TEXT_TEMPLATE_MODEL, ModelName) | ||||||
|  | 	//TextGRPCServer = strings.ReplaceAll(TextGRPCServer, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name) | ||||||
|  | 	TextGRPCServer = TextGRPCServer + TextUpdateEveryColumn | ||||||
|  |  | ||||||
|  | 	TextGRPCServer = config.Settings.TEXT_MODULE_GENERATED + TextGRPCServer | ||||||
|  |  | ||||||
|  | 	//удаление пустого импорта | ||||||
|  | 	TextGRPCServer = create_files.DeleteEmptyImport(TextGRPCServer) | ||||||
|  | 	TextGRPCServer = create_files.DeleteEmptyLines(TextGRPCServer) | ||||||
|  |  | ||||||
|  | 	//запись файла | ||||||
|  | 	err = os.WriteFile(FilenameReadyGRPCServerUpdate, []byte(TextGRPCServer), constants.FILE_PERMISSIONS) | ||||||
|  |  | ||||||
|  | 	return err | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // FindTextUpdateEveryColumnTest - возвращает текст для всех таблиц | ||||||
|  | func FindTextUpdateEveryColumnTest(TextGRPCServerUpdateFunc string, Table1 *types.Table) string { | ||||||
|  | 	Otvet := "" | ||||||
|  |  | ||||||
|  | 	//сортировка по названию таблиц | ||||||
|  | 	keys := make([]string, 0, len(Table1.MapColumns)) | ||||||
|  | 	for k := range Table1.MapColumns { | ||||||
|  | 		keys = append(keys, k) | ||||||
|  | 	} | ||||||
|  | 	sort.Strings(keys) | ||||||
|  |  | ||||||
|  | 	//найдём новый текст для каждой таблицы | ||||||
|  | 	for _, key1 := range keys { | ||||||
|  | 		Column1, ok := Table1.MapColumns[key1] | ||||||
|  | 		if ok == false { | ||||||
|  | 			log.Panic("FindTextProtoTable1_UpdateEveryColumn() Table1.MapColumns[key1] = false") | ||||||
|  | 		} | ||||||
|  | 		if create_files.Is_Common_Сolumn(Column1) == true { | ||||||
|  | 			continue | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 		TextColumn1 := FindTextUpdateEveryColumnTest1(TextGRPCServerUpdateFunc, Table1, Column1) | ||||||
|  | 		Otvet = Otvet + TextColumn1 + "\n\n" | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	return Otvet | ||||||
|  | } | ||||||
|  |  | ||||||
|  | // FindTextUpdateEveryColumnTest1 - возвращает текст для одной таблицы | ||||||
|  | func FindTextUpdateEveryColumnTest1(TextGRPCServerUpdateFunc string, Table1 *types.Table, Column1 *types.Column) string { | ||||||
|  | 	Otvet := TextGRPCServerUpdateFunc | ||||||
|  |  | ||||||
|  | 	ModelName := Table1.NameGo | ||||||
|  | 	ColumnName := Column1.NameGo | ||||||
|  | 	FuncName := "Update_" + ColumnName | ||||||
|  | 	TextRequest, TextRequestFieldName := create_files.FindTextProtobufRequest(Column1.TypeGo) | ||||||
|  |  | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_MODEL+"_Read", ModelName+"_"+FuncName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_MODEL, ModelName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, config.Settings.TEXT_TEMPLATE_TABLENAME, Table1.Name) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "grpc_proto.RequestId", "grpc_proto."+TextRequest) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "ColumnName", ColumnName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "Model.ID", "Model."+ColumnName) | ||||||
|  | 	Otvet = strings.ReplaceAll(Otvet, "Request.ID", "Request."+TextRequestFieldName) | ||||||
|  |  | ||||||
|  | 	return Otvet | ||||||
|  | } | ||||||
|   | |||||||
| @@ -363,33 +363,6 @@ func FindTextUpdateEveryColumn(TextProto string, Table1 *types.Table, Column1 *t | |||||||
| 	return Otvet | 	return Otvet | ||||||
| } | } | ||||||
|  |  | ||||||
| // FindTextRequest - возвращает имя message из .proto, в зависимости от типа |  | ||||||
| func FindTextRequest(TypeGo string) string { |  | ||||||
| 	Otvet := "RequestID" |  | ||||||
|  |  | ||||||
| 	switch TypeGo { |  | ||||||
| 	case "int", "int64": |  | ||||||
|  |  | ||||||
| 		Otvet = "RequestId" |  | ||||||
| 	case "int32": |  | ||||||
| 		Otvet = "RequestInt32" |  | ||||||
| 	case "string": |  | ||||||
|  |  | ||||||
| 		Otvet = "RequestString" |  | ||||||
| 	case "time.Time": |  | ||||||
|  |  | ||||||
| 		Otvet = "RequestDate" |  | ||||||
| 	case "float32": |  | ||||||
| 		Otvet = "RequestFloat32" |  | ||||||
| 	case "float64": |  | ||||||
| 		Otvet = "RequestFloat64" |  | ||||||
| 	case "bool": |  | ||||||
| 		Otvet = "RequestBool" |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	return Otvet |  | ||||||
| } |  | ||||||
|  |  | ||||||
| // TextUpdateEveryColumn - возвращает текст .proto функции Update_ColumnName() | // TextUpdateEveryColumn - возвращает текст .proto функции Update_ColumnName() | ||||||
| func TextUpdateEveryColumn(Table1 *types.Table, Column1 *types.Column) string { | func TextUpdateEveryColumn(Table1 *types.Table, Column1 *types.Column) string { | ||||||
| 	Otvet := "" | 	Otvet := "" | ||||||
| @@ -398,7 +371,7 @@ func TextUpdateEveryColumn(Table1 *types.Table, Column1 *types.Column) string { | |||||||
|  |  | ||||||
| 	TextRequest := "RequestID" | 	TextRequest := "RequestID" | ||||||
| 	TypeGo := Column1.TypeGo | 	TypeGo := Column1.TypeGo | ||||||
| 	TextRequest = FindTextRequest(TypeGo) | 	TextRequest, _ = create_files.FindTextProtobufRequest(TypeGo) | ||||||
| 	ColumnName := Column1.NameGo | 	ColumnName := Column1.NameGo | ||||||
|  |  | ||||||
| 	Otvet = "rpc " + ModelName + "_Update_" + ColumnName + "(" + TextRequest + ") returns (ResponseEmpty) {}" | 	Otvet = "rpc " + ModelName + "_Update_" + ColumnName + "(" + TextRequest + ") returns (ResponseEmpty) {}" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user