perf 改进表格图片、文件展示组件使用方式,减少冗余

fix 修复生成树表时选项加载错误
chore 清理生成代码cli包中的测试文件
This commit is contained in:
孟帅
2024-07-25 16:47:59 +08:00
parent a37d088360
commit 804d5d5e59
121 changed files with 238 additions and 2799 deletions

View File

@@ -107,6 +107,34 @@
return adaModalWidth(840);
});
// 提交表单
function confirmForm(e) {
e.preventDefault();
formRef.value.validate((errors) => {
if (!errors) {
formBtnLoading.value = true;
Edit(formValue.value)
.then((_res) => {
message.success('操作成功');
closeForm();
emit('reloadTable');
})
.finally(() => {
formBtnLoading.value = false;
});
} else {
message.error('请填写完整信息');
}
});
}
// 关闭表单
function closeForm() {
showModal.value = false;
loading.value = false;
}
// 打开模态框
function openModal(state: State) {
showModal.value = true;
@@ -136,33 +164,6 @@
});
}
// 提交表单
function confirmForm(e) {
e.preventDefault();
formRef.value.validate((errors) => {
if (!errors) {
formBtnLoading.value = true;
Edit(formValue.value)
.then((_res) => {
message.success('操作成功');
closeForm();
emit('reloadTable');
})
.finally(() => {
formBtnLoading.value = false;
});
} else {
message.error('请填写完整信息');
}
});
}
// 关闭表单
function closeForm() {
showModal.value = false;
loading.value = false;
}
defineExpose({
openModal,
});

View File

