Commit d7832d10 authored by 黄奎's avatar 黄奎

页面修改

parent 0447f735
<template>
<div class="groupApproval">
<div class="query-box">
<ul>
<li>
<em>出团公司</em>
<el-select filterable v-model='msg.OutBranchId' size="small"
@change='getControlList()'>
<el-option label="不限" :value="-1" :key="-1"></el-option>
<el-option
v-for="item in companyList"
:label='item.BName'
:value='item.Id'
:key='item.Id'
></el-option>
</el-select>
</li>
<li>
<span>
<em>团类型</em>
<el-select class="w200" v-model="msg.TeamType" filterable :placeholder="$t('pub.pleaseImport')" size="small"
@change="getControlList()">
<el-option v-for="item in groupType" :label="item.Name" :value="item.Id"
:key="item.Id"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>审核状态</em>
<el-select class="w200" v-model="msg.BranchAuditState" filterable :placeholder="$t('pub.pleaseImport')" size="small"
@change="getControlList()">
<el-option v-for="item in BranchAuditStateType" :label="item.Name" :value="item.Id"
:key="item.Id"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>团号</em>
<el-input maxlength="50" v-model="msg.TCNUM" class="permiss-input w200" size="small"
@keyup.enter="getControlList" :placeholder="$t('pub.pleaseImport')"></el-input>
</span>
</li>
<li v-if="false">
<span>
<em>编号</em>
<el-input maxlength="6" v-model="msg.TCID" class="permiss-input 200" size="small"
@keyup.native.enter="getControlList" :placeholder="$t('pub.pleaseImport')"
@keyup.native="checkInteger(msg,'TCID')"></el-input>
</span>
</li>
<li>
<span>
<em>申请日期</em>
<el-date-picker
style="width: 300px;"
v-model="StartTime"
format='yyyy-MM-dd'
value-format="yyyy-MM-dd"
size="small"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
@change="getStartTime">
</el-date-picker>
</span>
</li>
<li>
<button class="hollowFixedBtn" type="button"
@click="getControlList">{{$t('pub.searchBtn')}}</button>
</li>
</ul>
</div>
<ul class="_nav clearfix" v-if="false">
<li :class="active==1?'_active':''" @click="active=1, msg.OutGroupAuditState=1, getControlList()">待审批</li>
<li :class="active==2?'_active':''" @click="active=2, msg.OutGroupAuditState=2, getControlList()">已审批</li>
<div style="float: right;" v-if="multipleSelection.length>0">
<button class="hollowFixedBtn" @click="setAudit()">批量审核</button>
</div>
<li style="float: right;color: red;font-size: 14px;">
<!-- 注:落地团,小包团,国内线 均按订单利润的20%计算最大预计销售提成,实际发放提成不会超过最大预期销售提成 -->
</li>
<div class="query-box">
<ul>
<li>
<em>出团公司</em>
<el-select filterable v-model='msg.OutBranchId' size="small" @change='getControlList()' clearable>
<el-option label="不限" :value="-1" :key="-1"></el-option>
<el-option v-for="item in companyList" :label='item.BName' :value='item.Id' :key='item.Id'></el-option>
</el-select>
</li>
<li>
<span>
<em>团队类型</em>
<el-select class="w200" v-model="msg.TeamType" filterable :placeholder="$t('pub.pleaseImport')" size="small"
@change="getControlList()" clearable>
<el-option v-for="item in groupType" :label="item.Name" :value="item.Id" :key="item.Id"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>审核状态</em>
<el-select class="w200" v-model="msg.BranchAuditState" filterable :placeholder="$t('pub.pleaseImport')"
size="small" @change="getControlList()" clearable>
<el-option v-for="item in BranchAuditStateType" :label="item.Name" :value="item.Id" :key="item.Id">
</el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>团号</em>
<el-input maxlength="50" v-model="msg.TCNUM" class="permiss-input w200" size="small"
@keyup.enter="getControlList" :placeholder="$t('pub.pleaseImport')" clearable @clear="getControlList">
</el-input>
</span>
</li>
<li>
<span>
<em>申请日期</em>
<el-date-picker style="width: 300px;" v-model="StartTime" format='yyyy-MM-dd' value-format="yyyy-MM-dd"
size="small" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
@change="getStartTime" clearable>
</el-date-picker>
</span>
</li>
<li>
<button class="hollowFixedBtn" type="button" @click="getControlList">{{$t('pub.searchBtn')}}</button>
</li>
</ul>
</div>
<el-table v-loading="loading" ref="multipleTable" :data="dataList" tooltip-effect="dark" style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column label="团队编号" width="200">
<template slot-scope="scope">
<p>{{scope.row.OutBranchName}}</p>
<span style="cursor: pointer;text-decoration: underline;"
@click="goTravel(scope.row)">{{scope.row.TCNUM}}({{scope.row.TCID}})</span>
</template>
</el-table-column>
<el-table-column prop="StartDate" label="出发日期" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="LtName" label="系列" width="200" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.LineName}}</br>
{{scope.row.LtName}}
</template>
</el-table-column>
<el-table-column prop="Title" label="团名" width="200" show-overflow-tooltip></el-table-column>
<el-table-column prop="" label="申请人/申请日期" width="200">
<template slot-scope="scope">
<p> {{scope.row.BranchApplyName}}</p>
<p> {{scope.row.BranchApplyTime}}</p>
</template>
</el-table-column>
<el-table-column prop="OPName" label="申请原因" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.BranchApplyResion}}
</template>
</el-table-column>
<el-table-column prop="PriceTeamTypeName" label="团队类型" width="130">
<template slot-scope="scope">
<template v-if="scope.row.TeamTypeName">{{scope.row.TeamTypeName}}</template>
</template>
</el-table-column>
<el-table-column prop="OldBranchName" label="原出团公司" width="130"></el-table-column>
<el-table-column prop="NewBranchName" label="新出团公司" width="130"></el-table-column>
<el-table-column prop="" label="审核状态" width="100">
<template slot-scope="scope">
<span :style="{'color':scope.row.BranchAuditState==3?'red':scope.row.BranchAuditState==2?'#33B3FF':'blue'}">
{{scope.row.BranchAuditStateStr}}
</span>
</template>
</el-table-column>
<el-table-column prop="" label="操作" width="150">
<template slot-scope="scope">
<div class="_icon_btn">
<el-tooltip class="item" effect="dark" content="审核" placement="top" v-if="scope.row.BranchAuditState==1">
<i v-loading="loading" class="iconfont icon-ico_commodity_defaul" @click="shenhei(scope.row)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="驳回" placement="top" v-if="scope.row.BranchAuditState==1">
<i class="iconfont icon-shenhebohui" @click="bohui(scope.row)"></i>
</el-tooltip>
</div>
</template>
</el-table-column>
</el-table>
<div style="width: 100%;">
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page.sync="msg.pageIndex" layout="sizes,total,prev, pager, next, jumper"
:page-sizes="[5, 10, 20, 30,50,100]" :page-size="msg.pageSize" :total="total">
</el-pagination>
</div>
<ul style="overflow: initial!important">
<li style="margin-bottom:10px;width: 100%;">
</li>
</ul>
<el-table
v-loading="loading"
ref="multipleTable"
:data="dataList"
tooltip-effect="dark"
style="width: 100%"
@selection-change="handleSelectionChange"
>
<!-- <el-table-column
type="selection"
width="55" :selectable="selectable"> -->
</el-table-column>
<el-table-column
label="团队编号"
width="200">
<template slot-scope="scope">
<p>{{scope.row.OutBranchName}}</p>
<span style="cursor: pointer;text-decoration: underline;"
@click="goTravel(scope.row.TCID)">{{scope.row.TCNUM}}({{scope.row.TCID}})</span>
</template>
</el-table-column>
<el-table-column
prop="LtName"
label="系列"
width="200"
show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.LineName}}</br>
{{scope.row.LtName}}
</template>
</el-table-column>
<el-table-column
prop="Title"
label="团名"
width="200"
show-overflow-tooltip></el-table-column>
<el-table-column
prop=""
label="申请人/申请日期" width="200">
<template slot-scope="scope">
<p> {{scope.row.BranchApplyName}}</p>
<p> {{scope.row.BranchApplyTime}}</p>
</template>
</el-table-column>
<el-table-column
prop="OPName"
label="申请原因" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.BranchApplyResion}}
</template>
</el-table-column>
<el-table-column
prop="PriceTeamTypeName"
label="团队类型" width="130">
<template slot-scope="scope">
<template v-if="scope.row.TeamTypeName">{{scope.row.TeamTypeName}}</template>
</template>
</el-table-column>
<el-table-column
prop="OldBranchName"
label="原出团公司" width="130"></el-table-column>
<el-table-column
prop="NewBranchName"
label="新出团公司" width="130"></el-table-column>
<el-table-column
prop=""
label="审核状态" width="100">
<template slot-scope="scope">
<span :style="{'color':scope.row.BranchAuditState==1?'red':scope.row.BranchAuditState==2?'#33B3FF':''}">
{{scope.row.BranchAuditStateStr}}
</span>
</template>
</el-table-column>
<el-table-column
prop=""
label="操作"
width="150">
<template slot-scope="scope">
<div class="_icon_btn">
<el-tooltip class="item" effect="dark" content="审核" placement="top"
v-if="scope.row.BranchAuditState==1">
<i v-loading="loading" class="iconfont icon-ico_commodity_defaul" @click="shenhei(scope.row)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="驳回" placement="top" v-if="scope.row.BranchAuditState==1">
<i class="iconfont icon-shenhebohui" @click="bohui(scope.row)"></i>
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="收支明细" placement="top">
<i class="iconfont icon-mingxi" @click="goTeamBalance(scope.row.TCID)"></i>
</el-tooltip> -->
</div>
</template>
</el-table-column>
</el-table>
<div style="width: 100%;">
<el-pagination background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page.sync="msg.pageIndex"
layout="sizes,total,prev, pager, next, jumper"
:page-sizes="[5, 10, 20, 30,50,100]"
:page-size="msg.pageSize" :total="total">
</el-pagination>
<el-dialog custom-class="w600" title="驳回缘由" :visible.sync="cancelOrderDialog">
<div style="padding-bottom:20px">
<el-input type="textarea" autofocus rows="5" placeholder="请填写驳回该团的缘由" clear="w300" v-model="cancelRemark">
</el-input>
<el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="24" style="text-align: right;">
<el-button class="normalBtn" value="" @click="cancelOrderHandler" :loading="loading">确定驳回</el-button>
<el-button class="hollowFixedBtn" @click="cancelOrderDialog = false,cancelRemark=''">关闭</el-button>
</el-col>
</el-row>
</div>
<el-dialog
custom-class="w600"
title="驳回缘由"
:visible.sync="cancelOrderDialog"
>
<div style="padding-bottom:20px">
<el-input
type="textarea"
autofocus
rows="5"
placeholder="请填写驳回该团的缘由"
clear="w300"
v-model="cancelRemark"
></el-input>
<el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="24" style="text-align: right;">
<el-button
class="normalBtn"
value=""
@click="cancelOrderHandler"
:loading="loading"
>确定驳回</el-button>
<el-button
class="hollowFixedBtn"
@click="cancelOrderDialog = false,cancelRemark=''"
>关闭</el-button>
</el-col>
</el-row>
</div>
</el-dialog>
</el-dialog>
</div>
</template>
<script>
export default {
components: {
},
data() {
return {
StartTime:[],
groupType:[
{Name:'不限',Id:-1},
{Name:'小包团',Id:1},
{Name:'当地游',Id:2},
{Name:'常规团',Id:0}
],
BranchAuditStateType:[
{Name:'不限',Id:-1},
{Name:'待审核',Id:1},
{Name:'通过',Id:2},
{Name:'驳回',Id:3}
],
companyList:[],
cancelRemark: '',
dataRow: null,
cancelOrderDialog: false,
loading: false,
dataList: [],
active: '1',
msg: {
pageIndex: 1,
pageSize: 10,
TCNUM: '',//团号
TeamType: -1,//团队类型 0-常规,1-小包团,2-当地游
OutBranchId: -1,
QStartDate: '',
QEndDate: '',
BranchAuditState: -1
},
TeamListArr:[],
total:0,
EmployeeId:0,
multipleSelection: [],
AuditLoading: false,
dialog: {
show: false,
ConfigId: '',
OfferId: ''
},
getCompanyMsg:{
RB_Group_Id:'0',
Status:'0',
},
data() {
return {
StartTime: [],
groupType: [{
Name: '不限',
Id: -1
},
{
Name: '小包团',
Id: 1
},
{
Name: '当地游',
Id: 2
},
{
Name: '常规团',
Id: 0
}
],
BranchAuditStateType: [{
Name: '不限',
Id: -1
},
{
Name: '待审核',
Id: 1
},
{
Name: '通过',
Id: 2
},
{
Name: '驳回',
Id: 3
}
],
companyList: [],
cancelRemark: '',
dataRow: null,
cancelOrderDialog: false,
loading: false,
dataList: [],
msg: {
pageIndex: 1,
pageSize: 10,
TCNUM: '', //团号
TeamType: -1, //团队类型 0-常规,1-小包团,2-当地游
OutBranchId: -1,
QStartDate: '',
QEndDate: '',
BranchAuditState: 1, //默认待审核
},
total: 0,
multipleSelection: [],
getCompanyMsg: {
RB_Group_Id: '0',
Status: '0',
},
}
},
created() {
var myDate = new Date();
var MonthDayNum = new Date(myDate.getFullYear(), myDate.getMonth(), 0).getDate();
var StartTime = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-01`
var EndTime = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-${MonthDayNum}`
this.StartTime = [StartTime, EndTime]
this.msg.QStartDate = StartTime
this.msg.QEndDate = EndTime
if (this.$route.query && this.$route.query.TCID) {
this.msg.TCID = this.$route.query.TCID
}
this.getCompany()
},
mounted() {
this.getList()
},
methods: {
getStartTime() {
if (this.StartTime.length == 2) {
this.msg.QStartDate = this.StartTime[0]
this.msg.QEndDate = this.StartTime[1]
} else {
this.msg.QStartDate = ''
this.msg.QEndDate = ''
}
},
created() {
var myDate = new Date();
var MonthDayNum = new Date(myDate.getFullYear(), myDate.getMonth(), 0).getDate();
var StartTime = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-01`
var EndTime = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-${MonthDayNum}`
this.StartTime = [StartTime,EndTime]
this.msg.QStartDate = StartTime
this.msg.QEndDate = EndTime
this.getTeamList()
let userinfo = this.getLocalStorage();
this.getCompanyMsg.RB_Group_Id=userinfo.RB_Group_id;
this.EmployeeId = userinfo.EmployeeId
let ActionMenuCode=userinfo.ActionMenuCode;
if(ActionMenuCode.indexOf('Finance_clumpSeeAll')!=-1){//如果有权限 可以查看所有 如果没有只能看自己审核的
// this.msg.OutGroupAuditEmpId = 0
}else{
// this.msg.OutGroupAuditEmpId = userinfo.EmployeeId
getCompany() {
this.apipost('admin_get_BranchGetList', this.getCompanyMsg, res => {
if (res.data.resultCode == 1) {
this.companyList = res.data.data;
}
if(this.$route.query && this.$route.query.TCID){
this.msg.TCID = this.$route.query.TCID
})
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
getControlList() {
this.msg.pageIndex = 1;
this.getList()
},
handleSizeChange(e) {
this.msg.pageSize = e;
this.getList()
},
handleCurrentChange(e) {
this.msg.pageIndex = e;
this.getList()
},
getList() {
this.loading = true
let msg = JSON.parse(JSON.stringify(this.msg))
this.apipost(
"travel_post_GetTravelOutBranchAuditPage",
msg,
res => {
this.loading = false
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
} else {
this.Error(res.data.message);
}
}
this.getCompany()
);
},
shenhei(item) {
let that = this;
that.$confirm('是否审核通过该团?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.groupAudit(2, item.TCID)
}).catch(() => {
});
},
mounted() {
this.getList()
cancelOrderHandler() {
if (!this.cancelRemark) return this.Error('请输入驳回缘由')
let that = this;
that.$confirm('是否驳回该团?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//掉接口
this.groupAudit(3, this.dataRow.TCID)
}).catch(() => {
});
},
methods: {
getStartTime(){
if(this.StartTime.length==2){
this.msg.QStartDate = this.StartTime[0]
this.msg.QEndDate = this.StartTime[1]
}else{
this.msg.QStartDate = ''
this.msg.QEndDate = ''
bohui(item) {
this.dataRow = item
this.cancelOrderDialog = true
return
},
groupAudit(type, TCID, name, length) {
let msg = {
TCID: TCID,
BranchAuditState: type,
BranchAuditRemark: this.cancelRemark
}
this.loading = true
this.apipost("travel_post_AuditPriceOutBranchTeamType", {
TCID: TCID,
BranchAuditState: type,
BranchAuditRemark: this.cancelRemark
}, res => {
if (res.data.resultCode == 1) {
if (!name) {
this.cancelOrderDialog = false
this.Success(res.data.message);
this.getList()
} else {
if (length) {
this.cancelOrderDialog = false
this.Success(res.data.message);
this.getList()
}
}
} else {
this.Error(res.data.message);
}
this.loading = false
}
},
// 销售预期提成
goAnticipate(row,type){
let userInfo = this.getLocalStorage();
let name
if(type==1){//国内
name = 'domesticCommissiondetails'
}else if(type==2){//单项
name = 'ServiceCommissiondetails'
}else if(type==3){//台湾
name = 'domesticCommissiondetailsTW'
}else if(type==4){//同业
name = 'TradeTicketDetails'
);
},
goTravel(item) { //跳转到团队列表
var newPath = "TravelControlList";
if (item.TeamType == 1) {
newPath = "TravelControlListSale"
}
if (item.TeamType == 2) {
newPath = "oneDayTrip"
}
this.$router.push({
name: name,
path: newPath,
query: {
Type: 1,
TCNUM: row.TCNUM,
blank: 'y'
TCID: item.TCID,
blank: 'y',
tab: '团控列表'
}
});
},
getCompany(){
this.apipost('admin_get_BranchGetList',this.getCompanyMsg,res=>{
if(res.data.resultCode==1){
this.companyList=res.data.data;
}else{}
},err=>{})
},
showDialog(ConfigId, OfferId) {
this.dialog = {
show: true,
ConfigId,
OfferId
}
this.$nextTick(() => {
this.$refs.dialog.getPostData()
})
},
selectable(row, index) {
if(this.active==1){
return true
}else{
return false
}
},
setAudit(type){
let ids = this.multipleSelection.map(x=>{ return x.TCID})
if(ids.length==0){
return this.$message.error('请勾选需要批量审核的数据');
}
let that = this;
that.$confirm('是否通过该批量审核数据?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
for(let i=0;i<ids.length;i++){
setTimeout(()=>{
this.groupAudit(2,ids[i],'multiple',(i+1)==ids.length?ids.length:0)
},500)
}
}).catch(() => {
});
},
handleSelectionChange(val) {
this.multipleSelection = val;
},
getControlList() {
this.msg.pageIndex = 1;
this.getList()
},
handleSizeChange(e){
this.msg.pageSize = e;
this.getList()
},
handleCurrentChange(e){
this.msg.pageIndex = e;
this.getList()
},
getList() {
this.loading = true
let msg = JSON.parse(JSON.stringify(this.msg))
this.apipost(
"travel_post_GetTravelOutBranchAuditPage",
msg,
res => {
this.loading = false
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
}else{
this.Error(res.data.message);
}
},
err => {
}
);
},
shenhei(item) {
let that = this;
that.$confirm('是否审核通过该团?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.groupAudit(2,item.TCID)
}).catch(() => {
});
},
cancelOrderHandler(){
if(!this.cancelRemark) return this.Error('请输入驳回缘由')
let that = this;
that.$confirm('是否驳回该团?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//掉接口
this.groupAudit(3,this.dataRow.TCID)
}).catch(() => {
});
},
bohui(item) {
this.dataRow = item
this.cancelOrderDialog = true
return
let that = this;
that.$confirm('是否驳回该团?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//掉接口
this.groupAudit(3,item.TCID)
}).catch(() => {
});
},
groupAudit(type,TCID,name,length){
let msg = {
TCID:TCID,
BranchAuditState:type,
BranchAuditRemark:this.cancelRemark
}
this.loading = true
this.apipost("travel_post_AuditPriceOutBranchTeamType", {
TCID:TCID,
BranchAuditState:type,
BranchAuditRemark:this.cancelRemark
}, res => {
if (res.data.resultCode == 1) {
if(!name){
this.cancelOrderDialog = false
this.Success(res.data.message);
this.getList()
}else{
if(length){
this.cancelOrderDialog = false
this.Success(res.data.message);
this.getList()
}
}
} else {
this.Error(res.data.message);
}
this.loading = false
},
err => { }
);
},
goTeamBalance(id, OutBranchId) {//团队收支明细
this.$router.push({
name: "TeamBalancePayment",
query: {
id: id,
IsHaveAuth: true,
blank: "y",
tab: "团队收支明细"
}
});
},
getTeamList() {
this.apipost("travel_get_GetTravelPriceTeamTypeList", {}, res => {
if (res.data.resultCode == 1) {
this.TeamListArr = res.data.data;
} else {
this.Error(res.data.message);
}
},
err => { }
);
},
goTravel(TCID){//跳转到团队列表
this.$router.push({
path: 'TravelControlList',
query: {
TCID: TCID,
blank: 'y',
tab: '团控列表'
}
});
}
}
}
}
</script>
<style scoped>
.groupApproval .singeRowTable {
margin-top: 20px;
margin-top: 20px;
}
._nav {
margin: 20px 0 0 0;
background-color: #f5f5f5;
margin: 20px 0 0 0;
background-color: #f5f5f5;
}
._nav li {
float: left;
font-size: 14px;
color: #666666;
padding: 15px 20px;
cursor: pointer;
position: relative;
background-color: #f1f1f1;
margin-right: 5px
float: left;
font-size: 14px;
color: #666666;
padding: 15px 20px;
cursor: pointer;
position: relative;
background-color: #f1f1f1;
margin-right: 5px
}
._nav li._active {
background-color: #FFFFFF;
color: #333333
background-color: #FFFFFF;
color: #333333
}
._nav li._active::after {
content: "";
width: 20px;
height: 3px;
background-color: #E95252;
display: inline-block;
position: absolute;
bottom: 0;
left: 38%;
content: "";
width: 20px;
height: 3px;
background-color: #E95252;
display: inline-block;
position: absolute;
bottom: 0;
left: 38%;
}
._icon_btn i {
width: 30px;
height: 30px;
display: inline-block;
color: white !important;
border-radius: 50%;
text-align: center;
line-height: 30px;
margin-right: 10px;
cursor: pointer;
outline: none;
width: 30px;
height: 30px;
display: inline-block;
color: white !important;
border-radius: 50%;
text-align: center;
line-height: 30px;
margin-right: 10px;
cursor: pointer;
outline: none;
}
._icon_btn i.icon-ico_commodity_defaul {
background-color: #F16C3C;
background-color: #F16C3C;
}
._icon_btn i.icon-ico_commodity_defaul:hover {
background-color: #e87c54
background-color: #e87c54
}
._icon_btn i.icon-ico_commodity_defaul:active {
background-color: #f76630
background-color: #f76630
}
._icon_btn i.icon-shenhebohui {
background-color: #E95252
background-color: #E95252
}
._icon_btn i.icon-mingxi {
background-color: rgb(71, 191, 140)
background-color: rgb(71, 191, 140)
}
</style>
......@@ -8,7 +8,7 @@
<span class="foldList" @click="fold" v-if="isFold==1">{{$t('sm.djzk')}}</span>
<template v-if="true">
<span v-if="FeatureData.FeatureType==9" class="foldList" style="margin-right: 5px;"
@click="journeyTemplate()">编辑行程</span>
@click="journeyTemplate()">编辑行程</span>
</template>
<div class="TrfList clearfix">
<!--&&item.TypeState!=8-->
......@@ -122,7 +122,7 @@
<!-- ppt 模版行程 -->
<div v-if="FeatureData.FeatureType==9&&FeatureDataFlag" v-loading="iframeLoading">
<iframe name="myIframe" :src="myIframeUrl" style="width: 100%;border: 0;"
:style="{'height':myIframeHeigth+'px'}" >
:style="{'height':myIframeHeigth+'px'}">
</iframe>
<!-- <div v-if="FeatureData.TripImageListNew&&FeatureData.TripImageListNew.length>0">
<template v-for="url in FeatureData.TripImageListNew">
......@@ -132,7 +132,8 @@
:preview-src-list="FeatureData.TripImageListNew"></el-image>
</template>
</div> -->
<div v-show="PostMessageText=='暂无行程数据'" style="text-align: center;margin-bottom: 20px;font-size: 14px;color: #808080;">暂无数据,右上角编辑行程试试吧!</div>
<div v-show="PostMessageText=='暂无行程数据'"
style="text-align: center;margin-bottom: 20px;font-size: 14px;color: #808080;">暂无数据,右上角编辑行程试试吧!</div>
</div>
</div>
</div>
......@@ -140,7 +141,7 @@
<!-- ppt 模版新增编辑窗口 -->
<pptIframe v-show="dialogPptistVisible" :FeaturePageType="dataAll.FeaturePageType" :Url="TemplateUrl"
@close="closeIframe()"></pptIframe>
@close="closeIframe()"></pptIframe>
</div>
</template>
<script>
......@@ -281,8 +282,8 @@
CurrentUserInfo: {},
dialogPptistVisible: false,
userInfo: {},
TemplateUrl:'',// 模版 修改url
myIframeUrl:'',//行程特色url
TemplateUrl: '', // 模版 修改url
myIframeUrl: '', //行程特色url
myIframeHeigth: 0,
isPostMessage: false,
PostMessageText: '',
......@@ -294,38 +295,44 @@
},
methods: {
closeIframe(){
closeIframe() {
this.dialogPptistVisible = false
},
handleMessage(event,targetOrigin) {
if(this.isPostMessage) return
if(event.data&&event.data.data&&!event.data.data) return
if (event && event.data) {
if (event.data == '行程数据保存成功'||event.data.indexOf('行程特色高')!=-1) {
// this.$emit('ConfigInfo',this.myIframeUrl)
this.PostMessageText = ''
//行程特色高
if (event.data && typeof(event.data)=='string' &&event.data.indexOf('行程特色高')!=-1) {
let datas = event.data.split('-')
this.myIframeHeigth = datas[1];
this.isPostMessage = true
handleMessage(event, targetOrigin) {
console.log("event", event);
console.log("event.data", event.data);
if (this.isPostMessage) return
if (event.data && event.data.data && !event.data.data) return
if (event && event.data) {
try {
if (event.data == '行程数据保存成功' || event.data.indexOf('行程特色高') != -1) {
// this.$emit('ConfigInfo',this.myIframeUrl)
this.PostMessageText = ''
//行程特色高
if (event.data && typeof (event.data) == 'string' && event.data.indexOf('行程特色高') != -1) {
let datas = event.data.split('-')
this.myIframeHeigth = datas[1];
this.isPostMessage = true
}
document.all.myIframe.src = this.myIframeUrl + `&t=${new Date().getTime()}`
this.$emit('pptJourney', true)
} else if (event.data == '暂无行程数据') {
this.PostMessageText = event.data
this.$emit('pptJourney', false)
this.isPostMessage = false
}
document.all.myIframe.src = this.myIframeUrl+`&t=${new Date().getTime()}`
this.$emit('pptJourney',true)
} else if (event.data == '暂无行程数据') {
this.PostMessageText = event.data
this.$emit('pptJourney',false)
this.isPostMessage = false
} catch {
}
}
this.iframeLoading = false
this.iframeLoading = false;
},
// 添加编辑模版
journeyTemplate(){
this.isPostMessage = false
journeyTemplate() {
this.isPostMessage = false;
let href = this.domainManager().PptUrl
this.TemplateUrl=`${href}/?uid=${this.userInfo.EmployeeId}&ConfigId=${this.FeatureData.ConfigId}&model=0&TempType=${this.dataAll.FeaturePageType}`
this.TemplateUrl =
`${href}/?uid=${this.userInfo.EmployeeId}&ConfigId=${this.FeatureData.ConfigId}&model=0&TempType=${this.dataAll.FeaturePageType}`
// this.TemplateUrl=`${href}/index/${this.userInfo.EmployeeId}/${this.FeatureData.ConfigId}/0/${this.dataAll.FeaturePageType}`
this.dialogPptistVisible = true
},
......@@ -560,10 +567,10 @@
});
}
this.initFileList();
if(this.FeatureData.FeatureType==9) {
if (this.FeatureData.FeatureType == 9) {
// this.iframeLoading = true
if(document.all.myIframe){
document.all.myIframe.src = this.myIframeUrl+`&t=${new Date().getTime()}`
if (document.all.myIframe) {
document.all.myIframe.src = this.myIframeUrl + `&t=${new Date().getTime()}`
}
}
......@@ -638,30 +645,30 @@
}
},
mounted() {
window.addEventListener('message', this.handleMessage,false);
window.addEventListener('message', this.handleMessage, false);
this.userInfo = this.getLocalStorage()
let userInfo = this.getLocalStorage()
this.CurrentUserInfo = userInfo
this.MsgBus.$on('FeatureDataFlag', () => {
this.FeatureDataFlag = true
});
let obj = this.TypeArray.find(x=>{
let obj = this.TypeArray.find(x => {
return x.TypeState == this.FeatureData.FeatureType
})
if(obj){
if (obj) {
this.clickFeature(obj)
}
this.myIframeUrl = `${this.domainManager().PptUrl}/?uid=${this.userInfo.EmployeeId}&ConfigId=${this.$route.query.configId}&index=0&model=3&w=1108`
if(document.all.myIframe){
document.all.myIframe.src = this.myIframeUrl+`&t=${new Date().getTime()}`
this.myIframeUrl =
`${this.domainManager().PptUrl}/?uid=${this.userInfo.EmployeeId}&ConfigId=${this.$route.query.configId}&index=0&model=3&w=1108`
if (document.all.myIframe) {
document.all.myIframe.src = this.myIframeUrl + `&t=${new Date().getTime()}`
}
},
watch: {
dataAll:{
handler: function (val, oldVal) {
},
dataAll: {
handler: function (val, oldVal) {},
deep: true,
immediate:true
immediate: true
},
FeatureData: {
//深度监听,可监听到对象、数组的变化
......@@ -671,7 +678,7 @@
},
deep: true,
immediate:true
immediate: true
},
"FeatureData.fileList": {
handler: function (val, oldval) {
......
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