From a235879dd0bd4ef35b9d9c36132dc46b106b6adb Mon Sep 17 00:00:00 2001 From: caishi <1149225589@qq.com> Date: Wed, 20 Jan 2021 10:12:35 +0800 Subject: [PATCH] update --- src/forge/DevOps/Dispose.jsx | 2 +- src/forge/DevOps/Dispose/Stage.jsx | 20 +++++++++++++---- src/forge/DevOps/Dispose/head.jsx | 4 +--- src/forge/DevOps/Dispose/menusAdd.jsx | 2 +- src/forge/DevOps/Structure.jsx | 16 ++++++-------- src/forge/DevOps/disposePipeline.jsx | 31 +++++++++++++++++++++------ src/forge/DevOps/ops.scss | 18 ++++++++-------- 7 files changed, 59 insertions(+), 34 deletions(-) diff --git a/src/forge/DevOps/Dispose.jsx b/src/forge/DevOps/Dispose.jsx index a4d573a6..358bbc7f 100644 --- a/src/forge/DevOps/Dispose.jsx +++ b/src/forge/DevOps/Dispose.jsx @@ -67,7 +67,7 @@ function Dispose(props){ const url = `/ci/pipelines.json`; axios.post(url,{ pipeline_name, - file_name:".trustie.pipeline.yml", + file_name:".trustie-pipeline.yml", identifier:projectsId }).then(result=>{ setVisible(false); diff --git a/src/forge/DevOps/Dispose/Stage.jsx b/src/forge/DevOps/Dispose/Stage.jsx index 3f03d03e..66118f85 100644 --- a/src/forge/DevOps/Dispose/Stage.jsx +++ b/src/forge/DevOps/Dispose/Stage.jsx @@ -3,7 +3,17 @@ import { Button , Popconfirm } from 'antd'; import { Cancel } from '../../Component/layout'; import Item from './StageItem'; -function Stage({ templates , datas , saveDatas , saveFunc , stepName , showNotification , deleteStep , deleteFunc }){ +function Stage({ + templates , + datas , + saveDatas , + saveFunc , + stepName , + showNotification , + deleteStep , + deleteFunc , + deleteFlag +}){ const [ stepList , setStepList ] = useState(undefined); const [ temp , setTemp ] = useState(undefined); const [ saveFlag , setSaveFlag ] = useState(true); @@ -87,9 +97,11 @@ function Stage({ templates , datas , saveDatas , saveFunc , stepName , showNotif
- - 删除 - + {!deleteFlag && + + 删除 + + }
) diff --git a/src/forge/DevOps/Dispose/head.jsx b/src/forge/DevOps/Dispose/head.jsx index c178f9b5..40f9c322 100644 --- a/src/forge/DevOps/Dispose/head.jsx +++ b/src/forge/DevOps/Dispose/head.jsx @@ -1,14 +1,12 @@ import React from 'react'; import { AlignCenterBetween } from '../../Component/layout'; -import { Link } from 'react-router-dom'; - function head(){ return( 工作流配置 - 模板使用说明 + 模板使用说明 ) } diff --git a/src/forge/DevOps/Dispose/menusAdd.jsx b/src/forge/DevOps/Dispose/menusAdd.jsx index fc9f35a6..27e610a1 100644 --- a/src/forge/DevOps/Dispose/menusAdd.jsx +++ b/src/forge/DevOps/Dispose/menusAdd.jsx @@ -30,7 +30,7 @@ function menusAdd ({ getName , checkDatas , k }){ function showInput(){ let c = checkDatas(); - if(c){ + if(c || c === "" ){ setShow(true); setPut(true); } diff --git a/src/forge/DevOps/Structure.jsx b/src/forge/DevOps/Structure.jsx index cfdfce1b..30fd168e 100644 --- a/src/forge/DevOps/Structure.jsx +++ b/src/forge/DevOps/Structure.jsx @@ -4,6 +4,7 @@ import { Table, Pagination, Popconfirm } from "antd"; import { truncateCommitId } from "../common/util"; import {getUrl} from 'educoder'; import axios from "axios"; +import { Link } from 'react-router-dom'; import styled from 'styled-components'; @@ -284,19 +285,16 @@ function Structure(props,ref){ ]; return (
- 构建列表 + + + 构建列表 + 返回 + +
{renderStatus()} - {/* 手动创建 */} - {/* - 分支 - - - - 标签 - */} { diff --git a/src/forge/DevOps/disposePipeline.jsx b/src/forge/DevOps/disposePipeline.jsx index 75afd276..44ca191a 100644 --- a/src/forge/DevOps/disposePipeline.jsx +++ b/src/forge/DevOps/disposePipeline.jsx @@ -157,7 +157,6 @@ function disposePipeline(props){ steps:datas }).then(result=>{ if(result && result.data){ - props.showNotification("阶段更新成功!"); setDatasUpdataFlag(false); if(!btn){ setStage(show_index); @@ -167,6 +166,8 @@ function disposePipeline(props){ }else{ enters(btn); } + }else{ + props.showNotification("阶段更新失败,请稍微重试!"); } }).catch(error=>{}) } @@ -232,14 +233,19 @@ function disposePipeline(props){ stage_name:name }).then(result=>{ if(result && result.data){ - props.showNotification("阶段新增成功!"); getData(index-1); + setStageType("customize"); + }else{ + props.showNotification("阶段新增失败!"); } }) } // 删除阶段 function deleteStageFunc(){ + debugger; + let next = menuList && menuList.filter(item=>item.show_index === (stage+1)); + let nextStageType = next && next.length>0 && next[0].stage_type; const url = `/ci/pipelines/${disposeId}/${stageId}/delete_stage.json`; axios.delete(url,{ show_index:stage @@ -247,6 +253,7 @@ function disposePipeline(props){ if(result && result.data){ props.showNotification("阶段删除成功!"); getData(stage-1); + setStageType(nextStageType); } }).catch(error=>{}) } @@ -272,7 +279,7 @@ function disposePipeline(props){ ...params }).then(result=>{ if(result){ - props.history.push(`/projects/${owner}/${disposeId}/devops/dispose`); + props.history.push(`/projects/${owner}/${projectsId}/devops/dispose`); } }).catch(error=>{ console.log(error); @@ -281,7 +288,7 @@ function disposePipeline(props){ url = `/ci/pipelines/${disposeId}/create_trustie_pipeline.json`; axios.post(url,params).then(result=>{ if(result){ - props.history.push(`/projects/${owner}/${disposeId}/devops/dispose`); + props.history.push(`/projects/${owner}/${projectsId}/devops/dispose`); } }).catch(error=>{ console.log(error); @@ -297,11 +304,21 @@ function disposePipeline(props){
{ - stage === 1 ? + stageType === "init" ? : - menuList && (stage === menuList.length) ? + stageType === "confirm" ? : - + }
diff --git a/src/forge/DevOps/ops.scss b/src/forge/DevOps/ops.scss index c8c7bfae..49f431a0 100644 --- a/src/forge/DevOps/ops.scss +++ b/src/forge/DevOps/ops.scss @@ -337,20 +337,19 @@ display: flex; flex-flow: column; align-items:center; - justify-content: center; + justify-content: flex-start; text-align: center; color: #787878; font-size: 16px; position: relative; cursor: pointer; - width: 110px; + max-width: 122px; flex:2; &>i{ font-size: 30px!important; height: 30px; width: 30px; line-height: 30px; - margin-bottom: 10px; } &:hover,&.active{ & > i{ @@ -369,17 +368,18 @@ } .aboutEdit{ width: 100%; - padding:0px 15px; .operateName{ position: relative; line-height: 22px; - height: 40px; - display: block; + display: flex; + align-items: center; + justify-content: center; + padding: 0px 15px; + min-height: 40px; & > i{ position: absolute; - right:-15px; - top:50%; - margin-top: -11px; + right:0px; + top:10px; display: none; } }