Commit 0517a2c8 authored by 黄媛媛's avatar 黄媛媛
parents 254b5a7e 40c0e3b3
...@@ -39,16 +39,11 @@ module.exports = function () { ...@@ -39,16 +39,11 @@ module.exports = function () {
} }
if (warnings.length) { if (warnings.length) {
console.log('')
console.log(chalk.yellow('To use this template, you must update following to modules:')) console.log(chalk.yellow('To use this template, you must update following to modules:'))
console.log()
for (let i = 0; i < warnings.length; i++) { for (let i = 0; i < warnings.length; i++) {
const warning = warnings[i] const warning = warnings[i]
console.log(' ' + warning) console.log(' ' + warning)
} }
console.log()
process.exit(1) process.exit(1)
} }
} }
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate, no-store"> <meta http-equiv="Cache-Control" content="no-cache, must-revalidate, no-store">
<meta http-equiv="Expires" content="0"> <meta http-equiv="Expires" content="0">
<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=ZzGBZF6L0sgFDLlDohyvYhCnWy4dwksX" ></script> <script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=L5Qw0GlbbCIMwgR4Uug3ogM40Imkd3CV" ></script>
<script type="text/javascript" src="http://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js"></script> <script type="text/javascript" src="http://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js"></script>
<!-- <script type="text/javascript" src="http://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js"></script> --> <!-- <script type="text/javascript" src="http://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js"></script> -->
<script type="text/javascript" src="static/MarkerClusterer.js"></script> <script type="text/javascript" src="static/MarkerClusterer.js"></script>
......
...@@ -71,6 +71,7 @@ input:-webkit-autofill{-webkit-box-shadow: 0 0 0px 1000px white inset;} ...@@ -71,6 +71,7 @@ input:-webkit-autofill{-webkit-box-shadow: 0 0 0px 1000px white inset;}
.mt30{margin-top: 30px;} .mt30{margin-top: 30px;}
.mb30{margin-bottom: 30px;} .mb30{margin-bottom: 30px;}
.padding10{padding: 10px;} .padding10{padding: 10px;}
.paddinglr10{padding: 0 10px;}
.tleft{text-align: left!important} .tleft{text-align: left!important}
.tright{text-align: right!important} .tright{text-align: right!important}
.tcenter{text-align: center!important} .tcenter{text-align: center!important}
......
...@@ -314,7 +314,6 @@ export default { ...@@ -314,7 +314,6 @@ export default {
getGoodsTypeManager() { getGoodsTypeManager() {
this.apipost("Shop_post_GetCommodityCategoryList",{Name: "", ParentId: 0},res => { this.apipost("Shop_post_GetCommodityCategoryList",{Name: "", ParentId: 0},res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
console.log(res.data.data)
this.GoodsTypeList = res.data.data; this.GoodsTypeList = res.data.data;
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
......
...@@ -350,7 +350,6 @@ ...@@ -350,7 +350,6 @@
}) })
}); });
this.list = list; this.list = list;
console.log(this.list,'list');
this.$forceUpdate(); this.$forceUpdate();
} }
} else { } else {
......
...@@ -627,7 +627,7 @@ ...@@ -627,7 +627,7 @@
this.list[this.findex].HotelOrderList[this.childIndex].OrderDetailsList.forEach((subItem, this.list[this.findex].HotelOrderList[this.childIndex].OrderDetailsList.forEach((subItem,
subIndex) => { subIndex) => {
//判断是否有库存价格 //判断是否有库存价格
if (subIndex == 1 && ckedObj.CostPrice > 0) { if (subIndex == 1 && ckedObj.CostPrice > 0 && ckedObj.Inventory>0) {
subItem.IsHaveStockPrice = 1; subItem.IsHaveStockPrice = 1;
} else { } else {
subItem.IsHaveStockPrice = 0; subItem.IsHaveStockPrice = 0;
......
...@@ -304,7 +304,7 @@ export default { ...@@ -304,7 +304,7 @@ export default {
.leaderTotalTable tr td .pHouseStyle{border-bottom: 1px solid #ccc; height: 20px; line-height: 20px;} .leaderTotalTable tr td .pHouseStyle{border-bottom: 1px solid #ccc; height: 20px; line-height: 20px;}
.leaderTotalTable tr td .pHouseStyle:last-child{border-bottom: none;} .leaderTotalTable tr td .pHouseStyle:last-child{border-bottom: none;}
.leaderTotalTable tr td .pDateStyle{border-bottom: 1px solid #ccc; height: 20px; line-height: 20px; margin-top: 0;} .leaderTotalTable tr td .pDateStyle{border-bottom: 1px solid #ccc; height: 20px; line-height: 20px; margin-top: 0;}
.leaderTotalTable tr td .pMsgStyle{; padding: 0 10px; line-height: 20px;} .leaderTotalTable tr td .pMsgStyle{padding: 0 10px; line-height: 20px;}
.leaderTotalTable tr td .link p:hover{text-decoration: underline; cursor: pointer;} .leaderTotalTable tr td .link p:hover{text-decoration: underline; cursor: pointer;}
.leaderTotalTable tr td .phoverStype:hover{text-decoration: underline; cursor: pointer;} .leaderTotalTable tr td .phoverStype:hover{text-decoration: underline; cursor: pointer;}
.dmcTotalTable_tripDetails {padding: 0; box-shadow: 0px 1px 3px 0px #dedede; max-height: 400px;overflow-y: auto;} .dmcTotalTable_tripDetails {padding: 0; box-shadow: 0px 1px 3px 0px #dedede; max-height: 400px;overflow-y: auto;}
......
...@@ -127,6 +127,7 @@ ...@@ -127,6 +127,7 @@
{{(childItem.PeopleNum-childItem.Discount)*childItem.PeoplePrice}} {{(childItem.PeopleNum-childItem.Discount)*childItem.PeoplePrice}}
</td> </td>
<td> <td>
<!--返佣-->
<el-input class='w50 tcenter' @input='calculationPrice(subItem)' v-model='childItem.DiscountPrice' <el-input class='w50 tcenter' @input='calculationPrice(subItem)' v-model='childItem.DiscountPrice'
@keyup.native="checkInteger(childItem,'DiscountPrice')"></el-input>% @keyup.native="checkInteger(childItem,'DiscountPrice')"></el-input>%
</td> </td>
......
...@@ -127,13 +127,10 @@ export default { ...@@ -127,13 +127,10 @@ export default {
res => { res => {
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
console.log("res",res);
this.Actitylist = res.data.data; this.Actitylist = res.data.data;
if(this.Actitylist.length>0){ if(this.Actitylist.length>0){
this.msg.CouponId=this.Actitylist[0].Id; this.msg.CouponId=this.Actitylist[0].Id;
} }
} else { } else {
this.$message.error(res.data.message); this.$message.error(res.data.message);
} }
...@@ -149,7 +146,6 @@ export default { ...@@ -149,7 +146,6 @@ export default {
res => { res => {
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.list = res.data.data.pageData; this.list = res.data.data.pageData;
this.total=res.data.data.count; this.total=res.data.data.count;
} else { } else {
...@@ -167,9 +163,7 @@ export default { ...@@ -167,9 +163,7 @@ export default {
this.msg.pageIndex = 1; this.msg.pageIndex = 1;
this.currentPage = 1; this.currentPage = 1;
}, },
}, },
mounted() { mounted() {
this.GetActity(); this.GetActity();
let userInfo = this.getLocalStorage(); let userInfo = this.getLocalStorage();
......
...@@ -128,7 +128,7 @@ ...@@ -128,7 +128,7 @@
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="_customerTransferTable" :class="addShow==true?'_edHeight':''"> <div class="_customerTransferTable" :class="addShow==true?'_edHeight':''">
<table <table
class="customerTransferTable mt20" class="customerTransferTable customerTransferTable2 mt20"
border="0" border="0"
cellspacing="0" cellspacing="0"
cellpadding="0" cellpadding="0"
...@@ -140,11 +140,32 @@ ...@@ -140,11 +140,32 @@
</th> </th>
<th width="7%">{{$t('hotel.suplier_contact')}}</th> <th width="7%">{{$t('hotel.suplier_contact')}}</th>
<th width="8%">{{$t('restaurant.res_ContactNumber')}}</th> <th width="8%">{{$t('restaurant.res_ContactNumber')}}</th>
<th width="18%">{{$t('admin.admin_address')}}</th> <th width="10%">{{$t('admin.admin_address')}}</th>
<th width="7%">{{$t('salesModule.belongUnion')}}</th> <th width="7%">{{$t('salesModule.belongUnion')}}</th>
<th width="8%">{{$t('salesModule.SuoSales')}}</th> <th width="8%">{{$t('salesModule.SuoSales')}}</th>
<th width="8%">{{$t('salesModule.CustomerStatus')}}</th> <th width="8%">{{$t('salesModule.CustomerStatus')}}</th>
<th width="5%">{{$t('salesModule.belongUnion')}}</th> <th width="5%" class="cursorpointer" @click="changeSort(1, 'TradeMoney')">
<div class="sort-th">
<div>
{{$t('fnc.jiaoyie')}}
</div>
<div class="width15 ">
<p class=" _bold el-icon-caret-top sort-icon-top" :class="{sortActive: msg.jySort === 'asc'}" ></p>
<p class=" _bold el-icon-caret-bottom sort-icon-bottom" :class="{sortActive: msg.jySort === 'desc'}" ></p>
</div>
</div>
</th>
<th width="5%" class="cursorpointer" @click="changeSort(2, 'TotalGuestNum')">
<div class="sort-th">
<div>
{{$t('fnc.retoushu')}}
</div>
<div class="width15 cursorpointer">
<p class=" _bold el-icon-caret-top sort-icon-top" :class="{sortActive: msg.rtsSort === 'asc'}"></p>
<p class=" _bold el-icon-caret-bottom sort-icon-bottom" :class="{sortActive: msg.rtsSort === 'desc'}"></p>
</div>
</div>
</th>
<th width="5%">{{$t('salesModule.HappinessPassbook')}}</th> <th width="5%">{{$t('salesModule.HappinessPassbook')}}</th>
<th width="4%">优惠券</th> <th width="4%">优惠券</th>
<th width="8%">{{$t('pub.pubRemark')}}</th> <th width="8%">{{$t('pub.pubRemark')}}</th>
...@@ -177,6 +198,7 @@ ...@@ -177,6 +198,7 @@
<td>{{item.EmName}}</td> <td>{{item.EmName}}</td>
<td>{{valueToWord(item.CustomerStatus)}}</td> <td>{{valueToWord(item.CustomerStatus)}}</td>
<td>{{item.TotalPrice}}</td> <td>{{item.TotalPrice}}</td>
<td>{{item.TotalGuestNum}}</td>
<td>{{item.CL_Balance}}</td> <td>{{item.CL_Balance}}</td>
<td> <td>
<span style="cursor: pointer;text-decoration: underline;" @click.stop="goUrC('CouponsList',item.CustomerAccountId)"> <span style="cursor: pointer;text-decoration: underline;" @click.stop="goUrC('CouponsList',item.CustomerAccountId)">
...@@ -187,56 +209,52 @@ ...@@ -187,56 +209,52 @@
<td>{{item.Remark}}</td> <td>{{item.Remark}}</td>
<td> <td>
<el-tooltip effect="dark" :content="$t('fnc.zhuanjiao')" placement="top-start"> <el-button-group>
<el-popover width="280" popper-class="pd20" trigger="click"> <el-tooltip effect="dark" :content="$t('fnc.zhuanjiao')" placement="top-start">
<div> <el-popover width="280" popper-class="pd20" trigger="click">
<p class="fz12 fbold mt10 color333">{{$t('fnc.zhuanjiao')}}</p> <div>
<p class="fz12 mt30 color666"> <p class="fz12 fbold mt10 color333">{{$t('fnc.zhuanjiao')}}</p>
<span>{{$t('salesModule.Recipient')}}</span>&nbsp; <p class="fz12 mt30 color666">
<el-select <span>{{$t('salesModule.Recipient')}}</span>&nbsp;
filterable <el-select
class="w180" filterable
v-model="RecipientMsg.NewEmployeeId" class="w180"
:placeholder="$t('pub.pleaseSel')" v-model="RecipientMsg.NewEmployeeId"
> :placeholder="$t('pub.pleaseSel')"
<el-option >
v-for="item in employeeList1" <el-option
:label="item.name" v-for="item in employeeList1"
:value="item.empId" :label="item.name"
:key="item.empId" :value="item.empId"
></el-option> :key="item.empId"
</el-select> ></el-option>
</p> </el-select>
<p class="fz12 mt30 color666"> </p>
<span class="fl">{{$t('pub.pubRemark')}}</span>&nbsp;&nbsp;&nbsp;&nbsp; <p class="fz12 mt30 color666">
<el-input type="textarea" v-model="RecipientMsg.Remarks" class="w180"></el-input> <span class="fl">{{$t('pub.pubRemark')}}</span>&nbsp;&nbsp;&nbsp;&nbsp;
</p> <el-input type="textarea" v-model="RecipientMsg.Remarks" class="w180"></el-input>
<p> </p>
<input type="button" class="normalBtn mt30" @click="save" :value="$t('fnc.zhuanjiao')"> <p>
</p> <input type="button" class="normalBtn mt30" @click="save" :value="$t('fnc.zhuanjiao')">
</div> </p>
<i </div>
slot="reference" <el-button slot="reference" @click="singeleCked(item)" type="success" class="iconfont icon-zhuanjiao1 fist-bottom"></el-button>
@click="singeleCked(item)" </el-popover>
style="color: #019CED; font-size: 27px; cursor: pointer;" </el-tooltip>
class="iconfont icon-zhuanjiao" <el-tooltip
></i> class="item"
</el-popover> effect="dark"
</el-tooltip> :content="$t('system.table_edit')"
<el-tooltip placement="top-start"
class="item" >
effect="dark" <el-button
:content="$t('system.table_edit')" v-if="bossID===1 || bossID===5"
placement="top-start" type="primary"
> class
<el-button icon="el-icon-edit"
v-if="bossID===1 || bossID===5" circle
type="primary" @click="updateData(item)"
class ></el-button>
icon="el-icon-edit"
circle
@click="updateData(item)"
></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip <el-tooltip
class="item" class="item"
...@@ -293,8 +311,9 @@ ...@@ -293,8 +311,9 @@
:content="$t('fnc.xiangqing')" :content="$t('fnc.xiangqing')"
placement="top-start" placement="top-start"
> >
<el-button @click="getUrl(item)" type="success" icon="iconfont icon-nav-xiaoshou" circle></el-button> <el-button @click="getUrl(item)" style="padding: 5px;" type="success" icon="iconfont icon-nav-xiaoshou" ></el-button>
</el-tooltip> </el-tooltip>
</el-button-group>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -524,6 +543,9 @@ export default { ...@@ -524,6 +543,9 @@ export default {
allDepartment:0, allDepartment:0,
CustomerStatus:'', CustomerStatus:'',
OperationStatus:'', OperationStatus:'',
jySort: 'desc',
rtsSort: '',
orderBy: 'TradeMoney desc',
}, },
RecipientMsg: { RecipientMsg: {
CustomerIdArr: [], CustomerIdArr: [],
...@@ -634,6 +656,18 @@ export default { ...@@ -634,6 +656,18 @@ export default {
}; };
}, },
methods: { methods: {
changeSort(type, name){
if (type == 1) {
this.msg.jySort = this.msg.jySort === '' ? 'desc' : this.msg.jySort === 'desc' ? 'asc' : ''
this.msg.rtsSort = ''
this.msg.orderBy = this.msg.jySort == '' ? '' : name + ' '+ this.msg.jySort
} else {
this.msg.jySort = ''
this.msg.rtsSort = this.msg.rtsSort = this.msg.rtsSort === '' ? 'desc' : this.msg.rtsSort === 'desc' ? 'asc' : ''
this.msg.orderBy = this.msg.rtsSort == '' ? '' : name + ' '+ this.msg.rtsSort
}
this.getList();
},
getCustomerBrandList(){ // 获取品牌 getCustomerBrandList(){ // 获取品牌
this.apipost('app_get_customer_brand',{},res=>{ this.apipost('app_get_customer_brand',{},res=>{
if(res.data.resultCode==1){ if(res.data.resultCode==1){
...@@ -1258,12 +1292,12 @@ export default { ...@@ -1258,12 +1292,12 @@ export default {
.customerTransferTable ._class_b{ .customerTransferTable ._class_b{
color: #257BF1 !important color: #257BF1 !important
} }
.customerTransferTable tr th { .customerTransferTable.customerTransferTable2 tr th {
background: #dcdcdc; background: #dcdcdc;
height: 30px; height: 30px;
font-size: 12px; font-size: 12px;
text-align: left; text-align: left;
text-indent: 25px; text-indent: 0 !important;
} }
.customerTransferTable tr { .customerTransferTable tr {
text-align: left; text-align: left;
...@@ -1299,7 +1333,6 @@ export default { ...@@ -1299,7 +1333,6 @@ export default {
top: -5px; top: -5px;
} }
.customerTransferTable .el-button + .el-button { .customerTransferTable .el-button + .el-button {
margin: 0;
} }
.customerTransfer ._mc_edit { .customerTransfer ._mc_edit {
overflow: auto; overflow: auto;
...@@ -1359,4 +1392,37 @@ export default { ...@@ -1359,4 +1392,37 @@ export default {
height: 148px; height: 148px;
display: block; display: block;
} }
.width15{
width: 15px;
}
.sort-th{
display: flex;
align-items: center;
}
.sortActive{
color: #E95252;
}
.sort-icon-top{
position: relative;
top: 4px;
/* left: -45px; */
}
.sort-icon-bottom{
position: relative;
bottom: 4px;
/* left: -20px; */
}
.customerTransfer .fist-bottom{
color: rgb(255, 255, 255);
font-size: 14px;
padding: 5px;
cursor: pointer;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}
.customerTransfer .el-button-group{
padding-top: 10px;
}
</style> </style>
...@@ -182,6 +182,8 @@ ...@@ -182,6 +182,8 @@
getlistIndex:0, getlistIndex:0,
FinalYingYan:true, FinalYingYan:true,
datainfo:{}, datainfo:{},
page_size:1000,
page_size2:5000,
} }
}, },
beforeDestroy() { beforeDestroy() {
...@@ -211,7 +213,6 @@ ...@@ -211,7 +213,6 @@
Id: id Id: id
}, res => { }, res => {
if(res.data.resultCode == 1) { if(res.data.resultCode == 1) {
this.datainfo=res.data.data; this.datainfo=res.data.data;
this.filterText=this.datainfo.EmName; this.filterText=this.datainfo.EmName;
let obj={}; let obj={};
...@@ -297,6 +298,8 @@ ...@@ -297,6 +298,8 @@
} }
this.creatMap() this.creatMap()
} }
}else{
this.Error('暂无定位数据');
} }
}, },
...@@ -350,6 +353,8 @@ ...@@ -350,6 +353,8 @@
} }
this.creatMap() this.creatMap()
} }
}else{
this.Error('暂无定位数据');
} }
}, },
...@@ -434,33 +439,13 @@ ...@@ -434,33 +439,13 @@
let url = this.keys + '&timeStamp=' + start_time let url = this.keys + '&timeStamp=' + start_time
this.getlistIndex=1 this.getlistIndex=1
this.getlistPage(url) this.getlistPage(url)
// this.$http.get('https://bird.ioliu.cn/v1?url=http://yingyan.baidu.com/api/v3/entity/search' + url).then(res => {
// this.onlinePerson = 0
// this.markersList = res.data.entities
// this.personData.forEach(person => {
// let item = this.markersList.find(markers => markers.entity_name == person.entity_name)
// if(item) {
// let that = this
// if(that.getOnlineStatus(item.latest_location.loc_time) === 0) {
// this.onlineTypeList.push(person);
// this.onlinePerson += 1;
// } else {
// this.leaveLineTypeList.push(person)
// }
// } else {
// this.leaveLineTypeList.push(person)
// }
// });
//
// })
}, },
getlistPage(url){ getlistPage(url){
let that=this let that=this
this.$http.get('https://bird.ioliu.cn/v1?url=http://yingyan.baidu.com/api/v3/entity/search' + url+'&page_index='+this.getlistIndex).then(res => { this.$http.get('https://bird.ioliu.cn/v1?url=http://yingyan.baidu.com/api/v3/entity/search' + url+'&page_index='+this.getlistIndex+'&page_size'+this.page_size).then(res => {
this.markersList=this.markersList.concat(res.data.entities) this.markersList=this.markersList.concat(res.data.entities)
if(that.getlistIndex*1000<res.data.total){ if(that.getlistIndex*this.page_size<res.data.total){
that.getlistIndex+=1; that.getlistIndex+=1;
that.getlistPage(url); that.getlistPage(url);
} }
...@@ -502,7 +487,7 @@ ...@@ -502,7 +487,7 @@
} }
}) })
this.gettrackPageIndex=1; this.gettrackPageIndex=1;
let url = this.keys + '&entity_name=' + obj.Phone + '&start_time=' + start_time + '&end_time=' + end_time +'&page_size=5000&is_processed=' + this.isjiuzheng + let url = this.keys + '&entity_name=' + obj.Phone + '&start_time=' + start_time + '&end_time=' + end_time +'&page_size='+this.page_size2+'&is_processed=' + this.isjiuzheng +
'&process_option=' + canshu + ',transport_mode=' + this.transportMode; '&process_option=' + canshu + ',transport_mode=' + this.transportMode;
this.gettrackPage(url); this.gettrackPage(url);
this.Point = [] this.Point = []
...@@ -518,7 +503,7 @@ ...@@ -518,7 +503,7 @@
}) })
} }
if(this.gettrackPageIndex*5000<res.data.total){ if(this.gettrackPageIndex*this.page_size2<res.data.total){
this.gettrackPageIndex+=1; this.gettrackPageIndex+=1;
this.gettrackPage(url); this.gettrackPage(url);
} }
...@@ -560,7 +545,6 @@ ...@@ -560,7 +545,6 @@
this.playIndex++ this.playIndex++
if(this.playIndex < this.playPoints.length) { if(this.playIndex < this.playPoints.length) {
this.playGj(this.playIndex) this.playGj(this.playIndex)
//window.setTimeout("playGj(" + this.playIndex+ ")", 50);
} else { } else {
} }
}, },
......
...@@ -344,7 +344,7 @@ ...@@ -344,7 +344,7 @@
<div title="地接团" class="travel_warningDi"></div> <div title="地接团" class="travel_warningDi"></div>
</template> </template>
<template v-else> <template v-else>
<div v-if="item.IsWarning===1" title="紧急团" class="travel_warning"></div> <div v-if="item.IsWarning===1" title="紧急团" class="travel_warning" style="display:none;"></div>
</template> </template>
<div> <div>
<div class="TC_teamType"> <div class="TC_teamType">
......
...@@ -49,6 +49,7 @@ ...@@ -49,6 +49,7 @@
<th>订单状态</th> <th>订单状态</th>
<th>订单总价</th> <th>订单总价</th>
<th>订单生成时间</th> <th>订单生成时间</th>
<th>收货地址</th>
<th>配送备注</th> <th>配送备注</th>
<th>关联销售</th> <th>关联销售</th>
<th>操作</th> <th>操作</th>
...@@ -58,7 +59,7 @@ ...@@ -58,7 +59,7 @@
<td>{{item.orderNum}}</td> <td>{{item.orderNum}}</td>
<td>{{item.goodsName}}</td> <td>{{item.goodsName}}</td>
<td> <td>
<img class="OrderMgoodImg" :src="item.goodsImg" alt=""/> <img @click="showImg(item.goodsImg)" class="OrderMgoodImg cursorpointer" :src="item.goodsImg" alt=""/>
</td> </td>
<td>{{item.goodsPrice}}</td> <td>{{item.goodsPrice}}</td>
<td>{{item.buyNum}}</td> <td>{{item.buyNum}}</td>
...@@ -73,6 +74,10 @@ ...@@ -73,6 +74,10 @@
<td> <td>
{{getDate(item.crateTime)}} {{getDate(item.crateTime)}}
</td> </td>
<td class="paddinglr10">
<p class="tleft">联系信息: {{item.receiver}}/{{item.customerPhone}}</p>
<p class="tleft">收货地址: {{item.customerAddress}}</p>
</td>
<td>{{item.sendRemark}}</td> <td>{{item.sendRemark}}</td>
<td>{{item.saleName}}</td> <td>{{item.saleName}}</td>
<td> <td>
...@@ -86,6 +91,9 @@ ...@@ -86,6 +91,9 @@
<i class="iconfont icon-kong"></i> <i class="iconfont icon-kong"></i>
<p>{{$t("active.ld_noData")}}</p> <p>{{$t("active.ld_noData")}}</p>
</div> </div>
<viewer :images="images" :options="imageOptions" @inited="inited" class="viewer" ref="viewer">
<img v-for="src in images" :src="src" :key="src">
</viewer>
</div> </div>
</template> </template>
<script> <script>
...@@ -93,7 +101,11 @@ import moment from 'moment' ...@@ -93,7 +101,11 @@ import moment from 'moment'
export default { export default {
data() { data() {
return { return {
//请求 imageOptions: {
navbar: false,
title: false
},
images: [],
msg: { msg: {
orderStatus:'', orderStatus:'',
orderNum:'', orderNum:'',
...@@ -115,6 +127,21 @@ export default { ...@@ -115,6 +127,21 @@ export default {
}, },
methods: { methods: {
showImg: function(src) {
let isExsit = false;
this.images.forEach(x => {
if (x === src) isExsit = true;
});
if (!isExsit) {
this.images.push(src);
} else {
this.$viewer.view(this.images.indexOf(src));
}
this.$viewer.show();
},
inited(viewer) {
this.$viewer = viewer;
},
handleCurrentChange(val){ handleCurrentChange(val){
this.msg.pageIndex=val; this.msg.pageIndex=val;
this.getList(); this.getList();
......
<style> <style>
.pushManagement .el-checkbox{
margin-left: 0;
margin-right: 30px;
}
</style> </style>
<template> <template>
...@@ -95,7 +99,7 @@ ...@@ -95,7 +99,7 @@
<el-input type="text" v-model="addMsg.MinProgram" class="w217"></el-input> <el-input type="text" v-model="addMsg.MinProgram" class="w217"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="推送时间" prop="SendDate"> <el-form-item label="推送时间" prop="SendDate">
<el-date-picker v-model='addMsg.SendDate' :picker-options="pickerOptions0" class='w217' value-format="yyyy-MM-dd" type="date"></el-date-picker> <el-date-picker v-model='addMsg.SendDate' :picker-options="pickerOptions0" class='w217' value-format="yyyy-MM-dd HH:mm" type="datetime"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="所属公司"> <el-form-item label="所属公司">
<el-select filterable v-model="addMsg.RB_Branch_id"> <el-select filterable v-model="addMsg.RB_Branch_id">
...@@ -132,6 +136,13 @@ ...@@ -132,6 +136,13 @@
- -
<el-input type="number" v-model="addMsg.MaxCoupons" class="w100"></el-input> <el-input type="number" v-model="addMsg.MaxCoupons" class="w100"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="提示内容">
<el-checkbox-group v-model="addMsg.ISShowList">
<el-checkbox :label="1">幸福存折</el-checkbox>
<el-checkbox :label="2">优惠券</el-checkbox>
<el-checkbox :label="3">大红包</el-checkbox>
</el-checkbox-group>
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button <button
...@@ -185,6 +196,7 @@ export default { ...@@ -185,6 +196,7 @@ export default {
MaxCoupons: 0, MaxCoupons: 0,
MinPassbook: 0, MinPassbook: 0,
MaxPassbook: 0, MaxPassbook: 0,
ISShowList: [],
}, },
rules: { rules: {
SendTitle: [ SendTitle: [
...@@ -318,6 +330,7 @@ export default { ...@@ -318,6 +330,7 @@ export default {
MaxCoupons: 0, MaxCoupons: 0,
MinPassbook: 0, MinPassbook: 0,
MaxPassbook: 0, MaxPassbook: 0,
ISShowList: [],
}; };
this.addMsg = newMsg; this.addMsg = newMsg;
}, },
......
...@@ -307,7 +307,7 @@ export default { ...@@ -307,7 +307,7 @@ export default {
titleAlign: "left", titleAlign: "left",
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
width: 80, width: 200,
formatter: function(rowData, rowIndex, pagingIndex, field) { formatter: function(rowData, rowIndex, pagingIndex, field) {
if(rowData.remark) if(rowData.remark)
return `<div class="outDiv"> return `<div class="outDiv">
......
...@@ -406,7 +406,7 @@ ...@@ -406,7 +406,7 @@
{{$t('ground.cituanhuidai')}} {{$t('ground.cituanhuidai')}}
</td> </td>
</tr> </tr>
<tr> <tr style="display:none;">
<td style="text-align:right;width:80px;">{{$t('ground.dingfangstatus')}}:</td> <td style="text-align:right;width:80px;">{{$t('ground.dingfangstatus')}}:</td>
<td> <td>
<el-select v-model="NumObj.IsBookTeam"> <el-select v-model="NumObj.IsBookTeam">
...@@ -416,7 +416,6 @@ ...@@ -416,7 +416,6 @@
</el-select> </el-select>
</td> </td>
</tr> </tr>
<tr> <tr>
<td style="text-align:right;">{{$t('pub.pubRemark')}}</td> <td style="text-align:right;">{{$t('pub.pubRemark')}}</td>
<td> <td>
...@@ -428,13 +427,13 @@ ...@@ -428,13 +427,13 @@
{{$t('ground.cibeizhu')}}. {{$t('ground.cibeizhu')}}.
</td> </td>
</tr> </tr>
<tr> <tr style="display:none;">
<td style="text-align:right;">{{$t('ground.gysbeizhu')}}</td> <td style="text-align:right;">{{$t('ground.gysbeizhu')}}</td>
<td> <td>
<el-input class='mt10' v-model='NumObj.SupplierRemarks' type='textarea'></el-input> <el-input class='mt10' v-model='NumObj.SupplierRemarks' type='textarea'></el-input>
</td> </td>
</tr> </tr>
<tr> <tr style="display:none;">
<td colspan="2"> <td colspan="2">
{{$t('ground.cibeizhuchaxun')}}. {{$t('ground.cibeizhuchaxun')}}.
</td> </td>
...@@ -504,22 +503,22 @@ ...@@ -504,22 +503,22 @@
<div class="link"> <div class="link">
<p @click="getJourney(item)" style="padding-top:4px;">{{item.Title}}</p> <p @click="getJourney(item)" style="padding-top:4px;">{{item.Title}}</p>
<div v-if="outItem.PriceCommonList[index].DMCNum && outItem.PriceCommonList[index].DMCNum!=''" <div v-if="outItem.PriceCommonList[index].DMCNum && outItem.PriceCommonList[index].DMCNum!=''"
class="colorE95252" style="padding-top:5px;">{{$t('op.DJBZTH')}}:{{outItem.PriceCommonList[index].DMCNum}} class="colorE95252" style="padding-top:5px;padding-bottom:4px;font-size:13px;">{{$t('op.DJBZTH')}}<span style="font-weight:bold">{{outItem.PriceCommonList[index].DMCNum}}</span>
</div> </div>
<div v-show="outItem.PriceCommonList[index].OPInnerRemark!=''" class="colorE95252" <div v-show="outItem.PriceCommonList[index].OPInnerRemark!=''" class="colorE95252"
style="padding-top:5px;">{{$t('Operation.Op_remark')}}:{{outItem.PriceCommonList[index].OPInnerRemark}}</div> style="padding-top:5px;padding-bottom:4px;font-size:13px;">{{$t('Operation.Op_remark')}}{{outItem.PriceCommonList[index].OPInnerRemark}}</div>
<div v-show="outItem.PriceCommonList[index].OPRemark!=''" class="colorE95252" <div v-show="outItem.PriceCommonList[index].OPRemark!=''" class="colorE95252"
style="padding-top:5px;">{{$t('Operation.Op_duiwaiRemark')}}:{{outItem.PriceCommonList[index].OPRemark}}</div> style="padding-top:5px;padding-bottom:4px;font-size:13px;">{{$t('Operation.Op_duiwaiRemark')}}{{outItem.PriceCommonList[index].OPRemark}}</div>
<div v-show="outItem.PriceCommonList[0].DMCRemark!=''" class="colorE95252" <div v-show="outItem.PriceCommonList[index].DMCRemark!=''" class="colorE95252"
style="padding-top:5px;padding-bottom:4px;">{{$t('Operation.Op_dijieRemark')}}:{{outItem.PriceCommonList[index].DMCRemark}} style="padding-top:5px;padding-bottom:4px;font-size:13px;">{{$t('Operation.Op_dijieRemark')}}{{outItem.PriceCommonList[index].DMCRemark}}
</div> </div>
<div v-show="outItem.PriceCommonList[0].SupplierRemarks!=''" class="colorE95252" <div v-show="outItem.PriceCommonList[index].SupplierRemarks!=''" class="colorE95252"
style="padding-top:5px;padding-bottom:4px;"> style="padding-top:5px;padding-bottom:4px;font-size:13px;">
{{$t('ground.gysbeizhu')}}:{{outItem.PriceCommonList[index].SupplierRemarks}} {{$t('ground.gysbeizhu')}}{{outItem.PriceCommonList[index].SupplierRemarks}}
</div> </div>
<div v-show="outItem.PriceCommonList[0].SupplierToDmcRemarks!=''" class="colorE95252" <div v-show="outItem.PriceCommonList[index].SupplierToDmcRemarks!=''" class="colorE95252"
style="padding-top:5px;padding-bottom:4px;"> style="padding-top:5px;padding-bottom:4px;font-size:13px;">
{{$t('ground.gysduindibeizhu')}} :{{outItem.PriceCommonList[index].SupplierToDmcRemarks}} {{$t('ground.gysduindibeizhu')}}{{outItem.PriceCommonList[index].SupplierToDmcRemarks}}
</div> </div>
</div> </div>
</td> </td>
......
<style> <style>
.GOd_Table { .GOd_Table {
width: 100%; width: 100%;
font-size: 12px; font-size: 12px;
color: #333; color: #333;
margin: 20px 0 auto; margin: 20px 0 auto;
border-collapse: collapse; border-collapse: collapse;
background-color: #fff; background-color: #fff;
border: 1px solid #d1d1d1; border: 1px solid #d1d1d1;
} }
.GOd_Table td {
border: 1px solid #d1d1d1;
text-align: center;
height: 40px;
padding: 5px;
}
.GOd_Table th { .GOd_Table td {
background-color: #e6e6e6; border: 1px solid #d1d1d1;
border: 1px solid #d1d1d1; text-align: center;
height: 40px; height: 40px;
} padding: 5px;
}
.GD_comDiv { .GOd_Table th {
width: 100%; background-color: #e6e6e6;
height: 25px; border: 1px solid #d1d1d1;
line-height: 25px; height: 40px;
text-align: center; }
border-bottom: 1px solid #d1d1d1;
}
.GOd_Table td .GD_comDiv:last-child { .GD_comDiv {
border: none; width: 100%;
} height: 25px;
line-height: 25px;
text-align: center;
border-bottom: 1px solid #d1d1d1;
}
.GD_comPad { .GOd_Table td .GD_comDiv:last-child {
padding: 0 !important; border: none;
} }
.groundLastTable { .GD_comPad {
margin: 20px 0; padding: 0 !important;
font-size: 12px; }
}
.gdBtn { .groundLastTable {
position: relative; margin: 20px 0;
top: -45px; font-size: 12px;
} }
.gdBtn {
position: relative;
top: -45px;
}
</style> </style>
<template> <template>
...@@ -55,427 +54,488 @@ ...@@ -55,427 +54,488 @@
<div v-loading="loading"> <div v-loading="loading">
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="9">{{$t('ground.dyldyxjhb')}}</th> <th colspan="9">{{ $t("ground.dyldyxjhb") }}</th>
</tr> </tr>
<tr> <tr>
<th width="150">{{$t('sm.chufadi')}}</th> <th width="150">{{ $t("sm.chufadi") }}</th>
<th>{{$t('ground.hbsj')}}</th> <th>{{ $t("ground.hbsj") }}</th>
<th>{{$t('sm.jiheshijian')}}</th> <th>{{ $t("sm.jiheshijian") }}</th>
<th width="500">{{$t('ground.ctmchen')}}</th> <th width="500">{{ $t("ground.ctmchen") }}</th>
<th>{{$t('ground.tianshu')}}</th> <th>{{ $t("ground.tianshu") }}</th>
<th>{{$t('Operation.Op_jinchudian')}}</th> <th>{{ $t("Operation.Op_jinchudian") }}</th>
<th>{{$t('ground.ctrenshu')}}</th> <th>{{ $t("ground.ctrenshu") }}</th>
<th>{{$t('leader.leader_Leader')}}</th> <th>{{ $t("leader.leader_Leader") }}</th>
<th>{{$t('leader.leader_Guide')}}</th> <th>{{ $t("leader.leader_Guide") }}</th>
</tr> </tr>
<tr v-for="item in BaseInfo"> <tr v-for="item in BaseInfo">
<td>{{item.StartCityNames}}</td> <td>{{ item.StartCityNames }}</td>
<td> <td>
<span v-if="item.FlightList.length>0">{{item.FlightList[0].Departure_time}}</span> <span v-if="item.FlightList.length > 0">{{
item.FlightList[0].Departure_time
}}</span>
</td> </td>
<td>{{item.GatherTime}}</td> <td>{{ item.GatherTime }}</td>
<td style="text-align:left;">{{item.Titles}}</td> <td style="text-align:left;">{{ item.Titles }}</td>
<td>{{item.DayNum}}</td> <td>{{ item.DayNum }}</td>
<td>{{item.InOut}}</td> <td>{{ item.InOut }}</td>
<td>{{item.TotalSeat}}+1</td> <td>{{ item.TotalSeat }}+1</td>
<td>{{item.LeaderName}}</td> <td>{{ item.LeaderName }}</td>
<td>{{item.GuideName}}</td> <td>{{ item.GuideName }}</td>
</tr> </tr>
<tr> <tr>
<td>{{$t('ground.tsyaoqiu')}}</td> <td>{{ $t("ground.tsyaoqiu") }}</td>
<td colspan="8"></td> <td colspan="8"></td>
</tr> </tr>
<tr> <tr>
<td rowspan="5"> <td rowspan="5">
{{$t('ground.bmfzr')}} {{ $t("ground.bmfzr") }}
</td> </td>
<td>{{$t('ground.jpfzren')}}</td> <td>{{ $t("ground.jpfzren") }}</td>
<td> <td>
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].CreateByName' class='w200'></el-input> <el-input
v-model="PrincipalList[0].CreateByName"
class="w200"
></el-input>
</template> </template>
</td> </td>
<td>{{$t('restaurant.res_ContactNumber')}}</td> <td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5"> <td colspan="5">
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].CreateByMobile' class='w200'></el-input> <el-input
v-model="PrincipalList[0].CreateByMobile"
class="w200"
></el-input>
</template> </template>
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{$t('ground.dffzren')}}</td> <td>{{ $t("ground.dffzren") }}</td>
<td> <td>
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].HConfirmName' class='w200'></el-input> <el-input
v-model="PrincipalList[0].HConfirmName"
class="w200"
></el-input>
</template> </template>
</td> </td>
<td>{{$t('restaurant.res_ContactNumber')}}</td> <td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5"> <td colspan="5">
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].HConfirmMobile' class='w200'></el-input> <el-input
v-model="PrincipalList[0].HConfirmMobile"
class="w200"
></el-input>
</template> </template>
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{$t('ground.zlfzren')}}</td> <td>{{ $t("ground.zlfzren") }}</td>
<td> <td>
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].BConfirmName' class='w200'></el-input> <el-input
v-model="PrincipalList[0].BConfirmName"
class="w200"
></el-input>
</template> </template>
</td> </td>
<td>{{$t('restaurant.res_ContactNumber')}}</td> <td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5"> <td colspan="5">
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].BConfirmMobile' class='w200'></el-input> <el-input
v-model="PrincipalList[0].BConfirmMobile"
class="w200"
></el-input>
</template> </template>
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{$t('ground.dcfzeren')}}</td> <td>{{ $t("ground.dcfzeren") }}</td>
<td> <td>
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].DConfirmName' class='w200'></el-input> <el-input
v-model="PrincipalList[0].DConfirmName"
class="w200"
></el-input>
</template> </template>
</td> </td>
<td>{{$t('restaurant.res_ContactNumber')}}</td> <td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5"> <td colspan="5">
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].DConfirmMobile' class='w200'></el-input> <el-input
v-model="PrincipalList[0].DConfirmMobile"
class="w200"
></el-input>
</template> </template>
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{$t('ground.mpfzeren')}}</td> <td>{{ $t("ground.mpfzeren") }}</td>
<td> <td>
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].TConfirmName' class='w200'></el-input> <el-input
v-model="PrincipalList[0].TConfirmName"
class="w200"
></el-input>
</template> </template>
</td> </td>
<td>{{$t('restaurant.res_ContactNumber')}}</td> <td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5"> <td colspan="5">
<template v-if="PrincipalList.length>0"> <template v-if="PrincipalList.length > 0">
<el-input v-model='PrincipalList[0].TConfirmMobile' class='w200'></el-input> <el-input
v-model="PrincipalList[0].TConfirmMobile"
class="w200"
></el-input>
</template> </template>
</td> </td>
</tr> </tr>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="9">{{$t('ground.clshiyong')}}</th> <th colspan="9">{{ $t("ground.clshiyong") }}</th>
</tr> </tr>
<tr> <tr>
<th>{{$t('ground.chepeihao')}}</th> <th>{{ $t("ground.usebusTime") }}</th>
<th>{{$t('ground.clgs')}}</th> <th>{{ $t("ground.clgs") }}</th>
<th>{{$t('ground.usebusTime')}}</th> <th>{{ $t("ground.chepaihao") }}</th>
<th>{{$t('ground.chepaihao')}}</th> <th>{{ $t("ground.sijiName") }}</th>
<th>{{$t('ground.sijiName')}}</th> <th>{{ $t("ground.sijiPhone") }}</th>
<th>{{$t('ground.sijiPhone')}}</th> <th>{{ $t("pub.pubRemark") }}</th>
<th>{{$t('pub.pubRemark')}}</th>
</tr> </tr>
<tr v-for="item in DMCStaticsCommon.BusList"> <tr v-for="item in DMCStaticsCommon.BusList">
<td>{{item.BusCode}}</td> <td>{{ item.PlanDateStr }}</td>
<td>{{item.BusCompany}}</td> <td>{{ item.SupplierName }}</td>
<td>{{item.PlanDateStr}}</td> <td>{{ item.BusNum }}</td>
<td>{{item.BusNum}}</td> <td>{{ item.DriverName }}</td>
<td>{{item.DriverName}}</td> <td>{{ item.DriverTel }}</td>
<td>{{item.DriverTel}}</td> <td width="300">{{ item.Remarks }}</td>
<td width="300">{{item.Remarks}}</td>
</tr> </tr>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="17">{{$t('ground.jdshiyong')}}</th> <th colspan="17">{{ $t("ground.jdshiyong") }}</th>
</tr> </tr>
<tr> <tr>
<th width="80">{{$t('ground.dfanghao')}}</th> <th width="80">{{ $t("ground.dfanghao") }}</th>
<th width="180">{{$t('hotel.hotel_name')}}</th> <th width="180">{{ $t("hotel.hotel_name") }}</th>
<th width="100">{{$t('hotel.table_CheckInDate')}}</th> <th width="100">{{ $t("hotel.table_CheckInDate") }}</th>
<th width="80">{{$t('op.TakeBed')}}/{{$t('op.NoneedBed')}}</th> <th width="80">{{ $t("op.TakeBed") }}/{{ $t("op.NoneedBed") }}</th>
<th width="80">{{$t('ground.shijiyfs')}}</th> <th width="80">{{ $t("ground.shijiyfs") }}</th>
<th width="80">{{$t('restaurant.res_ContactNumber')}}</th> <th width="80">{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="200">{{$t('admin.admin_address')}}</th> <th width="200">{{ $t("admin.admin_address") }}</th>
<th width="200">{{$t('pub.pubRemark')}}</th> <th width="200">{{ $t("pub.pubRemark") }}</th>
</tr> </tr>
<tbody v-for="item in DMCStaticsCommon.HotelOrderListReport"> <tbody v-for="item in DMCStaticsCommon.HotelOrderListReport">
<tr v-for="subItem in item.HotelOrderList"> <tr v-for="subItem in item.HotelOrderList">
<td>{{subItem.ReserveNo}}</td> <td>{{ subItem.ReserveNo }}</td>
<td style="text-align:left;">{{subItem.HotelName}}</td> <td style="text-align:left;">{{ subItem.HotelName }}</td>
<td>{{subItem.CheckInDateStr}}</td> <td>{{ subItem.CheckInDateStr }}</td>
<td>{{getHotelTotalNum(subItem)}}</td> <td>{{ getHotelTotalNum(subItem) }}</td>
<td>{{getHotelTotal(subItem)}}</td> <td>{{ getHotelTotal(subItem) }}</td>
<td>{{subItem.Tel}}</td> <td>{{ subItem.Tel }}</td>
<td style="text-align:left;">{{subItem.Address}}</td> <td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{subItem.Remarks}}</td> <td style="text-align:left;">{{ subItem.Remarks }}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="15">{{$t('ground.canshishiyong')}}</th> <th colspan="15">{{ $t("ground.canshishiyong") }}</th>
</tr> </tr>
<tr> <tr>
<th width="80">{{$t('ground.dchao')}}</th> <th width="80">{{ $t("ground.dchao") }}</th>
<th width="80">{{$t('restaurant.res_etTime')}}</th> <th width="80">{{ $t("restaurant.res_etTime") }}</th>
<th width="80">{{$t('restaurant.res_resName')}}</th> <th width="80">{{ $t("restaurant.res_resName") }}</th>
<th width="50">{{$t('ground.leibie')}}</th> <th width="50">{{ $t("ground.leibie") }}</th>
<th width="80">{{$t('ground.cayinlexing')}}</th> <th width="80">{{ $t("ground.cayinlexing") }}</th>
<th width="80">{{$t('ground.zongrenshu')}}</th> <th width="80">{{ $t("ground.zongrenshu") }}</th>
<th width="80">{{$t('restaurant.res_ContactNumber')}}</th> <th width="80">{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="200">{{$t('admin.admin_address')}}</th> <th width="200">{{ $t("admin.admin_address") }}</th>
<th width="300">{{$t('pub.pubRemark')}}</th> <th width="300">{{ $t("pub.pubRemark") }}</th>
</tr> </tr>
<tbody v-for="item in DMCStaticsCommon.DiningList"> <tbody v-for="item in DMCStaticsCommon.DiningList">
<tr v-for="subItem in item.DiningSummaryList"> <tr v-for="subItem in item.DiningSummaryList">
<td>{{subItem.ReserveNo}}</td> <td>{{ subItem.ReserveNo }}</td>
<td>{{subItem.UseTimeStr}}</td> <td>{{ subItem.UseTimeStr }}</td>
<td style="text-align:left;">{{subItem.DiningName}}</td> <td style="text-align:left;">{{ subItem.DiningName }}</td>
<td>{{subItem.UseDinnerTypeStr}}</td> <td>{{ subItem.UseDinnerTypeStr }}</td>
<td>{{subItem.MealName}}</td> <td>{{ subItem.MealName }}</td>
<td>{{getDinnerTotal(subItem)}} <td>{{ getDinnerTotal(subItem) }}</td>
</td> <td>{{ subItem.Tel }}</td>
<td>{{subItem.Tel}}</td> <td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{subItem.Address}}</td> <td style="text-align:left;">{{ subItem.Remarks }}</td>
<td style="text-align:left;">{{subItem.Remarks}}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="12">{{$t('ground.mpshiyong')}}</th> <th colspan="12">{{ $t("ground.mpshiyong") }}</th>
</tr> </tr>
<tr> <tr>
<th>{{$t('ground.youlanshijian')}}</th> <th>{{ $t("ground.youlanshijian") }}</th>
<th width="400">{{$t('visaT.jdname')}}</th> <th width="400">{{ $t("visaT.jdname") }}</th>
<th>{{$t('ground.zongrenshu')}}</th> <th>{{ $t("ground.zongrenshu") }}</th>
<th>{{$t('restaurant.res_ContactNumber')}}</th> <th>{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="300">{{$t('admin.admin_address')}}</th> <th width="300">{{ $t("admin.admin_address") }}</th>
<th width="200">{{$t('pub.pubRemark')}}</th> <th width="200">{{ $t("pub.pubRemark") }}</th>
</tr> </tr>
<tbody v-for="item in DMCStaticsCommon.ScenicList"> <tbody v-for="item in DMCStaticsCommon.ScenicList">
<tr v-for="subItem in item.ScenicStatisticsList"> <tr v-for="subItem in item.ScenicStatisticsList">
<td>{{subItem.UseTimeStr}}</td> <td>{{ subItem.UseTimeStr }}</td>
<td style="text-align:left;">{{subItem.ScenicName}}</td> <td style="text-align:left;">{{ subItem.ScenicName }}</td>
<td> <td>
{{getScenicTotal(subItem)}} {{ getScenicTotal(subItem) }}
</td> </td>
<td>{{subItem.Tel}}</td> <td>{{ subItem.Tel }}</td>
<td style="text-align:left;">{{subItem.Address}}</td> <td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{subItem.Remarks}}</td> <td style="text-align:left;">{{ subItem.Remarks }}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="6">{{$t('salesModule.LKMD')}}</th> <th colspan="6">{{ $t("salesModule.LKMD") }}</th>
</tr> </tr>
<tr> <tr>
<th>{{$t('system.table_Passport')}}</th> <th>{{ $t("system.table_Passport") }}</th>
<th>{{$t('system.table_sex')}}</th> <th>{{ $t("system.table_sex") }}</th>
<th>{{$t('ground.CustomerName')}}</th> <th>{{ $t("ground.CustomerName") }}</th>
<th>{{$t('ground.csnianyue')}}</th> <th>{{ $t("ground.csnianyue") }}</th>
<th>{{$t('ground.zhiye')}}</th> <th>{{ $t("ground.zhiye") }}</th>
</tr> </tr>
<tr v-for="item in guestList"> <tr v-for="item in guestList">
<td>{{item.PassportNo}}</td> <td>{{ item.PassportNo }}</td>
<td>{{item.SexStr}}</td> <td>{{ item.SexStr }}</td>
<td>{{item.userName}}</td> <td>{{ item.userName }}</td>
<td>{{item.Birthday}}</td> <td>{{ item.Birthday }}</td>
<td>{{item.Duty}}</td> <td>{{ item.Duty }}</td>
</tr> </tr>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="4">{{$t('ground.gwd')}}</th> <th colspan="4">{{ $t("ground.gwd") }}</th>
</tr> </tr>
<tr> <tr>
<th>{{$t('ground.dm')}}</th> <th>{{ $t("ground.dm") }}</th>
<th>{{$t('ground.jdsj')}}</th> <th>{{ $t("ground.jdsj") }}</th>
<th>{{$t('admin.admin_address')}}</th> <th>{{ $t("admin.admin_address") }}</th>
</tr> </tr>
<tr v-for="item in shopList"> <tr v-for="item in shopList">
<td>{{item.ShopName}}</td> <td>{{ item.ShopName }}</td>
<td>{{item.StoreTimeStr}}</td> <td>{{ item.StoreTimeStr }}</td>
<td>{{item.Address}}</td> <td>{{ item.Address }}</td>
</tr> </tr>
</table> </table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0"> <table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="2">{{$t('ground.xcneirong')}}</th> <th colspan="2">{{ $t("ground.xcneirong") }}</th>
</tr> </tr>
<tr v-for="item in JourneyTitle"> <tr v-for="item in JourneyTitle">
<td width="100">{{$t('tips.di')}}{{item.DayNum}}{{$t('hotel.hotel_day')}}</td> <td width="100">
<td style="text-align:left;">{{item.Title}}</td> {{ $t("tips.di") }}{{ item.DayNum }}{{ $t("hotel.hotel_day") }}
</td>
<td style="text-align:left;">{{ item.Title }}</td>
</tr> </tr>
</table> </table>
<table class="groundLastTable"> <table class="groundLastTable">
<tr> <tr>
<td style="vertical-align:top;"> <td style="vertical-align:top;">
{{$t('hotel.hotel_attention')}}: {{ $t("hotel.hotel_attention") }}:
</td> </td>
<td> <td>
<el-input v-model="PostConfig.PlanDescription" type="textarea" class="w700" <el-input
:autosize="{minRows: 3, maxRows: 3 }" resize="none" :placeholder="$t('hotel.hotel_attention')" maxlength="300"></el-input> v-model="PostConfig.PlanDescription"
<input type="button" class="normalBtn gdBtn" @click="UpdateLeaderPay" :value="$t('pub.saveBtn')" /> type="textarea"
<input type="button" class="normalBtn gdBtn" @click="DownLoadLeaderPay" :value="$t('adm.adm_download')" /> class="w700"
:autosize="{ minRows: 3, maxRows: 3 }"
resize="none"
:placeholder="$t('hotel.hotel_attention')"
maxlength="300"
></el-input>
<input
type="button"
class="normalBtn gdBtn"
@click="UpdateLeaderPay"
:value="$t('pub.saveBtn')"
/>
<input
type="button"
class="normalBtn gdBtn"
@click="DownLoadLeaderPay"
:value="$t('adm.adm_download')"
/>
</td> </td>
</tr> </tr>
</table> </table>
<div style="width:100%;height:100%;">
</div> <div style="width:100%;height:100%;"></div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
TCIDs: "",
//基本信息
BaseInfo: [],
//负责人
PrincipalList: [],
//行程内容
JourneyTitle: [],
//旅客
guestList: [],
//房餐车景点
DMCStaticsCommon: {},
//购物店
shopList: [],
loading: false,
PostConfig: {
ID: 0,
TCIDs: "", TCIDs: "",
//基本信息 PlanDescription: ""
BaseInfo: [], },
//负责人 loading2: false
PrincipalList: [], };
//行程内容 },
JourneyTitle: [], methods: {
//旅客 //酒店统计(用房数)
guestList: [], getHotelTotal(item) {
//房餐车景点 var totalCount = 0;
DMCStaticsCommon: {}, item.OrderDetailsList.forEach(subItem => {
//购物店 totalCount += subItem.HouseTypeCount;
shopList: [], });
loading: false, return totalCount;
PostConfig: { },
ID: 0, getHotelTotalNum(item) {
TCIDs: "", var totalCount = 0;
PlanDescription: "" var noBed = 0;
}, item.OrderDetailsList.forEach((subItem, subIndex) => {
loading2: false, if (subItem.HouseType <= 4) {
totalCount += subItem.BookNum;
} else if (subItem.HouseType == 6) {
noBed += subItem.BookNum;
}
});
return totalCount + "/" + noBed;
},
//景点统计
getScenicTotal(item) {
var totalCount = 0;
item.TicketPriceList.forEach(subItem => {
totalCount += subItem.UsePeopleNum - subItem.Discount;
});
return totalCount;
},
//餐厅人数统计
getDinnerTotal(item) {
var totalCount = 0;
item.DiningPriceList.forEach(subItem => {
totalCount += subItem.UsePeopleNum - subItem.Discount;
});
return totalCount;
},
//根据团号获取负责人的信息
getConfirmName() {
let msg = {
TCIDs: this.TCIDs,
NewCombinationNum: ""
}; };
//更新酒店图片
this.loading2 = true;
this.apipost(
"dmcstatistics_post_GetExtendLeaderAllStatics",
msg,
res => {
this.loading2 = false;
if (res.data.resultCode == 1) {
this.BaseInfo = res.data.data.BaseInfo;
this.PrincipalList = res.data.data.PrincipalList;
this.JourneyTitle = res.data.data.JourneyTitle;
this.guestList = res.data.data.guestList;
this.DMCStaticsCommon = res.data.data.DMCStaticsCommon;
this.shopList = res.data.data.shopList;
this.PostConfig = res.data.data.DMCStaticsCommon.LeaderApply;
} else {
this.Error(res.data.message);
}
},
null
);
}, },
methods: { //获取人员类型
//酒店统计(用房数) peopleStrToWord(str) {
getHotelTotal(item) { if (str == "1") return "成人";
var totalCount = 0; if (str == "2") return "儿童";
item.OrderDetailsList.forEach(subItem => { if (str == "3") return "婴儿";
totalCount+= subItem.HouseTypeCount; },
}); //总金额
return totalCount; diningTotalPrice(obj) {
}, let totalPrice = 0;
getHotelTotalNum(item) { obj.forEach(x => {
var totalCount = 0; totalPrice +=
var noBed=0; x.PeoplePrice *
item.OrderDetailsList.forEach((subItem,subIndex) => { (x.PeopleNum - x.Discount) *
if(subItem.HouseType<=4) (1 - x.DiscountPrice / 100);
{ });
totalCount+= subItem.BookNum; return totalPrice;
} },
else if(subItem.HouseType==6) //景点
{ scenicTotalPrice(obj) {
noBed+= subItem.BookNum; let totalPrice = 0;
} obj.forEach(x => {
}); totalPrice +=
return totalCount+"/"+noBed; x.PeoplePrice *
}, (x.UsePeopleNum - x.Discount) *
//景点统计 (1 - x.DiscountPrice / 100);
getScenicTotal(item) { });
var totalCount = 0; return totalPrice;
item.TicketPriceList.forEach(subItem => { },
totalCount += subItem.UsePeopleNum - subItem.Discount; UpdateLeaderPay() {
}); this.PostConfig.TCIDs = this.TCIDs;
return totalCount; this.apipost(
}, "dmcstatistics_post_AuditLeaderapply",
//餐厅人数统计 {
getDinnerTotal(item) {
var totalCount = 0;
item.DiningPriceList.forEach(subItem => {
totalCount += subItem.UsePeopleNum - subItem.Discount;
});
return totalCount;
},
//根据团号获取负责人的信息
getConfirmName() {
let msg = {
TCIDs: this.TCIDs,
NewCombinationNum: '',
};
//更新酒店图片
this.loading2 = true;
this.apipost("dmcstatistics_post_GetExtendLeaderAllStatics", msg, res => {
this.loading2 = false;
if (res.data.resultCode == 1) {
this.BaseInfo = res.data.data.BaseInfo;
this.PrincipalList = res.data.data.PrincipalList;
this.JourneyTitle = res.data.data.JourneyTitle;
this.guestList = res.data.data.guestList;
this.DMCStaticsCommon = res.data.data.DMCStaticsCommon;
this.shopList = res.data.data.shopList;
this.PostConfig = res.data.data.DMCStaticsCommon.LeaderApply;
} else {
this.Error(res.data.message);
}
},
null
);
},
//获取人员类型
peopleStrToWord(str) {
if (str == '1')
return '成人'
if (str == '2')
return '儿童'
if (str == '3')
return '婴儿'
},
//总金额
diningTotalPrice(obj) {
let totalPrice = 0
obj.forEach(x => {
totalPrice += x.PeoplePrice * (x.PeopleNum - x.Discount) * (1 - x.DiscountPrice / 100)
})
return totalPrice
},
//景点
scenicTotalPrice(obj) {
let totalPrice = 0
obj.forEach(x => {
totalPrice += x.PeoplePrice * (x.UsePeopleNum - x.Discount) * (1 - x.DiscountPrice / 100)
})
return totalPrice
},
UpdateLeaderPay() {
this.PostConfig.TCIDs = this.TCIDs;
this.apipost('dmcstatistics_post_AuditLeaderapply', {
LeaderApply: this.PostConfig, LeaderApply: this.PostConfig,
LeaderGuidePlan: this.PrincipalList[0] LeaderGuidePlan: this.PrincipalList[0]
}, res => { },
res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Success(res.data.message); this.Success(res.data.message);
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, err => {}) },
}, err => {}
DownLoadLeaderPay() { );
let msg = {
TCIDs: this.TCIDs,
NewCombinationNum: '',
uid: this.getLocalStorage().EmployeeId
};
let fileName = "导游计划表" + this.$commonUtils.getCurrentDate() + ".xls";
this.loading = true;
this.GetLocalFile("dmcstatistics_get_DwonLoadLeaderapply", msg, fileName,
res => {
this.loading = false;
});
}
}, },
mounted() { DownLoadLeaderPay() {
this.TCIDs = this.$route.query.id; let msg = {
this.PostConfig.TCIDs = this.TCIDs; TCIDs: this.TCIDs,
this.getConfirmName(); NewCombinationNum: "",
uid: this.getLocalStorage().EmployeeId
};
let fileName = "导游计划表" + this.$commonUtils.getCurrentDate() + ".xls";
this.loading = true;
this.GetLocalFile(
"dmcstatistics_get_DwonLoadLeaderapply",
msg,
fileName,
res => {
this.loading = false;
}
);
} }
}; },
mounted() {
this.TCIDs = this.$route.query.id;
this.PostConfig.TCIDs = this.TCIDs;
this.getConfirmName();
}
};
</script> </script>
<style>
.GOd_Table {
width: 100%;
font-size: 12px;
color: #333;
margin: 20px 0 auto;
border-collapse: collapse;
background-color: #fff;
border: 1px solid #d1d1d1;
}
.GOd_Table td {
border: 1px solid #d1d1d1;
text-align: center;
height: 40px;
padding: 5px;
}
.GOd_Table th {
background-color: #e6e6e6;
border: 1px solid #d1d1d1;
height: 40px;
}
.GD_comDiv {
width: 100%;
height: 25px;
line-height: 25px;
text-align: center;
border-bottom: 1px solid #d1d1d1;
}
.GOd_Table td .GD_comDiv:last-child {
border: none;
}
.GD_comPad {
padding: 0 !important;
}
.groundLastTable {
margin: 20px 0;
font-size: 12px;
}
.gdBtn {
position: relative;
top: -45px;
}
</style>
<template>
<div v-loading="loading2">
<div v-loading="loading">
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="9">{{ $t("ground.dyldyxjhb") }}</th>
</tr>
<tr>
<th width="150">{{ $t("sm.chufadi") }}</th>
<th>{{ $t("ground.hbsj") }}</th>
<th>{{ $t("sm.jiheshijian") }}</th>
<th width="500">{{ $t("ground.ctmchen") }}</th>
<th>{{ $t("ground.tianshu") }}</th>
<th>{{ $t("Operation.Op_jinchudian") }}</th>
<th>{{ $t("ground.ctrenshu") }}</th>
<th>{{ $t("leader.leader_Leader") }}</th>
<th>{{ $t("leader.leader_Guide") }}</th>
</tr>
<tr v-for="(item,index) in BaseInfo" :key="index">
<td>{{ item.StartCityNames }}</td>
<td>
<span v-if="item.FlightList.length > 0">{{
item.FlightList[0].Departure_time
}}</span>
</td>
<td>{{ item.GatherTime }}</td>
<td style="text-align:left;">{{ item.Titles }}</td>
<td>{{ item.DayNum }}</td>
<td>{{ item.InOut }}</td>
<td>{{ item.TotalSeat }}+1</td>
<td>{{ item.LeaderName }}</td>
<td>{{ item.GuideName }}</td>
</tr>
<tr>
<td>{{ $t("ground.tsyaoqiu") }}</td>
<td colspan="8"></td>
</tr>
<tr>
<td rowspan="5">
{{ $t("ground.bmfzr") }}
</td>
<td>{{ $t("ground.jpfzren") }}</td>
<td>
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].CreateByName"
class="w200"
></el-input>
</template>
</td>
<td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5">
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].CreateByMobile"
class="w200"
></el-input>
</template>
</td>
</tr>
<tr>
<td>{{ $t("ground.dffzren") }}</td>
<td>
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].HConfirmName"
class="w200"
></el-input>
</template>
</td>
<td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5">
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].HConfirmMobile"
class="w200"
></el-input>
</template>
</td>
</tr>
<tr>
<td>{{ $t("ground.zlfzren") }}</td>
<td>
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].BConfirmName"
class="w200"
></el-input>
</template>
</td>
<td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5">
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].BConfirmMobile"
class="w200"
></el-input>
</template>
</td>
</tr>
<tr>
<td>{{ $t("ground.dcfzeren") }}</td>
<td>
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].DConfirmName"
class="w200"
></el-input>
</template>
</td>
<td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5">
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].DConfirmMobile"
class="w200"
></el-input>
</template>
</td>
</tr>
<tr>
<td>{{ $t("ground.mpfzeren") }}</td>
<td>
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].TConfirmName"
class="w200"
></el-input>
</template>
</td>
<td>{{ $t("restaurant.res_ContactNumber") }}</td>
<td colspan="5">
<template v-if="PrincipalList.length > 0">
<el-input
v-model="PrincipalList[0].TConfirmMobile"
class="w200"
></el-input>
</template>
</td>
</tr>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="9">{{ $t("ground.clshiyong") }}</th>
</tr>
<tr>
<th>{{ $t("ground.usebusTime") }}</th>
<th>{{ $t("ground.clgs") }}</th>
<th>{{ $t("ground.chepaihao") }}</th>
<th>{{ $t("ground.sijiName") }}</th>
<th>{{ $t("ground.sijiPhone") }}</th>
<th>{{ $t("pub.pubRemark") }}</th>
</tr>
<tr v-for="item in DMCStaticsCommon.BusList">
<td>{{ item.PlanDateStr }}</td>
<td>{{ item.SupplierName }}</td>
<td>{{ item.BusNum }}</td>
<td>{{ item.DriverName }}</td>
<td>{{ item.DriverTel }}</td>
<td width="300">{{ item.Remarks }}</td>
</tr>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="17">{{ $t("ground.jdshiyong") }}</th>
</tr>
<tr>
<th width="80">{{ $t("ground.dfanghao") }}</th>
<th width="180">{{ $t("hotel.hotel_name") }}</th>
<th width="100">{{ $t("hotel.table_CheckInDate") }}</th>
<th width="80">{{ $t("op.TakeBed") }}/{{ $t("op.NoneedBed") }}</th>
<th width="80">{{ $t("ground.shijiyfs") }}</th>
<th width="80">{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="200">{{ $t("admin.admin_address") }}</th>
<th width="200">{{ $t("pub.pubRemark") }}</th>
</tr>
<tbody v-for="item in DMCStaticsCommon.HotelOrderListReport">
<tr v-for="subItem in item.HotelOrderList">
<td>{{ subItem.ReserveNo }}</td>
<td style="text-align:left;">{{ subItem.HotelName }}</td>
<td>{{ subItem.CheckInDateStr }}</td>
<td>{{ getHotelTotalNum(subItem) }}</td>
<td>{{ getHotelTotal(subItem) }}</td>
<td>{{ subItem.Tel }}</td>
<td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{ subItem.Remarks }}</td>
</tr>
</tbody>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="15">{{ $t("ground.canshishiyong") }}</th>
</tr>
<tr>
<th width="80">{{ $t("ground.dchao") }}</th>
<th width="80">{{ $t("restaurant.res_etTime") }}</th>
<th width="80">{{ $t("restaurant.res_resName") }}</th>
<th width="50">{{ $t("ground.leibie") }}</th>
<th width="80">{{ $t("ground.cayinlexing") }}</th>
<th width="80">{{ $t("ground.zongrenshu") }}</th>
<th width="80">{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="200">{{ $t("admin.admin_address") }}</th>
<th width="300">{{ $t("pub.pubRemark") }}</th>
</tr>
<tbody v-for="item in DMCStaticsCommon.DiningList">
<tr v-for="subItem in item.DiningSummaryList">
<td>{{ subItem.ReserveNo }}</td>
<td>{{ subItem.UseTimeStr }}</td>
<td style="text-align:left;">{{ subItem.DiningName }}</td>
<td>{{ subItem.UseDinnerTypeStr }}</td>
<td>{{ subItem.MealName }}</td>
<td>{{ getDinnerTotal(subItem) }}</td>
<td>{{ subItem.Tel }}</td>
<td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{ subItem.Remarks }}</td>
</tr>
</tbody>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="12">{{ $t("ground.mpshiyong") }}</th>
</tr>
<tr>
<th>{{ $t("ground.youlanshijian") }}</th>
<th width="400">{{ $t("visaT.jdname") }}</th>
<th>{{ $t("ground.zongrenshu") }}</th>
<th>{{ $t("restaurant.res_ContactNumber") }}</th>
<th width="300">{{ $t("admin.admin_address") }}</th>
<th width="200">{{ $t("pub.pubRemark") }}</th>
</tr>
<tbody v-for="item in DMCStaticsCommon.ScenicList">
<tr v-for="subItem in item.ScenicStatisticsList">
<td>{{ subItem.UseTimeStr }}</td>
<td style="text-align:left;">{{ subItem.ScenicName }}</td>
<td>
{{ getScenicTotal(subItem) }}
</td>
<td>{{ subItem.Tel }}</td>
<td style="text-align:left;">{{ subItem.Address }}</td>
<td style="text-align:left;">{{ subItem.Remarks }}</td>
</tr>
</tbody>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="6">{{ $t("salesModule.LKMD") }}</th>
</tr>
<tr>
<th>{{ $t("system.table_Passport") }}</th>
<th>{{ $t("system.table_sex") }}</th>
<th>{{ $t("ground.CustomerName") }}</th>
<th>{{ $t("ground.csnianyue") }}</th>
<th>{{ $t("ground.zhiye") }}</th>
</tr>
<tr v-for="item in guestList">
<td>{{ item.PassportNo }}</td>
<td>{{ item.SexStr }}</td>
<td>{{ item.userName }}</td>
<td>{{ item.Birthday }}</td>
<td>{{ item.Duty }}</td>
</tr>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="4">{{ $t("ground.gwd") }}</th>
</tr>
<tr>
<th>{{ $t("ground.dm") }}</th>
<th>{{ $t("ground.jdsj") }}</th>
<th>{{ $t("admin.admin_address") }}</th>
</tr>
<tr v-for="item in shopList">
<td>{{ item.ShopName }}</td>
<td>{{ item.StoreTimeStr }}</td>
<td>{{ item.Address }}</td>
</tr>
</table>
<table class="GOd_Table" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="2">{{ $t("ground.xcneirong") }}</th>
</tr>
<tr v-for="item in JourneyTitle">
<td width="100">
{{ $t("tips.di") }}{{ item.DayNum }}{{ $t("hotel.hotel_day") }}
</td>
<td style="text-align:left;">{{ item.Title }}</td>
</tr>
</table>
<table class="groundLastTable">
<tr>
<td style="vertical-align:top;">
{{ $t("hotel.hotel_attention") }}:
</td>
<td>
<el-input
v-model="PostConfig.PlanDescription"
type="textarea"
class="w700"
:autosize="{ minRows: 3, maxRows: 3 }"
resize="none"
:placeholder="$t('hotel.hotel_attention')"
maxlength="300"
></el-input>
<input
type="button"
class="normalBtn gdBtn"
@click="UpdateLeaderPay"
:value="$t('pub.saveBtn')"
/>
<input
type="button"
class="normalBtn gdBtn"
@click="DownLoadLeaderPay"
:value="$t('adm.adm_download')"
/>
</td>
</tr>
</table>
<div style="width:100%;height:100%;"></div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
TCIDs: "",
//基本信息
BaseInfo: [],
//负责人
PrincipalList: [],
//行程内容
JourneyTitle: [],
//旅客
guestList: [],
//房餐车景点
DMCStaticsCommon: {},
//购物店
shopList: [],
loading: false,
PostConfig: {
ID: 0,
TCIDs: "",
PlanDescription: ""
},
loading2: false
};
},
methods: {
//酒店统计(用房数)
getHotelTotal(item) {
var totalCount = 0;
item.OrderDetailsList.forEach(subItem => {
totalCount += subItem.HouseTypeCount;
});
return totalCount;
},
getHotelTotalNum(item) {
var totalCount = 0;
var noBed = 0;
item.OrderDetailsList.forEach((subItem, subIndex) => {
if (subItem.HouseType <= 4) {
totalCount += subItem.BookNum;
} else if (subItem.HouseType == 6) {
noBed += subItem.BookNum;
}
});
return totalCount + "/" + noBed;
},
//景点统计
getScenicTotal(item) {
var totalCount = 0;
item.TicketPriceList.forEach(subItem => {
totalCount += subItem.UsePeopleNum - subItem.Discount;
});
return totalCount;
},
//餐厅人数统计
getDinnerTotal(item) {
var totalCount = 0;
item.DiningPriceList.forEach(subItem => {
totalCount += subItem.UsePeopleNum - subItem.Discount;
});
return totalCount;
},
//根据团号获取负责人的信息
getConfirmName() {
let msg = {
TCIDs: this.TCIDs,
NewCombinationNum: ""
};
//更新酒店图片
this.loading2 = true;
this.apipost(
"dmcstatistics_post_GetExtendLeaderAllStatics_V2",
msg,
res => {
this.loading2 = false;
console.log("res.data",res.data.data);
if (res.data.resultCode == 1) {
// this.BaseInfo = res.data.data.BaseInfo;
// this.PrincipalList = res.data.data.PrincipalList;
// this.JourneyTitle = res.data.data.JourneyTitle;
// this.guestList = res.data.data.guestList;
// this.DMCStaticsCommon = res.data.data.DMCStaticsCommon;
// this.shopList = res.data.data.shopList;
// this.PostConfig = res.data.data.DMCStaticsCommon.LeaderApply;
} else {
this.Error(res.data.message);
}
},
null
);
},
//获取人员类型
peopleStrToWord(str) {
if (str == "1") return "成人";
if (str == "2") return "儿童";
if (str == "3") return "婴儿";
},
//总金额
diningTotalPrice(obj) {
let totalPrice = 0;
obj.forEach(x => {
totalPrice +=
x.PeoplePrice *
(x.PeopleNum - x.Discount) *
(1 - x.DiscountPrice / 100);
});
return totalPrice;
},
//景点
scenicTotalPrice(obj) {
let totalPrice = 0;
obj.forEach(x => {
totalPrice +=
x.PeoplePrice *
(x.UsePeopleNum - x.Discount) *
(1 - x.DiscountPrice / 100);
});
return totalPrice;
},
UpdateLeaderPay() {
this.PostConfig.TCIDs = this.TCIDs;
this.apipost(
"dmcstatistics_post_AuditLeaderapply",
{
LeaderApply: this.PostConfig,
LeaderGuidePlan: this.PrincipalList[0]
},
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
DownLoadLeaderPay() {
let msg = {
TCIDs: this.TCIDs,
NewCombinationNum: "",
uid: this.getLocalStorage().EmployeeId
};
let fileName = "导游计划表" + this.$commonUtils.getCurrentDate() + ".xls";
this.loading = true;
this.GetLocalFile(
"dmcstatistics_get_DwonLoadLeaderapply",
msg,
fileName,
res => {
this.loading = false;
}
);
}
},
mounted() {
this.TCIDs = this.$route.query.id;
this.PostConfig.TCIDs = this.TCIDs;
this.getConfirmName();
}
};
</script>
...@@ -70,9 +70,8 @@ ...@@ -70,9 +70,8 @@
<span class="MenuConfirm" v-if="item.fatherCount>0">{{item.fatherCount}}</span> <span class="MenuConfirm" v-if="item.fatherCount>0">{{item.fatherCount}}</span>
</span> </span>
<div class="hoverNote"></div> <div class="hoverNote"></div>
<!--<div :class="{menuList_son:item.ChildMenu.length>=1}" :style="{width:item.ChildMenu.length>=1 ? ((item.ChildMenu.length*160) + 'px') : '0',left: item.ChildMenu.length>1 ? '-50%' : '0'}" @click.stop>--> <div @mousemove.stop @mouseout.stop v-if="item.ChildMenu && item.ChildMenu.length>0" :class="{menuList_son:item.ChildMenu.length>=1}" :style="{width:item.ChildMenu.length>=1 ? '1300px' : '0',left:'50px'}" style='border: 1px solid #eee;border-top:none;' @click.stop>
<div v-if="item.ChildMenu && item.ChildMenu.length>0" :class="{menuList_son:item.ChildMenu.length>=1}" :style="{width:item.ChildMenu.length>=1 ? '1300px' : '0',left:'50px'}" style='border: 1px solid #eee;border-top:none;' @click.stop> <div class="menuList_son_item">
<div class="menuList_son_item" @mousemove.stop @mouseout.stop>
<div v-for="(son, sIndex) in item.ChildMenu" style="width: 150px;border-right: 1px solid rgb(246, 246, 249);"> <div v-for="(son, sIndex) in item.ChildMenu" style="width: 150px;border-right: 1px solid rgb(246, 246, 249);">
<p class="menuList_son_one_tittle"> <p class="menuList_son_one_tittle">
{{son.MenuName}} {{son.MenuName}}
...@@ -4364,12 +4363,10 @@ export default { ...@@ -4364,12 +4363,10 @@ export default {
margin: 32px 0 14px; margin: 32px 0 14px;
} }
.nav-middle ul li:hover .menuList_son{ .nav-middle ul li:hover .menuList_son{
// display: block; display: block;
width: 1000px; width: 1000px;
z-index: 999999; z-index: 999999;
opacity: 1;
// padding: 20px 0 20px 20px; // padding: 20px 0 20px 20px;
height: auto;
// transition: all .5s linear .5s; // transition: all .5s linear .5s;
animation:ttt .5s forwards; animation:ttt .5s forwards;
} }
...@@ -4386,14 +4383,10 @@ export default { ...@@ -4386,14 +4383,10 @@ export default {
} }
.nav-middle ul li .menuList_son{ .nav-middle ul li .menuList_son{
position: fixed; position: fixed;
z-index: 9000;
background-color: #FFF; background-color: #FFF;
top: 50px; top: 50px;
// display: none; display: none;
opacity: 0;
padding: 0;
overflow: hidden; overflow: hidden;
height: 0;
box-shadow: 0px 0px 50px 0px rgba(82, 63, 105, 0.15); box-shadow: 0px 0px 50px 0px rgba(82, 63, 105, 0.15);
} }
.menuList_tittle_box{ .menuList_tittle_box{
......
...@@ -3735,6 +3735,11 @@ export default { ...@@ -3735,6 +3735,11 @@ export default {
name: 'groundOperation', name: 'groundOperation',
component: resolve => require(['@/components/dmc/manager/groundOperation'], resolve), component: resolve => require(['@/components/dmc/manager/groundOperation'], resolve),
}, },
{
path: '/groundOperation2',
name: 'groundOperation2',
component: resolve => require(['@/components/dmc/manager/groundOperation2'], resolve),
},
{ {
path: '/newFeature', path: '/newFeature',
name: 'newFeature', name: 'newFeature',
......
...@@ -209,7 +209,7 @@ export function addTeamMembers({ state }, teamId, accounts) { ...@@ -209,7 +209,7 @@ export function addTeamMembers({ state }, teamId, accounts) {
teamId: teamId, teamId: teamId,
accounts:accounts, accounts:accounts,
done: (err, obj) => { done: (err, obj) => {
console.log(obj)
} }
}) })
} }
...@@ -227,7 +227,7 @@ export function removeTeamMembers({ state }, teamId, accounts) { ...@@ -227,7 +227,7 @@ export function removeTeamMembers({ state }, teamId, accounts) {
teamId: teamId, teamId: teamId,
accounts:accounts, accounts:accounts,
done: (err, obj) => { done: (err, obj) => {
console.log(obj)
} }
}) })
} }
......
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