group(function () { Route::get('/{id}', [Api::class, 'detail']); Route::post('/', [Api::class, 'store']); Route::put('/{id}', [Api::class, 'update']); Route::delete('/{id}', [Api::class, 'destroy']); Route::post('/{id}/item', [Api::class, 'saveItem']); Route::delete('/item/{itemId}', [Api::class, 'deleteItem']); Route::post('/{id}/attachment', [Api::class, 'uploadAttachment']); Route::post('/{id}/column', [Api::class, 'addColumn']); Route::delete('/column/{columnId}', [Api::class, 'deleteColumn']); Route::post('/{id}/column-visibility', [Api::class, 'setHiddenColumns']); Route::post('/{id}/source', [Api::class, 'addSource']); Route::delete('/source/{sourceId}', [Api::class, 'deleteSource']); Route::post('/{id}/import/teable', [Api::class, 'importTeable']); Route::post('/{id}/import/teable-paste', [Api::class, 'importTeablePaste']); Route::post('/{id}/import/excel', [Api::class, 'importExcel']); Route::post('/teable/parse', [Api::class, 'parseTeable']); Route::get('/{id}/export', [Api::class, 'export']); Route::get('/{id}/export-template', [Api::class, 'exportTemplate']); // 全局主数据:项目引用层(单向,不写回全局) Route::post('/ref/link', [Api::class, 'linkMaster']); Route::delete('/ref/{refId}', [Api::class, 'unlinkMaster']); Route::get('/ref/{refId}', [Api::class, 'refDetail']); Route::post('/ref/{refId}/column', [Api::class, 'addRefColumn']); Route::delete('/ref-column/{columnId}', [Api::class, 'deleteRefColumn']); Route::post('/ref/{refId}/value', [Api::class, 'saveRefValue']); });