|
@@ -3,6 +3,8 @@
|
3
|
3
|
<div class="header">
|
4
|
4
|
<el-button icon="el-icon-d-arrow-left" plain type="primary" class="back" @click="goBack">返回</el-button>
|
5
|
5
|
<h1>{{ '【' + project.projectNumber + '】' + project.projectName }}</h1>
|
|
6
|
+ <el-button icon="el-icon-search" type="primary" class="records" @click="clickRecords">流转记录</el-button>
|
|
7
|
+ <el-button icon="el-icon-connection" type="success" class="flow" @click="clickProcess">流程图</el-button>
|
6
|
8
|
</div>
|
7
|
9
|
<el-divider></el-divider>
|
8
|
10
|
|
|
@@ -486,6 +488,16 @@
|
486
|
488
|
<el-button @click="deptOpen = false">取消</el-button>
|
487
|
489
|
</div>
|
488
|
490
|
</el-dialog>
|
|
491
|
+ <el-drawer title="流程图" :visible.sync="drawerOpen" direction="rtl">
|
|
492
|
+ <div class="app-container">
|
|
493
|
+ <flow :flowData="flowData" />
|
|
494
|
+ </div>
|
|
495
|
+ </el-drawer>
|
|
496
|
+ <el-drawer title="办理进度" :visible.sync="recordOpen" direction="rtl">
|
|
497
|
+ <div class="app-container">
|
|
498
|
+ <row-detail :rows="clickRow"></row-detail>
|
|
499
|
+ </div>
|
|
500
|
+ </el-drawer>
|
489
|
501
|
</div>
|
490
|
502
|
</template>
|
491
|
503
|
|
|
@@ -498,7 +510,7 @@ import { listProjectWork, addProjectWork } from "@/api/oa/project/projectWork";
|
498
|
510
|
import { listProjectComment, getProjectComment } from "@/api/oa/project/projectComment";
|
499
|
511
|
import { listProjectProgress, getProjectProgress } from "@/api/oa/project/projectProgress";
|
500
|
512
|
import { listProjectContract, addProjectContract } from "@/api/oa/contract/projectContract";
|
501
|
|
-import { listContract, getContract, delContract, addContract, updateContract } from "@/api/oa/contract/contract";
|
|
513
|
+import { listContract, getContract } from "@/api/oa/contract/contract";
|
502
|
514
|
import { listDevice } from "@/api/oa/device/device";
|
503
|
515
|
import { listCar } from '@/api/oa/car/car';
|
504
|
516
|
import budgetInfo from '@/views/flowable/form/budget/budgetInfo.vue';
|
|
@@ -510,9 +522,13 @@ import BorrowData from '@/views/flowable/form/inProgress/borrowData.vue';
|
510
|
522
|
import BudgetTab from '@/views/flowable/form/projectProcess/budgetTab.vue';
|
511
|
523
|
import achiData from "@/views/flowable/form/inProgress/achiData.vue";
|
512
|
524
|
import choosePeople from '@/views/flowable/form/budget/components/choosePeople.vue'
|
513
|
|
-import { listProjectChange, getProjectChange, delProjectChange, addProjectChange, updateProjectChange } from "@/api/oa/project/projectChange";
|
|
525
|
+import { listProjectChange } from "@/api/oa/project/projectChange";
|
|
526
|
+import { flowXmlAndNodeByFormId } from "@/api/flowable/definition";
|
|
527
|
+import flow from '@/views/flowable/task/todo/detail/flow'
|
|
528
|
+import RowDetail from '@/views/flowable/task/myProcess/send/rowDetail.vue';
|
|
529
|
+
|
514
|
530
|
export default {
|
515
|
|
- components: { budgetInfo, SafeTab, TechnicalTab, PlanTab, SettleData, BorrowData, BudgetTab, achiData, choosePeople },
|
|
531
|
+ components: { budgetInfo, SafeTab, TechnicalTab, PlanTab, SettleData, BorrowData, BudgetTab, achiData, choosePeople, flow, RowDetail },
|
516
|
532
|
created() {
|
517
|
533
|
this.getUserList();
|
518
|
534
|
this.getDeviceList();
|
|
@@ -526,7 +542,7 @@ export default {
|
526
|
542
|
this.getContractDataList(projectId);
|
527
|
543
|
this.getProjectProgressList(projectId);
|
528
|
544
|
this.getProjectChangeList(projectId);
|
529
|
|
- }else{
|
|
545
|
+ } else {
|
530
|
546
|
this.goBack();
|
531
|
547
|
}
|
532
|
548
|
},
|
|
@@ -560,6 +576,13 @@ export default {
|
560
|
576
|
participates: [],
|
561
|
577
|
undertakingDept: [],
|
562
|
578
|
projectChangeList: [],
|
|
579
|
+ drawerOpen: false,
|
|
580
|
+ flowData: {},
|
|
581
|
+ recordOpen: false,
|
|
582
|
+ clickRow: {
|
|
583
|
+ procInsId:'',
|
|
584
|
+ deployId:''
|
|
585
|
+ }
|
563
|
586
|
}
|
564
|
587
|
},
|
565
|
588
|
methods: {
|
|
@@ -714,6 +737,22 @@ export default {
|
714
|
737
|
this.$router.go(0);
|
715
|
738
|
})
|
716
|
739
|
})
|
|
740
|
+ },
|
|
741
|
+ async clickProcess() {
|
|
742
|
+ if (this.$route.query.projectId) {
|
|
743
|
+ let resData = await flowXmlAndNodeByFormId({ formId: this.$route.query.projectId, name: '项目流转' })
|
|
744
|
+ this.flowData = resData.data;
|
|
745
|
+ this.drawerOpen = true;
|
|
746
|
+ let resData2 = await flowXmlAndNodeByFormId({ formId: this.$route.query.projectId, name: '项目流转' })
|
|
747
|
+ this.flowData = resData2.data;
|
|
748
|
+ this.drawerOpen = true;
|
|
749
|
+ }
|
|
750
|
+ },
|
|
751
|
+ async clickRecords() {
|
|
752
|
+ let resData = await flowXmlAndNodeByFormId({ formId: this.$route.query.projectId, name: '项目流转' })
|
|
753
|
+ let { procInsId, deployId } = resData
|
|
754
|
+ this.clickRow = { procInsId, deployId }
|
|
755
|
+ this.recordOpen = true;
|
717
|
756
|
}
|
718
|
757
|
},
|
719
|
758
|
}
|
|
@@ -731,6 +770,18 @@ export default {
|
731
|
770
|
left: 12px;
|
732
|
771
|
top: -10px;
|
733
|
772
|
}
|
|
773
|
+
|
|
774
|
+ .records {
|
|
775
|
+ position: absolute;
|
|
776
|
+ right: 120px;
|
|
777
|
+ top: -10px;
|
|
778
|
+ }
|
|
779
|
+
|
|
780
|
+ .flow {
|
|
781
|
+ position: absolute;
|
|
782
|
+ right: 12px;
|
|
783
|
+ top: -10px;
|
|
784
|
+ }
|
734
|
785
|
}
|
735
|
786
|
|
736
|
787
|
.content {
|