feat: 更新 @riwa/api-types 依赖版本至 0.0.58;优化产品编号验证逻辑,调整按钮文本和表单字段类型
This commit is contained in:
@@ -184,7 +184,7 @@ function handleCreateDraftAndSubmit() {
|
||||
</NFormItem>
|
||||
|
||||
<NSpace justify="end" class="mt-5">
|
||||
<NButton type="primary" ghost @click="handleCreateDraftAndSubmit">创建并发布</NButton>
|
||||
<NButton type="primary" ghost @click="handleCreateDraftAndSubmit">创建并提交审核</NButton>
|
||||
<NButton type="primary" @click="handleCreateDraft">创建</NButton>
|
||||
</NSpace>
|
||||
</NForm>
|
||||
|
||||
@@ -25,14 +25,33 @@ const form = ref<Body>({
|
||||
code: '',
|
||||
categoryId: '',
|
||||
description: '',
|
||||
estimatedValue: '',
|
||||
totalSupplyLimit: '',
|
||||
estimatedValue: '1',
|
||||
totalSupplyLimit: '100',
|
||||
proofDocuments: ''
|
||||
});
|
||||
|
||||
const rules: FormRules = {
|
||||
name: [{ required: true, message: '请输入产品名称', trigger: ['blur', 'input'] }],
|
||||
code: [{ required: true, message: '请输入产品编号', trigger: ['blur', 'input'] }],
|
||||
code: [
|
||||
{ required: true, message: '请输入产品编号', trigger: ['blur', 'input'] },
|
||||
{
|
||||
trigger: ['blur'],
|
||||
asyncValidator: async (rule, value, callback) => {
|
||||
if (!value) return;
|
||||
const { data: check } = await safeClient(() =>
|
||||
client.api.admin.rwa.issuance.products.check_code.get({
|
||||
query: {
|
||||
code: value
|
||||
}
|
||||
})
|
||||
);
|
||||
if (check.value?.exists) {
|
||||
callback(new Error('产品编号已存在'));
|
||||
}
|
||||
callback();
|
||||
}
|
||||
}
|
||||
],
|
||||
categoryId: [{ required: true, message: '请输入产品类型', trigger: ['blur', 'input'] }],
|
||||
estimatedValue: [{ required: true, message: '请输入产品估值', trigger: ['blur', 'input'] }],
|
||||
totalSupplyLimit: [{ required: true, message: '请输入总发行量', trigger: ['blur', 'input'] }]
|
||||
@@ -89,10 +108,20 @@ function handleCreateDraftAndSubmit() {
|
||||
/>
|
||||
</NFormItem>
|
||||
<NFormItem path="estimatedValue" label="产品估值">
|
||||
<NInput v-model:value="form.estimatedValue" />
|
||||
<NInputNumber
|
||||
:min="1"
|
||||
:step="100"
|
||||
:value="Number(form.estimatedValue)"
|
||||
@update:value="val => (form.estimatedValue = String(val))"
|
||||
/>
|
||||
</NFormItem>
|
||||
<NFormItem path="totalSupplyLimit" label="总发行量">
|
||||
<NInput v-model:value="form.totalSupplyLimit" />
|
||||
<NInputNumber
|
||||
:min="1"
|
||||
:step="100"
|
||||
:value="Number(form.totalSupplyLimit)"
|
||||
@update:value="val => (form.totalSupplyLimit = String(val))"
|
||||
/>
|
||||
</NFormItem>
|
||||
<NFormItem path="description" label="产品描述">
|
||||
<NInput v-model:value="form.description" type="textarea" />
|
||||
|
||||
@@ -38,7 +38,27 @@ const form = ref<Body>({
|
||||
|
||||
const rules: FormRules = {
|
||||
name: [{ required: true, message: '请输入产品名称', trigger: ['blur', 'input'] }],
|
||||
code: [{ required: true, message: '请输入产品编号', trigger: ['blur', 'input'] }],
|
||||
code: [
|
||||
{ required: true, message: '请输入产品编号', trigger: ['blur', 'input'] },
|
||||
{
|
||||
trigger: ['blur'],
|
||||
asyncValidator: async (rule, value, callback) => {
|
||||
if (!value) return;
|
||||
const { data: check } = await safeClient(() =>
|
||||
client.api.admin.rwa.issuance.products.check_code.get({
|
||||
query: {
|
||||
code: value,
|
||||
excludeId: props.data.id
|
||||
}
|
||||
})
|
||||
);
|
||||
if (check.value?.exists) {
|
||||
callback(new Error('产品编号已存在'));
|
||||
}
|
||||
callback();
|
||||
}
|
||||
}
|
||||
],
|
||||
categoryId: [{ required: true, message: '请输入产品类型', trigger: ['blur', 'input'] }],
|
||||
estimatedValue: [{ required: true, message: '请输入产品估值', trigger: ['blur', 'input'] }],
|
||||
totalSupplyLimit: [{ required: true, message: '请输入总发行量', trigger: ['blur', 'input'] }]
|
||||
|
||||
@@ -145,9 +145,18 @@ const columns: TableBaseColumns = [
|
||||
type: 'error',
|
||||
ghost: true,
|
||||
size: 'small',
|
||||
visible: row.status === 'draft',
|
||||
visible: row.status === 'draft' || row.status === 'cancelled',
|
||||
onClick: () => {
|
||||
tableInst.value?.reload();
|
||||
dialog.create({
|
||||
title: '确认删除该发行期吗?',
|
||||
content: '删除后该发行期将不可恢复,请谨慎操作。',
|
||||
positiveText: '确认',
|
||||
negativeText: '取消',
|
||||
onPositiveClick: async () => {
|
||||
await safeClient(client.api.admin.rwa.issuance.editions({ id: row.id }).delete());
|
||||
tableInst.value?.reload();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user