package templ import ( "log" "strings" "git.ymnuktech.ru/ymnuk/yt-gen-app/structs" uuid "github.com/satori/go.uuid" ) // Найти таблицу по имени func FindSourceDataInDBByName(project *structs.Project, name string) *structs.Table /*uuid.UUID*/ { if len(project.DB.Tables) == 0 { //return uuid.Nil return nil } for i := range project.DB.Tables { if project.DB.Tables[i].Name == name { //return project.DB.Tables[i].ID return &project.DB.Tables[i] } } //return uuid.Nil return nil } // Найти ID поля по имени func FindFieldIdInDBByName(project *structs.Project, tblID uuid.UUID, fldName string) uuid.UUID { if len(project.DB.Tables) == 0 { return uuid.Nil } for i := range project.DB.Tables { if project.DB.Tables[i].ID == tblID { for j := range project.DB.Tables[i].Fields { if project.DB.Tables[i].Fields[j].Name == strings.ToLower(fldName) { return project.DB.Tables[i].Fields[j].ID } } } } return uuid.Nil } // Найти таблицу по ID func FindSourceDataInDBByID(project *structs.Project, id uuid.UUID) *structs.Table { if len(project.DB.Tables) == 0 { return nil } for i := range project.DB.Tables { if project.DB.Tables[i].ID == id { //return project.DB.Tables[i].Name return &project.DB.Tables[i] } } return nil } // Найти имя поля в таблице по ID func FindFieldNameInDBById(project *structs.Project, tblID uuid.UUID, fldId uuid.UUID) string { if len(project.DB.Tables) == 0 { return "" } for i := range project.DB.Tables { if project.DB.Tables[i].ID == tblID { for j := range project.DB.Tables[i].Fields { if project.DB.Tables[i].Fields[j].ID == fldId { return project.DB.Tables[i].Fields[j].Name } } } } return "" } func FindSourceDataInInterfaceByName(project *structs.Project, name string) *structs.Interface { // TODO log.Fatal("Функция в разработки") return nil } func FindSourceDataInInterfaceByID(project *structs.Project, id uuid.UUID) *structs.Interface { // TODO log.Fatal("Функция в разработки") return nil } // Найти ID поля по имени func FindFieldIdInInterfaceByName(project *structs.Project, tblID uuid.UUID, fldName string) *structs.Field { // TODO log.Fatal("Функция в разработки") return nil } // Найти имя поля в интерфейсе по ID func FindFieldNameInInterfaceById(project *structs.Project, tblID uuid.UUID, fldId uuid.UUID) string { if len(project.DB.Tables) == 0 { return "" } for i := range project.DB.Tables { if project.DB.Tables[i].ID == tblID { for j := range project.DB.Tables[i].Fields { if project.DB.Tables[i].Fields[j].ID == fldId { return project.DB.Tables[i].Fields[j].Name } } } } return "" }