Commit bb17be0f authored by liudong1993's avatar liudong1993
parents 400fbd61 24045a7a
<style>
.page_iisMg ._nav {
margin: 20px 0 0 0;
background-color: #f5f5f5;
}
.page_iisMg ._nav li {
float: left;
font-size: 14px;
color: #666666;
padding: 15px 20px;
cursor: pointer;
position: relative;
background-color: #f1f1f1;
margin-right: 5px;
}
.page_iisMg ._nav li._active {
background-color: #ffffff;
color: #333333;
}
.page_iisMg ._nav li._active::after {
content: "";
width: 20px;
height: 3px;
background-color: #e95252;
display: inline-block;
position: absolute;
bottom: 0;
left: 38%;
}
.page_iisMg .query-box {
padding-bottom: 0;
}
.page_iisMg .iis_info_box {
padding-top: 15px;
}
.page_iisMg .el-date-editor .el-range-separator {
width: 9% !important;
}
.page_iisMg td span.status_Application{
color: #409EFF;
}
.page_iisMg td span.status_Cancle{
color: #909399;
}
.page_iisMg td span.status_Passed{
color: #67C23A;
}
.page_iisMg td span.status_Rejected{
color: #F56C6C;
}
.page_iisMg td span.status_owe{
color: #E6A23C;
}
.page_iisMg td span.status_Recover{
color: #67C23A;
}
.page_iisMg .cursorpointer{
text-decoration: underline;
}
.page_iisMg ._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;
}
.page_iisMg ._icon_btn i.icon-ico_commodity_defaul{background-color: #F16C3C;}
.page_iisMg ._icon_btn i.icon-ico_commodity_defaul:hover{background-color: #e87c54}
.page_iisMg ._icon_btn i.icon-ico_commodity_defaul:active{background-color: #f76630}
.page_iisMg ._icon_btn i.icon-quxiao1{background-color: #E95252;}
.page_iisMg ._icon_btn i.icon-quxiao1:hover{background-color: #ea6d6d}
.page_iisMg ._icon_btn i.icon-quxiao1:active{background-color:#e42d2d}
.page_iisMg ._icon_btn i.icon-sousuo{background-color: #47BF8C;}
.page_iisMg ._icon_btn i.icon-sousuo:hover{background-color: #66bb97}
.page_iisMg ._icon_btn i.icon-sousuo:active{background-color: #35ab79}
._zhuihui{
display: inline-block;
height: 30px;
width: 30px;
border-radius: 50%;
color: white;
background-color: #e42d2d;
text-align: center;
line-height: 30px;
cursor: pointer;
margin-right: 10px
}
._zhuihui.xiugai{
background-color: #409EFF;
}
.Shopping_bossdialog ._addUpload_box {
display: initial;
margin-top: 20px;
width: 138px !important;
}
.Shopping_bossdialog ._addUpload_box>div {
float: left;
width: 138px;
height: 92px;
border-radius: 2px;
cursor: pointer;
padding: 5px;
margin: 0 10px 10px 0;
position: relative;
}
.Shopping_bossdialog ._addUpload_box .icon-guanbi1 {
font-size: 12px;
color: white;
display: inline-block;
margin-left: 15px;
position: absolute;
right: -6px;
top: -9px;
background-color: #f56c6c;
border-radius: 50%;
height: 20px;
width: 20px;
text-align: center;
line-height: 20px;
}
.Shopping_bossdialog ._addUpload_box .icon-guanbi1:hover {
font-size: 12px;
color: #c94052;
}
.Shopping_bossdialog ._pic_upload .el-upload-dragger {
width: 100px !important;
height: 50px !important;
}
.PQ_detail {
width: 100%;
border-collapse: collapse;
}
.PQ_detail tr th,
.v-table-title-cell {
background: #e6e6e6;
height: 40px;
font-size: 14px;
border-right: 1px solid #e6e6e6;
color: #333;
}
.PQ_detail tr {
background: #fff;
text-align: center;
height: 40px;
}
.PQ_detail tr td {
font-size: 12px;
border: 1px solid #e5e5e5;
}
</style>
<template>
<div class="page_iisMg">
<ul class="_nav clearfix">
<li :class="active==1?'_active':''" @click="active=1,msg.InvoiceApplyState=0,getPageList()">全部发票</li>
<li :class="active==2?'_active':''" @click="active=2,msg.InvoiceApplyState=1,getPageList()">开票中</li>
<li :class="active==3?'_active':''" @click="active=3,msg.InvoiceApplyState=3,getPageList()">退票中</li>
</ul>
<div class="query-box">
<div @keyup.enter="resetPageIndex()">
<el-form class="iis_info_box clearfix" label-width="110px">
<el-row>
<el-col :span="4" :gutter="35">
<el-form-item label="关键字" >
<el-input placeholder="请输入发票抬头/税号/邮箱地址" v-model="msg.InvoiceKey"></el-input>
</el-form-item>
</el-col>
<!--InvoiceApplyState 1-开票中,2-已开票 3- 退票中,4-已退票,5-已作废 -->
<el-col :span="4" :gutter="35" v-if="active !== 3">
<el-form-item :label="$t('fnc.a_djztai')">
<el-select v-model="msg.InvoiceApplyState" filterable>
<el-option :value="0" :label="$t('pub.unlimitedSel')"></el-option>
<el-option :value="1" label="开票中"></el-option>
<el-option :value="2" label="已开票"></el-option>
<el-option :value="3" label="退票中"></el-option>
<el-option :value="4" label="已退票"></el-option>
<el-option :value="5" label="已作废"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8" :gutter="35">
<el-form-item label="申请日期">
<el-date-picker
class="h34"
@change="timeAdd"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd"
:range-separator="$t('restaurant.res_To')"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<ul>
<li>
<button
class="hollowFixedBtn"
@click="resetPageIndex()"
>{{$t('pub.searchBtn')}}</button>
</li>
</ul>
</div>
<table class="singeRowTable" style="border:1px solid #E6E6E6;" cellspacing="0" cellpadding="0">
<tr>
<th>发票类型</th>
<th width="180">
开具方式
</th>
<th>发票抬头</th>
<th>税号</th>
<th>邮箱地址</th>
<th>开票状态</th>
<th>金额</th>
<th>申请日期</th>
<!-- <th>发票附件</th> -->
<th>{{$t('system.table_operation')}}</th>
</tr>
<template v-for="(item, index) in dataList" v-loading="loading">
<tr>
<!-- class="cursorpointer" -->
<td>{{item.InvoiceType==1?"企业":(item.InvoiceType==2?"个人":"")}}</td>
<td>
{{item.IssuedType==1?"电子普通发票":(item.IssuedType==2?"增值税专用发票":"")}}
</td>
<td >{{item.InvoiceTitle}}</td>
<td >{{item.InvoiceTaxNo}}</td>
<td >{{item.Email}}</td>
<td >
<span v-if="item.InvoiceState==1">开票中</span>
<span v-else-if="item.InvoiceState==2">已开票</span>
<span v-else-if="item.InvoiceState==3"> 退票中</span>
<span v-else-if="item.InvoiceState==4">已退票</span>
<span v-else-if="item.InvoiceState==5">已作废</span>
<span v-else></span>
</td>
<td>
<el-popover width="630" trigger="click">
<table class="PQ_detail">
<tr>
<td style="text-align: left; padding-left: 10px;border:0px;">
订单信息
</td>
</tr>
<tr>
<th >Vip类型名称</th>
<th>第三方交易号</th>
<th>收款金额</th>
<th>付款时间</th>
</tr>
<tr v-if="item.OrderList&&item.OrderList.length>0" v-for="(itemo, indexo) in item.OrderList" v-loading="loading">
<td >{{itemo.VipName}}/{{itemo.InvalidName}}</td>
<td>
{{ itemo.PayTradeNum }}
</td>
<td>{{ itemo.TradePrice | priceFormat(itemo.TradePrice) }}</td>
<td>
{{itemo.PayTime}}
</td>
</tr>
</table>
<span slot="reference" class="price" style="text-decoration: underline;cursor: pointer;">{{item.Money}}</span>
</el-popover>
</td>
<td>{{item.CreateTime}} </td>
<td class="_icon_btn" style="text-align: left;padding-left: 20px">
<!-- <el-tooltip class="item" effect="dark" :content="$t('fnc.chakan')" placement="top">
<i class="iconfont icon-sousuo" @click="goIisDetail(item.Id)"></i>
</el-tooltip> -->
<el-tooltip class="item" v-if="item.InvoiceState==1" effect="dark" content="发票审核" placement="top">
<i v-if="item.InvoiceState === 1" class="iconfont icon-ico_commodity_defaul" @click="setStatus(item.Id, 1)"></i>
</el-tooltip>
<el-tooltip class="item" v-else-if="item.InvoiceState==3" effect="dark" content="发票审核" placement="top">
<i v-if="item.InvoiceState === 1" class="iconfont icon-ico_commodity_defaul" @click="setStatus(item.Id, 2)"></i>
</el-tooltip>
<el-tooltip class="item" v-else-if="item.InvoiceState==2&&item.InvoiceFile.length==0" effect="dark" content="上传发票" placement="top">
<i v-if="item.InvoiceState==2&&item.InvoiceFile.length==0" class="iconfont icon-ico_commodity_defaul" @click="setPic(item.Id,3)"></i>
</el-tooltip>
<el-tooltip class="item" v-if="item.InvoiceFile&&item.InvoiceFile.length>0" effect="dark" content="发票信息" placement="top">
<i v-if="item.InvoiceFile&&item.InvoiceFile.length>0" class="iconfont icon-sousuo" style="background-color:#47BF8C;" @click="showPic(item,1)"></i>
</el-tooltip>
<el-tooltip class="item" v-if="item.InvoiceFile&&item.InvoiceFile.length>0&&item.IsSendEmail==0" effect="dark" content="发送邮件" placement="top">
<i v-if="item.InvoiceFile&&item.InvoiceFile.length>0" class="iconfont el-icon-position" style="background-color:#47BF8C;" @click="showPic(item,2)"></i>
</el-tooltip>
</td>
</tr>
</template>
</table>
<div class="noDataNotice" v-if="dataList.length<1"><i class="iconfont icon-kong"></i> <p>没有找到你需要的数据</p></div>
<div v-if="dataList.length>0">
<el-pagination
background
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
layout="total,prev, pager, next, jumper"
:page-size='msg.pageSize'
:total='total'>
</el-pagination>
</div>
<el-dialog
custom-class="w300"
title="发票审核"
:visible.sync="isShowStatus"
>
<div style="padding-bottom:20px">
<span> 审核理由 <span style="color:red;">提示:拒绝必须填写理由</span></span>
<el-input style="margin-top:10px;"
autofocus
rows="5"
type="textarea"
placeholder="请填写理由"
clear="w150"
v-model="UpdateApply.ExamineNote"
></el-input>
<el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="24" style="text-align: right;">
<input
type="button"
class="normalBtn"
value="同意"
@click="updateStatus(1)"
/>
<input
type="button"
class="normalBtn"
value="拒绝"
@click="updateStatus(2)"
/>
<input
type="button"
class="hollowFixedBtn"
:value="$t('pub.closeSel')"
@click="isShowStatus = false,UpdateApply.Id='',UpdateApply.UpdateType='',UpdateApply.ExamineState=0,UpdateApply.ExamineNote='',UpdateApply.InvoiceFile=''"
/>
</el-col>
</el-row>
</div>
</el-dialog>
<el-dialog :visible.sync="isShowPicStatus" class="Shopping_bossdialog" custom-class="w500" title="发票信息">
<div class="_addUpload_box clearfix" >
<template v-for="(file,fIndex) in saveMsg">
<div v-if="file.Type==3">
<div class="iconfont " style="width:100%;height:100%;overflow: hidden;">
<el-image
style="width:100%;height:100%;"
:src="file.Url?file.Url:file.Content"
:preview-src-list="[file.Url?file.Url:file.Content]">
</el-image>
</div>
<span class="iconfont icon-guanbi1" @click="deleteUploadFile(fIndex)"></span>
</div>
<div v-if="file.Type==1">
<div class="iconfont "
:class="file.Content.substring(file.Content.lastIndexOf('.')+1,file.Content.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"
@click="showUpLoadFile(file)">
</div>
<span class="iconfont icon-guanbi1" @click="deleteUploadFile(fIndex)"></span>
</div>
<div v-if="file.Type==2">
<div class="iconfont icon-excel" @click="showUpLoadFile(file)">
</div>
<span class="iconfont icon-guanbi1" @click="deleteUploadFile(fIndex)"></span>
</div>
</template>
<div class="_pic_upload" v-if="UpdateApply.Id.length>0&&UpdateApply.InvoiceFile.length==0">
<el-upload drag :http-request="uploadFileBtn" :multiple="true" :show-file-list="false" action="">
<i class="el-icon-plus avatar-uploader-icon"></i>
<div class="el-upload__text">{{$t('active.ld_djscwj')}}</div>
</el-upload>
</div>
</div>
<div slot="footer" class="dialog-footer" v-if="UpdateApply.Id.length>0">
<input
type="button"
class="normalBtn"
value="确认"
@click="updateStatus(3)"
/>
<input
type="button"
class="hollowFixedBtn"
:value="$t('pub.closeSel')"
@click="isShowPicStatus = false,UpdateApply.Id='',UpdateApply.UpdateType='',UpdateApply.ExamineState=0,UpdateApply.ExamineNote='',UpdateApply.InvoiceFile=''"
/>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
active: 1,
RB_Group_Id:'',
msg: {
InvoiceApplyState: 0,
InvoiceKey:'',
sDate: '',
eDate: '',
pageIndex: 1,
pageSize: 10,
},
productionDate: [],
dataList: [],
//上传数组
saveMsg: [],
loading: false,
isShowStatus:false,
isShowPicStatus:false,
picObj: [],
url:"",
currentPage: 0,
total:0,
UpdateApply:{
InvoiceFile:[],
ExamineState:0,////1-同意。2-拒绝
ExamineNote:'',////审核拒绝理由必填
Id:'',
UpdateType:"",//0/1-默认审核发票,2-处理发票取消审核 ,3-上传附件
},
};
},
filters: {
priceFormat(value) {
if (value == null) {
return 0.0;
}
let nStr = value.toFixed(2);
nStr += "";
let x = nStr.split(".");
let x1 = x[0];
let x2 = x.length > 1 ? "." + x[1] : "";
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, "$1" + "," + "$2");
}
return x1 + x2;
},
},
methods: {
setPic: function (id, type) {
this.UpdateApply.Id=id;
this.UpdateApply.UpdateType=type;
this.UpdateApply.InvoiceFile=[];
this.isShowPicStatus=true;
},
showPic: function (item,type) {
if (type==1) {
this.isShowPicStatus=true;
this.saveMsg=[];
this.saveMsg= JSON.parse(JSON.stringify(item.InvoiceFile))
}
else{
this.UpdateApply.Id=item.Id;
this.apipost('ppt_SendPPTUserInvoiceFile', this.UpdateApply, res=>{
if (res.data.resultCode == 1) {
this. UpdateApply.InvoiceFile="";
this. UpdateApply.InvoiceFile="",
this. UpdateApply.ExamineState=0,////1-同意。2-拒绝
this. UpdateApply.ExamineNote='',////审核拒绝理由必填
this. UpdateApply.Id="",
this. UpdateApply.UpdateType="",//0/1-默认审核发票,2-处理发票取消审核 ,3-上传附件
this.isShowStatus=false;
this.isShowPicStatus=false;
this.saveMsg=[];
this.picObj=[];
this.getPageList()
}
}, null)
}
},
showUpLoadFile(i) { // 预览上传文件
if (i.Type == 3) {
this.picObj.push(i.Url);
console.log("我进来了哈哈哈哈", this.picObj);
// this.url = this.picObj[0] ;
} else {
if (i.Content.substring(i.Content.lastIndexOf('.') + 1, i.Content.length).toUpperCase() == 'PDF') {
this.previewPDF(i.Url)
} else {
window.open("https://view.officeapps.live.com/op/view.aspx?src=" + i.Url)
}
}
},
deleteUploadFile(i) { // 删除上传文件
this.saveMsg.splice(i, 1);
this.UpdateApply.InvoiceFile =[];
},
uploadFileBtn(file) { //上传
if (file.file.size > 1024 * 1024 * 10) {
this.Error('文件大小不能超过10M!')
return
}
// 1 文档 2 数据 3 图片
let typeArr = [{
stringArr: 'GIF|JPG|JPEG|PNG|BMP',
type: 3
},
{
stringArr: 'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF',
type: 1
},
]
let ft = file.file.name.substring(file.file.name.lastIndexOf('.') + 1, file.file.name.length).toUpperCase();
let fileTypeNumber = 2;
let typeOk = false;
typeArr.forEach(x => {
if (x.stringArr.indexOf(ft) != '-1') {
fileTypeNumber = x.type
typeOk = true;
}
})
if (!typeOk) return this.Error('请上传图片、word、excel类型的文件!');
let newArr = [];
newArr.push(file.file)
let path = "/Upload/Temporary/"
this.$message.info(this.$t('tips.shangchuanzhong'))
this.UploadSelfFileT(path, newArr, x => {
this.saveMsg.push({
Content: x.data.FilePath,
Type: fileTypeNumber,
Url: this.domainManager().ViittoFileUrl + x.data.FilePath,
})
this.UpdateApply.InvoiceFile = this.saveMsg ;
this.Success(this.$t('tips.scchenggong'));
});
},
setStatus: function (id, type) {
this.UpdateApply.Id=id;
this.UpdateApply.UpdateType=type;
this.isShowStatus=true;
},
///更新发票状态
updateStatus(ExamineState){
this.UpdateApply.ExamineState=ExamineState;
if (this.UpdateApply.ExamineState==2&&this.UpdateApply.ExamineNote.length==0) {
this.Error("请填写拒绝理由");
return;
}
let stateStr="";//0/1-默认审核发票,2-处理发票取消审核 ,3-上传附件,
if(this.UpdateApply.UpdateType<=1){
if(this.UpdateApply.ExamineState==1){
stateStr="是否同意当前发票申请?"
}
else if(this.UpdateApply.ExamineState==2){
stateStr="是否拒绝当前发票申请?";
}
}
else if(this.UpdateApply.ExamineState==2){
if(this.UpdateApply.ExamineState==1){
stateStr="确认同意取消当前发票?"
}
else if(this.UpdateApply.ExamineState==2){
stateStr="确认拒绝取消当前发票?";
}
}
else{
stateStr="确认操作当前发票信息?";
}
this.$confirm(stateStr, this.$t('tips.tips'), {
confirmButtonText: '确认',
cancelButtonText: this.$t('pub.cancelBtn'),
type: 'warning'
}).then(() => {
this.apipost('ppt_ExaminePPTUserInvoice', this.UpdateApply, res=>{
if (res.data.resultCode == 1) {
this. UpdateApply.InvoiceFile="";
this. UpdateApply.InvoiceFile="",
this. UpdateApply.ExamineState=0,////1-同意。2-拒绝
this. UpdateApply.ExamineNote='',////审核拒绝理由必填
this. UpdateApply.Id="",
this. UpdateApply.UpdateType="",//0/1-默认审核发票,2-处理发票取消审核 ,3-上传附件
this.isShowStatus=false;
this.isShowPicStatus=false;
this.saveMsg=[];
this.picObj=[];
this.getPageList()
}
}, null)
}).catch(() => {
});
},
timeAdd: function () {
// 日期格式
if (!this.productionDate) {
this.msg.sDate = "";
this.msg.eDate = "";
return;
}
this.msg.sDate = this.productionDate[0];
this.msg.eDate = this.productionDate[1];
},
getPageList: function () {
this.loading = true
this.apipost('ppt_GetAllPPTUserInvoicePage', this.msg, res=>{
this.loading = false
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.dataList = res.data.data.pageData
}
}, null)
},
goUrlAdd: function (path) {
this.$router.push({
name: path,
query: { blank: "y",}
});
},
goUrlT: function (path, obj, title){
this.$router.push({ name:path,query:{"id":obj,blank:'y',tab:title}})
},
handleCurrentChange: function (val) { //翻页
this.msg.pageIndex = val;
this.getPageList();
},
resetPageIndex: function (){ // 重置页码
this.msg.pageIndex=1;
this.currentPage = 1;
this.getPageList()
}
},
mounted() {
this.getPageList();
}
};
</script>
...@@ -2366,7 +2366,8 @@ ...@@ -2366,7 +2366,8 @@
</span> </span>
</p> </p>
<span style="display: block">房间信息<span v-if="item.oneSex > 0" <span style="display: block">房间信息<span v-if="item.oneSex > 0"
style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span> style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span><span v-if="item.chirdNoNeedBedNum > 0"
style="color: #e95252">(儿童不占床{{ item.chirdNoNeedBedNum }}人 )</span>
{{ item.orderGuestHouseStr }} {{ item.orderGuestHouseStr }}
<el-popover trigger="click" popper-class="KT_Scenic"> <el-popover trigger="click" popper-class="KT_Scenic">
<table width="100%" border="0" cellspacing="0" cellpadding="0"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
...@@ -2951,7 +2952,8 @@ ...@@ -2951,7 +2952,8 @@
</span> </span>
</p> </p>
<span style="display: block">房间信息<span v-if="item.oneSex > 0" <span style="display: block">房间信息<span v-if="item.oneSex > 0"
style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span>:{{ item.orderGuestHouseStr }}</span> style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span><span v-if="item.chirdNoNeedBedNum > 0"
style="color: #e95252">(儿童不占床{{ item.chirdNoNeedBedNum }}人 )</span>:{{ item.orderGuestHouseStr }}</span>
<span v-if="item.tipMoney" style="color: red">(小费:{{ item.tipMoney }})</span> <span v-if="item.tipMoney" style="color: red">(小费:{{ item.tipMoney }})</span>
</td> </td>
</tr> </tr>
......
...@@ -130,10 +130,10 @@ ...@@ -130,10 +130,10 @@
{{subItem.TCNUMS}}({{subItem.TCID}}) {{subItem.TCNUMS}}({{subItem.TCID}})
</td> </td>
<td :rowspan="outItem.rowspanCount" v-if="index==0&&subIndex==0"> <td :rowspan="outItem.rowspanCount" v-if="index==0&&subIndex==0">
{{subItem.LeaderName}} {{subItem.LeaderName}}<span style="color:red;">{{subItem.IsLeaderDaiTuan==1?"(带团)":"(不带团)"}}</span>
</td> </td>
<td :rowspan="outItem.rowspanCount" v-if="index==0&&subIndex==0"> <td :rowspan="outItem.rowspanCount" v-if="index==0&&subIndex==0">
{{subItem.GuideName}} {{subItem.GuideName}}<span style="color:red;">{{subItem.IsGuideDaiTuan==1?"(带团)":"(不带团)"}}</span>
</td> </td>
</template> </template>
<template v-else> <template v-else>
...@@ -144,10 +144,10 @@ ...@@ -144,10 +144,10 @@
{{subItem.TCNUMS}}({{subItem.TCID}}) {{subItem.TCNUMS}}({{subItem.TCID}})
</td> </td>
<td> <td>
{{subItem.LeaderName}} {{subItem.LeaderName}}<span style="color:red;">{{subItem.IsLeaderDaiTuan==1?"(带团)":"(不带团)"}}</span>
</td> </td>
<td> <td>
{{subItem.GuideName}} {{subItem.GuideName}}<span style="color:red;">{{subItem.IsGuideDaiTuan==1?"(带团)":"(不带团)"}}</span>
</td> </td>
</template> </template>
<td :rowspan="item.ShopDetailsList.length" v-if='subIndex==0' width="180" <td :rowspan="item.ShopDetailsList.length" v-if='subIndex==0' width="180"
......
...@@ -736,10 +736,18 @@ ...@@ -736,10 +736,18 @@
</td> </td>
<td>{{item.EnterTime}}</td> <td>{{item.EnterTime}}</td>
<td :class="{'redType':item.GuideID==0}"> <td :class="{'redType':item.GuideID==0}">
<span>{{item.GuideName}}</span> <span>{{item.GuideName}}
<span v-if="(item.GuideID>0||item.GuideName.length>0)&&item.TCIDExist>-1">
{{item.IsGuideDaiTuan==1?"(带团)":"(不带团)"}}
</span>
</span>
</td> </td>
<td :class="{'redType':item.LeaderID==0}"> <td :class="{'redType':item.LeaderID==0}">
<span>{{item.LeaderName}}</span> <span>{{item.LeaderName}}
<span v-if="(item.LeaderID>0||item.LeaderName.length>0)&&item.TCIDExist>-1">
{{item.IsLeaderDaiTuan==1?"(带团)":"(不带团)"}}
</span>
</span>
</td> </td>
<td>{{item.TotalPrice}}</td> <td>{{item.TotalPrice}}</td>
<td>{{item.GroupExtract}}</td> <td>{{item.GroupExtract}}</td>
......
...@@ -2698,7 +2698,8 @@ ...@@ -2698,7 +2698,8 @@
<span style="display: block"> <span style="display: block">
{{ $t("salesModule.RoomInfo") {{ $t("salesModule.RoomInfo")
}}<span v-if="childItem.OneSex > 0" }}<span v-if="childItem.OneSex > 0"
style="color: #e95252">({{ childItem.OneSex == 1 ? "单男" : "单女" }})</span>:{{ childItem.OrderGuestHouseStr }} style="color: #e95252">({{ childItem.OneSex == 1 ? "单男" : "单女" }})</span><span v-if="childItem.ChirdNoNeedBedNum > 0"
style="color: #e95252">(儿童不占床{{ childItem.ChirdNoNeedBedNum }}人 )</span>:{{ childItem.OrderGuestHouseStr }}
<el-popover trigger="click" popper-class="RL_Scenic"> <el-popover trigger="click" popper-class="RL_Scenic">
<table width="100%" border="0" cellspacing="0" cellpadding="0"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="_color_666" style="text-align: center"> <tr class="_color_666" style="text-align: center">
......
...@@ -286,14 +286,14 @@ ...@@ -286,14 +286,14 @@
<p v-if='!item.LeaderName' @click="goUrlT('RegistrationList',item.TCID,'报名清单')"> <p v-if='!item.LeaderName' @click="goUrlT('RegistrationList',item.TCID,'报名清单')">
{{$t('ground.peizhilingdui')}}</p> {{$t('ground.peizhilingdui')}}</p>
<p v-else @click="goUrlT('RegistrationList',item.TCID,'报名清单')"> <p v-else @click="goUrlT('RegistrationList',item.TCID,'报名清单')">
{{item.LeaderName}}{{getLeaderTypeStr(item.LeaderGuidClass)}}</p> {{item.LeaderName}}{{item.IsLeaderDaiTuan==1?"(带团)":"(不带团)"}}{{getLeaderTypeStr(item.LeaderGuidClass)}}</p>
</div> </div>
</td> </td>
<td> <td>
<div class="link"> <div class="link">
<p v-if='!item.GuideName' @click="goUrlT('leaderArrangement',item.TCID,'带团安排')"> <p v-if='!item.GuideName' @click="goUrlT('leaderArrangement',item.TCID,'带团安排')">
{{$t('ground.daituananpai')}}</p> {{$t('ground.daituananpai')}}</p>
<p v-else @click="goUrlT('leaderArrangement',item.TCID,'带团安排')">{{item.GuideName}}</p> <p v-else @click="goUrlT('leaderArrangement',item.TCID,'带团安排')">{{item.GuideName}}{{item.IsGuideDaiTuan==1?"(带团)":"(不带团)"}}</p>
</div> </div>
</td> </td>
<td> <td>
......
...@@ -703,11 +703,29 @@ ...@@ -703,11 +703,29 @@
<template slot="prepend">{{$t('sm.Leadernum')}}</template> <template slot="prepend">{{$t('sm.Leadernum')}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item>
<span class="TP_Sendprepend" style="margin:3px -1px 0 0">领队带团/不带团</span>
<el-select class="w180" v-model="priceData.IsLeaderDaiTuan">
<template v-for="item in DaiTuanList">
<el-option :key="item.Id" :label="item.name" :value="item.Id">
</el-option>
</template>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-input :placeholder="$t('pub.pleaseImport')" class="w260" v-model="priceData.GuideNum"> <el-input :placeholder="$t('pub.pleaseImport')" class="w260" v-model="priceData.GuideNum">
<template slot="prepend">导游人数(不占团队机位)</template> <template slot="prepend">导游人数(不占团队机位)</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item>
<span class="TP_Sendprepend" style="margin:3px -1px 0 0">导游带团/不带团</span>
<el-select class="w180" v-model="priceData.IsGuideDaiTuan">
<template v-for="item in DaiTuanList">
<el-option :key="item.Id" :label="item.name" :value="item.Id">
</el-option>
</template>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-input :placeholder="$t('op.CanSallTicketNum')" class="w290" v-model="priceData.CanSellTicketNum" <el-input :placeholder="$t('op.CanSallTicketNum')" class="w290" v-model="priceData.CanSellTicketNum"
maxlength="2" @keyup.native="checkInteger(priceData,'CanSellTicketNum')" maxlength="2" @keyup.native="checkInteger(priceData,'CanSellTicketNum')"
...@@ -1192,6 +1210,15 @@ ...@@ -1192,6 +1210,15 @@
name: "主推团" name: "主推团"
} }
], ],
DaiTuanList: [{
Id: 1,
name: "带团"
},
{
Id: 0,
name: "不带团"
}
],
currentPriceIndex: 0, //当前团期索引位置 currentPriceIndex: 0, //当前团期索引位置
showPriceList: [], showPriceList: [],
priceShowCount: 6, //团期展示条数 priceShowCount: 6, //团期展示条数
...@@ -1381,6 +1408,8 @@ ...@@ -1381,6 +1408,8 @@
EmergencyContact: "", //紧急联系人 EmergencyContact: "", //紧急联系人
IsNeedAirportShuttle: 0, //是否需要接送服务 IsNeedAirportShuttle: 0, //是否需要接送服务
GuideNum: 0, //导游人数 GuideNum: 0, //导游人数
IsLeaderDaiTuan:1,//领队带团/不带团
IsGuideDaiTuan:1,//导游带团/不带团
}; };
} }
this.returnPriceList.push(objItem); this.returnPriceList.push(objItem);
......
...@@ -709,6 +709,15 @@ ...@@ -709,6 +709,15 @@
<template slot="prepend">{{$t('sm.Leadernum')}}</template> <template slot="prepend">{{$t('sm.Leadernum')}}</template>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item>
<span class="TP_Sendprepend" style="margin:3px -1px 0 0">领队带团/不带团</span>
<el-select class="w180" v-model="priceData.IsLeaderDaiTuan">
<template v-for="item in DaiTuanList">
<el-option :key="item.Id" :label="item.name" :value="item.Id">
</el-option>
</template>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-input :placeholder="$t('op.CanSallTicketNum')" class="w290" v-model="priceData.CanSellTicketNum" <el-input :placeholder="$t('op.CanSallTicketNum')" class="w290" v-model="priceData.CanSellTicketNum"
maxlength="2" @keyup.native="checkInteger(priceData,'CanSellTicketNum')" maxlength="2" @keyup.native="checkInteger(priceData,'CanSellTicketNum')"
...@@ -1142,7 +1151,7 @@ ...@@ -1142,7 +1151,7 @@
Name: "" Name: ""
}, },
SaleBranchIdArray: [], SaleBranchIdArray: [],
OutGroupType: 0 OutGroupType: 0,
}, },
OutGroupTypeList: [{ OutGroupTypeList: [{
Name: '常规', Name: '常规',
...@@ -1196,6 +1205,15 @@ ...@@ -1196,6 +1205,15 @@
name: "主推团" name: "主推团"
} }
], ],
DaiTuanList: [{
Id: 1,
name: "带团"
},
{
Id: 0,
name: "不带团"
}
],
currentPriceIndex: 0, //当前团期索引位置 currentPriceIndex: 0, //当前团期索引位置
showPriceList: [], showPriceList: [],
priceShowCount: 6, //团期展示条数 priceShowCount: 6, //团期展示条数
...@@ -1387,6 +1405,7 @@ ...@@ -1387,6 +1405,7 @@
EmergencyContact: "", //紧急联系人 EmergencyContact: "", //紧急联系人
IsNeedAirportShuttle: 0, //是否需要接送服务 IsNeedAirportShuttle: 0, //是否需要接送服务
GuideNum:0,//导游人数 GuideNum:0,//导游人数
IsLeaderDaiTuan:1,//领队带团/不带团
}; };
} }
this.returnPriceList.push(objItem); this.returnPriceList.push(objItem);
...@@ -1690,6 +1709,7 @@ ...@@ -1690,6 +1709,7 @@
let showPriceList = []; let showPriceList = [];
let getCount = 0; //获取到得数量 let getCount = 0; //获取到得数量
this.showPriceList = showPriceList; this.showPriceList = showPriceList;
for ( for (
let i = this.currentPriceIndex; i < this.returnPriceList.length && getCount < this.priceShowCount; i++ let i = this.currentPriceIndex; i < this.returnPriceList.length && getCount < this.priceShowCount; i++
) { ) {
...@@ -2055,7 +2075,7 @@ ...@@ -2055,7 +2075,7 @@
priceList.push(x); priceList.push(x);
} }
}); });
this.returnPriceList = priceList; if(priceList.length>0) this.returnPriceList = priceList;
} }
this.returnPriceList.sort( this.returnPriceList.sort(
this.$commonUtils.createComprisonFunction("StartDate") this.$commonUtils.createComprisonFunction("StartDate")
......
...@@ -4052,6 +4052,13 @@ export default { ...@@ -4052,6 +4052,13 @@ export default {
meta: { meta: {
title: '发票详情' title: '发票详情'
}, },
}, { //财务 PPT发票管理
path: '/PPTInvoicesManager',
name: 'PPTInvoicesManager',
component: resolve => require(['@/components/FinancialModule/PPTInvoicesManager'], resolve),
meta: {
title: 'PPT发票管理'
},
}, { //财务 财务单据 收款查询管理 }, { //财务 财务单据 收款查询管理
path: '/RecPayQuery', path: '/RecPayQuery',
name: 'RecPayQuery', name: 'RecPayQuery',
......
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