fix : 修复流程图渲染问题

This commit is contained in:
2024-05-21 00:14:53 +08:00
parent 1635482e09
commit 9f4fe95e4d
7 changed files with 32 additions and 39 deletions

View File

@@ -21,7 +21,7 @@
<div class="process"> <div class="process">
<operation-render v-if="processViewer" :operation-list="data.operationList" <operation-render v-if="processViewer" :operation-list="data.operationList"
:state="data.state"/> :state="data.state"/>
<process-diagram-viewer v-if="processViewer"/> <process-diagram-viewer v-if="processViewer" :id-name="type"/>
</div> </div>
</div> </div>
<Opinion: v-if="data.taskId" :formData="formData" :taskId="formData.taskId"></Opinion:> <Opinion: v-if="data.taskId" :formData="formData" :taskId="formData.taskId"></Opinion:>
@@ -91,8 +91,8 @@ const schema = computed(()=>{
component: ()=>( component: ()=>(
<div> <div>
{ {
props.formData.singleFile?.originalFileName ? props.formData.singleFile?.originalFileName ?
<span <span
style={{color: '#409EFF', cursor: 'pointer'}} style={{color: '#409EFF', cursor: 'pointer'}}
onClick={()=>handleDownload(props.formData.singleFile)} onClick={()=>handleDownload(props.formData.singleFile)}
> >
@@ -101,7 +101,7 @@ const schema = computed(()=>{
<span>{'--'}</span> <span>{'--'}</span>
} }
</div> </div>
) )
}, },
] ]
@@ -155,4 +155,4 @@ watchEffect(()=>{
<style lang="scss" scoped> <style lang="scss" scoped>
</style> </style>

View File

@@ -61,7 +61,7 @@
<div class="process"> <div class="process">
<operation-render v-if="processViewer" :operation-list="data.operationList" <operation-render v-if="processViewer" :operation-list="data.operationList"
:state="data.state"/> :state="data.state"/>
<process-diagram-viewer v-if="processViewer"/> <process-diagram-viewer v-if="processViewer" id-name="collectionProcess"/>
</div> </div>
</div> </div>
</el-form> </el-form>

View File

@@ -158,7 +158,7 @@
<div class="process"> <div class="process">
<operation-render v-if="processViewer" :operation-list="data.operationList" <operation-render v-if="processViewer" :operation-list="data.operationList"
:state="data.state"/> :state="data.state"/>
<process-diagram-viewer v-if="processViewer"/> <process-diagram-viewer v-if="processViewer" id-name="summaryProcess"/>
</div> </div>
</div> </div>
<div class="oper-page-btn" v-if="data.state === '1' && data.taskId"> <div class="oper-page-btn" v-if="data.state === '1' && data.taskId">

View File

@@ -5,8 +5,11 @@
:processViewer="summaryProcessViewer" :companyOption="companyOption" :loading="loading"/> :processViewer="summaryProcessViewer" :companyOption="companyOption" :loading="loading"/>
<summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData" <summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData"
:processViewer="summaryProcessViewer" :loading="loading"/> :processViewer="summaryProcessViewer" :loading="loading"/>
<ApprovalDetail v-show="showActive == '20'" :formData="summaryData.formData" :data="summaryData" :processViewer="summaryProcessViewer"></ApprovalDetail>
</template> </template>
</steps> </steps>
<opinion v-if="commonForm.taskId" :formData="formData" :taskId="formData.taskId"></opinion>
</template> </template>
<script setup lang="jsx"> <script setup lang="jsx">
@@ -19,6 +22,7 @@ import {ElNotification} from "element-plus";
const route = useRoute() const route = useRoute()
const companyOption = ref([]) const companyOption = ref([])
const commonForm = ref({})
const summaryData = ref({}) const summaryData = ref({})
const summaryProcessViewer = ref(true) const summaryProcessViewer = ref(true)
const loading = ref(false) const loading = ref(false)
@@ -31,7 +35,9 @@ const getCompanyOption = async () => {
} }
const getInfo = async (state) => { const getInfo = async (state) => {
const projectId = route.query.projectId const projectId = route.query.projectId
await getCompanyOption() if(showActive == '00'){
await getCompanyOption()
}
summaryProcessViewer.value = false summaryProcessViewer.value = false
loading.value = true loading.value = true
const {code, data,msg} = await getMapProjectStateInfo(projectId, state) const {code, data,msg} = await getMapProjectStateInfo(projectId, state)
@@ -43,6 +49,7 @@ const getInfo = async (state) => {
if(code===1000){ if(code===1000){
summaryData.value = data; summaryData.value = data;
loading.value = false loading.value = false
console.log('data-====================',data)
processStore.setDesign(data) processStore.setDesign(data)
processStore.runningList.value = data.runningList; processStore.runningList.value = data.runningList;
processStore.endList.value = data.endList; processStore.endList.value = data.endList;

View File

@@ -1,8 +1,8 @@
<template> <template>
<steps :active="'0'" @setDetail="setDetail" @stepChange="stepChange"> <steps :active="'0'" @setDetail="setDetail" @stepChange="stepChange">
<template #content> <template #content>
<collection-detail <collection-detail
:formData="collectionData.formData" :formData="collectionData.formData"
:data="collectionData" :data="collectionData"
:processViewer="commonProvessViewer" :processViewer="commonProvessViewer"
:companyOption="companyOption" :companyOption="companyOption"
@@ -12,10 +12,10 @@
<summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData" :processViewer="commonProvessViewer"/> <summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData" :processViewer="commonProvessViewer"/>
<ApprovalDetail type="approval" v-show="showActive == '20'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail> <ApprovalDetail type="approval" v-show="showActive == '20'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail>
<ApprovalDetail type="execute" v-show="showActive == '40'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail> <ApprovalDetail type="execute" v-show="showActive == '40'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail>
</template> </template>
</steps> </steps>
<Opinion: v-if="commonForm.taskId" :formData="formData" :taskId="formData.taskId"></Opinion:> <opinion v-if="commonForm.taskId" :formData="formData" :taskId="formData.taskId"/>
</template> </template>
<script setup lang="jsx"> <script setup lang="jsx">
@@ -27,6 +27,7 @@ import SummaryDetail from "@/components/DetailComponent/SummaryDetail.vue";
import ApprovalDetail from "@/components/DetailComponent/ApprovalDetail.vue"; import ApprovalDetail from "@/components/DetailComponent/ApprovalDetail.vue";
import { getMapProjectStateInfo } from '@/components/steps/api'; import { getMapProjectStateInfo } from '@/components/steps/api';
import { ElLoading } from "element-plus"; import { ElLoading } from "element-plus";
import Opinion from "@/components/DetailComponent/Opinion.vue";
// const activeName = ref('first') // const activeName = ref('first')
const handleClick = (tab, event) => { const handleClick = (tab, event) => {
@@ -83,7 +84,7 @@ const getAllInfo = async (state) => {
} catch { } catch {
loading.close() loading.close()
} }
} }
const showActive = ref() const showActive = ref()

View File

@@ -1,27 +1,8 @@
<template> <template>
<!-- <div class="detail-block">
<el-tabs
v-model="activeName"
type="card"
class="demo-tabs"
@tab-click="handleClick"
>
<el-tab-pane label="需求征集" name="first">
<collection-detail :formData="collectionData.formData" :data="collectionData"
:processViewer="collectionProcessViewer"
:companyOption="companyOption" @getInfo="getDemandCollectionInfo"/>
</el-tab-pane>
<el-tab-pane label="需求上报" name="second">
<summary-detail :formData="summaryData.formData" :data="summaryData" :processViewer="summaryProcessViewer"/>
</el-tab-pane>
<el-tab-pane label="项目立项" name="third" :disabled="true"></el-tab-pane>
</el-tabs>
</div> -->
<steps :active="'0'" @setDetail="setDetail" @stepChange="stepChange"> <steps :active="'0'" @setDetail="setDetail" @stepChange="stepChange">
<template #content> <template #content>
<collection-detail <collection-detail
:formData="collectionData.formData" :formData="collectionData.formData"
:data="collectionData" :data="collectionData"
:processViewer="commonProvessViewer" :processViewer="commonProvessViewer"
:companyOption="companyOption" :companyOption="companyOption"
@@ -30,10 +11,10 @@
/> />
<summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData" :processViewer="commonProvessViewer"/> <summary-detail v-show="showActive == '10'" :formData="summaryData.formData" :data="summaryData" :processViewer="commonProvessViewer"/>
<ApprovalDetail v-show="showActive == '20'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail> <ApprovalDetail v-show="showActive == '20'" :formData="commonForm.formData" :data="commonForm" :processViewer="commonProvessViewer"></ApprovalDetail>
</template> </template>
</steps> </steps>
<Opinion: v-if="commonForm.taskId" :formData="formData" :taskId="formData.taskId"></Opinion:> <opinion v-if="commonForm.taskId" :formData="formData" :taskId="formData.taskId"/>
</template> </template>
<script setup lang="jsx"> <script setup lang="jsx">
@@ -46,6 +27,7 @@ import SummaryDetail from "@/components/DetailComponent/SummaryDetail.vue";
import ApprovalDetail from "@/components/DetailComponent/ApprovalDetail.vue"; import ApprovalDetail from "@/components/DetailComponent/ApprovalDetail.vue";
import { getMapProjectStateInfo } from '@/components/steps/api'; import { getMapProjectStateInfo } from '@/components/steps/api';
import { ElLoading } from "element-plus"; import { ElLoading } from "element-plus";
import Opinion from "@/components/DetailComponent/Opinion.vue";
const route = useRoute() const route = useRoute()
const activeName = ref('first') const activeName = ref('first')
@@ -140,7 +122,7 @@ const getAllInfo = async (state) => {
} catch { } catch {
loading.close() loading.close()
} }
} }
const showActive = ref() const showActive = ref()

View File

@@ -8,8 +8,8 @@
</div> </div>
<div style="margin-top: 40px"> <div style="margin-top: 40px">
<div :style="'transform: scale('+ scale / 100 +');'"> <div :style="'transform: scale('+ scale / 100 +');'">
<div id="previewProcess"> <div :id="idName">
<process-tree :mode="mode" ref="processTreePreview" id-name="previewProcess"/> <process-tree :mode="mode" ref="processTreePreview" :id-name="idName"/>
</div> </div>
</div> </div>
</div> </div>
@@ -24,6 +24,9 @@ const props = defineProps({
mode: { mode: {
type: String, type: String,
default: 'preview' default: 'preview'
},idName:{
type:String,
default:'previewProcess'
} }
}) })