|
@@ -2,7 +2,7 @@
|
|
|
<div class="approve-node-wrap node-wrap">
|
|
|
<div class="node-content">
|
|
|
<div class="head">
|
|
|
- <span class="icon"><i class="el-icon-s-check"></i></span>
|
|
|
+ <span class="icon"></span>
|
|
|
<span class="name">审核人</span>
|
|
|
<span class="icon-btn" @click="removeNode"><i class="el-icon-close"></i></span>
|
|
|
</div>
|
|
@@ -12,7 +12,10 @@
|
|
|
{{item.ItemName}}、
|
|
|
</li>
|
|
|
</ul>
|
|
|
- <span v-else>请选择审批人</span>
|
|
|
+ <span v-else style="color:#0052D9;display: flex;align-items: center;">
|
|
|
+ <img src="~@/assets/img/approve_m/select.png">
|
|
|
+ 请选择审批人
|
|
|
+ </span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<AddNode :node="flowNode" v-on="$listeners"/>
|
|
@@ -32,7 +35,10 @@
|
|
|
<p>选择审批人</p>
|
|
|
<div class="choose-box">
|
|
|
<el-radio v-model="block1" :label="1">指定人员</el-radio>
|
|
|
- <el-button @click="chooseDialogShow=true">选择人员</el-button>
|
|
|
+ <el-button @click="chooseDialogShow=true" type="primary">
|
|
|
+ <i class="el-icon-circle-plus-outline" style="margin-right: 5px;"></i>
|
|
|
+ 选择人员
|
|
|
+ </el-button>
|
|
|
</div>
|
|
|
<draggable
|
|
|
v-model="choosedList"
|
|
@@ -42,19 +48,20 @@
|
|
|
<li class="list-item" v-for="item in choosedList" :key="item.ItemId">
|
|
|
<span class="name">{{item.ItemName}}</span>
|
|
|
<span class="icon-btn">
|
|
|
- <i class="el-icon-circle-close" @click.stop="removeChoosedItem(item)"></i>
|
|
|
+ <i class="el-icon-close" @click.stop="removeChoosedItem(item)"></i>
|
|
|
</span>
|
|
|
</li>
|
|
|
</draggable>
|
|
|
</div>
|
|
|
- <div class="block">
|
|
|
+ <div class="line"></div>
|
|
|
+ <div class="block" style="margin-top:30px;">
|
|
|
<p>多人审批时</p>
|
|
|
<el-radio-group v-model="block2">
|
|
|
<el-radio :label="1">
|
|
|
依次审批
|
|
|
<el-tooltip effect="dark" placement="top" content="多个审批人依次进行审批;只有当所有审批人同意,该节点才能通过;按选择顺序审批" >
|
|
|
<span class="hint-text">
|
|
|
- <i class="el-icon-warning-outline"></i>
|
|
|
+ <i class="el-icon-warning"></i>
|
|
|
</span>
|
|
|
</el-tooltip>
|
|
|
</el-radio>
|
|
@@ -62,7 +69,7 @@
|
|
|
会签
|
|
|
<el-tooltip effect="dark" placement="top" content="所有审批人同意,该节点才能通过;审批无先后顺序" >
|
|
|
<span class="hint-text">
|
|
|
- <i class="el-icon-warning-outline"></i>
|
|
|
+ <i class="el-icon-warning"></i>
|
|
|
</span>
|
|
|
</el-tooltip>
|
|
|
</el-radio>
|
|
@@ -70,7 +77,7 @@
|
|
|
或签
|
|
|
<el-tooltip effect="dark" placement="top" content="所有审批人同意,该节点才能通过;审批无先后顺序" >
|
|
|
<span class="hint-text">
|
|
|
- <i class="el-icon-warning-outline"></i>
|
|
|
+ <i class="el-icon-warning"></i>
|
|
|
</span>
|
|
|
</el-tooltip>
|
|
|
</el-radio>
|
|
@@ -78,18 +85,19 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="drawer-btn">
|
|
|
- <el-button @click="drawerShow=false">取消</el-button>
|
|
|
- <el-button @click="editApproveNode">确认</el-button>
|
|
|
+ <el-button type="primary" plain @click="drawerShow=false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="editApproveNode">确认</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-drawer>
|
|
|
<!-- 选择人员弹窗 -->
|
|
|
<el-dialog
|
|
|
title="选择人员"
|
|
|
- width="600"
|
|
|
+ width="600px"
|
|
|
:visible.sync="chooseDialogShow"
|
|
|
:modal-append-to-body="false"
|
|
|
:append-to-body="false"
|
|
|
+ @close="chooseDialogShow=false"
|
|
|
>
|
|
|
<div class="dialog-wrap">
|
|
|
<TreeTransfer
|
|
@@ -99,8 +107,8 @@
|
|
|
/>
|
|
|
</div>
|
|
|
<div class="dialog-btn">
|
|
|
- <el-button>取消</el-button>
|
|
|
- <el-button @click="getChoosedList">确认</el-button>
|
|
|
+ <el-button type="primary" plain @click="chooseDialogShow=false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="getChoosedList">确认</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
@@ -143,6 +151,10 @@ export default {
|
|
|
},
|
|
|
getChoosedList(){
|
|
|
this.choosedList = _.cloneDeep(this.$refs["tree-trans"].choosedList)
|
|
|
+ if(!this.choosedList.length){
|
|
|
+ this.$message.warning("请至少选择一人")
|
|
|
+ return
|
|
|
+ }
|
|
|
this.chooseDialogShow = false
|
|
|
},
|
|
|
removeChoosedItem(item){
|
|
@@ -165,12 +177,23 @@ export default {
|
|
|
.el-drawer__body{
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
+ .dialog-btn{
|
|
|
+ margin-top:60px;
|
|
|
+ padding-bottom: 40px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|
|
|
<style scoped lang="scss">
|
|
|
.approve-node-wrap{
|
|
|
.head{
|
|
|
- background-color: brown;
|
|
|
+ background-color: #0052D9;
|
|
|
+ .icon{
|
|
|
+ background-image: url('~@/assets/img/approve_m/approve.png');
|
|
|
+ }
|
|
|
+ .icon-btn{
|
|
|
+ font-size: 20px;
|
|
|
+ }
|
|
|
}
|
|
|
.approve-drawer-wrap{
|
|
|
height: 100%;
|
|
@@ -181,19 +204,30 @@ export default {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: space-between;
|
|
|
- font-weight: bold;
|
|
|
+ /* font-weight: bold; */
|
|
|
font-size: 18px;
|
|
|
height:35px;
|
|
|
- padding:10px;
|
|
|
- border-bottom: 1px solid gray;
|
|
|
+ padding:20px;
|
|
|
+ border-bottom: 1px solid #C8CDD9;
|
|
|
}
|
|
|
.drawer-content{
|
|
|
flex:1;
|
|
|
overflow-y: auto;
|
|
|
box-sizing: border-box;
|
|
|
- padding:10px;
|
|
|
+ padding:30px;
|
|
|
.block{
|
|
|
- margin-bottom: 20px;
|
|
|
+ min-height: 340px;
|
|
|
+ .choose-box{
|
|
|
+ margin-top: 20px;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .line{
|
|
|
+ margin:0 -30px;
|
|
|
+ height: 1px;
|
|
|
+ background-color:#C8CDD9;
|
|
|
}
|
|
|
.approve-list{
|
|
|
margin-top: 10px;
|
|
@@ -201,15 +235,23 @@ export default {
|
|
|
flex-wrap: wrap;
|
|
|
gap:10px;
|
|
|
.list-item{
|
|
|
- padding:5px;
|
|
|
- border:1px solid black;
|
|
|
+ padding:8px;
|
|
|
+ border-radius: 4px;
|
|
|
+ border:1px solid #C8CDD9;
|
|
|
+ .icon-btn{
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
.el-radio-group{
|
|
|
- margin-top: 10px;
|
|
|
+ margin-top: 20px;
|
|
|
.el-radio{
|
|
|
display: block;
|
|
|
margin-bottom: 10px;
|
|
|
+ .hint-text{
|
|
|
+ color:#C0C4CC;
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|