feat: sync rule management and review ui fixes
This commit is contained in:
@@ -27,12 +27,13 @@ interface ReviewTabsProps {
|
||||
comparisonId?: number;
|
||||
};
|
||||
onConfirmResults: () => void;
|
||||
onExportReport?: () => void;
|
||||
jwtToken?: string | null;
|
||||
/** 下载前保存文档的回调,返回 true 表示保存成功可以继续下载 */
|
||||
onSaveBeforeDownload?: () => Promise<boolean>;
|
||||
}
|
||||
|
||||
export function ReviewTabs({ activeTab, onTabChange, children, fileInfo, onConfirmResults, jwtToken, onSaveBeforeDownload }: ReviewTabsProps) {
|
||||
export function ReviewTabs({ activeTab, onTabChange, children, fileInfo, onConfirmResults, onExportReport, jwtToken, onSaveBeforeDownload }: ReviewTabsProps) {
|
||||
const [isNavigating, setIsNavigating] = useState(false);
|
||||
const [isReuploadModalOpen, setIsReuploadModalOpen] = useState(false);
|
||||
const [selectedTemplateFiles, setSelectedTemplateFiles] = useState<File[]>([]);
|
||||
@@ -58,14 +59,21 @@ export function ReviewTabs({ activeTab, onTabChange, children, fileInfo, onConfi
|
||||
: previousRoute === 'filesUpload'
|
||||
? "/files/upload"
|
||||
: "/rules-files";
|
||||
// 立即导航返回
|
||||
navigate(returnTo);
|
||||
// 触发上级页面数据重新加载
|
||||
navigate(returnTo);
|
||||
setTimeout(() => {
|
||||
revalidator.revalidate();
|
||||
setIsNavigating(false);
|
||||
loadingBarService.hide();
|
||||
}, 0);
|
||||
};
|
||||
|
||||
// 下载原文件
|
||||
const handleDownloadFile = async () => {
|
||||
if (!fileInfo.path) {
|
||||
toastService.warning('当前文档暂无可下载原文件');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
// 如果有保存回调,先执行保存(仅对 DOCX 文件有效)
|
||||
if (onSaveBeforeDownload) {
|
||||
@@ -311,12 +319,15 @@ export function ReviewTabs({ activeTab, onTabChange, children, fileInfo, onConfi
|
||||
</>
|
||||
)}
|
||||
</button>
|
||||
{/* <button
|
||||
className="ant-btn ant-btn-default flex items-center"
|
||||
onClick={handleExportReport}
|
||||
>
|
||||
<i className="ri-file-copy-line mr-1"></i> 导出评查报告
|
||||
</button> */}
|
||||
{onExportReport && (
|
||||
<button
|
||||
className="ant-btn ant-btn-default inline-flex items-center my-2"
|
||||
onClick={onExportReport}
|
||||
disabled={isNavigating}
|
||||
>
|
||||
<i className="ri-file-copy-line mr-1"></i> 导出评查报告
|
||||
</button>
|
||||
)}
|
||||
<button
|
||||
className={`ant-btn ant-btn-primary my-2 flex items-center ${fileInfo.auditStatus === 1 ? 'hidden' : ''}`}
|
||||
onClick={onConfirmResults}
|
||||
@@ -437,4 +448,4 @@ export function ReviewTabs({ activeTab, onTabChange, children, fileInfo, onConfi
|
||||
</Modal>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user