音频视频接口对接

lu_quan_dev
han 11 months ago
parent 709fae02c7
commit 083c52c635
  1. 5
      common/config.js
  2. 6
      pages.json
  3. 2
      subPageA/method/methodlist/methodlist.vue
  4. 4
      subPageA/scenic/scenicdetial/scenicdetial.vue
  5. 16
      subPageA/scenic/sceniclist/sceniclist.vue
  6. 16
      subPageB/Homestay/homestaydetail/homestaydetail.vue
  7. 246
      subPageB/Homestay/homestaylist/homestaylist.vue
  8. 14
      subPageB/hotel/hoteldetail/hoteldetail.vue
  9. 82
      subPageC/orderHomestay/orderCancel.vue
  10. 51
      subPageC/orderHomestay/orderDetail.vue
  11. 52
      subPageC/orderHomestay/orderList.vue

@ -48,6 +48,11 @@ module.exports = {
getHomestayList: REAUEST_ROOTPATH + "/admin-api/homestay/HotelApp/pageListHotel",//民宿列表
getHomestayDetail: REAUEST_ROOTPATH + "/admin-api/homestay/HotelApp/getHotelInfoVo",//民宿详情
createHotelOrder: REAUEST_ROOTPATH + "/admin-api/homestay/HotelOrder/createHotelOrder",//民宿订单提交
userCancelUpdateOrder: REAUEST_ROOTPATH + "/admin-api/homestay/HotelOrder/userCancelUpdateOrder",//民宿订单取消
getDictDataList: REAUEST_ROOTPATH + "/admin-api/homestay/HotelOrder/getDictDataList",//民宿订单原因
// getMethodList: REAUEST_ROOTPATH + "/mobile/method/getMethodList", //原攻略列表
getMethodList: REAUEST_ROOTPATH + "/mobile/WalkthroughType/selectWalkthroughType",//攻略列表

@ -533,6 +533,12 @@
"style": {
"navigationBarTitleText": "退款详情"
}
},
{
"path": "orderHomestay/orderCancel",
"style": {
"navigationBarTitleText": "取消订单"
}
}
]
}

@ -17,7 +17,7 @@
</view>
<scroll-view scroll-x="true">
<view class="v-method-class row">
<view class="list_item" v-for="(item,index) in class_list" :key="index">
<view class="list_item" v-for="(item,index) in class_list" :key="index" @click="gotoPages()">
<view class="item_image">
<image :src="rootPath+item.logo" mode="aspectFill"></image>
</view>

@ -32,7 +32,7 @@
</view>
</view>
<view class="v-detail-address m-t-12 row flex-align-center" bindtap="showMap">
<view class="sec_name_unit">
<view class="sec_name_unit col">
<view class="cot_adr" style="margin-right: 20rpx;">{{ info.saddress }}</view>
</view>
<view class="sec_btn_box row flex-align-center">
@ -966,4 +966,4 @@
font-size: 28rpx;
width: 140rpx;
}
</style>
</style>

@ -11,7 +11,7 @@
</view>
</view>
<view class="dy_fx amt_30">
<view class="search-tip-bar">
<view class="search-tip-bar">
<view @tap="changePanel" :class="[searchItemClass, selectedParam.hiddenSortPanel ? 'active' : '']"
data-type="hiddenSortPanel">智能排序</view>
<view @tap="changePanel"
@ -68,7 +68,7 @@
</view>
</scroll-view>
</view>
</view>
</view>
<view class="sort-page" :hidden="selectedParam.hiddenSortPanel">
<view class="sort-group">
@ -81,7 +81,7 @@
</view>
</view>
</view>
<view class="sort-page" :hidden="selectedParam.hiddenRegionPanel">
<view class="sort-group">
<view @tap="regionSelected" :class="[
@ -93,7 +93,7 @@
</view>
</view>
</view>
<view class="filter-page" :hidden="selectedParam.hiddenAttributePanel">
<view class="filter-box">
<scroll-view scrollY class="filter-hd">
@ -246,7 +246,7 @@
search: function() {
this.init(null);
},
back: function(e) {
back: function(e) {
uni.navigateBack({
delta: 1,
});
@ -549,7 +549,7 @@
</script>
<style lang="less">
page {
background: #fff;
@ -706,7 +706,7 @@
content: "";
}
.filter-box {
position: absolute;
@ -1035,4 +1035,4 @@
}
}
}
</style>
</style>

