From 5b0d73bbd6e68ea965ad0c45b0c15b9cfd582fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=AB=A5=E5=B4=87?= <1261960504@qq.com> Date: Mon, 15 Aug 2022 14:39:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DcloudcloudIDE=E5=B1=82?= =?UTF-8?q?=E7=BA=A7=20=E9=97=AE=E9=A2=98=EF=BC=8C=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E5=90=8E=E5=88=B7=E6=96=B0=20=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/forge/Newfile/codeReview/index.jsx | 43 +++++++++++++------ .../codeReview/mock/component/index.jsx | 9 ++-- .../Newfile/codeReview/mock/pr.service.js | 6 --- src/forge/Newfile/codeReview/model.jsx | 14 ++---- 4 files changed, 38 insertions(+), 34 deletions(-) diff --git a/src/forge/Newfile/codeReview/index.jsx b/src/forge/Newfile/codeReview/index.jsx index 923879545..a2323d677 100644 --- a/src/forge/Newfile/codeReview/index.jsx +++ b/src/forge/Newfile/codeReview/index.jsx @@ -55,6 +55,7 @@ const CodeReview = (props) => { IDEMode, toggleViewerType, annotationPacks, + setAcrFlag, } = useAcr(); const fileReadMarkChange$ = useFileReadMarkChange$( diffsPack && diffsPack.diffs || [], @@ -93,7 +94,7 @@ const CodeReview = (props) => { }, [pluginActivated, diffsPack]); if (!diffsPack) { - return + return } const propsIDE = { @@ -156,11 +157,25 @@ const CodeReview = (props) => { branch: header.branch, message: header.commitMessage, }; - + if (pr && pr.forkProject) { - projectService.bulkChangeFiles(pr.forkProject.identifier, pr.forkProject.login, data); + projectService.bulkChangeFiles(pr.forkProject.identifier, pr.forkProject.login, data).then(res => { + if (res) { + // gitea底层同步commit是异步,延迟查询才能获取修改后的结果 + setTimeout(()=>{ + setAcrFlag({}); + },8000) + } + }) } else { - projectService.bulkChangeFiles(projectsId, owner, data); + projectService.bulkChangeFiles(projectsId, owner, data).then(res => { + if (res) { + // gitea底层同步commit是异步,延迟查询才能获取修改后的结果 + setTimeout(()=>{ + setAcrFlag({}); + },8000) + } + }) } }, // 菜单栏 @@ -207,16 +222,16 @@ const CodeReview = (props) => { console.log('propsIDE:'); console.log(propsIDE); return ( - -
- {/*
+ +
+ {/*
{!IDEMode && ( <> IDE 模式: )}
*/} - {/*
+ {/*
{pr.description}
评审人: @@ -229,12 +244,12 @@ const CodeReview = (props) => { 合并人:{pr.assignee && pr.assignee.name}
*/} - {IDEMode && ( -
- {visible && } -
- )} -
+ {IDEMode && ( +
+ {visible && } +
+ )} +
); }; diff --git a/src/forge/Newfile/codeReview/mock/component/index.jsx b/src/forge/Newfile/codeReview/mock/component/index.jsx index a78fec530..bb265f353 100755 --- a/src/forge/Newfile/codeReview/mock/component/index.jsx +++ b/src/forge/Newfile/codeReview/mock/component/index.jsx @@ -25,7 +25,6 @@ import { import { Link } from "react-router-dom"; import { usePersistFn } from "ahooks"; import { getImageUrl, timeAgo } from "educoder"; -import { camelcaseToUnderscore } from '../utils/camelcase-convert'; import "./style.module.less"; import { useAcr, useNote, useGlobal, usePr } from "../../model"; const AnnotationStatus = { @@ -366,12 +365,16 @@ export const Menubar = memo((props) => { ); + const MenuStyle = { + zIndex: 1200, + }; + return (
{versions.length !== 0 && (
- +
{idToVerbose.get(fromId)} @@ -380,7 +383,7 @@ export const Menubar = memo((props) => {
- +
{idToVerbose.get(toId)} diff --git a/src/forge/Newfile/codeReview/mock/pr.service.js b/src/forge/Newfile/codeReview/mock/pr.service.js index 8af485572..c889e55da 100755 --- a/src/forge/Newfile/codeReview/mock/pr.service.js +++ b/src/forge/Newfile/codeReview/mock/pr.service.js @@ -183,12 +183,6 @@ export const prService = { item.pullRequestId=mergeId; } return reviews; - // for (const item of res.data.files) { - // item.newPath = item.name; - // item.file_path_sha2 = item.file_path_sha; - // item.file_path_sha = sha1(item.newPath) - // } - // return underscoreToCamelcase(res.data.files); }, async commitReview(projectsId, owner, mergeId, body) { diff --git a/src/forge/Newfile/codeReview/model.jsx b/src/forge/Newfile/codeReview/model.jsx index d55d291d7..30f73374a 100644 --- a/src/forge/Newfile/codeReview/model.jsx +++ b/src/forge/Newfile/codeReview/model.jsx @@ -399,14 +399,6 @@ const [ReadMarkProvider, useReadMark] = createContainer(() => { return map; }, [readMarks]); - // const readMarkMap2 = useMemo(() => { - // const map = new Map(); - // if (!readMarks) return map; - // for (const mark of readMarks) { - // map.set(mark.name, mark.filePathSha2); - // } - // return map; - // }, [readMarks]); const memoizedSha1 = useMemo(() => memoize(sha1), []); @@ -414,7 +406,6 @@ const [ReadMarkProvider, useReadMark] = createContainer(() => { const data = await prService.markFileAsRead( projectsId, owner, mergeId, { file_path_sha: Base64.encode(filePath) } - // { file_path_sha: readMarkMap2.get(filePath) } ); updateFlag({}); return data; @@ -424,7 +415,6 @@ const [ReadMarkProvider, useReadMark] = createContainer(() => { const data = await prService.markFileAsUnread( projectsId, owner, mergeId, { file_path_sha: Base64.encode(filePath) } - // { file_path_sha: readMarkMap2.get(filePath) } ); updateFlag({}); return data; @@ -457,6 +447,7 @@ const [ReadMarkProvider, useReadMark] = createContainer(() => { }); const [AcrProvider, useAcr] = createContainer(() => { + const [acrflag, setAcrFlag] = useState({}); const { params } = useGlobal(); const { pr } = usePr(); const { charsetName } = useSetting(); @@ -501,7 +492,7 @@ const [AcrProvider, useAcr] = createContainer(() => { const versions = useRequest( async () => await prService.getDiffVersions(projectsId, owner, mergeId), - { initial: [] } + { initial: [],deps:[acrflag] } ); @@ -634,6 +625,7 @@ const [AcrProvider, useAcr] = createContainer(() => { IDEMode, toggleViewerType, updateQuery, + setAcrFlag, annotationPacks, }; });