<template>
|
<div>
|
<BasicTable @register="registerTable">
|
<template #toolbar>
|
<a-button type="primary" @click="handleCreate" preIcon="add_02|svg"> 新增 </a-button>
|
</template>
|
<template #action="{ record }">
|
<TableAction
|
:actions="[
|
{
|
icon: 'clarity:note-edit-line',
|
onClick: handleEdit.bind(null, record),
|
},
|
{
|
icon: 'ant-design:delete-outlined',
|
color: 'error',
|
popConfirm: {
|
title: '是否确认删除?',
|
placement: 'left',
|
confirm: handleDelete.bind(null, record),
|
},
|
},
|
]"
|
/>
|
</template>
|
</BasicTable>
|
<normalDrawer @register="registerDrawer" @success="handleSuccess" />
|
</div>
|
</template>
|
<script lang="ts" setup>
|
import { onMounted, ref } from 'vue';
|
import { BasicTable, useTable, TableAction, BasicColumn, FormSchema } from '/@/components/Table';
|
import { useDrawer } from '/@/components/Drawer';
|
import normalDrawer from './normalDrawer.vue';
|
import { DeleteRegion } from '/@/api/tigerapi/wms/region';
|
import { fetchJson, getListByPage } from '/@/api/tigerapi/system';
|
import { useGlobSetting } from '/@/hooks/setting';
|
import { useRoute } from 'vue-router';
|
|
const route = useRoute();
|
const RuleObj = ref(JSON.parse(decodeURI(route.params?.id as string)));
|
const globSetting = useGlobSetting();
|
const _columns = ref([]);
|
const _searchFormSchema = ref([]);
|
const [registerDrawer, { openDrawer }] = useDrawer();
|
const [registerTable, { reload }] = useTable({
|
title: '储区列表',
|
api: getListByPage,
|
searchInfo: { TABLE_NAME: RuleObj.value.ID },
|
columns: _columns as unknown as BasicColumn[],
|
formConfig: {
|
labelWidth: 120,
|
schemas: _searchFormSchema as unknown as FormSchema[],
|
},
|
useSearchForm: true,
|
showTableSetting: true,
|
bordered: true,
|
canResize: true,
|
showIndexColumn: false,
|
actionColumn: {
|
width: 80,
|
title: '操作',
|
dataIndex: 'action',
|
slots: { customRender: 'action' },
|
fixed: undefined,
|
},
|
});
|
|
function handleCreate() {
|
openDrawer(true, {
|
isUpdate: false,
|
});
|
}
|
|
function handleEdit(record: Recordable) {
|
openDrawer(true, {
|
record,
|
isUpdate: true,
|
});
|
}
|
|
function handleDelete(record: Recordable) {
|
console.log(record);
|
//删除
|
const apiAction = DeleteRegion(record);
|
apiAction.then((action) => {
|
if (action.IsSuccessed) {
|
reload();
|
}
|
});
|
}
|
|
function handleSuccess() {
|
reload();
|
}
|
|
onMounted(async () => {
|
_searchFormSchema.value = await fetchJson(
|
`${globSetting.downloadUrl}/LowCode/regionSearchform.json`,
|
);
|
_columns.value = await fetchJson(`${globSetting.downloadUrl}/LowCode/regionBaseform.json`);
|
});
|
</script>
|