@ -108,7 +108,6 @@
<view class="v-detail-content m-t-24" v-html="info.hcontent"></view>
</view>
<f-login></f-login>
</view>
</template>
@ -162,14 +161,15 @@
...mapState(["PrimaryColor", "userInfo"])
},
onUnload() {
this.newdate()
uni.setStorageSync('满房日期显示', 0)
},
onLoad: function(options) {
onLoad: function(options) {
this.guid = options.guid;
this.detailInfo(options.guid);
//
},
onShow() {
//
let sys = uni.getSystemInfoSync();
if (sys.statusBarHeight >= 44) {
// this.height = sys.windowHeight - 34;
@ -177,9 +177,9 @@
} else {
// this.height = sys.windowHeight;
}
// console.log(sys);
var dicday = uni.getStorageSync('入离日期');
if (dicday) {
this.startDate = dicday.startDate;
@ -187,7 +187,7 @@
}
this.infoData = dicday
this.newdate();
this.type = 1;
// this.dicdes = JSON.parse(e.dic);
uni.setStorageSync('满房日期显示', 1)

@ -3,7 +3,7 @@
<view class="v-pages-search bg">
<view class="search_box row flex-align-center">
<view class="col">
<input @input="write" type="text" class="input" @confirm="confirm" confirm-type="search"
<input @input="write" type="text" class="input" confirm-type="search"
color="#A0A7B2" placeholder-style="color:#999" placeholder="请输入民宿名称搜索" />
</view>
<view class="btn_img" @click="search()">
@ -59,7 +59,7 @@
},
data() {
that = this;
return {
return {
searchItemClass: 'search-tip-item',
pageClass: {
sortItemClass: 'sort-item',
@ -163,248 +163,19 @@
})
},
methods: {
write: function(e) {
this.searchTitle = e.detail.value;
},
search: function() {
uni.showLoading({
title: '加载中',
mask: true
});
this.initData();
this.get_data();
},
//
back() {
uni.navigateBack({
delta: 1
});
},
showMenu() {
uni.showToast({
title: '菜单'
});
},
clickLeft() {
uni.showToast({
title: '左侧按钮'
});
},
showCity() {
uni.showToast({
title: '选择城市'
});
},
scan() {
uni.showToast({
title: '扫码'
});
},
confirm(e) {
this.searchTitle = e.detail.value;
uni.showLoading({
title: '加载中',
mask: true
});
search: function() {
this.initData();
this.get_data();
},
//
callGpsSuccess: function(lat, lng) {
that.$param.clat = lat;
that.$param.clng = lng;
that.latitude = lat;
that.longitude = lng;
that.get_data();
uni.hideLoading();
that.$util.unbindGpsObj();
},
callGpsFail: function() {
that.latitude = this.$param.lat;
that.longitude = this.$param.lng;
that.get_data();
uni.hideLoading();
this.$util.unbindGpsObj();
},
requestLocation: function(region) {
console.log('---requestLocation---');
this.$util.getLocation(
function(res) {
if (that.$wechat.isWechat()) {
that.$param.clat = res.latitude;
that.$param.clng = res.longitude;
that.getData();
that.get_attribute(), that.initData(), that.get_data();
} else {
that.get_attribute(), that.initData(), that.get_data();
}
uni.hideLoading();
},
function() {
console.log('location error---');
}
);
},
initData: function() {
this.data = false;
this.listDatas = [];
this.destinationBak = this.destination;
},
selected: function(event) {
uni.showLoading({
title: '加载中',
mask: true
});
this.initData();
var dataset = event.currentTarget.dataset;
var param = this.selectedParam;
param[dataset.type] = dataset.id;
param.hiddenSortPanel = !0;
//console.log(dataset.id);
this.selectedParam = param;
this.get_data();
},
regionSelected: function(event) {
uni.showLoading({
title: '加载中',
mask: true
});
this.initData();
var dataset = event.currentTarget.dataset;
var param = this.selectedParam;
param[dataset.type] = dataset.id;
param.hiddenRegionPanel = !0;
// console.log(dataset.id);
this.selectedParam = param;
this.regionname = dataset.name;
this.get_data();
},
getRedisRegion: function() {
var that = this;
var data = {
key: that.$param.userkey + '_mdd_list'
};
that.$Request.post(that.$config.getRedisData, data).then(res => {
if (res.status == 200) {
that.regionList = res.data.mddList;
var all = {
bm: '',
title: '全部'
};
that.regionList.unshift(all);
for (var i = 0; i < that.regionList.length; i++) {
if (that.regionList[i].bm == that.selectedParam.bm) {
that.regionname = that.regionList[i].title;
}
}
} else {
that.getRegion();
}
});
},
changePanel: function(event) {
var dataSet = event.currentTarget.dataset,
selectedParam = this.selectedParam;
'hiddenSortPanel' == dataSet.type ? (selectedParam.hiddenAttributePanel = !0, selectedParam
.hiddenRegionPanel = !0) : (selectedParam.hiddenSortPanel = !0),
(selectedParam[dataSet.type] = !selectedParam[dataSet.type]),
(this.selectedParam = selectedParam);
},
changeRegionPanel: function(event) {
var dataSet = event.currentTarget.dataset,
selectedParam = this.selectedParam;
if ('hiddenRegionPanel' == dataSet.type) {
selectedParam.hiddenAttributePanel = !0;
selectedParam.hiddenSortPanel = !0;
} else {
selectedParam.hiddenRegionPanel = !0;
}
(selectedParam[dataSet.type] = !selectedParam[dataSet.type]), (this.selectedParam = selectedParam);
},
resetFilter: function() {
this.selectedFIlter = {
attribute_htype: 0
}
},
confirmClick: function() {
uni.showLoading({
title: '加载中',
mask: true
});
this.initData();
//
var selectedParam = this.selectedParam;
(selectedParam.hiddenAttributePanel = true), (this.selectedFIlterBak = this.selectedFIlter);
this.parentLevelItem = 'attribute_htype';
this.selectedParam = selectedParam;
this.get_data();
},
parentLevel: function(t) {
var currentTarget = t.currentTarget.dataset;
//console.log("aaaaaaaaaaaaaaaaa"+a.parentlevelitem);
this.parentLevelItem = currentTarget.parentlevelitem;
},
childLevel: function(t) {
var a = t.currentTarget.dataset,
e = this.selectedFIlter;
this.selectedFIlterBak = e;
e[a.type] = a.id;
this.selectedFIlter = e;
},
get_attribute: function() {
var that = this;
var url = this.$config.getCondition;
var data = {
type: 'hotel',
userkey: this.$param.userkey,
condition: this.$param.hotelType
};
this.$Request.post(url, data).then(res => {
var flag = that.$util.isSuccess(res);
if (!flag) {
return;
}
this.filter = res.data;
});
},
getRegion: function() {
var that = this;
var url = this.$config.getMessageInfoFormFilter;
var data = {
type: this.$param.mddType,
userkey: this.$param.userkey,
pageSize: 100,
sort: '2'
};
this.$Request.post(url, data).then(res => {
var flag = that.$util.isSuccess(res);
if (!flag) {
return;
}
this.regionList = res.data;
for (var i = 0; i < this.regionList.length; i++) {
if (this.regionList[i].bm == this.selectedParam.bm) {
this.regionname = this.regionList[i].title;
}
}
this.regionList.unshift({
title: '全部',
bm: ''
});
});
},
// onReachScroll: function(t) {
// //console.log(t);
// t.detail.scrollTop > 100 ? this.floorstatus=true: this.floorstatus=false;
// var a = this.param;
// a.noData || a.finished || a.loading || this.get_data(this.selectedParam.bm);
// },
},
/*下拉刷新的回调 */
downCallback(mescroll) {
console.log("下拉刷新的")
@ -466,14 +237,7 @@
});
},
onPullDownRefresh() {
console.log('onPullDownRefresh');
setTimeout(function() {
uni.stopPullDownRefresh();
console.log('stopPullDownRefresh');
}, 1000);
}
}
};
</script>

