Commit 9b5a2318 authored by chenshouchao's avatar chenshouchao

Merge branch 'feat-20220718' into 'release'

Feat 20220718

See merge request !36
parents 8c034058 7843925c
...@@ -17,7 +17,7 @@ interface SearchInputProps extends OutlinedInputProps { ...@@ -17,7 +17,7 @@ interface SearchInputProps extends OutlinedInputProps {
const SearchInput = (props: SearchInputProps) => { const SearchInput = (props: SearchInputProps) => {
const { const {
size = "small", size = "small",
placeholder = "输入关键词搜索", placeholder = "输入关键词按回车搜索",
fullWidth = true, fullWidth = true,
...other ...other
} = props; } = props;
......
...@@ -10,6 +10,7 @@ import { ...@@ -10,6 +10,7 @@ import {
ExtendButtonBase, ExtendButtonBase,
ButtonTypeMap, ButtonTypeMap,
} from "@mui/material"; } from "@mui/material";
import LoadingButton from "@mui/lab/LoadingButton";
import ArrowDropDownIcon from "@mui/icons-material/ArrowDropDown"; import ArrowDropDownIcon from "@mui/icons-material/ArrowDropDown";
interface ButtonTagProps interface ButtonTagProps
...@@ -35,6 +36,8 @@ interface ButtonTagProps ...@@ -35,6 +36,8 @@ interface ButtonTagProps
disabled?: boolean; //是否禁用 disabled?: boolean; //是否禁用
style?: any; //按钮自定义样式 style?: any; //按钮自定义样式
img?: JSX.Element; //图标按钮中的图标 img?: JSX.Element; //图标按钮中的图标
isLoadingButton?: boolean; // 是否是loadingbutton
loading?: boolean; // 是否处于loading状态
selectCallBack?: (item: any, key: number) => void; //选择按钮的回调 selectCallBack?: (item: any, key: number) => void; //选择按钮的回调
} }
...@@ -51,6 +54,9 @@ const theme = createTheme({ ...@@ -51,6 +54,9 @@ const theme = createTheme({
color: "rgba(255, 78, 78, 1)", color: "rgba(255, 78, 78, 1)",
border: "1px solid rgba(255, 78, 78, 1)", border: "1px solid rgba(255, 78, 78, 1)",
}, },
"& .MuiLoadingButton-loadingIndicator": {
color: "#fff",
},
}, },
contained: { contained: {
backgroundColor: "#1370FF", backgroundColor: "#1370FF",
...@@ -75,6 +81,12 @@ const theme = createTheme({ ...@@ -75,6 +81,12 @@ const theme = createTheme({
"&:hover": { backgroundColor: "#ECF4FF " }, "&:hover": { backgroundColor: "#ECF4FF " },
}, },
containedPrimary: {
"&.Mui-disabled": {
backgroundColor: "#A6D3FF",
},
},
containedSecondary: { containedSecondary: {
backgroundColor: "#FF4E4E", backgroundColor: "#FF4E4E",
"&:hover": { "&:hover": {
...@@ -126,10 +138,17 @@ const theme = createTheme({ ...@@ -126,10 +138,17 @@ const theme = createTheme({
}, },
}, },
}, },
MuiTypography: {
styleOverrides: {
root: {
whiteSpace: "nowrap",
},
},
},
}, },
}); });
const ButtonComponent = (props: ButtonTagProps) => { const MyButton = (props: ButtonTagProps) => {
const { const {
size, size,
disabled, disabled,
...@@ -138,6 +157,8 @@ const ButtonComponent = (props: ButtonTagProps) => { ...@@ -138,6 +157,8 @@ const ButtonComponent = (props: ButtonTagProps) => {
img, img,
select, select,
selectCallBack, selectCallBack,
isLoadingButton,
loading,
...other ...other
} = props; } = props;
const { classes, cx } = useStyles({}); const { classes, cx } = useStyles({});
...@@ -166,34 +187,68 @@ const ButtonComponent = (props: ButtonTagProps) => { ...@@ -166,34 +187,68 @@ const ButtonComponent = (props: ButtonTagProps) => {
return ( return (
<ThemeProvider theme={theme}> <ThemeProvider theme={theme}>
<Button {isLoadingButton && (
size={size || "medium"} <LoadingButton
variant={variant || "contained"} size={size || "medium"}
color={color || "primary"} variant={variant || "contained"}
disableRipple={true} color={color || "primary"}
disableFocusRipple={true} disableRipple={true}
disabled={disabled || false} disableFocusRipple={true}
style={{ ...props.style }} disabled={disabled || false}
onClick={props.select ? handleClick : props.onClick || defaultClick} style={{ ...props.style }}
{...other} onClick={props.select ? handleClick : props.onClick || defaultClick}
> loading={loading}
{img || ""} {...other}
<Typography style={{ fontSize: props.fontSize }}> >
{props.text} {img || ""}
</Typography> <Typography style={{ fontSize: props.fontSize }}>
{((props.select && props.select.length > 0) || props.drop) && ( {props.text}
<ArrowDropDownIcon </Typography>
classes={{ {((props.select && props.select.length > 0) || props.drop) && (
root: cx({ <ArrowDropDownIcon
[classes.ArrowDropDownIconRoot]: true, classes={{
[classes.ArrowDropDownIconRootOpen]: Boolean( root: cx({
props.dropValue || anchorEl [classes.ArrowDropDownIconRoot]: true,
), [classes.ArrowDropDownIconRootOpen]: Boolean(
}), props.dropValue || anchorEl
}} ),
/> }),
)} }}
</Button> />
)}
</LoadingButton>
)}
{!isLoadingButton && (
<Button
size={size || "medium"}
variant={variant || "contained"}
color={color || "primary"}
disableRipple={true}
disableFocusRipple={true}
disabled={disabled || false}
style={{ ...props.style }}
onClick={props.select ? handleClick : props.onClick || defaultClick}
{...other}
>
{img || ""}
<Typography style={{ fontSize: props.fontSize }}>
{props.text}
</Typography>
{((props.select && props.select.length > 0) || props.drop) && (
<ArrowDropDownIcon
classes={{
root: cx({
[classes.ArrowDropDownIconRoot]: true,
[classes.ArrowDropDownIconRootOpen]: Boolean(
props.dropValue || anchorEl
),
}),
}}
/>
)}
</Button>
)}
<Menu <Menu
id="simple-menu" id="simple-menu"
anchorEl={anchorEl} anchorEl={anchorEl}
...@@ -228,4 +283,4 @@ const useStyles = makeStyles<{}>()((theme) => ({ ...@@ -228,4 +283,4 @@ const useStyles = makeStyles<{}>()((theme) => ({
ArrowDropDownIconRootOpen: { color: "#8A9099", transform: "rotate(180deg)" }, ArrowDropDownIconRootOpen: { color: "#8A9099", transform: "rotate(180deg)" },
})); }));
export default ButtonComponent; export default MyButton;
// 局部loading组件 挂载在目标块下,目标块最少要添加一个position: relative; 或者absolute // 局部loading组件
// 使用方法1 用一个div包裹children,在children上加一个蒙层和loading
// <MyCircularProgress loading={loading}>children</MyCircularProgress>
// 使用方法2 挂载在目标块下,目标块最少要添加一个position: relative; 或者absolute
// <div style={{ position: "relative", }} >
// <MyCircularProgress loading={loading}/>
// </div>
import CircularProgress from "@mui/material/CircularProgress"; import CircularProgress from "@mui/material/CircularProgress";
type IMyCircularProgressProps = { type IMyCircularProgressProps = {
loading: boolean; loading: boolean; // 是否处于loading状态
children?: React.ReactNode; // 包裹的子元素
minHeight?: string; minHeight?: string;
maxHeight?: string; maxHeight?: string;
zIndex?: number; zIndex?: number;
...@@ -14,43 +23,86 @@ const MyCircularProgress = (props: IMyCircularProgressProps) => { ...@@ -14,43 +23,86 @@ const MyCircularProgress = (props: IMyCircularProgressProps) => {
minHeight = "none", minHeight = "none",
maxHeight = "100vh", maxHeight = "100vh",
zIndex = "100", zIndex = "100",
children,
} = props; } = props;
if (loading) { if (loading) {
return ( if (children) {
<div return (
style={{
minHeight: minHeight,
width: "100%",
height: "100%",
position: "absolute",
top: 0,
zIndex: zIndex,
}}
>
<div
style={{
width: "100%",
height: "100%",
position: "absolute",
top: 0,
opacity: 0.6,
background: "#fff",
}}
></div>
<div <div
style={{ style={{
width: "100%", position: "relative",
height: "100%",
maxHeight: maxHeight,
display: "flex",
justifyContent: "center",
alignItems: "center",
}} }}
> >
<CircularProgress></CircularProgress> <div
style={{
width: "100%",
height: "100%",
position: "absolute",
top: 0,
opacity: 0.6,
background: "#fff",
zIndex: zIndex,
}}
></div>
<div
style={{
width: "100%",
height: "100%",
display: "flex",
justifyContent: "center",
alignItems: "center",
position: "absolute",
top: 0,
zIndex: zIndex,
maxHeight: maxHeight,
}}
>
<CircularProgress></CircularProgress>
</div>
{children}
</div> </div>
</div> );
); } else {
if (children) {
return children;
} else {
return (
<div
style={{
width: "100%",
height: "100%",
position: "absolute",
top: 0,
zIndex: zIndex,
minHeight: minHeight,
}}
>
<div
style={{
width: "100%",
height: "100%",
position: "absolute",
top: 0,
opacity: 0.6,
background: "#fff",
}}
></div>
<div
style={{
width: "100%",
height: "100%",
display: "flex",
justifyContent: "center",
alignItems: "center",
maxHeight: maxHeight,
}}
>
<CircularProgress></CircularProgress>
</div>
</div>
);
}
}
} else { } else {
return null; return null;
} }
......
...@@ -43,6 +43,7 @@ export interface IDialogProps { ...@@ -43,6 +43,7 @@ export interface IDialogProps {
clickMaskClose?: boolean; clickMaskClose?: boolean;
/** 确认按钮样式*/ /** 确认按钮样式*/
okSx?: any; okSx?: any;
loading?: boolean; // 确认按钮是否处于loading状态
} }
const MyDialog: React.FunctionComponent<IDialogProps> = (props) => { const MyDialog: React.FunctionComponent<IDialogProps> = (props) => {
...@@ -64,6 +65,7 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => { ...@@ -64,6 +65,7 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => {
okText, okText,
disabledConfirm, disabledConfirm,
clickMaskClose = false, clickMaskClose = false,
loading = false,
okSx = {}, okSx = {},
} = props; } = props;
...@@ -99,6 +101,8 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => { ...@@ -99,6 +101,8 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => {
variant="contained" variant="contained"
size="small" size="small"
disabled={disabledConfirm} disabled={disabledConfirm}
isLoadingButton={true}
loading={loading}
style={{ ...okSx }} style={{ ...okSx }}
/> />
) : null} ) : null}
...@@ -140,7 +144,7 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => { ...@@ -140,7 +144,7 @@ const MyDialog: React.FunctionComponent<IDialogProps> = (props) => {
</div> </div>
</DialogTitle> </DialogTitle>
)} )}
<DialogContent style={{ minWidth: 400 }}>{children}</DialogContent> <DialogContent style={{ minWidth: 388 }}>{children}</DialogContent>
{Footer()} {Footer()}
</Dialog> </Dialog>
); );
......
...@@ -6,7 +6,7 @@ import MyButton from "./MyButton"; ...@@ -6,7 +6,7 @@ import MyButton from "./MyButton";
import tipsIcon from "@/assets/project/information-outline.svg"; import tipsIcon from "@/assets/project/information-outline.svg";
import Popper from "@mui/material/Popper"; import Popper from "@mui/material/Popper";
interface IMyPopconfirmProps { interface IMyPopconfirmProps {
title: string | ReactNode; title: string | ReactNode;
placement?: placement?:
| "auto-end" | "auto-end"
...@@ -30,7 +30,7 @@ interface IMyPopconfirmProps { ...@@ -30,7 +30,7 @@ interface IMyPopconfirmProps {
showCancel?: boolean; showCancel?: boolean;
onCancel?: any; onCancel?: any;
onConfirm?: any; onConfirm?: any;
}; }
const MyPopconfirm = (props: IMyPopconfirmProps) => { const MyPopconfirm = (props: IMyPopconfirmProps) => {
const { const {
...@@ -75,7 +75,12 @@ const MyPopconfirm = (props: IMyPopconfirmProps) => { ...@@ -75,7 +75,12 @@ const MyPopconfirm = (props: IMyPopconfirmProps) => {
> >
<Box sx={{ marginBottom: "16px" }}> <Box sx={{ marginBottom: "16px" }}>
<img <img
style={{ marginRight: "12px", position: "relative", top: "3px" }} style={{
width: "16px",
marginRight: "12px",
position: "relative",
top: "3px",
}}
src={tipsIcon} src={tipsIcon}
alt="" alt=""
/> />
...@@ -85,18 +90,14 @@ const MyPopconfirm = (props: IMyPopconfirmProps) => { ...@@ -85,18 +90,14 @@ const MyPopconfirm = (props: IMyPopconfirmProps) => {
{showCancel && ( {showCancel && (
<MyButton <MyButton
text={cancelText} text={cancelText}
variant='outlined' variant="outlined"
size="small" size="small"
color="inherit" color="inherit"
onClick={handleCancel} onClick={handleCancel}
style={{ marginRight: "12px" }} style={{ marginRight: "12px" }}
/> />
)} )}
<MyButton <MyButton text={okText} size="small" onClick={handleOk} />
text={okText}
size="small"
onClick={handleOk}
/>
</Box> </Box>
</Popper> </Popper>
); );
......
...@@ -120,7 +120,7 @@ const FileItem = observer((props: IProps) => { ...@@ -120,7 +120,7 @@ const FileItem = observer((props: IProps) => {
width: 300, width: 300,
margin: "6px 0", margin: "6px 0",
}} }}
color="error" color="success"
value={itemInfo?.percentage} value={itemInfo?.percentage}
/> />
) : null} ) : null}
......
...@@ -4,7 +4,7 @@ import RadioGroupOfButtonStyle from "@/components/CommonComponents/RadioGroupOfB ...@@ -4,7 +4,7 @@ import RadioGroupOfButtonStyle from "@/components/CommonComponents/RadioGroupOfB
import MyMultipleMenu, { IOption } from "@/components/mui/MyMultipleMenu"; import MyMultipleMenu, { IOption } from "@/components/mui/MyMultipleMenu";
import MySelect from "@/components/mui/MySelect"; import MySelect from "@/components/mui/MySelect";
import MyInput from "@/components/mui/MyInput"; import MyInput from "@/components/mui/MyInput";
import ButtonComponent from "@/components/mui/MyButton"; import MyButton from "@/components/mui/MyButton";
import SearchIcon from "@mui/icons-material/Search"; import SearchIcon from "@mui/icons-material/Search";
import MyPagination from "@/components/mui/MyPagination"; import MyPagination from "@/components/mui/MyPagination";
import NglView from "@/components/BusinessComponents/NglView"; import NglView from "@/components/BusinessComponents/NglView";
...@@ -240,13 +240,13 @@ const SeeDataset = observer((props: ISeeDatasetProps) => { ...@@ -240,13 +240,13 @@ const SeeDataset = observer((props: ISeeDatasetProps) => {
height: "32px", height: "32px",
}} }}
></MyInput> ></MyInput>
<ButtonComponent <MyButton
text="确认" text="确认"
style={{ width: "68px" }} style={{ width: "68px" }}
onClick={() => { onClick={() => {
getList(); getList();
}} }}
></ButtonComponent> ></MyButton>
</div> </div>
</div> </div>
</div> </div>
...@@ -366,19 +366,19 @@ const SeeDataset = observer((props: ISeeDatasetProps) => { ...@@ -366,19 +366,19 @@ const SeeDataset = observer((props: ISeeDatasetProps) => {
</div> </div>
<div className={style.foot}> <div className={style.foot}>
{isCadd && ( {isCadd && (
<ButtonComponent <MyButton
variant="outlined" variant="outlined"
text={`下载(${selectItems.length})`} text={`下载(${selectItems.length})`}
style={{ marginRight: "12px" }} style={{ marginRight: "12px" }}
disabled={selectItems.length === 0} disabled={selectItems.length === 0}
onClick={() => setDownloadOpen(true)} onClick={() => setDownloadOpen(true)}
></ButtonComponent> ></MyButton>
)} )}
<ButtonComponent <MyButton
disabled={selectItems.length === 0} disabled={selectItems.length === 0}
text={`另存为(${selectItems.length})`} text={`另存为(${selectItems.length})`}
onClick={() => setSaveOpen(true)} onClick={() => setSaveOpen(true)}
></ButtonComponent> ></MyButton>
</div> </div>
{saveOpen && ( {saveOpen && (
<Save <Save
......
...@@ -14,7 +14,7 @@ import { useLocation, useNavigate } from "react-router-dom"; ...@@ -14,7 +14,7 @@ import { useLocation, useNavigate } from "react-router-dom";
import ArrowBackIosNewIcon from "@mui/icons-material/ArrowBackIosNew"; import ArrowBackIosNewIcon from "@mui/icons-material/ArrowBackIosNew";
import IconButton from "@mui/material/IconButton"; import IconButton from "@mui/material/IconButton";
import ButtonComponent from "@/components/mui/MyButton"; import MyButton from "@/components/mui/MyButton";
import useMyRequest from "@/hooks/useMyRequest"; import useMyRequest from "@/hooks/useMyRequest";
import { fetchWorkFlowJob, getworkFlowTaskInfo } from "@/api/project_api"; import { fetchWorkFlowJob, getworkFlowTaskInfo } from "@/api/project_api";
import { IResponse } from "@/api/http"; import { IResponse } from "@/api/http";
...@@ -352,7 +352,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -352,7 +352,7 @@ const ProjectSubmitWork = observer(() => {
state === "RUNNING" ? onStopJob() : onDeleteJob(); state === "RUNNING" ? onStopJob() : onDeleteJob();
}} }}
> */} > */}
<ButtonComponent <MyButton
text={state === "RUNNING" ? "终止" : "删除"} text={state === "RUNNING" ? "终止" : "删除"}
variant="outlined" variant="outlined"
color="secondary" color="secondary"
...@@ -365,7 +365,7 @@ const ProjectSubmitWork = observer(() => { ...@@ -365,7 +365,7 @@ const ProjectSubmitWork = observer(() => {
) )
} }
// click={onStopJob} // click={onStopJob}
></ButtonComponent> ></MyButton>
{/* </MyPopconfirm> */} {/* </MyPopconfirm> */}
</div> </div>
)} )}
......
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
height: 82px; height: 82px;
padding: 7px 12px; padding: 7px 12px;
resize: none; resize: none;
font-size: 14px;
} }
.projectInfoSelect { .projectInfoSelect {
width: 560px; width: 560px;
......
...@@ -395,6 +395,14 @@ const BaseInfo = observer(() => { ...@@ -395,6 +395,14 @@ const BaseInfo = observer(() => {
<InputAdornment position="start">¥</InputAdornment> <InputAdornment position="start">¥</InputAdornment>
), ),
}} }}
sx={{
"& .MuiOutlinedInput-input": {
padding: "6.5px 2px",
},
"& .MuiTypography-root": {
fontSize: '14px'
}
}}
/> />
</div> </div>
<div className={style.projectInfoListLi}> <div className={style.projectInfoListLi}>
......
/* /*
* @Author: 吴永生#A02208 yongsheng.wu@wholion.com * @Author: 吴永生#A02208 yongsheng.wu@wholion.com
* @Date: 2022-05-31 10:18:13 * @Date: 2022-05-31 10:18:13
* @LastEditors: 吴永生#A02208 yongsheng.wu@wholion.com * @LastEditors: 吴永生 15770852798@163.com
* @LastEditTime: 2022-07-21 11:34:55 * @LastEditTime: 2022-07-29 11:28:09
* @FilePath: /bkunyun/src/views/Project/ProjectSetting/index.tsx * @FilePath: /bkunyun/src/views/Project/ProjectSetting/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
*/ */
...@@ -94,6 +94,7 @@ const ChangePermission = observer((props: IProps) => { ...@@ -94,6 +94,7 @@ const ChangePermission = observer((props: IProps) => {
> >
<div style={{ marginTop: 12 }}> <div style={{ marginTop: 12 }}>
<MySelect <MySelect
fullWidth
title="项目权限" title="项目权限"
isTitle={true} isTitle={true}
value={selectValue} value={selectValue}
......
...@@ -154,7 +154,7 @@ const ProjectMembers = observer(() => { ...@@ -154,7 +154,7 @@ const ProjectMembers = observer(() => {
<Box className={styles.headerBox}> <Box className={styles.headerBox}>
<SearchInput <SearchInput
onKeyUp={handleKeyWordChangeKeyUp} onKeyUp={handleKeyWordChangeKeyUp}
placeholder="搜索项目成员" placeholder="输入项目成员按回车搜索"
sx={{ width: 340 }} sx={{ width: 340 }}
/> />
{currentProjectStore?.currentProjectInfo?.projectRole === "OWNER" ? ( {currentProjectStore?.currentProjectInfo?.projectRole === "OWNER" ? (
......
...@@ -16,7 +16,7 @@ import moment from "moment"; ...@@ -16,7 +16,7 @@ import moment from "moment";
import ConfigForm from "./ConfigForm"; import ConfigForm from "./ConfigForm";
import WorkFlow from "./WorkFlow"; import WorkFlow from "./WorkFlow";
import ButtonComponent from "@/components/mui/MyButton"; import MyButton from "@/components/mui/MyButton";
import { ITemplateConfig } from "./interface"; import { ITemplateConfig } from "./interface";
import useMyRequest from "@/hooks/useMyRequest"; import useMyRequest from "@/hooks/useMyRequest";
import { fetchTemplateConfigInfo, submitWorkFlow } from "@/api/project_api"; import { fetchTemplateConfigInfo, submitWorkFlow } from "@/api/project_api";
...@@ -272,12 +272,12 @@ const ProjectSubmitWork = observer(() => { ...@@ -272,12 +272,12 @@ const ProjectSubmitWork = observer(() => {
title="提交前请先确认参数填写无误,确认提交吗?" title="提交前请先确认参数填写无误,确认提交吗?"
onConfirm={handleSubmitForm} onConfirm={handleSubmitForm}
> */} > */}
<ButtonComponent <MyButton
text="提交任务" text="提交任务"
onClick={(e: any) => onClick={(e: any) =>
handleShowPopper(e, "提交前请先确认参数填写无误,确认提交吗?") handleShowPopper(e, "提交前请先确认参数填写无误,确认提交吗?")
} }
></ButtonComponent> ></MyButton>
{/* </MyPopconfirm> */} {/* </MyPopconfirm> */}
</div> </div>
</div> </div>
......
...@@ -395,7 +395,7 @@ const ProjectMembers = observer(() => { ...@@ -395,7 +395,7 @@ const ProjectMembers = observer(() => {
</Box> </Box>
<Box className={styles.tabBoxMiddle}> <Box className={styles.tabBoxMiddle}>
<img alt="" src={jobCost} /> <img alt="" src={jobCost} />
<div className={styles.tabBoxTime}>{item.jobCost}</div> <div className={styles.tabBoxTime}>{item.jobCost.toFixed(2)}</div>
</Box> </Box>
<Box className={styles.tabBoxJobStatus}> <Box className={styles.tabBoxJobStatus}>
<img alt="" src={renderStatusIcon(item.state)} /> <img alt="" src={renderStatusIcon(item.state)} />
......
...@@ -14,7 +14,7 @@ import { observer } from "mobx-react-lite"; ...@@ -14,7 +14,7 @@ import { observer } from "mobx-react-lite";
import MyPopconfirm from "@/components/mui/MyPopconfirm"; import MyPopconfirm from "@/components/mui/MyPopconfirm";
import RadioGroupOfButtonStyle from "@/components/CommonComponents/RadioGroupOfButtonStyle"; import RadioGroupOfButtonStyle from "@/components/CommonComponents/RadioGroupOfButtonStyle";
import ButtonComponent from "@/components/mui/MyButton"; import MyButton from "@/components/mui/MyButton";
import OperatorList from "./components/OperatorList"; import OperatorList from "./components/OperatorList";
import Flow from "../Project/components/Flow"; import Flow from "../Project/components/Flow";
import ParameterSetting from "./components/ParameterSetting"; import ParameterSetting from "./components/ParameterSetting";
...@@ -181,10 +181,7 @@ const WorkFlowEdit = observer((props: IProps) => { ...@@ -181,10 +181,7 @@ const WorkFlowEdit = observer((props: IProps) => {
</IconButton> </IconButton>
</div> </div>
<div className={styles.swHeaderRight}> <div className={styles.swHeaderRight}>
<ButtonComponent <MyButton text="保存" onClick={() => handlePreserve()}></MyButton>
text="保存"
onClick={() => handlePreserve()}
></ButtonComponent>
</div> </div>
</div> </div>
<div className={styles.swContent}> <div className={styles.swContent}>
......
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