diff --git a/generation/gen.go b/generation/gen.go
index bd25ffe..03e803c 100644
--- a/generation/gen.go
+++ b/generation/gen.go
@@ -14,4 +14,5 @@ func Generate(structName string, fields []entities.Field) {
panic(err)
}
GenerateService(structName, mkPath)
+ GenerateScheme(structName, fields, mkPath)
}
\ No newline at end of file
diff --git a/generation/page.go b/generation/page.go
deleted file mode 100644
index 983cbe8..0000000
--- a/generation/page.go
+++ /dev/null
@@ -1,2 +0,0 @@
-package generation
-
diff --git a/generation/scheme.go b/generation/scheme.go
index 1351c2d..e65474b 100644
--- a/generation/scheme.go
+++ b/generation/scheme.go
@@ -1 +1,57 @@
-package generation
\ No newline at end of file
+package generation
+
+import (
+ "fmt"
+ "nto_cli/entities"
+ "nto_cli/utils"
+ "os"
+ "strings"
+)
+
+func GenerateScheme(structName string, fields []entities.Field, mkPath string) {
+ schemeFile, err := os.Create(mkPath + "/" + strings.ToTitle(structName) + "Scheme.vue")
+ if err != nil {
+ panic(err)
+ }
+ defer schemeFile.Close()
+ _, err = schemeFile.WriteString(fmt.Sprintf(
+ `
+
+
+ {
+export default class %sService implements IService<%s> {
async read(id: number) {
return await GetById(id)
}
@@ -58,7 +46,7 @@ export class %sService implements IService<%s> {
return await ExportToExcel()
}
}
-`, GetServiceBindPath(structName), structName, GetServiceStructType(structName), GetServiceType(), structName, structName, structName, structName, structName))
+`, utils.GetServiceBindPath(structName), structName, utils.GetServiceStructType(structName), utils.GetServiceType(), structName, structName, structName, structName, structName))
if err != nil {
panic(err)
}
diff --git a/utils/imports.go b/utils/imports.go
new file mode 100644
index 0000000..fad99d1
--- /dev/null
+++ b/utils/imports.go
@@ -0,0 +1,21 @@
+package utils
+
+import (
+ "fmt"
+ "strings"
+)
+
+func GetServiceBindPath(structName string) string {
+ path := fmt.Sprintf("../../bindings/app/internal/services/%sservice.ts", strings.ToLower(structName))
+ return path
+}
+
+func GetServiceStructType(structName string) string {
+ path := "../../bindings/app/internal/services/models.ts"
+ return path
+}
+
+func GetServiceType() string {
+ path := "../types/service.type.ts"
+ return path
+}
\ No newline at end of file