@ -6,16 +6,16 @@
<image class="slide-image" height="187" :src="item" width="375"></image>
</swiper-item>
</swiper>
<view class="v-card detail container-fluid m-t--80">
<view class="v-card detail container-fluid m-t--80">
<view class="v-detail-name"><text class="text">{{info.hname}}</text><text
class="level hotel m-l-20">{{info.hlevel}}</text></view>
<view class="v-detail-tip m-t-12"><text class="item">免费停车</text><text class="item">机器人服务</text></view>
<view class="v-detail-address m-t-12 row flex-align-center" bindtap="showMap">
<view class="sec_name_unit">
<view class="v-detail-address m-t-12 row flex-align-center" bindtap="showMap">
<view class="sec_name_unit col">
<view class="cot_adr" style="margin-right: 20rpx;">{{info.haddress}}</view>
<!-- <view class="cot_gap">距西部长青温泉谷750米 </view> -->
</view>
<view class="sec_btn_box row flex-align-center">
<view class="sec_item map" @click="daohang">
<view class="icon"></view>
@ -25,7 +25,7 @@
<view class="icon"></view>
<view class="text">电话</view>
</view>
</view>
</view>
</view>
</view>
<!-- <view class="v-card detail small container-fluid m-t-24 row flex-align-center" @click="showCalendar()">
@ -113,7 +113,7 @@
}, //
type: 0, //1 0
infoData:{
}
}
},
@ -394,4 +394,4 @@
left: ;
z-index: 999;
}
</style>
</style>

