弹窗
This commit is contained in:
parent
9289522415
commit
f89d818bc9
@ -1,18 +1,27 @@
|
|||||||
import './proj-edit.css';
|
import './proj-edit.css';
|
||||||
import { useNavigate, useParams} from "react-router-dom";
|
import { useNavigate, useParams } from "react-router-dom";
|
||||||
import { Button, message} from "antd";
|
import { Button, message, Modal } from "antd";
|
||||||
import StepProjEdit from "../../components/step/StepProjEdit.tsx";
|
import StepProjEdit from "../../components/step/StepProjEdit.tsx";
|
||||||
import CardProjEdit from "../../components/card/CardProjEdit.tsx";
|
import CardProjEdit from "../../components/card/CardProjEdit.tsx";
|
||||||
import {Process} from "../../interfaces/step/IStepProj.ts";
|
import { Process } from "../../interfaces/step/IStepProj.ts";
|
||||||
import CardProjDownload from "../../components/card/CardProjDownload.tsx";
|
import CardProjDownload from "../../components/card/CardProjDownload.tsx";
|
||||||
import CardProjJump from "../../components/card/CardProjJump.tsx";
|
import CardProjJump from "../../components/card/CardProjJump.tsx";
|
||||||
import {useEffect, useState} from "react";
|
import { useEffect, useState } from "react";
|
||||||
import {Axios, get} from "../../util/AjaxUtils.ts";
|
import { Axios, get } from "../../util/AjaxUtils.ts";
|
||||||
import {EditStepEnum, IProjEdit} from "../../interfaces/card/ICardProj.ts";
|
import { EditStepEnum, IProjEdit } from "../../interfaces/card/ICardProj.ts";
|
||||||
import {MAX_MOD_SIZE} from "./edit/ProjConfigModList.tsx";
|
import { MAX_MOD_SIZE } from "./edit/ProjConfigModList.tsx";
|
||||||
import {GenerateStatus} from "../../interfaces/proj/IProj.ts";
|
import { GenerateStatus } from "../../interfaces/proj/IProj.ts";
|
||||||
|
import TitleIntroduction from '../../route/proj/edit/ProjEditStep1.tsx'
|
||||||
|
import TitleIntroductionShow from '../../route/proj/edit/ProjEditStep1Show.tsx'
|
||||||
|
import SoftwareInfo from '../../route/proj/edit/ProjEditStep2.tsx'
|
||||||
|
import SoftwareInfoShow from '../../route/proj/edit/ProjEditStep2Show.tsx'
|
||||||
export default function ProjEditAll() {
|
export default function ProjEditAll() {
|
||||||
|
//第一步 标题简介弹窗
|
||||||
|
const [titleIntroductionOpen, setTitleIntroductionOpen] = useState(false)
|
||||||
|
const [titleIntroductionShowOpen, setTitleIntroductionShowOpen] = useState(false)
|
||||||
|
//第二步 软件基本信息弹窗
|
||||||
|
const [softwareInfoOpen, setSoftwareOpen] = useState(false)
|
||||||
|
const [softwareInfoShowOpen, setSoftwareShowOpen] = useState(false)
|
||||||
const nav = useNavigate();
|
const nav = useNavigate();
|
||||||
const pathParams = useParams();
|
const pathParams = useParams();
|
||||||
|
|
||||||
@ -26,6 +35,7 @@ export default function ProjEditAll() {
|
|||||||
// const height = window.innerHeight - 240;
|
// const height = window.innerHeight - 240;
|
||||||
|
|
||||||
const renderEditStep = (data: any, isEdited: boolean, isGenerateSuccess: boolean) => {
|
const renderEditStep = (data: any, isEdited: boolean, isGenerateSuccess: boolean) => {
|
||||||
|
|
||||||
const editStepArray: IProjEdit[] = [];
|
const editStepArray: IProjEdit[] = [];
|
||||||
editStepArray.push(
|
editStepArray.push(
|
||||||
{
|
{
|
||||||
@ -33,12 +43,14 @@ export default function ProjEditAll() {
|
|||||||
desc: '修改软件系统的相关简介与详细介绍',
|
desc: '修改软件系统的相关简介与详细介绍',
|
||||||
step: 1,
|
step: 1,
|
||||||
btnName: !isGenerateSuccess ? '设置' : '查看',
|
btnName: !isGenerateSuccess ? '设置' : '查看',
|
||||||
status: data.projIntroduction?EditStepEnum.EDITED:EditStepEnum.UN_EDIT,
|
status: data.projIntroduction ? EditStepEnum.EDITED : EditStepEnum.UN_EDIT,
|
||||||
handleEdit() {
|
handleEdit() {
|
||||||
if (!isGenerateSuccess) {
|
if (!isGenerateSuccess) {
|
||||||
nav(`/proj-edit/step1/${pathParams.projId}`)
|
// nav(`/proj-edit/step1/${pathParams.projId}`)
|
||||||
|
setTitleIntroductionOpen(true)
|
||||||
} else {
|
} else {
|
||||||
nav(`/proj-edit/step1-show/${pathParams.projId}`)
|
// nav(`/proj-edit/step1-show/${pathParams.projId}`)
|
||||||
|
setTitleIntroductionShowOpen(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -47,13 +59,17 @@ export default function ProjEditAll() {
|
|||||||
desc: '完善软件简称、版本号、软件所属者及联系人等信息',
|
desc: '完善软件简称、版本号、软件所属者及联系人等信息',
|
||||||
step: 2,
|
step: 2,
|
||||||
btnName: !isGenerateSuccess ? '设置' : '查看',
|
btnName: !isGenerateSuccess ? '设置' : '查看',
|
||||||
status: data.apply.projDevCompleteDate?EditStepEnum.EDITED:EditStepEnum.UN_EDIT,
|
status: data.apply.projDevCompleteDate ? EditStepEnum.EDITED : EditStepEnum.UN_EDIT,
|
||||||
canBtnClick: false,
|
canBtnClick: false,
|
||||||
handleEdit() {
|
handleEdit() {
|
||||||
if (generateStatus != GenerateStatus.SUCCESS) {
|
if (generateStatus != GenerateStatus.SUCCESS) {
|
||||||
nav(`/proj-edit/step2/${pathParams.projId}`)
|
// nav(`/proj-edit/step2/${pathParams.projId}`)
|
||||||
|
setSoftwareOpen(true)
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
nav(`/proj-edit/step2-show/${pathParams.projId}`)
|
// nav(`/proj-edit/step2-show/${pathParams.projId}`)
|
||||||
|
setSoftwareShowOpen(true)
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -94,8 +110,8 @@ export default function ProjEditAll() {
|
|||||||
get<any>({
|
get<any>({
|
||||||
messageApi: messageApi,
|
messageApi: messageApi,
|
||||||
url: `/api/proj/get/${pathParams.projId}`,
|
url: `/api/proj/get/${pathParams.projId}`,
|
||||||
onSuccess({data}) {
|
onSuccess({ data }) {
|
||||||
const isEdited = Boolean(data.projIntroduction) == true && Boolean(data.apply.projDevCompleteDate) == true && Boolean(data.apply.envHardDev) == true && Boolean(data.loginpage.loginpageId) == true
|
const isEdited = Boolean(data.projIntroduction) == true && Boolean(data.apply.projDevCompleteDate) == true && Boolean(data.apply.envHardDev) == true && Boolean(data.loginpage.loginpageId) == true
|
||||||
const isConfig = data.loginpage.loginpageId && MAX_MOD_SIZE > 0;
|
const isConfig = data.loginpage.loginpageId && MAX_MOD_SIZE > 0;
|
||||||
const isGenerateSuccess: boolean = data.generate.generateStatus == GenerateStatus.SUCCESS;
|
const isGenerateSuccess: boolean = data.generate.generateStatus == GenerateStatus.SUCCESS;
|
||||||
renderEditStep(data, isEdited, isGenerateSuccess);
|
renderEditStep(data, isEdited, isGenerateSuccess);
|
||||||
@ -120,21 +136,21 @@ export default function ProjEditAll() {
|
|||||||
{title: '编辑项目'},
|
{title: '编辑项目'},
|
||||||
]}
|
]}
|
||||||
/> */}
|
/> */}
|
||||||
<div className="proj-edit" style={{ marginTop:'21px', padding: '15px 175px'}}>
|
<div className="proj-edit" style={{ marginTop: '21px', padding: '15px 175px' }}>
|
||||||
<StepProjEdit step={1} process={isEditStepEdited ? Process.COMPLETE : Process.PROCESSING}
|
<StepProjEdit step={1} process={isEditStepEdited ? Process.COMPLETE : Process.PROCESSING}
|
||||||
descTitle="完善信息"
|
descTitle="完善信息"
|
||||||
descDetail="完善项目的基本信息"
|
descDetail="完善项目的基本信息"
|
||||||
hasNext={true}>
|
hasNext={true}>
|
||||||
{
|
{
|
||||||
editStepArray.map((item, index) => {
|
editStepArray.map((item, index) => {
|
||||||
return <CardProjEdit key={`editStep-${index}`}
|
return <CardProjEdit key={`editStep-${index}`}
|
||||||
title={item.title}
|
title={item.title}
|
||||||
desc={item.desc}
|
desc={item.desc}
|
||||||
status={item.status}
|
status={item.status}
|
||||||
btnName={item.btnName}
|
btnName={item.btnName}
|
||||||
handleEdit={item.handleEdit}
|
handleEdit={item.handleEdit}
|
||||||
background={item.status == EditStepEnum.EDITED ? '#F5FAFE' : '#f3f3f3'}
|
background={item.status == EditStepEnum.EDITED ? '#F5FAFE' : '#f3f3f3'}
|
||||||
shadow={item.status == EditStepEnum.EDITED ? '0px 3px 0px 0px rgba(55,144,215,0.18)' : ''}
|
shadow={item.status == EditStepEnum.EDITED ? '0px 3px 0px 0px rgba(55,144,215,0.18)' : ''}
|
||||||
|
|
||||||
/>
|
/>
|
||||||
})
|
})
|
||||||
@ -142,64 +158,126 @@ export default function ProjEditAll() {
|
|||||||
|
|
||||||
</StepProjEdit>
|
</StepProjEdit>
|
||||||
<StepProjEdit step={2}
|
<StepProjEdit step={2}
|
||||||
process={!isEditStepEdited ? Process.PENDING : (isConfigEdited ? Process.COMPLETE : Process.PROCESSING)}
|
process={!isEditStepEdited ? Process.PENDING : (isConfigEdited ? Process.COMPLETE : Process.PROCESSING)}
|
||||||
descTitle="功能设置"
|
descTitle="功能设置"
|
||||||
descDetail="设置系统的菜单功能" hasNext={true}>
|
descDetail="设置系统的菜单功能" hasNext={true}>
|
||||||
{
|
{
|
||||||
<CardProjJump title="预览系统"
|
<CardProjJump title="预览系统"
|
||||||
desc={isEditStepEdited && isConfigEdited ? "点击查看预览系统" : "制作中"}
|
desc={isEditStepEdited && isConfigEdited ? "点击查看预览系统" : "制作中"}
|
||||||
canBtnClick={isEditStepEdited && isConfigEdited}
|
canBtnClick={isEditStepEdited && isConfigEdited}
|
||||||
handleJump={() => {
|
handleJump={() => {
|
||||||
window.open(`${Axios.defaults?.baseURL}/${previewUrl}`, '_blank')
|
window.open(`${Axios.defaults?.baseURL}/${previewUrl}`, '_blank')
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
</StepProjEdit>
|
</StepProjEdit>
|
||||||
<StepProjEdit step={3}
|
<StepProjEdit step={3}
|
||||||
process={generateStatus == GenerateStatus.SUCCESS ? Process.PROCESSING : Process.PENDING}
|
process={generateStatus == GenerateStatus.SUCCESS ? Process.PROCESSING : Process.PENDING}
|
||||||
descTitle="资料下载">
|
descTitle="资料下载">
|
||||||
<CardProjDownload title="申请表"
|
<CardProjDownload title="申请表"
|
||||||
desc="点击下载申请表"
|
desc="点击下载申请表"
|
||||||
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
||||||
handleDownload={() => {
|
handleDownload={() => {
|
||||||
window.open(`${Axios.defaults?.baseURL}/route/proj/download/apply/${pathParams.projId}`)
|
window.open(`${Axios.defaults?.baseURL}/route/proj/download/apply/${pathParams.projId}`)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<CardProjDownload title="操作手册"
|
<CardProjDownload title="操作手册"
|
||||||
desc="点击下载操作手册"
|
desc="点击下载操作手册"
|
||||||
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
||||||
handleDownload={() => {
|
handleDownload={() => {
|
||||||
window.open(`${Axios.defaults?.baseURL}/route/proj/download/manual/${pathParams.projId}`)
|
window.open(`${Axios.defaults?.baseURL}/route/proj/download/manual/${pathParams.projId}`)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<CardProjDownload title="代码压缩包"
|
<CardProjDownload title="代码压缩包"
|
||||||
desc="点击下载代码压缩包"
|
desc="点击下载代码压缩包"
|
||||||
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
||||||
handleDownload={() => {
|
handleDownload={() => {
|
||||||
window.open(`${Axios.defaults?.baseURL}/route/proj/download/code-zip/${pathParams.projId}`)
|
window.open(`${Axios.defaults?.baseURL}/route/proj/download/code-zip/${pathParams.projId}`)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<CardProjDownload title="代码文档"
|
<CardProjDownload title="代码文档"
|
||||||
desc="点击下载代码文档"
|
desc="点击下载代码文档"
|
||||||
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
canBtnClick={generateStatus == GenerateStatus.SUCCESS}
|
||||||
handleDownload={() => {
|
handleDownload={() => {
|
||||||
window.open(`${Axios.defaults?.baseURL}/route/proj/download/code/${pathParams.projId}`)
|
window.open(`${Axios.defaults?.baseURL}/route/proj/download/code/${pathParams.projId}`)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</StepProjEdit>
|
</StepProjEdit>
|
||||||
</div>
|
</div>
|
||||||
<div className="btn-container">
|
<div className="btn-container">
|
||||||
<Button size="large" style={{
|
<Button size="large" style={{
|
||||||
width: '200px',
|
width: '200px',
|
||||||
height:'40px',
|
height: '40px',
|
||||||
fontSize: '16px',
|
fontSize: '16px',
|
||||||
backgroundColor: '#e9e7e7',
|
backgroundColor: '#e9e7e7',
|
||||||
color: '#A0A0A0',
|
color: '#A0A0A0',
|
||||||
border:'none',
|
border: 'none',
|
||||||
}} onClick={() => {
|
}} onClick={() => {
|
||||||
nav(-1);
|
nav(-1);
|
||||||
}}>返回</Button>
|
}}>返回</Button>
|
||||||
</div>
|
</div>
|
||||||
|
{/* 第1步设置 */}
|
||||||
|
<Modal open={titleIntroductionOpen}
|
||||||
|
title="软件简介确认"
|
||||||
|
width={1500}
|
||||||
|
destroyOnClose={true}
|
||||||
|
|
||||||
|
onCancel={() => {
|
||||||
|
|
||||||
|
setTitleIntroductionOpen(false);
|
||||||
|
// setTimeout(() => {
|
||||||
|
// window.location.reload()
|
||||||
|
// }, 500)
|
||||||
|
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<TitleIntroduction closeModal={() => { setTitleIntroductionOpen(false) }}></TitleIntroduction>
|
||||||
|
</Modal>
|
||||||
|
{/* 第1步查看 */}
|
||||||
|
<Modal open={titleIntroductionShowOpen}
|
||||||
|
destroyOnClose={true}
|
||||||
|
|
||||||
|
title="软件简介查看"
|
||||||
|
width={1500}
|
||||||
|
onCancel={() => {
|
||||||
|
setTitleIntroductionShowOpen(false);
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<TitleIntroductionShow></TitleIntroductionShow>
|
||||||
|
</Modal>
|
||||||
|
{/* 第二步设置 */}
|
||||||
|
<Modal open={softwareInfoOpen}
|
||||||
|
title="软件基本信息填写"
|
||||||
|
width={1500}
|
||||||
|
destroyOnClose={true}
|
||||||
|
onCancel={() => {
|
||||||
|
setSoftwareOpen(false);
|
||||||
|
// setTimeout(() => {
|
||||||
|
// props.closeModal()
|
||||||
|
// window.location.reload(); // 刷新页面
|
||||||
|
// }, 1000);
|
||||||
|
// setTimeout(() => {
|
||||||
|
// window.location.reload()
|
||||||
|
// }, 500)
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<SoftwareInfo closeModal={() => { setSoftwareOpen(false) }}></SoftwareInfo>
|
||||||
|
</Modal>
|
||||||
|
{/* 第二步查看 */}
|
||||||
|
<Modal open={softwareInfoShowOpen}
|
||||||
|
title="软件基本信息查看"
|
||||||
|
width={1500}
|
||||||
|
destroyOnClose={true}
|
||||||
|
onCancel={() => {
|
||||||
|
setSoftwareShowOpen(false);
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<SoftwareInfoShow></SoftwareInfoShow>
|
||||||
|
</Modal>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
import './proj-edit.css';
|
import './proj-edit.css';
|
||||||
import { useNavigate, useParams } from "react-router-dom";
|
import { useNavigate, useParams } from "react-router-dom";
|
||||||
import { Button, message } from "antd";
|
import { Button, message,Modal } from "antd";
|
||||||
import StepProjEdit from "../../components/step/StepProjEdit.tsx";
|
import StepProjEdit from "../../components/step/StepProjEdit.tsx";
|
||||||
import CardProjEdit from "../../components/card/CardProjEdit.tsx";
|
import CardProjEdit from "../../components/card/CardProjEdit.tsx";
|
||||||
import { Process } from "../../interfaces/step/IStepProj.ts";
|
import { Process } from "../../interfaces/step/IStepProj.ts";
|
||||||
@ -11,8 +11,12 @@ import { Axios, get } from "../../util/AjaxUtils.ts";
|
|||||||
import { EditStepEnum, IProjEdit } from "../../interfaces/card/ICardProj.ts";
|
import { EditStepEnum, IProjEdit } from "../../interfaces/card/ICardProj.ts";
|
||||||
import { MAX_MOD_SIZE_FREE } from "./edit/ProjConfigModList.tsx";
|
import { MAX_MOD_SIZE_FREE } from "./edit/ProjConfigModList.tsx";
|
||||||
import { GenerateStatus } from "../../interfaces/proj/IProj.ts";
|
import { GenerateStatus } from "../../interfaces/proj/IProj.ts";
|
||||||
|
import TitleIntroduction from '../../route/proj/edit/ProjEditStep1.tsx'
|
||||||
|
import TitleIntroductionShow from '../../route/proj/edit/ProjEditStep1Show.tsx'
|
||||||
export default function ProjEdit() {
|
export default function ProjEdit() {
|
||||||
|
//第一步 标题简介弹窗
|
||||||
|
const [titleIntroductionOpen, setTitleIntroductionOpen] = useState(false)
|
||||||
|
const [titleIntroductionShowOpen, setTitleIntroductionShowOpen] = useState(false)
|
||||||
const nav = useNavigate();
|
const nav = useNavigate();
|
||||||
const pathParams = useParams();
|
const pathParams = useParams();
|
||||||
|
|
||||||
@ -38,9 +42,11 @@ export default function ProjEdit() {
|
|||||||
status: data.projIntroduction?EditStepEnum.EDITED:EditStepEnum.UN_EDIT,
|
status: data.projIntroduction?EditStepEnum.EDITED:EditStepEnum.UN_EDIT,
|
||||||
handleEdit() {
|
handleEdit() {
|
||||||
if (!isGenerateSuccess) {
|
if (!isGenerateSuccess) {
|
||||||
nav(`/proj-edit/step1/${pathParams.projId}`)
|
// nav(`/proj-edit/step1/${pathParams.projId}`)
|
||||||
|
setTitleIntroductionOpen(true)
|
||||||
} else {
|
} else {
|
||||||
nav(`/proj-edit/step1-show/${pathParams.projId}`)
|
nav(`/proj-edit/step1-show/${pathParams.projId}`)
|
||||||
|
setTitleIntroductionShowOpen(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -341,6 +347,37 @@ export default function ProjEdit() {
|
|||||||
nav(-1);
|
nav(-1);
|
||||||
}}>返回</Button>
|
}}>返回</Button>
|
||||||
</div>
|
</div>
|
||||||
|
{/* 第1步设置 */}
|
||||||
|
<Modal open={titleIntroductionOpen}
|
||||||
|
title="软件简介确认"
|
||||||
|
width={1500}
|
||||||
|
destroyOnClose={true}
|
||||||
|
|
||||||
|
onCancel={() => {
|
||||||
|
|
||||||
|
setTitleIntroductionOpen(false);
|
||||||
|
// setTimeout(() => {
|
||||||
|
// window.location.reload()
|
||||||
|
// }, 500)
|
||||||
|
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<TitleIntroduction closeModal={() => { setTitleIntroductionOpen(false) }}></TitleIntroduction>
|
||||||
|
</Modal>
|
||||||
|
{/* 第1步查看 */}
|
||||||
|
<Modal open={titleIntroductionShowOpen}
|
||||||
|
destroyOnClose={true}
|
||||||
|
|
||||||
|
title="软件简介查看"
|
||||||
|
width={1500}
|
||||||
|
onCancel={() => {
|
||||||
|
setTitleIntroductionShowOpen(false);
|
||||||
|
}}
|
||||||
|
footer={null}
|
||||||
|
>
|
||||||
|
<TitleIntroductionShow></TitleIntroductionShow>
|
||||||
|
</Modal>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user