@@ -57,10 +57,10 @@
import { adaTableScrollX } from '@/utils/hotgo';
import Edit from './edit.vue';
const dict = useDictStore();
const dialog = useDialog();
const message = useMessage();
const { hasPermission } = usePermission();
const dict = useDictStore();
const actionRef = ref();
const searchFormRef = ref<any>({});
const editRef = ref();
@@ -72,7 +72,7 @@
title: '操作',
key: 'action',
fixed: 'right',
render(record) {
render(record: State) {
return h(TableAction as any, {
style: 'button',
actions: [

View File

@@ -1,11 +1,9 @@
import { h, ref } from 'vue';
import { NImage, NAvatar, NSwitch } from 'naive-ui';
import { NSwitch } from 'naive-ui';
import { cloneDeep } from 'lodash-es';
import { FormSchema } from '@/components/Form';
import { getFileExt } from '@/utils/urlUtils';
import { defRangeShortcuts } from '@/utils/dateUtil';
import { fallbackSrc } from '@/utils/hotgo';
import { renderPopoverMemberSumma, MemberSumma } from '@/utils';
import { renderImage, renderFile, renderPopoverMemberSumma, MemberSumma } from '@/utils';
import { Switch } from '@/api/curdDemo';
import { useDictStore } from '@/store/modules/dict';
import { usePermission } from '@/hooks/web/usePermission';
@@ -176,19 +174,8 @@ export const columns = [
key: 'image',
align: 'left',
width: 100,
render(row) {
return h(NImage, {
width: 32,
height: 32,
src: row.image,
fallbackSrc: fallbackSrc(),
style: {
width: '32px',
height: '32px',
'max-width': '100%',
'max-height': '100%',
},
});
render(row: State) {
return renderImage(row.image);
},
},
{
@@ -196,19 +183,8 @@ export const columns = [
key: 'attachfile',
align: 'left',
width: 100,
render(row) {
if (row.attachfile === '') {
return ``;
}
return h(
NAvatar,
{
size: 'small',
},
{
default: () => getFileExt(row.attachfile),
}
);
render(row: State) {
return renderFile(row.attachfile);
},
},
{
@@ -222,7 +198,7 @@ export const columns = [
key: 'switch',
align: 'left',
width: 150,
render(row) {
render(row: State) {
return h(NSwitch, {
value: row.switch === 1,
checked: '开启',
@@ -243,7 +219,7 @@ export const columns = [
key: 'createdBy',
align: 'left',
width: 150,
render(row) {
render(row: State) {
return renderPopoverMemberSumma(row.createdBySumma);
},
},
@@ -258,7 +234,7 @@ export const columns = [
key: 'updatedBy',
align: 'left',
width: 150,
render(row) {
render(row: State) {
return renderPopoverMemberSumma(row.updatedBySumma);
},
},
@@ -279,4 +255,4 @@ export const columns = [
// 加载字典数据选项
export function loadOptions() {
dict.loadOptions(['sys_normal_disable', 'testCategoryOption']);
}
}

View File

@@ -101,6 +101,34 @@
return adaModalWidth(840);
});
// 提交表单
function confirmForm(e) {
e.preventDefault();
formRef.value.validate((errors) => {
if (!errors) {
formBtnLoading.value = true;
Edit(formValue.value)
.then((_res) => {
message.success('操作成功');
closeForm();
emit('reloadTable');
})
.finally(() => {
formBtnLoading.value = false;
});
} else {
message.error('请填写完整信息');
}
});
}
// 关闭表单
function closeForm() {
showModal.value = false;
loading.value = false;
}
// 打开模态框
function openModal(state: State) {
showModal.value = true;
@@ -133,33 +161,6 @@
});
}
// 提交表单
function confirmForm(e) {
e.preventDefault();
formRef.value.validate((errors) => {
if (!errors) {
formBtnLoading.value = true;
Edit(formValue.value)
.then((_res) => {
message.success('操作成功');
closeForm();
emit('reloadTable');
})
.finally(() => {
formBtnLoading.value = false;
});
} else {
message.error('请填写完整信息');
}
});
}
// 关闭表单
function closeForm() {
showModal.value = false;
loading.value = false;
}
defineExpose({
openModal,
});

View File

@@ -59,13 +59,13 @@
import { adaTableScrollX, convertListToTree } from '@/utils/hotgo';
import Edit from './edit.vue';
const dict = useDictStore();
const dialog = useDialog();
const message = useMessage();
const { hasPermission } = usePermission();
const actionRef = ref();
const searchFormRef = ref<any>({});
const editRef = ref();
const dict = useDictStore();
const checkedIds = ref([]);
const expandedKeys = ref([]);
@@ -76,7 +76,7 @@
title: '操作',
key: 'action',
fixed: 'right',
render(record) {
render(record: State) {
return h(TableAction as any, {
style: 'button',
actions: [

View File

@@ -1,10 +1,8 @@
import { h, ref } from 'vue';
import { NTag } from 'naive-ui';
import { cloneDeep } from 'lodash-es';
import { FormSchema } from '@/components/Form';
import { isNullObject } from '@/utils/is';
import { defRangeShortcuts } from '@/utils/dateUtil';
import { renderPopoverMemberSumma, MemberSumma } from '@/utils';
import { renderOptionTag, renderPopoverMemberSumma, MemberSumma } from '@/utils';
import { TreeOption } from '@/api/normalTreeDemo';
import { useDictStore } from '@/store/modules/dict';
@@ -121,23 +119,8 @@ export const columns = [
key: 'categoryId',
align: 'left',
width: 100,
render(row) {
if (isNullObject(row.categoryId)) {
return ``;
}
return h(
NTag,
{
style: {
marginRight: '6px',
},
type: dict.getType('testCategoryOption', row.categoryId),
bordered: false,
},
{
default: () => dict.getLabel('testCategoryOption', row.categoryId),
}
);
render(row: State) {
return renderOptionTag('testCategoryOption', row.categoryId);
},
},
{
@@ -151,23 +134,8 @@ export const columns = [
key: 'status',
align: 'left',
width: 150,
render(row) {
if (isNullObject(row.status)) {
return ``;
}
return h(
NTag,
{
style: {
marginRight: '6px',
},
type: dict.getType('sys_normal_disable', row.status),
bordered: false,
},
{
default: () => dict.getLabel('sys_normal_disable', row.status),
}
);
render(row: State) {
return renderOptionTag('sys_normal_disable', row.status);
},
},
{
@@ -175,7 +143,7 @@ export const columns = [
key: 'createdBy',
align: 'left',
width: 100,
render(row) {
render(row: State) {
return renderPopoverMemberSumma(row.createdBySumma);
},
},