5 Commits

Author SHA1 Message Date
72569a0f75 fix: service template 2025-03-16 21:32:26 +07:00
0e56c3534a fix: module path 2025-03-16 21:03:50 +07:00
opbnq-q
db5bf3bae0 fix: sorting 2025-03-16 11:07:30 +07:00
199fe0a823 fix: pkg name 2025-03-15 21:26:04 +07:00
53b750ad27 fix: package name 2025-03-15 21:22:23 +07:00
10 changed files with 37 additions and 35 deletions

View File

@@ -1,8 +1,8 @@
package cmd
import (
"github.com/opbnq-q/nto-cli/model"
"log"
"nto_cli/model"
"os"
"github.com/rivo/tview"

View File

@@ -1,9 +1,9 @@
package generation
import (
"github.com/opbnq-q/nto-cli/model"
"github.com/opbnq-q/nto-cli/utils"
"log"
"nto_cli/model"
"nto_cli/utils"
"os"
"path/filepath"
"strings"

View File

@@ -3,9 +3,9 @@ package generation
import (
_ "embed"
"fmt"
"github.com/opbnq-q/nto-cli/model"
"github.com/opbnq-q/nto-cli/utils"
"log"
"nto_cli/model"
"nto_cli/utils"
"os"
"path/filepath"
"strings"
@@ -15,8 +15,6 @@ import (
//go:embed templates/scheme.tmpl
var SchemeTemplate string
const GolangServicesPath = "../../bindings/app/internal/services"
type Dependency struct {
ImportName string
ServiceName string
@@ -27,7 +25,6 @@ type Dependency struct {
type TemplateData struct {
StructName string
LowerName string
GolangServicesPath string
Fields []model.Field
Dependencies []Dependency
}
@@ -36,7 +33,6 @@ func GenerateScheme(model *model.Model, mkPath string) {
data := TemplateData{
StructName: model.Name,
LowerName: strings.ToLower(model.Name),
GolangServicesPath: GolangServicesPath,
Fields: model.Fields,
Dependencies: processDependencies(model.Fields),
}

View File

@@ -3,9 +3,9 @@ package generation
import (
_ "embed"
"fmt"
"github.com/opbnq-q/nto-cli/model"
"github.com/opbnq-q/nto-cli/utils"
"log"
"nto_cli/model"
"nto_cli/utils"
"os"
"path/filepath"
"strings"
@@ -18,7 +18,6 @@ var ServiceTemplate string
type ServiceTemplateContext struct {
LowerModelName string
ModelName string
ServicesPath string
}
func GenerateService(model *model.Model, mkPath string) {
@@ -38,7 +37,6 @@ func GenerateService(model *model.Model, mkPath string) {
context := ServiceTemplateContext{
LowerModelName: strings.ToLower(model.Name),
ModelName: model.Name,
ServicesPath: GolangServicesPath,
}
serviceTemplate, err := template.New("service").Parse(ServiceTemplate)

View File

@@ -4,7 +4,7 @@ import { onMounted, reactive } from 'vue'
import { getDefaultValues } from '../utils/structs/defaults.util'
import Service from './{{.LowerName}}.service'
import type { Scheme } from '../types/scheme.type'
import { {{.StructName}} } from '{{.GolangServicesPath}}'
import { {{.StructName}} } from '../../bindings/github.com/kuzgoga/nto-boilerplate/internal/services'
import { ref } from 'vue'
import type { Validate } from "../types/validate.type";
import { getDefaultSortOptions } from "../utils/structs/default-sort-options.util";

View File

@@ -1,5 +1,5 @@
import { GetAll, Create, Delete, GetById, Update, Count, SortedByOrder, SearchByAllTextFields } from "../../bindings/app/internal/services/{{.LowerModelName}}service"
import type { {{.ModelName}} } from "{{.ServicesPath}}"
import { GetAll, Create, Delete, GetById, Update, Count, SortedByOrder, SearchByAllTextFields } from "../../bindings/github.com/kuzgoga/nto-boilerplate/internal/services/{{.LowerModelName}}service"
import type { {{.ModelName}} } from "../../bindings/github.com/kuzgoga/nto-boilerplate/internal/services"
import type { IService } from "../types/service.type"
import type { SortOptions } from "../types/sort-options.type";
@@ -34,6 +34,15 @@ export default class {{.ModelName}}Service implements IService<{{.ModelName}}> {
}
async sort(options: SortOptions<{{.ModelName}}>) {
return await SortedByOrder(Object.entries(options).map(item => ({Name: item[0], Order: item[1]}))) as {{ .ModelName }}[]
return (await SortedByOrder(
Object.entries(options).map((item) => {
if (item[1] !== 'NONE') {
return ({
Name: item[0],
Order: item[1],
})
}
}).filter(item => !!item)
)) as {{.ModelName}}[];
}
}

3
go.mod
View File

@@ -1,9 +1,8 @@
module nto_cli
module github.com/opbnq-q/nto-cli
go 1.22.12
require (
github.com/fatih/structtag v1.2.0 // indirect
github.com/gdamore/encoding v1.0.0 // indirect
github.com/gdamore/tcell/v2 v2.7.1 // indirect
github.com/kuzgoga/fogg v0.1.2 // indirect

View File

@@ -1,11 +1,11 @@
package main
import (
"github.com/opbnq-q/nto-cli/cmd"
"github.com/opbnq-q/nto-cli/generation"
"github.com/opbnq-q/nto-cli/model"
"github.com/opbnq-q/nto-cli/utils"
"log"
"nto_cli/cmd"
"nto_cli/generation"
"nto_cli/model"
"nto_cli/utils"
)
func main() {

View File

@@ -1,6 +1,6 @@
package model
import "nto_cli/utils"
import "github.com/opbnq-q/nto-cli/utils"
func GetNotImplementedModels(models []Model) []Model {
var unimplementedModels []Model

View File

@@ -1,11 +1,11 @@
package model
import (
"github.com/opbnq-q/nto-cli/utils"
"go/ast"
"go/parser"
"go/token"
"log/slog"
"nto_cli/utils"
"os"
"path/filepath"
"strings"