Commit 21df7ddd authored by wuyongsheng's avatar wuyongsheng

Merge branch 'feat-20220801' into 'release'

Feat 20220801

See merge request !87
parents d3378119 055c291e
...@@ -180,14 +180,6 @@ export default function MySelect(props: IProps) { ...@@ -180,14 +180,6 @@ export default function MySelect(props: IProps) {
}, },
}, },
}, },
MuiFormControl: {
styleOverrides: {
root: {
width: "100%",
},
},
},
}, },
}); });
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* @FilePath: /bkunyun/src/components/mui/MySwitch.tsx * @FilePath: /bkunyun/src/components/mui/MySwitch.tsx
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
import * as React from "react"; import React, { useMemo } from "react";
import Switch, { SwitchProps } from "@mui/material/Switch"; import Switch, { SwitchProps } from "@mui/material/Switch";
import { ThemeProvider, createTheme } from "@mui/material/styles"; import { ThemeProvider, createTheme } from "@mui/material/styles";
...@@ -17,43 +17,67 @@ interface IMySwitchProps extends SwitchProps { ...@@ -17,43 +17,67 @@ interface IMySwitchProps extends SwitchProps {
disabled?: boolean; disabled?: boolean;
} }
const theme = createTheme({ const MySwitch = (props: IMySwitchProps) => {
components: { const {
MuiSwitch: { value,
styleOverrides: { defaultChecked,
root: { onChange,
boxSizing: "border-box", disabled = false,
padding: "0", size,
}, ...other
switchBase: { } = props;
top: "4px",
left: "4px", const bgColor = useMemo(() => {
padding: 0, if (disabled) {
"&.Mui-checked": { if (value) {
left: "2px", return "rgba(166, 211, 255, 1)";
"& + .MuiSwitch-track": { } else {
backgroundColor: "#1370ff", return "rgba(221, 225, 230, 1)";
opacity: 1, }
} else {
if (value) {
return "rgba(19, 112, 255, 1)";
} else {
return "rgba(221, 225, 230, 1)";
}
}
}, [disabled, value]);
const theme = createTheme({
components: {
MuiSwitch: {
styleOverrides: {
root: {
boxSizing: "border-box",
padding: "0",
},
switchBase: {
top: "4px",
left: "4px",
padding: 0,
"&.Mui-checked": {
left: "2px",
"& + .MuiSwitch-track": {
backgroundColor: bgColor,
opacity: 1,
},
}, },
}, },
}, thumb: {
thumb: { width: "14px",
width: "14px", height: "14px",
height: "14px", color: "#fff",
color: "#fff", },
}, track: {
track: { borderRadius: "11px",
borderRadius: "11px", backgroundColor: "rgba(221, 225, 230, 1)",
backgroundColor: "#E6E8EB", opacity: 1,
opacity: 1, },
}, },
}, },
}, },
}, });
});
const MySwitch = (props: IMySwitchProps) => {
const { value, defaultChecked, onChange, disabled = false, size, ...other } = props;
return ( return (
<ThemeProvider theme={theme}> <ThemeProvider theme={theme}>
<Switch <Switch
...@@ -64,13 +88,13 @@ const MySwitch = (props: IMySwitchProps) => { ...@@ -64,13 +88,13 @@ const MySwitch = (props: IMySwitchProps) => {
sx={ sx={
size === "medium" size === "medium"
? { ? {
width: 44, width: 44,
height: 24, height: 24,
} }
: { : {
width: 40, width: 40,
height: 22, height: 22,
} }
} }
{...other} {...other}
/> />
......
...@@ -158,6 +158,7 @@ const SeeDataset = observer((props: ISeeDatasetProps) => { ...@@ -158,6 +158,7 @@ const SeeDataset = observer((props: ISeeDatasetProps) => {
searchDataType, searchDataType,
sort, sort,
keyword, keyword,
firstGetList,
// Message, // Message,
] ]
); );
...@@ -221,11 +222,12 @@ const SeeDataset = observer((props: ISeeDatasetProps) => { ...@@ -221,11 +222,12 @@ const SeeDataset = observer((props: ISeeDatasetProps) => {
<div className={style.screensRight}> <div className={style.screensRight}>
<MySelect <MySelect
options={dataTypes} options={dataTypes}
title="选择属性" title={dataTypes.length === 0 ? "暂无属性" : "选择属性"}
isTitle={true} isTitle={true}
value={searchDataType} value={searchDataType}
onChange={handleSearchDataTypeChange} onChange={handleSearchDataTypeChange}
fullWidth={false} fullWidth={false}
disabled={dataTypes.length === 0}
sx={{ sx={{
width: "160px", width: "160px",
marginRight: "16px", marginRight: "16px",
...@@ -269,8 +271,8 @@ const SeeDataset = observer((props: ISeeDatasetProps) => { ...@@ -269,8 +271,8 @@ const SeeDataset = observer((props: ISeeDatasetProps) => {
sx={{ sx={{
width: "340px", width: "340px",
marginRight: "16px", marginRight: "16px",
height: "32px",
}} }}
size="small"
></MyInput> ></MyInput>
<MyButton <MyButton
text="确认" text="确认"
......
...@@ -110,8 +110,14 @@ ...@@ -110,8 +110,14 @@
color: rgba(138, 144, 153, 1); color: rgba(138, 144, 153, 1);
font-size: 14px; font-size: 14px;
line-height: 22px; line-height: 22px;
width: 72px; width: 80px;
margin-right: 44px; margin-right: 44px;
overflow: hidden;
word-wrap: break-word;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
} }
.taskInfoValue { .taskInfoValue {
color: rgba(30, 38, 51, 1); color: rgba(30, 38, 51, 1);
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: 吴永生#A02208 yongsheng.wu@wholion.com * @Author: 吴永生#A02208 yongsheng.wu@wholion.com
* @Date: 2022-06-21 20:03:56 * @Date: 2022-06-21 20:03:56
* @LastEditors: 吴永生 15770852798@163.com * @LastEditors: 吴永生 15770852798@163.com
* @LastEditTime: 2022-09-01 09:39:20 * @LastEditTime: 2022-09-05 17:33:58
* @FilePath: /bkunyun/src/views/Project/ProjectSubmitWork/index.tsx * @FilePath: /bkunyun/src/views/Project/ProjectSubmitWork/index.tsx
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
*/ */
...@@ -75,10 +75,12 @@ const ProjectSubmitWork = observer(() => { ...@@ -75,10 +75,12 @@ const ProjectSubmitWork = observer(() => {
const productId = toJS(currentProjectStore.currentProductInfo.id); const productId = toJS(currentProjectStore.currentProductInfo.id);
const [workFlowJobInfo, setWorkFlowJobInfo] = useState<ITaskInfo>(); const [workFlowJobInfo, setWorkFlowJobInfo] = useState<ITaskInfo>();
const [patchInfo, setPatchInfo] = useState<any>(); const [patchInfo, setPatchInfo] = useState<any>();
const [activePatchId, setActivePatchId] = useState<string>("");
const [overviewActive, setOverviewActive] = useState(true); const [overviewActive, setOverviewActive] = useState(true);
const [activeFlowIndex, setActiveFlowIndex] = useState<number>(0); /** 选中的node Id */
const [showOptions, setShowOptions] = useState<boolean>(false); const [activeFlowIndex, setActiveFlowIndex] = useState<string>("");
/** 选中的flow Title */
const [selectNodeTitle, setSelectNodeTitle] = useState('参数')
// const [showOptions, setShowOptions] = useState<boolean>(false);
const [randerOutputs1, setRanderOutputs] = useState<Array<any>>([]); const [randerOutputs1, setRanderOutputs] = useState<Array<any>>([]);
const locationInfo: any = useLocation()?.state; const locationInfo: any = useLocation()?.state;
// const locationInfo: any = location?.state; // const locationInfo: any = location?.state;
...@@ -338,32 +340,51 @@ const ProjectSubmitWork = observer(() => { ...@@ -338,32 +340,51 @@ const ProjectSubmitWork = observer(() => {
}, },
}); });
const handleBatch = (id: string) => { const setExternalSelectedNodeId = (id: string) => {
setActivePatchId(id); setActiveFlowIndex(id);
if (id) { workFlowJobInfo?.tasks &&
setActiveFlowIndex(0); workFlowJobInfo?.tasks?.forEach((item) => {
getworkFlowTaskInfoRun({ if (item.id === id) {
jobId: workFlowJobInfo?.id as string, getworkFlowTaskInfoRun({
taskId: id, jobId: workFlowJobInfo?.id as string,
taskId: item.parentNode || item.id
});
}
}); });
}
}; };
const randerParameters = useMemo(() => { const selectedParameter = useCallback(
if (patchInfo?.children) { (list: any) => {
if (patchInfo.children.length > 0) { let result: any = [];
return patchInfo.children[activeFlowIndex].parameters; if(patchInfo?.id === activeFlowIndex ) {
setSelectNodeTitle(list[0].title || '')
result = list[0].parameters
} else { } else {
return patchInfo?.parameters; list?.length &&
list?.forEach((item: any) => {
if (item.id === activeFlowIndex) {
console.log(1111)
setSelectNodeTitle(item?.title || '')
result = item.parameters;
}
});
} }
return result;
},
[activeFlowIndex, patchInfo]
);
const randerParameters = useMemo(() => {
if (patchInfo?.children?.length) {
return selectedParameter(patchInfo?.children);
} else { } else {
return patchInfo?.parameters; return selectedParameter(patchInfo?.parameters);
} }
}, [activeFlowIndex, patchInfo]);
}, [patchInfo, selectedParameter]);
const handleParams = () => { const handleParams = () => {
setOverviewActive(false); setOverviewActive(false);
setShowOptions(!showOptions);
}; };
/** 终止任务 */ /** 终止任务 */
...@@ -456,7 +477,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -456,7 +477,7 @@ const ProjectSubmitWork = observer(() => {
<div className={styles.swContent}> <div className={styles.swContent}>
{fullScreenShow ? null : ( {fullScreenShow ? null : (
<div className={styles.swFormBox}> <div className={styles.swFormBox}>
{!activePatchId && ( {!activeFlowIndex && (
<div className={styles.taskInfo}> <div className={styles.taskInfo}>
<div className={styles.title}>任务结果</div> <div className={styles.title}>任务结果</div>
{workFlowJobInfo?.outputs && {workFlowJobInfo?.outputs &&
...@@ -626,7 +647,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -626,7 +647,7 @@ const ProjectSubmitWork = observer(() => {
</div> </div>
</div> </div>
)} )}
{activePatchId && ( {activeFlowIndex && (
<div className={styles.suanziInfo}> <div className={styles.suanziInfo}>
<div className={styles.title}>{patchInfo?.title}</div> <div className={styles.title}>{patchInfo?.title}</div>
<div className={styles.tabs}> <div className={styles.tabs}>
...@@ -647,28 +668,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -647,28 +668,7 @@ const ProjectSubmitWork = observer(() => {
// onClick={() => setOverviewActive(false)} // onClick={() => setOverviewActive(false)}
onClick={() => handleParams()} onClick={() => handleParams()}
> >
{patchInfo?.children.length > 0 {selectNodeTitle}
? patchInfo?.children[activeFlowIndex].title
: patchInfo?.title}
{showOptions && patchInfo?.children.length > 0 && (
<div className={styles.options}>
{patchInfo?.children.map((item: any, index: number) => {
return (
<div
key={index}
className={classNames({
[styles.option]: true,
[styles.optionActive]:
activeFlowIndex === index,
})}
onClick={() => setActiveFlowIndex(index)}
>
{item.title}
</div>
);
})}
</div>
)}
</div> </div>
</div> </div>
{overviewActive && ( {overviewActive && (
...@@ -721,7 +721,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -721,7 +721,7 @@ const ProjectSubmitWork = observer(() => {
)} )}
{!overviewActive && ( {!overviewActive && (
<div className={styles.params}> <div className={styles.params}>
{randerParameters.map((parameter: any) => { {randerParameters?.map((parameter: any) => {
return ( return (
<div className={styles.taskInfoLi} key={parameter.name}> <div className={styles.taskInfoLi} key={parameter.name}>
<div className={styles.taskInfoParams}> <div className={styles.taskInfoParams}>
...@@ -743,7 +743,11 @@ const ProjectSubmitWork = observer(() => { ...@@ -743,7 +743,11 @@ const ProjectSubmitWork = observer(() => {
className={styles.swFlowBox} className={styles.swFlowBox}
style={fullScreenShow ? { height: "100vh" } : undefined} style={fullScreenShow ? { height: "100vh" } : undefined}
> >
<Flow tasks={workFlowJobInfo?.tasks} onBatchClick={handleBatch} /> <Flow
externalSelectedNodeId={activeFlowIndex}
tasks={workFlowJobInfo?.tasks}
setExternalSelectedNodeId={setExternalSelectedNodeId}
/>
</div> </div>
</div> </div>
<img <img
......
...@@ -48,6 +48,10 @@ ...@@ -48,6 +48,10 @@
font-weight: 600; font-weight: 600;
color: #1e2633; color: #1e2633;
margin-bottom: 8px; margin-bottom: 8px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
padding-right: 20px;
} }
.tabBoxDesc { .tabBoxDesc {
......
...@@ -70,7 +70,6 @@ const AddProject = (props: IAddProjectProps) => { ...@@ -70,7 +70,6 @@ const AddProject = (props: IAddProjectProps) => {
project = { ...item }; project = { ...item };
} }
}); });
currentProjectStore.changeProject(project);
setFileServerEndPointLocalStorage(project.zoneId); setFileServerEndPointLocalStorage(project.zoneId);
getFiletokenAccordingToId(project.id).then((res) => { getFiletokenAccordingToId(project.id).then((res) => {
project.filetoken = res; project.filetoken = res;
......
...@@ -33,7 +33,6 @@ const CurrentProject = observer(() => { ...@@ -33,7 +33,6 @@ const CurrentProject = observer(() => {
const canBeOpen = projectListOpen && Boolean(anchorEl); const canBeOpen = projectListOpen && Boolean(anchorEl);
const id = canBeOpen ? "spring-popper" : undefined; const id = canBeOpen ? "spring-popper" : undefined;
const handleChangeCurrentProject = (project: any) => { const handleChangeCurrentProject = (project: any) => {
currentProjectStore.changeProject(project);
setFileServerEndPointLocalStorage(project.zoneId); setFileServerEndPointLocalStorage(project.zoneId);
getFiletokenAccordingToId(project.id).then((res) => { getFiletokenAccordingToId(project.id).then((res) => {
project.filetoken = res; project.filetoken = res;
......
...@@ -415,7 +415,7 @@ const Flow = (props: IProps) => { ...@@ -415,7 +415,7 @@ const Flow = (props: IProps) => {
} else { } else {
setInSideFlowNodeId(node.id); setInSideFlowNodeId(node.id);
setInSideBatchNodeId(""); setInSideBatchNodeId("");
setExternalSelectedNodeId && setExternalSelectedNodeId(""); setExternalSelectedNodeId && setExternalSelectedNodeId(node.id);
} }
document.getElementById(`point${node.id}`)?.scrollIntoView(true); document.getElementById(`point${node.id}`)?.scrollIntoView(true);
} }
......
...@@ -71,7 +71,6 @@ ...@@ -71,7 +71,6 @@
overflow-y: overlay; overflow-y: overlay;
height: calc(100% - 48px); height: calc(100% - 48px);
position: relative; position: relative;
overflow: visible;
} }
.noData { .noData {
display: flex; display: flex;
......
...@@ -47,7 +47,6 @@ ...@@ -47,7 +47,6 @@
border-right: 1px solid rgba(235, 237, 240, 1); border-right: 1px solid rgba(235, 237, 240, 1);
width: 360px; width: 360px;
height: 100%; height: 100%;
overflow-y: auto;
box-sizing: border-box; box-sizing: border-box;
position: relative; position: relative;
} }
......
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