Commit 158dc497 authored by 黄奎's avatar 黄奎

线路返佣

parent 1256336e
<style> <style>
.lineManagement .query_box { .lineManagement .query_box {
font-size: 12px; font-size: 12px;
padding: 29px 0; padding: 29px 0;
padding-right: 30px; padding-right: 30px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.lineManagement .el-switch.is-checked .el-switch__core { .lineManagement .el-switch.is-checked .el-switch__core {
border-color: #4bca81; border-color: #4bca81;
background-color: #4bca81; background-color: #4bca81;
} }
.lineManagement .addCompany { .lineManagement .addCompany {
width: 440px; width: 440px;
max-height: 600px; max-height: 600px;
} }
.lineManagement .addCompany .el-dialog__body { .lineManagement .addCompany .el-dialog__body {
height: 486px; height: 486px;
overflow: auto; overflow: auto;
} }
.lineManagement .query_box div label { .lineManagement .query_box div label {
display: inline-block; display: inline-block;
min-width: 80px; min-width: 80px;
text-align: right; text-align: right;
font-style: normal; font-style: normal;
margin: 0 20px 0 0; margin: 0 20px 0 0;
} }
input::-webkit-outer-spin-button, input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button { input::-webkit-inner-spin-button {
-webkit-appearance: none; -webkit-appearance: none;
} }
input[type="number"] { input[type="number"] {
-moz-appearance: textfield; -moz-appearance: textfield;
} }
.lineManagement .lineType { .lineManagement .lineType {
width: 51px; width: 51px;
height: 24px; height: 24px;
display: inline-block; display: inline-block;
text-align: center; text-align: center;
line-height: 24px; line-height: 24px;
border-radius: 4px; border-radius: 4px;
background-color: #ff9c00; background-color: #ff9c00;
color: #ffffff; color: #ffffff;
} }
.lineManagement .LMTable tr {
height: 70px; .lineManagement .LMTable tr {
text-align: center !important; height: 70px;
background-color: #fff; text-align: center !important;
} background-color: #fff;
}
.comPanyNum {
font-size: 14px; .comPanyNum {
color: #333333; font-size: 14px;
display: inline-block; color: #333333;
font-weight: bold; display: inline-block;
cursor: pointer; font-weight: bold;
margin-bottom: 5px; cursor: pointer;
text-decoration: underline; margin-bottom: 5px;
} text-decoration: underline;
}
.comPanyNum:hover {
color: #e95252; .comPanyNum:hover {
} color: #e95252;
.Linezhicai { }
color: #47bf8c;
} .Linezhicai {
color: #47bf8c;
.partCompany { }
padding: 0;
box-shadow: 0px 1px 3px 0px #dedede; .partCompany {
} padding: 0;
box-shadow: 0px 1px 3px 0px #dedede;
.partCompany .popper__arrow::after { }
border-bottom-color: #ededed !important;
} .partCompany .popper__arrow::after {
border-bottom-color: #ededed !important;
.partCompany table { }
padding: 10px 0 0 20px;
background-color: #ededed; .partCompany table {
border-collapse: collapse; padding: 10px 0 0 20px;
border: 1px solid #d2d2d2; background-color: #ededed;
font-size: 12px; border-collapse: collapse;
} border: 1px solid #d2d2d2;
font-size: 12px;
.partCompany table th { }
background-color: #ededed;
padding: 5px; .partCompany table th {
} background-color: #ededed;
padding: 5px;
.partCompany table td { }
background-color: #ffffff;
padding: 9px 15px; .partCompany table td {
color: #333333; background-color: #ffffff;
border: 1px solid #d2d2d2; padding: 9px 15px;
} color: #333333;
border: 1px solid #d2d2d2;
.partCompany table td._d_name { }
background-color: #ededed;
} .partCompany table td._d_name {
background-color: #ededed;
.partCompany table ._color_666 { }
color: #666666;
} .partCompany table ._color_666 {
color: #666666;
.partCompany table tr._color_666 th { }
padding: 9px 15px;
} .partCompany table tr._color_666 th {
padding: 9px 15px;
.lineManagement .LineName { }
display: inline-block;
width: 120px; .lineManagement .LineName {
margin: 0 0 0 20px; display: inline-block;
text-align: left; width: 120px;
} margin: 0 0 0 20px;
text-align: left;
.lineManagement .LM_Back { }
background-color: #f2f2f2;
} .lineManagement .LM_Back {
background-color: #f2f2f2;
.redType { }
color: #e95252;
} .redType {
.lineManagement .tbDiv { color: #e95252;
overflow-y: auto; }
}
.lineManagement .tbDiv {
.departListDiv { overflow-y: auto;
width: 100%; }
height: 200px;
overflow-y: auto; .departListDiv {
} width: 100%;
height: 200px;
.lineManagement .tbDiv::-webkit-scrollbar { overflow-y: auto;
width: 4px; }
height: 8px;
} .lineManagement .tbDiv::-webkit-scrollbar {
width: 4px;
.lineManagement .tbDiv::-webkit-scrollbar-track { height: 8px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2); }
border-radius: 4px;
background: #ededed; .lineManagement .tbDiv::-webkit-scrollbar-track {
} -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
.lineManagement .tbDiv::-webkit-scrollbar-thumb { background: #ededed;
border-radius: 4px; }
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9; .lineManagement .tbDiv::-webkit-scrollbar-thumb {
} border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
.departListDiv::-webkit-scrollbar { background: #c9c9c9;
width: 4px; }
height: 8px;
} .departListDiv::-webkit-scrollbar {
width: 4px;
.departListDiv::-webkit-scrollbar-track { height: 8px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2); }
border-radius: 4px;
background: #ededed; .departListDiv::-webkit-scrollbar-track {
} -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
.departListDiv::-webkit-scrollbar-thumb { background: #ededed;
border-radius: 4px; }
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9; .departListDiv::-webkit-scrollbar-thumb {
} border-radius: 4px;
.LMTable { -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
width: 100%; background: #c9c9c9;
font-size: 12px; }
}
.lineManagement .LMTable tr th { .LMTable {
border-bottom: 1px solid #d1d1d1; width: 100%;
} font-size: 12px;
}
.lineManagement .tbDiv .LMTable td {
border-bottom: 1px solid #d1d1d1; .lineManagement .LMTable tr th {
border-right: 1px solid #d1d1d1; border-bottom: 1px solid #d1d1d1;
position: relative; }
text-align: center;
padding: 5px; .lineManagement .tbDiv .LMTable td {
min-width: 250px; border-bottom: 1px solid #d1d1d1;
} border-right: 1px solid #d1d1d1;
position: relative;
.lineManagement .tbDiv table { text-align: center;
padding-right: 80px; padding: 5px;
margin-top: 10px; min-width: 250px;
border-top: 1px solid #d1d1d1; }
border-left: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1; .lineManagement .tbDiv table {
} padding-right: 80px;
margin-top: 10px;
.upFentan { border-top: 1px solid #d1d1d1;
text-decoration: underline; border-left: 1px solid #d1d1d1;
cursor: pointer; border-right: 1px solid #d1d1d1;
position: absolute; }
right: 13px;
top: 32%; .upFentan {
} text-decoration: underline;
cursor: pointer;
.subCountryList { position: absolute;
width: 150px; right: 13px;
text-align: left; top: 32%;
display: inline-block; }
text-overflow: ellipsis;
overflow: hidden; .subCountryList {
white-space: nowrap; width: 150px;
position: relative; text-align: left;
top: 3px; display: inline-block;
} text-overflow: ellipsis;
.lineManagement ._addLineTB tr { overflow: hidden;
height: 40px !important; white-space: nowrap;
} position: relative;
.saveCompanyBtn { top: 3px;
margin-top: 20px; }
}
.lineManagement ._addLineTB tr {
.setItem { height: 40px !important;
cursor: pointer; }
text-decoration: underline;
position: absolute; .saveCompanyBtn {
right: 13px; margin-top: 20px;
top: 32%; }
}
.lineManagement ._LMComdiv { .setItem {
float: left; cursor: pointer;
width: 32%; text-decoration: underline;
text-align: left; position: absolute;
} right: 13px;
.lineManagement .LineRank { top: 32%;
width: 24px; }
height: 24px;
background-color: #2aaef2; .lineManagement ._LMComdiv {
border-radius: 50%; float: left;
text-align: center; width: 32%;
line-height: 24px; text-align: left;
color: #fff; }
margin: 0 auto 5px;
} .lineManagement .LineRank {
.lineManagement .joinDepart { width: 24px;
display: inline-block; height: 24px;
margin-right: 50px; background-color: #2aaef2;
text-align: left; border-radius: 50%;
float: left; text-align: center;
width: 180px; line-height: 24px;
} color: #fff;
.lineManagement .LM_Rank { margin: 0 auto 5px;
text-align: center; }
}
.lineManagement ._LowDisMoney { .lineManagement .joinDepart {
width: 200px; display: inline-block;
float: left; margin-right: 50px;
text-align: left; text-align: left;
margin: 0 0 0 20px; float: left;
} width: 180px;
.lineManagement .LM_Btcontent { }
position: absolute;
right:100px; .lineManagement .LM_Rank {
top:10px; text-align: center;
text-align: right; }
margin-left: 20px;
} .lineManagement ._LowDisMoney {
.lineManagement .LM_ul li { width: 200px;
/*height: 78px;*/ float: left;
margin: 20px 0 0px 0px; text-align: left;
transition: linear all 0.5s; margin: 0 0 0 20px;
background-color: #fff; }
font-size: 12px;
border: 1px solid #dddddd; .lineManagement .LM_Btcontent {
overflow: hidden; position: absolute;
position: relative; right: 100px;
padding: 10px 0; top: 10px;
} text-align: right;
.lineManagement .el-button-group .el-button { margin-left: 20px;
padding: 5px; }
}
.lineManagement .LM_ul > li:hover { .lineManagement .LM_ul li {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1); /*height: 78px;*/
transition: all linear 0.5s; margin: 20px 0 0px 0px;
} transition: linear all 0.5s;
.lineManagement .TFimgList { background-color: #fff;
font-size: 12px;
border: 1px solid #dddddd;
overflow: hidden;
position: relative;
padding: 10px 0;
}
.lineManagement .el-button-group .el-button {
padding: 5px;
}
.lineManagement .LM_ul>li:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s;
}
.lineManagement .TFimgList {
float: left; float: left;
width: 170px; width: 170px;
height: 100px; height: 100px;
...@@ -291,12 +308,14 @@ input[type="number"] { ...@@ -291,12 +308,14 @@ input[type="number"] {
position: relative; position: relative;
margin: 0 10px 10px 0; margin: 0 10px 10px 0;
overflow: hidden; overflow: hidden;
} }
.lineManagement .TFimgList img{
width: 100%; .lineManagement .TFimgList img {
height: 100%; width: 100%;
} height: 100%;
.lineManagement .TFIMGzhe { }
.lineManagement .TFIMGzhe {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: rgba(0, 0, 0, 0.4); background: rgba(0, 0, 0, 0.4);
...@@ -306,288 +325,293 @@ input[type="number"] { ...@@ -306,288 +325,293 @@ input[type="number"] {
line-height: 115px; line-height: 115px;
border-radius: 4px; border-radius: 4px;
display: none; display: none;
} }
.lineManagement .TFimgList:hover .TFIMGzhe {
.lineManagement .TFimgList:hover .TFIMGzhe {
display: block; display: block;
} }
</style> </style>
<template> <template>
<div class="flexOne lineManagement"> <div class="flexOne lineManagement">
<div class="query-box"> <div class="query-box">
<ul> <ul>
<li> <li>
<span> <span>
<em>{{$t('system.query_lineName')}}</em> <em>{{$t('system.query_lineName')}}</em>
<el-input v-model="msg.lineName" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList" class="w210"></el-input> <el-input v-model="msg.lineName" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList"
</span> class="w210"></el-input>
</li> </span>
<li> </li>
<span> <li>
<em>{{$t('Operation.Op_ShortName')}}</em> <span>
<el-input v-model="msg.lineShortName" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList" class="w210"></el-input> <em>{{$t('Operation.Op_ShortName')}}</em>
</span> <el-input v-model="msg.lineShortName" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList"
</li> class="w210"></el-input>
<li> </span>
<span> </li>
<em>{{$t('system.ph_xianluCode')}}</em> <li>
<el-input v-model="msg.lineCode" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList" class="w210"></el-input> <span>
</span> <em>{{$t('system.ph_xianluCode')}}</em>
</li> <el-input v-model="msg.lineCode" :placeholder="$t('system.ph_in')" @keyup.native.enter="getList"
<li> class="w210"></el-input>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="resetPageIndex(),getList()"/> </span>
<input type="button" class="normalBtn" :value="$t('pub.addBtn')" </li>
@click="clearInfo(),isShowDIv=true,isShowTwo=false,divTitle='新增线路'"/> <li>
</li> <input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')"
</ul> @click="resetPageIndex(),getList()" />
</div> <input type="button" class="normalBtn" :value="$t('pub.addBtn')"
@click="clearInfo(),isShowDIv=true,isShowTwo=false,divTitle='新增线路'" />
</li>
</ul>
</div>
<div class="commonContent" v-loading="loading"> <div class="commonContent" v-loading="loading">
<ul class="LM_ul"> <ul class="LM_ul">
<li v-for="(item,index) in DataList" :key="item.subCode"> <li v-for="(item,index) in DataList" :key="item.subCode">
<el-row :gutter="10" style="display: flex;align-items: center;"> <el-row :gutter="10" style="display: flex;align-items: center;">
<el-col :span="3"> <el-col :span="3">
<span class="LineName">{{item.lineName}}</span> <span class="LineName">{{item.lineName}}</span>
</el-col> </el-col>
<el-col :span="2"> <el-col :span="2">
<span class="lineType">{{item.lineCode}}</span> <span class="lineType">{{item.lineCode}}</span>
</el-col> </el-col>
<el-col :span="2"> <el-col :span="2">
<div class="_LowDisMoney"> <div class="_LowDisMoney">
<div>{{$t('Operation.Op_sname')}}</div> <div>{{$t('Operation.Op_sname')}}</div>
{{item.lineShortName}} {{item.lineShortName}}
</div>
</el-col>
<el-col :span="2">
<div class="_LowDisMoney">
<div>{{item.lowDeposit}}</div>
<div>{{$t('Operation.Op_depositAmount')}}</div>
</div>
</el-col>
<el-col :span="2">
<div class="_LowDisMoney">
<div v-if="item.lineDirection==1">入境</div>
<div v-else-if="item.lineDirection==2">出境</div>
<div v-else-if="item.lineDirection==3">一日游</div>
<div>线路方向</div>
</div>
</el-col>
<el-col :span="3">
<div class="LineRank">{{item.discountDayNum}}</div>
<div class="LM_Rank">{{$t('Operation.Op_EarlybirdDay')}}</div>
</el-col>
<el-col :span="3">
<div class="LineRank">{{item.rank}}</div>
<div class="LM_Rank">{{$t('system.table_rank')}}</div>
</el-col>
<el-col :span="5">
<div class="_LMComdiv">
<el-popover popper-class="partCompany" width="300" trigger="click">
<div class="departListDiv">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666">
<th>{{$t('system.table_company')}}</th>
<th>{{$t('Operation.Op_LossAllocation')}}</th>
</tr>
<tr v-for="childItem in departCompany" :key="childItem.subCode">
<td width="60%">{{childItem.companyName}}</td>
<td width="40%">{{childItem.lossAllocation}}%</td>
</tr>
</table>
</div> </div>
</el-col> <span slot="reference" class="comPanyNum"
<el-col :span="2"> @click="getLossCompany(item.lineID,1)">{{item.branchCount}}</span>
<div class="_LowDisMoney"> </el-popover>
<div>{{item.lowDeposit}}</div> <div class="particCompany">{{$t('Operation.Op_partInCompany')}}</div>
<div>{{$t('Operation.Op_depositAmount')}}</div> </div>
</div> <div class="_LMComdiv">
</el-col> <el-popover popper-class="partCompany" width="350" trigger="click">
<el-col :span="2"> <div class="departListDiv">
<div class="_LowDisMoney"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
<div v-if="item.lineDirection==1">入境</div> <tr class="_color_666">
<div v-else-if="item.lineDirection==2">出境</div> <th width="40%">{{$t('system.table_company')}}</th>
<div v-else-if="item.lineDirection==3">一日游</div> <th width="60%">{{$t('admin.admin_Department')}}</th>
<div>线路方向</div> </tr>
</div> <tr v-for="childItem in departDepartment" :key="childItem.subCode">
</el-col> <td>{{childItem.companyName}}</td>
<el-col :span="3"> <td>{{childItem.joinDepartment | getJoinDepName}}</td>
<div class="LineRank">{{item.discountDayNum}}</div> </tr>
<div class="LM_Rank">{{$t('Operation.Op_EarlybirdDay')}}</div> </table>
</el-col>
<el-col :span="3">
<div class="LineRank">{{item.rank}}</div>
<div class="LM_Rank">{{$t('system.table_rank')}}</div>
</el-col>
<el-col :span="5">
<div class="_LMComdiv">
<el-popover
popper-class="partCompany"
width="300"
trigger="click">
<div class="departListDiv">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666">
<th>{{$t('system.table_company')}}</th>
<th>{{$t('Operation.Op_LossAllocation')}}</th>
</tr>
<tr v-for="childItem in departCompany" :key="childItem.subCode">
<td width="60%">{{childItem.companyName}}</td>
<td width="40%">{{childItem.lossAllocation}}%</td>
</tr>
</table>
</div>
<span slot="reference" class="comPanyNum" @click="getLossCompany(item.lineID,1)">{{item.branchCount}}</span>
</el-popover>
<div class="particCompany">{{$t('Operation.Op_partInCompany')}}</div>
</div>
<div class="_LMComdiv">
<el-popover
popper-class="partCompany"
width="350"
trigger="click">
<div class="departListDiv">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666">
<th width="40%">{{$t('system.table_company')}}</th>
<th width="60%">{{$t('admin.admin_Department')}}</th>
</tr>
<tr v-for="childItem in departDepartment" :key="childItem.subCode">
<td>{{childItem.companyName}}</td>
<td>{{childItem.joinDepartment | getJoinDepName}}</td>
</tr>
</table>
</div>
<span slot="reference" class="comPanyNum" @click="getLossCompany(item.lineID,2)">{{$t('pub.clickToView')}}</span>
</el-popover>
<div class="particCompany">{{$t('Operation.Op_belongDepartment')}}</div>
</div>
</el-col>
<el-col :span="2">
<div class="Linezhicai" :class="{'redType':item.isDirect=='0'}">{{item.isDirect=="0"?'非直采':'直采'}}</div>
<div class="Linezhicai" :class="{'redType':item.isShow=='0'}">{{item.isShow=="0"?'不显示':'显示'}}</div>
<div class="Linezhicai" :class="{'redType':item.is_PacketGroup=='0'}">{{item.is_PacketGroup =="0"?'不允许小包团':'允许小包团'}}</div>
</el-col>
<el-col :span="2">
<div>
<el-button-group size='mini'>
<el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start">
<el-button type="primary" icon="el-icon-edit" @click="isShowDIv = true,divTitle='修改线路',updateData(index)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.btn_CtrlSet')" placement="top-start">
<el-button type="success" icon="el-icon-setting" @click="getBranchList(item.lineID)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
<el-button type="danger" icon="el-icon-delete" @click="deletelist(item.lineID)"></el-button>
</el-tooltip>
</el-button-group>
</div> </div>
</el-col> <span slot="reference" class="comPanyNum"
</el-row> @click="getLossCompany(item.lineID,2)">{{$t('pub.clickToView')}}</span>
</li> </el-popover>
</ul> <div class="particCompany">{{$t('Operation.Op_belongDepartment')}}</div>
<div class="noData" v-show="noData"> </div>
{{$t('system.content_noData')}} </el-col>
</div> <el-col :span="2">
<div class="Linezhicai" :class="{'redType':item.isDirect=='0'}">{{item.isDirect=="0"?'非直采':'直采'}}</div>
<div class="Linezhicai" :class="{'redType':item.isShow=='0'}">{{item.isShow=="0"?'不显示':'显示'}}</div>
<div class="Linezhicai" :class="{'redType':item.is_PacketGroup=='0'}">
{{item.is_PacketGroup =="0"?'不允许小包团':'允许小包团'}}</div>
</el-col>
<el-col :span="2">
<div>
<el-button-group size='mini'>
<el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start">
<el-button type="primary" icon="el-icon-edit"
@click="isShowDIv = true,divTitle='修改线路',updateData(index)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.btn_CtrlSet')" placement="top-start">
<el-button type="success" icon="el-icon-setting" @click="getBranchList(item.lineID)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
<el-button type="danger" icon="el-icon-delete" @click="deletelist(item.lineID)"></el-button>
</el-tooltip>
</el-button-group>
</div>
</el-col>
</el-row>
</li>
</ul>
<div class="noData" v-show="noData">
{{$t('system.content_noData')}}
</div>
</div> </div>
<div class="combottomDiv" v-if="isShowDIv"> <div class="combottomDiv" v-if="isShowDIv">
<div class="combottomTitle">{{divTitle}}</div> <div class="combottomTitle">{{divTitle}}</div>
<div class=""> <div class="">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="130px"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="130px">
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('system.query_lineName')" prop="lineName"> <el-form-item :label="$t('system.query_lineName')" prop="lineName">
<el-input v-model="addMsg.lineName"></el-input> <el-input v-model="addMsg.lineName"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('Operation.Op_ShortName')" prop="lineShortName"> <el-form-item :label="$t('Operation.Op_ShortName')" prop="lineShortName">
<el-input v-model="addMsg.lineShortName"></el-input> <el-input v-model="addMsg.lineShortName"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('system.table_lineCode')" prop="lineCode"> <el-form-item :label="$t('system.table_lineCode')" prop="lineCode">
<el-input v-model="addMsg.lineCode"></el-input> <el-input v-model="addMsg.lineCode"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('Operation.Op_CombinedContry')" style="display:none;"> <el-form-item :label="$t('Operation.Op_CombinedContry')" style="display:none;">
<el-select v-model="lineCountryArr" class='multiple_input' multiple :placeholder="$t('pub.pleaseSel')"> <el-select v-model="lineCountryArr" class='multiple_input' multiple :placeholder="$t('pub.pleaseSel')">
<el-option <el-option v-for="item in countryList" :key="item.ID" :label="item.Name" :value="item.ID">
v-for="item in countryList" </el-option>
:key="item.ID" </el-select>
:label="item.Name" </el-form-item>
:value="item.ID">
</el-option>
</el-select>
</el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('Operation.Op_lowDeposit')" prop="lowDeposit"> <el-form-item :label="$t('Operation.Op_lowDeposit')" prop="lowDeposit">
<el-input v-model="addMsg.lowDeposit" maxlength="10" @keyup.native="checkPrice(addMsg,'lowDeposit')"></el-input> <el-input v-model="addMsg.lowDeposit" maxlength="10" @keyup.native="checkPrice(addMsg,'lowDeposit')">
</el-form-item> </el-input>
</el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('Operation.Op_preferentialDays')"> <el-form-item :label="$t('Operation.Op_preferentialDays')">
<el-input v-model="addMsg.discountDayNum" maxlength="3" @keyup.native="checkInteger(addMsg,'discountDayNum')"></el-input> <el-input v-model="addMsg.discountDayNum" maxlength="3"
</el-form-item> @keyup.native="checkInteger(addMsg,'discountDayNum')"></el-input>
</el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('system.table_rank')"> <el-form-item :label="$t('system.table_rank')">
<el-input v-model="addMsg.Rank" @keyup.native="checkInteger(addMsg,'Rank')"></el-input> <el-input v-model="addMsg.Rank" @keyup.native="checkInteger(addMsg,'Rank')"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="2"> <el-col :span="2">
<el-form-item :label="$t('Operation.Op_isDirect')"> <el-form-item :label="$t('Operation.Op_isDirect')">
<el-switch v-model="addMsg.isDirect" :active-value="isDefaultChecked" <el-switch v-model="addMsg.isDirect" :active-value="isDefaultChecked"
:inactive-value="isDefaultUnchecked"></el-switch> :inactive-value="isDefaultUnchecked"></el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="3"> <el-col :span="3">
<el-form-item :label="$t('system.table_isShow')"> <el-form-item :label="$t('system.table_isShow')">
<el-switch v-model="addMsg.isShow" :active-value="isDefaultChecked" <el-switch v-model="addMsg.isShow" :active-value="isDefaultChecked" :inactive-value="isDefaultUnchecked">
:inactive-value="isDefaultUnchecked"></el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="3"> <el-col :span="3">
<el-form-item :label="$t('Operation.Op_isShared')"> <el-form-item :label="$t('Operation.Op_isShared')">
<el-switch v-model="addMsg.IsShare" :active-value="isDefaultChecked" <el-switch v-model="addMsg.IsShare" :active-value="isDefaultChecked" :inactive-value="isDefaultUnchecked">
:inactive-value="isDefaultUnchecked"></el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="2"> <el-col :span="2">
<el-form-item :label="$t('Operation.Op_AllowSmallGroup')"> <el-form-item :label="$t('Operation.Op_AllowSmallGroup')">
<el-switch v-model="addMsg.Is_PacketGroup" :active-value="isDefaultChecked" <el-switch v-model="addMsg.Is_PacketGroup" :active-value="isDefaultChecked"
:inactive-value="isDefaultUnchecked"></el-switch> :inactive-value="isDefaultUnchecked"></el-switch>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="线路方向" prop="LineDirection">
<el-select v-model="addMsg.LineDirection" :placeholder="$t('pub.pleaseSel')">
<el-option label='入境' :value='1'></el-option>
<el-option label='出境' :value='2'></el-option>
<el-option label='一日游' :value='3'></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="线路方向" prop="LineDirection"> <el-form-item label="人头返佣">
<el-select v-model="addMsg.LineDirection" :placeholder="$t('pub.pleaseSel')"> <el-input v-model="addMsg.RebateMoney" maxlength="10" @keyup.native="checkPrice(addMsg,'RebateMoney')">
<el-option label='入境' :value='1'></el-option> </el-input>
<el-option label='出境' :value='2'></el-option> </el-form-item>
<el-option label='一日游' :value='3'></el-option>
</el-select>
</el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="B2B线路背景图"> <el-form-item label="B2B线路背景图">
<div class="TFimgList"> <div class="TFimgList">
<img v-if="!addMsg.BackgroundImage" src="../../assets/img/bg_c3@3x.png"> <img v-if="!addMsg.BackgroundImage" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='addMsg.BackgroundImage'> <img v-else :src='addMsg.BackgroundImage'>
<div class="TFIMGzhe"> <div class="TFIMGzhe">
<div class="TFreupload"> <div class="TFreupload">
<el-upload :file-list="fileList" :http-request="uploadTest" :multiple="true" :limit="2" <el-upload :file-list="fileList" :http-request="uploadTest" :multiple="true" :limit="2"
:on-change="handleChange1" :on-change="handleChange1" accept="image/jpeg, image/gif, image/png, image/bmp"
accept="image/jpeg, image/gif, image/png, image/bmp" :show-file-list="false" action="">
:show-file-list="false" action=""> <i class="iconfont icon-Edit"></i>
<i class="iconfont icon-Edit"></i> </el-upload>
</el-upload> </div>
</div> </div>
</div> </div>
</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="B2B线路侧边长图"> <el-form-item label="B2B线路侧边长图">
<div class="TFimgList" style="width:90px"> <div class="TFimgList" style="width:90px">
<img v-if="!addMsg.BroadsideImage" src="../../assets/img/bg_c3@3x.png"> <img v-if="!addMsg.BroadsideImage" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='addMsg.BroadsideImage'> <img v-else :src='addMsg.BroadsideImage'>
<div class="TFIMGzhe"> <div class="TFIMGzhe">
<div class="TFreupload"> <div class="TFreupload">
<el-upload :file-list="fileList2" :http-request="uploadTest2" :multiple="true" :limit="2" <el-upload :file-list="fileList2" :http-request="uploadTest2" :multiple="true" :limit="2"
:on-change="handleChange2" :on-change="handleChange2" accept="image/jpeg, image/gif, image/png, image/bmp"
accept="image/jpeg, image/gif, image/png, image/bmp" :show-file-list="false" action="">
:show-file-list="false" action=""> <i class="iconfont icon-Edit"></i>
<i class="iconfont icon-Edit"></i> </el-upload>
</el-upload> </div>
</div> </div>
</div> </div>
</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="App图标"> <el-form-item label="App图标">
<div class="TFimgList" style="width:50px;height:50px"> <div class="TFimgList" style="width:50px;height:50px">
<img v-if="!addMsg.AppLineIcon" src="../../assets/img/bg_c3@3x.png"> <img v-if="!addMsg.AppLineIcon" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='addMsg.AppLineIcon'> <img v-else :src='addMsg.AppLineIcon'>
<div class="TFIMGzhe"> <div class="TFIMGzhe">
<div class="TFreupload"> <div class="TFreupload">
<el-upload :file-list="fileList3" :http-request="uploadTest3" :multiple="true" :limit="2" <el-upload :file-list="fileList3" :http-request="uploadTest3" :multiple="true" :limit="2"
:on-change="handleChange3" :on-change="handleChange3" accept="image/jpeg, image/gif, image/png, image/bmp"
accept="image/jpeg, image/gif, image/png, image/bmp" :show-file-list="false" action="">
:show-file-list="false" action=""> <i class="iconfont icon-Edit"></i>
<i class="iconfont icon-Edit"></i> </el-upload>
</el-upload> </div>
</div> </div>
</div> </div>
</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<div class="LM_Btcontent"> <div class="LM_Btcontent">
<input type="button" class="normalBtn" @click="submitForm('addMsg')" :value="$t('pub.saveBtn')"/> <input type="button" class="normalBtn" @click="submitForm('addMsg')" :value="$t('pub.saveBtn')" />
<input type="button" class="hollowFixedBtn" @click="isShowDIv=false" :value="$t('pub.cancelBtn')"/> <input type="button" class="hollowFixedBtn" @click="isShowDIv=false" :value="$t('pub.cancelBtn')" />
</div> </div>
</el-form> </el-form>
</div> </div>
...@@ -603,10 +627,10 @@ input[type="number"] { ...@@ -603,10 +627,10 @@ input[type="number"] {
<td v-for="item in getCompanyList" :key="item.subCode"> <td v-for="item in getCompanyList" :key="item.subCode">
<span v-if="!item.inputShow">{{item.lossAllocation}}</span> <span v-if="!item.inputShow">{{item.lossAllocation}}</span>
<input type="text" v-model="item.lossAllocation" @blur="setInput(item)" <input type="text" v-model="item.lossAllocation" @blur="setInput(item)"
onkeyup="value=value.replace(/[^\d]/g,'')" class="w80" v-if="item.inputShow"/> onkeyup="value=value.replace(/[^\d]/g,'')" class="w80" v-if="item.inputShow" />
<span v-if="item.lossAllocation!=null">%</span> <span v-if="item.lossAllocation!=null">%</span>
<span class="upFentan" v-if="item.lossAllocation>=0&&!item.showSet&&item.selectDepIdArr.length>0" <span class="upFentan" v-if="item.lossAllocation>=0&&!item.showSet&&item.selectDepIdArr.length>0"
@click="displayInput(item)">{{$t('pub.updateMsg')}}</span> @click="displayInput(item)">{{$t('pub.updateMsg')}}</span>
<div v-if="item.showSet&&item.selectDepIdArr.length>0"> <div v-if="item.showSet&&item.selectDepIdArr.length>0">
<span>{{$t('Operation.Op_notInvoled')}}</span> <span>{{$t('Operation.Op_notInvoled')}}</span>
<span @click="clickedSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span> <span @click="clickedSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span>
...@@ -618,17 +642,13 @@ input[type="number"] { ...@@ -618,17 +642,13 @@ input[type="number"] {
<td v-on:click='closeDepOption(item)' v-for="item in getCompanyList" :key="item.subCode"> <td v-on:click='closeDepOption(item)' v-for="item in getCompanyList" :key="item.subCode">
<span class="joinDepart" v-if="!item.seletShow">{{item.joinDepartment | getJoinDepName}}</span> <span class="joinDepart" v-if="!item.seletShow">{{item.joinDepartment | getJoinDepName}}</span>
<el-select v-model="item.selectDepIdArr" multiple class='w160 multiple_input' filterable <el-select v-model="item.selectDepIdArr" multiple class='w160 multiple_input' filterable
@change="getSelected(item)" @change="getSelected(item)" :placeholder="$t('pub.pleaseSel')" v-if="item.seletShow">
:placeholder="$t('pub.pleaseSel')" v-if="item.seletShow"> <el-option v-for="item in item.departMentList" :key="item.DepartmentID" :label="item.DepartmentName"
<el-option
v-for="item in item.departMentList"
:key="item.DepartmentID"
:label="item.DepartmentName"
:value="item.DepartmentID"> :value="item.DepartmentID">
</el-option> </el-option>
</el-select> </el-select>
<span class="upFentan" v-if="item.selectDepIdArr.length>0" <span class="upFentan" v-if="item.selectDepIdArr.length>0"
@click.stop="getSelectList(item,item.rB_Branch_id)">{{$t('pub.updateMsg')}}</span> @click.stop="getSelectList(item,item.rB_Branch_id)">{{$t('pub.updateMsg')}}</span>
<div v-if="item.showSelectSet"> <div v-if="item.showSelectSet">
<span class="joinDepart">{{$t('Operation.Op_notInvoled')}}</span> <span class="joinDepart">{{$t('Operation.Op_notInvoled')}}</span>
<span @click.stop="clickedSelectSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span> <span @click.stop="clickedSelectSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span>
...@@ -640,17 +660,13 @@ input[type="number"] { ...@@ -640,17 +660,13 @@ input[type="number"] {
<td v-for="item in getCompanyList" @click="closeOpTion()" :key="item.subCode"> <td v-for="item in getCompanyList" @click="closeOpTion()" :key="item.subCode">
<span class="joinDepart" v-if="!item.seletOpShow">{{item.joinEmployee | getJoinEmpName}}</span> <span class="joinDepart" v-if="!item.seletOpShow">{{item.joinEmployee | getJoinEmpName}}</span>
<el-select v-model="item.selectOpIdArr" multiple class='w160 multiple_input' filterable <el-select v-model="item.selectOpIdArr" multiple class='w160 multiple_input' filterable
@change="getOPSelected(item)" @change="getOPSelected(item)" :placeholder="$t('pub.pleaseSel')" v-if="item.seletOpShow">
:placeholder="$t('pub.pleaseSel')" v-if="item.seletOpShow"> <el-option v-for="item in item.employeeList" :key="item.EmployeeId" :label="item.EmName"
<el-option
v-for="item in item.employeeList"
:key="item.EmployeeId"
:label="item.EmName"
:value="item.EmployeeId"> :value="item.EmployeeId">
</el-option> </el-option>
</el-select> </el-select>
<span class="upFentan" v-if="item.selectOpIdArr.length>0" <span class="upFentan" v-if="item.selectOpIdArr.length>0"
@click.stop="getOPSelectList(item,item.rB_Branch_id)">{{$t('pub.updateMsg')}}</span> @click.stop="getOPSelectList(item,item.rB_Branch_id)">{{$t('pub.updateMsg')}}</span>
<div v-if="item.showOpSet"> <div v-if="item.showOpSet">
<span class="joinDepart">{{$t('Operation.Op_notInvoled')}}</span> <span class="joinDepart">{{$t('Operation.Op_notInvoled')}}</span>
<span @click.stop="clickedOpSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span> <span @click.stop="clickedOpSet(item)" class="setItem">{{$t('leader.leader_Set')}}</span>
...@@ -659,602 +675,617 @@ input[type="number"] { ...@@ -659,602 +675,617 @@ input[type="number"] {
</tr> </tr>
</table> </table>
<input type="button" class="normalBtn" @click="isShowTwo=false" :value="$t('pub.cancelBtn')"/> <input type="button" class="normalBtn" @click="isShowTwo=false" :value="$t('pub.cancelBtn')" />
<input type="button" class="normalBtn saveCompanyBtn" @click="saveCompany()" :value="$t('pub.saveBtn')"/> <input type="button" class="normalBtn saveCompanyBtn" @click="saveCompany()" :value="$t('pub.saveBtn')" />
</div> </div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" <el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total> layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination> </el-pagination>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
fileList3:[], fileList3: [],
fileList:[], fileList: [],
fileList2:[], fileList2: [],
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 6, pageSize: 6,
lineName: "", lineName: "",
lineCode: "", lineCode: "",
lineShortName: "" lineShortName: ""
},
addMsg: {
lineId: 0,
lineName: "",
lineCode: "",
isDirect: "",
isShow: "",
lineCountryList: [],
Rank: 0,
lowDeposit: 0.0,
discountDayNum: 0,
lineShortName: "",
IsShare: 0,
Is_PacketGroup: 0,
LineDirection:2,
BackgroundImage:"",
BroadsideImage:'',
AppLineIcon:"",
},
departCompany: "",
departDepartment: "",
countryList: "",
lineCountryArr: [],
isDefaultUnchecked: 0,
isDefaultChecked: 1,
isShowDIv: false,
divTitle: "",
isShowTwo: false,
getCompanyList: "",
BranchCompanyList: "",
upLineId: "",
DataList: [],
total: 0,
currentPage: 1,
noData: false,
loading: true,
rules: {
//表单必填验证
lineName: [
{ required: true, message: "请输入线路名", trigger: "blur" }
],
lineCode: [
{ required: true, message: "请填写线路代码", trigger: "blur" },
{ pattern: /^[a-zA-Z]/, message: "请输入正确的字母" }
],
lowDeposit: [
{ required: true, message: "请填写最低金额", trigger: "blur" }
],
lineShortName: [
{ required: true, message: "请填线路简称", trigger: "change" }
],
LineDirection:[
{ required: true, message: "请选择线路方向", trigger: "change" }
]
}
};
},
methods: {
handleChange3(file, fileList) {
this.fileList3 = fileList.slice(-1);
},
handleChange1(file, fileList) {
this.fileList = fileList.slice(-1);
},
handleChange2(file, fileList) {
this.fileList2 = fileList.slice(-1);
},
uploadTest3(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.AppLineIcon = url;
});
},
uploadTest2(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.BroadsideImage = url;
});
},
uploadTest(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.BackgroundImage = url;
});
},
getList() {
//获取现有线路列表
this.loading = true;
this.apipost(
"line_post_GetPageList",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
let data = res.data.data.pageData;
this.total = res.data.data.count;
this.noData = !this.total > 0;
this.DataList = data;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
getLossCompany(lineId, type) {
let msg = {
lineId: lineId
};
this.departCompany = "";
this.departDepartment = "";
this.apipost(
"line_get_join_branch_list",
msg,
res => {
if (res.data.resultCode == 1) {
if (type == 1) {
this.departCompany = res.data.data;
} else if (type == 2) {
this.departDepartment = res.data.data;
}
}
}, },
err => {} addMsg: {
); lineId: 0,
}, lineName: "",
getCountry() { lineCode: "",
//获取国家 isDirect: "",
let msg = {}; isShow: "",
this.apipost( lineCountryList: [],
"dict_post_Destination_GetCountry", Rank: 0,
msg, lowDeposit: 0.0,
res => { discountDayNum: 0,
this.countryList = res.data.data; lineShortName: "",
IsShare: 0,
Is_PacketGroup: 0,
LineDirection: 2,
BackgroundImage: "",
BroadsideImage: '',
AppLineIcon: "",
RebateMoney: 0, //人头返佣
}, },
err => {} departCompany: "",
); departDepartment: "",
}, countryList: "",
addLine() { lineCountryArr: [],
//添加线路 isDefaultUnchecked: 0,
this.addMsg.lineCountryList = []; isDefaultChecked: 1,
this.lineCountryArr.forEach(countryID => { isShowDIv: false,
var countryObj = { divTitle: "",
countryId: countryID isShowTwo: false,
}; getCompanyList: "",
this.addMsg.lineCountryList.push(countryObj); BranchCompanyList: "",
}); upLineId: "",
this.apipost( DataList: [],
"line_post_Set", total: 0,
this.addMsg, currentPage: 1,
res => { noData: false,
if (res.data.resultCode == 1) { loading: true,
this.Success("保存成功!"); rules: {
this.getList(); //表单必填验证
this.resetForm("addMsg"); lineName: [{
this.lineCountryArr = []; required: true,
this.isShowDIv = false; message: "请输入线路名",
} else { trigger: "blur"
this.Error(res.data.message); }],
} lineCode: [{
}, required: true,
err => {} message: "请填写线路代码",
); trigger: "blur"
}, },
updateData(index) { {
//修改线路信息 pattern: /^[a-zA-Z]/,
message: "请输入正确的字母"
this.lineCountryArr = []; }
var getInfo = this.DataList[index]; ],
this.addMsg.lineName = getInfo.lineName; lowDeposit: [{
this.addMsg.lineCode = getInfo.lineCode; required: true,
this.addMsg.lineShortName = getInfo.lineShortName; message: "请填写最低金额",
getInfo.countryList.forEach(x => { trigger: "blur"
this.lineCountryArr.push(x.countryId); }],
}); lineShortName: [{
this.addMsg.isDirect = getInfo.isDirect; required: true,
this.addMsg.isShow = getInfo.isShow; message: "请填线路简称",
this.addMsg.lineId = getInfo.lineID; trigger: "change"
this.addMsg.Rank = getInfo.rank; }],
this.addMsg.lowDeposit = getInfo.lowDeposit; LineDirection: [{
this.addMsg.discountDayNum = getInfo.discountDayNum; required: true,
this.addMsg.IsShare = getInfo.isShare; message: "请选择线路方向",
this.addMsg.Is_PacketGroup = getInfo.is_PacketGroup; trigger: "change"
this.addMsg.LineDirection = getInfo.lineDirection; }]
this.addMsg.BackgroundImage = getInfo.backgroundImage; }
this.addMsg.BroadsideImage = getInfo.broadsideImage; };
this.addMsg.AppLineIcon = getInfo.appLineIcon;
}, },
deletelist(lineID) { methods: {
var that = this; handleChange3(file, fileList) {
this.Confirm("是否删除此线路?", function() {
this.fileList3 = fileList.slice(-1);
},
handleChange1(file, fileList) {
this.fileList = fileList.slice(-1);
},
handleChange2(file, fileList) {
this.fileList2 = fileList.slice(-1);
},
uploadTest3(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.AppLineIcon = url;
});
},
uploadTest2(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.BroadsideImage = url;
});
},
uploadTest(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.BackgroundImage = url;
});
},
getList() {
//获取现有线路列表
this.loading = true;
this.apipost(
"line_post_GetPageList",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
let data = res.data.data.pageData;
this.total = res.data.data.count;
this.noData = !this.total > 0;
this.DataList = data;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
getLossCompany(lineId, type) {
let msg = { let msg = {
ID: lineID lineId: lineId
}; };
that.apipost( this.departCompany = "";
"line_post_Remove", this.departDepartment = "";
this.apipost(
"line_get_join_branch_list",
msg, msg,
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
that.Success("删除成功"); if (type == 1) {
that.getList(); this.departCompany = res.data.data;
} else if (type == 2) {
this.departDepartment = res.data.data;
}
} }
}, },
err => {} err => {}
); );
}); },
}, getCountry() {
//获取分公司分摊和设置 //获取国家
getBranchList(lineId) { let msg = {};
this.isShowTwo = true; this.apipost(
this.isShowDIv = false; "dict_post_Destination_GetCountry",
this.upLineId = lineId; msg,
let msg = { res => {
lineId: lineId this.countryList = res.data.data;
}; },
this.apipost("line_get_all_branch_list", msg, res => { err => {}
if (res.data.resultCode == 1) { );
this.getCompanyList = res.data.data; },
this.getCompanyList.map(x => { addLine() {
x.inputShow = false; //添加线路
x.seletShow = false; this.addMsg.lineCountryList = [];
x.seletOpShow = false; this.lineCountryArr.forEach(countryID => {
x.departMentList = ""; var countryObj = {
x.employeeList=[]; countryId: countryID
x.selectDepIdArr = [];
x.selectOpIdArr= [];
if (x.lossAllocation == null && x.inputShow == false) {
x.showSet = true;
} else {
x.showSet = false;
}
if (x.joinDepartment.length == 0 && x.seletShow == false) {
x.showSelectSet = true;
} else {
x.showSelectSet = false;
}
if(x.joinEmployee.length==0 && x.seletOpShow==false){
x.showOpSet = true;
}else{
x.showOpSet = false;
}
if (x.joinDepartment.length > 0) {
x.joinDepartment.forEach(y => {
x.selectDepIdArr.push(y.departmentId);
});
}
if (x.joinEmployee.length > 0) {
x.joinEmployee.forEach(y => {
x.selectOpIdArr.push(y.employeeId);
});
}
});
}
});
},
getSelectList(item, RB_Branch_Id) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
x.seletShow = true;
let userInfo = this.getLocalStorage();
var RB_Group_id = userInfo.RB_Group_id;
let msg = {
RB_Branch_Id: RB_Branch_Id, //RB_Branch_Id公司ID
RB_Group_Id: RB_Group_id, //RB_Group_Id集团ID
Status: -1,
ParentId: -1,
Tier: 0
}; };
this.apipost("admin_get_DepartmentGetList", msg, res => { this.addMsg.lineCountryList.push(countryObj);
});
this.apipost(
"line_post_Set",
this.addMsg,
res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
x.departMentList = res.data.data; this.Success("保存成功!");
this.getList();
this.resetForm("addMsg");
this.lineCountryArr = [];
this.isShowDIv = false;
} else {
this.Error(res.data.message);
} }
}); },
} err => {}
}); );
this.getCompanyList = tempCompanyList; },
}, updateData(index) {
//修改线路信息
getOPSelectList(item, RB_Branch_Id) { this.lineCountryArr = [];
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList)); var getInfo = this.DataList[index];
tempCompanyList.forEach(x => { this.addMsg.lineName = getInfo.lineName;
if (x.rB_Branch_id == item.rB_Branch_id) { this.addMsg.lineCode = getInfo.lineCode;
x.seletOpShow = true; this.addMsg.lineShortName = getInfo.lineShortName;
let userInfo = this.getLocalStorage(); getInfo.countryList.forEach(x => {
var RB_Group_id = userInfo.RB_Group_id; this.lineCountryArr.push(x.countryId);
});
this.addMsg.isDirect = getInfo.isDirect;
this.addMsg.isShow = getInfo.isShow;
this.addMsg.lineId = getInfo.lineID;
this.addMsg.Rank = getInfo.rank;
this.addMsg.lowDeposit = getInfo.lowDeposit;
this.addMsg.discountDayNum = getInfo.discountDayNum;
this.addMsg.IsShare = getInfo.isShare;
this.addMsg.Is_PacketGroup = getInfo.is_PacketGroup;
this.addMsg.LineDirection = getInfo.lineDirection;
this.addMsg.BackgroundImage = getInfo.backgroundImage;
this.addMsg.BroadsideImage = getInfo.broadsideImage;
this.addMsg.AppLineIcon = getInfo.appLineIcon;
this.addMsg.RebateMoney = getInfo.rebateMoney;
},
deletelist(lineID) {
var that = this;
this.Confirm("是否删除此线路?", function () {
let msg = { let msg = {
GroupId: userInfo.RB_Group_id, ID: lineID
BranchId: item.rB_Branch_id,
DepartmentId: '-1',
PostId: '-1',
IsLeave: '0'
}; };
this.apipost("admin_get_EmployeeGetList", msg, res => { that.apipost(
if (res.data.resultCode == 1) { "line_post_Remove",
x.employeeList = res.data.data; msg,
} res => {
}); if (res.data.resultCode == 1) {
} that.Success("删除成功");
}); that.getList();
this.getCompanyList = tempCompanyList; }
}, },
err => {}
getSelected(item) { );
if (item.selectDepIdArr.length > 0) {
let joinDepartment = [];
item.selectDepIdArr.forEach(x => {
joinDepartment.push({
departmentId: x,
departmentName: "",
lossAllocation: null
});
}); });
joinDepartment.forEach(x => { },
item.departMentList.forEach(y => { //获取分公司分摊和设置
if (x.departmentId === y.DepartmentID) { getBranchList(lineId) {
x.departmentName = y.DepartmentName; this.isShowTwo = true;
} this.isShowDIv = false;
}); this.upLineId = lineId;
let msg = {
lineId: lineId
};
this.apipost("line_get_all_branch_list", msg, res => {
if (res.data.resultCode == 1) {
this.getCompanyList = res.data.data;
this.getCompanyList.map(x => {
x.inputShow = false;
x.seletShow = false;
x.seletOpShow = false;
x.departMentList = "";
x.employeeList = [];
x.selectDepIdArr = [];
x.selectOpIdArr = [];
if (x.lossAllocation == null && x.inputShow == false) {
x.showSet = true;
} else {
x.showSet = false;
}
if (x.joinDepartment.length == 0 && x.seletShow == false) {
x.showSelectSet = true;
} else {
x.showSelectSet = false;
}
if (x.joinEmployee.length == 0 && x.seletOpShow == false) {
x.showOpSet = true;
} else {
x.showOpSet = false;
}
if (x.joinDepartment.length > 0) {
x.joinDepartment.forEach(y => {
x.selectDepIdArr.push(y.departmentId);
});
}
if (x.joinEmployee.length > 0) {
x.joinEmployee.forEach(y => {
x.selectOpIdArr.push(y.employeeId);
});
}
});
}
}); });
item.joinDepartment = joinDepartment; },
} else { getSelectList(item, RB_Branch_Id) {
item.joinDepartment = []; var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
item.lossAllocation = 0; tempCompanyList.forEach(x => {
item.showSelectSet = true; if (x.rB_Branch_id == item.rB_Branch_id) {
item.seletShow = false; x.seletShow = true;
} let userInfo = this.getLocalStorage();
}, var RB_Group_id = userInfo.RB_Group_id;
getOPSelected(item){ let msg = {
if (item.selectOpIdArr.length > 0) { RB_Branch_Id: RB_Branch_Id, //RB_Branch_Id公司ID
let ckedJoinEmployee = []; RB_Group_Id: RB_Group_id, //RB_Group_Id集团ID
item.selectOpIdArr.forEach(x => { Status: -1,
ckedJoinEmployee.push({ ParentId: -1,
employeeId: x, Tier: 0
employeeName: "", };
}); this.apipost("admin_get_DepartmentGetList", msg, res => {
if (res.data.resultCode == 1) {
x.departMentList = res.data.data;
}
});
}
}); });
ckedJoinEmployee.forEach(x => { this.getCompanyList = tempCompanyList;
item.employeeList.forEach(y => { },
if (x.employeeId === y.EmployeeId) {
x.employeeName = y.EmName; getOPSelectList(item, RB_Branch_Id) {
} var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
}); tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
x.seletOpShow = true;
let userInfo = this.getLocalStorage();
var RB_Group_id = userInfo.RB_Group_id;
let msg = {
GroupId: userInfo.RB_Group_id,
BranchId: item.rB_Branch_id,
DepartmentId: '-1',
PostId: '-1',
IsLeave: '0'
};
this.apipost("admin_get_EmployeeGetList", msg, res => {
if (res.data.resultCode == 1) {
x.employeeList = res.data.data;
}
});
}
}); });
item.joinEmployee = ckedJoinEmployee; this.getCompanyList = tempCompanyList;
} else { },
item.joinEmployee = [];
item.showOpSet = true; getSelected(item) {
item.seletOpShow = false; if (item.selectDepIdArr.length > 0) {
} let joinDepartment = [];
}, item.selectDepIdArr.forEach(x => {
setInput(item) { joinDepartment.push({
item.inputShow = false; departmentId: x,
if (item.lossAllocation == null) { departmentName: "",
item.showSet = true; lossAllocation: null
} });
},
clickedSet(item) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
(x.inputShow = true), (x.showSet = false);
}
});
this.getCompanyList = tempCompanyList;
},
clickedSelectSet(item) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
let userInfo = this.getLocalStorage();
var RB_Group_id = userInfo.RB_Group_id;
let msg = {
RB_Branch_Id: item.rB_Branch_id, //RB_Branch_Id公司ID
RB_Group_Id: RB_Group_id, //RB_Group_Id集团ID
Status: -1,
ParentId: -1,
Tier: 0
};
this.apipost("admin_get_DepartmentGetList", msg, res => {
if (res.data.resultCode == 1) {
x.departMentList = res.data.data;
}
}); });
(x.seletShow = true), (x.showSelectSet = false); joinDepartment.forEach(x => {
item.departMentList.forEach(y => {
if (x.departmentId === y.DepartmentID) {
x.departmentName = y.DepartmentName;
}
});
});
item.joinDepartment = joinDepartment;
} else {
item.joinDepartment = [];
item.lossAllocation = 0;
item.showSelectSet = true;
item.seletShow = false;
} }
}); },
this.getCompanyList = tempCompanyList; getOPSelected(item) {
}, if (item.selectOpIdArr.length > 0) {
//点击设置OP开始设置 let ckedJoinEmployee = [];
clickedOpSet(item){ item.selectOpIdArr.forEach(x => {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList)); ckedJoinEmployee.push({
tempCompanyList.forEach(x => { employeeId: x,
if (x.rB_Branch_id == item.rB_Branch_id) { employeeName: "",
let userInfo = this.getLocalStorage(); });
var RB_Group_id = userInfo.RB_Group_id; });
let msg = { ckedJoinEmployee.forEach(x => {
GroupId: userInfo.RB_Group_id, item.employeeList.forEach(y => {
BranchId: item.rB_Branch_id, if (x.employeeId === y.EmployeeId) {
DepartmentId: '-1', x.employeeName = y.EmName;
PostId: '-1', }
IsLeave: '0' });
};
this.apipost("admin_get_EmployeeGetList", msg, res => {
if (res.data.resultCode == 1) {
x.employeeList = res.data.data;
}
}); });
(x.seletOpShow = true), (x.showOpSet = false); item.joinEmployee = ckedJoinEmployee;
} else {
item.joinEmployee = [];
item.showOpSet = true;
item.seletOpShow = false;
} }
}); },
this.getCompanyList = tempCompanyList; setInput(item) {
}, item.inputShow = false;
clearInfo() { if (item.lossAllocation == null) {
this.addMsg = { item.showSet = true;
lineId: 0,
lineName: "",
lineCode: "",
isDirect: "",
isShow: "",
IsShare: 0,
lineCountryList: [],
Is_PacketGroup: 0,
LineDirection:2,
};
this.lineCountryArr = [];
},
displayInput(item) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
x.inputShow = true;
} }
}); },
this.getCompanyList = tempCompanyList; clickedSet(item) {
}, var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
saveCompany() { tempCompanyList.forEach(x => {
var lineBranchList = []; if (x.rB_Branch_id == item.rB_Branch_id) {
var lineBranchOPList = []; (x.inputShow = true), (x.showSet = false);
this.getCompanyList.forEach(x => { }
if (x.joinDepartment.length > 0) { });
x.joinDepartment.forEach(y => { this.getCompanyList = tempCompanyList;
var lineBranch = { },
rB_Branch_id: x.rB_Branch_id, clickedSelectSet(item) {
departmentId: y.departmentId, var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
lossAllocation: x.lossAllocation tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
let userInfo = this.getLocalStorage();
var RB_Group_id = userInfo.RB_Group_id;
let msg = {
RB_Branch_Id: item.rB_Branch_id, //RB_Branch_Id公司ID
RB_Group_Id: RB_Group_id, //RB_Group_Id集团ID
Status: -1,
ParentId: -1,
Tier: 0
}; };
lineBranchList.push(lineBranch); this.apipost("admin_get_DepartmentGetList", msg, res => {
}); if (res.data.resultCode == 1) {
} x.departMentList = res.data.data;
if(x.joinEmployee.length>0){ }
x.joinEmployee.forEach(y => { });
var opBranch = { (x.seletShow = true), (x.showSelectSet = false);
rB_Branch_id: x.rB_Branch_id, }
EmployeeId: y.employeeId });
this.getCompanyList = tempCompanyList;
},
//点击设置OP开始设置
clickedOpSet(item) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
let userInfo = this.getLocalStorage();
var RB_Group_id = userInfo.RB_Group_id;
let msg = {
GroupId: userInfo.RB_Group_id,
BranchId: item.rB_Branch_id,
DepartmentId: '-1',
PostId: '-1',
IsLeave: '0'
}; };
lineBranchOPList.push(opBranch); this.apipost("admin_get_EmployeeGetList", msg, res => {
}); if (res.data.resultCode == 1) {
} x.employeeList = res.data.data;
}); }
});
(x.seletOpShow = true), (x.showOpSet = false);
}
});
this.getCompanyList = tempCompanyList;
},
clearInfo() {
this.addMsg = {
lineId: 0,
lineName: "",
lineCode: "",
isDirect: "",
isShow: "",
IsShare: 0,
lineCountryList: [],
Is_PacketGroup: 0,
LineDirection: 2,
};
this.lineCountryArr = [];
},
displayInput(item) {
var tempCompanyList = JSON.parse(JSON.stringify(this.getCompanyList));
tempCompanyList.forEach(x => {
if (x.rB_Branch_id == item.rB_Branch_id) {
x.inputShow = true;
}
});
this.getCompanyList = tempCompanyList;
},
saveCompany() {
var lineBranchList = [];
var lineBranchOPList = [];
this.getCompanyList.forEach(x => {
if (x.joinDepartment.length > 0) {
x.joinDepartment.forEach(y => {
var lineBranch = {
rB_Branch_id: x.rB_Branch_id,
departmentId: y.departmentId,
lossAllocation: x.lossAllocation
};
lineBranchList.push(lineBranch);
});
}
if (x.joinEmployee.length > 0) {
x.joinEmployee.forEach(y => {
var opBranch = {
rB_Branch_id: x.rB_Branch_id,
EmployeeId: y.employeeId
};
lineBranchOPList.push(opBranch);
});
}
});
let msg = { let msg = {
lineId: this.upLineId, lineId: this.upLineId,
lineBranchList: lineBranchList, lineBranchList: lineBranchList,
lineBranchOPList: lineBranchOPList lineBranchOPList: lineBranchOPList
}; };
this.apipost( this.apipost(
"line_Set_join_branch", "line_Set_join_branch",
msg, msg,
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Success(res.data.message); this.Success(res.data.message);
this.isShowTwo = false; this.isShowTwo = false;
}
},
err => {}
);
},
submitForm(addMsg) {
//提交创建、修改表单
this.$refs[addMsg].validate(valid => {
if (valid) {
this.addLine();
} else {
return false;
} }
}, });
err => {} },
); handleCurrentChange(val) {
}, //翻页功能按钮
submitForm(addMsg) { this.msg.pageIndex = val;
//提交创建、修改表单 this.getList();
this.$refs[addMsg].validate(valid => { },
if (valid) { resetPageIndex() {
this.addLine(); //查询初始化页码
} else { this.msg.pageIndex = 1;
return false; this.currentPage = 1;
},
closeChangeMachie(done) {
done();
this.resetForm("addMsg");
},
resetForm(formName) {
this.$refs[formName].resetFields();
},
getCompanyJoinDepName(depList) {
let returnStr = "";
if (depList.length > 0) {
let depName = [];
depList.forEach(x => {
depName.push(x.departmentName);
});
returnStr = depName.join(",");
} }
}); return returnStr;
}, },
handleCurrentChange(val) { closeDepOption(item) {
//翻页功能按钮 this.getCompanyList.forEach(x => {
this.msg.pageIndex = val; x.seletShow = false;
this.getList(); if (x.selectDepIdArr.length == 0) {
}, x.showSelectSet = true;
resetPageIndex() { }
//查询初始化页码 });
this.msg.pageIndex = 1; },
this.currentPage = 1; closeOpTion() {
}, this.getCompanyList.forEach(x => {
closeChangeMachie(done) { x.seletOpShow = false;
done(); if (x.selectOpIdArr.length == 0) {
this.resetForm("addMsg"); x.showOpSet = true;
}, }
resetForm(formName) {
this.$refs[formName].resetFields();
},
getCompanyJoinDepName(depList) {
let returnStr = "";
if (depList.length > 0) {
let depName = [];
depList.forEach(x => {
depName.push(x.departmentName);
}); });
returnStr = depName.join(",");
} }
return returnStr;
}, },
closeDepOption(item) { mounted() {
this.getCompanyList.forEach(x => { this.getList();
x.seletShow = false; this.getCountry();
if (x.selectDepIdArr.length == 0) {
x.showSelectSet = true;
}
});
}, },
closeOpTion(){ filters: {
this.getCompanyList.forEach(x => { getJoinDepName: function (depList) {
x.seletOpShow = false; let returnStr = "";
if (x.selectOpIdArr.length == 0) { if (depList.length > 0) {
x.showOpSet = true; let depName = [];
depList.forEach(x => {
depName.push(x.departmentName);
});
returnStr = depName.join(",");
} }
}); return returnStr;
} },
}, getJoinEmpName: function (depList) {
mounted() { let returnStr = "";
this.getList(); if (depList.length > 0) {
this.getCountry(); let depName = [];
}, depList.forEach(x => {
filters: { depName.push(x.employeeName);
getJoinDepName: function(depList) { });
let returnStr = ""; returnStr = depName.join(",");
if (depList.length > 0) { }
let depName = []; return returnStr;
depList.forEach(x => {
depName.push(x.departmentName);
});
returnStr = depName.join(",");
}
return returnStr;
},
getJoinEmpName:function(depList){
let returnStr = "";
if (depList.length > 0) {
let depName = [];
depList.forEach(x => {
depName.push(x.employeeName);
});
returnStr = depName.join(",");
} }
return returnStr;
} }
} };
};
</script>
</script>
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