@ -5,15 +5,15 @@
<view class="v-order-tip">请告知取消原因我们将努力改善服务</view>
<view class="v-order-cancel-list">
<view class="list_item row" v-for="(item,index) in cancelList" :key="index">
<view class="label col">{{item.name}}</view>
<view>
<radio :value="item.value" :checked="index === current" />
<view class="label col">{{item.label}}</view>
<view>
<radio :value="item.value" :checked="item.value === current" />
</view>
</view>
</view>
</view>
<view class="v-order-bottom">
<view class="btn">确认取消订单</view>
<view class="v-cancel-bottom">
<view class="btn" @click="submit">确认取消订单</view>
</view>
</view>
</template>
@ -23,43 +23,57 @@
data() {
return {
cancelList: [],
current: 0
current: "1",
orderId: undefined
}
},
onLoad() {
onLoad(options) {
this.orderId = options.orderId
this.getInitPage()
},
methods: {
getInitPage() {
this.cancelList = [{
name: "出行取消",
value: 0
}, {
name: "计划有变",
value: 1
}, {
name: "交通延误",
value: 2
}, {
name: "身体原因",
value: 3
}, {
name: "定错日期或酒店",
value: 4
}, {
name: "重复购买",
value: 5
}, ]
}
getInitPage(id) {
this.$Request.get(this.$config.getDictDataList, null, null, null, false, true).then((res) => {
this.cancelList = res.data
}).catch(() => {
});
},
submit() {
const userInfo = uni.getStorageSync("userInfo");
let parame = {
id: this.orderId,
openid: userInfo.openid,
cancelType: this.current,
}
this.$Request.get(this.$config.userCancelUpdateOrder, parame, 'json', null, false, null).then((res) => {
if(res.code=="200"){
uni.showToast({
title: '订单取消成功',
icon: 'none'
});
setTimeout(() => {
uni.navigateTo({
url: "/subPageC/orderHomestay/orderList"
});
}, 1000)
}else{
uni.showToast({
title: '订单取消失败,请稍后重试',
icon: 'none'
});
}
}).catch(() => {
});
}
}
}
</script>
<style lang="scss">
/*每个页面公共css */
@import '../../static/common.scss';
.v-order-title {
font-size: 32rpx;
@ -85,16 +99,16 @@
.list_item {
margin: 30rpx 0;
.label{font-size: 28rpx;}
}
}
.v-order-bottom {
.v-cancel-bottom {
position: fixed;
bottom: 0;
bottom: 30rpx;
left: 0;
width: 100%;
padding: 24rpx 32rpx;
background-color: #fff;
box-sizing: border-box;
.btn {

@ -7,19 +7,28 @@
<image mode="widthFix"
:src="'https://eluyou.ailuquan.cn/upload/image/2024/mapIcon/daolan/'+stateImg(homestayOrderData.orderStatus)">
</image>
{{stateMessage(homestayOrderData.orderStatus)}}
{{homestayOrderData.status}}
</view>
<view class="tip">
<view v-if="homestayOrderData.orderStatus == '2'||homestayOrderData.orderStatus == '3'">
{{homestayOrderData.cancelReason}}</view>
<view v-else>{{promptText(homestayOrderData.orderStatus)}}</view>
</view>
<view class="tip">{{promptText(homestayOrderData.orderStatus)}}</view>
<!-- <view class="time" v-if="homestayOrderData.orderStatus == '0'">25:25</view> -->
</view>
<view class="order-top-btn m-t-40">
<view class="order-top-btn m-t-40" v-if="homestayOrderData.orderStatus != '0'">
<view class="col-24">
<view class="pay-btn" v-if="homestayOrderData.orderStatus == '0'" @click="payOrder">去支付</view>
<view class="pay-btn" v-else @click="toHomeStayBookingPage(homestayOrderData.hotelId)">再次预订</view>
<view class="pay-btn" @click="toHomeStayBookingPage(homestayOrderData.hotelId)">再次预订</view>
</view>
</view>
<view class="order-top-btn m-t-40 row" v-else>
<view class="col-12">
<view class="pay-btn" @click="payOrder">去支付</view>
</view>
<view class="col-12">
<view class="cancel-btn" @click="cacelOrder">取消订单</view>
</view>
<!-- <view class="col-12">
<view class="cancel-btn">取消订单</view>
</view> -->
</view>
<!-- <view v-if="homestayOrderData.orderStatus != '0' && homestayOrderData.orderStatus !='1'">
<view class="pay-btn">再次预订</view>
@ -63,7 +72,7 @@
<view class="v-card order container-fluid m-t-24">
<view class="v-order-info row">
<view class="info-image">
<image :src="homestayOrderData.hotelLogo" mode="widthFix"></image>
<image :src="rootPath+homestayOrderData.hotelLogo" mode="widthFix"></image>
</view>
<view class="info-content">
<view class="title">{{homestayOrderData.hotelName}}</view>
@ -133,6 +142,7 @@
import uPopup from "../components/uview-ui/components/u-popup/u-popup.vue";
export default {
components: {
fPay,
uPopup
@ -141,7 +151,7 @@
return {
//
isPayPopup: false,
rootPath: "https://eluyou.ailuquan.cn",
title: '订单详情',
homestayOrderData: {
'id': 1734877929,
@ -177,6 +187,11 @@
}
}
},
onUnload: function() {
uni.navigateBack({
delta: 1
});
},
onLoad(options) {
this.getHomestayOrderDetail(options.id)
},
@ -322,6 +337,12 @@
break;
}
},
//
cacelOrder() {
uni.navigateTo({
url: "/subPageC/orderHomestay/orderCancel?orderId=" + this.homestayOrderData.orderNumber
});
},
stateMessage: function(val) {
// 0 1 2 3 4 5 6 7 退 8退
switch (val) {
@ -380,7 +401,11 @@
font-size: 44rpx;
color: #fff;
font-weight: bold;
image{width: 60rpx;margin-right: 10rpx;}
image {
width: 60rpx;
margin-right: 10rpx;
}
}
.tip {
@ -427,7 +452,7 @@
margin: 12rpx 10rpx;
.pay-btn {
margin: 0 20rpx;
background-color: #fff;
text-align: center;
height: 64rpx;
@ -665,4 +690,4 @@
font-weight: bold;
}
}
</style>
</style>

@ -17,7 +17,7 @@
</view>
<view class="content-price">总价¥{{item.orderAmount}}</view>
<view class="content-bottom">
<view class="btn" v-if="item.orderStatus=='0'">去支付</view>
<view class="btn" v-if="item.orderStatus=='0'" @click="payOrder(item)">去支付</view>
<view class="btn" v-if="item.orderStatus !='0' && item.orderStatus !='1'"
@click="toHomeStayBookingPage(item.hotelId)">再次预定</view>
<view class="btn" v-if="item.orderStatus =='7' || item.orderStatus =='8'"
@ -27,23 +27,35 @@
</view>
</view>
<view class="tip-bage"></view>
<view class="tip-state m-t-12" v-if="item.orderStatus=='2'">等待商家确认中请及时关注订单状态</view>
<view class="tip-state m-t-12" v-if="item.orderStatus=='1'">等待商家确认中请及时关注订单状态</view>
<view class="state" :class="'type'+item.orderStatus">{{stateMessage(item.orderStatus)}}</view>
</view>
</mescroll-uni>
<u-popup :show="isPayPopup" mode="bottom" @close="isPayPopup = false" round="10">
<f-pay :show-title="false" :show="isPayPopup" :order="orderInfo"
:payMoney="orderInfo.orderAmount" :tradeNo="orderInfo.orderNumber"
@payResult="payResult"></f-pay>
</u-popup>
</view>
</template>
<script>
// mescroll-xinlang.vue
import fPay from "../components/f-pay/f-pay";
import uPopup from "../components/uview-ui/components/u-popup/u-popup.vue";
import MescrollUni from '@/components/mescroll-diy/mescroll-xinlang.vue';
export default {
components: {
MescrollUni
MescrollUni,
fPay,
uPopup
},
data() {
return {
rootPath: "https://eluyou.ailuquan.cn",
//
isPayPopup: false,
//
downOption: {
auto: false //callback; true
@ -62,7 +74,8 @@
appid: undefined,
},
orderList: [],
list: [], //
list: [], //
orderInfo: undefined,
}
},
onLoad() {
@ -121,6 +134,27 @@
this.param.pageno = this.mescroll.num
this.loadData();
},
//
payResult(data) {
if (data.payStatus == 1) {
uni.showToast({
title: '支付成功',
icon: 'none'
});
this.isPayPopup = false
setTimeout(() => {
uni.navigateTo({
url: "/subPageC/orderHomestay/orderList"
});
}, 1000)
} else {
uni.showToast({
title: '支付失败',
icon: 'none'
});
}
//uni.showToast({title: data.detail.errMsg,icon:'none'});
},
//
loadData() {
// TODO: appId openId
@ -146,8 +180,12 @@
}).catch(() => {
this.mescroll.endErr(); // ,
});
},
//
payOrder(val) {
this.orderInfo = val
console.log("订单==========", this.orderInfo)
this.isPayPopup = true
},
// 宿
toHomeStayDetailPage(id) {

Loading…
Cancel
Save