Browse Source

fix:
原样导出BUG

WanRuixiang 2 months ago
parent
commit
8fad89fb29

+ 21 - 17
src/app/pages/DashBoardPage/components/ActionProvider/BoardActionProvider.tsx

@@ -54,6 +54,7 @@ export interface BoardActionContextProps {
     rowPermissionBy: string;
   }) => any;
   onBoardToDownLoad: (downloadType: DownloadFileType) => any;
+  onBoardToDownLoadAsis: (downloadType: DownloadFileType) => any;
   // edit
   updateBoard?: (callback?: () => void) => void;
 
@@ -106,27 +107,30 @@ export const BoardActionProvider: FC<{
         return result;
       },
       onBoardToDownLoad: (downloadType) => {
+        dispatch(
+          boardDownLoadAction({
+            boardId,
+            downloadType,
+            clientId,
+            needVerify,
+            shareBoard,
+            executeTokenMap,
+            routerParams,
+            sharePassword
+          }),
+        );
+      },
+      onBoardToDownLoadAsis: (downloadType) => {
         if (downloadType===DownloadFileType.Excel){
           if (currentTab?.id){
             const tabExport = exportBase[currentTab?.id];
-            Object.keys(tabExport).reduce((acc, key) => {
-              download(copyData(tabExport[key], ',', false), key)
-              return acc;
-            }, 0)
+            if (tabExport){
+              Object.keys(tabExport).reduce((acc, key) => {
+                download(copyData(tabExport[key], ',', false), key)
+                return acc;
+              }, 0)
+            }
           }
-        }else {
-          dispatch(
-            boardDownLoadAction({
-              boardId,
-              downloadType,
-              clientId,
-              needVerify,
-              shareBoard,
-              executeTokenMap,
-              routerParams,
-              sharePassword
-            }),
-          );
         }
       },
       onCloseBoardEditor: (boardId: string) => {

+ 14 - 1
src/app/pages/DashBoardPage/components/BoardDropdownList/BoardDropdownList.tsx

@@ -59,7 +59,7 @@ export const BoardDropdownList: FC<Props> = memo(
     const reloadData = () => {
       dispatch(widgetsQueryAction({ boardId, renderMode }));
     };
-    const { onBoardToDownLoad } = useContext(BoardActionContext);
+    const { onBoardToDownLoad,onBoardToDownLoadAsis } = useContext(BoardActionContext);
     const { publishBoard } = usePublishBoard(boardId, 'DASHBOARD', status);
     return (
       <Menu>
@@ -98,6 +98,19 @@ export const BoardDropdownList: FC<Props> = memo(
                 {t('share.exportData')}
               </Popconfirm>
             </Menu.Item>
+            <Menu.Item key={'exportDataAsis'} icon={<CloudDownloadOutlined />}>
+              <Popconfirm
+                placement="left"
+                title={t('common.confirm')}
+                okText={t('common.ok')}
+                cancelText={t('common.cancel')}
+                onConfirm={() => {
+                  onBoardToDownLoadAsis?.(DownloadFileType.Excel);
+                }}
+              >
+                {t('share.exportDataAsis')}
+              </Popconfirm>
+            </Menu.Item>
             <Menu.Item key={'exportPDF'} icon={<CloudDownloadOutlined />}>
               <Popconfirm
                 placement="left"

+ 1 - 0
src/locales/zh/translation.json

@@ -912,6 +912,7 @@
         "generateLink": "生成链接",
         "shareLink": "分享管理",
         "exportData": "导出到 Excel",
+        "exportDataAsis": "原样导出到 Excel",
         "exportPDF": "导出到 PDF",
         "exportPicture": "导出到 图片",
         "exportTpl": "导出为 模版",