Commit 6b148482 authored by 黄奎's avatar 黄奎

页面修改

parent 1f814fa1
<template> <template>
<div class="flexOne" style="min-width: 1200px;"> <div class="flexOne" style="min-width: 1200px;">
...@@ -24,54 +23,49 @@ ...@@ -24,54 +23,49 @@
<td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td> <td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td>
</tr> </tr>
<tbody v-for="(item,index) in dataList" :key="index"> <tbody v-for="(item,index) in dataList" :key="index">
<tr> <tr>
<td>{{item.PlanDateStr}}</td> <td>{{item.PlanDateStr}}</td>
<td> <td>
<p class="fz12">姓名:{{item.DriverName}}</p> <p class="fz12">姓名:{{item.DriverName}}</p>
<p class="fz12">电话号码:{{item.DriverTel}}</p> <p class="fz12">电话号码:{{item.DriverTel}}</p>
</td> </td>
<!-- <td><span @click="goUrl('散客机票','individualTicket',item.AirTicketId)" class="guest_num">{{item.AirTicketId}}</span></td> --> <td>{{item.TotalPrice}}</td>
<td>{{item.TotalPrice}}</td> <td class="fz12">{{item.BusCode}}</td>
<td class="fz12">{{item.BusCode}}</td> <td>{{item.BusNum}}</td>
<td>{{item.BusNum}}</td> <td class="fz12">{{item.AirportPickUpStr}}</td>
<td class="fz12">{{item.AirportPickUpStr}}</td> <td class="fz12">
<td class="fz12"> <p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+500">
<p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+500">
{{s.StartPlace}} {{s.StartPlace}}
</p> </p>
</td> </td>
<td class="fz12"> <td class="fz12">
<p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+700"> <p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+700">
{{s.EndPlace}} {{s.EndPlace}}
</p> </p>
</td> </td>
<td class="fz12"> <td class="fz12">
<p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+800"> <p v-for="(s,index) in item.ReimburseList.ReimburseDetailsList" :key="index+800">
{{s.UnitPrice}} {{s.UnitPrice}}
</p> </p>
</td> </td>
<td>{{urrencyTypeObj[item.ReimburseList.CurrencyId]}}</td> <td>{{urrencyTypeObj[item.ReimburseList.CurrencyId]}}</td>
<td> <td>
<p v-if="item.ReimburseList.SettlementType==1">现金支付</p> <p v-if="item.ReimburseList.SettlementType==1">现金支付</p>
<p v-if="item.ReimburseList.SettlementType==2">公司结算</p> <p v-if="item.ReimburseList.SettlementType==2">公司结算</p>
</td> </td>
<td > <td>
<div v-if="item.ReimburseList.VoucherPicList.length"> <div v-if="item.ReimburseList.VoucherPicList.length">
<div v-for="(vou, vouIndex) in item.ReimburseList.VoucherPicList" :key="vouIndex"> <div v-for="(vou, vouIndex) in item.ReimburseList.VoucherPicList" :key="vouIndex">
<el-image <el-image style="width: 20px;height: 20px;" :src="vou.url" :preview-src-list="item.listUrl">
style="width: 20px;height: 20px;" </el-image>
:src="vou.url" </div>
:preview-src-list="subItem.listUrl">
</el-image>
<!-- <img @click="openImg(vou.url)" style="width: 20px;height: 20px;" :src="vou.url" alt=""> -->
</div> </div>
</div> <div v-else>
<div v-else>
</div>
</div> </td>
</td> <td>{{item.ReimburseList.Remarks}}</td>
<td>{{item.ReimburseList.Remarks}}</td> </tr>
</tr>
</tbody> </tbody>
</table> </table>
...@@ -82,154 +76,156 @@ ...@@ -82,154 +76,156 @@
</template> </template>
<script> <script>
import payURL from "../commonPage/payURL.vue"; import payURL from "../commonPage/payURL.vue";
import moment from "moment"; import moment from "moment";
export default { export default {
data() { data() {
return { return {
msg: { msg: {
TCIDs:'' TCIDs: ''
}, },
dataList: [], dataList: [],
loading: false, loading: false,
total: 0, total: 0,
currentPage: 1, currentPage: 1,
showID: -1, showID: -1,
companyList:[], companyList: [],
employeeList:[], employeeList: [],
urrencyTypeObj:{}, urrencyTypeObj: {},
}; };
},
components: {},
created() {
let userInfo = this.getLocalStorage();
this.msg.TCIDs=this.$route.query.TCIDs?this.$route.query.TCIDs:"";
this.msg.date=this.$route.query.date?this.$route.query.date:"";
this.financeinfo_post_GetList();
},
methods: {
financeinfo_post_GetList(){ // 币种类型
this.apipost('financeinfo_post_GetList',{Name:''},res=>{
if(res.data.resultCode==1){
let data = res.data.data;
data.map(item => {
this.urrencyTypeObj[0]="不限";
this.urrencyTypeObj[item.ID]=item.Name;
});
}else{
}
},err=>{})
},
goUrl: function(name, path, id) {
this.$router.push({
name: path,
query: { id: id, blank: "y", tab: name }
});
}, },
openImg(src){ components: {},
window.open(src, "_blank"); created() {
let userInfo = this.getLocalStorage();
this.msg.TCIDs = this.$route.query.TCIDs ? this.$route.query.TCIDs : "";
this.msg.date = this.$route.query.date ? this.$route.query.date : "";
this.financeinfo_post_GetList();
}, },
handleCurrentChange(val) { methods: {
this.msg.pageIndex = val; financeinfo_post_GetList() { // 币种类型
this.getList(); this.apipost('financeinfo_post_GetList', {
}, Name: ''
resetPageIndex() { }, res => {
this.msg.pageIndex = 1; if (res.data.resultCode == 1) {
this.currentPage = 1; let data = res.data.data;
}, data.map(item => {
getList() { this.urrencyTypeObj[0] = "不限";
this.urrencyTypeObj[item.ID] = item.Name;
});
} else {
this.loading = true; }
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => { }, err => {})
this.loading=false; },
if(res.data.resultCode == 1) { goUrl: function (name, path, id) {
this.$router.push({
name: path,
query: {
id: id,
blank: "y",
tab: name
}
});
},
openImg(src) {
window.open(src, "_blank");
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
getList() {
this.loading = true;
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = []; this.dataList = [];
let data=res.data.data.BusList; let data = res.data.data.BusList;
if(this.msg.date!='all'){ if (this.msg.date != 'all') {
data.forEach(item => { data.forEach(item => {
if(item.UseTime==this.msg.date){ if (item.UseTime == this.msg.date) {
this.dataList.push(item); this.dataList.push(item);
} }
}); });
}else{ } else {
this.dataList=data; this.dataList = data;
} }
this.dataList.forEach(x => { this.dataList.forEach(x => {
x.ScenicStatisticsList.forEach(y=>{ x.listUrl = [];
y.listUrl = [] if (x.ReimburseList && x.ReimburseList.VoucherPicList && x.ReimburseList.VoucherPicList.length >
y.ReimburseList.VoucherPicList&&y.ReimburseList.VoucherPicList.forEach(z=>{ 0) {
y.listUrl.push(z.url) x.ReimburseList.VoucherPicList.forEach(z => {
x.listUrl.push(z.url)
}) })
}) }
}); });
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, err => {}) }, err => {})
},
}, },
mounted() {
this.getList();
}
};
},
mounted() {
this.getList();
}
};
</script> </script>
<style scoped> <style scoped>
.groupTourOrderSearchTable {
width: 100%;
min-width: 1500px;
font-size: 14px;
color: #333;
border-bottom: 1px solid #cccccc;
border-right: 1px solid #cccccc;
/* border-collapse: collapse; */
}
.groupTourOrderSearchTable { .groupTourOrderSearchTable tr th {
width: 100%; background: #e6e6e6;
min-width: 1500px; height: 30px;
font-size: 14px; font-size: 12px;
color: #333; text-align: left;
border-bottom: 1px solid #cccccc; text-indent: 15px;
border-right: 1px solid #cccccc; border-top: 1px solid #cccccc;
/* border-collapse: collapse; */ border-left: 1px solid #cccccc;
} }
.groupTourOrderSearchTable tr th {
background: #e6e6e6;
height: 30px;
font-size: 12px;
text-align: left;
text-indent: 15px;
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable tr {
background: #fff;
text-align: left;
}
.groupTourOrderSearchTable tr td { .groupTourOrderSearchTable tr {
padding: 8px; background: #fff;
border-top: 1px solid #cccccc; text-align: left;
border-left: 1px solid #cccccc; }
}
.groupTourOrderSearchTable tr td p { .groupTourOrderSearchTable tr td {
line-height: 20px; padding: 8px;
} border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable .dowloadSpan:hover { .groupTourOrderSearchTable tr td p {
text-decoration: underline; line-height: 20px;
cursor: pointer; }
}
.groupTourOrderSearchTable span.personNo { .groupTourOrderSearchTable .dowloadSpan:hover {
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover { .groupTourOrderSearchTable span.personNo {
font-weight: bold; text-decoration: underline;
color: #e95252; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover {
font-weight: bold;
color: #e95252;
}
</style> </style>
<template> <template>
<div class="flexOne" style="min-width: 1200px;"> <div class="flexOne" style="min-width: 1200px;">
...@@ -23,252 +22,250 @@ ...@@ -23,252 +22,250 @@
<td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td> <td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td>
</tr> </tr>
<template v-for='(item,index) in dataList'> <template v-for='(item,index) in dataList'>
<template v-for="(subItem,subIndex) in item.DiningSummaryList"> <template v-for="(subItem,subIndex) in item.DiningSummaryList">
<tr v-for="(childItem,childIndex) in subItem.DiningPriceList"> <tr v-for="(childItem,childIndex) in subItem.DiningPriceList">
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">{{item.UseTimeStr}}</td> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">{{item.UseTimeStr}}</td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{subItem.DiningName}} {{subItem.DiningName}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{childItem.TotalPrice}} {{childItem.TotalPrice}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{subItem.UseDinnerTypeStr}} {{subItem.UseDinnerTypeStr}}
</td> </td>
<td> <td>
{{peopleStrToWord(childItem.PeopleType)}}:{{childItem.PeopleNum}} {{peopleStrToWord(childItem.PeopleType)}}:{{childItem.PeopleNum}}
</td> </td>
<td> <td>
<p> <p>
{{subItem.PayStyle === 1 ? moneyFormat(childItem.PeoplePrice) : 0}} {{subItem.PayStyle === 1 ? moneyFormat(childItem.PeoplePrice) : 0}}
</p> </p>
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{diningTotalPrice(subItem, subItem.DiningPriceList)}} {{diningTotalPrice(subItem, subItem.DiningPriceList)}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{diningTotalPrice2(subItem, subItem.ReimburseList.ReimburseDetailsList)}} {{diningTotalPrice2(subItem, subItem.ReimburseList.ReimburseDetailsList)}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
<span v-if="subItem.PayStyle === 1">现付</span> <span v-if="subItem.PayStyle === 1">现付</span>
<span v-else-if="subItem.PayStyle === 2">公司结算</span> <span v-else-if="subItem.PayStyle === 2">公司结算</span>
<span v-else-if="subItem.PayStyle === 3">预付</span> <span v-else-if="subItem.PayStyle === 3">预付</span>
<span v-else-if="subItem.PayStyle === 6">公司合团支付</span> <span v-else-if="subItem.PayStyle === 6">公司合团支付</span>
<span v-else></span> <span v-else></span>
</br> </br>
<span v-show="subItem.PayStyle==6">付款团号:{{subItem.PayTypeTCNUM}}</span> <span v-show="subItem.PayStyle==6">付款团号:{{subItem.PayTypeTCNUM}}</span>
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> <td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
{{urrencyTypeObj[subItem.ReimburseList.CurrencyId]}} {{urrencyTypeObj[subItem.ReimburseList.CurrencyId]}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.ReimburseList.ReimburseDetailsList.length"> <td v-if="childIndex==0" :rowspan="subItem.ReimburseList.ReimburseDetailsList.length">
<div v-if="subItem.ReimburseList.VoucherPicList.length"> <div v-if="subItem.ReimburseList.VoucherPicList.length">
<div v-for="(vou, vouIndex) in subItem.ReimburseList.VoucherPicList" :key="vouIndex"> <div v-for="(vou, vouIndex) in subItem.ReimburseList.VoucherPicList" :key="vouIndex">
<el-image <el-image style="width: 20px;height: 20px;" :src="vou.url" :preview-src-list="subItem.listUrl">
style="width: 20px;height: 20px;" </el-image>
:src="vou.url" <!-- <img @click="openImg(vou.url)" style="width: 20px;height: 20px;" :src="vou.url" alt=""> -->
:preview-src-list="subItem.listUrl"> </div>
</el-image> </div>
<!-- <img @click="openImg(vou.url)" style="width: 20px;height: 20px;" :src="vou.url" alt=""> --> <div v-else>
</div>
</div> </div>
<div v-else> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length">
</div> {{subItem.ReimburseList.Remarks}}
</td> </td>
<td v-if="childIndex==0" :rowspan="subItem.DiningPriceList.length"> </tr>
{{subItem.ReimburseList.Remarks}} </template>
</td>
</tr>
</template>
</template> </template>
</table> </table>
</div> </div>
<!-- <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> </div>
</template> </template>
<script> <script>
import payURL from "../commonPage/payURL.vue"; export default {
import moment from "moment"; data() {
export default { return {
data() { msg: {
return { TCIDs: ''
msg: { },
TCIDs:'' dataList: [],
loading: false,
}, total: 0,
dataList: [], currentPage: 1,
loading: false, showID: -1,
total: 0, companyList: [],
currentPage: 1, employeeList: [],
showID: -1, urrencyTypeObj: {},
companyList:[], };
employeeList:[],
urrencyTypeObj:{},
};
},
components: {},
created() {
let userInfo = this.getLocalStorage();
this.msg.TCIDs=this.$route.query.TCIDs?this.$route.query.TCIDs:"";
this.msg.date=this.$route.query.date?this.$route.query.date:"";
this.financeinfo_post_GetList();
},
methods: {
peopleStrToWord(str) {
if (str == 1)
return '成人'
if (str == 2)
return '儿童'
if (str == 3)
return '小人'
},
diningTotalPrice(sObj, obj) {
let totalPrice = 0
obj.forEach(x => {
totalPrice += x.PeoplePrice * (x.PeopleNum - x.Discount) * (1 - x.DiscountPrice / 100)
})
if (sObj.PayStyle !== 1) {
totalPrice = 0
}
return this.moneyFormat(totalPrice)
},
diningTotalPrice2(sObj, obj) {
let totalPrice = 0
obj.forEach(x => {
totalPrice += x.UnitPrice * x.UserNum
})
return this.moneyFormat(totalPrice)
}, },
financeinfo_post_GetList(){ // 币种类型 components: {},
this.apipost('financeinfo_post_GetList',{Name:''},res=>{ created() {
if(res.data.resultCode==1){ let userInfo = this.getLocalStorage();
let data = res.data.data; this.msg.TCIDs = this.$route.query.TCIDs ? this.$route.query.TCIDs : "";
data.map(item => { this.msg.date = this.$route.query.date ? this.$route.query.date : "";
this.urrencyTypeObj[0]="不限"; this.financeinfo_post_GetList();
this.urrencyTypeObj[item.ID]=item.Name;
});
}else{
}
},err=>{})
},
goUrl: function(name, path, id) {
this.$router.push({
name: path,
query: { id: id, blank: "y", tab: name }
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
}, },
resetPageIndex() { methods: {
this.msg.pageIndex = 1; peopleStrToWord(str) {
this.currentPage = 1; if (str == 1)
}, return '成人'
openImg(src){ if (str == 2)
window.open(src, "_blank"); return '儿童'
}, if (str == 3)
getList() { return '小人'
},
this.loading = true; diningTotalPrice(sObj, obj) {
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => { let totalPrice = 0
this.loading=false; obj.forEach(x => {
totalPrice += x.PeoplePrice * (x.PeopleNum - x.Discount) * (1 - x.DiscountPrice / 100)
})
if (sObj.PayStyle !== 1) {
totalPrice = 0
}
return this.moneyFormat(totalPrice)
},
diningTotalPrice2(sObj, obj) {
let totalPrice = 0
obj.forEach(x => {
totalPrice += x.UnitPrice * x.UserNum
})
return this.moneyFormat(totalPrice)
},
financeinfo_post_GetList() { // 币种类型
this.apipost('financeinfo_post_GetList', {
Name: ''
}, res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
data.map(item => {
this.urrencyTypeObj[0] = "不限";
this.urrencyTypeObj[item.ID] = item.Name;
});
} else {
if(res.data.resultCode == 1) { }
}, err => {})
},
goUrl: function (name, path, id) {
this.$router.push({
name: path,
query: {
id: id,
blank: "y",
tab: name
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.currentPage = 1;
},
openImg(src) {
window.open(src, "_blank");
},
getList() {
this.loading = true;
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = []; this.dataList = [];
let data=res.data.data.DiningList; let data = res.data.data.DiningList;
if(this.msg.date!='all'){ if (this.msg.date != 'all') {
data.forEach(item => { data.forEach(item => {
if(item.UseTimeStr==this.msg.date){ if (item.UseTimeStr == this.msg.date) {
this.dataList.push(item); this.dataList.push(item);
} }
}); });
}else{ } else {
this.dataList=data; this.dataList = data;
} }
this.dataList.forEach(x => { this.dataList.forEach(x => {
x.ScenicStatisticsList.forEach(y=>{ x.DiningSummaryList.forEach(y => {
y.listUrl = [] y.listUrl = [];
y.ReimburseList.VoucherPicList&&y.ReimburseList.VoucherPicList.forEach(z=>{ if (y.ReimburseList && y.ReimburseList.VoucherPicList && y.ReimburseList.VoucherPicList
y.listUrl.push(z.url) .length > 0) {
}) y.ReimburseList.VoucherPicList.forEach(z => {
y.listUrl.push(z.url)
})
}
}) })
}); });
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, err => {}) }, err => {})
},
}, },
mounted() {
this.getList();
}
};
},
mounted() {
this.getList();
}
};
</script> </script>
<style scoped> <style scoped>
.numSpan{ .numSpan {
display: inline-block; display: inline-block;
width:60px; width: 60px;
} }
.widthSpan{
.widthSpan {
display: inline-block; display: inline-block;
width: 45px; width: 45px;
} }
.groupTourOrderSearchTable {
width: 100%;
min-width: 1500px;
font-size: 14px;
color: #333;
border-bottom: 1px solid #cccccc;
border-right: 1px solid #cccccc;
/* border-collapse: collapse; */
}
.groupTourOrderSearchTable tr th { .groupTourOrderSearchTable {
background: #e6e6e6; width: 100%;
height: 30px; min-width: 1500px;
font-size: 12px; font-size: 14px;
text-align: left; color: #333;
text-indent: 15px; border-bottom: 1px solid #cccccc;
border-top: 1px solid #cccccc; border-right: 1px solid #cccccc;
border-left: 1px solid #cccccc; /* border-collapse: collapse; */
} }
.groupTourOrderSearchTable tr { .groupTourOrderSearchTable tr th {
background: #fff; background: #e6e6e6;
text-align: left; height: 30px;
} font-size: 12px;
text-align: left;
text-indent: 15px;
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable tr td { .groupTourOrderSearchTable tr {
padding: 8px; background: #fff;
border-top: 1px solid #cccccc; text-align: left;
border-left: 1px solid #cccccc; }
}
.groupTourOrderSearchTable tr td p { .groupTourOrderSearchTable tr td {
line-height: 20px; padding: 8px;
} border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable .dowloadSpan:hover { .groupTourOrderSearchTable tr td p {
text-decoration: underline; line-height: 20px;
cursor: pointer; }
}
.groupTourOrderSearchTable span.personNo { .groupTourOrderSearchTable .dowloadSpan:hover {
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover { .groupTourOrderSearchTable span.personNo {
font-weight: bold; text-decoration: underline;
color: #e95252; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover {
font-weight: bold;
color: #e95252;
}
</style> </style>
...@@ -18,10 +18,11 @@ ...@@ -18,10 +18,11 @@
<th>附件</th> <th>附件</th>
<th>备注</th> <th>备注</th>
</tr> </tr>
<template v-for='(item,index) in dataList'> <template v-for='(item,index) in dataList'>
<template v-if="item.ReimburseList && item.ReimburseList.ReimburseDetailsList.length"> <template v-if="item.ReimburseList && item.ReimburseList.ReimburseDetailsList.length">
<tr v-for="(childItem,childIndex) in item.ReimburseList.ReimburseDetailsList" > <tr v-for="(childItem,childIndex) in item.ReimburseList.ReimburseDetailsList">
<td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length">{{item.CheckInDateStr}}</td> <td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length">{{item.CheckInDateStr}}
</td>
<td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length"> <td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length">
{{item.HotelName}} {{item.HotelName}}
</td> </td>
...@@ -43,7 +44,7 @@ ...@@ -43,7 +44,7 @@
<span v-else-if="item.PayStyle === 3">预付</span> <span v-else-if="item.PayStyle === 3">预付</span>
<span v-else-if="item.PayStyle === 6">公司合团支付</span> <span v-else-if="item.PayStyle === 6">公司合团支付</span>
<span v-else></span> <span v-else></span>
</br> <br />
<span v-show="item.PayStyle==6">付款团号:{{item.PayTypeTCNUM}}</span> <span v-show="item.PayStyle==6">付款团号:{{item.PayTypeTCNUM}}</span>
</td> </td>
<td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length"> <td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length">
...@@ -52,12 +53,9 @@ ...@@ -52,12 +53,9 @@
<td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length"> <td v-if="childIndex==0" :rowspan="item.ReimburseList.ReimburseDetailsList.length">
<div v-if="item.ReimburseList.VoucherPicList.length"> <div v-if="item.ReimburseList.VoucherPicList.length">
<div v-for="(vou, vouIndex) in item.ReimburseList.VoucherPicList" :key="vouIndex"> <div v-for="(vou, vouIndex) in item.ReimburseList.VoucherPicList" :key="vouIndex">
<el-image <el-image style="width: 20px;height: 20px;" :src="vou.url" :preview-src-list="item.listUrl">
style="width: 20px;height: 20px;" </el-image>
:src="vou.url"
:preview-src-list="subItem.listUrl">
</el-image>
<!-- <img @click="openImg(vou.url)" style="width: 20px;height: 20px;" :src="vou.url" alt=""> -->
</div> </div>
</div> </div>
<div v-else> <div v-else>
...@@ -68,89 +66,93 @@ ...@@ -68,89 +66,93 @@
{{item.ReimburseList.Remarks}} {{item.ReimburseList.Remarks}}
</td> </td>
</tr> </tr>
</template> </template>
<tr v-else> <tr v-else>
<td colspan="9">暂无数据</td> <td colspan="9">暂无数据</td>
</tr> </tr>
</template> </template>
</table> </table>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
loading: true, loading: true,
dataList: [], dataList: [],
currencyList: [], currencyList: [],
}; };
},created(){ },
this.apipost("financeinfo_post_GetList", {Name: ""}, res=>{ created() {
if (res.data.resultCode === 1) { this.apipost("financeinfo_post_GetList", {
let data = res.data.data; Name: ""
this.currencyList = data }, res => {
} if (res.data.resultCode === 1) {
}, null) let data = res.data.data;
}, this.currencyList = data
mounted() {
let TCIDs = this.$route.query.TCIDs;
let date = this.$route.query.date;
this.getList(TCIDs, date);
},
filters: {},
methods: {
getCurrencyStr: function(id){
for(let i = 0; i < this.currencyList.length; i++) {
if (this.currencyList[i].ID == id) {
return this.currencyList[i].Name
} }
} }, null)
}, },
openImg(src){ mounted() {
window.open(src, "_blank"); let TCIDs = this.$route.query.TCIDs;
let date = this.$route.query.date;
this.getList(TCIDs, date);
}, },
//获取数据 filters: {},
getList(TCIDs, date) {
this.loading = true; methods: {
this.apipost( getCurrencyStr: function (id) {
"dmcstatistics_post_GetNewLeaderPayMoneyStatics", for (let i = 0; i < this.currencyList.length; i++) {
{TCIDs: TCIDs}, if (this.currencyList[i].ID == id) {
res => { return this.currencyList[i].Name
this.loading = false; }
if (res.data.resultCode === 1) { }
let data = res.data.data.HotelOrderListReport; },
let dataList = []; openImg(src) {
if(date!=='all') { window.open(src, "_blank");
data.map(x=>{ },
if (x.UseTimeStr == date){ //获取数据
getList(TCIDs, date) {
this.loading = true;
this.apipost(
"dmcstatistics_post_GetNewLeaderPayMoneyStatics", {
TCIDs: TCIDs
},
res => {
this.loading = false;
if (res.data.resultCode === 1) {
let data = res.data.data.HotelOrderListReport;
let dataList = [];
if (date !== 'all') {
data.map(x => {
if (x.UseTimeStr == date) {
dataList.push(...x.HotelOrderList)
}
})
} else {
data.map(x => {
dataList.push(...x.HotelOrderList) dataList.push(...x.HotelOrderList)
})
}
dataList.forEach(x => {
x.listUrl = [];
if (x.ReimburseList && x.ReimburseList.VoucherPicList && x.ReimburseList.VoucherPicList) {
x.ReimburseList.VoucherPicList.forEach(z => {
y.listUrl.push(z.url);
})
} }
}) });
this.dataList = dataList;
} else { } else {
data.map(x=>{ this.Error(res.data.message);
dataList.push(...x.HotelOrderList)
})
} }
dataList.forEach(x => { },
x.ScenicStatisticsList.forEach(y=>{ null
y.listUrl = [] );
y.ReimburseList.VoucherPicList&&y.ReimburseList.VoucherPicList.forEach(z=>{ },
y.listUrl.push(z.url) }
}) };
})
});
this.dataList = dataList;
} else {
this.Error(res.data.message);
}
},
null
);
},
}
};
</script> </script>
<template> <template>
<div class="flexOne" style="min-width: 1200px;"> <div class="flexOne" style="min-width: 1200px;">
<!-- 表格 --> <!-- 表格 -->
<div style="width: 100%; height: auto;min-height:500px;overflow-x: auto;margin-top:20px" class="ownScrollbarStyle"> <div style="width: 100%; height: auto;min-height:500px;overflow-x: auto;margin-top:20px" class="ownScrollbarStyle">
<table class="groupTourOrderSearchTable" border="0" cellspacing="0" cellpadding="0" v-loading='loading'> <table class="groupTourOrderSearchTable" border="0" cellspacing="0" cellpadding="0" v-loading='loading'>
...@@ -12,174 +10,163 @@ ...@@ -12,174 +10,163 @@
<th>附件</th> <th>附件</th>
</tr> </tr>
<template v-for='(item, index) in dataList'> <template v-for='(item, index) in dataList'>
<tr :key="index"> <tr :key="index">
<td>{{item.UseDate ? item.UseDate.replace('T', ' ') : ''}}</td> <td>{{item.UseDate ? item.UseDate.replace('T', ' ') : ''}}</td>
<td>{{item.UnitPrice}}</td> <td>{{item.UnitPrice}}</td>
<td>{{item.Remark}}</td> <td>{{item.Remark}}</td>
<td> <td>
<div v-if="item.VoucherPicList.length"> <div v-if="item.VoucherPicList.length">
<div v-for="(vou, vouIndex) in item.VoucherPicList" :key="vouIndex"> <div v-for="(vou, vouIndex) in item.VoucherPicList" :key="vouIndex">
<el-image <el-image style="width: 20px;height: 20px;" :src="vou.url" :preview-src-list="item.listUrl">
style="width: 20px;height: 20px;" </el-image>
:src="vou.url" </div>
:preview-src-list="subItem.listUrl"> </div>
</el-image> <div v-else>
<!-- <img @click="openImg(vou.url)" style="width: 20px;height: 20px;" :src="vou.url" alt=""> -->
</div> </div>
</div> </td>
<div v-else> </tr>
</div>
</td>
</tr>
</template> </template>
<tr> <tr>
<td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td> <td v-show="dataList.length==0" colspan="16" align="center">暂无数据</td>
</tr> </tr>
</table> </table>
</div> </div>
<!-- <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> </div>
</template> </template>
<script> <script>
import payURL from "../commonPage/payURL.vue"; export default {
import moment from "moment"; data() {
export default { return {
data() { msg: {
return { TCIDs: ''
msg: { },
TCIDs:'' dataList: [],
}, loading: false,
dataList: [], total: 0,
loading: false, currentPage: 1,
total: 0, showID: -1,
currentPage: 1, companyList: [],
showID: -1, employeeList: [],
companyList:[], urrencyTypeObj: {},
employeeList:[], };
urrencyTypeObj:{},
};
},
components: {},
created() {
let userInfo = this.getLocalStorage();
this.msg.TCIDs=this.$route.query.TCIDs?this.$route.query.TCIDs:"";
this.msg.date=this.$route.query.date?this.$route.query.date:"";
},
methods: {
openImg(src){
window.open(src, "_blank");
}, },
handleCurrentChange(val) { components: {},
this.msg.pageIndex = val; created() {
this.getList(); let userInfo = this.getLocalStorage();
}, this.msg.TCIDs = this.$route.query.TCIDs ? this.$route.query.TCIDs : "";
resetPageIndex() { this.msg.date = this.$route.query.date ? this.$route.query.date : "";
this.msg.pageIndex = 1;
this.currentPage = 1;
}, },
openImg(src){ methods: {
window.open(src, "_blank"); openImg(src) {
}, window.open(src, "_blank");
getList() { },
handleCurrentChange(val) {
this.loading = true; this.msg.pageIndex = val;
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => { this.getList();
this.loading=false; },
resetPageIndex() {
if(res.data.resultCode == 1) { this.msg.pageIndex = 1;
this.currentPage = 1;
},
openImg(src) {
window.open(src, "_blank");
},
getList() {
this.loading = true;
this.apipost('dmcstatistics_post_GetNewLeaderPayMoneyStatics', this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = []; this.dataList = [];
let data=res.data.data.OtherOrderInfo.OtherList; let data = res.data.data.OtherOrderInfo.OtherList;
if(this.msg.date!='all'){ if (this.msg.date != 'all') {
data.forEach(item => { data.forEach(item => {
if(item.UseTimeStr==this.msg.date){ if (item.UseTimeStr == this.msg.date) {
this.dataList.push(item); this.dataList.push(item);
} }
}); });
}else{ } else {
this.dataList=data; this.dataList = data;
} }
this.dataList.forEach(x => { this.dataList.forEach(x => {
x.ScenicStatisticsList.forEach(y=>{ x.listUrl = [];
y.listUrl = [] if (x.VoucherPicList && x.VoucherPicList.length > 0) {
y.ReimburseList.VoucherPicList&&y.ReimburseList.VoucherPicList.forEach(z=>{ x.VoucherPicList.forEach(z => {
y.listUrl.push(z.url) x.listUrl.push(z.url)
}) })
}) }
}); });
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, err => {}) }, err => {})
},
}, },
mounted() {
this.getList();
}
};
},
mounted() {
this.getList();
}
};
</script> </script>
<style scoped> <style scoped>
.numSpan{ .numSpan {
display: inline-block; display: inline-block;
width:60px; width: 60px;
} }
.widthSpan{
.widthSpan {
display: inline-block; display: inline-block;
width: 45px; width: 45px;
} }
.groupTourOrderSearchTable {
width: 100%;
min-width: 1500px;
font-size: 14px;
color: #333;
border-bottom: 1px solid #cccccc;
border-right: 1px solid #cccccc;
/* border-collapse: collapse; */
}
.groupTourOrderSearchTable tr th { .groupTourOrderSearchTable {
background: #e6e6e6; width: 100%;
height: 30px; min-width: 1500px;
font-size: 12px; font-size: 14px;
text-align: left; color: #333;
text-indent: 15px; border-bottom: 1px solid #cccccc;
border-top: 1px solid #cccccc; border-right: 1px solid #cccccc;
border-left: 1px solid #cccccc; /* border-collapse: collapse; */
} }
.groupTourOrderSearchTable tr { .groupTourOrderSearchTable tr th {
background: #fff; background: #e6e6e6;
text-align: left; height: 30px;
} font-size: 12px;
text-align: left;
text-indent: 15px;
border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable tr td { .groupTourOrderSearchTable tr {
padding: 8px; background: #fff;
border-top: 1px solid #cccccc; text-align: left;
border-left: 1px solid #cccccc; }
}
.groupTourOrderSearchTable tr td p { .groupTourOrderSearchTable tr td {
line-height: 20px; padding: 8px;
} border-top: 1px solid #cccccc;
border-left: 1px solid #cccccc;
}
.groupTourOrderSearchTable .dowloadSpan:hover { .groupTourOrderSearchTable tr td p {
text-decoration: underline; line-height: 20px;
cursor: pointer; }
}
.groupTourOrderSearchTable span.personNo { .groupTourOrderSearchTable .dowloadSpan:hover {
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover { .groupTourOrderSearchTable span.personNo {
font-weight: bold; text-decoration: underline;
color: #e95252; cursor: pointer;
} }
.groupTourOrderSearchTable span.personNo:hover {
font-weight: bold;
color: #e95252;
}
</style> </style>
...@@ -1024,7 +1024,6 @@ ...@@ -1024,7 +1024,6 @@
} }
}).catch(err => {}) }).catch(err => {})
}, },
// 生成pdf // 生成pdf
toContractPDF: function (title) { toContractPDF: function (title) {
let urlObj = this.domainManager(); let urlObj = this.domainManager();
...@@ -1156,5 +1155,4 @@ ...@@ -1156,5 +1155,4 @@
this.getShow(TID); this.getShow(TID);
} }
}; };
</script>
</script> \ No newline at end of file
...@@ -305,9 +305,12 @@ ...@@ -305,9 +305,12 @@
<input type="button" class="TCbtn-info" v-if="CtObj.status==1" @click="goUrl()" value="预览"> <input type="button" class="TCbtn-info" v-if="CtObj.status==1" @click="goUrl()" value="预览">
<input type="button" class="TCbtn-info" v-if="CtObj.auditContract==2" @click="getinvalid()" value="作废"> <input type="button" class="TCbtn-info" v-if="CtObj.auditContract==2" @click="getinvalid()" value="作废">
<input type="button" class="TCbtn-info" @click="dialogVisible=true,getGuestList()" value="复制合同" /> <input type="button" class="TCbtn-info" @click="dialogVisible=true,getGuestList()" value="复制合同" />
<template v-if="CtObj.auditContract!=2">
<input type="button" v-if="CtObj.auditContract!=2" class="btn-warning" @click="submitForm('CtObj')" <input type="button" class="btn-warning" @click="submitForm('CtObj')" value="保存" />
value="保存" /> </template>
<template v-if="CurrentUserInfo.EmployeeId==615">
<input type="button" class="btn-warning" @click="submitForm('CtObj')" value="保存(S)" />
</template>
</div> </div>
</div> </div>
<el-form label-width="180px" :model="CtObj" :rules="rules" ref="CtObj"> <el-form label-width="180px" :model="CtObj" :rules="rules" ref="CtObj">
...@@ -1552,7 +1555,9 @@ ...@@ -1552,7 +1555,9 @@
this.GetTrip(0, this.msg.TCID); this.GetTrip(0, this.msg.TCID);
} }
if (this.CtObj.auditContract == 2) { if (this.CtObj.auditContract == 2) {
this.goContract() if (this.CurrentUserInfo.EmployeeId != 615) {
this.goContract()
}
} }
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
......
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