You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
1.7 KiB
101 lines
1.7 KiB
<script lang="ts" setup> |
|
import { Divider } from 'ant-design-vue' |
|
import { watch } from 'vue' |
|
import { basicInfoSchemas } from './data' |
|
import { BasicForm, useForm } from '@/components/Form' |
|
import type { CodegenTableVO } from '@/api/infra/codegen/types' |
|
|
|
const props = defineProps({ |
|
basicInfo: { |
|
type: Object as PropType<Nullable<CodegenTableVO>>, |
|
default: () => null, |
|
}, |
|
}) |
|
|
|
const emit = defineEmits(['next']) |
|
|
|
const [register, { setFieldsValue, resetFields, validate }] = useForm({ |
|
labelWidth: 120, |
|
schemas: basicInfoSchemas, |
|
actionColOptions: { |
|
span: 14, |
|
}, |
|
showResetButton: false, |
|
submitButtonOptions: { |
|
text: '保存', |
|
}, |
|
submitFunc: customSubmitFunc, |
|
}) |
|
|
|
async function customSubmitFunc() { |
|
try { |
|
const values = await validate() |
|
emit('next', values) |
|
} |
|
catch (error) {} |
|
} |
|
|
|
watch( |
|
() => props.basicInfo, |
|
(basicInfo) => { |
|
if (!basicInfo) |
|
return |
|
resetFields() |
|
setFieldsValue({ ...basicInfo }) |
|
}, |
|
{ |
|
deep: true, |
|
immediate: true, |
|
}, |
|
) |
|
</script> |
|
|
|
<template> |
|
<div class="step1"> |
|
<div class="step1-form"> |
|
<BasicForm @register="register" /> |
|
</div> |
|
<Divider /> |
|
<h3>说明</h3> |
|
<h4>基本信息</h4> |
|
<p> 配置生成的基本信息 </p> |
|
|
|
<h4>生成信息</h4> |
|
<p> 配置生成生成的详细信息。 </p> |
|
</div> |
|
</template> |
|
|
|
<style lang="less" scoped> |
|
.step1 { |
|
&-form { |
|
width: 80%; |
|
margin: 0 auto; |
|
} |
|
|
|
h3 { |
|
margin: 0 0 12px; |
|
font-size: 16px; |
|
line-height: 32px; |
|
color: @text-color; |
|
} |
|
|
|
h4 { |
|
margin: 0 0 4px; |
|
font-size: 14px; |
|
line-height: 22px; |
|
color: @text-color; |
|
} |
|
|
|
p { |
|
color: @text-color; |
|
} |
|
} |
|
|
|
.pay-select { |
|
width: 20%; |
|
} |
|
|
|
.pay-input { |
|
width: 70%; |
|
} |
|
</style>
|
|
|