Commit 55033d05 authored by jiangzijing's avatar jiangzijing

feat:查看日志

parent 23558f9e
...@@ -8,15 +8,7 @@ ...@@ -8,15 +8,7 @@
} }
.logViewBox { .logViewBox {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 900px;
height: 600px;
background: #282c34; background: #282c34;
box-shadow: 2px 4px 20px 0px rgba(0, 15, 45, 0.12);
border-radius: 8px;
} }
.close { .close {
...@@ -29,12 +21,13 @@ ...@@ -29,12 +21,13 @@
.logViewTop { .logViewTop {
/* height: 30px; */ /* height: 30px; */
width: 100vw;
background-color: #1d2126; background-color: #1d2126;
border-radius: 8px 8px 0 0; /* border-radius: 8px 8px 0 0; */
display: flex; display: flex;
font-size: 12px; font-size: 12px;
color: #8a9099; color: #8a9099;
overflow: overlay; /* overflow: overlay; */
} }
.logViewTop::-webkit-scrollbar-track { .logViewTop::-webkit-scrollbar-track {
...@@ -43,11 +36,18 @@ ...@@ -43,11 +36,18 @@
.logTitle { .logTitle {
display: flex; display: flex;
width: 0;
max-width: 200px;
overflow: hidden;
white-space: nowrap;
text-overflow:ellipsis;
flex: 1;
align-items: center; align-items: center;
height: 30px; height: 30px;
line-height: 20px; line-height: 20px;
padding: 0 24px; padding: 0 24px;
cursor: pointer; cursor: pointer;
border-right: 1px solid #10141A;
} }
.logTitleSelected { .logTitleSelected {
...@@ -63,8 +63,8 @@ ...@@ -63,8 +63,8 @@
.logViewContent { .logViewContent {
position: relative; position: relative;
box-sizing: border-box; box-sizing: border-box;
height: 510px; height: calc(100vh - 148px);
padding: 16px 24px 0; padding: 24px 32px 0;
color: #d1d6de; color: #d1d6de;
white-space: pre-wrap; white-space: pre-wrap;
word-break: break-word; word-break: break-word;
...@@ -74,12 +74,12 @@ ...@@ -74,12 +74,12 @@
} }
.logViewContentMask { .logViewContentMask {
height: 16px; height: 24px;
width: 852px; width: calc(100vw - 64px);
background-color: #282c34; background-color: #282c34;
position: absolute; position: absolute;
top: 30px; top: 30px;
left: 24px; left: 32px;
z-index: 1005; z-index: 1005;
} }
...@@ -91,6 +91,6 @@ ...@@ -91,6 +91,6 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: end; justify-content: end;
height: 60px; height: 76px;
padding-right: 24px; padding-right: 24px;
} }
\ No newline at end of file
...@@ -7,16 +7,18 @@ import InsertDriveFileOutlinedIcon from "@mui/icons-material/InsertDriveFileOutl ...@@ -7,16 +7,18 @@ import InsertDriveFileOutlinedIcon from "@mui/icons-material/InsertDriveFileOutl
import CloudEController from "@/api/fileserver/CloudEController"; import CloudEController from "@/api/fileserver/CloudEController";
import { useStores } from "@/store"; import { useStores } from "@/store";
import { toJS } from "mobx"; import { toJS } from "mobx";
import FullScreenDrawer from "@/components/CommonComponents/FullScreenDrawer";
type LogViewProps = { type LogViewProps = {
isshow: boolean; isshow: boolean;
handleClose: () => void; handleClose: () => void;
logs: any[]; logs: any[];
setShowAddTemplate: any;
}; };
const LogView = (props: LogViewProps) => { const LogView = (props: LogViewProps) => {
const { isshow, handleClose, logs } = props; const { isshow, handleClose, logs, setShowAddTemplate } = props;
const { currentProjectStore } = useStores(); const { currentProjectStore } = useStores();
const fileToken = toJS(currentProjectStore.currentProjectInfo.filetoken); const fileToken = toJS(currentProjectStore.currentProjectInfo.filetoken);
const projectId = toJS(currentProjectStore.currentProjectInfo.id); const projectId = toJS(currentProjectStore.currentProjectInfo.id);
...@@ -42,7 +44,7 @@ const LogView = (props: LogViewProps) => { ...@@ -42,7 +44,7 @@ const LogView = (props: LogViewProps) => {
)?.then((res) => { )?.then((res) => {
setLogText(res.data) setLogText(res.data)
}) })
}else{ } else {
setLogText("") setLogText("")
} }
}, [logPath]); }, [logPath]);
...@@ -53,41 +55,42 @@ const LogView = (props: LogViewProps) => { ...@@ -53,41 +55,42 @@ const LogView = (props: LogViewProps) => {
}, [logCurrent]); }, [logCurrent]);
// 下载当前日志 // 下载当前日志
const handleDownLoad=()=>{ const handleDownLoad = () => {
const path = logPath.slice(12) const path = logPath.slice(12)
CloudEController.JobFileDownload( CloudEController.JobFileDownload(
path, path,
fileToken as string, fileToken as string,
projectId as string projectId as string
); );
} }
return <div className={style.logView} style={isshow ? {} : { display: "none" }}> return (
<div className={style.logViewBox}> <FullScreenDrawer handleClose={setShowAddTemplate} zIndex={1002}>
<CloseIcon onClick={handleClose} className={style.close} /> <div className={style.logViewBox}>
<div className={style.logViewContentMask}></div> <div className={style.logViewContentMask}></div>
<div className={style.logViewTop}> <div className={style.logViewTop}>
{logs.map((item: any, index: number) => { {logs.map((item: any, index: number) => {
return <div return <div
key={index} key={index}
onClick={() => { setLogCurrent(index) }} onClick={() => { setLogCurrent(index) }}
className={classnames({ className={classnames({
[style.logTitle]: true, [style.logTitle]: true,
[style.logTitleSelected]: index === logCurrent, [style.logTitleSelected]: index === logCurrent,
})}> })}>
<InsertDriveFileOutlinedIcon className={style.fileIcon} /> <InsertDriveFileOutlinedIcon className={style.fileIcon} />
<span>{item.logName}</span> <span>{item.logName}</span>
</div> </div>
})} })}
</div>
<div className={style.logViewContent}>
{logText}
</div>
<div className={style.logViewBottom}>
<MyButton text='下载当前日志' onClick={handleDownLoad} />
</div>
</div> </div>
<div className={style.logViewContent}> </FullScreenDrawer>
{logText} )
</div>
<div className={style.logViewBottom}>
<MyButton text='下载当前日志' onClick={handleDownLoad} />
</div>
</div>
</div>
} }
export default LogView export default LogView
\ No newline at end of file
...@@ -306,9 +306,8 @@ const ProjectSubmitWork = observer(() => { ...@@ -306,9 +306,8 @@ const ProjectSubmitWork = observer(() => {
if (Array.isArray(res.data)) { if (Array.isArray(res.data)) {
res.data.forEach((item1) => { res.data.forEach((item1) => {
if (item1.name === item.path.slice(item.path.lastIndexOf("/") + 1)) { if (item1.name === item.path.slice(item.path.lastIndexOf("/") + 1)) {
randerOutputs[index].size = `${ randerOutputs[index].size = `${item1.size ? storageUnitFromB(Number(item1.size)) : "-"
item1.size ? storageUnitFromB(Number(item1.size)) : "-" }`;
}`;
setRanderOutputs([...randerOutputs]); setRanderOutputs([...randerOutputs]);
} }
}); });
...@@ -494,8 +493,8 @@ const ProjectSubmitWork = observer(() => { ...@@ -494,8 +493,8 @@ const ProjectSubmitWork = observer(() => {
)} )}
{(!workFlowJobInfo?.outputs || {(!workFlowJobInfo?.outputs ||
Object.keys(workFlowJobInfo?.outputs).length === 0) && ( Object.keys(workFlowJobInfo?.outputs).length === 0) && (
<div className={styles.notResults}>暂无结果文件</div> <div className={styles.notResults}>暂无结果文件</div>
)} )}
<div className={styles.title}>任务信息</div> <div className={styles.title}>任务信息</div>
<div className={styles.taskInfoLi}> <div className={styles.taskInfoLi}>
<div className={styles.taskInfoParams}>任务名称</div> <div className={styles.taskInfoParams}>任务名称</div>
...@@ -767,7 +766,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -767,7 +766,7 @@ const ProjectSubmitWork = observer(() => {
projectId={projectId as string} projectId={projectId as string}
></SeeDataset> ></SeeDataset>
)} )}
<LogView isshow={showLogView} handleClose={handleClose} logs={logs} /> {showLogView && <LogView isshow={showLogView} handleClose={handleClose} logs={logs} setShowAddTemplate={handleClose} />}
</div> </div>
); );
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment