diff --git a/src/api/v1/files.ts b/src/api/v1/files.ts index 63d71bb..f66bbec 100644 --- a/src/api/v1/files.ts +++ b/src/api/v1/files.ts @@ -1,30 +1,27 @@ import { http } from '@/api/service/request'; import type { BaseResult, ResultTable } from '@/api/service/types'; -/** - * 系统文件管理---获取系统文件管理列表 - */ +/** 系统文件管理---获取系统文件管理列表 */ export const fetchGetFilesList = (data: any) => { return http.request>('get', `files/getFilesList/${data.currentPage}/${data.pageSize}`, { params: data }); }; -/** - * 系统文件管理---添加系统文件管理 - */ +/** 系统文件管理---下载系统文件 */ +export const fetchDownloadFiles = (data: any) => { + return http.request('get', `files/downloadFiles/${data.id}`); +}; + +/** 系统文件管理---添加系统文件管理 */ export const fetchAddFiles = (data: any) => { return http.request>('post', 'files/addFiles', { data }); }; -/** - * 系统文件管理---更新系统文件管理 - */ +/** 系统文件管理---更新系统文件管理 */ export const fetchUpdateFiles = (data: any) => { return http.request>('put', 'files/updateFiles', { data }); }; -/** - * 系统文件管理---删除系统文件管理 - */ +/** 系统文件管理---删除系统文件管理 */ export const fetchDeleteFiles = (data: any) => { - return http.request>('delete', 'files/deleteFiles', { data }); + return http.request>('delete', 'files/deleteFiles', { data }); }; diff --git a/src/components/CropperPreview/src/index.vue b/src/components/CropperPreview/src/index.vue index 5b18863..7f7aa9f 100644 --- a/src/components/CropperPreview/src/index.vue +++ b/src/components/CropperPreview/src/index.vue @@ -4,10 +4,6 @@ import ReCropper from '@/components/ReCropper'; import { formatBytes } from '@pureadmin/utils'; import { $t } from '@/plugins/i18n'; -defineOptions({ - name: 'ReCropperPreview', -}); - defineProps({ imgSrc: String, }); @@ -35,7 +31,7 @@ defineExpose({ hidePopover }); + + diff --git a/src/components/ReCropper/src/index.tsx b/src/components/ReCropper/src/index.tsx index 0cbd75f..69f9887 100644 --- a/src/components/ReCropper/src/index.tsx +++ b/src/components/ReCropper/src/index.tsx @@ -109,7 +109,7 @@ export default defineComponent({ async function init() { const imgEl = unref(imgElRef); if (!imgEl) return; - cropper.value = new Cropper(imgEl, { + const result: any = new Cropper(imgEl, { ...defaultOptions, ready: () => { isReady.value = true; @@ -127,6 +127,14 @@ export default defineComponent({ }, ...props.options, }); + + if (!result.ready) { + isReady.value = true; + realTimeCroppered(); + emit('readied', cropper.value); + } + + cropper.value = result; } function realTimeCroppered() { diff --git a/src/views/monitor/files/index.vue b/src/views/monitor/files/index.vue index daa4022..c41096d 100644 --- a/src/views/monitor/files/index.vue +++ b/src/views/monitor/files/index.vue @@ -4,13 +4,13 @@ import { columns } from '@/views/monitor/files/utils/columns'; import PureTableBar from '@/components/TableBar/src/bar'; import AddFill from '@iconify-icons/ri/add-circle-line'; import PureTable from '@pureadmin/table'; -import { onAdd, onDelete, onSearch, onUpdate } from '@/views/monitor/files/utils/hooks'; +import { onAdd, onDelete, onDeleteBatch, onDownload, onSearch, onUpdate, selectIds } from '@/views/monitor/files/utils/hooks'; import Delete from '@iconify-icons/ep/delete'; import EditPen from '@iconify-icons/ep/edit-pen'; import Refresh from '@iconify-icons/ep/refresh'; import { selectUserinfo } from '@/components/Table/Userinfo/columns'; import { $t } from '@/plugins/i18n'; -import { useFilesStore } from '@/store/monitor/files.ts'; +import { useFilesStore } from '@/store/monitor/files'; import { useRenderIcon } from '@/components/CommonIcon/src/hooks'; import { FormInstance } from 'element-plus'; @@ -18,33 +18,30 @@ const tableRef = ref(); const formRef = ref(); const filesStore = useFilesStore(); -/** - * * 当前页改变时 - */ +/** 当前页改变时 */ const onCurrentPageChange = async (value: number) => { filesStore.pagination.currentPage = value; await onSearch(); }; -/** - * * 当分页发生变化 - * @param value - */ +/** 当分页发生变化 */ const onPageSizeChange = async (value: number) => { filesStore.pagination.pageSize = value; await onSearch(); }; -/** - * 重置表单 - * @param formEl - */ +/** 重置表单 */ const resetForm = async (formEl: FormInstance) => { if (!formEl) return; formEl.resetFields(); await onSearch(); }; +/** 选择多行 */ +const onSelectionChange = (rows: Array) => { + selectIds.value = rows.map((row: any) => row.id); +}; + onMounted(() => { onSearch(); }); @@ -74,6 +71,11 @@ onMounted(() => {