Commit f43950bc authored by 华国豪's avatar 华国豪 🙄

新增问券调查查看、游记查看

parent 11c193a4
......@@ -113,7 +113,7 @@ export default {
}
</script>
<style>
@import "//at.alicdn.com/t/font_635492_ztxwijjubn.css";
@import "//at.alicdn.com/t/font_635492_9ent0ufu6e.css";
@import "./assets/css/Semibold.css";
@import "./assets/css/global/config.css";
@import "./assets/css/fileIcon.css";
......
......@@ -126,13 +126,13 @@
this.noData = false;
}
let newList = [];
if (this.templateID) {
if (this.templateID) {
this.templateID.forEach(x=>{
this.payList.forEach(y=>{
if(x === y.Id) {
if(x === y.Id) {
y.showYes = true
newList.push(y)
} else {
newList.push(JSON.parse(JSON.stringify(y)))
} else {
y.showYes = false
}
})
......
......@@ -194,6 +194,7 @@
<td rowspan="3">
<p v-if="item.isChargeLossOrders==1" style="color:red"></p>
<p class="fbold over_ellipsis" style="width: 100%;cursor:pointer;" :title="item.orderId" @click="goUrlX('团报名清单', item.isOneDay === 1 ? 'groupTourOrderByTuanOne' : 'groupTourOrderByTuan',item.tcid,item.tcnum)">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip>
</p>
<p class="fz12 over_ellipsis" style="width: 100%;text-decoration:underline;cursor:pointer;" :title="item.alName"
......
......@@ -930,14 +930,20 @@
@input='getTotalPrice();yzSafeNum()'></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="单男男女">
<el-radio v-model="addMsg.OneSex" label="1"></el-radio>
<el-radio v-model="addMsg.OneSex" label="2"></el-radio>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="4">
<el-form-item label="拒签人数" prop="RefuseVisaNum" >
<el-input v-model='addMsg.RefuseVisaNum' @keyup.native="checkInteger(addMsg,'RefuseVisaNum')"
@input='getTotalPrice()'></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="4">
<el-form-item label="预计用房" prop="PredictRoomNum">
<el-input v-model='addMsg.PredictRoomNum' :disabled="true"></el-input>
......@@ -1513,6 +1519,8 @@
<p v-if="item.isChargeLossOrders==1" style="color:red"></p>
<p class="fbold over_ellipsis" style="width: 100%;cursor:pointer;" :title="item.orderId"
@click="goUrlX('团报名清单','groupTourOrderByTuan',item.tcid,item.tcnum)">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip></p>
<p class="fz12 over_ellipsis" style="width: 100%;text-decoration:underline;cursor:pointer;"
:title="item.alName" @click="goUrlX('产品查询','productQuery',item.tcid,item.tcnum)">{{item.tcnum}}</p>
......@@ -1729,7 +1737,7 @@
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3') && item.isCanClear==1" title="如需取消订单清联系OP" style="color:red;">
订单已确认,取消请联系OP
</div>
<div v-if="item.scoreNum >= 0" @click='goInvetig("investigationList", item.tcid, item.orderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary"
style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;'
......@@ -2207,6 +2215,17 @@
}
});
},
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
// 申请发票
goUrlAdd: function (path, OrderId, TCID, customerId) {
this.$router.push({
......@@ -2712,7 +2731,6 @@
ID: obj.orderId
},
res => {
console.log(res.data.data.model);
if (res.data.resultCode == 1) {
this.IsUnion = res.data.data.IsUnion
this.isAllowUpdate = res.data.data.IsUpdatePlatOrder
......
......@@ -1519,6 +1519,7 @@
<p v-if="item.isUnionOrder==1" class="GO_union"></p>
<p v-if="item.isChargeLossOrders==1" style="color:red"></p>
<p class="fbold over_ellipsis" style="width: 100%;" :title="item.orderId">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip>
</p>
<div>
......@@ -1739,6 +1740,7 @@
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3') && item.isCanClear==1" title="如需取消订单清联系OP" style="color:red;">
订单已确认,取消请联系OP
</div>
<div v-if="item.scoreNum >= 0" @click='goInvetig("investigationList", item.tcid, item.orderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button>
</el-popover>
......@@ -2560,6 +2562,17 @@
}
},
methods: {
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
goIisDetail: function (id) { // 跳转发票详情页面
this.$router.push({
name: 'invoicesManagerDetail',
......
......@@ -1533,6 +1533,8 @@
<p v-if="item.isUnionOrder==1" class="GO_union"></p>
<p v-if="item.isChargeLossOrders==1" style="color:red"></p>
<p class="fbold over_ellipsis" style="width: 100%;" :title="item.orderId">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip>
</p>
<div>
......@@ -1750,6 +1752,7 @@
<div v-if="item.orderState==2" @click='Discount(item.tcid),SOMsg.OrderId = item.orderId,SOMsg.OrderUnitPrice = item.unit_Price'>申请优惠</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')" @click='deleteItem(item)'>取消</div>
<div v-if="item.scoreNum >= 0" @click='goInvetig("investigationList", item.tcid, item.orderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button>
</el-popover>
......@@ -1910,6 +1913,7 @@
<td rowspan="2" style="position:relative;">
<p v-if="item.isUnionOrder==1" class="GO_union"></p>
<p class="fbold over_ellipsis" style="width: 100%;" :title="item.orderId">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip>
</p>
<p class="fz12 over_ellipsis" style="width: 100%;">{{item.commissionSPeopleName=='无'?'':item.commissionSPeopleName}}</p>
......@@ -2031,6 +2035,7 @@
<div v-if="item.isOrder=='1'&&(item.isHaveFinance=='1'||item.orderState=='1')" @click='getHouse(item)'>修改房型</div>
<div v-if="item.isOrder=='1'&&item.orderState!='4' && TransferMission == true" @click="transfer(item)">订单转团</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')" @click='deleteItem(item)'>取消</div>
<div v-if="item.scoreNum >= 0" @click='goInvetig("investigationList", item.tcid, item.orderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary" style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;' icon="iconfont icon-more"></el-button>
</el-popover>
......@@ -2575,6 +2580,17 @@
}
},
methods: {
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
goIisDetail: function (id) { // 跳转发票详情页面
this.$router.push({
name: 'invoicesManagerDetail',
......
......@@ -1506,6 +1506,7 @@
<p v-if="item.isChargeLossOrders==1" style="color:red"></p>
<p class="fbold over_ellipsis" style="width: 100%;cursor:pointer;" :title="item.orderId"
@click="goUrlX('团报名清单','groupTourOrderByTuanOne',item.tcid,item.tcnum)">{{item.orderId}}
<span style="font-weight: 100;" v-if="item.scoreNum >= 0">(评分{{item.scoreNum}})</span>
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm==4"> <i class="iconfont icon-xiaochengxu" style="font-size:22px;color:red;"></i></el-tooltip></p>
<p class="fz12 over_ellipsis" style="width: 100%;text-decoration:underline;cursor:pointer;"
:title="item.alName" @click="goUrlX('产品查询','productQueryOne',item.tcid,item.tcnum)">{{item.tcnum}}</p>
......@@ -1719,7 +1720,7 @@
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2'||item.orderState=='3')"
@click='deleteItem(item)'>取消
</div>
<div v-if="item.scoreNum >= 0" @click='goInvetig("investigationList", item.tcid, item.orderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary"
style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;'
......@@ -2187,6 +2188,17 @@
}
},
methods: {
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
goIisDetail: function (id) { // 跳转发票详情页面
this.$router.push({
name: 'invoicesManagerDetail',
......
<style>
.investigationDetail .item{
padding: 20px 0 10px 20px;
}
</style>
<template>
<el-form class="investigationDetail">
<div v-for="(item, index) in details" :key="index" >
<p>{{index+1}}{{item.Title}}</p>
<div class="item">
<el-rate
disabled="disabled"
v-if="item.SurveyType === 1"
v-model="item.ScoreNum"
:texts="texts"
show-text>
</el-rate>
<template v-else-if="item.SurveyType === 2">
<el-radio v-for="(r, i) in item.SurveyOptionsList" v-model="item.lable" :label="r.ID" disabled="disabled" :key="i">{{r.OptionsName}}</el-radio>
</template>
<template v-else-if="item.SurveyType === 3">
<el-checkbox v-for="(r, i) in item.SurveyOptionsList" v-model="item.ckeckList" :label="r.ID" disabled="disabled" :key="i">{{r.OptionsName}}</el-checkbox >
</template>
<template v-else-if="item.SurveyType === 4">
<span>{{item.TextContent}}</span>
</template>
</div>
</div>
</el-form>
</template>
<script>
export default {
props:['ID'],
data(){
return{
details: [],
texts: ['非常不满意', '不满意', '感觉一般', '满意', '非常满意']
}
},mounted() {
this.getDetails()
},methods: {
getDetails: function () {
this.apipost('survey_post_GetGuestSurvey', {SurveyID: this.ID}, res=>{
if (res.data.resultCode === 1) {
let data = res.data.data
data.map(x=>{
if (x.SurveyType === 2) {
x.SurveyOptionsList.map(y=>{
if (y.IsCheck === '1') {
x.lable = y.ID
}
})
}
if (x.SurveyType === 3) {
let ckeckList = []
x.SurveyOptionsList.map(y=>{
if (y.IsCheck === '1') {
ckeckList.push(y.ID)
}
})
x.ckeckList = ckeckList
}
})
this.details = data
}
}, null)
}
}
}
</script>
<style>
.investigationList td button{
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;
padding: 0;
}
.investigationList .el-button.is-circle{
padding: 0;
}
</style>
<template>
<div class="investigationList">
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th>订单号</th>
<th>销售名称</th>
<th>客户名称</th>
<th>分数</th>
<th>操作</th>
</tr>
<tr v-for="item in dataList">
<td>{{item.OrderID}}</td>
<td>{{item.EnterName}}</td>
<td>{{item.CustomerName}}</td>
<td>{{item.ScoreNum}}</td>
<td>
<el-tooltip class="item" effect="dark" content="查看问券" placement="top">
<el-button
type="primary"
icon="iconfont icon-sousuo"
circle
@click="dialogTitle = '游客问券', showID = item.ID, DiaoChaShow = true"
></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="查看游记" placement="top">
<el-button
v-if="item.NotesId > 0"
type="primary"
icon="iconfont icon-youji"
circle
@click="dialogTitle = '游记', showID = item.NotesId, YouJiShow = true"
></el-button>
</el-tooltip>
</td>
</tr>
</table>
<div class="noDataNotice" v-if="dataList.length<1">
<i class="iconfont icon-kong"></i>
<p>{{$t("active.ld_noData")}}</p>
</div>
<el-dialog
custom-class="w400"
:title="dialogTitle"
:visible.sync="DiaoChaShow"
center
:before-close="closeDialog">
<DiaoCha :ID="showID"/>
</el-dialog>
<el-dialog
custom-class="w500"
:title="dialogTitle"
:visible.sync="YouJiShow"
center
:before-close="closeDialog">
<YouJi :ID="showID"/>
</el-dialog>
</div>
</template>
<script>
import DiaoCha from './investigationDetail';
import YouJi from './investigationYouDetail';
export default {
components:{
DiaoCha: DiaoCha,
YouJi: YouJi,
},
data(){
return{
loading: false,
dataList: [],
DiaoChaShow: false,
YouJiShow: false,
showID: 0,
dialogTitle: '',
}
},mounted() {
let TCID = this.$route.query.TCID,
OrderID = this.$route.query.OrderID;
this.getList(TCID, OrderID);
},methods: {
closeDialog: function () {
this.DiaoChaShow = false;
this.YouJiShow = false;
},
getList: function (TCID, OrderID) {
this.apipost('survey_post_GetTotalList', {TCID: TCID, OrderID: OrderID}, res=>{
if (res.data.resultCode === 1) {
this.dataList = res.data.data;
}
}, null)
}
}
}
</script>
<style>
.investigationYouDetail .item {
display: -webkit-box;
margin-bottom: 10px;
}
.investigationYouDetail ._lable {
width: 80px;
color: #989898;
background: rgba(149, 186, 255, 1);
border-radius: 10px;
color: #2c5cb7;
display: inline-block;
text-align: center;
margin-right: 10px;
}
._content {
/* flex: 2; */
max-width: 340px;
}
.investigationYouDetail .img-box {
margin-top: 10px;
}
.investigationYouDetail .img-box .el-col-8 {
height: 140px;
margin-bottom: 15px;
overflow: hidden;
}
.investigationYouDetail .img-box img {
width: 100%;
height: 100%;
display: block;
}
</style>
<template>
<div class="investigationYouDetail">
<div v-for="(item, index) in details.GuestTravelLableList" :key="index" class="item">
<div class="_lable" v-if="item.Name">{{item.Name}}</div>
<div :class="{_content: item.Name}">{{item.Content}}</div>
</div>
<el-row class="img-box" :gutter="15">
<el-col :span="8" v-for="(item, index) in details.NotesPics" :key="index">
<img :src="item" @click="showImg(item)" alt>
</el-col>
</el-row>
<viewer :images="images" :options="imageOptions" @inited="inited" class="viewer" ref="viewer">
<img v-for="src in images" :src="src" :key="src">
</viewer>
</div>
</template>
<script>
export default {
props: ["ID"],
data() {
return {
details: {},
imageOptions: {
navbar: false,
title: false
},
images: []
};
},
mounted() {
this.getDetails();
},
methods: {
inited(viewer) {
this.$viewer = viewer;
},
showImg(obj) {
let isExsit = false;
this.images.forEach(x => {
if (x == obj) isExsit = true;
});
if (!isExsit) {
this.images.push(obj);
} else {
this.$viewer.view(this.images.indexOf(obj));
}
this.$viewer.show();
},
getDetails: function() {
this.apipost(
"survey_post_GetGuestTravelNotes",
{ Id: this.ID },
res => {
if (res.data.resultCode === 1) {
this.details = res.data.data;
}
},
null
);
}
}
};
</script>
......@@ -339,7 +339,10 @@
</el-form-item>
</el-col>
<el-col :span="4">
&nbsp;
<el-form-item label="单男单女">
<el-radio v-model="addMsg.OneSex" label="1"></el-radio>
<el-radio v-model="addMsg.OneSex" label="2"></el-radio>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
......@@ -981,6 +984,7 @@
LessMoney:0,
addMsg: {
OrderId: '0',
OneSex: '0',
TCID: '0',
CustomerType: '',
GroupType: '',
......@@ -1893,6 +1897,7 @@
this.addMsg.CommissionSharePeople = '-1'
this.addMsg.CommissionShareMoney = '0'
this.addMsg.IsShowMessagesMoney = '2'
this.addMsg.OneSex = '0'
this.remarkMsg = {
zc: '',
bzc: '',
......
......@@ -1752,7 +1752,7 @@
</div>
<p v-if="childItem.IsChargeLossOrders==1" style="color:red"></p>
<div class="fbold over_ellipsis" style="width: 120px;cursor:pointer;" :title="childItem.OrderId">
{{childItem.OrderId}}
<span style="font-weight: 100;" v-if="childItem.ScoreNum >= 0">(评分{{childItem.ScoreNum}})</span>{{childItem.OrderId}}
<el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top"
v-show="childItem.OrderForm==4"> <i class="iconfont icon-xiaochengxu"
style="font-size:22px;color:red;"></i></el-tooltip>
......@@ -1955,6 +1955,7 @@
@click='deleteItem(childItem)'>
删除
</div>
<div v-if="childItem.ScoreNum >= 0" @click='goInvetig("investigationList", childItem.tcid, childItem.OrderId)'>查看旅客调查</div>
</div>
<el-button slot="reference" type="primary"
style='background:#297BEF; border-color:#297BEF;border-top-left-radius: 0;border-bottom-left-radius: 0;'
......@@ -3141,6 +3142,17 @@
err => {}
);
},
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
// 点击弹出下拉框
getDetail(obj) {
this.Ysze = false;
......
......@@ -373,7 +373,7 @@
:class="{'TC_hasContent':item.OPInnerRemark==''&&item.OPRemark==''}">
<div class="TC_remarkContent TC_teamName">
<div class="clearfix">
<div class="TCL_remarkTitle">{{$t('Operation.Op_TeamName')}}</div>
<div class="TCL_remarkTitle"><span style="font-weight: 100;" v-if="item.ScoreNum >= 0">(评分{{item.ScoreNum}})</span> {{$t('Operation.Op_TeamName')}}</div>
<div class="TCL_Content">{{item.Title}}</div>
</div>
</div>
......@@ -787,6 +787,10 @@
</el-dropdown-item>
<el-dropdown-item @click.native='ShowUploadWord(item)'>{{$t('Operation.Op_wordTrip')}}
</el-dropdown-item>
<el-dropdown-item >
<div v-if="item.ScoreNum >= 0" @click='goInvetig("investigationList", item.TCID, 0)'>查看旅客调查</div>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
......@@ -1084,6 +1088,18 @@
commonHotelInfo
},
methods: {
// 跳转调查列表
goInvetig: function (path, tcid, orderId) {
this.$router.push({
name: path,
query: {
OrderId: orderId,
TCID: tcid,
blank: "y",
}
});
},
SetGroupRecommendType(item, num) {
let msg = {};
msg.groupRecommendType = num;
......
......@@ -398,6 +398,14 @@ export default {
title: '问券调查'
},
},
{
path: '/investigationList', //问券调查列表
name: 'investigationList',
component: resolve => require(['@/components/SalesModule/investigationList'], resolve),
meta: {
title: '问券调查列表'
},
},
{
path: '/VoucherInquiryAdd', //问券调查添加
name: 'VoucherInquiryAdd',
......
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