import { GridDto } from '@/proxy/form/models' import { ImportPreviewData, ListFormImportDto, ListFormImportExecuteDto, } from '@/proxy/imports/models' import apiService from './api.service' export class ImportService { private _uploadedFiles = new Map() async generateTemplate(gridDto: GridDto, format: 'excel' | 'csv'): Promise { const editableColumns = gridDto.columnFormats .filter((col) => col.permissionDto.i && col.fieldName !== 'Id') .sort((a, b) => a.listOrderNo - b.listOrderNo) if (format === 'excel') { // Create Excel-compatible content const headers = editableColumns.map((col) => col.captionName || col.fieldName) // Create a simple Excel XML format that works with Excel 2010+ const excelContent = ` Import Template 12000 15000 240 75 False False ${headers .map((header) => ` ${header}`) .join('\n')}