Commit 835196e0 authored by zhengke's avatar zhengke
parents 237dd23d 62fcdb84
src/assets/img/im/andoriod.png

7.33 KB | W: | H:

src/assets/img/im/andoriod.png

6.96 KB | W: | H:

src/assets/img/im/andoriod.png
src/assets/img/im/andoriod.png
src/assets/img/im/andoriod.png
src/assets/img/im/andoriod.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -182,14 +182,14 @@ ...@@ -182,14 +182,14 @@
<p class="_yewudanju" v-if="OrderSource==8">{{$t('hotel.order_Number')}}<span @click="msg.OrderID>0?jumpPage('RegistrationList',GetDetail,8):''">{{msg.OrderID==0?$t('fnc.no'):msg.OrderID}}</span></p> <p class="_yewudanju" v-if="OrderSource==8">{{$t('hotel.order_Number')}}<span @click="msg.OrderID>0?jumpPage('RegistrationList',GetDetail,8):''">{{msg.OrderID==0?$t('fnc.no'):msg.OrderID}}</span></p>
<div class="rb_top_row _r_mb5"> <div class="rb_top_row _r_mb5">
<el-radio-group v-model="msg.IsPublic" @change="IsPublicChange" class="_IsPublic"> <el-radio-group v-model="msg.IsPublic" @change="IsPublicChange" class="_IsPublic">
<el-radio :label="1" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.gongzhang')}}</el-radio> <el-radio :label="1" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.gongzhang')}}</el-radio>
<el-radio :label="0" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.sizhang')}}</el-radio> <el-radio :label="0" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.sizhang')}}</el-radio>
<el-radio :label="2" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.rmbxianjin')}}</el-radio> <el-radio :label="2" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.rmbxianjin')}}</el-radio>
<el-radio :label="3" v-if='msg.TemplateId!==36 && msg.TemplateId!==37'>{{$t('fnc.wbxianjin')}}</el-radio> <el-radio :label="3" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48'>{{$t('fnc.wbxianjin')}}</el-radio>
<el-radio :label="4" v-if='msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===43'>{{$t('fnc.zjinchi')}}</el-radio> <el-radio :label="4" v-if='msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===48'>{{$t('fnc.zjinchi')}}</el-radio>
<el-radio :label="5" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.ptxnzhanghu')}}</el-radio> <el-radio :label="5" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.ptxnzhanghu')}}</el-radio>
<el-radio :label="6" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.djxnzhanghu')}}</el-radio> <el-radio :label="6" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.djxnzhanghu')}}</el-radio>
<el-radio :label="7" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43'>{{$t('fnc.szxiangdi')}}</el-radio> <el-radio :label="7" v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'>{{$t('fnc.szxiangdi')}}</el-radio>
<!-- <el-radio :label="3">资金池</el-radio> --> <!-- <el-radio :label="3">资金池</el-radio> -->
</el-radio-group> </el-radio-group>
</div> </div>
......
...@@ -536,6 +536,9 @@ ...@@ -536,6 +536,9 @@
<el-form-item :label="$t('hotel.hotel_remark')" v-if="addMsg.LeaderGuidClass==0"> <el-form-item :label="$t('hotel.hotel_remark')" v-if="addMsg.LeaderGuidClass==0">
<el-input type="textarea" v-model="addMsg.Remarks" class="w210"></el-input> <el-input type="textarea" v-model="addMsg.Remarks" class="w210"></el-input>
</el-form-item> </el-form-item>
<el-form-item v-if="addMsg.LeaderGuidClass==1" label="密码">
<el-input type="password" v-model="addMsg.EmPassword" class="w210"></el-input>
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp; <button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp;
...@@ -1110,6 +1113,7 @@ export default { ...@@ -1110,6 +1113,7 @@ export default {
}, },
//修改 //修改
updateData(ID) { updateData(ID) {
console.log("updateData")
this.LanguageIdS = []; this.LanguageIdS = [];
this.apipost( this.apipost(
"leader_post_Get", "leader_post_Get",
...@@ -1119,6 +1123,7 @@ export default { ...@@ -1119,6 +1123,7 @@ export default {
res => { res => {
let LanguageIdArr = []; let LanguageIdArr = [];
this.addMsg = res.data.data; this.addMsg = res.data.data;
this.addMsg.LeaderGuidClass = this.addMsg.LeaderGuidClass ? this.addMsg.LeaderGuidClass : 0; this.addMsg.LeaderGuidClass = this.addMsg.LeaderGuidClass ? this.addMsg.LeaderGuidClass : 0;
this.addMsg.Type = this.addMsg.Type.toString(); this.addMsg.Type = this.addMsg.Type.toString();
this.addMsg.Sex = this.addMsg.Sex.toString(); this.addMsg.Sex = this.addMsg.Sex.toString();
...@@ -1138,7 +1143,9 @@ export default { ...@@ -1138,7 +1143,9 @@ export default {
this.LanguageIdS.push(Number(x)); this.LanguageIdS.push(Number(x));
}); });
} }
this.addMsg.EmPassword="";
// this.getCityList(); // this.getCityList();
console.log("this.addMsg",this.addMsg)
}, },
err => {} err => {}
); );
......
...@@ -123,6 +123,7 @@ ...@@ -123,6 +123,7 @@
<td width="80">实际用房数</td> <td width="80">实际用房数</td>
<td width="">房间类型</td> <td width="">房间类型</td>
<td width="">房间数</td> <td width="">房间数</td>
<td width="80">预定人数</td>
<td width="80">免费人数</td> <td width="80">免费人数</td>
<td width="">单价/人</td> <td width="">单价/人</td>
<td width="">金额小计</td> <td width="">金额小计</td>
...@@ -172,6 +173,15 @@ ...@@ -172,6 +173,15 @@
</div> </div>
</div> </div>
</td> </td>
<td>
<div class="alcenter">
<div v-for="subItem in outItem.HotelOrderList">
<p v-for="childItem in subItem.OrderDetailsList">
{{childItem.BookNum}}
</p>
</div>
</div>
</td>
<td> <td>
<div class="alcenter"> <div class="alcenter">
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
...@@ -218,8 +228,9 @@ ...@@ -218,8 +228,9 @@
<td> <td>
<div v-for="subItem in outItem.HotelOrderList"> <div v-for="subItem in outItem.HotelOrderList">
<span v-if="subItem.PayStyle === 1">现付</span> <span v-if="subItem.PayStyle === 1">现付</span>
<span v-else-if="subItem.PayStyle === 2">公司结算</span> <span v-else-if="subItem.PayStyle === 2">签单</span>
<span v-else-if="subItem.PayStyle === 3">预付</span> <span v-else-if="subItem.PayStyle === 4">预付</span>
<span v-else-if="subItem.PayStyle === 5">实物抵扣</span>
<span v-else>暂无</span> <span v-else>暂无</span>
</div> </div>
</td> </td>
...@@ -239,7 +250,7 @@ ...@@ -239,7 +250,7 @@
{{moneyFormat(TotalNav.reimburseTotalPrice.ExpendTotalPrice)}} {{moneyFormat(TotalNav.reimburseTotalPrice.ExpendTotalPrice)}}
</td> </td>
<td>签单/预付/抵扣总金额</td> <td>签单/预付/抵扣总金额</td>
<td colspan="6"> <td colspan="7">
{{moneyFormat(TotalNav.reimburseTotalPrice.BalanceTotalPrice)}} {{moneyFormat(TotalNav.reimburseTotalPrice.BalanceTotalPrice)}}
</td> </td>
</tr> </tr>
...@@ -509,7 +520,6 @@ ...@@ -509,7 +520,6 @@
}); });
}, },
goZhiDan: function (obj) { goZhiDan: function (obj) {
console.log(this.TotalNav.reimburseTotalPrice.PlanPrice)
let allMoney = this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95 let allMoney = this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95
let totailMoney = 0 let totailMoney = 0
this.nav.forEach(x=>{ this.nav.forEach(x=>{
...@@ -530,7 +540,7 @@ ...@@ -530,7 +540,7 @@
Money: obj.LeaderGetPriceT, Money: obj.LeaderGetPriceT,
TCNUMS: obj.TCNUMS TCNUMS: obj.TCNUMS
} }
let id = [43] let id = [43,48]
this.$router.push({ this.$router.push({
name: 'ChoiceAddFinancialDocuments', name: 'ChoiceAddFinancialDocuments',
query:{ query:{
...@@ -688,6 +698,8 @@ ...@@ -688,6 +698,8 @@
nav.forEach((x, i)=>{ nav.forEach((x, i)=>{
if (i === 0) { if (i === 0) {
x.LeaderGetPriceT = (this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95) - num; x.LeaderGetPriceT = (this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95) - num;
} else {
x.LeaderGetPriceT = 0
} }
}) })
this.nav = nav this.nav = nav
......
...@@ -555,6 +555,7 @@ ...@@ -555,6 +555,7 @@
<tr> <tr>
<th width="100">日期</th> <th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5">酒店情况</th> <th style="border-right:1px solid #E5E5E5">酒店情况</th>
<th style="border-right:1px solid #E5E5E5">占房时间</th>
</tr> </tr>
</table> </table>
<div> <div>
...@@ -567,7 +568,7 @@ ...@@ -567,7 +568,7 @@
<template v-if="subItem.SubList"> <template v-if="subItem.SubList">
<div v-if="subItem.SubList.length==1 && subItem.SubList[0].UseCount>0 "> <div v-if="subItem.SubList.length==1 && subItem.SubList[0].UseCount>0 ">
{{subItem.SubList[0].HotelName}} {{subItem.SubList[0].HotelName}}
<a style="color:green">【OK】</a> <a style="color:green">{{subItem.SubList[0].RemainingInventory>-3?"【OK】":"【暂定】"}}</a>
<a <a
style="color:green"> 本团使用库存:{{subItem.SubList[0].UseCount}} style="color:green"> 本团使用库存:{{subItem.SubList[0].UseCount}}
{{subItem.SubList[0].CostPrice!=0?"价格:"+subItem.SubList[0].CostPrice:""}}</a></div> {{subItem.SubList[0].CostPrice!=0?"价格:"+subItem.SubList[0].CostPrice:""}}</a></div>
...@@ -576,6 +577,16 @@ ...@@ -576,6 +577,16 @@
</template> </template>
</template> </template>
</td> </td>
<td>
<template v-if="subItem.SubList">
<div v-if="subItem.SubList.length==1 && subItem.SubList[0].UseCount>0 ">
{{subItem.SubList[0].CreateDateStr}}
</div>
<template v-else v-for="childItem in subItem.SubList">
<div></div>
</template>
</template>
</td>
</tr> </tr>
</table> </table>
</div> </div>
...@@ -1131,7 +1142,6 @@ ...@@ -1131,7 +1142,6 @@
//新获取列表数据 //新获取列表数据
getControlList() { getControlList() {
var msg = JSON.parse(JSON.stringify(this.queryMsg)) var msg = JSON.parse(JSON.stringify(this.queryMsg))
if (msg.TeamMinNum == '') { if (msg.TeamMinNum == '') {
msg.TeamMinNum = -1 msg.TeamMinNum = -1
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<style> <style>
.user_time_picker .el-date-editor--date>.el-input__inner { .user_time_picker .el-date-editor--date>.el-input__inner {
padding:0 10px; padding:0 10px;
font-size: 13px; font-size: 13px;
} }
.user_time_picker .el-date-editor--date>span.el-input__prefix { .user_time_picker .el-date-editor--date>span.el-input__prefix {
display: none; display: none;
} }
.user_time_picker .el-date-editor--date>span.el-input__suffix{ .user_time_picker .el-date-editor--date>span.el-input__suffix{
top:-4px;right: 2px; top:-4px;right: 2px;
} }
.zidingyiFz i{font-size: 14px!important;} .zidingyiFz i{font-size: 14px!important;}
</style> </style>
<template> <template>
<div class="flexOne"> <div class="flexOne">
<div class="query-box"> <div class="query-box">
<div style="overflow:auto"> <div style="overflow:auto">
<input type="button" class="normalBtn" value="添加" style="float:right"/> <input type="button" class="normalBtn" value="添加" style="float:right" @click="ResetPwdForm(),Visible=true"/>
</div> </div>
</div> </div>
<div class="clearfix"></div> <div class="clearfix"></div>
<!-- <div style="margin: 10px 0;" class="fz14 color333">{{$t('adm.adm_Validaccount')}}:<span class="colorE95252">{{UseNum}}</span>&nbsp;&nbsp;&nbsp;&nbsp;账号限额:<span class="colorE95252">{{TotalNum}}</span></div> --> <!-- <div style="margin: 10px 0;" class="fz14 color333">{{$t('adm.adm_Validaccount')}}:<span class="colorE95252">{{UseNum}}</span>&nbsp;&nbsp;&nbsp;&nbsp;账号限额:<span class="colorE95252">{{TotalNum}}</span></div> -->
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0"> <table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th>{{$t('system.table_company')}}</th> <th>公司</th>
<th>{{$t('admin.admin_Department')}}</th> <th>部门</th>
<th>{{$t('admin.admin_Post')}}</th> <th>岗位</th>
<th>{{$t('system.query_name')}}</th> <th>姓名</th>
<th>{{$t('system.table_sex')}}</th> <th>头像</th>
<th>{{$t('system.table_acc')}}</th> <th>性别</th>
<th>{{$t('adm.adm_logintel')}}</th> <th>精通线路</th>
<th>{{$t('admin.admin_Entrytime')}}</th> <th>操作</th>
<th>{{$t('admin.admin_Departuretime')}}</th> </tr>
<th>{{$t('admin.admin_operate')}}</th> <tr v-for="(item,index) in DataList" :key="index" v-loading='loading'>
</tr> <td>{{item.bName}}</td>
<tr v-for="(item,index) in DataList" v-loading='loading'> <td>{{item.departmentName}}</td>
<td>{{item.BranchName}}</td> <td>{{item.postName}}</td>
<td>{{item.DepartName}}</td> <td>{{item.emName}}</td>
<td>{{item.PostName}}</td> <td style="padding:4px 0"><img style="width:30px;height:30px;border-radius:50%" :src="item.emPhoto" alt=""></td>
<td>{{item.EmName}}</td> <td>
<td>{{item.EmSex==0 ? $t('pub.man') :$t('pub.woman')}}</td> <span v-if="item.emSex==1"></span>
<td>{{item.EmAccount}}</td> <span v-if="item.emSex==0"></span>
<td>{{item.EmLoginMobile}}</td> </td>
<td>{{item.EmEntry}}</td> <td>{{item.masterLine}}</td>
<td>{{item.EmLeave | leaveTimeFormat(item.EmLeave)}}</td>
<td> <td>
<el-tooltip class="item" effect="dark" :content="$t('adm.adm_changeUserInfo')" placement="top"> <el-tooltip class="item" effect="dark" content="修改" placement="top">
<el-button type="primary" icon="el-icon-edit" circle @click="outerVisible=true,dialogTitle='修改用户信息',updateData(item.EmployeeId),getCompany()"></el-button> <el-button type="primary" icon="el-icon-edit" circle @click="Visible=true,Edit(item)"></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('adm.adm_bindaccountinfo')" placement="top"> <el-tooltip class="item" effect="dark" content="删除" placement="top">
<el-button type="primary" class='zidingyiFz' icon="iconfont icon-bangdingzhagnhuxinxi" circle @click="goUrl('empBankAccount',item.EmployeeId)"></el-button> <el-button @click="Delete(item)" type="danger" class='zidingyiFz' icon="el-icon-delete" circle ></el-button>
</el-tooltip> </el-tooltip>
</td> </td>
</tr> </tr>
</table> </table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total> <el-pagination background @current-change="handleCurrentChange" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination> </el-pagination>
<el-dialog custom-class='w800' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie"> <el-dialog custom-class='w400' title="行程定制师" :visible.sync="Visible">
<el-form :model="pwdMsg" label-width="80px" :rules="rulesPwd" ref="pwdMsg">
<el-dialog custom-class='w400' :title="$t('adm.adm_changepd')" :visible.sync="innerVisible" center append-to-body :before-close="closeChangeMachie1"> <el-form-item label="员工ID" prop="employeeId">
<el-form :model="pwdMsg" label-width="100px" :rules="rulesPwd" ref="pwdMsg"> <el-select class='w217' v-model="pwdMsg.employeeId" placeholder="请选择">
<el-form-item :label="$t('system.table_staffs')" prop="EmName"> <el-option v-for="item in employee" :key="item.employeeId" :label="`${item.bName} ${item.departmentName}(${item.name})`" :value="item.employeeId"></el-option>
<el-input class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')" readonly></el-input> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.table_acc')" prop="EmAccount"> <el-form-item label="排序">
<el-input class='w217' type="text" v-model="addMsg.EmAccount" :placeholder="$t('pub.pleaseImport')" readonly></el-input> <el-input class='w217' v-model="pwdMsg.rank" placeholder=""></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="$t('adm.adm_newPd')" prop="Pwd"> <el-form-item label="精通线路" prop="masterLine">
<el-input class='w217' type="password" v-model="pwdMsg.Pwd" :placeholder="$t('pub.pleaseImport')"></el-input> <el-input class='w217' v-model="pwdMsg.masterLine" placeholder=""></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="$t('adm.adm_Reinput')" prop="Pwd1"> </el-form>
<el-input class='w217' type="password" v-model="pwdMsg.Pwd1" :placeholder="$t('pub.pleaseImport')"></el-input> <div slot="footer" class="dialog-footer">
</el-form-item> <button class="hollowFixedBtn" @click="Visible=false">取消</button>
</el-form> <button class="normalBtn" @click="submitForm1('pwdMsg')">确定</button>
<div slot="footer" class="dialog-footer"> </div>
<button class="hollowFixedBtn" @click="innerVisible=false,resetForm('pwdMsg')">{{$t('pub.cancelBtn')}}</button> </el-dialog>
<button class="normalBtn" @click="submitForm1('pwdMsg')">{{$t('pub.sureBtn')}}</button>
</div> </div>
</el-dialog> </template>
<script>
<el-dialog custom-class='w400' :title="$t('adm.adm_changelogintel')" :visible.sync="updateLoginMobile" center append-to-body :before-close="closeChangeMachieulm"> export default {
<el-form :model="ulmMsg" label-width="100px" :rules="rulesulm" ref="ulmMsg"> data() {
<el-form-item :label="$t('adm.adm_staff')" prop="EmName">
<el-input class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')" readonly></el-input>
</el-form-item> return {
<el-form-item :label="$t('adm.adm_logintel')" prop="EmAccount"> Visible:false,
<el-input class='w217' type="text" v-model="EmLoginMobile" :placeholder="$t('pub.pleaseImport')" readonly></el-input> total:0,
</el-form-item> DataList:[],
<el-form-item :label="$t('adm.adm_newphone')" prop="LoginMobile"> loading:false,
<el-input class='w217' type="text" v-model="ulmMsg.LoginMobile" :placeholder="$t('pub.pleaseImport')"></el-input> msg:{
</el-form-item> pageIndex:1,
<el-form-item :label="$t('adm.adm_Reinput')" prop="LoginMobile1"> pageSize:15
<el-input class='w217' type="text" v-model="ulmMsg.LoginMobile1" :placeholder="$t('pub.pleaseImport')"></el-input> },
</el-form-item> pwdMsg:{
</el-form> id:'0',
<div slot="footer" class="dialog-footer"> employeeId:"",
<button class="hollowFixedBtn" @click="updateLoginMobile=false,resetForm('ulmMsg')">{{$t('pub.cancelBtn')}}</button> masterLine:"",
<button class="normalBtn" @click="submitFormulm('ulmMsg')">{{$t('pub.sureBtn')}}</button> rank:"",
</div> },
</el-dialog> rulesPwd:{
employeeId: [
{ required: true, message: '请输入员工ID', trigger: 'blur' }
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px" > ],
<table class="layerTable layerNoIcon"> masterLine: [
<tr> { required: true, message: '请输入精通线路', trigger: 'blur' }
<td> ]
<el-form-item :label="$t('system.table_company')" prop="RB_Branch_id"> },
<el-select filterable class='w217' v-model='addMsg.RB_Branch_id' @change='layerLinkageDepartment()' :placeholder="$t('pub.pleaseSel')"> employee:[],
<el-option v-for='item in layerCompanyList'
:label='item.BName' }
:value='item.Id' },
:key='item.Id'> mounted() {
</el-option> let userInfo=this.getLocalStorage();
</el-select> this.getList();
</el-form-item> this.getEmployee();
</td> },
<td>
<el-form-item :label="$t('admin.admin_Department')" prop="RB_Department_Id">
<el-select filterable class='w217' v-model='addMsg.RB_Department_Id' @change='layerLinkagePost()' :placeholder="$t('pub.pleaseSel')"> methods: {
<el-option v-for='item in layerDepartMentList' Edit(item){
:label='item.DepartmentName' console.log(item)
:value='item.DepartmentID' this.pwdMsg=Object.assign({},item);
:key='item.DepartmentID'> },
</el-option> ResetPwdForm(){
</el-select> this.pwdMsg={
</el-form-item> id:'0',
</td> employeeId:"",
</tr> masterLine:"",
<tr> rank:"",
<td> }
<el-form-item :label="$t('admin.admin_Post')" prop="RB_Post_Id">
<el-select filterable class='w217' v-model='addMsg.RB_Post_Id' :placeholder="$t('pub.pleaseSel')"> },
<el-option v-for='item in layerPostList' submitForm1(formName) {
:label='item.PostName' this.$refs[formName].validate((valid) => {
:value='item.PostId' if (valid) {
:key='item.PostId'> this.apiJavaPost("/api/user/employee/setTripCustom",this.pwdMsg, res => {
</el-option> console.log(res);
</el-select> if (res.data.resultCode === 1) {
</el-form-item> this.Success(res.data.message)
</td> this.Visible=false;
<td> this.getList();
<el-form-item :label="$t('system.query_name')" prop="EmName"> } else {
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')"></el-input> this.Error(res.data.message)
</el-form-item> }
</td> }, null);
</tr>
<tr> } else {
<td>
<el-form-item :label="$t('system.table_IDcard')" prop="EmCard"> }
<el-input class='w217' type="text" v-model="addMsg.EmCard" :placeholder="$t('pub.pleaseImport')"></el-input> });
</el-form-item> },
<!--<span><em></em>身份证</span><input v-model="addMsg.EmCard" class="layerText" type="text">--> Delete(item){
</td> this.$confirm('是否删除?', '提示', {
<td> confirmButtonText: '确定',
<el-form-item :label="$t('leader.leader_Sex')" prop="EmSex"> cancelButtonText: '取消',
<el-select class='w217' filterable v-model='addMsg.EmSex' :placeholder="$t('pub.pleaseSel')"> type: 'warning'
<el-option :label="$t('pub.man')" value='0'></el-option> }).then(() => {
<el-option :label="$t('pub.woman')" value='1'></el-option> this.apiJavaPost("/api/user/employee/deleteTripCustom",{id:item.id}, res => {
</el-select> if (res.data.resultCode === 1) {
</el-form-item> this.Success(res.data.message)
</td> this.getList();
</tr> } else {
<tr> this.Error(res.data.message)
<td> }
<el-form-item :label="$t('admin.admin_xueli')" prop="EmEducation"> }, null);
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmEducation" :placeholder="$t('pub.pleaseImport')"></el-input> }).catch(() => {
</el-form-item>
</td> });
<td>
<el-form-item :label="$t('admin.admin_Entrytime')" prop="EmEntry"> },
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmEntry' type="date"></el-date-picker> getList() { //获取数据
</el-form-item> this.loading=true,
</td> this.apiJavaPost("/api/user/employee/getTripCustomList",this.msg, res => {
</tr> this.loading = false;
<tr> console.log(res);
<td> if (res.data.resultCode === 1) {
<el-form-item :label="$t('admin.admin_Departuretime')" prop="EmLeave"> this.DataList = res.data.data.pageData;
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmLeave' type="date" disabled></el-date-picker> this.total= res.data.data.count;
</el-form-item> } else {
</td> this.Error(res.data.message)
<td> }
<el-form-item :label="$t('hotel.table_address')" prop="EmAddress"> }, null);
<el-input maxlength='50' class='w217' type="text" v-model="addMsg.EmAddress" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item> },
</td> getEmployee(){
</tr> this.apiJavaPost("/api/user/employee/getAllSalesList",{}, res => {
<tr> console.log(res);
<td> if (res.data.resultCode === 1) {
<el-form-item :label="$t('system.table_phone')" prop="EmMobile"> this.employee=res.data.data;
<el-input class='w217' type="text" v-model="addMsg.EmMobile" :placeholder="$t('pub.pleaseImport')"></el-input> } else {
</el-form-item> this.Error(res.data.message)
</td> }
<td> }, null);
<el-form-item :label="$t('hotel.hotel_landline')" prop="EmTel"> },
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmTel" :placeholder="$t('pub.pleaseImport')"></el-input> handleCurrentChange(){
</el-form-item>
</td> },
</tr> }
<tr> }
<td>
<el-form-item label="QQ" prop="EmQQ">
<el-input class='w217' type="text" v-model="addMsg.EmQQ" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_Birthday')" prop="EmBirthday">
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmBirthday' type="date"></el-date-picker>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('system.table_acc')" prop="EmAccount">
<el-input class='w217' type="text" v-model="addMsg.EmAccount" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_password')" prop="EmPassword">
<el-input v-if='!isleaveBtn' class='w217' type="text" v-model="addMsg.EmPassword" :placeholder="$t('pub.pleaseImport')"></el-input>
<input type="button" :value="$t('adm.adm_resetpd')" v-if='isleaveBtn' class="normalBtn" @click="innerVisible=true,resetForm('pwdMsg')" />
</el-form-item>
</td>
</tr>
</table>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false,resetForm('addMsg')">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp;
<button v-if='isleaveBtn' class="normalBtn" @click="setIsLeave(leaveId)">{{leaveBtn}}</button>
<button v-if="isleaveBtn&&EmLoginMobile!=''" class="normalBtn" @click="updateLoginMobile=true,resetForm('ulmMsg')">修改登录手机</button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
let validatorPwd1=(rule, value, callback)=>{
if(this.pwdMsg.Pwd!=''&&this.pwdMsg.Pwd!=this.pwdMsg.Pwd1){
return callback(new Error(this.$t('adm.adm_twopdnotsame')));
}else{
callback();
}
}
let validatorulm=(rule, value, callback)=>{
if(this.ulmMsg.LoginMobile!=''&&this.ulmMsg.LoginMobile!=this.ulmMsg.LoginMobile1){
return callback(new Error(this.$t('adm.adm_twotelphnotsame')));
}else{
callback();
}
}
return {
UseNum:0,
TotalNum:0,
leaveBtn:'',
leaveId:'',
loading:true,
isleaveBtn:false,
total: 0,
pageSize: '',
currentPage: 1,
outerVisible: false,
innerVisible: false,
updateLoginMobile: false,
isRight: true,
dialogTitle: '',
insideDialogTxt: '',
//请求
msg: {
pageIndex: 1,
pageSize: 15,
EmName: '',
EmAccount: '',
RB_Group_id: '0',
RB_Branch_id: '-1',
RB_Department_Id: '0',
RB_Post_Id: '0',
Status: '0',
sEmEntry: '',
eEmEntry: '',
sEmLeave: '',
eEmLeave: '',
IsParentCompany:2
},
rules:{
RB_Branch_id:[
{ required: true, message: this.$t('rule.company'), trigger: 'change' }
],
RB_Department_Id:[
{ required: true, message: this.$t('tips.qxzbumen'), trigger: 'change' }
],
RB_Post_Id:[
{ required: true, message: this.$t('tips.qxzgangwei'), trigger: 'change' }
],
EmName:[
{ required: true, message: this.$t('rule.qsrname'), trigger: 'blur' }
],
EmEntry:[
{ required: true, message: this.$t('rule.qxzrzshijian'), trigger: 'blur' }
],
EmAccount:[
{ required: true, message: this.$t('login.login_account'), trigger: 'blur' },
{pattern: /^[a-zA-Z0-9]{4,18}$/, message: '账号为6-18位字母数字组成' }
],
EmPassword:[
{ required: true, message: this.$t('login.login_password'), trigger: 'blur' }
],
EmQQ:[
{pattern: /^\d{5,11}$/, message: this.$t('rule.qsrzqdqq') }
],
EmMobile:[
{pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|17[012356789]|18[0-9]|19[0-9]|14[57])[0-9]{8}$/, message: '请输入正确的手机'}
],
EmCard:[
{pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: this.$t('rule.qsrIdnum') }
],
},
addMsg:{
EmName:'',
EmSex:'0',
EmCard:'',
EmBirthday:'',
EmEducation:'',
EmEntry:'',
EmLeave:'',
EmAddress:'',
EmMobile:'',
EmTel:'',
EmQQ:'',
EmPhoto:'',
EmAccount:'',
EmPassword:'',
RB_Group_id :'',
RB_Branch_id:'',
RB_Department_Id:'',
RB_Post_Id:'',
},
pwdMsg:{
Id:'',
Pwd:'',
pwd1:''
},
ulmMsg:{
EmployeeId:'',
LoginMobile:'',
LoginMobile1:''
},
rulesPwd:{
Pwd:[
{ required: true, message: this.$t('login.login_password'), trigger: 'blur' }
],
Pwd1:[
{validator: validatorPwd1, trigger: 'blur' }
],
},
rulesulm:{
LoginMobile:[
{ required: true
,pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|17[012356789]|18[0-9]|19[0-9]|14[57])[0-9]{8}$/
, message: this.$t('rule.qsrtelphone')
, trigger: 'blur' }
],
LoginMobile1:[
{validator: validatorulm, trigger: 'blur' }
],
},
getGroupMsg:{
Status:'0',
GroupName:'',
Domain:'',
Versions_Id:'',
},
getCompanyMsg:{
RB_Group_Id:'0',
Status:'0',
},
getDepartmentMsg:{
RB_Group_Id:'0',
RB_Branch_Id:'-1',
Status:'0',
},
getPostMsg:{
RB_Group_Id:'0',
RB_Branch_Id:'-1',
RB_Department_Id:'0',
},
//返回值的接收变量
EmLoginMobile:'',
DataList: [],
groupList:[],
layerCompanyList:[],
layerDepartMentList:[],
departMentList:[],
layerPostList:[],
PostList:[],
}
},
mounted() {
let userInfo=this.getLocalStorage();
this.getPostMsg.RB_Group_Id=this.getCompanyMsg.RB_Group_Id=this.getDepartmentMsg.RB_Group_Id=this.addMsg.RB_Group_id=this.msg.RB_Group_id=userInfo.RB_Group_id; //集团
this.getPostMsg.RB_Branch_Id=this.getDepartmentMsg.RB_Branch_Id=this.msg.RB_Branch_id=userInfo.RB_Branch_id; //公司
this.getPostMsg.RB_Department_Id=userInfo.RB_Department_Id; //部门
this.msg.IsParentCompany=userInfo.IsParentCompany;//是否为总公司
this.getList();
this.getCompany();
this.getDerpartMent();
this.getPost();
this.getTotalNum()
},
filters:{
leaveTimeFormat(value){
if(value=='')
{
return '在职'
}else{
return value
}
}
},
methods: {
getTotalNum(){
this.apipost('admin_get_GetGroupEmployeeNum',{},res=>{
if(res.data.resultCode==1){
this.UseNum=res.data.data.UseNum,
this.TotalNum=res.data.data.TotalNum
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
savePwd(){
this.apipost('admin_post_EmployeeResetPwd',this.pwdMsg,res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.innerVisible=false
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
saveUpdateLoginMobile(){
this.apipost('admin_post_ResetLoginMobile',this.ulmMsg,res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.updateLoginMobile=false
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
setIsLeave(Id){
let myDate = new Date();
let _year = myDate.getFullYear();
let _month = myDate.getMonth() >= 9 ? myDate.getMonth() + 1 : '0' + (myDate.getMonth() + 1);
let _date = myDate.getDate() > 9 ? myDate.getDate() : '0' + myDate.getDate();
let _time=_year+'-'+_month+'-'+_date;
this.apipost('admin_post_EmployeeInOrOut',{Id:Id,Time:_time,},res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.outerVisible=false;
this.getList();
}else{
this.$message.error(res.data.message)
}
},err=>{})
},
getGroup(){
this.apipost('admin_get_GroupGetList',this.getGroupMsg,res=>{
if(res.data.resultCode==1){
this.groupList=res.data.data;
}else{}
},err=>{})
},
getList() { //获取数据
this.loading=true,
this.apipost('admin_get_EmployeeList', this.msg, res => {
if(res.data.resultCode == 1) {
this.loading=false;
this.DataList = res.data.data.pageData;
this.total = res.data.data.count;
} else {}
}, err => {})
},
addData(){
this.isleaveBtn=false;
this.apipost('admin_post_EmployeeOperate', this.addMsg, res => {
if(res.data.resultCode==1)
{
this.$message.success(res.data.message);
this.outerVisible=false;
this.getList()
this.resetForm('addMsg');
}else{
this.$message.error(res.data.message)
}
}, err => {})
this.getList();
},
updateData(id){
this.pwdMsg.Id=id;
this.ulmMsg.EmployeeId=id;
this.leaveId=id;
this.isleaveBtn=true;
this.apipost('admin_get_EmployeeGet',{Id:id},res=>{
if(res.data.resultCode==1)
{
this.getDepartmentMsg.RB_Branch_Id=res.data.data.RB_Branch_id
this.getPostMsg.RB_Department_Id=res.data.data.RB_Department_Id;
this.getDerpartMent();
this.getPost();
this.addMsg=res.data.data;
this.EmLoginMobile=res.data.data.EmLoginMobile;
if(res.data.data.IsLeave==0){
this.leaveBtn=this.$t('adm.adm_swlizhi');
}else{
this.leaveBtn=this.$t('adm.adm_swzaizhi');
}
this.addMsg.EmSex=res.data.data.EmSex.toString();
}
},err=>{})
},
linkageDepartment(){ //联动部门
this.msg.RB_Department_Id='0';
this.msg.RB_Post_Id='0';
this.getDepartmentMsg.RB_Branch_Id=this.msg.RB_Branch_id;
this.getDerpartMent();
},
layerLinkageDepartment(){ //弹窗联动部门
this.addMsg.RB_Department_Id='';
this.addMsg.RB_Post_Id='',
this.getDepartmentMsg.RB_Branch_Id=this.addMsg.RB_Branch_id;
this.getDerpartMent();
},
linkagePost(){ //联动岗位
this.getPostMsg.RB_Branch_Id = this.msg.RB_Branch_id;
this.getPostMsg.RB_Department_Id=this.msg.RB_Department_Id
this.getPost();
},
layerLinkagePost(){ //弹窗联动岗位
this.addMsg.RB_Post_Id='',
this.getPostMsg.RB_Branch_Id = this.addMsg.RB_Branch_id;
this.getPostMsg.RB_Department_Id=this.addMsg.RB_Department_Id
this.getPost();
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1
},
submitForm(addMsg) {//提交创建、修改表单
this.$refs[addMsg].validate((valid) => {
if (valid) {
this.addData()
} else {
return false;
}
});
},
submitForm1(pwdMsg) {//提交创建、修改表单
this.$refs[pwdMsg].validate((valid) => {
if (valid) {
this.savePwd()
} else {
return false;
}
});
},
submitFormulm(ulmMsg) {//提交创建、修改表单
this.$refs[ulmMsg].validate((valid) => {
if (valid) {
this.saveUpdateLoginMobile()
} else {
return false;
}
});
},
goUrl(name,id){
this.$router.push({ name: name,query:{"id":id,"type":9,blank:'y',tab:'绑定账户信息'}})
},
closeChangeMachie(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('addMsg');
},
closeChangeMachie1(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('pwdMsg');
},
closeChangeMachieulm(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('ulmMsg');
},
resetForm(formName) {//弹出框取消 初始化谈框内表单
this.$refs[formName].resetFields();
this.addMsg.EmployeeId='0'
}
}
}
</script> </script>
\ No newline at end of file
<style> <style>
.user_time_picker .el-date-editor--date>.el-input__inner { .user_time_picker .el-date-editor--date>.el-input__inner {
padding:0 10px; padding:0 10px;
font-size: 13px; font-size: 13px;
} }
.user_time_picker .el-date-editor--date>span.el-input__prefix { .user_time_picker .el-date-editor--date>span.el-input__prefix {
display: none; display: none;
} }
.user_time_picker .el-date-editor--date>span.el-input__suffix{ .user_time_picker .el-date-editor--date>span.el-input__suffix{
top:-4px;right: 2px; top:-4px;right: 2px;
} }
.zidingyiFz i{font-size: 14px!important;} .zidingyiFz i{font-size: 14px!important;}
</style> </style>
<template> <template>
<div class="flexOne"> <div class="flexOne">
<div style="overflow:auto"> <div style="overflow:auto">
<input type="button" class="normalBtn" value="添加" style="float:right"/> <input type="button" class="normalBtn" value="添加" style="float:right" @click="ResetPwdForm(),LabelVisible=true"/>
</div> </div>
<table style="margin-top:10px" class="singeRowTable" border="0" cellspacing="0" cellpadding="0"> <table style="margin-top:10px" class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th>排序</th> <th>标签名</th>
<th>标签名</th> <th>排序</th>
<th>操作</th> <th>操作</th>
</tr> </tr>
<tr v-for="item in dataList" :key="item.SNO"> <tr v-for="(item,index) in dataList" :key="index+100">
<td>{{item.SNO}}</td> <td>{{item.Content}}</td>
<td>{{item.Content}}</td> <td>{{item.SNO}}</td>
<td> <td>
<el-tooltip class="item" effect="dark" content="修改" placement="top"> <el-tooltip class="item" effect="dark" content="修改" placement="top">
<el-button type="primary" icon="el-icon-edit" circle></el-button> <el-button type="primary" icon="el-icon-edit" circle @click="Edit(item)"></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top"> <el-tooltip class="item" effect="dark" content="删除" placement="top">
<el-button type="primary" class='zidingyiFz' icon="iconfont icon-bangdingzhagnhuxinxi" circle></el-button> <el-button @click="Delete(item)" type="danger" class='zidingyiFz' icon="el-icon-delete" circle></el-button>
</el-tooltip> </el-tooltip>
</td> </td>
</tr> </tr>
</table> </table>
<!-- <el-pagination background @current-change="handleCurrentChange" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total> <!-- <el-pagination background @current-change="handleCurrentChange" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination> --> </el-pagination> -->
<el-dialog custom-class='w400' title="团期标签" :visible.sync="LabelVisible"> <el-dialog custom-class='w400' title="主题标签" :visible.sync="LabelVisible">
<el-form :model="pwdMsg" label-width="100px" :rules="rulesPwd" ref="pwdMsg"> <el-form :model="pwdMsg" label-width="80px" :rules="rulesPwd" ref="pwdMsg">
<el-form-item label="标签类型" prop="EmName"> <!-- <el-form-item label="标签类型" prop="Name">
<el-input class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')" readonly></el-input> <el-input class='w217' type="text" v-model="pwdMsg.Name" placeholder=""></el-input>
</el-form-item> </el-form-item>
<el-form-item :label="$t('system.table_acc')" prop="EmAccount"> <el-form-item label="团期类型" prop="Code">
<el-input class='w217' type="text" v-model="addMsg.EmAccount" :placeholder="$t('pub.pleaseImport')" readonly></el-input> <el-select class='w217' v-model="pwdMsg.Code" placeholder="请选择">
</el-form-item> <el-option key="0" label="常规" value="0"></el-option>
<el-form-item :label="$t('adm.adm_newPd')" prop="Pwd"> <el-option key="1" label="小包团" value="1"></el-option>
<el-input class='w217' type="password" v-model="pwdMsg.Pwd" :placeholder="$t('pub.pleaseImport')"></el-input> <el-option key="2" label="一日游" value="2"></el-option>
</el-form-item> </el-select>
<el-form-item :label="$t('adm.adm_Reinput')" prop="Pwd1"> </el-form-item> -->
<el-input class='w217' type="password" v-model="pwdMsg.Pwd1" :placeholder="$t('pub.pleaseImport')"></el-input> <el-form-item label="排序">
</el-form-item> <el-input class='w217' v-model="pwdMsg.SNO" placeholder=""></el-input>
</el-form> </el-form-item>
<div slot="footer" class="dialog-footer"> <el-form-item label="标签名" prop="Content">
<button class="hollowFixedBtn" @click="innerVisible=false,resetForm('pwdMsg')">{{$t('pub.cancelBtn')}}</button> <el-input class='w217' v-model="pwdMsg.Content" placeholder=""></el-input>
<button class="normalBtn" @click="submitForm1('pwdMsg')">{{$t('pub.sureBtn')}}</button> </el-form-item>
</div> </el-form>
</el-dialog> <div slot="footer" class="dialog-footer">
</div> <button class="hollowFixedBtn" @click="LabelVisible=false">取消</button>
</template> <button class="normalBtn" @click="submitForm1('pwdMsg')">确定</button>
<script> </div>
export default { </el-dialog>
data() { </div>
</template>
return { <script>
msg:{ export default {
name:'theme', data() {
code:1,
}, return {
dataList:[], msg:{
LabelVisible:false, name:'theme',
} code:1,
}, },
mounted() { dataList:[],
LabelVisible:false,
pwdMsg:{
this.getList(); ID:0,
Name:'theme',
}, Code:'1',
SNO:"",
Content:"",
methods: { },
handleCurrentChange(){}, rulesPwd:{
getList(){ Name: [
this.apipost('travel_get_GetTravelPriceTag',this.msg,res=>{ { required: true, message: '请输入主题', trigger: 'blur' }
console.log("res",res); ],
if(res.data.resultCode==1){ Code: [
this.dataList=res.data.data; { required: true, message: '请选择团期类型', trigger: 'change' }
}else{} ],
},err=>{}) Content: [
}, { required: true, message: '请输入标签名称', trigger: 'blur' }
} ]
} }
}
},
mounted() {
this.getList();
},
methods: {
Edit(item){
this.pwdMsg=Object.assign({},item);
this.LabelVisible=true;
},
Delete(item){
this.$confirm('是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('dict_post_Remove',{dictID:item.ID},res=>{
if(res.data.resultCode==1){
this.Success(res.data.message)
this.getList();
}else{
this.Error(res.data.message)
}
},err=>{})
}).catch(() => {
});
},
submitForm1(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.apipost('travel_post_SetTravelPriceTag',this.pwdMsg,res=>{
if(res.data.resultCode==1){
this.Success(res.data.message)
this.LabelVisible=false;
this.getList();
}else{
this.Error(res.data.message)
}
},err=>{})
} else {
}
});
},
ResetPwdForm(){
this.pwdMsg={
Name:'theme',
Code:'1',
SNO:"",
Content:"",
};
},
handleCurrentChange(){},
getList(){
this.apipost('travel_get_GetTravelPriceTag',this.msg,res=>{
if(res.data.resultCode==1){
this.dataList=res.data.data;
}else{}
},err=>{})
},
}
}
</script> </script>
\ No newline at end of file
<style> <style>
.Rotationchart .choose_form .el-form-item{ .Rotationchart .choose_form .el-form-item{
display: inline-block; display: inline-block;
margin-top:15px; margin-top:15px;
} }
.Rotationchart .imgList ul li { .Rotationchart .imgList ul li {
-webkit-box-flex: initial; -webkit-box-flex: initial;
-ms-flex: initial; -ms-flex: initial;
flex: initial; flex: initial;
position: relative; position: relative;
margin: 0 20px 20px 0; margin: 0 20px 20px 0;
width: 200px; width: 200px;
height: 290px; height: 290px;
margin-bottom: 20px; margin-bottom: 20px;
float: left; float: left;
border: 1px solid #ccc; border: 1px solid #ccc;
} }
.Rotationchart .imgList ul li .img_box { .Rotationchart .imgList ul li .img_box {
width: 100%; width: 100%;
height: 290px; height: 290px;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
} }
.Rotationchart .imgList ul li .img_box .zezhao{ .Rotationchart .imgList ul li .img_box .zezhao{
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
background: rgba(255, 255, 255, 0.4); background: rgba(255, 255, 255, 0.4);
text-align: center; text-align: center;
width: 100%; width: 100%;
height: 100%; height: 100%;
line-height: 13; line-height: 13;
cursor: pointer; cursor: pointer;
display:none; display:none;
z-index:100; z-index:100;
} }
.Rotationchart .imgList ul li .img_box:hover .zezhao{ .Rotationchart .imgList ul li .img_box:hover .zezhao{
display: block; display: block;
} }
.Rotationchart .imgList ul li .img_box .zezhao i{ .Rotationchart .imgList ul li .img_box .zezhao i{
font-size: 28px; font-size: 20px;
margin:0 10px; /* margin:0 10px; */
} }
.Rotationchart .imgList ul li .img_box .free { .Rotationchart .imgList ul li .img_box .free {
top: 15px; top: 15px;
right: 15px; right: 15px;
position: absolute; position: absolute;
color: #f5f5f5; color: #f5f5f5;
padding: 2px 3px; padding: 2px 3px;
border-radius: 4px; border-radius: 4px;
font-size: 12px; font-size: 12px;
} }
.Rotationchart .img_item{ .Rotationchart .img_item{
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.Rotationchart .img_item img{ .Rotationchart .img_item img{
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.Rotationchart .el-carousel__container{ .Rotationchart .el-carousel__container{
height: 100%!important; height: 100%!important;
} }
.Rotationchart .viewBigPicLayer .el-carousel{ .Rotationchart .viewBigPicLayer .el-carousel{
left: 29%; left: 29%;
} }
.Rotationchart .divShow{ .Rotationchart .divShow{
position: fixed; position: fixed;
font-family: "PingFangSc-Fine"; font-family: "PingFangSc-Fine";
bottom: 0; bottom: 0;
left: 50px; left: 50px;
border-top: 3px solid #38425d; border-top: 3px solid #38425d;
background-color: #fff; background-color: #fff;
padding: 10px; padding: 10px;
width: calc(100% - 50px); width: calc(100% - 50px);
min-width: 1146px; min-width: 1146px;
padding-right: 10px; padding-right: 10px;
z-index: 110; z-index: 110;
} }
.Rotationchart .divShow ._tit { .Rotationchart .divShow ._tit {
padding-left: 10px; padding-left: 10px;
border-left: 3px solid #e95252; border-left: 3px solid #e95252;
font-size: 16px; font-size: 16px;
color: #000000; color: #000000;
} }
.Rotationchart .TFimgList { .Rotationchart .TFimgList {
float: left; float: left;
width: 220px; width: 220px;
height: 120px; height: 120px;
border-radius: 4px; border-radius: 4px;
position: relative; position: relative;
margin: 0 10px 10px 0; margin: 0 10px 10px 0;
overflow: hidden; overflow: hidden;
} }
.Rotationchart .TFIMGzhe { .Rotationchart .TFIMGzhe {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: rgba(0, 0, 0, 0.4); background: rgba(0, 0, 0, 0.4);
position: absolute; position: absolute;
top: 0; top: 0;
text-align: center; text-align: center;
line-height: 115px; line-height: 115px;
border-radius: 4px; border-radius: 4px;
display: none; display: none;
} }
.Rotationchart .TFreupload { .Rotationchart .TFreupload {
width: 32px; width: 32px;
height: 32px; height: 32px;
border-radius: 50%; border-radius: 50%;
line-height: 32px; line-height: 32px;
top: 50px; top: 50px;
left: 53px; left: 53px;
display: inline-block; display: inline-block;
text-align: center; text-align: center;
background-color: gray; background-color: gray;
color: #fff; color: #fff;
} }
.Rotationchart .TFimgList:hover .TFIMGzhe { .Rotationchart .TFimgList:hover .TFIMGzhe {
display: block; display: block;
} }
.Rotationchart .TFimgList img { .Rotationchart .TFimgList img {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
</style> </style>
<template> <template>
<div class="Rotationchart"> <div class="Rotationchart">
<el-form class="choose_form" ref="form" :model="form" label-width="80px"> <el-form class="choose_form" ref="form" :model="form" label-width="80px">
<el-form-item label="公司"> <el-form-item label="公司">
<el-select v-model="form.rbBranchId" placeholder="请选择平台"> <el-select v-model="form.rbBranchId" placeholder="请选择平台">
<el-option label="不限" :value="-1"></el-option> <el-option label="不限" :value="-1"></el-option>
<el-option <el-option
v-for="item in companyList" v-for="item in companyList"
:label="item.BName" :label="item.BName"
:value="item.Id" :value="item.Id"
:key="item.Id" :key="item.Id"
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="平台"> <el-form-item label="平台">
<el-select v-model="form.platformType" placeholder="请选择平台"> <el-select v-model="form.platformType" placeholder="请选择平台">
<el-option label="不限" :value="0"></el-option> <el-option label="不限" :value="0"></el-option>
<el-option label="b2b" :value="1"></el-option> <el-option label="b2b" :value="1"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="类型"> <el-form-item label="类型">
<el-select v-model="form.slideType" placeholder="请选择类型"> <el-select v-model="form.slideType" placeholder="请选择类型">
<el-option label="不限" :value="0"></el-option> <el-option label="不限" :value="0"></el-option>
<el-option label="跟团游" :value="1"></el-option> <el-option label="跟团游" :value="1"></el-option>
<el-option label="签证" :value="2"></el-option> <el-option label="签证" :value="2"></el-option>
<el-option label="机票" :value="3"></el-option> <el-option label="机票" :value="3"></el-option>
<el-option label="自由行" :value="4"></el-option> <el-option label="自由行" :value="4"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<input type="button" @click="GetList" class="normalBtn" value="查询"/> <input type="button" @click="GetList" class="normalBtn" value="查询"/>
<input type="button" @click="AddImg" class="normalBtn" value="添加"/> <input type="button" @click="AddImg" class="normalBtn" value="添加"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="imgList"> <div class="imgList">
<ul style="overflow:auto"> <ul style="overflow:auto">
<li v-for="(item,index) in dataList" :key="item.id" @click="getPicList(index)"> <li v-for="(item,index) in dataList" :key="item.id" @click="getPicList(index)">
<div class="img_box"> <div class="img_box">
<img :src="item.imageUrl" /> <img :src="item.imageUrl" />
<span v-if="item.slideStatus==1" class="free" style="background: #20bf6b;">正常</span> <span v-if="item.slideStatus==1" class="free" style="background: #20bf6b;">正常</span>
<span v-if="item.slideStatus==2" class="free" style="background: #E95252;">禁用</span> <span v-if="item.slideStatus==2" class="free" style="background: #E95252;">禁用</span>
<div class="zezhao"> <div class="zezhao">
<i class="el-icon-edit" title="编辑" @click.stop="EditImg(item)"></i> <el-tooltip class="item" effect="dark" content="编辑" placement="top">
<i class="el-icon-printer" slot="reference" title="修改状态" @click.stop="EditStatus(item)"></i> <el-button type="primary" icon="el-icon-edit" circle @click.stop="EditImg(item)"></el-button>
</div> </el-tooltip>
</div> <!-- <i class="el-icon-edit" title="编辑" @click.stop="EditImg(item)"></i> -->
</li> <el-tooltip class="item" effect="dark" content="修改状态" placement="top">
<el-button type="danger" icon="el-icon-printer" circle @click.stop="EditStatus(item)"></el-button>
</ul> </el-tooltip>
<el-pagination <!-- <i class="el-icon-printer" slot="reference" title="修改状态" @click.stop="EditStatus(item)"></i> -->
background </div>
@current-change="handleCurrentChange" </div>
v-if="dataList.length>0" </li>
layout="total,prev, pager, next, jumper"
:page-size="form.pageSize" </ul>
:total="total" <el-pagination
></el-pagination> background
</div> @current-change="handleCurrentChange"
<!-- 修改状态 --> v-if="dataList.length>0"
<el-dialog layout="total,prev, pager, next, jumper"
title="修改状态" :page-size="form.pageSize"
:visible.sync="changestatus" :total="total"
width="400px"> ></el-pagination>
<el-select v-model="editForm.slideStatus" placeholder="请选择状态"> </div>
<el-option label="启用" :value="1"></el-option> <!-- 修改状态 -->
<el-option label="禁用" :value="2"></el-option> <el-dialog
<el-option label="删除" :value="3"></el-option> title="修改状态"
</el-select> :visible.sync="changestatus"
<span slot="footer" class="dialog-footer"> width="400px">
<el-button @click="changestatus = false" size="small">取 消</el-button> 状态:
<el-button type="danger" @click="ChangeStatus" size="small">确 定</el-button> <el-select style="display:inline-block" v-model="editForm.slideStatus" placeholder="请选择状态">
</span> <el-option label="启用" :value="1"></el-option>
</el-dialog> <el-option label="禁用" :value="2"></el-option>
<div class="divShow" v-show="divShow"> <el-option label="删除" :value="3"></el-option>
<p class="_tit">轮播图</p> </el-select>
<el-form class="choose_form" ref="form_div" :rules="rules" :model="form_div" label-width="80px"> <span slot="footer" class="dialog-footer">
<el-form-item label="公司" prop="rbBranchId"> <el-button @click="changestatus = false" size="small">取 消</el-button>
<el-select v-model="form_div.rbBranchId" placeholder="请选择平台"> <el-button type="danger" @click="ChangeStatus" size="small">确 定</el-button>
<el-option </span>
v-for="item in companyList" </el-dialog>
:label="item.BName" <div class="divShow" v-show="divShow">
:value="item.Id" <p class="_tit">轮播图</p>
:key="item.Id" <el-form class="choose_form" ref="form_div" :rules="rules" :model="form_div" label-width="80px">
></el-option> <el-form-item label="公司" prop="rbBranchId">
</el-select> <el-select v-model="form_div.rbBranchId" placeholder="请选择平台">
</el-form-item> <el-option
<el-form-item label="平台" prop="platformType"> v-for="item in companyList"
<el-select v-model="form_div.platformType" placeholder="请选择平台"> :label="item.BName"
<el-option label="b2b" :value="1"></el-option> :value="item.Id"
</el-select> :key="item.Id"
</el-form-item> ></el-option>
<el-form-item label="类型" prop="slideType"> </el-select>
<el-select v-model="form_div.slideType" placeholder="请选择类型"> </el-form-item>
<el-option label="跟团游" :value="1"></el-option> <el-form-item label="平台" prop="platformType">
<el-option label="签证" :value="2"></el-option> <el-select v-model="form_div.platformType" placeholder="请选择平台">
<el-option label="机票" :value="3"></el-option> <el-option label="b2b" :value="1"></el-option>
<el-option label="自由行" :value="4"></el-option> </el-select>
</el-select> </el-form-item>
</el-form-item> <el-form-item label="类型" prop="slideType">
<el-form-item label="排序"> <el-select v-model="form_div.slideType" placeholder="请选择类型">
<el-input v-model="form_div.sort"></el-input> <el-option label="跟团游" :value="1"></el-option>
</el-form-item> <el-option label="签证" :value="2"></el-option>
<el-option label="机票" :value="3"></el-option>
<el-form-item> <el-option label="自由行" :value="4"></el-option>
<input type="button" @click="SaveImg('form_div')" class="normalBtn" value="保存"/> </el-select>
<input type="button" class="normalBtn" value="取消" @click="divShow=false"/> </el-form-item>
</el-form-item> <el-form-item label="排序">
<br> <el-input v-model="form_div.sort"></el-input>
<el-form-item label="标题" style="position: relative; top: -128px;"> </el-form-item>
<el-input v-model="form_div.title"></el-input>
</el-form-item> <el-form-item>
<el-form-item label="跳转地址" style="position: relative; top: -128px;left: 15px;"> <input type="button" @click="SaveImg('form_div')" class="normalBtn" value="保存"/>
<el-input v-model="form_div.returnUrl"></el-input> <input type="button" class="normalBtn" value="取消" @click="divShow=false"/>
</el-form-item> </el-form-item>
<el-form-item label="图片"> <br>
<div class="TFimgList"> <el-form-item label="标题" style="position: relative; top: -128px;">
<img v-if="!form_div.imageUrl" src="../../assets/img/bg_c3@3x.png"> <el-input v-model="form_div.title"></el-input>
<img v-else :src='form_div.imageUrl'> </el-form-item>
<div class="TFIMGzhe"> <el-form-item label="跳转地址" style="position: relative; top: -128px;left: 15px;">
<div class="TFreupload"> <el-input v-model="form_div.returnUrl"></el-input>
<!-- <el-upload :file-list="PostConfig.fileList" :http-request="reUpload" :multiple="true" </el-form-item>
accept="image/jpeg, image/gif, image/png, image/bmp" <el-form-item label="图片">
:show-file-list="false" action> <div class="TFimgList">
<i class="iconfont icon-Edit"></i> <img v-if="!form_div.imageUrl" src="../../assets/img/bg_c3@3x.png">
</el-upload> --> <img v-else :src='form_div.imageUrl'>
<el-upload :file-list="fileList" :http-request="uploadTest" :multiple="true" :limit="2" <div class="TFIMGzhe">
:on-change="handleChange1" <div class="TFreupload">
accept="image/jpeg, image/gif, image/png, image/bmp" <!-- <el-upload :file-list="PostConfig.fileList" :http-request="reUpload" :multiple="true"
:show-file-list="false" action> accept="image/jpeg, image/gif, image/png, image/bmp"
<i class="iconfont icon-Edit"></i> :show-file-list="false" action>
</el-upload> <i class="iconfont icon-Edit"></i>
</div> </el-upload> -->
</div> <el-upload :file-list="fileList" :http-request="uploadTest" :multiple="true" :limit="2"
</div> :on-change="handleChange1"
</el-form-item> accept="image/jpeg, image/gif, image/png, image/bmp"
</el-form> :show-file-list="false" action>
</div> <i class="iconfont icon-Edit"></i>
<div v-if='picIsShow' class="viewBigPicLayer" @click="picIsShow=false"> </el-upload>
<i class="el-icon-circle-close-outline clolseViewBigPicLayer" @click="picIsShow=false"></i> </div>
<el-carousel style="width:1670px;height:400px" :initial-index='initialIndex' :interval="5000" trigger="click"> </div>
<el-carousel-item v-for="(item,index) in picObj" :key="index"> </div>
<div class="img_item"><img :src="item" /></div> </el-form-item>
</el-carousel-item> </el-form>
</el-carousel> </div>
</div> <div v-if='picIsShow' class="viewBigPicLayer" @click="picIsShow=false">
<i class="el-icon-circle-close-outline clolseViewBigPicLayer" @click="picIsShow=false"></i>
</div> <el-carousel style="width:1670px;height:400px" :initial-index='initialIndex' :interval="5000" trigger="click">
</template> <el-carousel-item v-for="(item,index) in picObj" :key="index">
<div class="img_item"><img :src="item" /></div>
<script> </el-carousel-item>
</el-carousel>
export default { </div>
name: 'Rotationchart',
data (){ </div>
return{ </template>
changestatus:false,
editForm:{}, <script>
picIsShow:false,
form:{ export default {
rbBranchId:-1, name: 'Rotationchart',
platformType:0, data (){
slideType:0, return{
pageIndex:1, changestatus:false,
pageSize:20, editForm:{},
}, picIsShow:false,
form_div:{ form:{
id:0, rbBranchId:-1,
sort:"", platformType:0,
title:'', slideType:0,
returnUrl:"", pageIndex:1,
imageUrl:"", pageSize:20,
}, },
total:0, form_div:{
dataList:[], id:0,
companyList:[], sort:"",
picObj:[], title:'',
initialIndex:0, returnUrl:"",
divShow:false, imageUrl:"",
fileList: [], },
rules:{ total:0,
rbBranchId: [ dataList:[],
{ required: true, message: '请选择公司', trigger: 'change' } companyList:[],
], picObj:[],
platformType: [ initialIndex:0,
{ required: true, message: '请选择平台', trigger: 'change' } divShow:false,
], fileList: [],
slideType: [ rules:{
{ required: true, message: '请选择类型', trigger: 'change' } rbBranchId: [
], { required: true, message: '请选择公司', trigger: 'change' }
}, ],
} platformType: [
}, { required: true, message: '请选择平台', trigger: 'change' }
mounted(){ ],
this.getCompany(); slideType: [
this.GetList() { required: true, message: '请选择类型', trigger: 'change' }
}, ],
methods:{ },
ChangeStatus(){ }
this.changestatus=false; },
this.apiJavaPost("/api/dmc/slide/updateSlideStatus", this.editForm, res => { mounted(){
if (res.data.resultCode === 1) { this.getCompany();
this.Success(res.data.message); this.GetList()
this.GetList(); },
} else { methods:{
this.Error(res.data.message) ChangeStatus(){
} this.changestatus=false;
}, null); this.apiJavaPost("/api/dmc/slide/updateSlideStatus", this.editForm, res => {
}, if (res.data.resultCode === 1) {
EditStatus(item){ this.Success(res.data.message);
this.changestatus=true; this.GetList();
this.editForm.id=item.id; } else {
this.Error(res.data.message)
}, }
EditImg(item){ }, null);
this.form_div= Object.assign({}, item); },
this.divShow=true; EditStatus(item){
this.changestatus=true;
}, this.editForm.id=item.id;
InitFormDiv(){
this.form_div={ },
id:0, EditImg(item){
sort:"", this.form_div= Object.assign({}, item);
title:'', this.divShow=true;
returnUrl:"",
imageUrl:"", },
} InitFormDiv(){
}, this.form_div={
SaveImg(formName) { id:0,
this.$refs[formName].validate((valid) => { sort:"",
if (valid) { title:'',
if(this.form_div.imageUrl==""){ returnUrl:"",
this.Error("请上传图片!") imageUrl:"",
return; }
} },
this.apiJavaPost("/api/dmc/slide/setSlide", this.form_div, res => { SaveImg(formName) {
if (res.data.resultCode === 1) { this.$refs[formName].validate((valid) => {
this.Success(res.data.message); if (valid) {
this.GetList(); if(this.form_div.imageUrl==""){
this.InitFormDiv(); this.Error("请上传图片!")
this.divShow=false; return;
} else { }
this.Error(res.data.message) this.apiJavaPost("/api/dmc/slide/setSlide", this.form_div, res => {
} if (res.data.resultCode === 1) {
}, null); this.Success(res.data.message);
} else { this.GetList();
this.InitFormDiv();
return false; this.divShow=false;
} } else {
}); this.Error(res.data.message)
}, }
handleChange1(file, fileList) { }, null);
} else {
this.fileList = fileList.slice(-1);
}, return false;
uploadTest(file) { }
let newArr = []; });
newArr.push(file.file); },
let path = "/Upload/DMC/Slide/"; handleChange1(file, fileList) {
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath; this.fileList = fileList.slice(-1);
this.form_div.imageUrl = url; },
}); uploadTest(file) {
}, let newArr = [];
AddImg(){ newArr.push(file.file);
this.InitFormDiv(); let path = "/Upload/DMC/Slide/";
this.divShow=true; this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
}, this.form_div.imageUrl = url;
//上传广告图片 });
UploadImage(file) { },
let newArr = []; AddImg(){
newArr.push(file.file); this.InitFormDiv();
let fileName = file.file.name; this.divShow=true;
var path = "/Upload/B2B/HomeSlide/";
var imgArr = []; },
this.UploadSelfFileT(path, newArr, x => { //上传广告图片
var obj = this.$DMCUtils.DMCImageObj(); UploadImage(file) {
var str = x.data.FilePath; let newArr = [];
var imgUrl = this.domainManager().ViittoFileUrl + x.data.FilePath; newArr.push(file.file);
obj.Path = str; let fileName = file.file.name;
obj.ShowPath = imgUrl; var path = "/Upload/B2B/HomeSlide/";
imgArr.push(obj.ShowPath); var imgArr = [];
let msg = { this.UploadSelfFileT(path, newArr, x => {
TCID:this.msg.TCID, var obj = this.$DMCUtils.DMCImageObj();
AdvertisingPicUrlList:imgArr var str = x.data.FilePath;
} var imgUrl = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.apipost("travel_post_AddPriceLocalAdvert", msg, res => { obj.Path = str;
if(res.data.resultCode==1){ obj.ShowPath = imgUrl;
this.Success(res.data.message); imgArr.push(obj.ShowPath);
this.getaddatas(); let msg = {
}else{ TCID:this.msg.TCID,
this.Error(res.data.message); AdvertisingPicUrlList:imgArr
} }
},err => {}) this.apipost("travel_post_AddPriceLocalAdvert", msg, res => {
if(res.data.resultCode==1){
}); this.Success(res.data.message);
}, this.getaddatas();
//获取轮播路径 }else{
getPicList(index){ this.Error(res.data.message);
this.picIsShow=true; }
this.picObj=[]; },err => {})
this.initialIndex = index;
this.dataList.forEach((x,index)=>{ });
if(x.slideStatus!=2){ },
this.picObj.push(x.imageUrl); //获取轮播路径
} getPicList(index){
}) this.picIsShow=true;
}, this.picObj=[];
// 获取列表数据 this.initialIndex = index;
GetList(){ this.dataList.forEach((x,index)=>{
this.apiJavaPost("/api/dmc/slide/getSlideList", this.form, res => { if(x.slideStatus!=2){
if (res.data.resultCode === 1) { this.picObj.push(x.imageUrl);
this.dataList = res.data.data.pageData; }
this.total=res.data.data.count; })
} else { },
this.Error(res.data.message) // 获取列表数据
} GetList(){
}, null); this.apiJavaPost("/api/dmc/slide/getSlideList", this.form, res => {
}, if (res.data.resultCode === 1) {
handleCurrentChange(val) { this.dataList = res.data.data.pageData;
this.form.pageIndex = val; this.total=res.data.data.count;
this.GetList(); } else {
}, this.Error(res.data.message)
//获取公司下拉 }
getCompany() { }, null);
let userInfo = this.getLocalStorage() },
var RB_Group_id = userInfo.RB_Group_id handleCurrentChange(val) {
let msg = { this.form.pageIndex = val;
Status: 0, this.GetList();
is_show: 0, },
RB_Group_Id: RB_Group_id //获取公司下拉
} getCompany() {
this.apipost( let userInfo = this.getLocalStorage()
'admin_get_BranchGetList', var RB_Group_id = userInfo.RB_Group_id
msg, let msg = {
res => { Status: 0,
if (res.data.resultCode == 1) { is_show: 0,
this.companyList = res.data.data RB_Group_Id: RB_Group_id
}else{ }
this.Error(res.data.message); this.apipost(
} 'admin_get_BranchGetList',
}, msg,
err => {} res => {
) if (res.data.resultCode == 1) {
}, this.companyList = res.data.data
} }else{
} this.Error(res.data.message);
}
},
err => {}
)
},
}
}
</script> </script>
\ No newline at end of file
<style>
.user_time_picker .el-date-editor--date>.el-input__inner {
padding:0 10px;
font-size: 13px;
}
.user_time_picker .el-date-editor--date>span.el-input__prefix {
display: none;
}
.user_time_picker .el-date-editor--date>span.el-input__suffix{
top:-4px;right: 2px;
}
.zidingyiFz i{font-size: 14px!important;}
</style>
<template>
<div class="flexOne">
<div class="query-box">
<ul class="user_time_picker">
<!-- <li><span><em>{{$t('system.table_company')}}</em><el-select filterable :disabled ="msg.IsParentCompany==2" v-model='msg.RB_Branch_id' @change='linkageDepartment()'>
<el-option :label="$t('pub.unlimitedSel')" value='-1'></el-option>
<el-option v-for='item in companyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</span></li>
<li><span><em>{{$t('admin.admin_Department')}}</em><el-select filterable v-model='msg.RB_Department_Id' @change='linkagePost()'>
<el-option :label="$t('pub.unlimitedSel')" value='0'></el-option>
<el-option v-for='item in departMentList'
:label='item.DepartmentName'
:value='item.DepartmentID'
:key='item.DepartmentID'>
</el-option>
</el-select>
</span>
</li>-->
<li><span><em>{{$t('admin.admin_Post')}}</em><el-select filterable v-model='msg.RB_Post_Id'>
<el-option :label="$t('pub.unlimitedSel')" value='0'></el-option>
<el-option v-for='item in PostList'
:label='item.PostName'
:value='item.PostId'
:key='item.PostId'>
</el-option>
</el-select>
</span></li>
<li><span><em>{{$t('system.query_name')}}</em><el-input v-model='msg.EmName' @keyup.enter.native="getList" ></el-input></span></li>
<li><span><em>{{$t('adm.adm_logincount')}}</em><el-input v-model='msg.EmAccount' @keyup.enter.native="getList" ></el-input></span></li>
<li><span><em>{{$t('hotel.hotel_status')}}</em><el-select filterable v-model="msg.Status" >
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option :label="$t('pub.jobSel')" value="0"></el-option>
<el-option :label="$t('pub.noJobSel')" value="1"></el-option>
</el-select>
</span>
</li>
<li><span><em>{{$t('admin.admin_Entrytime')}}</em><el-date-picker v-model='msg.sEmEntry' class='w105' value-format="yyyy-MM-dd" type="date"></el-date-picker>
-
<el-date-picker v-model='msg.eEmEntry' class='w105' value-format="yyyy-MM-dd" type="date"></el-date-picker>
</span>
</li>
<li><span><em>{{$t('admin.admin_Departuretime')}}</em><el-date-picker v-model='msg.sEmLeave' value-format="yyyy-MM-dd" class='w105' type="date"></el-date-picker>
-
<el-date-picker v-model='msg.eEmLeave' value-format="yyyy-MM-dd" class='w105' type="date"></el-date-picker>
</span>
</li>
<li><input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="resetPageIndex(),getList()" /> &nbsp;
<!-- <input type="button" @click="outerVisible = true,isleaveBtn=false,dialogTitle='添加员工',getCompany()" class="normalBtn" value="新增" />-->
</li>
</ul>
</div>
<div class="clearfix"></div>
<div style="margin: 10px 0;" class="fz14 color333">{{$t('adm.adm_Validaccount')}}:<span class="colorE95252">{{UseNum}}</span>&nbsp;&nbsp;&nbsp;&nbsp;账号限额:<span class="colorE95252">{{TotalNum}}</span></div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<!-- <th>{{$t('system.table_company')}}</th>
<th>{{$t('admin.admin_Department')}}</th> -->
<th>{{$t('admin.admin_Post')}}</th>
<th>{{$t('system.query_name')}}</th>
<th>{{$t('system.table_sex')}}</th>
<th>{{$t('system.table_acc')}}</th>
<th>{{$t('adm.adm_logintel')}}</th>
<th>{{$t('admin.admin_Entrytime')}}</th>
<th>{{$t('admin.admin_Departuretime')}}</th>
<th>{{$t('admin.admin_operate')}}</th>
</tr>
<tr v-for="(item,index) in DataList" v-loading='loading'>
<!-- <td>{{item.BranchName}}</td>
<td>{{item.DepartName}}</td> -->
<td>{{item.PostName}}</td>
<td>{{item.EmName}}</td>
<td>{{item.EmSex==0 ? $t('pub.man') :$t('pub.woman')}}</td>
<td>{{item.EmAccount}}</td>
<td>{{item.EmLoginMobile}}</td>
<td>{{item.EmEntry}}</td>
<td>{{item.EmLeave | leaveTimeFormat(item.EmLeave)}}</td>
<td>
<el-tooltip class="item" effect="dark" :content="$t('adm.adm_changeUserInfo')" placement="top">
<el-button type="primary" icon="el-icon-edit" circle @click="outerVisible=true,dialogTitle='修改用户信息',updateData(item.EmployeeId),getCompany()"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('adm.adm_bindaccountinfo')" placement="top">
<el-button type="primary" class='zidingyiFz' icon="iconfont icon-bangdingzhagnhuxinxi" circle @click="goUrl('empBankAccount',item.EmployeeId)"></el-button>
</el-tooltip>
</td>
</tr>
</table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination>
<el-dialog custom-class='w800' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie">
<el-dialog custom-class='w400' :title="$t('adm.adm_changepd')" :visible.sync="innerVisible" center append-to-body :before-close="closeChangeMachie1">
<el-form :model="pwdMsg" label-width="100px" :rules="rulesPwd" ref="pwdMsg">
<el-form-item :label="$t('system.table_staffs')" prop="EmName">
<el-input class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')" readonly></el-input>
</el-form-item>
<el-form-item :label="$t('system.table_acc')" prop="EmAccount">
<el-input class='w217' type="text" v-model="addMsg.EmAccount" :placeholder="$t('pub.pleaseImport')" readonly></el-input>
</el-form-item>
<el-form-item :label="$t('adm.adm_newPd')" prop="Pwd">
<el-input class='w217' type="password" v-model="pwdMsg.Pwd" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
<el-form-item :label="$t('adm.adm_Reinput')" prop="Pwd1">
<el-input class='w217' type="password" v-model="pwdMsg.Pwd1" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="innerVisible=false,resetForm('pwdMsg')">{{$t('pub.cancelBtn')}}</button>
<button class="normalBtn" @click="submitForm1('pwdMsg')">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
<el-dialog custom-class='w400' :title="$t('adm.adm_changelogintel')" :visible.sync="updateLoginMobile" center append-to-body :before-close="closeChangeMachieulm">
<el-form :model="ulmMsg" label-width="100px" :rules="rulesulm" ref="ulmMsg">
<el-form-item :label="$t('adm.adm_staff')" prop="EmName">
<el-input class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')" readonly></el-input>
</el-form-item>
<el-form-item :label="$t('adm.adm_logintel')" prop="EmAccount">
<el-input class='w217' type="text" v-model="EmLoginMobile" :placeholder="$t('pub.pleaseImport')" readonly></el-input>
</el-form-item>
<el-form-item :label="$t('adm.adm_newphone')" prop="LoginMobile">
<el-input class='w217' type="text" v-model="ulmMsg.LoginMobile" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
<el-form-item :label="$t('adm.adm_Reinput')" prop="LoginMobile1">
<el-input class='w217' type="text" v-model="ulmMsg.LoginMobile1" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="updateLoginMobile=false,resetForm('ulmMsg')">{{$t('pub.cancelBtn')}}</button>
<button class="normalBtn" @click="submitFormulm('ulmMsg')">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px" >
<table class="layerTable layerNoIcon">
<!-- <tr>
<td>
<el-form-item :label="$t('system.table_company')" prop="RB_Branch_id">
<el-select filterable class='w217' v-model='addMsg.RB_Branch_id' @change='layerLinkageDepartment()' :placeholder="$t('pub.pleaseSel')">
<el-option v-for='item in layerCompanyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_Department')" prop="RB_Department_Id">
<el-select filterable class='w217' v-model='addMsg.RB_Department_Id' @change='layerLinkagePost()' :placeholder="$t('pub.pleaseSel')">
<el-option v-for='item in layerDepartMentList'
:label='item.DepartmentName'
:value='item.DepartmentID'
:key='item.DepartmentID'>
</el-option>
</el-select>
</el-form-item>
</td>
</tr> -->
<tr>
<td>
<el-form-item :label="$t('admin.admin_Post')" prop="RB_Post_Id">
<el-select filterable class='w217' v-model='addMsg.RB_Post_Id' :placeholder="$t('pub.pleaseSel')">
<el-option v-for='item in layerPostList'
:label='item.PostName'
:value='item.PostId'
:key='item.PostId'>
</el-option>
</el-select>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('system.query_name')" prop="EmName">
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmName" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('system.table_IDcard')" prop="EmCard">
<el-input class='w217' type="text" v-model="addMsg.EmCard" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
<!--<span><em></em>身份证</span><input v-model="addMsg.EmCard" class="layerText" type="text">-->
</td>
<td>
<el-form-item :label="$t('leader.leader_Sex')" prop="EmSex">
<el-select class='w217' filterable v-model='addMsg.EmSex' :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.man')" value='0'></el-option>
<el-option :label="$t('pub.woman')" value='1'></el-option>
</el-select>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('admin.admin_xueli')" prop="EmEducation">
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmEducation" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_Entrytime')" prop="EmEntry">
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmEntry' type="date"></el-date-picker>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('admin.admin_Departuretime')" prop="EmLeave">
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmLeave' type="date" disabled></el-date-picker>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('hotel.table_address')" prop="EmAddress">
<el-input maxlength='50' class='w217' type="text" v-model="addMsg.EmAddress" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('system.table_phone')" prop="EmMobile">
<el-input class='w217' type="text" v-model="addMsg.EmMobile" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('hotel.hotel_landline')" prop="EmTel">
<el-input maxlength='20' class='w217' type="text" v-model="addMsg.EmTel" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item label="QQ" prop="EmQQ">
<el-input class='w217' type="text" v-model="addMsg.EmQQ" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_Birthday')" prop="EmBirthday">
<el-date-picker value-format="yyyy-MM-dd" class='w217' v-model='addMsg.EmBirthday' type="date"></el-date-picker>
</el-form-item>
</td>
</tr>
<tr>
<td>
<el-form-item :label="$t('system.table_acc')" prop="EmAccount">
<el-input class='w217' type="text" v-model="addMsg.EmAccount" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
</td>
<td>
<el-form-item :label="$t('admin.admin_password')" prop="EmPassword">
<el-input v-if='!isleaveBtn' class='w217' type="text" v-model="addMsg.EmPassword" :placeholder="$t('pub.pleaseImport')"></el-input>
<input type="button" :value="$t('adm.adm_resetpd')" v-if='isleaveBtn' class="normalBtn" @click="innerVisible=true,resetForm('pwdMsg')" />
</el-form-item>
</td>
</tr>
</table>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false,resetForm('addMsg')">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> &nbsp;
<button v-if='isleaveBtn' class="normalBtn" @click="setIsLeave(leaveId)">{{leaveBtn}}</button>
<button v-if="isleaveBtn&&EmLoginMobile!=''" class="normalBtn" @click="updateLoginMobile=true,resetForm('ulmMsg')">修改登录手机</button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
let validatorPwd1=(rule, value, callback)=>{
if(this.pwdMsg.Pwd!=''&&this.pwdMsg.Pwd!=this.pwdMsg.Pwd1){
return callback(new Error(this.$t('adm.adm_twopdnotsame')));
}else{
callback();
}
}
let validatorulm=(rule, value, callback)=>{
if(this.ulmMsg.LoginMobile!=''&&this.ulmMsg.LoginMobile!=this.ulmMsg.LoginMobile1){
return callback(new Error(this.$t('adm.adm_twotelphnotsame')));
}else{
callback();
}
}
return {
UseNum:0,
TotalNum:0,
leaveBtn:'',
leaveId:'',
loading:true,
isleaveBtn:false,
total: 0,
pageSize: '',
currentPage: 1,
outerVisible: false,
innerVisible: false,
updateLoginMobile: false,
isRight: true,
dialogTitle: '',
insideDialogTxt: '',
//请求
msg: {
pageIndex: 1,
pageSize: 15,
EmName: '',
EmAccount: '',
RB_Group_id: '0',
RB_Branch_id: '-1',
RB_Department_Id: '0',
RB_Post_Id: '0',
Status: '0',
sEmEntry: '',
eEmEntry: '',
sEmLeave: '',
eEmLeave: '',
IsParentCompany:2
},
rules:{
RB_Branch_id:[
{ required: true, message: this.$t('rule.company'), trigger: 'change' }
],
RB_Department_Id:[
{ required: true, message: this.$t('tips.qxzbumen'), trigger: 'change' }
],
RB_Post_Id:[
{ required: true, message: this.$t('tips.qxzgangwei'), trigger: 'change' }
],
EmName:[
{ required: true, message: this.$t('rule.qsrname'), trigger: 'blur' }
],
EmEntry:[
{ required: true, message: this.$t('rule.qxzrzshijian'), trigger: 'blur' }
],
EmAccount:[
{ required: true, message: this.$t('login.login_account'), trigger: 'blur' },
{pattern: /^[a-zA-Z0-9]{4,18}$/, message: '账号为6-18位字母数字组成' }
],
EmPassword:[
{ required: true, message: this.$t('login.login_password'), trigger: 'blur' }
],
EmQQ:[
{pattern: /^\d{5,11}$/, message: this.$t('rule.qsrzqdqq') }
],
EmMobile:[
{pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|17[012356789]|18[0-9]|19[0-9]|14[57])[0-9]{8}$/, message: '请输入正确的手机'}
],
EmCard:[
{pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: this.$t('rule.qsrIdnum') }
],
},
addMsg:{
EmName:'',
EmSex:'0',
EmCard:'',
EmBirthday:'',
EmEducation:'',
EmEntry:'',
EmLeave:'',
EmAddress:'',
EmMobile:'',
EmTel:'',
EmQQ:'',
EmPhoto:'',
EmAccount:'',
EmPassword:'',
RB_Group_id :'',
RB_Branch_id:'',
RB_Department_Id:'',
RB_Post_Id:'',
},
pwdMsg:{
Id:'',
Pwd:'',
pwd1:''
},
ulmMsg:{
EmployeeId:'',
LoginMobile:'',
LoginMobile1:''
},
rulesPwd:{
Pwd:[
{ required: true, message: this.$t('login.login_password'), trigger: 'blur' }
],
Pwd1:[
{validator: validatorPwd1, trigger: 'blur' }
],
},
rulesulm:{
LoginMobile:[
{ required: true
,pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|17[012356789]|18[0-9]|19[0-9]|14[57])[0-9]{8}$/
, message: this.$t('rule.qsrtelphone')
, trigger: 'blur' }
],
LoginMobile1:[
{validator: validatorulm, trigger: 'blur' }
],
},
getGroupMsg:{
Status:'0',
GroupName:'',
Domain:'',
Versions_Id:'',
},
getCompanyMsg:{
RB_Group_Id:'0',
Status:'0',
},
getDepartmentMsg:{
RB_Group_Id:'0',
RB_Branch_Id:'-1',
Status:'0',
},
getPostMsg:{
RB_Group_Id:'0',
RB_Branch_Id:'-1',
RB_Department_Id:'0',
},
//返回值的接收变量
EmLoginMobile:'',
DataList: [],
groupList:[],
layerCompanyList:[],
companyList:[],
layerDepartMentList:[],
departMentList:[],
layerPostList:[],
PostList:[],
RB_Group_id:-1,
}
},
mounted() {
let userInfo=this.getLocalStorage();
this.RB_Group_id = userInfo.RB_Group_id;
this.getPostMsg.RB_Group_Id=this.getCompanyMsg.RB_Group_Id=this.getDepartmentMsg.RB_Group_Id=this.addMsg.RB_Group_id=this.msg.RB_Group_id=userInfo.RB_Group_id; //集团
this.getPostMsg.RB_Branch_Id=this.getDepartmentMsg.RB_Branch_Id=this.msg.RB_Branch_id=userInfo.RB_Branch_id; //公司
this.getPostMsg.RB_Department_Id=userInfo.RB_Department_Id; //部门
this.msg.IsParentCompany=userInfo.IsParentCompany;//是否为总公司
this.getList();
this.getCompany();
this.getDerpartMent();
this.getPost();
this.getTotalNum()
},
filters:{
leaveTimeFormat(value){
if(value=='')
{
return '在职'
}else{
return value
}
}
},
methods: {
getTotalNum(){
this.apipost('admin_get_GetGroupEmployeeNum',{},res=>{
if(res.data.resultCode==1){
this.UseNum=res.data.data.UseNum,
this.TotalNum=res.data.data.TotalNum
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
savePwd(){
this.apipost('admin_post_EmployeeResetPwd',this.pwdMsg,res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.innerVisible=false
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
saveUpdateLoginMobile(){
this.apipost('admin_post_ResetLoginMobile',this.ulmMsg,res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.updateLoginMobile=false
}else{
this.$message.error (res.data.message)
}
},err=>{})
},
setIsLeave(Id){
let myDate = new Date();
let _year = myDate.getFullYear();
let _month = myDate.getMonth() >= 9 ? myDate.getMonth() + 1 : '0' + (myDate.getMonth() + 1);
let _date = myDate.getDate() > 9 ? myDate.getDate() : '0' + myDate.getDate();
let _time=_year+'-'+_month+'-'+_date;
this.apipost('admin_post_EmployeeInOrOut',{Id:Id,Time:_time,},res=>{
if(res.data.resultCode==1){
this.$message.success(res.data.message)
this.outerVisible=false;
this.getList();
}else{
this.$message.error(res.data.message)
}
},err=>{})
},
getGroup(){
this.apipost('admin_get_GroupGetList',this.getGroupMsg,res=>{
if(res.data.resultCode==1){
this.groupList=res.data.data;
}else{}
},err=>{})
},
getCompany(){
this.apipost('admin_get_BranchGetList',this.getCompanyMsg,res=>{
if(res.data.resultCode==1){
if(this.outerVisible){
this.layerCompanyList=res.data.data;
}else{
this.companyList=res.data.data;
}
//console.log(this.layerCompanyList)
}else{}
},err=>{})
},
getDerpartMent(){ //获取部门
this.apipost('admin_get_DepartmentGetList',this.getDepartmentMsg,res=>{
if(res.data.resultCode==1){
if(this.outerVisible){
this.layerDepartMentList=res.data.data;
}else{
this.departMentList=res.data.data;
}
//console.log(this.departMentList)
}else{}
},err=>{})
},
getPost(){ //岗位
this.apipost('admin_get_TempPostGetList',{RB_Group_id:this.RB_Group_id},res=>{
if(res.data.resultCode==1){
if(this.outerVisible){
this.layerPostList=res.data.data;
}else{
//console.log(res.data.data)
this.PostList=res.data.data;
}
//console.log(this.PostList)
}else{}
},err=>{})
},
getList() { //获取数据
this.loading=true,
this.apipost('admin_get_TempEmployeeList', this.msg, res => {
if(res.data.resultCode == 1) {
this.loading=false;
this.DataList = res.data.data.pageData;
this.total = res.data.data.count;
} else {}
}, err => {})
},
addData(){
this.isleaveBtn=false;
this.apipost('admin_post_TempEmployeeOperate', this.addMsg, res => {
if(res.data.resultCode==1)
{
this.$message.success(res.data.message);
this.outerVisible=false;
this.getList()
this.resetForm('addMsg');
}else{
this.$message.error(res.data.message)
}
}, err => {})
this.getList();
},
updateData(id){
this.pwdMsg.Id=id;
this.ulmMsg.EmployeeId=id;
this.leaveId=id;
this.isleaveBtn=true;
this.apipost('admin_get_EmployeeGet',{Id:id},res=>{
if(res.data.resultCode==1)
{
this.getDepartmentMsg.RB_Branch_Id=res.data.data.RB_Branch_id
this.getPostMsg.RB_Department_Id=res.data.data.RB_Department_Id;
this.getDerpartMent();
this.getPost();
this.addMsg=res.data.data;
this.EmLoginMobile=res.data.data.EmLoginMobile;
if(res.data.data.IsLeave==0){
this.leaveBtn=this.$t('adm.adm_swlizhi');
}else{
this.leaveBtn=this.$t('adm.adm_swzaizhi');
}
this.addMsg.EmSex=res.data.data.EmSex.toString();
}
},err=>{})
},
linkageDepartment(){ //联动部门
this.msg.RB_Department_Id='0';
this.msg.RB_Post_Id='0';
this.getDepartmentMsg.RB_Branch_Id=this.msg.RB_Branch_id;
this.getDerpartMent();
},
layerLinkageDepartment(){ //弹窗联动部门
this.addMsg.RB_Department_Id='';
this.addMsg.RB_Post_Id='',
this.getDepartmentMsg.RB_Branch_Id=this.addMsg.RB_Branch_id;
this.getDerpartMent();
},
linkagePost(){ //联动岗位
this.getPostMsg.RB_Branch_Id = this.msg.RB_Branch_id;
this.getPostMsg.RB_Department_Id=this.msg.RB_Department_Id
this.getPost();
},
layerLinkagePost(){ //弹窗联动岗位
this.addMsg.RB_Post_Id='',
this.getPostMsg.RB_Branch_Id = this.addMsg.RB_Branch_id;
this.getPostMsg.RB_Department_Id=this.addMsg.RB_Department_Id
this.getPost();
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1
},
submitForm(addMsg) {//提交创建、修改表单
this.$refs[addMsg].validate((valid) => {
if (valid) {
this.addData()
} else {
return false;
}
});
},
submitForm1(pwdMsg) {//提交创建、修改表单
this.$refs[pwdMsg].validate((valid) => {
if (valid) {
this.savePwd()
} else {
return false;
}
});
},
submitFormulm(ulmMsg) {//提交创建、修改表单
this.$refs[ulmMsg].validate((valid) => {
if (valid) {
this.saveUpdateLoginMobile()
} else {
return false;
}
});
},
goUrl(name,id){
this.$router.push({ name: name,query:{"id":id,"type":9,blank:'y',tab:'绑定账户信息'}})
},
closeChangeMachie(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('addMsg');
},
closeChangeMachie1(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('pwdMsg');
},
closeChangeMachieulm(done){//弹出框关闭初始化弹框内表单
done();
this.resetForm('ulmMsg');
},
resetForm(formName) {//弹出框取消 初始化谈框内表单
this.$refs[formName].resetFields();
this.addMsg.EmployeeId='0'
}
}
}
</script>
\ No newline at end of file
...@@ -180,11 +180,12 @@ ...@@ -180,11 +180,12 @@
border: 1px solid #d1d1d1; border: 1px solid #d1d1d1;
} }
._TravelPricePopover .jiDiv{ ._TravelPricePopover .jiDiv {
width:650px; width: 650px;
max-height:400px; max-height: 400px;
overflow: auto; overflow: auto;
} }
._TravelPricePopover table { ._TravelPricePopover table {
padding: 10px 0 0 20px; padding: 10px 0 0 20px;
background-color: #ededed; background-color: #ededed;
...@@ -334,12 +335,14 @@ ...@@ -334,12 +335,14 @@
cursor: default !important; cursor: default !important;
box-shadow: none !important; box-shadow: none !important;
} }
.lessPriceRule{
font-size:14px; .lessPriceRule {
margin-left:40px; font-size: 14px;
margin-left: 40px;
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
</style> </style>
<template> <template>
...@@ -437,13 +440,14 @@ ...@@ -437,13 +440,14 @@
<el-checkbox v-model="priceData.IsSupportChildren" :true-label="CheckedVaule" <el-checkbox v-model="priceData.IsSupportChildren" :true-label="CheckedVaule"
:false-label="UnCheckedVaule">支持儿童出游 :false-label="UnCheckedVaule">支持儿童出游
</el-checkbox> </el-checkbox>
<el-checkbox v-model="priceData.IsBookTeam" :true-label="CheckedVaule" v-if="PostConfig.LineId==14" <el-checkbox v-model="priceData.IsBookTeam" :true-label="CheckedVaule" v-if="PostConfig.LineId==14"
:false-label="UnCheckedVaule">订团 :false-label="UnCheckedVaule">订团
</el-checkbox> </el-checkbox>
<el-checkbox v-model="priceData.IsLessPrice" :true-label="CheckedVaule" <el-checkbox v-model="priceData.IsLessPrice" :true-label="CheckedVaule"
:false-label="UnCheckedVaule">可少价 :false-label="UnCheckedVaule">可少价
</el-checkbox> </el-checkbox>
<input type="button" class="normalBtn" value="酒店使用情况" @click="outerVisible=true" v-if="PostConfig.LineId==14 && priceData.PriceHotelList&&priceData.PriceHotelList.length>0" /> <input type="button" class="normalBtn" value="酒店使用情况" @click="outerVisible=true"
v-if="PostConfig.LineId==14 && priceData.PriceHotelList&&priceData.PriceHotelList.length>0" />
</div> </div>
<el-form-item prop="B2BMemberPrice"> <el-form-item prop="B2BMemberPrice">
<el-input placeholder="请输入" class="w190 ComSeat" v-model="priceData.B2BMemberPrice" <el-input placeholder="请输入" class="w190 ComSeat" v-model="priceData.B2BMemberPrice"
...@@ -693,13 +697,16 @@ ...@@ -693,13 +697,16 @@
<el-checkbox v-model="fitem.IsSelected===true" @change="getSelect(fitem)"></el-checkbox> <el-checkbox v-model="fitem.IsSelected===true" @change="getSelect(fitem)"></el-checkbox>
</td> </td>
<td> <td>
<span class="TP_Airticktid" @click="goUrl('TicketManager',fitem.AirticketId)">{{fitem.FlightNumber}}</span> / {{fitem.AlName}} / {{fitem.DepartureName}}-{{fitem.ArrivalCityName}} <span class="TP_Airticktid"
@click="goUrl('TicketManager',fitem.AirticketId)">{{fitem.FlightNumber}}</span> /
{{fitem.AlName}} / {{fitem.DepartureName}}-{{fitem.ArrivalCityName}}
</td> </td>
<td>{{fitem.FlightDate}} {{fitem.Departure_time}}</td> <td>{{fitem.FlightDate}} {{fitem.Departure_time}}</td>
<td>{{fitem.PNR}}</td> <td>{{fitem.PNR}}</td>
<td>{{fitem.TicketNum}} / {{fitem.UseAmount}}</td> <td>{{fitem.TicketNum}} / {{fitem.UseAmount}}</td>
<td> <td>
<el-input class="w80" placeholder="机位数" @keyup.native="getFlightBindNum(fitem)" v-model="fitem.BindNum"></el-input> <el-input class="w80" placeholder="机位数" @keyup.native="getFlightBindNum(fitem)"
v-model="fitem.BindNum"></el-input>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -774,9 +781,10 @@ ...@@ -774,9 +781,10 @@
</el-form-item> </el-form-item>
</div> </div>
</div> </div>
<div class="TPright"> <div class="TPright">
<span v-if="priceData.IsLessPrice==1" @click="getLessPriceInfo(),lessPriceVisible=true" class="lessPriceRule">少价规则</span> <span v-if="priceData.IsLessPrice==1" @click="getLessPriceInfo(),lessPriceVisible=true"
</div> class="lessPriceRule">少价规则</span>
</div>
</div> </div>
</el-form> </el-form>
</div> </div>
...@@ -789,26 +797,48 @@ ...@@ -789,26 +797,48 @@
</div> </div>
<el-dialog custom-class='Tp_hotelDialog' title="酒店使用情况" :visible.sync="outerVisible" center> <el-dialog custom-class='Tp_hotelDialog' title="酒店使用情况" :visible.sync="outerVisible" center>
<table class="TphotelTable" border="0" cellspacing='1' v-if="priceData.TCID>0"> <table class="TphotelTable" border="0" cellspacing='1' v-if="priceData.TCID>0">
<tr>
<th>日期</th>
<th>酒店</th>
<th>占房时间</th>
<th>更换酒店</th>
</tr>
<tr v-if="priceData.PriceHotelList" v-for="item in priceData.PriceHotelList"> <tr v-if="priceData.PriceHotelList" v-for="item in priceData.PriceHotelList">
<td style="background-color:#E6E6E6;color:#333;" width="120">{{item.UseDay}}</td> <td style="background-color:#E6E6E6;color:#333;" width="120">{{item.UseDay}}</td>
<td> <td>
<div class="tp_divList" v-for="(subItem,index) in item.SubList"> <div class="tp_divList" v-for="(subItem,index) in item.SubList">
<div> <div>
{{index+1}}.{{subItem.HotelName}}&nbsp;&nbsp;<span v-if="subItem.UseCount>0 && item.SubList.length==1"> {{index+1}}.{{subItem.HotelName}}&nbsp;&nbsp;
<span style="color:green">本团使用库存:{{subItem.UseCount}} {{subItem.CostPrice!=0?"价格:"+subItem.CostPrice:""}}</span></span><span <span v-if="subItem.UseCount>0 && item.SubList.length==1">
style="color:#E95252;">剩余库存:{{subItem.RemainingInventory}}</span>&nbsp;&nbsp; <a style="color:green">{{subItem.RemainingInventory>-3?"【OK】":"【暂定】"}}</a>
<span style="color:green">本团使用库存:{{subItem.UseCount}}
{{subItem.CostPrice!=0?"价格:"+subItem.CostPrice:""}}</span>
</span>
<span style="color:#E95252;">剩余库存:{{subItem.RemainingInventory}}
</span>
&nbsp;&nbsp;
<el-checkbox v-if="item.SubList.length>1" v-model="item.CheckList[index].CheckStatus" <el-checkbox v-if="item.SubList.length>1" v-model="item.CheckList[index].CheckStatus"
@change="changeHotelStatus(item,index),changeHotelList()"></el-checkbox> @change="changeHotelStatus(item,index),changeHotelList()"></el-checkbox>
</div> </div>
</div> </div>
</td> </td>
<td>
<div class="tp_divList" v-for="(subItem,index) in item.SubList">
<div>
<span v-if="subItem.UseCount>0 && item.SubList.length==1">
<span style="color:green;white-space:nowrap;">{{subItem.CreateDateStr}}</span>
</span>
</div>
</div>
</td>
<td> <td>
<el-select class="w180" v-model="item.NewHotelId" @visible-change="getHotelList(item,$event)" <el-select class="w180" v-model="item.NewHotelId" @visible-change="getHotelList(item,$event)"
@change="changeHotelList()" filterable> @change="changeHotelList()" filterable>
<el-option :key="0" label="请选择" :value="0"></el-option> <el-option :key="0" label="请选择" :value="0"></el-option>
<el-option v-for="subItem in item.HotelList" :key="subItem.ID" :label="subItem.Name" :value="subItem.ID"> <el-option v-for="subItem in item.HotelList" :key="subItem.ID" :label="subItem.Name" :value="subItem.ID">
<span style="float: left">{{subItem.Name}}</span> <span style="float: left">{{subItem.Name}}</span>
<span style="float: right; color:red; font-size: 13px">剩余库存:{{subItem.Inventory}} / 价格:{{subItem.CostPrice}}</span> <span style="float: right; color:red; font-size: 13px">剩余库存:{{subItem.Inventory}} /
价格:{{subItem.CostPrice}}</span>
</el-option> </el-option>
</el-select> </el-select>
</td> </td>
...@@ -817,7 +847,8 @@ ...@@ -817,7 +847,8 @@
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="saveHoteluseDetail()" <button class="normalBtn" type="primary" @click="saveHoteluseDetail()"
:class="{'disClick':!isSaved}">{{btnText}}</button> &nbsp; :class="{'disClick':!isSaved}">{{btnText}}</button> &nbsp;
<button class="hollowFixedBtn" :class="{'disClick':!isSaved}" @click="cancelHotelUseDetail()">{{$t('pub.cancelBtn')}}</button> <button class="hollowFixedBtn" :class="{'disClick':!isSaved}"
@click="cancelHotelUseDetail()">{{$t('pub.cancelBtn')}}</button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -830,22 +861,25 @@ ...@@ -830,22 +861,25 @@
</tr> </tr>
<tr v-for="item in lessPriceData"> <tr v-for="item in lessPriceData">
<td> <td>
<span v-if="item.LessMoney!=null" style="margin-right:30px;">{{item.LessMoney}}元</span><span v-if="item.LessPercent!=null">{{item.LessPercent}}%</span> <span v-if="item.LessMoney!=null" style="margin-right:30px;">{{item.LessMoney}}元</span><span
v-if="item.LessPercent!=null">{{item.LessPercent}}%</span>
</td> </td>
<td> <td>
<span v-if="item.DeptLessMoney!=null" style="margin-right:30px;">{{item.DeptLessMoney}}元</span><span v-if="item.DeptLessPercent!=null">{{item.DeptLessPercent}}%</span> <span v-if="item.DeptLessMoney!=null" style="margin-right:30px;">{{item.DeptLessMoney}}元</span><span
v-if="item.DeptLessPercent!=null">{{item.DeptLessPercent}}%</span>
</td> </td>
<td> <td>
<span v-if="item.FilialeLessMoney!=null" style="margin-right:30px;">{{item.FilialeLessMoney}}元</span><span v-if="item.FilialeLessPercent!=null">{{item.FilialeLessPercent}}%</span> <span v-if="item.FilialeLessMoney!=null" style="margin-right:30px;">{{item.FilialeLessMoney}}元</span><span
v-if="item.FilialeLessPercent!=null">{{item.FilialeLessPercent}}%</span>
</td> </td>
</tr> </tr>
</table> </table>
<div class="noData" v-else> <div class="noData" v-else>
{{$t('system.content_noData')}} {{$t('system.content_noData')}}
</div> </div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="lessPriceVisible=false">{{$t('pub.cancelBtn')}}</button> <button class="hollowFixedBtn" @click="lessPriceVisible=false">{{$t('pub.cancelBtn')}}</button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -940,8 +974,8 @@ ...@@ -940,8 +974,8 @@
} }
}, },
//少价规则 //少价规则
lessPriceVisible:false, lessPriceVisible: false,
lessPriceData:[], lessPriceData: [],
}; };
}, },
methods: { methods: {
...@@ -1130,7 +1164,7 @@ ...@@ -1130,7 +1164,7 @@
if (this.priceData.AirticketBindList.length > 0) { if (this.priceData.AirticketBindList.length > 0) {
this.QFlightDateStart = this.priceData.AirticketBindList[0].FlightDate; this.QFlightDateStart = this.priceData.AirticketBindList[0].FlightDate;
this.QFlightDateEnd = this.priceData.AirticketBindList[this.priceData.AirticketBindList.length - 1] this.QFlightDateEnd = this.priceData.AirticketBindList[this.priceData.AirticketBindList.length - 1]
.FlightDate; .FlightDate;
this.getSelectFilght(); this.getSelectFilght();
} else { } else {
this.QFlightDateStart = this.daysCalculate(this.priceData.StartDate, -1); this.QFlightDateStart = this.daysCalculate(this.priceData.StartDate, -1);
...@@ -1155,7 +1189,7 @@ ...@@ -1155,7 +1189,7 @@
QFlightDateEnd: this.QFlightDateEnd, QFlightDateEnd: this.QFlightDateEnd,
CreateBy: createBy, CreateBy: createBy,
AirTicketId: this.priceData.AirTicketId, AirTicketId: this.priceData.AirTicketId,
TCID:this.priceData.TCID TCID: this.priceData.TCID
}; };
let that = this; let that = this;
...@@ -1432,11 +1466,10 @@ ...@@ -1432,11 +1466,10 @@
parseInt(this.priceData.YSeat) + parseInt(this.priceData.YSeat) +
parseInt(this.priceData.CSeat) + parseInt(this.priceData.CSeat) +
parseInt(this.priceData.FSeat); parseInt(this.priceData.FSeat);
if(Number(fitem.TicketNum)-Number(fitem.OtherTeamUseNum)<Number(fitem.BindNum)) if (Number(fitem.TicketNum) - Number(fitem.OtherTeamUseNum) < Number(fitem.BindNum)) {
{ fitem.BindNum = 0;
fitem.BindNum=0; this.Error("最多只能绑定" + (Number(fitem.TicketNum) - Number(fitem.OtherTeamUseNum)) + "个机位");
this.Error("最多只能绑定"+(Number(fitem.TicketNum)-Number(fitem.OtherTeamUseNum))+"个机位"); }
}
this.selectFilghtList.forEach((x, index) => { this.selectFilghtList.forEach((x, index) => {
if (x.IsSelected) { if (x.IsSelected) {
this.priceData.AirticketBindList.forEach(y => { this.priceData.AirticketBindList.forEach(y => {
...@@ -1517,13 +1550,13 @@ ...@@ -1517,13 +1550,13 @@
}, },
//保存酒店使用情况 //保存酒店使用情况
saveHoteluseDetail() { saveHoteluseDetail() {
var that=this; var that = this;
this.Confirm("是否确定提交选中的酒店?",function(){ this.Confirm("是否确定提交选中的酒店?", function () {
if (that.isSaved) { if (that.isSaved) {
that.isSaved = false; that.isSaved = false;
that.$emit("saveMsg"); that.$emit("saveMsg");
} }
that.btnText = '保存中...' that.btnText = '保存中...'
}); });
}, },
//取消 //取消
...@@ -1565,16 +1598,16 @@ ...@@ -1565,16 +1598,16 @@
} }
}, },
//获取少价信息 //获取少价信息
getLessPriceInfo(){ getLessPriceInfo() {
let msg = { let msg = {
RB_Branch_id:this.priceData.OutBranchId, RB_Branch_id: this.priceData.OutBranchId,
LineID:this.PostConfig.LineId, LineID: this.PostConfig.LineId,
LineTeamId:this.PostConfig.LineteamId LineTeamId: this.PostConfig.LineteamId
} }
this.apipost("sell_get_GetNewTCIDLessprice", msg,res => { this.apipost("sell_get_GetNewTCIDLessprice", msg, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.lessPriceData = res.data.data; this.lessPriceData = res.data.data;
}else{ } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, },
...@@ -1645,4 +1678,5 @@ ...@@ -1645,4 +1678,5 @@
TravelPriceFlightList: TravelPriceFlightList TravelPriceFlightList: TravelPriceFlightList
} }
}; };
</script>
\ No newline at end of file </script>
...@@ -258,6 +258,15 @@ export default { ...@@ -258,6 +258,15 @@ export default {
title: '员工管理' title: '员工管理'
}, },
}, },
{
path: '/Temporarystaff', //员工管理
name: 'Temporarystaff',
component: resolve => require(['@/components/administrative/Temporarystaff'], resolve),
meta: {
title: '临时员工'
},
},
{ {
path: '/empBankAccount', //员工账户管理 path: '/empBankAccount', //员工账户管理
name: 'empBankAccount', name: 'empBankAccount',
...@@ -290,7 +299,7 @@ export default { ...@@ -290,7 +299,7 @@ export default {
title: '考核管理' title: '考核管理'
}, },
}, },
{ {
path: '/leaderManagement', //领队导游管理 path: '/leaderManagement', //领队导游管理
name: 'leaderManagement', name: 'leaderManagement',
component: resolve => require(['@/components/LeaderManagement/leaderManagement'], resolve), component: resolve => require(['@/components/LeaderManagement/leaderManagement'], resolve),
......
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