mirror of
https://github.com/ManyakRus/crud_generator.git
synced 2025-02-03 09:57:21 +02:00
сделал CreateFiles_FindModelBy()
This commit is contained in:
parent
a471d5ab2e
commit
c2ae6f4f0e
@ -2,7 +2,6 @@ package server_grpc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/ManyakRus/starter/postgres_gorm"
|
||||
"gitlab.aescorp.ru/dsp_dev/claim/sync_service/api/grpc_proto"
|
||||
|
@ -14,17 +14,13 @@ func (s *ServerGRPC) LawsuitStatusType_FindModelBy_FieldNamesWithUnderline(ctx c
|
||||
//клиент БД
|
||||
db := postgres_gorm.GetConnection()
|
||||
|
||||
//модель из строки
|
||||
sModel := Request.ModelString
|
||||
Model := &lawsuit_status_types.LawsuitStatusType{}
|
||||
err = json.Unmarshal([]byte(sModel), Model)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("json.Unmarshal() error: %w", err)
|
||||
return &Otvet, err
|
||||
}
|
||||
//модель
|
||||
Model := lawsuit_status_types.LawsuitStatusType{}
|
||||
ID := Request.RequestFieldName
|
||||
Model.FieldName = ID
|
||||
|
||||
//запрос crud
|
||||
ModelOtvet, err := crud_lawsuit_status_types.FindModelBy_FieldNamesWithUnderline_ctx(ctx, db, Model)
|
||||
ModelOtvet, err := crud_lawsuit_status_types.FindModelBy_FieldNamesWithUnderline_ctx(ctx, db, &Model)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("FindModelBy_FieldNamesWithUnderline_ctx() error: %w", err)
|
||||
return &Otvet, err
|
||||
|
@ -4,17 +4,13 @@ func Test_server_LawsuitStatusType_FindModelBy_FieldNamesWithUnderline(t *testin
|
||||
|
||||
ctx := context.Background()
|
||||
Request := grpc_proto.RequestName{}
|
||||
Request.RequestFieldName = 0
|
||||
Request.VersionModel = lawsuit_status_types.LawsuitStatusType{}.GetStructVersion()
|
||||
Request.RequestFieldName = 0
|
||||
|
||||
server1 := &ServerGRPC{}
|
||||
Otvet, err := server1.LawsuitStatusType_FindModelBy_FieldNamesWithUnderline(ctx, &Request)
|
||||
_, err := server1.LawsuitStatusType_FindModelBy_FieldNamesWithUnderline(ctx, &Request)
|
||||
if err != nil && crud_func.IsRecordNotFound(err) == false {
|
||||
t.Error("Test_server_LawsuitStatusType_FindModelBy_FieldNamesWithUnderline() error: ", err)
|
||||
}
|
||||
|
||||
if Otvet.ModelString == "" {
|
||||
t.Log("Test_server_LawsuitStatusType_FindModelBy_FieldNamesWithUnderline() error: ModelString=''")
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,6 +10,7 @@ import (
|
||||
"github.com/ManyakRus/starter/micro"
|
||||
"github.com/gobeam/stringy"
|
||||
"github.com/jinzhu/inflection"
|
||||
"slices"
|
||||
"sort"
|
||||
"strconv"
|
||||
"strings"
|
||||
@ -2692,3 +2693,15 @@ func Find_PrimaryKeysDefaultValues(Table1 *types.Table) string {
|
||||
|
||||
return Otvet
|
||||
}
|
||||
|
||||
// AppendColumn - добавляет колонку в слайс, если ее нет
|
||||
func AppendColumn(MassPK []*types.Column, Column1 *types.Column) []*types.Column {
|
||||
Otvet := make([]*types.Column, len(MassPK))
|
||||
copy(Otvet, MassPK)
|
||||
|
||||
if slices.Contains(MassPK, Column1) == false {
|
||||
Otvet = append(Otvet, Column1)
|
||||
}
|
||||
|
||||
return Otvet
|
||||
}
|
||||
|
@ -45,14 +45,15 @@ func FindText_FindModelBy1(Table1 *types.Table, Column1 *types.Column) string {
|
||||
Otvet := "\n\trpc "
|
||||
|
||||
TextFields := ""
|
||||
TextRequest := "Request_Model_"
|
||||
//TextRequest := "Request_"
|
||||
Underline := ""
|
||||
//for _, Column1 := range TableColumns1.Columns {
|
||||
TextFields = TextFields + Underline + Column1.NameGo_translit
|
||||
TextRequest1 := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
TextRequest = TextRequest + Underline + TextRequest1
|
||||
//TextRequest1 := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
//TextRequest = TextRequest + Underline + TextRequest1
|
||||
Underline = "_"
|
||||
//}
|
||||
TextRequest := create_files.FindText_ProtobufRequest_Column_ManyPK(Table1, Column1)
|
||||
|
||||
Otvet = Otvet + Table1.NameGo_translit + "_FindModelBy_" + TextFields + "(" + TextRequest + ") returns (Response) {}\n"
|
||||
|
||||
|
@ -140,7 +140,7 @@ func CreateFiles_FindModelBy_Table1(MapAll map[string]*types.Table, Table1 *type
|
||||
TextFind := "\t" + `Model.FieldName = Request.RequestFieldName` + "\n"
|
||||
Underline := ""
|
||||
Plus := ""
|
||||
RequestName := "Request_Model_"
|
||||
//RequestName := "Request_"
|
||||
//RequestFieldName := create_files.Find_RequestFieldName_FromMass(Column1, MassColumns)
|
||||
TextRequest, TextRequestCode := create_files.Convert_ProtobufVariableToGolangVariable(Table1, Column1, "Request.")
|
||||
if TextRequestCode != "" {
|
||||
@ -151,8 +151,9 @@ func CreateFiles_FindModelBy_Table1(MapAll map[string]*types.Table, Table1 *type
|
||||
FieldNamesWithUnderline = FieldNamesWithUnderline + Underline + Column1.NameGo_translit
|
||||
FieldNamesWithComma = FieldNamesWithComma + Plus + Column1.NameGo
|
||||
|
||||
ProtoTypeName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
RequestName = RequestName + Underline + ProtoTypeName
|
||||
//ProtoTypeName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
//RequestName = RequestName + Underline + ProtoTypeName
|
||||
RequestName := create_files.FindText_ProtobufRequest_Column_ManyPK(Table1, Column1)
|
||||
|
||||
Underline = "_"
|
||||
Plus = "+"
|
||||
@ -178,6 +179,23 @@ func CreateFiles_FindModelBy_Table1(MapAll map[string]*types.Table, Table1 *type
|
||||
TextForeignModel := ForeignTable.NameGo
|
||||
Otvet = strings.ReplaceAll(Otvet, "ForeignModel", TextForeignModel)
|
||||
|
||||
//
|
||||
TextIDEqual := ""
|
||||
TextModelFieldName := ""
|
||||
MassPK := create_files.Find_PrimaryKeyColumns(Table1)
|
||||
MassPK_and_Column := create_files.AppendColumn(MassPK, Column1)
|
||||
for _, ColumnPK1 := range MassPK_and_Column {
|
||||
RequestColumnName, GolangCode := create_files.Convert_ProtobufVariableToGolangVariable(Table1, ColumnPK1, "Request.")
|
||||
if GolangCode == "" {
|
||||
TextIDEqual = TextIDEqual + "\t" + ColumnPK1.NameGo + " := " + RequestColumnName + "\n"
|
||||
} else {
|
||||
TextIDEqual = TextIDEqual + GolangCode
|
||||
}
|
||||
TextModelFieldName = TextModelFieldName + "\t" + "Model." + ColumnPK1.NameGo + " = " + ColumnPK1.NameGo + "\n"
|
||||
}
|
||||
Otvet = strings.ReplaceAll(Otvet, "\tID := Request.RequestFieldName", TextIDEqual)
|
||||
Otvet = strings.ReplaceAll(Otvet, "\tModel.FieldName = ID", TextModelFieldName)
|
||||
|
||||
return Otvet
|
||||
}
|
||||
|
||||
@ -308,7 +326,6 @@ func CreateFiles_FindModelBy_Test_Table1(Table1 *types.Table, TextTemplateFuncti
|
||||
FieldNamesWithComma := ""
|
||||
|
||||
//
|
||||
TextAssignFind := "\t" + `Request.RequestFieldName = 0` + "\n"
|
||||
TextAssign := ""
|
||||
TextFieldName_TEST := ""
|
||||
|
||||
@ -316,23 +333,31 @@ func CreateFiles_FindModelBy_Test_Table1(Table1 *types.Table, TextTemplateFuncti
|
||||
|
||||
Underline := ""
|
||||
Comma := ""
|
||||
RequestName := "Request_Model_"
|
||||
//RequestName := "Request_Model_"
|
||||
//for _, ColumnName1 := range MassColumnsString {
|
||||
DefaultValue := create_files.FindText_DefaultValue(Column1.TypeGo)
|
||||
RequestFieldName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
TextAssign = TextAssign + "\t" + `Request.` + RequestFieldName + ` = ` + DefaultValue + "\n"
|
||||
FieldNamesWithUnderline = FieldNamesWithUnderline + Underline + Column1.NameGo_translit
|
||||
FieldNamesWithComma = FieldNamesWithComma + Comma + Column1.NameGo
|
||||
TextFieldName_TEST = TextFieldName_TEST + Comma + DefaultValue
|
||||
|
||||
ProtoTypeName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
RequestName = RequestName + Underline + ProtoTypeName
|
||||
//ProtoTypeName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
//RequestName = RequestName + Underline + ProtoTypeName
|
||||
RequestName := create_files.FindText_ProtobufRequest_Column_ManyPK(Table1, Column1)
|
||||
|
||||
MassPK := create_files.Find_PrimaryKeyColumns(Table1)
|
||||
MassPK_and_Column := create_files.AppendColumn(MassPK, Column1)
|
||||
for _, ColumnPK1 := range MassPK_and_Column {
|
||||
RequestFieldName, _ := create_files.Convert_ProtobufVariableToGolangVariable(Table1, ColumnPK1, "Request.")
|
||||
TextAssign = TextAssign + "\t" + `` + RequestFieldName + ` = ` + DefaultValue + "\n"
|
||||
}
|
||||
//RequestFieldName := create_files.Convert_GolangTypeNameToProtobufFieldName(Column1.TypeGo)
|
||||
//TextAssign = TextAssign + "\t" + `` + RequestFieldName + ` = ` + DefaultValue + "\n"
|
||||
|
||||
Underline = "_"
|
||||
Comma = ", "
|
||||
//}
|
||||
Otvet = strings.ReplaceAll(Otvet, "RequestName", RequestName)
|
||||
Otvet = strings.ReplaceAll(Otvet, TextAssignFind, TextAssign)
|
||||
Otvet = strings.ReplaceAll(Otvet, "\t"+`Request.RequestFieldName = 0`+"\n", TextAssign)
|
||||
Otvet = strings.ReplaceAll(Otvet, "FieldNamesWithUnderline", FieldNamesWithUnderline)
|
||||
Otvet = strings.ReplaceAll(Otvet, "FieldNamesWithComma", FieldNamesWithComma)
|
||||
Otvet = strings.ReplaceAll(Otvet, "FieldNamesDefault", TextFieldName_TEST)
|
||||
|
Loading…
x
Reference in New Issue
Block a user