Commit e2aafbdb authored by zhengke's avatar zhengke

修改

parent 18815c9b
......@@ -11,6 +11,7 @@
},
"dependencies": {
"@quasar/extras": "^1.0.0",
"@riophae/vue-treeselect": "^0.4.0",
"axios": "^0.18.1",
"co": "^4.6.0",
"core-js": "^3.6.5",
......
<style scoped>
@import "css/cssReset.css";
.query-box{border: none;padding-left: 0}
._nav li{float: left;font-size: 14px;color: #666666;padding: 15px 10px;background-color: #F1F1F1;cursor: pointer;position: relative;}
._nav li._active{background-color:#FFFFFF;color: #333333 }
._nav li._active::after{content: "";width: 20px;height: 3px;background-color: #E95252;display: inline-block;position: absolute;bottom: 0;left: 38%;}
._content li{display: flex;padding: 0 30px;margin-top: 20px;border: 1px solid #ebebeb;background-color: white;}
._content li:hover{box-shadow:0px 0px 20px rgba(191,191,191,1);transition: all linear 0.5s;}
._content li>div{padding: 9px 0}
._left{display: flex;flex: 2;align-items: center;border-right: 1px dashed #DCDFE6;padding-right: 20px !important;}
._left>div{padding-left: 14px}
._Icon{width: 50px;height: 50px;line-height: 50px;text-align: center;color: white;font-weight: bold;background-color: #2AAEF2;border-radius: 50%;font-size: 22px;display: block;}
._t{color: #333333;font-size: 14px;padding-bottom: 7px;font-weight: bold}
._s{color: #666666;font-size: 12px;}
._cent{flex: 3;display: flex;align-items: center;}
._cent>div{width: 50%;padding-left: 80px;}
._right{flex: 1;align-items: center;display: flex;padding-left: 20px !important;border-left: 1px dashed #DCDFE6;}
.icon-liuchengsheji{background-color: #B552E9;}
.icon-liuchengsheji:hover{background-color: #c57dea}
.eicon-liuchengshejidit:active{background-color: #8741ab}
._red{color: #E95252}
._dt{text-decoration: underline}
._cu{cursor: pointer;}
._none{opacity:0 ;}
._block{opacity: 1}
.InfoChangeLog{height: auto;background-color: #FFFFFF;}
.changLogList{padding-left: 20px;max-height: 180px;overflow: auto;}
.changLogList_l{border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;}
._radius_green{background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;}
.changLog_time{color: #666666;font-size: 12px;display: inline-block;padding-right: 10px}
.el-button{border-radius: inherit !important}
._log_t{padding: 10px;}
._bdrd{border-radius: 17px;}
._tp{padding: 10px 20px 0 20px;font-size: 12px;display: flex;align-items: center;align-items: flex-end}
._bg_blue{background-color: #297BEF}
._bg_org{background-color: #F16C3C !important}
._bg_greend{background-color: #32B37C}
._bg_greendS{background-color:#1C9A65}
._bg_gray{background-color: #666666}
._color_blue{color: #005CAA}
._yewu{color: white;padding: 3px 13px;}
._qian{padding: 6px 15px;}
._array{display: inline-block;background-color: #999999}
._array_h{width: 35px;height: 3px;}
._array_h_left{top: 14px;left: -40px;position: absolute;}
._array_h_right{top: 14px;right: -40px;position: absolute;}
._array_w{width: 3px;height: 35px;}
.tri_left{width: 0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left: 6px solid #999999;}
.tri_down{width: 0;height:0;border-left:6px solid transparent;border-right: 6px solid transparent;border-top: 6px solid #999999; }
.tri_right{width: 0;height:0;border-top:6px solid transparent;border-bottom: 6px solid transparent;border-right: 6px solid #999999;}
._tag{display: inline-block;border-radius: 4px;padding: 2px 4px;margin-bottom: 4px;font-size: 12px}
._inlineblock_cen{display: inline-block;text-align: center}
._text_right{text-align: right;padding-right: 50px}
._tp_b{padding: 0 20px}
.height40{height: 40px;}
._feiyong{padding: 10px;flex-wrap: wrap;/*justify-content: space-between;*/display: flex;}
._feiyong>span{display: inline-block;padding: 4px 20px;color: white;font-size: 14px;border-radius: 4px;margin:0 10px 10px 0;}
._log_t_s{font-size: 12px;color: #666666}
.el-popover{text-align: inherit}
._dtel{padding-top: 10px;}
._no_liucheng{padding: 20px;text-align: center}
._liu_block{display: inline-block;width:auto;margin-bottom: 20px;position: relative;}
.icon-xiaotuziCduan_,.icon-xiaotuziCduan_2{position: absolute;right: -10px;top: -10px;color: #999999;}
._array_h_left .icon-xiaotuziCduan_2{position: absolute;left: -10px;top: -10px;right: initial;}
.text_l{text-align: left;margin-right: 50px}
.text_r{text-align: right;margin-left: 50px}
._miaoshu{display: inline-block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;padding:6px 15px;border-radius:4px;background-color: #297BEF;color:white;font-size: 14px;min-width: 120px; text-align: center;max-width: 130px;}
._last_ml0{margin-right: 0}
._last_mr0{margin-left: 0}
._array_h_dbox{position:absolute;top: 14px;right: -5px;}
._array_h_dbox_l{right: inherit;left: -40px}
._array_h_down{width: 35px;height: 3px;position: absolute;background-color: #999999}
._array_h_down_{width: 3px;height: 20px;position: absolute;background-color: #999999}
._array_h_down_l{left: 35px}
.icon-xiaotuziCduan_1{position: absolute;left: 28px;top: 10px;color: #999999;}
.xiaotuziCduan_1_l{left: inherit;right: -9px;}
._right i{width: 30px;height: 30px;display: inline-block;color: white !important;border-radius: 50%;text-align: center;line-height: 30px;margin-right: 10px;cursor: pointer;outline: none;}
._right i.icon-rizhi1{background-color: #67c23a}
._right i.icon-rizhi1:hover{background-color: #85ce61}
._right i.icon-rizhi1:active{background-color: #5daf34}
._right i.icon-liucheng1{background-color: #409EFF}
._right i.icon-liucheng1:hover{background-color: #66b1ff}
._right i.icon-liucheng1:active{background-color: #3a8ee6}
._right i.icon-bofang{background-color: #ebb563}
._right i.icon-bofang:hover{background-color: #ebb563}
._right i.icon-bofang:active{background-color: #cf9236}
._right i.icon-zanting1{background-color: #ebb563}
._right i.icon-zanting1:hover{background-color: #ebb563}
._right i.icon-zanting1:active{background-color: #cf9236}
._right i.el-icon-delete{background-color: #f56c6c}
._right i.el-icon-delete:hover{background-color: #f78989}
._right i.el-icon-delete:active{background-color: #dd6161}
._left ._Icon_box{width: 50px;padding: 0}
.page_FProcessManagement .query-box li:last-child{
top: 100px;
}
</style>
<template>
<div class="page_FProcessManagement">
<div class='query-box'>
<ul>
<!-- <li>
<span>注:财务基本流程包括(收款流程,付款流程,发票流程),如果需要其他的流程,比如退款流程等请在自定义流程下新增流程设置</span>
</li> -->
<li><input type="button" class="normalBtn" value="新增流程" @click="gotoSub('addFinancialProcess',0,8)"/>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="resetPageIndex();getTemplateList();"/>
</li>
</ul>
</div>
<ul class="_nav clearfix">
<li class="_active" @click="getTemplateList()">流程列表</li>
<!-- <li :class="active==1?'_active':''" @click="active=1,msg.TempLateWay=8,getTemplateList()">自定义流程</li> -->
</ul>
<ul>
<el-form class="_info_box clearfix" label-width="110px">
<el-row>
<el-col :span="4" :gutter="35">
<el-form-item label="流程名称">
<el-input v-model="msg.Name"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="费用类型">
<el-select filterable v-model='msg.CostTypeID' >
<el-option :value="0" label="不限"></el-option>
<el-option v-for="item in GetCostTypeList" :key="item.ID" :value="item.ID" :label="item.Name"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
</ul>
<ul class="_content" v-loading="loading">
<li v-for="(item,index) in CTemplateList" >
<div class="_left">
<div class="_Icon_box">
<span class="_Icon">{{item.Name.substring(0,1)}}</span>
</div>
<div>
<p class="_t">{{item.Name}}</p>
<p class="_s">{{item.DescribeInfo}}</p>
</div>
</div>
<div class="_cent _cent_zidingyi">
<div>
<p class="_t _red">
<el-popover
popper-class="detailsIT_Journal"
width="420"
trigger="click">
<div class="InfoChangeLog" v-if="item.CoseTypeList">
<div class="changLog">
<p class="_log_t">适用费用</p>
<div class="_feiyong">
<span class="_bg_greend" v-for="Cose in item.CoseTypeList">{{Cose}}</span>
</div>
<p class="_log_t _log_t_s">注:以上费用类型将会被执行你设定的流程</p>
</div>
</div>
<div v-else>
<p class="_no_liucheng">暂无适用费用!</p>
</div>
<span slot="reference" class="_dt _cu" type="success" icon="iconfont icon-rizhi1">{{item.CoseTypeListLength}}个费用类型</span>
</el-popover>
</p>
<p class="_s">适用费用</p>
</div>
<div>
<p class="_t _cu" v-if="item.FinanceFlowConnectType!=3">
<!-- <template v-for="(cp,ci) in item.SuitableObjectNameList">
<span >{{cp}} <span v-if="ci!=item.SuitableObjectNameList.length-1">,</span> </span>
</template> -->
<el-popover popper-class="detailsIT_Journal" width="420" trigger="click">
<div class="InfoChangeLog" v-if="item.SuitableObjectNameList">
<div class="changLog">
<p class="_log_t">适用公司</p>
<div class="_feiyong">
<span class="_bg_greend" v-for="Cose in item.SuitableObjectNameList">{{Cose}}</span>
</div>
<p class="_log_t _log_t_s">注:以上公司将会被执行你设定的流程</p>
</div>
</div>
<div v-else>
<p class="_no_liucheng">暂无适用公司!</p>
</div>
<span slot="reference" class="_dt _cu" type="success" icon="iconfont icon-rizhi1" v-if="item.FinanceFlowConnectType!=3">{{item.SuitableObjectNameListlength}}个适用公司</span>
</el-popover>
</p>
<P v-if="item.FinanceFlowConnectType==3"> <span slot="reference" class="_t" type="success" icon="iconfont icon-rizhi1">集团通用</span></P>
<p class="_s">适用公司</p>
</div>
<div>
<p class="_t" v-if="item.Status==1">{{item.FlowNum==null?'无':item.FlowNum}}</p>
<p class="_t" v-else>暂未开启流程</p>
<p class="_s">子流程数量</p>
</div>
</div>
<div class="_right">
<el-tooltip class="item" effect="dark" content="日志" placement="top" >
<el-popover
popper-class="detailsIT_Journal"
width="250"
trigger="click">
<div class="InfoChangeLog" >
<div class="changLog">
<p class="_log_t">流程日志</p>
<ul class="changLogList" v-if="FinanceInfoChangeLog">
<li class="changLogList_l" v-for="(log,li) in FinanceInfoChangeLog">
<span style="background-color: #47BF8C" class="_radius_green"></span>
<p> <span class="_color_blue">{{log.emName}}</span> <span class="fr changLog_time">{{log.Time}}</span> </p>
<p class="_dtel">{{log.StartValue}}</p>
</li>
</ul>
<ul v-else>
<li>暂无修改日志</li>
</ul>
</div>
</div>
<i slot="reference" v-show="item.Status==1" class="iconfont icon-rizhi1" @click="FinanceInfoChangeLog = item.FinanceInfoChangeLog"></i>
</el-popover>
</el-tooltip>
<el-tooltip popper-class="item _process" effect="dark" content="流程" placement="top">
<el-popover
popper-class="detailsIT_Journal"
width="600"
trigger="click">
<div class="InfoChangeLog" >
<div class="changLog">
<p class="_log_t">收款流程</p>
<my-FlowChartModule :data="item.Workflow_Condition"></my-FlowChartModule>
</div>
</div>
<i slot="reference" v-show="item.Status==1" class="iconfont icon-liucheng1"></i>
</el-popover>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="启用" placement="top">
<i class="iconfont icon-bofang" v-show="item.Status==2" @click="UpdateStatus(item.Id,item.TemplateType)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="停用" placement="top">
<i class="iconfont icon-zanting1" v-show="item.Status==1" @click="UpdateStatus(item.Id,item.TemplateType)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="修改" placement="top">
<i class="iconfont icon-liuchengsheji" v-show="item.Status==1" @click="goUrl('addFinancialProcess',item.Id,8)"></i>
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="删除" placement="top">
<i class="edit el-icon-delete" v-show="item.Status==1" @click="deletTemplate(item.Id,item.Name)"></i>
</el-tooltip> -->
</div>
</li>
</ul>
<div class="noData" v-if="noData">
{{$t('system.content_noData')}}
</div>
<div>
<el-pagination
background
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
layout="total,prev, pager, next, jumper"
:page-size=msg.pageSize
:total=total>
</el-pagination>
</div>
</div>
</template>
<script>
import myFlowChartModule from "../financial/components/FlowChartModule.vue";
export default {
data(){
return{
sendData:{},
//TemplateList:[],
CTemplateList:[],
FinanceInfoChangeLog:[],
GetCostTypeList:[],
total:0,
currentPage:1,
noData:true,
loading:false,
msg:{
pageIndex:1,
pageSize:6,
RB_BranchId:-1,
Name:'',
CostTypeID:0
}
}
},created(){
let type = this.$route.query.type;
if(this.$route.query.Branch_Id>=0){
this.msg.RB_BranchId = this.$route.query.Branch_Id;
};
},components: {
"my-FlowChartModule": myFlowChartModule
},methods:{
handleCurrentChange(val) {//翻页功能按钮
this.msg.pageIndex = val;
this.getTemplateList();
},
tips(msg,type) {
this.$message({
message: msg,
duration:2000,
type: type
});
},
addTemplate(obj){
obj.RB_BranchId = this.msg.RB_BranchId;
this.apipost('FinancialFlowTemplate_post_Set',obj,res=>{
if(res.data.resultCode==1){
this.$message.success('启用成功!')
this.getTemplateList()
}else{
this.$message.error(res.data.message)
}
},err=>{})
},
deletTemplate(id,text){ //删除
this.$confirm('确定删除'+'“'+text+'”'+'流程吗?删除后不可恢复!', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('FinancialFlowTemplate_post_Remove',{ID:id},res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.getTemplateList()
}else{
this.$message.error(res.data.message)
}
},err=>{})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
});
},
financeinfo_post_GetCostTypeList(){ // 费用类型
this.apipost('financeinfo_post_GetCostTypeList',{Name:'',type:0,DepartIDs:this.DepartIDs},res=>{
if(res.data.resultCode==1){
this.GetCostTypeList = res.data.data;
}else{
}
},err=>{})
},
UpdateStatus(id,type){ //启停用
this.apipost('FinancialFlowTemplate_post_UpdateStatus',{ID:id,TemplateType:type,RB_Branch_id:this.msg.RB_BranchId},res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.getTemplateList()
}else{
this.$message.error(res.data.message)
}
},err=>{})
},
getTemplateList(){
this.loading = true;
let url = 'FinancialFlowTemplate_post_GetPageList'
// if(this.active==0){
// url = 'FinancialFlowTemplate_post_GetTemplateList'
// }
this.apipost(url,this.msg,res=>{
if(res.data.resultCode==1){
this.total = res.data.data.count;
let data = res.data.data.pageData;
data.forEach(x => {
if(x.CoseTypeList==null){
x.CoseTypeListLength = 0
}else{
x.CoseTypeListLength = x.CoseTypeList.length;
}
if(x.SuitableObjectNameList==null){
x.SuitableObjectNameListlength = 0
}else{
x.SuitableObjectNameListlength = x.SuitableObjectNameList.length
}
if(x.Workflow_Condition.AuditList!=null){
// v-if="lc.AuditWay!=1">({{lc.AuditWay=="2"?'会签':'或签'}})
x.Workflow_Condition.AuditList.forEach(y=>{
if(y.AuditWay==1){
y.contentTips = y.AuditDescription
}else{
y.contentTips = y.AuditWay==2?y.AuditDescription+'(会签)':y.AuditDescription+'(或签)'
}
})
}
x.FinanceInfoChangeLog.forEach(y=>{
y.Time = this.$commonUtils.formatMsgTime(y.UpdateDate)
})
});
this.CTemplateList = data;
this.loading = false;
if(data.length>0){
this.noData = false;
}else{
this.noData = true;
}
}else{
this.$message.error(res.data.message);
this.loading = false;
}
},err=>{})
},
resetPageIndex() {
this.msg.pageIndex = 1
this.currentPage = 1
},
gotoSub(path,id,isZ,Branch_Id) {
var tempStr = '/financial/' + path + '?id=' + id + '&isZ=' +isZ;
this.$router.push({
path: tempStr
});
},
// goUrl(path,id,isZ,Branch_Id) {
// this.$router.push({ name: path,query:{"id":id,"isZ":isZ,"blank":'y',tab:"修改流程"} })
// },
},mounted(){
this.getTemplateList();
this.financeinfo_post_GetCostTypeList();
}
}
</script>
<style scoped>
@import "./css/cssReset.css";
.approval_page_layer {
position: fixed;
width: 100%;
left: 0;
top: 0;
z-index: 99;
height: 100%;
background: rgba(0, 0, 0, .2);
}
.approval_person_set {
width: 800px;
height: 100%;
transition: right .3s;
background: #fff;
position: absolute;
top: 0;
right: -800px;
box-shadow: 4px 0px 10px rgba(0, 0, 0, 0.1)
}
.approval_person_set_right {
right: 0;
}
.approval_person_layerContent {
padding-left: 20px;
overflow: hidden;
}
.page_addfp .approval_page_content {
width: 680px;
min-height: auto !important;
overflow: hidden;
padding: 0 20px;
background: #fff;
border-radius: 4px;
}
.approval_back_btn {
margin: 20px 0;
}
.approval_page_title {
height: 14px;
line-height: 14px;
padding-left: 15px;
border-left: 3px solid #E95252;
margin: 20px 0;
}
.approval_person_content {
padding: 20px 30px;
overflow: hidden;
margin-bottom: 0;
}
.approval_person_content>span {
font-size: 12px;
color: #666;
margin-right: 30px;
}
.approval_person_list {
float: left;
width: 550px;
max-height: 400px;
overflow: auto;
margin-bottom: 20px;
}
.approval_person_content span.approval_span_type {
float: left;
width: 120px;
margin-bottom: 20px;
color: #333333;
font-size: 14px;
}
span.approval_person_list_tit {
float: left;
color: #666666;
font-size: 12px;
line-height: 30px;
padding-right: 20px;
}
.approval_person_set .setTitle {
height: 48px;
line-height: 48px;
background: #EDEEF0;
font-size: 16px;
color: #333;
text-indent: 20px;
}
.approval_person_layerContent {
padding-left: 20px;
overflow: hidden;
}
approval_page_title {
height: 14px;
line-height: 14px;
padding-left: 15px;
border-left: 3px solid #E95252;
margin: 20px 0;
}
.approval_layer_info {
padding: 20px 0 0 20px;
}
.normalMember {
margin: 10px 0;
width: 700px;
max-height: 500px;
overflow: auto
}
.normalMember li {
display: inline-block;
margin: 10px;
padding: 5px 10px;
background: #f8f8f8;
border-radius: 4px;
text-align: center;
font-size: 14px;
color: #333;
}
.approval_page_layer_bottom {
position: absolute;
bottom: 20px;
padding-left: 20px;
}
._info_box_top {
padding-left: 20px;
padding-bottom: 20px
}
.approval_layer_info label,
._info_box_top label {
font-size: 14px
}
.approval_process_item_delete {
position: absolute;
right: 2px;
top: -11px;
font-size: 5px;
}
.approval_process_item {
display: inline-block;
margin: 0 5px 10px 0;
cursor: pointer;
}
.approval_process_item b.bnotice {
color: #E95252;
}
.approval_process_item>span {
padding: 0 10px;
min-width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 12px;
background: #e7e6f3;
border-radius: 4px;
display: inline-block;
}
.padding_l88 {
padding-left: 88px
}
.SpecialNodeSelectType {
display: inline-block;
margin-right: 15px;
color: #606266;
}
</style>
<template>
<div class="page_addfp">
<div class="approval_page_layer_none" :class="{approval_page_layer:showlayer}" @click="closeLayer">
<div :class="{approval_person_set:true,approval_person_set_right:isTransition}" @click.stop>
<p class="setTitle">{{$t('fnc.sprshezhi')}}</p>
<div class="approval_person_layerContent">
<div class="approval_page_title">{{$t('fnc.sprleibie')}}</div>
<div class="_info_box _info_box_top">
<label>{{$t('fnc.jdmiaoshu')}}</label>&nbsp;
<el-input v-model="AuditDescription" class="w200" size="mini" :placeholder="$t('tips.qsrmiaoshu')"
maxlength="6"></el-input>
</div>
<div v-show="!xingzhenState" class="_info_box _info_box_top">
<label>{{$t('fnc.jddongzuo')}}</label>&nbsp;
<el-select filterable v-model='GetNodeValue' class="w200" size="mini">
<el-option v-for='item in GetNodeList' :label='item.Name' :value='item.ID' :key='item.ID'
v-if="(radio==1&&item.ID!=2)||(radio==2&&item.ID!=1)">
</el-option>
</el-select>
</div>
<el-row>
<el-col :span="10" style="padding-left: 20px;">
<el-radio-group v-model="approvalType" @change='clearValue'>
<el-radio :label="1">{{$t('fnc.zhuguan')}}</el-radio>
<el-radio :label="2">{{$t('fnc.zdchengyuan')}}</el-radio>
<el-radio :label="3">{{$t('admin.admin_Post')}}</el-radio>
</el-radio-group>
</el-col>
<el-col v-show="!xingzhenState" :span="14" style="font-size:14px;">
<label class="SpecialNodeSelectType">{{$t('fnc.tsjiedian')}}</label>
<el-select filterable v-model='SpecialNodeSelectType' @change='changeSpecialNodeSelectType' class="w200"
size="mini">
<el-option v-for='item in SpecialNodeSelect' :label='item.name' :value='item.id' :key='item.id'>
</el-option>
</el-select>
</el-col>
</el-row>
<div class="approval_layer_info" v-if="approvalType==1">
<div class="_info_box">
<label>{{$t('fnc.fqrende')}}</label>&nbsp;
<el-select filterable v-model='directors' class="w200" size="mini">
<el-option v-for='item in levelList' :label='item.name' :value='item.level' :key='item.level'>
</el-option>
</el-select>
</div>
</div>
<div class="approval_layer_info" v-if="approvalType==2">
<div class="normalMember">
<ul>
<li v-for="item in showMember">{{item.DepartmentName}}</li>
</ul>
</div>
<input type="button" class="normalBtn" @click="getMember(),mySetCheckedKeys(-1)"
:value="$t('fnc.tjchengyuan')" />
<div style="margin: 10px 0;" v-if="showMember.length>1">
<el-radio-group v-model="AuditWay">
<el-radio :label="2">{{$t('fnc.huiquandetail')}}</el-radio>
<el-radio :label="3">{{$t('fnc.huoqiandetail')}}</el-radio>
</el-radio-group>
</div>
</div>
<div class="approval_layer_info" v-if="approvalType==3">
<div class="normalMember">
<ul>
<li v-for="item in showRole">{{item.DepartmentName}}</li>
</ul>
</div>
<input type="button" class="normalBtn" @click="outerVisible1 = true,dialogTitle = $t('fnc.xzgangwei')"
:value="$t('fnc.addgangweo')" />
<div style="margin: 10px 0;">
<el-radio-group v-model="AuditWay">
<el-radio :label="2">{{$t('fnc.huiquandetail')}}</el-radio>
<el-radio :label="3">{{$t('fnc.huoqiandetail')}}</el-radio>
</el-radio-group>
</div>
</div>
<div class="approval_layer_info" v-if="approvalType==4">
<div class="normalMember">
<ul>
<li v-for="item in showMember">{{item.DepartmentName}}</li>
</ul>
</div>
<div style="margin: 10px 0;">
<el-radio-group v-model="AuditWay">
<el-radio :label="2">{{$t('fnc.huiquandetail')}}</el-radio>
<el-radio :label="3">{{$t('fnc.huoqiandetail')}}</el-radio>
</el-radio-group>
</div>
</div>
<div class="approval_layer_info"
v-if="approvalType==5||approvalType==6||approvalType==7||approvalType==8 || approvalType==9||approvalType==10||approvalType==11">
<div style="margin: 10px 0;">
<el-radio-group v-model="AuditWay">
<el-radio :label="2">{{$t('fnc.huiquandetail')}}</el-radio>
<el-radio :label="3">{{$t('fnc.huoqiandetail')}}</el-radio>
</el-radio-group>
</div>
</div>
</div>
<div class="approval_page_layer_bottom">
<input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')" @click="closeLayer" /> &nbsp;&nbsp;
<input type="button" class="normalBtn" v-if='addBtn' :value="$t('pub.sureBtn')" @click="addNode" />
<input type="button" class="normalBtn" v-if='!addBtn' :value="$t('fnc.xgjiedian')" @click="saveUpdateNode" />
</div>
</div>
</div>
<div v-loading="loading">
<input type="button" class="hollowFixedBtn approval_back_btn" :value="$t('pub.returnBack')"
@click="goUrl('FProcessManagement')" />
<el-form class="_add_box clearfix" :model="addMsg" ref="addMsg" :rules="rules" label-width="100px">
<div class="approval_page_title">{{$t('fnc.jcxinxi')}}</div>
<el-form-item :label="$t('fnc.lcmingcheng')" prop="Name">
<el-input v-model="addMsg.Name" class="w200" size="small" maxlength="10"></el-input>
</el-form-item>
<el-form-item :label="$t('fnc.sygongsi')">
<el-select filterable multiple v-model='BranchIdS' class="w200" size="small" @change="disabledOption">
<el-option :label='$t("fnc.jttongyong")' :value='-1' :key='-1'>
</el-option>
<el-option v-for='item in CompanyList' :label='item.BName' :value='item.Id' :key='item.Id'
:disabled="item.disabled">
</el-option>
</el-select>
</el-form-item>
<el-form-item v-if="xingzhenState" label="审批类型">
<el-select filterable v-model='addMsg.PropertyType' size="small" class="w200">
<el-option v-for='item in PropertyTypeList' :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-select>
</el-form-item>
<!-- 判断行政流程修改还是 -->
<div v-show="!xingzhenState">
<el-form-item :label="$t('fnc.lcleixing')">
<el-radio v-model="radio" v-if="addMsg.TemplateType!=8" disabled="disabled" :label="1">
{{$t('restaurant.res_income')}}</el-radio>
<el-radio v-model="radio" v-else @change="getCostTypeList(1),CostIdS=[],accListShow=true" :label="1">
{{$t('restaurant.res_income')}}</el-radio>
<el-radio v-model="radio" v-if="addMsg.TemplateType!=8" disabled="disabled" :label="2">
{{$t('restaurant.res_outcome')}}</el-radio>
<el-radio v-model="radio" v-else @change="getCostTypeList(2),CostIdS=[],accListMsg=[],accListShow=false"
:label="2">{{$t('restaurant.res_outcome')}}</el-radio>
<el-radio v-model="radio" v-if="addMsg.TemplateType!=8" disabled="disabled" :label="7">
{{$t('fnc.guazhang')}}</el-radio>
<el-radio v-model="radio" v-else @change="getCostTypeList(2),CostIdS=[],accListMsg=[],accListShow=false"
:label="7">{{$t('fnc.guazhang')}}</el-radio>
<el-radio v-model="radio" v-if="addMsg.TemplateType!=8" disabled="disabled" :label="8">折让</el-radio>
<el-radio v-model="radio" v-else @change="getCostTypeList(2),CostIdS=[],accListMsg=[],accListShow=false"
:label="8">折让</el-radio>
</el-form-item>
<el-form-item :label="$t('fnc.scfujian')">
<el-radio v-model="addMsg.IsUploadPic" :label="0">{{$t('fnc.buqiyong')}}</el-radio>
<el-radio v-model="addMsg.IsUploadPic" :label="1">{{$t('fnc.qiyong')}}</el-radio>
</el-form-item>
<el-form-item :label="$t('ios.sfxianshi')">
<el-radio @change="RadioShow" v-model="addMsg.IsShow" :label="1">{{$t('pub.yes')}}</el-radio>
<el-radio @change="RadioShow" v-model="addMsg.IsShow" :label="2">{{$t('pub.no')}}</el-radio>
</el-form-item>
<el-form-item v-show="addMsg.IsShow==2" label="可显示部门">
<el-select filterable multiple v-model='addMsg.ShowDepartmentList' class="w200"
style="max-height:100px;overflow:hidden" size="small">
<el-option v-for='item in DepartmentList' :label='item.DepartmentName' :value='item.DepartmentID'
:key='item.DepartmentID'>
</el-option>
</el-select>
</el-form-item>
<el-form-item v-show="addMsg.IsShow==2" label="可显示人">
<el-select filterable multiple v-model='addMsg.ShowEmployeeList' class="w200"
style="max-height:100px;overflow:hidden" size="small">
<el-option v-for='item in EmployeeList' :label='item.EmName' :value='item.EmployeeId'
:key='item.EmployeeId'>
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('fnc.syfeiyong')" v-if="addMsg.TemplateType==8" size="small" class="_treeselect">
<treeselect class="w230" v-model="CostIdS" value-consists-of="LEAF_PRIORITY"
:placeholder="$t('pub.pleaseSel')" :multiple="true" :options="CostTypeList" noChildrenText=''
:normalizer="normalizer" />
</el-form-item>
<el-form-item :label="$t('fnc.syzhanghu')" v-if="accListShow">
<el-checkbox :indeterminate="isIndeterminate" v-model="AccCheckAll" @change="handleCheckAllChangeAcc">
{{$t('system.table_chekAll')}}</el-checkbox>
<div style="margin: 15px 0;"></div>
<el-checkbox-group v-model="accListMsg" @change="handleCheckedCitiesChangeAcc" text-color="#409EFF"
fill="#409EFF">
<el-checkbox :value="1" :label="1" :key="1">{{$t('fnc.yinhang')}}</el-checkbox>
<el-checkbox :value="2" :label="2" :key="2">{{$t('fnc.xianjin')}}</el-checkbox>
<el-checkbox :value="3" :label="3" :key="3">{{$t('fnc.pingtai')}}</el-checkbox>
<el-checkbox :value="4" :label="4" :key="4">{{$t('fnc.zjinchi')}}</el-checkbox>
</el-checkbox-group>
</el-form-item>
</div>
<el-form-item label="排序">
<el-input v-model="addMsg.Sort" class="w250" size="small" maxlength="60"></el-input>
</el-form-item>
<el-form-item :label="$t('fnc.mbmiaoshu')">
<el-input v-model="addMsg.DescribeInfo" class="w450" size="small" maxlength="100"></el-input>
</el-form-item>
<div class="approval_page_title">{{$t('fnc.lcshezhi')}}</div>
<div class="approval_page_content">
<div class="approval_person_content">
<span class="approval_span_type">{{$t('fnc.mrspliucheng')}}</span>
<span style="float:right">
<el-button @click="Auditshow=true,EditAudit()" style="padding:4px" type="primary" icon="el-icon-edit"
circle></el-button>
</span>
<div class="approval_person_list fl">
<span class="approval_person_list_tit">{{$t('fnc.mrspiren')}}</span>
<div class="padding_l88">
<div class="approval_process_item" draggable="true" v-for="(item,index) in myAuditList"
@click="getItemValue(item,index),AuditDescription = item.AuditDescription">
<span style="position: relative;" @mouseenter="itemIndex=index" @mouseleave="itemIndex='-1'">
<i class="iconfont icon-user11"></i>
{{item.AuditDescription}}&nbsp;
<b class="bnotice"
v-if="item.AuditWay!=1">({{item.AuditWay=="2"?$t('fnc.huiqian'):$t('fnc.huoqian')}})</b>
<em v-if='index==itemIndex' class="iconfont icon-guanbi approval_process_item_delete"
@click.stop='deleteItem(item.Sort)'></em>
</span>
<i class="iconfont icon-jiantouyou"></i>
</div>
<input type="button" class="hollowFixedBtn" @click="addAppPerson" :value="$t('fnc.tianjia')" />
</div>
</div>
<div class="approval_person_list fl">
<span class="approval_person_list_tit">{{$t('fnc.mrcsongren')}}</span>
<div class="padding_l88">
<div class="approval_process_item" draggable="true" v-for="(item,index) in myAuditUserList">
<span style="position: relative;" @mouseenter="itemIndex1=index" @mouseleave="itemIndex1='-1'">
<i class="iconfont icon-user11"></i>
{{item.emName}}&nbsp;
<em v-if='index==itemIndex1' class="iconfont icon-guanbi approval_process_item_delete"
@click.stop='deleteUser(item.EmployeeId)'></em>
</span>
<i class="iconfont icon-jiantouyou"></i>
</div>
<input type="button" class="hollowFixedBtn" @click="addAuditUser" :value="$t('fnc.tianjia')" />
</div>
</div>
</div>
</div>
</el-form>
<div style="margin: 30px 0;">
<input type="button" :value="$t('pub.cancelBtn')" class="hollowFixedBtn" @click="goUrl('FProcessManagement')" />
<input type="button" :value="$t('pub.saveBtn')" class="normalBtn" @click="saveApproval" />
</div>
</div>
<el-dialog custom-class='w700' :title="dialogTitle" :visible.sync="outerVisible" center>
<div class="fl" style="width: 300px; margin: 0 20px;">
<p style="margin: 0 0 10px 0;">{{$t('fnc.xuanze')}}<el-input class='w200'
:placeholder="$t('tips.srgjzjxguolv')" v-model="filterText">
</el-input>
</p>
<el-tree class='ApprovalProcessBg' :data="memberList" show-checkbox :filter-node-method="filterNode" ref="tree"
:props="defaultProps" :render-after-expand="false" node-key="DepartmentId" @check-change="handleNodeChange">
</el-tree>
</div>
<div class="fl">
<p style="margin: 0 0 20px 0;">{{$t('fnc.yixuan')}}</p>
<div class="Approval_yxList">
<li v-for="item in showMember">{{item.DepartmentName}}
<i @click="mySetCheckedKeys(item.DepartmentId)" class="el-icon-circle-close showMemberIcon"></i>
</li>
</div>
</div>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" type="primary" @click="outerVisible = false">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
<el-dialog custom-class='w700' :title="dialogTitle" :visible.sync="outerVisible1" center>
<div class="fl" style="width: 300px; margin: 0 20px;">
<p style="margin: 0 0 10px 0;">{{$t('fnc.xzgangwei')}}<el-input class='w200'
:placeholder="$t('tips.srgjzjxguolv')" v-model="filterText1">
</el-input>
</p>
<el-tree class='ApprovalProcessBg' :data="roleList" ref="treeRole" show-checkbox
:filter-node-method="filterNode1" :props="defaultProps1" @check-change="checkedRole"
:default-checked-keys="defaultCheckedArr" node-key="PostId">
</el-tree>
</div>
<div class="fl">
<p style="margin: 0 0 20px 0;">{{$t('fnc.yixuangangwei')}}</p>
<div class="Approval_yxList">
<li v-for="item in showRole">{{item.DepartmentName}}
<i @click="deleteRole()" class="el-icon-circle-close showMemberIcon"></i>
</li>
</div>
</div>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible1= false">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" type="primary" @click="outerVisible1 = false">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
<el-dialog custom-class='w700' :title="dialogTitle" :visible.sync="outerVisible2" center>
<div class="fl" style="width: 300px; margin: 0 20px;">
<p style="margin: 0 0 10px 0;">{{$t('fnc.xzcsongren')}}<el-input class='w200'
:placeholder="$t('tips.srgjzjxguolv')" v-model="filterText2">
</el-input>
</p>
<el-tree class='ApprovalProcessBg' :data="userList" show-checkbox :filter-node-method="filterNode2"
ref="treeUser" :props="defaultProps2" :render-after-expand="false" node-key="DepartmentId"
@check-change="handleNodeChange1">
</el-tree>
</div>
<div class="fl">
<p style="margin: 0 0 20px 0;">{{$t('fnc.yixuan')}}</p>
<div class="Approval_yxList">
<li v-for="item in myAuditUserList1">{{item.emName}}
<i @click="deleteUser(item.EmployeeId)" class="el-icon-circle-close showMemberIcon"></i>
</li>
</div>
</div>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible2 = false">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" type="primary" @click="saveAuditUser">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
<el-dialog title="修改审批人" :visible.sync="Auditshow" width="400px">
<div>
<ul>
<li v-for="(item,index) in myAuditList" :key="index+500" style="margin-bottom:10px">
<span style="display:inline-block;width:90px">{{item.AuditDescription}}</span>
<el-input v-model.number="item.Sort" size="mini" style="width:200px"></el-input>
</li>
</ul>
</div>
<span slot="footer" class="dialog-footer">
<el-button size="mini" @click="dialogVisible = false">取 消</el-button>
<el-button size="mini" type="danger" @click="AuditSort">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
export default {
components: {
Treeselect
},
data() {
return {
PropertyTypeList: [],
xingzhenState: false,
DepartmentList: [],
EmployeeList: [],
Auditshow: false,
accListShow: true,
TemplateId: 0,
radio: 1,
addMsg: {
Id: 0,
Name: '',
DescribeInfo: '',
Sort: '0',
TemplateType: '8',
TempLateClass: '',
FinancialInstitutions: [],
RB_BranchId: -1,
IsUploadPic: 0,
Workflow_Condition: {
Id: 0,
AuditList: [],
AuditUserList: [],
},
IsShow: 1,
ShowEmployeeList: [],
ShowDepartmentList: [],
PropertyType: '',
},
AuditUserList: {
EmName: '',
EmployeeId: '',
Sort: ''
},
getCompanyMsg: {
RB_Group_Id: '0',
Status: '0',
},
getPostMsg: {
RB_Group_Id: '0'
},
i: 0,
SpecialNodeSelect: [{
id: 4,
name: this.$t('fnc.kjiedian')
},
{
id: 5,
name: this.$t('fnc.cnchuangkou')
},
{
id: 6,
name: this.$t('fnc.kjchuangkou')
},
{
id: 7,
name: this.$t('fnc.xiankong')
},
{
id: 8,
name: this.$t('fnc.jzchuna')
},
{
id: 9,
name: this.$t('fnc.skchuna')
},
{
id: 10,
name: "分公司OP"
},
{
id: 11,
name: "总部线控"
},
],
accListMsg: [],
SpecialNodeSelectType: '',
AuditDescription: '',
AuditWay: 2,
RoleOrInitiator: '',
BranchIdS: [],
CostIdS: [],
CompanyList: [],
CostTypeList: [],
myAuditList: [],
levelList: [],
showMember: [],
memberList: [],
memberSetCheckedKeys: [],
memberSetCheckedUserKeys: [],
myAuditUserList: [],
showRole: [],
roleList: [],
roleSetCheckedKeys: [],
sysUserKeys: [],
userList: [],
myAuditUserList1: [],
getMsg: [],
GetNodeList: [],
showlayer: false,
isTransition: false,
addBtn: true,
outerVisible: false,
outerVisible1: false,
outerVisible2: false,
loading: false,
dialogTitle: '',
approvalType: 1,
itemIndex: -1,
itemIndex1: -1,
GetNodeValue: 0,
updateItemIndex: -1, //修改节点
directors: '', // 直接主管等级
filterText: "",
filterText1: "",
filterText2: "",
DepartIDs: '0',
defaultCheckedArr: [],
defaultProps: {
children: 'ChildList',
label: 'DepartmentName',
},
defaultProps1: {
// children: 'ChildList',
label: 'PostName',
disabled: "Disabled"
},
defaultProps2: {
children: 'ChildList',
label: 'DepartmentName',
},
rules: {
Name: [{
required: true,
message: this.$t('rule.qsrlcmingcheng'),
trigger: 'blur'
}],
TypeId: [{
required: true,
message: this.$t('rule.qxzzhleixing'),
trigger: 'change'
}],
},
tongyong: false,
normalizer(node) {
return {
id: node.ID,
label: node.Name,
children: node.ChildList,
}
},
WindowList: [],
WindowID: '',
AccCheckAll: false,
AccList: [{
id: 1,
lab: this.$t('fnc.yinhang')
}, {
id: 2,
lab: this.$t('fnc.xianjin')
}, {
id: 3,
lab: this.$t('fnc.pingtai')
}, {
id: 4,
lab: this.$t('fnc.zjinchi')
}],
isIndeterminate: true,
}
},
watch: {
filterText(val) {
this.$refs.tree.filter(val);
},
filterText1(val) {
this.$refs.treeRole.filter(val);
},
filterText2(val) {
this.$refs.treeUser.filter(val);
}
},
created() {
let userInfo = this.getLocalStorage();
this.TemplateId = this.$route.query.id;
this.getCompanyMsg.RB_Group_Id = userInfo.RB_Group_id; //集团ID
this.getPostMsg.RB_Group_Id = userInfo.RB_Group_id;
this.addMsg.TemplateType = this.$route.query.isZ;
this.DepartIDs = userInfo.RB_Department_Id;
if (this.$route.query.id === 0) {
if (this.$route.query.Branch_Id >= 0) {
this.BranchIdS.push(this.$route.query.Branch_Id);
this.addMsg.RB_BranchId = this.$route.query.Branch_Id;
};
}
},
mounted() {
if (this.$route.query.xingzhen) {
this.xingzhenState = true;
this.addMsg.TemplateSorce = 2;
this.CostIdS.push('0')
// this.addMsg.PropertyType="";
this.getPropertyType();
}
this.getCompanyList();
this.getMaxDepartmentTierList();
if (this.TemplateId != 0) {
this.getList();
} else {
this.getCostTypeList(1)
}
this.getFinancialFlowTemplate_post_GetNodeList();
this.getRole()
this.getEmployeeList();
this.getDepartment();
},
methods: {
getPropertyType() {
this.apipost(
"FinancialFlowTemplate_post_GetPropertyTypeList", {},
res => {
if (res.data.resultCode == 1) {
this.PropertyTypeList = res.data.data;
}
},
err => {}
);
},
//根据多公司获取部门
getDepartment() {
let msg = {
RB_Group_Id: '0',
RB_Branch_Id: '-1',
Status: '0',
};
this.apipost(
"department_get_GetListByBranchIds",
msg,
res => {
if (res.data.resultCode == 1) {
this.DepartmentList = res.data.data;
}
},
err => {}
);
},
RadioShow(val) {
if (val == 1) {
this.addMsg.ShowEmployeeList = [];
this.addMsg.ShowDepartmentList = [];
}
},
getEmployeeList() {
this.apipost(
'admin_get_EmployeeGetList', {},
res => {
if (res.data.resultCode == 1) {
this.EmployeeList = res.data.data
}
},
err => {}
)
},
AuditSort() {
let sum = 0;
let sortnum = 0;
for (let i = 0; i < this.myAuditList.length; i++) {
let id = this.myAuditList[i].Sort;
sum += i + 1;
sortnum += this.myAuditList[i].Sort;
}
if (sum != sortnum) {
this.Error("请输入连续的排序!")
return;
}
this.myAuditList.sort(
this.$commonUtils.createComprisonFunction("Sort")
);
this.Auditshow = false;
},
EditAudit() {
},
handleCheckAllChangeAcc(val) {
this.accListMsg = val ? [1, 2, 3, 4] : [];
this.isIndeterminate = false;
},
handleCheckedCitiesChangeAcc(value) {
let checkedCount = value.length;
this.AccCheckAll = checkedCount === this.AccList.length;
this.isIndeterminate = checkedCount > 0 && checkedCount < this.AccList.length;
},
changeSpecialNodeSelectType(i) { // 设置特殊节点值
this.approvalType = i;
},
getFinancialFlowTemplate_post_GetNodeList() {
this.apipost('FinancialFlowTemplate_post_GetNodeList', {}, res => {
if (res.data.resultCode == 1) {
this.GetNodeList = res.data.data
}
}, err => {})
},
getList() {
this.loading = true
this.apipost('FinancialFlowTemplate_post_Get', {
ID: this.TemplateId,
TemplateType: this.addMsg.TemplateType
}, res => {
if (res.data.resultCode == 1) {
this.loading = false;
let data = res.data.data;
this.getMsg = data;
this.addMsg.Id = data.Id;
this.addMsg.Name = data.Name;
this.addMsg.DescribeInfo = data.DescribeInfo;
this.addMsg.Sort = data.Sort;
this.addMsg.TempLateClass = data.TempLateClass;
this.addMsg.IsUploadPic = data.IsUploadPic;
this.addMsg.IsShow = data.IsShow;
this.addMsg.ShowEmployeeList = data.ShowEmployeeList;
this.addMsg.ShowDepartmentList = data.ShowDepartmentList;
this.addMsg.PropertyType = data.PropertyType;
if (data.list && data.list[0] !== -1) {
this.accListMsg = data.list;
}
if (data.TempLateClass != null) {
this.radio = data.TempLateClass;
this.getCostTypeList(data.TempLateClass.toString())
}
if (data.Workflow_Condition.AuditList) {
data.Workflow_Condition.AuditList.forEach(x => {
if (x.AuditType == 1) {
x.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
}
if (x.AuditType == 3) {
x.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
}
})
}
if (data.FinanceFlowConnectType == 3) {
this.BranchIdS.push(-1);
} else {
data.SuitableObjectNameList.forEach(x => {
this.BranchIdS.push(x);
})
}
let CostIdS = data.CoseTypeList.length == 0 ? [] : JSON.parse(JSON.stringify(data.CoseTypeList));
let arr = []
CostIdS.forEach(x => {
arr.push(parseInt(x))
})
this.CostIdS = arr;
this.myAuditList = data.Workflow_Condition.AuditList == null ? [] : data.Workflow_Condition.AuditList
this.myAuditList.forEach((x, index) => {
x.Sort = index + 1
if (x.AuditUserList != null && x.AuditType == 2) {
x.Name = x.AuditDescription
}
})
this.myAuditUserList = data.Workflow_Condition.AuditUserList == null ? [] : data.Workflow_Condition
.AuditUserList
this.myAuditUserList1 = JSON.parse(JSON.stringify(this.myAuditUserList))
this.myAuditUserList1.forEach(item => {
this.sysUserKeys.push(item.EmployeeId)
})
if (this.radio !== 1) {
this.accListShow = false;
}
this.disabledOption();
} else {}
}, error => {})
},
disabledOption() { // 选择公司 如果选择通用则禁用其它选项
if (this.BranchIdS.length == 0) {
this.CompanyList.forEach(y => {
y.disabled = false
})
this.tongyong = false
} else {
this.BranchIdS.forEach(x => {
if (x == -1) {
this.BranchIdS = []
this.BranchIdS.push(-1)
this.CompanyList.forEach(y => {
y.disabled = true
})
this.tongyong = true
}
})
}
},
disabledOption2() { // 选择费用类型 如果选择通用则禁用其它选项
if (this.CostIdS.length == 0) {
this.CostTypeList.forEach(y => {
y.disabled = false
})
} else {
this.CostIdS.forEach(x => {
if (x == '0') {
this.CostIdS = []
this.CostIdS.push('0')
this.CostTypeList.forEach(y => {
y.disabled = true
})
}
})
}
},
saveApproval() { // 保存数据
if (this.xingzhenState) {
if (!this.addMsg.PropertyType || this.addMsg.PropertyType == '') {
this.Error("请选择审批类型!");
return;
}
}
if (this.accListMsg.length === 0) {
this.addMsg.list = [-1]
} else {
this.addMsg.list = this.accListMsg
}
if (this.BranchIdS.length != 0) { //适用公司
this.BranchIdS.forEach(x => {
if (x == -1) {
let FinancialInstitutions = {
ID: 0,
SuitableObjectId: '',
Type: ''
}
FinancialInstitutions.SuitableObjectId = 0
FinancialInstitutions.Type = 3
this.addMsg.FinancialInstitutions.push(FinancialInstitutions)
} else {
let FinancialInstitutions = {
ID: 0,
SuitableObjectId: '',
Type: ''
}
FinancialInstitutions.Type = 1
FinancialInstitutions.SuitableObjectId = x
this.addMsg.FinancialInstitutions.push(FinancialInstitutions)
}
})
} else {
this.$message.error(this.$t('tips.qxzsygongsi'))
return
}
if (this.CostIdS.length != 0) { //适用费用
this.CostIdS.forEach(x => {
let FinancialInstitutions = {
ID: 0,
SuitableObjectId: x,
Type: 2
}
this.addMsg.FinancialInstitutions.push(FinancialInstitutions)
})
} else {
this.$message.error(this.$t('tips.qxzsyfeiyong'))
return
}
if (this.myAuditList.length != 0) {
this.addMsg.Workflow_Condition.AuditList = this.myAuditList
} else {
this.$message.error(this.$t('tips.qxzspiren'))
return
}
if (this.myAuditUserList.length != 0) {
this.addMsg.Workflow_Condition.AuditUserList = this.myAuditUserList
}
if (this.TemplateId != 0) {
this.addMsg.Workflow_Condition.Id = this.getMsg.Workflow_Condition.Id
}
if (this.radio != '') {
this.addMsg.TempLateClass = parseInt(this.radio)
} else {
this.$message.error(this.$t('tips.qxzliucehng'))
return
}
this.loading = true;
this.apipost('FinancialFlowTemplate_post_Set', this.addMsg, res => {
if (res.data.resultCode == 1) {
this.loading = false;
this.$message.success(this.$t('tips.czchenggong'))
if (this.xingzhenState) {
this.$router.push({
name: 'XProcessmanagement',
query: {
"type": this.addMsg.TemplateType,
'Branch_Id': this.$route.query.Branch_Id
}
})
} else {
this.$router.push({
name: 'FProcessManagement',
query: {
"type": this.addMsg.TemplateType,
'Branch_Id': this.$route.query.Branch_Id
}
})
}
} else {
this.loading = false;
if (this.xingzhenState) {
this.addMsg.TemplateSorce = 2;
}
this.addMsg = {
PropertyType: '',
Id: this.addMsg.Id,
Name: this.addMsg.Name,
DescribeInfo: this.addMsg.DescribeInfo,
Sort: this.addMsg.Sort,
TemplateType: this.addMsg.TemplateType,
TempLateClass: this.radio,
FinancialInstitutions: [],
RB_BranchId: this.$route.query.Branch_Id,
Workflow_Condition: {
Id: this.addMsg.Workflow_Condition.Id,
AuditList: [],
AuditUserList: [],
}
}
this.$message.error(res.data.message)
return
}
}, err => {})
},
deleteUser(id) { // 删除人员
if (this.memberSetCheckedUserKeys.findIndex(item => item === id) != -1) {
this.memberSetCheckedUserKeys.splice(this.memberSetCheckedUserKeys.findIndex(item => item === id), 1)
}
if (this.myAuditUserList.findIndex(item => item.EmployeeId === id) != -1) {
this.myAuditUserList.splice(this.myAuditUserList.findIndex(item => item.EmployeeId === id), 1)
}
if (this.myAuditUserList1.findIndex(item => item.EmployeeId === id) != -1) {
this.myAuditUserList1.splice(this.myAuditUserList1.findIndex(item => item.EmployeeId === id), 1)
}
},
saveAuditUser() { // 抄送人保存
if (this.myAuditUserList1.length <= 10) {
this.myAuditUserList = JSON.parse(JSON.stringify(this.myAuditUserList1))
this.outerVisible2 = false
} else {
this.$message.error(this.$t('tips.rsbncgtr'))
return false;
}
},
handleNodeChange1(data, checked) { //抄送人操作选中
data.IsCheck = checked;
if (data.Type == 2 && data.IsCheck) { //是员工且选中
let isExsit = false
this.myAuditUserList1.forEach(x => {
if (x.EmployeeId == data.DepartmentId) {
isExsit = true
return false
}
})
if (!isExsit) {
this.myAuditUserList1.push({
emName: data.DepartmentName,
EmployeeId: data.DepartmentId,
Sort: this.myAuditUserList1.length + 1
})
this.memberSetCheckedUserKeys.push(data.DepartmentId)
}
} else if (data.Type == 2 && !data.IsCheck) {
if (this.myAuditUserList1.findIndex(item => item.EmployeeId === data.DepartmentId) != -1) {
this.myAuditUserList1.splice(this.myAuditUserList1.findIndex(item => item.EmployeeId === data.DepartmentId),
1)
this.memberSetCheckedUserKeys.splice(this.memberSetCheckedUserKeys.findIndex(item => item === data
.DepartmentId), 1)
if (this.myAuditUserList1.findIndex(item => item.EmployeeId === data.ParentId) != -1) {
this.memberSetCheckedUserKeys.splice(this.memberSetCheckedUserKeys.findIndex(item => item === data
.ParentId), 1)
}
}
}
if (data.Type != 2 && data.IsCheck) {
if (this.memberSetCheckedUserKeys.findIndex(item => item === data.DepartmentId) == -1) {
this.memberSetCheckedUserKeys.push(data.DepartmentId)
}
} else if (data.Type == 2 && !data.IsCheck) {
if (this.memberSetCheckedUserKeys.findIndex(item => item === data.DepartmentId) != -1) {
this.memberSetCheckedUserKeys.splice(this.memberSetCheckedUserKeys.findIndex(item => item === data
.DepartmentId), 1)
if (this.myAuditUserList1.findIndex(item => item.EmployeeId === data.ParentId) != -1) {
this.memberSetCheckedUserKeys.splice(this.memberSetCheckedUserKeys.findIndex(item => item === data
.ParentId), 1)
}
}
}
},
addAuditUser() { // 抄送人
let _arr = this.sysUserKeys.concat(this.memberSetCheckedUserKeys)
this.dialogTitle = this.$t('fnc.xzrenyuan');
this.outerVisible2 = true;
let _this = this;
this.apipost('WorkFlow_get_GetTempLateDepartMentEmployee', {}, res => {
if (res.data.resultCode == 1) {
this.userList = res.data.data
}
}, err => {})
},
checkedRole(data, checked) { // 岗位选择+
if (data.DepartmentId == 0) return
if (checked) {
this.roleSetCheckedKeys.push(data.PostId)
this.$refs.treeRole.setCheckedKeys([data.PostId]);
this.showRole = [];
this.showRole.push({
DepartmentName: data.PostName,
Id: data.PostId
})
} else {
if (this.roleSetCheckedKeys.length == 1) {
this.roleSetCheckedKeys.push(data.PostId)
} else {
this.roleSetCheckedKeys = this.roleSetCheckedKeys.slice(this.roleSetCheckedKeys.length - 1)
}
}
},
deleteRole() { // 删除已选岗位
this.showRole = []
this.roleSetCheckedKeys.splice(this.roleSetCheckedKeys.findIndex(item => item), 1)
this.$refs.treeRole.setCheckedKeys(this.roleSetCheckedKeys);
},
getRole() { // 选择岗位
this.apipost('admin_get_PostGetList', {
RB_Group_Id: this.getPostMsg.RB_Group_Id
}, res => {
let data = res.data.data;
data.forEach(x => {
x.Disabled = false;
})
this.roleList = data;
}, err => {})
},
saveUpdateNode() {
let AuditList = {};
let type = this.approvalType
if (this.AuditDescription == '') {
return this.$message.error(this.$t('tips.qtxjdmiaoshu'))
}
if (type == 1) {
AuditList.AuditType = type;
AuditList.AuditWay = 1;
AuditList.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
AuditList.Sort = this.myAuditList.length + 1;
AuditList.RoleOrInitiator = this.directors;
AuditList.SpecialNode = this.GetNodeValue;
if (this.directors == '') {
return this.$message.error(this.$t('tips.qxzbmzgjibie'))
}
this.levelList.forEach(x => {
if (x.level == this.directors) {
AuditList.Name = this.AuditDescription
AuditList.AuditDescription = this.AuditDescription
} else return
})
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 2) { //指定成员
let Au = this.showMember;
let Auu = [];
Au.forEach((item, index) => {
Auu.push({
EmployeeId: item.DepartmentId,
emName: item.DepartmentName,
Sort: index + 1
})
})
AuditList.AuditWay = this.AuditWay;
AuditList.AuditDescription = this.AuditDescription;
AuditList.Name = this.AuditDescription;
AuditList.AuditType = 2;
AuditList.RoleOrInitiator = '';
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditUserList = Auu;
AuditList.SpecialNode = this.GetNodeValue;
if (Auu.length == 0) {
this.$message.error(this.$t('tips.cybnweikong'))
return
} else if (Auu.length > 10) {
this.$message.error(this.$t('tips.rsbncgtr'))
return
}
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 3) { //岗位
AuditList.AuditType = 3;
AuditList.AuditWay = this.AuditWay;
AuditList.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
AuditList.Sort = this.myAuditList.length + 1;
AuditList.SpecialNode = this.GetNodeValue;
if (this.showRole.length == 0) {
this.$message.error(this.$t('tips.qxzgangwei'))
return
} else {
AuditList.RoleOrInitiator = this.showRole[0].PostId ? this.showRole[0].PostId : this.showRole[0].Id;
AuditList.Name = this.showRole[0].DepartmentName;
AuditList.AduitName = this.showRole[0].DepartmentName;
AuditList.AuditDescription = this.AuditDescription;
}
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 4) { //空节点
AuditList.AuditType = 4;
AuditList.AuditWay = this.AuditWay;
AuditList.AuditUserList = [{
EmployeeId: '0',
Sort: ''
}];
AuditList.Sort = this.myAuditList.length + 1;
AuditList.SpecialNode = this.GetNodeValue;
AuditList.RoleOrInitiator = 0;
AuditList.Name = '';
AuditList.AduitName = '';
AuditList.AuditDescription = this.AuditDescription;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 5) { //出纳
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 5;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 6) { //会计
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 6;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 7) { //线控(当团OP所在部门的负责人)
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 7;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 10) { //分公司op(当团OP所在部门的负责人)
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 10;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 11) { //总部线控
AuditList.AuditType = 11;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 8) { //记账负责人
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 8;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
if (type == 9) { //收款出纳
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 9;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList[this.updateItemIndex] = AuditList;
}
this.closeLayer()
},
getItemValue(obj, index) {
this.SpecialNode = obj.SpecialNode
this.addBtn = false;
this.updateItemIndex = index;
this.updateItem = obj;
this.showLayer();
this.approvalType = obj.AuditType;
this.GetNodeValue = obj.SpecialNode;
if (obj.AuditType == 1) {
this.directors = obj.RoleOrInitiator
}
if (obj.AuditType == 2) {
this.showMember = [];
this.memberSetCheckedKeys = [];
this.AuditWay = obj.AuditWay;
obj.AuditUserList.forEach((item, index) => {
this.showMember.push({
DepartmentName: item.EmName ? item.EmName : item.emName,
DepartmentId: item.EmployeeId
})
this.memberSetCheckedKeys.push(item.EmployeeId)
})
}
if (obj.AuditType == 3) {
this.AuditWay = obj.AuditWay;
this.showRole = [];
this.showRole.push({
DepartmentName: obj.AduitName,
Id: obj.RoleOrInitiator
})
this.defaultCheckedArr.push(obj.RoleOrInitiator)
}
if (obj.AuditType == 4) {
this.AuditWay = obj.AuditWay;
this.showRole = [];
this.showRole.push({
DepartmentName: obj.AduitName,
Id: obj.RoleOrInitiator
})
this.SpecialNodeSelectType = obj.AuditType;
}
if (obj.AuditType == 5 || obj.AuditType == 6 || obj.AuditType == 7 || obj.AuditType == 8 || obj.AuditType ==
9 || obj.AuditType == 10 || obj.AuditType == 11) {
this.AuditWay = obj.AuditWay;
this.WindowID = obj.RoleOrInitiator;
this.SpecialNodeSelectType = obj.AuditType;
}
},
handleNodeChange(data, checked) {
data.IsCheck = checked;
if (data.Type == 2 && data.IsCheck) { //是员工且选中
let isExsit = false
this.showMember.forEach(x => {
if (x.DepartmentId == data.DepartmentId) {
isExsit = true
return false
}
})
if (!isExsit) {
this.showMember.push({
DepartmentName: data.DepartmentName,
DepartmentId: data.DepartmentId
})
if (data.DepartmentId != 0)
this.memberSetCheckedKeys.push(data.DepartmentId)
}
} else if (data.Type == 2 && !data.IsCheck) {
if (this.showMember.findIndex(item => item.DepartmentId === data.DepartmentId) != -1) {
this.showMember.splice(this.showMember.findIndex(item => item.DepartmentId === data.DepartmentId), 1)
this.memberSetCheckedKeys.splice(this.memberSetCheckedKeys.findIndex(item => item === data.DepartmentId), 1)
if (this.showMember.findIndex(item => item.DepartmentId === data.ParentId) != -1) {
this.memberSetCheckedKeys.splice(this.memberSetCheckedKeys.findIndex(item => item === data.ParentId), 1)
}
}
}
if (data.Type != 2 && data.IsCheck) {
if (this.memberSetCheckedKeys.findIndex(item => item === data.DepartmentId) == -1) {
if (data.DepartmentId != 0)
this.memberSetCheckedKeys.push(data.DepartmentId)
}
} else if (data.Type == 2 && !data.IsCheck) {
if (this.memberSetCheckedKeys.findIndex(item => item === data.DepartmentId) != -1) {
this.memberSetCheckedKeys.splice(this.memberSetCheckedKeys.findIndex(item => item === data.DepartmentId), 1)
if (this.showMember.findIndex(item => item.DepartmentId === data.ParentId) != -1) {
this.memberSetCheckedKeys.splice(this.memberSetCheckedKeys.findIndex(item => item === data.ParentId), 1)
}
}
}
},
mySetCheckedKeys(id) {
if (this.memberSetCheckedKeys.length == 0)
return
if (id == -1) {
this.$refs.tree.setCheckedKeys(this.memberSetCheckedKeys)
return
}
this.showMember.splice(this.showMember.findIndex(item => item.DepartmentId === id), 1)
this.memberSetCheckedKeys.splice(this.memberSetCheckedKeys.findIndex(item => item === id), 1)
this.$refs.tree.setCheckedKeys(this.memberSetCheckedKeys);
},
getMember() { // 获取指定成员列表
this.outerVisible = true;
this.dialogTitle = this.$t('fnc.xzrenyuan');
this.apipost('WorkFlow_get_GetTempLateDepartMentEmployee', {}, res => {
this.memberList = res.data.data
}, err => {})
},
deleteItem(sort) { // 删除已添加审批人
this.myAuditList.splice(this.myAuditList.findIndex(item => item.Sort === sort), 1)
},
addNode() { // 添加节点
let AuditList = {};
let type = this.approvalType
if (this.AuditDescription == '') {
return this.$message.error(this.$t('tips.qtxjdmiaoshu'))
}
if (type == 1) {
AuditList.AuditType = type;
AuditList.AuditWay = 1;
AuditList.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
AuditList.Sort = this.myAuditList.length + 1;
AuditList.RoleOrInitiator = this.directors;
AuditList.AuditDescription = '';
AuditList.SpecialNode = this.GetNodeValue;
if (this.directors == '') {
return this.$message.error(this.$t('tips.qxzbmzgjibie'))
}
this.levelList.forEach(x => {
if (x.level == this.directors) {
AuditList.Name = this.AuditDescription;
AuditList.AuditDescription = this.AuditDescription;
} else return
})
this.myAuditList.push(AuditList)
}
if (type == 2) {
let Au = this.showMember;
let Auu = [];
Au.forEach((item, index) => {
Auu.push({
EmployeeId: item.DepartmentId,
emName: item.DepartmentName,
Sort: index + 1
})
})
AuditList.AuditWay = this.AuditWay;
AuditList.AuditDescription = this.AuditDescription;
AuditList.Name = this.AuditDescription;
AuditList.AuditType = type;
AuditList.RoleOrInitiator = '';
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditUserList = Auu;
AuditList.SpecialNode = this.GetNodeValue;
if (Auu.length == 0) {
this.$message.error(this.$t('tips.cybnweikong'))
return
} else if (Auu.length > 10) {
this.$message.error(this.$t('tips.rsbncgtr'))
return
}
this.myAuditList.push(AuditList);
}
if (type == 3) {
AuditList.AuditType = type;
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditUserList = [{
EmployeeId: '',
Sort: ''
}];
AuditList.SpecialNode = this.GetNodeValue;
if (this.showRole.length == 0) {
this.$message.error(this.$t('tips.qxzbumen'))
return
} else {
AuditList.RoleOrInitiator = this.showRole[0].Id;
AuditList.Name = this.showRole[0].DepartmentName;
AuditList.AuditDescription = this.AuditDescription;
}
this.myAuditList.push(AuditList);
}
if (type == 4) { //空节点
AuditList.AuditType = type;
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditUserList = [{
EmployeeId: '0',
Sort: ''
}];
AuditList.SpecialNode = this.GetNodeValue;
AuditList.RoleOrInitiator = 0;
AuditList.Name = '';
AuditList.AuditDescription = this.AuditDescription;
this.myAuditList.push(AuditList);
}
if (type == 5) { //出纳
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 5;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 6) { //会计
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 6;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 7) { //op
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 7;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 10) { //分公司op
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 10;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 11) { //总部线控
AuditList.AuditType = 11;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 8) { //记账出纳
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 8;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
if (type == 9) { //收款出纳
// if(!this.WindowID){
// this.$message.error("请选择窗口!")
// return
// }
AuditList.AuditType = 9;
AuditList.RoleOrInitiator = '';
AuditList.AuditWay = this.AuditWay;
AuditList.Sort = this.myAuditList.length + 1;
AuditList.AuditDescription = this.AuditDescription;
AuditList.SpecialNode = this.GetNodeValue;
this.myAuditList.push(AuditList);
}
this.closeLayer()
},
clearValue(t) { // 选择会计出纳窗口获取对应下拉
this.SpecialNodeSelectType = ''; // 选择普通节点初始化 特殊节点 值
// if(t==5){
// this.WindowList = [];
// this.apipost('Window_post_GetWindowList',{Type:1},res=>{
// if(res.data.resultCode==1){
// let data = res.data.data;
// this.WindowList = data;
// }else{}
// },null)
// }
// if(t==6){
// this.WindowList = [];
// this.apipost('Window_post_GetWindowList',{Type:2},res=>{
// if(res.data.resultCode==1){
// let data = res.data.data;
// this.WindowList = data;
// }else{}
// },null)
// }
},
changeValue(value) {
},
getMaxDepartmentTierList() { // 获取直接主管层级
this.apipost('admin_get_GetMaxDepartmentTier', {}, res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
let newList = [];
data.forEach(x => {
let newObj = {
level: x,
name: this.$t('tips.di') + x + this.$t('tips.jizhuguan'),
}
newList.push(newObj)
});
this.levelList = newList
} else {}
}, err => {})
},
getCostTypeList(type) { // 获取费用类型
this.apipost('Financial_post_GetTreeList', {
Type: type
}, res => {
if (res.data.resultCode == 1) {
this.CostTypeList = res.data.data;
this.CostTypeList.unshift({
ChildList: [],
ID: '0',
Name: this.$t('active.cl_tongyong')
})
} else {}
}, err => {})
},
getCompanyList() { //获取公司列表
this.apipost('admin_get_BranchGetList', this.getCompanyMsg, res => {
if (res.data.resultCode == 1) {
let data = res.data.data
data.forEach(x => {
x.Id = x.Id.toString()
})
this.CompanyList = res.data.data;
} else {}
}, err => {})
},
addAppPerson() { // 添加默认审批人按钮
this.approvalType = 1;
this.addBtn = true;
this.AuditDescription = '';
this.showLayer();
this.showMember = [];
this.showRole = [];
this.GetNodeValue = 0;
},
goUrl(path) {
this.$router.push({
name: path,
query: {
"type": this.addMsg.TemplateType,
'Branch_Id': this.$route.query.Branch_Id
}
})
},
showLayer() { // 开启弹层
this.showlayer = true;
this.isTransition = true;
},
closeLayer() { // 关闭弹层
let _this = this;
this.directors = ''
setTimeout(function () {
_this.showlayer = false;
}, 300)
this.showMember = [];
this.memberSetCheckedKeys = [];
// this.$refs.tree.setCheckedKeys(this.memberSetCheckedKeys);
this.isTransition = false;
this.defaultCheckedArr = [];
this.WindowID = '';
this.SpecialNodeSelectType = '';
},
filterNode(value, data) {
if (!value) return true;
return data.DepartmentName.indexOf(value) !== -1;
},
filterNode1(value, data) {
if (!value) return true;
return data.PostName.indexOf(value) !== -1;
},
filterNode2(value, data) {
if (!value) return true;
return data.DepartmentName.indexOf(value) !== -1;
},
}
}
</script>
......@@ -153,6 +153,16 @@ const routes = [{
import("pages/financial/sellCommissionRules.vue")
},
{
        path: "/financial/FProcessManagement", //流程管理、
        component: () =>
        import("pages/financial/FProcessManagement.vue")
      },
      {
        path: "/financial/addFinancialProcess", //新增修改等级
        component: () =>
        import("pages/financial/addFinancialProcess.vue")
      },
{
path: "/test", //API测试
component: () =>
import("pages/test.vue")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment