feat(mes):统一代码规范,form.vue 的

pull/348/head
YunaiV 2026-05-24 21:38:08 +08:00
parent 1edf29abeb
commit 19911a19c0
26 changed files with 78 additions and 12 deletions

View File

@ -38,6 +38,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesCalHolidayApi.Holiday & { dayDisplay?: string };
try {
await saveHoliday({ day: data.day, type: data.type, remark: data.remark });
//
await modalApi.close();
emit('success');
message.success('设置成功');

View File

@ -108,6 +108,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'shift';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -118,6 +119,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getPlan(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -84,6 +84,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'member';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -94,6 +95,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getTeam(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -56,6 +56,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvCheckPlanApi.CheckPlan;
try {
if (formMode.value === 'create') {
@ -80,6 +81,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'machinery';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -90,6 +92,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getCheckPlan(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -78,6 +78,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvCheckRecordApi.CheckRecord;
try {
if (formMode.value === 'create') {
@ -101,6 +102,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -111,6 +113,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getCheckRecord(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -73,6 +73,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesDvMachineryApi.Machinery;
try {
await (data.id ? updateMachinery(data) : createMachinery(data));
//
await modalApi.close();
emit('success');
message.success($t('ui.actionMessage.operationSuccess'));
@ -87,6 +88,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'check';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -97,6 +99,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getMachinery(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -45,6 +45,7 @@ const [Modal, modalApi] = useVbenModal({
text += `更新成功数量:${importData.updateCodes?.length || 0}`;
text += `更新失败数量:${Object.keys(importData.failureCodes || {}).length}`;
message.info(text);
//
await modalApi.close();
emit('success');
message.success($t('ui.actionMessage.operationSuccess'));

View File

@ -1,7 +1,7 @@
<script lang="ts" setup>
import type { MesDvMachineryTypeApi } from '#/api/mes/dv/machinery/type';
import { computed } from 'vue';
import { computed, ref } from 'vue';
import { useVbenModal } from '@vben/common-ui';
@ -19,8 +19,8 @@ import { useFormSchema } from '../data';
const emit = defineEmits(['success']);
let formMode: 'create' | 'update' = 'create';
const getTitle = computed(() => (formMode === 'create' ? '新增设备类型' : '修改设备类型'));
const formMode = ref<'create' | 'update'>('create'); //
const getTitle = computed(() => (formMode.value === 'create' ? '新增设备类型' : '修改设备类型'));
const [Form, formApi] = useVbenForm({
commonConfig: {
@ -62,7 +62,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
const data = modalApi.getData<{ id?: number; parentId?: number; type?: 'create' | 'update' }>();
formMode = data?.type || 'create';
formMode.value = data?.type || 'create';
if (!data?.id) {
await formApi.setValues({ parentId: data?.parentId ?? 0 });
return;

View File

@ -81,6 +81,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvMaintenRecordApi.MaintenRecord;
try {
if (formMode.value === 'create') {
@ -108,6 +109,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -119,6 +121,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getMaintenRecord(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -22,8 +22,10 @@ import { MesDvRepairResultEnum, MesDvRepairStatusEnum } from '#/views/mes/utils/
import { useFormSchema } from '../data';
import LineList from './line-list.vue';
type FormMode = 'confirm' | 'create' | 'detail' | 'finish' | 'update';
const emit = defineEmits(['success']);
const formMode = ref<'confirm' | 'create' | 'detail' | 'finish' | 'update'>('create');
const formMode = ref<FormMode>('create');
const formData = ref<MesDvRepairApi.Repair>();
const isDetail = computed(() => formMode.value === 'detail');
const isReadonly = computed(() => ['confirm', 'detail', 'finish'].includes(formMode.value));
@ -137,6 +139,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvRepairApi.Repair;
try {
if (formMode.value === 'create') {
@ -160,7 +163,8 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
const data = modalApi.getData<{ id?: number; type?: 'confirm' | 'create' | 'detail' | 'finish' | 'update' }>();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(isReadonly.value);
modalApi.setState({ showConfirmButton: ['create', 'update'].includes(formMode.value) });
@ -170,6 +174,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getRepair(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -55,6 +55,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesDvSubjectApi.Subject;
try {
await (data.id ? updateSubject(data) : createSubject(data));
//
await modalApi.close();
emit('success');
message.success($t('ui.actionMessage.operationSuccess'));
@ -67,6 +68,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');

View File

@ -55,6 +55,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = normalizeRuleData(
(await formApi.getValues()) as MesMdAutoCodeRuleApi.AutoCodeRule,
);
@ -62,6 +63,7 @@ const [Modal, modalApi] = useVbenModal({
await (formData.value?.id
? updateAutoCodeRule(data)
: createAutoCodeRule(data));
//
await modalApi.close();
emit('success');
message.success($t('ui.actionMessage.operationSuccess'));
@ -75,6 +77,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<MesMdAutoCodeRuleApi.AutoCodeRule>();
if (!data?.id) {
return;
@ -82,6 +85,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getAutoCodeRule(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -65,6 +65,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = normalizePartData(
(await formApi.getValues()) as MesMdAutoCodePartApi.AutoCodePart,
);
@ -72,6 +73,7 @@ const [Modal, modalApi] = useVbenModal({
await (formData.value?.id
? updateAutoCodePart(data)
: createAutoCodePart(data));
//
await modalApi.close();
emit('success');
message.success($t('ui.actionMessage.operationSuccess'));
@ -85,6 +87,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{
id?: number;
maxSort?: number;
@ -100,6 +103,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getAutoCodePart(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -38,6 +38,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesCalHolidayApi.Holiday & { dayDisplay?: string };
try {
await saveHoliday({ day: data.day, type: data.type, remark: data.remark });
//
await modalApi.close();
emit('success');
ElMessage.success('设置成功');

View File

@ -109,6 +109,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'shift';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -119,6 +120,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getPlan(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -84,6 +84,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'member';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -94,6 +95,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getTeam(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -56,6 +56,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvCheckPlanApi.CheckPlan;
try {
if (formMode.value === 'create') {
@ -80,6 +81,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'machinery';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -90,6 +92,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getCheckPlan(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -78,6 +78,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvCheckRecordApi.CheckRecord;
try {
if (formMode.value === 'create') {
@ -101,6 +102,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -111,6 +113,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getCheckRecord(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -73,6 +73,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesDvMachineryApi.Machinery;
try {
await (data.id ? updateMachinery(data) : createMachinery(data));
//
await modalApi.close();
emit('success');
ElMessage.success($t('ui.actionMessage.operationSuccess'));
@ -87,6 +88,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
subTabsName.value = 'check';
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -97,6 +99,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getMachinery(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -45,6 +45,7 @@ const [Modal, modalApi] = useVbenModal({
text += `更新成功数量:${importData.updateCodes?.length || 0}`;
text += `更新失败数量:${Object.keys(importData.failureCodes || {}).length}`;
ElMessage.info(text);
//
await modalApi.close();
emit('success');
ElMessage.success($t('ui.actionMessage.operationSuccess'));

View File

@ -1,7 +1,7 @@
<script lang="ts" setup>
import type { MesDvMachineryTypeApi } from '#/api/mes/dv/machinery/type';
import { computed } from 'vue';
import { computed, ref } from 'vue';
import { useVbenModal } from '@vben/common-ui';
@ -19,8 +19,8 @@ import { useFormSchema } from '../data';
const emit = defineEmits(['success']);
let formMode: 'create' | 'update' = 'create';
const getTitle = computed(() => (formMode === 'create' ? '新增设备类型' : '修改设备类型'));
const formMode = ref<'create' | 'update'>('create'); //
const getTitle = computed(() => (formMode.value === 'create' ? '新增设备类型' : '修改设备类型'));
const [Form, formApi] = useVbenForm({
commonConfig: {
@ -62,7 +62,7 @@ const [Modal, modalApi] = useVbenModal({
}
await formApi.resetForm();
const data = modalApi.getData<{ id?: number; parentId?: number; type?: 'create' | 'update' }>();
formMode = data?.type || 'create';
formMode.value = data?.type || 'create';
if (!data?.id) {
await formApi.setValues({ parentId: data?.parentId ?? 0 });
return;

View File

@ -81,6 +81,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvMaintenRecordApi.MaintenRecord;
try {
if (formMode.value === 'create') {
@ -108,6 +109,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');
@ -119,6 +121,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getMaintenRecord(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -22,8 +22,10 @@ import { MesDvRepairResultEnum, MesDvRepairStatusEnum } from '#/views/mes/utils/
import { useFormSchema } from '../data';
import LineList from './line-list.vue';
type FormMode = 'confirm' | 'create' | 'detail' | 'finish' | 'update';
const emit = defineEmits(['success']);
const formMode = ref<'confirm' | 'create' | 'detail' | 'finish' | 'update'>('create');
const formMode = ref<FormMode>('create');
const formData = ref<MesDvRepairApi.Repair>();
const isDetail = computed(() => formMode.value === 'detail');
const isReadonly = computed(() => ['confirm', 'detail', 'finish'].includes(formMode.value));
@ -137,6 +139,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = (await formApi.getValues()) as MesDvRepairApi.Repair;
try {
if (formMode.value === 'create') {
@ -160,7 +163,8 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
const data = modalApi.getData<{ id?: number; type?: 'confirm' | 'create' | 'detail' | 'finish' | 'update' }>();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(isReadonly.value);
modalApi.setState({ showConfirmButton: ['create', 'update'].includes(formMode.value) });
@ -170,6 +174,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getRepair(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -55,6 +55,7 @@ const [Modal, modalApi] = useVbenModal({
const data = (await formApi.getValues()) as MesDvSubjectApi.Subject;
try {
await (data.id ? updateSubject(data) : createSubject(data));
//
await modalApi.close();
emit('success');
ElMessage.success($t('ui.actionMessage.operationSuccess'));
@ -67,6 +68,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{ id?: number; type?: FormMode }>();
formMode.value = data?.type || 'create';
formApi.setDisabled(formMode.value === 'detail');

View File

@ -55,6 +55,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = normalizeRuleData(
(await formApi.getValues()) as MesMdAutoCodeRuleApi.AutoCodeRule,
);
@ -62,6 +63,7 @@ const [Modal, modalApi] = useVbenModal({
await (formData.value?.id
? updateAutoCodeRule(data)
: createAutoCodeRule(data));
//
await modalApi.close();
emit('success');
ElMessage.success($t('ui.actionMessage.operationSuccess'));
@ -75,6 +77,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<MesMdAutoCodeRuleApi.AutoCodeRule>();
if (!data?.id) {
return;
@ -82,6 +85,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getAutoCodeRule(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();

View File

@ -65,6 +65,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
modalApi.lock();
//
const data = normalizePartData(
(await formApi.getValues()) as MesMdAutoCodePartApi.AutoCodePart,
);
@ -72,6 +73,7 @@ const [Modal, modalApi] = useVbenModal({
await (formData.value?.id
? updateAutoCodePart(data)
: createAutoCodePart(data));
//
await modalApi.close();
emit('success');
ElMessage.success($t('ui.actionMessage.operationSuccess'));
@ -85,6 +87,7 @@ const [Modal, modalApi] = useVbenModal({
return;
}
await formApi.resetForm();
//
const data = modalApi.getData<{
id?: number;
maxSort?: number;
@ -100,6 +103,7 @@ const [Modal, modalApi] = useVbenModal({
modalApi.lock();
try {
formData.value = await getAutoCodePart(data.id);
// values
await formApi.setValues(formData.value);
} finally {
modalApi.unlock();