mirror of
https://github.com/opbnq-q/nto-cli.git
synced 2025-12-06 23:40:35 +07:00
53 lines
1.3 KiB
Cheetah
53 lines
1.3 KiB
Cheetah
<script setup lang="ts">
|
|
import Table from '../table/Table.vue'
|
|
import { onMounted, reactive } from 'vue'
|
|
import { getDefaultValues } from '../utils/structs/defaults.util'
|
|
import Service from './{{.LowerName}}.service.ts'
|
|
import type { Scheme } from '../types/scheme.type'
|
|
import { {{.StructName}} } from '{{.GolangServicesPath}}'
|
|
import { ref } from 'vue'
|
|
import type { Validate } from '../types/validate.type'
|
|
{{range .Dependencies}}
|
|
import {{.ImportName}} from '../{{.LowerName}}/{{.LowerName}}.service.ts'
|
|
const {{.ServiceName}} = new {{.ImportName}}
|
|
{{end}}
|
|
|
|
const service = new Service
|
|
|
|
const items = ref<{{ .StructName }}[]>([])
|
|
|
|
const load = async () => {
|
|
{{range .Dependencies}}
|
|
(scheme as any).{{.FieldName}}.type!.nested!.values = await {{.ServiceName}}.readAll();
|
|
{{end}}
|
|
items.value = await service.readAll();
|
|
return items.value;
|
|
};
|
|
|
|
onMounted(async () => {
|
|
load()
|
|
})
|
|
|
|
const scheme: Scheme<{{.StructName}}> = reactive({
|
|
entityId: "{{.StructName}}Id",
|
|
{{range .Fields}}
|
|
{{.Name}}: {{.GenerateFieldCode}},
|
|
{{end}}
|
|
})
|
|
|
|
const getDefaults = () => getDefaultValues(scheme)
|
|
|
|
const validate: Validate<{{.StructName}}> = (entity) => {
|
|
return {
|
|
status: 'success'
|
|
}
|
|
};
|
|
|
|
</script>
|
|
|
|
<template>
|
|
<main class="w-screen h-screen">
|
|
<Table :scheme :service :get-defaults :load :items :validate></Table>
|
|
</main>
|
|
</template>
|