4 Commits

Author SHA1 Message Date
31c5c49589 fix: sorting method generation 2025-03-12 16:08:36 +07:00
51d8531792 upd: README.md 2025-03-12 16:01:53 +07:00
da19da2d63 update: README.md 2025-03-12 15:58:34 +07:00
e1012c234c feat: sorting 2025-03-12 15:57:30 +07:00
4 changed files with 16 additions and 8 deletions

View File

@@ -3,7 +3,7 @@
## Install ## Install
```shell ```shell
go install git.gogacoder.ru/NTO/crudgen/cmd/crudgen@v1.0.7 go install git.gogacoder.ru/NTO/crudgen/cmd/crudgen@1.0.12
``` ```
## Run ## Run

View File

@@ -54,3 +54,9 @@ const CountRawTemplate = `func (service *{{.ServiceName}}) Count() (int64, error
amount, err := dal.{{.EntityType}}.Count() amount, err := dal.{{.EntityType}}.Count()
return amount, err return amount, err
}` }`
const SortedByOrderTemplate = `func (service *{{.ServiceName}}) SortedByOrder(fieldsSortOrder map[string]string) ([]*{{.EntityType}}, error) {
return utils.SortByOrder(fieldsSortOrder, {{.EntityType}}{})
}`
var implementedMethods = []string{CreateMethod, GetAllMethod, GetByIdMethod, UpdateMethod, DeleteMethod, CountMethod, SortedByOrderMethod}

View File

@@ -22,12 +22,14 @@ const GetByIdMethod = "GetById"
const UpdateMethod = "Update" const UpdateMethod = "Update"
const DeleteMethod = "Delete" const DeleteMethod = "Delete"
const CountMethod = "Count" const CountMethod = "Count"
const SortedByOrderMethod = "SortedByOrder"
var RawTemplates = map[string]string{ var RawTemplates = map[string]string{
CreateMethod: CreateRawTemplate, CreateMethod: CreateRawTemplate,
GetAllMethod: GetAllRawTemplate, GetAllMethod: GetAllRawTemplate,
GetByIdMethod: GetByIdRawTemplate, GetByIdMethod: GetByIdRawTemplate,
UpdateMethod: UpdateRawTemplate, UpdateMethod: UpdateRawTemplate,
DeleteMethod: DeleteRawTemplate, DeleteMethod: DeleteRawTemplate,
CountMethod: CountRawTemplate, CountMethod: CountRawTemplate,
SortedByOrderMethod: SortedByOrderTemplate,
} }

View File

@@ -244,7 +244,7 @@ func ImplementCrudMethods(modelName string, serviceName string, file *dst.File,
EntityPlural: ToPlural(modelName), EntityPlural: ToPlural(modelName),
} }
for _, methodName := range []string{CreateMethod, GetAllMethod, GetByIdMethod, UpdateMethod, DeleteMethod, CountMethod} { for _, methodName := range implementedMethods {
methodCode := GenerateCrudMethodCode(methodName, templateContext) methodCode := GenerateCrudMethodCode(methodName, templateContext)
methodDecl, err := MethodCodeToDeclaration(methodCode) methodDecl, err := MethodCodeToDeclaration(methodCode)
fmt.Printf("%s\n", methodCode) fmt.Printf("%s\n", methodCode)