修复代码生成父菜单选择无效,前端代码缺少字段,格式错误

pull/2/head
jueying 2022-10-31 17:13:05 +08:00
parent 3cee922e69
commit faea04546e
6 changed files with 227 additions and 221 deletions

View File

@ -1,5 +1,5 @@
import { useAxios } from '@/hooks/web/useAxios' import { useAxios } from '@/hooks/web/useAxios'
import { ${simpleClassName}VO,${simpleClassName}PageReqVO,${simpleClassName}ExcelReqVO } from './types' import { ${simpleClassName}VO, ${simpleClassName}PageReqVO, ${simpleClassName}ExcelReqVO } from './types'
const request = useAxios() const request = useAxios()

View File

@ -3,6 +3,8 @@ export type ${simpleClassName}VO = {
#if ($column.createOperation || $column.updateOperation) #if ($column.createOperation || $column.updateOperation)
#if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer") #if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer")
${column.javaField}: number ${column.javaField}: number
#elseif(${column.javaType.toLowerCase()} == "date")
${column.javaField}: string
#else #else
${column.javaField}: ${column.javaType.toLowerCase()} ${column.javaField}: ${column.javaType.toLowerCase()}
#end #end
@ -15,6 +17,8 @@ export type ${simpleClassName}PageReqVO = {
#if (${column.listOperation})##查询操作 #if (${column.listOperation})##查询操作
#if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer") #if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer")
${column.javaField}: number ${column.javaField}: number
#elseif(${column.javaType.toLowerCase()} == "date")
${column.javaField}: string
#else #else
${column.javaField}: ${column.javaType.toLowerCase()} ${column.javaField}: ${column.javaType.toLowerCase()}
#end #end
@ -27,6 +31,8 @@ export type ${simpleClassName}ExcelReqVO = {
#if (${column.listOperation})##查询操作 #if (${column.listOperation})##查询操作
#if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer") #if(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer")
${column.javaField}: number ${column.javaField}: number
#elseif(${column.javaType.toLowerCase()} == "date")
${column.javaField}: string
#else #else
${column.javaField}: ${column.javaType.toLowerCase()} ${column.javaField}: ${column.javaType.toLowerCase()}
#end #end

View File

@ -8,7 +8,7 @@ export const rules = reactive({
#foreach ($column in $columns) #foreach ($column in $columns)
#if (($column.createOperation || $column.updateOperation) && !$column.nullable && !${column.primaryKey})## 创建或者更新操作 && 要求非空 && 非主键 #if (($column.createOperation || $column.updateOperation) && !$column.nullable && !${column.primaryKey})## 创建或者更新操作 && 要求非空 && 非主键
#set($comment=$column.columnComment) #set($comment=$column.columnComment)
$column.javaField: [{ required: true, message: "${comment}不能为空", trigger: #if($column.htmlType == "select")"change"#else"blur"#end }], $column.javaField: [{ required: true, message: '${comment}不能为空', trigger: #if($column.htmlType == "select")'change'#else'blur'#end }],
#end #end
#end #end
}) })
@ -34,7 +34,7 @@ const crudSchemas = reactive<CrudSchema[]>([
#else #else
#if (!$column.createOperation && !$column.updateOperation) #if (!$column.createOperation && !$column.updateOperation)
form: { form: {
false show: false
}, },
#elseif(!("" != $column.dictType)) #elseif(!("" != $column.dictType))
form: { form: {

View File

@ -1,55 +1,55 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, unref } from 'vue' import { ref, unref } from 'vue'
import dayjs from 'dayjs' import dayjs from 'dayjs'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import { DICT_TYPE } from '@/utils/dict' import { DICT_TYPE } from '@/utils/dict'
import { useTable } from '@/hooks/web/useTable' import { useTable } from '@/hooks/web/useTable'
import { useI18n } from '@/hooks/web/useI18n' import { useI18n } from '@/hooks/web/useI18n'
import { FormExpose } from '@/components/Form' import { FormExpose } from '@/components/Form'
import type { ${simpleClassName}VO } from '@/api/${table.moduleName}/${simpleClassName}/types' import type { ${simpleClassName}VO } from '@/api/${table.moduleName}/${simpleClassName}/types'
import { rules, allSchemas } from './${simpleClassName}.data' import { rules, allSchemas } from './${simpleClassName}.data'
import * as ${simpleClassName}Api from '@/api/${table.moduleName}/${simpleClassName}' import * as ${simpleClassName}Api from '@/api/${table.moduleName}/${simpleClassName}'
const { t } = useI18n() // 国际化 const { t } = useI18n() // 国际化
// ========== 列表相关 ========== // ========== 列表相关 ==========
const { register, tableObject, methods } = useTable<${simpleClassName}VO>({ const { register, tableObject, methods } = useTable<${simpleClassName}VO>({
getListApi: ${simpleClassName}Api.get${simpleClassName}PageApi, getListApi: ${simpleClassName}Api.get${simpleClassName}PageApi,
delListApi: ${simpleClassName}Api.delete${simpleClassName}Api, delListApi: ${simpleClassName}Api.delete${simpleClassName}Api,
exportListApi: ${simpleClassName}Api.export${simpleClassName}Api exportListApi: ${simpleClassName}Api.export${simpleClassName}Api
}) })
const { getList, setSearchParams, delList, exportList } = methods const { getList, setSearchParams, delList, exportList } = methods
// ========== CRUD 相关 ========== // ========== CRUD 相关 ==========
const actionLoading = ref(false) // 遮罩层 const actionLoading = ref(false) // 遮罩层
const actionType = ref('') // 操作按钮的类型 const actionType = ref('') // 操作按钮的类型
const dialogVisible = ref(false) // 是否显示弹出层 const dialogVisible = ref(false) // 是否显示弹出层
const dialogTitle = ref('edit') // 弹出层标题 const dialogTitle = ref('edit') // 弹出层标题
const formRef = ref<FormExpose>() // 表单 Ref const formRef = ref<FormExpose>() // 表单 Ref
// 设置标题 // 设置标题
const setDialogTile = (type: string) => { const setDialogTile = (type: string) => {
dialogTitle.value = t('action.' + type) dialogTitle.value = t('action.' + type)
actionType.value = type actionType.value = type
dialogVisible.value = true dialogVisible.value = true
} }
// 新增操作 // 新增操作
const handleCreate = () => { const handleCreate = () => {
setDialogTile('create') setDialogTile('create')
// 重置表单 // 重置表单
unref(formRef)?.getElFormRef()?.resetFields() unref(formRef)?.getElFormRef()?.resetFields()
} }
// 修改操作 // 修改操作
const handleUpdate = async (row: ${simpleClassName}VO) => { const handleUpdate = async (row: ${simpleClassName}VO) => {
setDialogTile('update') setDialogTile('update')
// 设置数据 // 设置数据
const res = await ${simpleClassName}Api.get${simpleClassName}Api(row.id) const res = await ${simpleClassName}Api.get${simpleClassName}Api(row.id)
unref(formRef)?.setValues(res) unref(formRef)?.setValues(res)
} }
// 提交按钮 // 提交按钮
const submitForm = async () => { const submitForm = async () => {
const elForm = unref(formRef)?.getElFormRef() const elForm = unref(formRef)?.getElFormRef()
if (!elForm) return if (!elForm) return
elForm.validate(async (valid) => { elForm.validate(async (valid) => {
@ -73,20 +73,20 @@
} }
} }
}) })
} }
// ========== 详情相关 ========== // ========== 详情相关 ==========
const detailRef = ref() // 详情 Ref const detailRef = ref() // 详情 Ref
// 详情操作 // 详情操作
const handleDetail = async (row: ${simpleClassName}VO) => { const handleDetail = async (row: ${simpleClassName}VO) => {
// 设置数据 // 设置数据
detailRef.value = row detailRef.value = row
setDialogTile('detail') setDialogTile('detail')
} }
// ========== 初始化 ========== // ========== 初始化 ==========
getList() getList()
</script> </script>
<template> <template>

View File

@ -38,15 +38,15 @@ const submitForm = async () => {
if (basicForm && genForm) { if (basicForm && genForm) {
const basicInfoData = (await basicInfo?.getFormData()) as CodegenTableVO const basicInfoData = (await basicInfo?.getFormData()) as CodegenTableVO
const genInfoData = (await genInfo?.getFormData()) as CodegenTableVO const genInfoData = (await genInfo?.getFormData()) as CodegenTableVO
const genTable: CodegenUpdateReqVO = {
table: Object.assign({}, basicInfoData, genInfoData),
columns: cloumCurrentRow.value
}
if (parentMenuId.value) { if (parentMenuId.value) {
genInfoData.parentMenuId = parentMenuId.value genInfoData.parentMenuId = parentMenuId.value
} else { } else {
genInfoData.parentMenuId = 0 genInfoData.parentMenuId = 0
} }
const genTable: CodegenUpdateReqVO = {
table: Object.assign({}, basicInfoData, genInfoData),
columns: cloumCurrentRow.value
}
await updateCodegenTableApi(genTable) await updateCodegenTableApi(genTable)
ElMessage.success(t('common.updateSuccess')) ElMessage.success(t('common.updateSuccess'))
push('/infra/codegen') push('/infra/codegen')

View File

@ -150,7 +150,7 @@ defineExpose({
:props="menuProps" :props="menuProps"
:data="menuOptions" :data="menuOptions"
check-strictly check-strictly
@node-click="handleNodeClick" @change="handleNodeClick"
/> />
</template> </template>
</Form> </Form>