sadjv3_user/my/order/payModifyTcMy.vue

2368 lines
56 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="content">
<view class="padding-bottom u-skeleton">
<view class="bgImg u-skeleton-fillet" style="padding: 0 20rpx;">
<view class="head-top">
<view class="pay-title">服务项目</view>
<view class="flex">
<view class="" style="width: 160upx;height: 160upx;">
<image :src="orderXm.massageImg" style="width: 100%;height: 100%;border-radius: 19upx;"></image>
</view>
<view class="u-flex-1 margin-left-sm">
<view class="flex head-title-right">
<view class="margin-right-xs u-skeleton-fillet head-title">
{{orderXm.title}}
</view>
<image style="width:100rpx; height:38rpx;" :src="orderXm.level=='3'?'../../static/vip/grade1.gif':orderXm.level=='4'?'../../static/vip/grade2.gif':'../../static/vip/grade3.gif'" mode=""></image>
</view>
<view class="flex align-center">
<view style="width: 100%;">
<view class="flex justify-between margin-tb-sm">
<view style="justify-content: space-between;">
<text class="title-font">时长</text><text class="value-font">{{orderXm.duration}}分钟</text>
</view>
</view>
<view class="money-pay">
<view class="money-pay-zhen">
<text class="title-font">价格</text>
<span></span>
<span>{{orderXm.packagePrice}}</span>
</view>
<view>
<uni-number-box :disabled="true" :width='27' :min="1" :value='1' @change="changeValue" />
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="add-content header-margin" @click="getAddressList()">
<!-- <view class="Service-add">服务地址</view> -->
<view class="Service-Address">{{province}}/{{city}}/{{district}}/{{detailaddress}}</view>
<view v-if="!detailaddress">请选择地址</view>
<view class="Service-name" >
<span>{{name}}</span>
<span>{{mobile}}</span>
</view>
</view>
<!--<view class="header-padd header-view header-margin">
<view v-if="!detailaddress">请选择地址</view>
<view class="margin-right-xs">
<view class="jusitify-line">
<view class="line-word title-font">客户姓名</view>
<view class="line-word-r value-font">
<text>{{name}}</text>
<text class="xuanzhe" @click="getAddressList()">更换</text>
</view>
</view>
<view class="jusitify-line">
<view class="line-word title-font">联系方式</view>
<view class="line-word-r value-font">
{{mobile}}
</view>
</view>
<view class="jusitify-line" style="align-items: center;">
<view class="line-word title-font">服务地址</view>
<view class="line-word-r value-font" style="width: 73%; text-align: right; ">
<span>
{{province}}/{{city}}/{{district}}/{{detailaddress}}
</span>
</view>
</view>
</view>
</view>-->
<view class="header-view header-padd header-margin ">
<view class="jusitify-line" @click="liliaoshi">
<view class="line-word title-font" >
<span>技师</span>
<!-- <span v-if="jishiName">{{jishiName.technicianTypeName}}</span> -->
</view>
<view >
<span class="line-word-r value-font" v-if="jishiName.artificerId">{{jishiName.artificerName}}</span>
<span class="line-word-r value-font" v-else>选择技师</span>
<span class="view-more"></span>
</view>
</view>
<view class="jusitify-line">
<view class="line-word title-font">
服务时间
</view>
<view class="flex align-center justify-between value-font">
<view class="flex justify-between" @click="openData()">
<view v-if="startTime">{{startTime}}</view>
<view class="line-word-r value-font" v-else>请选择预约时间<span class="view-more"></span></view>
</view>
</view>
</view>
</view>
<view class="header-view header-padd header-margin" style="margin-bottom: 100px;">
<view class="d-title title-font">
<span>给技师捎句话</span>
<!-- <span style="color: rgb(9, 111, 75);" @click="kuaijie">快捷输入</span> -->
</view>
<view class="guke-list">
<view class="guke-btn huiBtn" :class="{ lanBtn: selected.includes(item) }"
@click="gukeBtn(item)" v-for="(item,index) in fuwuBtn" :key="index">
{{item.title}}
</view>
</view>
<view class="list-pay">
<view class="textarea-pay-list">
<textarea @input="textareaChange" class="textarea-pay" v-model="textareaData" placeholder="请输入备注" name="" maxlength="100"></textarea>
</view>
</view>
</view>
<view class="push-button">
<view class="pay_btn" @click="openpay()">去支付</view>
</view>
</view>
<!-- <u-skeleton :loading="loading" :animation="true" bgColor="#FFF"></u-skeleton> -->
<u-popup v-model="showorder" mode="bottom" :closeable="closeable">
<scroll-view scroll-y="true" style="width: 750rpx;height: 500rpx;">
<view class="list_item" v-for="(item,index) in orderList" :key="index">
<image :src="item.massageImg"></image>
<view class="listitem_rightview">
<view class="titleview">
<view class="item_title">{{item.title}}</view>
<view class="item_yishou">已售{{item.sales}}</view>
</view>
<view class="flex flex-wrap" style="margin-top: 10rpx;" v-if="item.labels.length>0">
<text class="margin-bottom-xs box" v-for="(items,index) in item.labels"
:key="index">{{items}}</text>
</view>
<view class="btnview">
<view class="item_money"> <text style="font-size: 24upx;">¥</text> <text
v-if="isVip">{{item.memberPrice}}</text><text v-if="!isVip">{{item.price}}</text>
/<text style="font-weight: 500;font-size: 24upx; ">{{item.duration}}分钟</text></view>
<view class="item_btn" @click="goOrder(item)">确认加钟</view>
</view>
</view>
</view>
</scroll-view>
</u-popup>
<!-- 支付方式 -->
<u-popup v-model="showpay" mode="bottom" :closeable="closeable">
<view class="popup_pay">
<view style="background-color: #fff;">
<view style="padding: 0 20upx;margin-top: 60rpx;margin-bottom: 20rpx;">
<view style="display: flex;height: 100upx;align-items: center;padding: 20upx 0;justify-content: center;"
v-for="(item,index) in openLists" :key='index'>
<image :src="item.image" style="width: 55upx;height: 55upx;border-radius: 50upx;">
</image>
<view style="font-size: 30upx;margin-left: 20upx;width: 70%;">
{{item.text}}
</view>
<radio-group name="openWay" style="margin-left: 45upx;" @tap='selectWay(item)'>
<label class="tui-radio">
<radio color="#029d88" :checked="openWay === item.id ? true : false" />
</label>
</radio-group>
</view>
</view>
</view>
<view class="tabber padding-top-sm padding-bottom-sm pay-zhifu" style="background: #fff !important;">
<span class="daizhifu">待支付:¥{{tpayMoney}}</span>
<u-button class="u-button-pay" @click="pay()" shape="circle" :custom-style="customStyle2" :hair-line="false">
立即支付
</u-button>
</view>
</view>
</u-popup>
<!-- 预约弹窗 -->
<u-popup v-model="isTrue" mode="bottom">
<view>
<scroll-view scroll-y="true">
<its-calendar :sta_num="0" :end_num="24" :int_num="msTimeDate" :msTimeList="msTimeList" :classifyId="classifyId"
@getTime="TimeData">
</its-calendar>
</scroll-view>
</view>
</u-popup>
<!-- 快捷输入 -->
<u-popup v-model="popupKj" mode="bottom">
<view>
<scroll-view scroll-y="true" style="background: #f7f7f7;">
<view class="guke-list">
<view class="guke-btn huiBtn" :class="{ lanBtn: selected.includes(item) }"
@click="gukeBtn(item)" v-for="(item,index) in fuwuBtn" :key="index">
{{item.title}}
</view>
</view>
<view class="kuaijie-btn" @click="quxiaoKj">取消</view>
</scroll-view>
</view>
</u-popup>
</view>
</template>
<script>
export default {
data() {
return {
startTime: '',
msTimeList: [],
msTimeDate: 0,
isTrue1: false,
single:'请选择时间',
radio1:'',
sex: [{
text: '我已同意《盛安健康服务协议》',
value: 0
}],
tordersId: '',
tpayMoney: '',
paySel: 0,
showorder: false,
orderList: [],
loading: true,
customStyle: {
// backgroundColor: '#e5e5e5',
// color: '#FFFFFF',
// #ifdef MP-WEIXIN
width: "310upx",
// #endif
// #ifndef MP-WEIXIN
width: '310upx',
// #endif
margin: '0 10upx',
},
customStyle2: {
backgroundColor: '',
color: '#FFFFFF',
// #ifdef MP-WEIXIN
width: "310upx",
// #endif
// #ifndef MP-WEIXIN
width: '310upx',
// #endif
margin: '0 10upx',
},
id: '',
order: {
user: {},
game: {}
},
phone: '',
isVip: false,
birthDate: '',
age: '',
showpay: false,
openLists: [],
openWay: 1,
closeable: true,
yhqxSel: '否',
address:[],
detailaddress:'',
name:'',
mobile:'',
cityaddress:'',
isDefault:'',
userId:'',
latitude:'',
longitude:'',
province:'',
city:'',
district:'',
addressId:'',
isTrue: false,
jishiName:'',
checkbox:false,
couponData:[],
couponId:'',
textareaData:'',
ordersId:'',
userPackageDetailId:'',
couponDataList:'',
orderXm:[],
detailData:[],
number:1,
popupKj:false,
selected:[],
selectedString:'',
fuwuBtn: [
{'title':'请速回电'},
{'title':'勿大声敲门'},
{'title':'尽快上门服务'},
{'title':'直接来即可'},
],
}
},
onLoad(e) {
if (this.$queue.getData('msTimeDate')) {
this.msTimeDate = parseInt(this.$queue.getData('msTimeDate'));
} else {
this.msTimeDate = 60;
}
this.orderXm=this.$queue.getData('mainData');
if(this.orderXm.level == 3){
this.orderXm.levelName = "资深"
}
if(this.orderXm.level == 4){
this.orderXm.levelName = "金牌"
}
if(this.orderXm.level == 5){
this.orderXm.levelName = "专家"
}
console.log("this.orderXm",this.orderXm)
this.detailData=this.$queue.getData('detailData');
var date = new Date();
var year = date.getFullYear();
let month = (parseInt(date.getMonth()) + 1) > 9 ? (parseInt(date.getMonth()) + 1) : "0" + (parseInt(
date.getMonth()) + 1) // 当前月份
let days = (date.getDate()) > 9 ? date.getDate() : "0" + date.getDate() //当前日期
let fullDate = `${month}-${days}`
let Time = year + '-' + fullDate
this.yearsDate = Time;
var classifyId=this.$queue.getData('classifyId')
this.classifyId = classifyId;
this.jishiName=this.$queue.getData('getJishi');
if(this.jishiName){
this.getMsTime(Time);
}else{
this.jishiName=[];
this.jishiName.artificerId='';
}
this.couponId=this.$queue.getData('youhui');
if(this.couponId){
this.youhuiF(this.couponId)
}
this.ordersId = this.orderXm.id;
this.userPackageDetailId = this.$queue.getData('userPackageDetailId');
this.youhui()
// this.getOrder()
},
onShow() {
this.addressId = this.$queue.getData('EditAddress');
if (this.addressId) {
this.getAddressList(this.addressId);
} else {
this.addressMy()
}
// #ifndef MP-WEIXIN
this.openLists = [{
image: '../../static/images/icon_weixin.png',
text: '微信支付',
id: 2
}, {
image: '../../static/images/zhifubao.png',
text: '支付宝支付',
id: 3
}, {
image: '../../static/images/lingqian.png',
text: '零钱支付',
id: 1
}],
this.openWay = 2;
// #endif
// #ifdef MP-WEIXIN
this.openLists = [{
image: '../../static/images/icon_weixin.png',
text: '微信支付',
id: 2
}, {
image: '../../static/images/lingqian.png',
text: '零钱支付',
id: 1
}],
this.openWay = 2;
// #endif
},
methods: {
quxiaoKj(){//快捷输入 取消
this.textareaData='';
this.selected=[];
this.popupKj=false;
},
kuaijie(){//快捷输入
this.popupKj=true;
},
gukeBtn(item) {
var index = this.selected.indexOf(item);
if (index === -1) {
this.selected.push(item);
} else {
this.selected.splice(index, 1);
}
var data = [];
for (var i = 0; i < this.selected.length; i++) {
data.push(this.selected[i].title)
}
this.textareaData = data.join(",")
},
openpay() {//验证
if(this.jishiName==''||this.jishiName==undefined){
uni.showToast({
title:'请选择技师,不同等级技师价格不同!'
})
}else if(this.startTime==''){
uni.showToast({
title:'请选择服务时间!'
})
}else{
// this.showpay = true;
this.goOrder()
}
},
goOrder() {//生成orderId
let that = this
if(that.detailaddress==''){
uni.showToast({
title:'请选择服务地址!'
})
return;
}
// let payMoney =item.price;
// let payMoney = that.isVip ? item.memberPrice : item.price;
let data = {
address:that.province+that.city+that.district+that.detailaddress,
artificerId:that.jishiName.artificerId,
phone:that.mobile,
userName:that.name,
tripWay:that.jishiName.tripWay,
city:that.province,
couponId: '',
userId: uni.getStorageSync('userId'),
longitude:that.longitude,
latitude:that.latitude,
serveTime:that.startTime,
remark:that.textareaData,
ordersMassageList:[
{massageId:that.ordersId,num: 1},
],
userPackageDetailId : that.ordersId
}
that.$Request.postJson("/app/artificer/insertOrders", data).then(res => {
that.showorder = false
if (res.code == 0) {
that.tordersId = res.data.ordersId;
that.tpayMoney = res.data.payMoney;
// that.showpay = true;
that.paySel = 1;
// console.log("res.data",res.data)
uni.navigateTo({
url:'/my/order/paydingTCX?ordersId='+ res.data.ordersId
})
} else {
that.$queue.showToast(res.msg)
}
});
},
changeValue(value){
this.number=value
},
// 时间段数据
TimeData(e) {
var date = new Date();
var year = date.getFullYear();
// if(this.msTimeList.length > 0){
// let startTime = year + '-' + e.days + ' ' + e.hours
// for (var i = 0; i < this.msTimeList.length; i++) {
// let msTime = this.msTimeList[i].artificerDate + ' ' + this.msTimeList[i].artificerTime
// if(startTime === msTime){
// this.isTrue = false
// uni.showModal({
// title: '温馨提示',
// content: '当前时段已被预约,请更换预约时段!',
// showCancel: true,
// cancelText: '取消',
// confirmText: '确定',
// success: res => {
// if(res.confirm){
// this.isTrue = true
// }
// }
// });
// return;
// }
// }
// }else{
this.startTime = year + '-' + e.days + ' ' + e.hours
this.isTrue = false
// }
},
getMsTime(artificerDate) {
let that = this;
let artificerId = that.jishiName.artificerId;
this.$Request.getT('/app/artificerTime/selectArtificerTimeListByArtificerId?artificerId=' + artificerId + '&artificerDate=' + artificerDate).then(res => {
if (res.code == 0) {
this.msTimeList = res.data;
console.log(res.data, "获取忙时时间")
}
})
},
// 打开弹窗
openData() {
this.isTrue = true
},
youhuijuan(){
uni.navigateTo({
url:'/my/hongbao/youhuijuanList?price='+this.orderXm.price+'&text='+'套餐'
})
},
textareaChange(e){//备注
this.textareaData=e.detail.value
console.log("adsadas0",this.textareaData)
},
checkboxChange(e){
this.couponId=e.detail.value.join(",")
},
youhuiF(couponId){//获取优惠卷
let that = this;
let data = {
page: 1,
limit: 10,
id:couponId,
}
that.$Request.get("/app/coupon/selectCouponUserList", data).then(res => {
if (res.code == 0) {
var list=res.data.list;
that.couponDataList=list.reduce((sum, item) => sum + item.money, 0)
console.log("asdasdasdasd",that.couponDataList)
} else {
that.$queue.showToast(res.msg)
}
});
},
youhui(){//获取优惠卷
let that = this
let data = {
status: 0,
page: 1,
limit: 10
}
that.$Request.get("/app/coupon/selectCouponUserList", data).then(res => {
if (res.code == 0) {
that.couponData=res.data.list
} else {
that.$queue.showToast(res.msg)
}
});
},
liliaoshi(){
var that=this
let massageTypeId = that.orderXm.massageTypeId;
let longitude = that.longitude;
let latitude = that.latitude;
let classifyId= that.orderXm.classifyId
let city=that.orderXm.city
let technicianType=that.orderXm.level
uni.setStorage({
key: 'taocanDd',
data: '我的套餐',
success: function () {
uni.navigateTo({
url: '/pages/therapist/therapistDingdan?massageTypeId='+massageTypeId+'&latitude='+latitude+'&longitude='+longitude+'&classifyId='+classifyId+'&city='+city+'&technicianType='+that.orderXm.level
})
}
});
},
getChuXing() {//判断这个城市 是不是在经营范围
this.$Request.getT('/app/artificer/selectTaxiMoney?artificerId=' + this.artificerId + '&latitude=' + this
.latitude + '&longitude=' + this.longitude).then(res => {
if (res.code == 0) {
this.cheFei = res.data.taxiMoney ? res.data.taxiMoney : 0;
// this.price = parseInt(this.price)+parseInt(this.cheFei).toFixed(2)
this.distances = res.data.distances
this.tripNum = res.data.tripNum
this.xuMoney = res.data.xuMoney
this.tripPrice = res.data.tripPrice
this.cxSel = true;
} else {
this.cxSel = false;
uni.showToast({
title: '当前城市暂未开通,请切换城市',
duration: 2000,
icon: 'none'
});
}
});
},
addressMy() {
this.$Request.getT('/app/address/selectAddressById').then(res => {
console.log(res)
if (res.code == 0) {
this.name = res.data.name;
this.mobile = res.data.phone;
this.cityaddress = res.data.province + res.data.city + res.data.district;
this.detailaddress = res.data.detailsAddress;
this.isDefault = res.data.isDefault;
this.userId = res.data.userId;
this.latitude = res.data.latitude;
this.longitude = res.data.longitude;
this.province = res.data.province
this.city = res.data.city
this.district = res.data.district
this.addressId = res.data.addressId
// this.getChuXing();
// this.$queue.setData('EditAddress', res.data.addressId);
}
});
},
// 选中地址
getAddressList(addressId) {
if (addressId) {
this.$Request.getT('/app/address/selectAddressByAddressId?addressId=' + this.addressId).then(res => {
console.log(res)
if (res.code == 0) {
this.name = res.data.name;
this.mobile = res.data.phone;
this.cityaddress = res.data.province + res.data.city + res.data.district;
this.detailaddress = res.data.detailsAddress;
this.isDefault = res.data.isDefault;
this.userId = res.data.userId;
this.latitude = res.data.latitude;
this.longitude = res.data.longitude;
this.province = res.data.province
this.city = res.data.city
this.district = res.data.district
// this.getChuXing();
}
// uni.hideLoading();
});
} else {
uni.navigateTo({
url: '../address/address?id=' + 4
})
}
},
changeLog(e){//服务时间
this.single=e;
},
goChat() {
let kefu = this.$queue.getData('kefu'); // 用户端联系方式 1 手机号 2企业微信
let kefuPhone = this.$queue.getData('kefuPhone');
if (uni.getStorageSync('token')) {
if (kefu == 1) {
uni.makePhoneCall({
phoneNumber: kefuPhone //仅为示例
});
} else if (kefu == 3) {
uni.navigateTo({
url: '/my/setting/customer'
});
} else {
// #ifdef MP-WEIXIN
let that = this
try {
wx.openCustomerServiceChat({
extInfo: {
url: that.$queue.getData('kefuUrl')
},
corpId: that.$queue.getData('kefuAppId'),
success(res) {},
fail(res) {
console.error(res)
}
})
} catch (error) {
console.error("catchcatch" + error)
uni.showToast({
title: '请更新至微信最新版本'
});
}
// #endif
// #ifndef MP-WEIXIN
let url = this.$queue.getData('kefuUrl');
if (url.indexOf('/pages/') !== -1 || url.indexOf('/my/') !== -1) {
uni.navigateTo({
url
});
} else {
//#ifndef H5
uni.navigateTo({
url: '/pages/index/webView?url=' + url
});
//#endif
//#ifdef H5
window.location.href = url;
//#endif
}
// #endif
}
} else {
uni.showModal({
title: '提示',
content: '您还未登录,请先登录',
success: function(res) {
if (res.confirm) {
console.log('用户点击确定');
uni.navigateTo({
url: '/pages/public/login'
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
})
}
},
copy(num) {
uni.setClipboardData({
data: num,
success: r => {
this.$queue.showToast('复制成功');
}
});
},
payJZ() {
let that = this;
if (that.openWay == 1) { //零钱支付
uni.showModal({
title: '付款提示',
content: '确认支付' + that.tpayMoney + '元吗?',
success: function(re) {
if (re.confirm) {
that.$queue.showLoading('支付中...')
// console.log('用户点击确定');
that.$Request.post("/app/artificer/payOrders", {
ordersId: that.ordersId,
}).then(ret => {
uni.hideLoading();
if (ret.code == 0) {
uni.showToast({
title: '支付成功',
icon: 'none'
})
// that.getOrder()
} else {
uni.showToast({
title: ret.msg,
icon: 'none'
})
}
});
} else if (re.cancel) {
// that.getOrder()
}
}
})
} else if (that.openWay == 2) { //微信支付
// #ifdef MP-WEIXIN
let data = {
ordersId: that.tordersId,
type: 3
}
that.$Request.post('/app/wxPay/payOrder', data).then(ret => {
console.log(ret)
if (ret.code == 0) {
uni.hideLoading();
uni.requestPayment({
provider: 'wxpay',
timeStamp: ret.data.timestamp,
nonceStr: ret.data.noncestr,
package: ret.data.package,
signType: ret.data.signType,
paySign: ret.data.sign,
success: function(ret) {
console.log(ret)
uni.showToast({
title: '支付成功',
icon: 'none'
})
// that.getOrder()
// this.$queue.showToast('支付成功');
// uni.switchTab({
// url: '/pages/my/index'
// })
},
fail: function(err) {
// this.$queue.showToast('支付失败');
uni.showToast({
title: '支付失败',
icon: 'nones'
});
// that.getOrder()
}
});
}
});
// #endif
// #ifdef H5
let ua = navigator.userAgent.toLowerCase();
if (ua.indexOf('micromessenger') != -1) {
let data = {
ordersId: that.tordersId,
type: 2
}
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
that.showpay = false
if (rea.code == 0) {
that.callPay(rea.data);
} else {
uni.showToast({
title: rea.msg,
icon: 'none'
})
}
});
} else {
let data = {
ordersId: that.tordersId,
type: 4
}
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
that.showpay = false
if (rea.code == 0) {
const urlArr = window.location.href;
const hostUrl = urlArr.split("/");
const callBack = hostUrl[0] + "//" + hostUrl[2] + "/";
const url = '&redirect_url=' + callBack + 'my/order/pay';
window.location = rea.data.mweb_url + url
} else {
uni.showToast({
title: rea.msg,
icon: 'none'
})
}
});
}
// #endif
// #ifdef APP
let data = {
ordersId: that.order.ordersId,
type: 1
}
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
console.log(rea)
that.showpay = false
if (rea.code == 0) {
that.isCheckPay(rea.code, 'wxpay', JSON.stringify(rea.data));
}
});
// #endif
} else if (that.openWay == 3) { //支付宝支付
// #ifdef H5
let data = {
ordersId: that.tordersId,
type: 2
}
that.$Request.post('/app/aliPay/payOrder', data).then(
rea => {
that.showpay = false
const div = document.createElement('div')
div.innerHTML = rea.data //此处form就是后台返回接收到的数据
document.body.appendChild(div)
document.forms[0].submit()
});
// #endif
// #ifdef APP-PLUS
let data = {
ordersId: that.tordersId,
type: 1
}
that.$Request.post('/app/aliPay/payOrder', data).then(
rea => {
that.showpay = false
that.setPayment('alipay', rea.data);
});
// #endif
}
},
saveJZ(classifyId) {
let data = {
parentId: classifyId,
page: 1,
limit: 50,
status: 1
}
let that = this;
this.$queue.showLoading('查询中...')
that.$Request.get("/app/artificer/selectMassageTypePage", data).then(res => {
if (res.code == 0) {
if (res.data.list && res.data.list.length > 0) {
that.orderList = res.data.list
for (let i = 0; i < that.orderList.length; i++) {
if (that.orderList[i].labels) {
that.orderList[i].labels = that.orderList[i].labels.split(",");
}
}
uni.hideLoading();
that.showorder = true;
} else {
uni.hideLoading();
that.$queue.showToast('暂无可加钟项目');
}
} else {
uni.hideLoading();
that.$queue.showToast(res.msg);
}
})
},
//支付选择
selectWay: function(item) {
this.openWay = item.id;
},
//换算年龄
getAge(e) {
console.log('出生日期:' + e)
this.birthDate = e
//创建系统日期
var today = new Date();
//把出生日期转换成日期
this.birthDate = new Date(this.birthDate);
//分别获取到年份后相减
this.age = today.getFullYear() - this.birthDate.getFullYear();
// console.log(this.age+'当前年龄')
},
// 修改订单地址
undateAdd(order) {
if (order.state == 0) {
uni.navigateTo({
url: '../address/address?order=' + order.ordersId + '&id=' + 3
})
}
},
// 一键导航
bindGps(latitude, longitude, name, detailsadd) {
console.log(latitude, longitude, name, detailsadd)
uni.openLocation({
latitude: latitude - 0, //要去的纬度-地址
longitude: longitude - 0, //要去的经度-地址
name: name, //地址名称
address: detailsadd, //详细地址名称
success: function() {
console.log('导航成功');
},
fail: function(error) {
console.log(error)
}
});
},
ysPhone(phoneA, phoneB) {
this.$Request.getT('/app/user/insertVirtualPhone?phoneA=' + phoneA + '&phoneB=' + phoneB).then(res => {
if (res.code == 0) {
this.order.artificer.phone = res.data;
}
});
},
// 拨打电话
bindphone(phone) {
let that = this
uni.showModal({
title: '提示',
content: '是否拨打电话',
success: function(res) {
if (res.confirm) {
console.log('用户点击确定', phone);
uni.makePhoneCall({
phoneNumber: phone //仅为示例
});
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
goNav(e) {
uni.navigateTo({
url: e
})
},
getOrder() {
let data = {
ordersId: this.ordersId
}
this.$Request.get('/app/artificer/selectOrdersDetails', data).then(res => {
if (res.code == 0) {
this.loading = false
uni.hideLoading()
this.order = res.data
console.log(this.order);
let aliphone = this.$queue.getData('aliphone');
if (aliphone === '是' && this.order.artificer) {
this.ysPhone(this.order.phone, this.order.artificer.phone);
}
}
})
},
delOrder(e) {
let that = this
uni.showModal({
title: '提示',
content: '确定删除订单吗?',
success: function(res) {
if (res.confirm) {
let data = {
ordersId: e.ordersId,
}
that.$queue.showLoading('删除中...')
that.$Request.post('/app/artificer/removeOrders', data).then(res => {
uni.hideLoading();
if (res.code == 0) {
uni.showToast({
name: "删除成功"
})
uni.navigateBack()
} else {
that.$queue.showToast(res.msg);
}
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
getIsVip() {
this.$Request.get("/app/UserVip/isUserVip").then(res => {
if (res.code == 0) {
this.isVip = res.data
uni.setStorageSync('isVIP', res.data)
}
});
},
// 支付订单
pay() {
let that = this
this.showpay = false
// if (this.paySel != 0) {
// this.payJZ();
// return;
// }
uni.showModal({
title: '付款提示',
content: '确认支付' + that.tpayMoney + '元吗?',
success: function(re) {
if (re.confirm) {
that.$queue.showLoading('支付中...')
console.log('用户点击确定');
if (that.openWay == 1) { //零钱支付
that.$Request.post("/app/artificer/payOrders", {
ordersId: that.ordersId,
}).then(res => {
uni.hideLoading();
if (res.code == 0) {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
// that.getOrder()
} else {
uni.showToast({
title: res.msg,
icon: 'none'
})
}
});
} else if (that.openWay == 2) { //微信支付
that.$queue.showLoading('支付中...')
// #ifdef MP-WEIXIN
let data = {
ordersId: that.order.ordersId,
type: 3
}
that.$Request.post('/app/wxPay/payOrder', data).then(ret => {
console.log(ret)
if (ret.code == 0) {
uni.hideLoading();
uni.requestPayment({
provider: 'wxpay',
timeStamp: ret.data.timestamp,
nonceStr: ret.data.noncestr,
package: ret.data.package,
signType: ret.data.signType,
paySign: ret.data.sign,
success: function(ret) {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
// that.getOrder()
// this.$queue.showToast('支付成功');
// uni.switchTab({
// url: '/pages/my/index'
// })
},
fail: function(err) {
// this.$queue.showToast('支付失败');
uni.showToast({
title: '支付失败',
icon: 'nones'
});
// that.getOrder()
}
});
}
});
// #endif
// #ifdef H5
let ua = navigator.userAgent.toLowerCase();
if (ua.indexOf('micromessenger') != -1) {
let data = {
ordersId: that.order.ordersId,
type: 2
}
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
that.showpay = false
if (rea.code == 0) {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
that.callPay(rea.data);
} else {
uni.showToast({
title: rea.msg,
icon: 'none'
})
}
});
} else {
let data = {
ordersId: that.order.ordersId,
type: 4
}
// debugger;
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
// const urlArr = window.location.href;
// const hostUrl = urlArr.split("/");
// const callBack = hostUrl[0] + "//" + hostUrl[2] + "/";
// const url = '&redirect_url=' + callBack + 'my/order/pay';
// window.location = rea.mweb_url + url
that.showpay = false
if (rea.code == 0) {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
const urlArr = window.location.href;
const hostUrl = urlArr.split("/");
const callBack = hostUrl[0] + "//" + hostUrl[2] + "/";
const url = '&redirect_url=' + callBack + 'my/order/pay';
window.location = rea.data.mweb_url + url
} else {
uni.showToast({
title: rea.msg,
icon: 'none'
})
}
});
}
// #endif
// #ifdef APP
let data = {
ordersId: that.order.ordersId,
type: 1
}
that.$Request.post('/app/wxPay/payOrder', data).then(rea => {
console.log(rea)
that.showpay = false
if (rea.code == 0) {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
that.isCheckPay(rea.code, 'wxpay', JSON.stringify(rea.data));
}
});
// #endif
} else if (that.openWay == 3) { //支付宝支付
that.$queue.showLoading('支付中...')
// #ifdef H5
let data = {
ordersId: that.order.ordersId,
type: 2
}
that.$Request.post('/app/aliPay/payOrder', data).then(
rea => {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
const div = document.createElement('div')
div.innerHTML = rea.data //此处form就是后台返回接收到的数据
document.body.appendChild(div)
document.forms[0].submit()
});
// #endif
// #ifdef APP-PLUS
let data = {
ordersId: that.order.ordersId,
type: 1
}
that.$Request.post('/app/aliPay/payOrder', data).then(
rea => {
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '/pages/my/index'
})
that.setPayment('alipay', rea.data);
});
// #endif
}
} else if (re.cancel) {
uni.hideLoading();
console.log('用户点击取消');
}
}
})
},
callPay: function(response) {
if (typeof WeixinJSBridge === "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady(response), false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady(response));
document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady(response));
}
} else {
this.onBridgeReady(response);
}
},
onBridgeReady: function(response) {
let that = this;
if (!response.package) {
return;
}
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
"appId": response.appid, //公众号名称,由商户传入
"timeStamp": response.timestamp, //时间戳自1970年以来的秒数
"nonceStr": response.noncestr, //随机串
"package": response.package,
"signType": response.signType, //微信签名方式:
"paySign": response.sign //微信签名
},
function(res) {
if (res.err_msg === "get_brand_wcpay_request:ok") {
// 使用以上方式判断前端返回,微信团队郑重提示:
//res.err_msg将在用户支付成功后返回ok但并不保证它绝对可靠。
uni.hideLoading();
uni.showToast({
title: '支付成功',
icon: 'none'
})
// that.getOrder()
} else {
uni.hideLoading();
}
WeixinJSBridge.log(response.err_msg);
}
);
},
isCheckPay(code, name, order) {
if (code == 0) {
this.setPayment(name, order);
} else {
uni.hideLoading();
uni.showToast({
title: '支付信息有误'
});
}
},
setPayment(name, order) {
let that = this
uni.requestPayment({
provider: name,
orderInfo: order, //微信、支付宝订单数据
success: function(res) {
uni.hideLoading();
uni.showToast({
title: '支付成功',
icon: 'none'
})
// that.getOrder()
},
fail: function(err) {
uni.hideLoading();
},
complete() {
uni.hideLoading();
}
});
},
// 取消订单
cancelOrder(e) {
let that = this
uni.showModal({
title: '温馨提示',
content: '是否确认取消订单?',
success: function(res) {
if (res.confirm) {
let data = {
ordersId: e.ordersId
}
that.$queue.showLoading('提交中...')
that.$Request.post('/app/artificer/deleteOrders', data).then(res => {
uni.hideLoading();
if (res.code == 0) {
that.getOrder()
uni.showToast({
title:'操作成功!'
})
} else {
that.$queue.showToast(res.msg);
}
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
// 完成订单
cancel(e) {
let that = this
uni.showModal({
title: '提示',
content: '确认完成订单吗?',
success: function(res) {
if (res.confirm) {
let data = {
ordersId: e.ordersId,
}
that.$queue.showLoading('提交中...')
that.$Request.post('/app/artificer/accomplishOrders', data).then(res => {
uni.hideLoading();
if (res.code == 0) {
uni.navigateBack()
} else {
that.$queue.showToast(res.msg);
}
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
goMsg() {
let data = {
userId: uni.getStorageSync('userId'),
focusedUserId: this.order.user.userId
}
this.$Request.postJson('/app/chat/insertChatConversation ', data).then(res => {
if (res.code == 0) {
let id = this.order.user.userId == res.data.userId ? res.data.focusedUserId : this.order
.user.userId
uni.navigateTo({
url: '/pages/msg/im?chatConversationId=' + res.data.chatConversationId +
'&byUserId=' + id
})
}
})
},
}
}
</script>
<style lang="scss" scoped>
.kuaijie-btn{
width: 100%;
height: 40px;
text-align: center;
line-height: 40px;
font-weight: bold;
font-size: 14px;
margin-top: 10px;
// color: #049F89;
}
.huiBtn {
color:#333;
background: #f3f3f3;
}
.lanBtn {
color:#fff;
background: #049F89;
}
.guke-btn {
width: 24%;
line-height: 34px;
text-align: center;
font-weight: bold;
font-size: 11px;
border-radius: 6px;
margin-top: 5px;
margin-right: 2px;
}
.guke-list {
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
flex-wrap: wrap;
box-sizing: border-box;
background-color: #fff;
justify-content: space-between;
}
.textarea-pay-list{
width: 100%;
height: 120px;
margin-top: 10px;
}
.textarea-pay{
background-color: #f3f3f3;
width: 100%;
height: 100%;
background: #F3F3F3;
border-radius: 14rpx;
padding: 7px;
}
.pay-ding{
padding-bottom: 15px;
}
.pay-ding,.feiuong{
background-color: #ffffff;
border-radius: 24rpx;
margin-top: 24rpx;
// padding: 29rpx;
}
.view-more{
display:inline-block;
border-top:1px solid;
border-right:1px solid;
width: 15rpx;
height: 15rpx;
border-color:#999;
transform:rotate(45deg);
margin-top: 14rpx;
}
.tetx-sm{
font-size: 30rpx;
color:#888;
}
.ske-padding{
padding: 5rpx 30rpx 36rpx 30rpx;
}
.header-bottom-money{
width: 100%;
display: flex;
flex-direction: row;
align-items: flex-end;
}
.detail-view-mina{
width: 68%;
display: flex;
flex-direction: column;
justify-content: space-around;
}
.detail-view-img{
width: 76px;
height: 76px;
border-radius: 9px;
}
.detail-view{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.head-bottom{
width: 68%;
display: flex;
flex-direction: column;
justify-content: space-around;
}
.money-pay-jia{
font-weight: 400;
font-size: 25rpx;
color: #666666;
text-decoration-line: line-through;
margin-left: 5px;
}
.money-pay-zhen span{
color: #FF6000;
font-size: 32rpx;
font-weight: bold;
}
.money-pay-zhen{
display: flex;
flex-direction: row;
align-items: center;
}
.money-pay{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.head-top{
background-color: #ffffff;
border-radius: 24rpx;
padding: 29rpx;
margin-top: 10px;
}
.header-bottom-money-zhen span{
color: #F95900 ;
}
.header-bottom-money-zhen{
display: flex;
flex-direction: row;
align-items: baseline;
justify-content: space-between;
}
.detail-foot-nav-bor{
width: 64px;
height: 11rpx;
border-radius: 6rpx;
position: absolute;
bottom: 0;
background: linear-gradient(90deg,rgba(234, 248, 245,0.7),rgba(132, 211, 196,0.7));
}
.detail-foot-nav-text{
font-weight: bold;
font-size: 32rpx;
color: #000000;
}
.detail-foot-nav{
width: 90%;
display: flex;
flex-direction: column;
position: relative;
margin: 8px auto;
}
.detail-foot-title{
width: 115px;
height: 32px;
background-image: url(../../static/servicePackage/horn.png);
background-repeat: no-repeat;
background-size: 100% 100%;
font-weight: 400;
font-size: 13px;
color: #FFFFFF;
text-align: right;
line-height: 32px;
padding-right: 15px;
position: absolute;
right: 0;
top: 0;
}
.detail-foot-list-top{
width: 95%;
display: flex;
flex-direction: row;
align-items: center;
}
.detail-foot-list{
width: 95%;
border-radius: 21rpx;
position: relative;
margin: 6px 0px 5px 0px;
padding: 15px;
display: flex;
flex-direction: column;
background-color: #fff;
}
.detail-foot{
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
padding: 15px 0px;
}
.tese span:nth-child(1){
font-weight: bold;
font-size: 22rpx;
color: #333333;
}
.tese span:nth-child(2){
font-weight: 400;
font-size: 22rpx;
color: #8D9194;
}
.tese{
width: 100%;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2; /* 显示的行数,可以根据需要修改 */
overflow: hidden;
text-overflow: ellipsis;
}
.detail-foot-list-top span:nth-child(1){
font-weight: bold;
font-size: 31rpx;
color: #3F3F3F;
}
.detail-foot-list-top span:nth-child(2){
width: 76rpx;
height: 33rpx;
line-height: 33rpx;
text-align: center;
border-radius: 16rpx;
border: 1px solid #7D7D7D;
font-weight: 400;
font-size: 20rpx;
color: #777777;
margin: 0px 25px 0px 5px;
}
.detail-foot-list-top span:nth-child(3){
font-weight: 400;
font-size: 28rpx;
color: #029d88;
}
.detail-foot-mian{
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
/deep/uni-checkbox .uni-checkbox-input{
width: 26px;
height: 26px;
border-radius: 50%;
}
.youhui-img{
width: 111.81rpx;
height: 111.81rpx;
}
.youhui-view-right-btn{
width: 158rpx;
height: 64rpx;
background: linear-gradient(-90deg, #019C88, #2DC48E);
border-radius: 32rpx;
text-align: center;
line-height: 64rpx;
font-weight: 400;
font-size: 28rpx;
color: #FFFFFF;
text-shadow: 0rpx 2rpx 4rpx rgba(0,119,104,0.44);
margin-left: 10px;
}
.youhui-view-right-time{
font-weight: 400;
font-size: 22rpx;
color: #999999;
}
.youhui-view-right-title{
width: 110px;
font-weight: 400;
font-size: 32rpx;
color: #333333;
}
.youhui-view-right-top{
display: flex;
flex-direction: column;
align-items: center;
}
.youhui-view-right{
width: 502.08rpx;
height: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-around;
}
.youhui-view-left-bottom{
font-weight: 400;
font-size: 22rpx;
color: #FFFFFF;
}
.youhui-view-left-yuan{
display: flex;
flex-direction: row;
align-items: baseline;
color: #FFFFFF;
}
.youhui-view-left-num{
font-weight: bold;
font-size: 89rpx;
}
.youhui-view-left-text{
font-weight: bold;
font-size:24.31rpx;
}
.youhui-view-left{
width: 199rpx;
height: 242rpx;
display: flex;
flex-direction:column;
align-items: center;
justify-content: center;
}
.youhui-yiyong{
background-image: url('../../static/youhuijuan/coupons7.png');
}
.youhui-weiyong{
background-image: url('../../static/youhuijuan/coupons1.png');
}
.youhui-list{
width: 95%;
display: flex;
flex-direction: row;
height: 242rpx;
border-radius: 21rpx;
background-size: 100%;
margin: 20px auto;
justify-content: space-between;
}
.dingwei-image{
margin-right: 20rpx;
width: 66rpx;
height: 66rpx;
padding: 10rpx 0;
border-radius: 50%;
background: linear-gradient(90deg, #029d88, #2fc094);
text-align: center;
line-height: 66rpx;
}
/deep/.skeleton-fade{
display: none;
}
/deep/.u-button-pay{
width: 381rpx;
height: 76rpx;
line-height: 76px;
text-align: center;
color: #fff;
font-size: 32rpx;
background: linear-gradient(90deg, #029d88, #2fc094);
border-radius: 60rpx;
}
.daizhifu{
font-size: 38rpx;
color: #333333;
}
.pay-zhifu{
width: 100%;
background-color: #f7f7f7 !important;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between !important;
}
.liliao{
margin-top: 17px;
}
.fuwu-time-view{
text-align: right;
}
.liliao-top span:nth-child(2){
width: 78rpx;
height: 35rpx;
line-height: 35rpx;
background: linear-gradient(90deg, #FE912E, #FF9970);
border-radius: 17rpx;
text-align: center;
font-weight: 400;
font-size: 25rpx;
color: #FFFFFF;
margin-left: 5px;
}
.fuwu-time-view span:nth-child(1),.liliao-bottom span:nth-child(1){
font-weight: 400;
font-size: 30rpx;
color: #888;
margin-right: 5px;
}
.fuwu-time-view,.liliao-top{
width: 70%;
display: flex;
flex-direction: row;
align-items: center;
}
.fuwu-title,.liliao-top span:nth-child(1){
font-size: 30rpx;
color: #222222;
}
.fuwu-time,.liliao{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.adders-view image{
margin-top: 5px;
}
.xuanzhe{
background: linear-gradient(90deg, #029d88, #2fc094);
color: #ffffff;
margin-left: 5px;
border-radius: 15px;
height: 25px;
line-height: 25px;
width: 50px;
text-align: center;
font-size: 14px;
padding:6rpx 16rpx
}
.header-view-data{
display: flex;
flex-direction: row;
align-items: center;
}
.adders-view span,.header-view-data{
font-size: 29rpx;
color: #888;
text-align: right;
}
.adders-view{
display: flex;
flex-direction: row;
position: relative;
}
.header-view-text{
width: 170rpx;
font-size: 29rpx;
color: #222222;
}
.header-view{
background-color: #fff;
border-radius: 11px;
}
.head-foot span:nth-child(1){
margin-right: 5px;
}
.head-foot span{
font-weight: bold;
font-size: 28rpx;
color: #222222;
}
.head-foot{
display: flex;
flex-direction: row;
justify-content: flex-end;
margin-top: 10px;
}
.head-mian{
margin-top: 3px;
}
.qian-right span:nth-child(1){
font-size: 16.67rpx;
}
.qian-right span:nth-child(2){
font-size:25rpx;
}
.qian-right span{
color: #727272;
}
.qian-left span:nth-child(1){
font-size: 25rpx;
}
.qian-left span:nth-child(2){
font-size:29.17rpx;
}
.qian-left span{
color: #F95900;
}
.head-top-view-right-img,.adders-view image,.fuwu-img{
width: 9.38rpx;
height: 15.83rpx;
}
.head-top-title-bottom{
margin-top: 10px;
}
.head-top-title,.head-top-title-bottom,.head-mian{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.head-top-view-right{
width: 83%;
display: flex;
flex-direction: column;
}
.head-top-view-img{
width: 98.61rpx;
height: 98.61rpx;
}
.head-top-view{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.head-top{
width: 100%;
background-color: #ffffff;
border-radius: 24rpx;
padding: 29rpx;
}
.d-title{
font-weight: bold;
font-size: 32rpx;
color: #333333;
display: flex;
flex-direction: row;
justify-content: space-between;
}
.checkbox-data{
padding: 0px 11px;
margin: 15px 0px;
}
.list-pay-text span:nth-child(2){
padding-left: 5px;
}
.list-pay-text{
display: flex;
flex-direction: column;
width: 100%;
font-weight: 400;
font-size: 24rpx;
color: #999999;
line-height: 42rpx;
}
.list-pay{
width: 100%;
}
.pay-ding-top{
width: 100%;
height: 80rpx;
padding: 0px 29rpx;
}
.fei-view-list span,.fei-view-list-z span{
font-weight: bold;
font-size: 25rpx;
}
.fei-view-list-z{
height: 65rpx;
background-color: rgba(247, 247, 247, 0.8);
border-radius: 33rpx;
padding: 0px 5px;
}
.fei-view-list span:nth-child(1),.fei-view-list-z span:nth-child(1){
color: #666666;
}
.fei-view-list span:nth-child(2){
color: #333333;
}
.fei-view-list,.fei-view-list-z{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
margin-top: 5px;
}
.fei-view{
width: 100%;
display: flex;
flex-direction: column;
}
.fei-title{
width: 100%;
text-align: center;
font-weight: bold;
font-size: 29rpx;
color: #333333;
padding-bottom: 10px;
margin-bottom: 10px;
border-bottom: 1px solid #E5E5E5;
}
.feiuong{
padding: 29rpx;
}
/deep/.uni-textarea-textarea{
font-weight: 400;
font-size: 25rpx;
}
/deep/.uni-textarea-placeholder{
font-weight: 400;
font-size: 25rpx;
color: #C5C5C5;
}
.textarea-pay-list{
width: 100%;
height: 120px;
margin-top: 10px;
}
.textarea-pay{
background-color: #f3f3f3;
width: 100%;
height: 100%;
background: #F3F3F3;
border-radius: 14rpx;
padding: 7px;
}
.pay-ding{
padding-bottom: 15px;
}
.pay-ding,.feiuong{
background-color: #ffffff;
border-radius: 24rpx;
margin-top: 24rpx;
// padding: 29rpx;
}
.phone-pay{
width: 49rpx;
height: 44rpx;
}
.d-touxiang{
width: 46rpx;
height: 46rpx;
border-radius: 50%;
}
.money-pay-jia{
font-weight: 400;
font-size: 25rpx;
color: #666666;
text-decoration-line: line-through;
margin-left: 5px;
}
.money-pay-zhen span{
color: #FF6000;
}
.money-pay-zhen span:nth-child(1){
font-size: 25rpx;
}
.money-pay-zhen span:nth-child(2){
font-size: 31.25rpx;
font-weight: bold;
}
.money-pay-zhen{
display: flex;
flex-direction: row;
align-items: center;
}
.money-pay{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
}
.content{
padding-top: 1px;
width: 100%;
background-color: #f7f7f7;
}
.pay-title{
font-weight: bold;
font-size: 32rpx;
color: #333333;
margin-bottom: 12px;
}
page {
background: #f7f7f7;
}
.bgImg {
background-image: url('https://admin.sjajk.com/file/uploadPath/2023/01/03/02952e7260e553d0f3bb26a1cd154921.png');
background-size: 100% 1161rpx;
}
.bg {
background: #fff;
}
.list_item {
// width: 650upx;
// height: 160upx;
width: 92%;
// margin: 30rpx 0;
background: #FFFFFF;
border-radius: 24upx;
padding: 20upx;
display: flex;
margin-top: 26upx;
.listitem_rightview {
margin-left: 20upx;
width: 80%;
padding-top: 10rpx;
.btnview {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 12upx;
width: 100%;
}
.titleview {
display: flex;
align-items: flex-end;
justify-content: space-between
}
.moneyview {
display: flex;
align-items: flex-end;
image {
width: 30upx;
height: 30upx;
margin-left: 20upx;
margin-bottom: 2upx;
}
}
.item_time {
font-size: 24upx;
font-family: PingFang SC;
font-weight: 500;
color: #999999;
margin-left: 10upx;
}
.item_money {
font-size: 32upx;
font-family: PingFang SC;
font-weight: 800;
color: #FF1200;
}
.item_oldmoney {
font-size: 24upx;
font-family: PingFang SC;
font-weight: 500;
text-decoration: line-through;
color: #999999;
margin-left: 10upx;
}
.item_btn {
width: 140upx;
height: 56upx;
background: linear-gradient(to right, #223845, #00a85b);
border-radius: 16upx;
text-align: center;
line-height: 56upx;
font-size: 24upx;
font-family: PingFang SC;
font-weight: 500;
color: #FFFFFF;
}
.item_yishou {
font-size: 22upx;
font-family: PingFang SC;
font-weight: 500;
color: #999999;
}
.item_title {
font-size: 28upx;
font-family: PingFang SC;
font-weight: bold;
color: #1E1F31;
}
}
image {
width: 220upx;
height: 160upx;
border-radius: 24upx;
}
}
.jz_btn {
width: 170rpx;
height: 56upx;
background: #096f4b;
margin-left: 40rpx;
border-radius: 35rpx;
line-height: 56upx;
text-align: center;
font-size: 28rpx;
font-family: PingFang SC;
font-weight: bold;
color: #FFFFFF;
}
.tabber {
width: 100%;
background: #ffffff;
position: fixed;
bottom: 0;
left: 0;
right: 0;
justify-content: center;
height: 127rpx;
padding: 0 30rpx;
}
.box {
/* border: 1px solid #005dff; */
background: #E8FAE1;
border-radius: 4rpx;
color: #096f4b;
padding: 5upx 10upx;
font-size: 22rpx;
margin-top: 10rpx;
}
.popup_pay {
width: 100%;
height: 210px;
position: relative;
padding-bottom: 45rpx;
/* #ifndef MP-WEIXIN */
/* height: 130px; */
/* #endif */
}
.push-button{
width: 100%;
height: 48px;
position: fixed;
bottom: 0px;
display: flex;
flex-direction: column;
align-items: center;
margin: 0 auto;
}
.pay_btn {
display: inline-block;
width: 92%;
text-align: center;
background: linear-gradient(90deg, #019C88, #28BA92, #35C495);
height: 40px;
border-radius: 28px;
color: #ffffff;
line-height: 40px;
margin-top: 4px;
font-size: 34rpx;
}
.serverAddress {
display: flex;
justify-content: space-between;
align-items: center;
}
.header-margin{
margin:20rpx;
}
.header-padd{
padding:30rpx;
}
.heaer-height{
height: 80rpx;
align-items: center;
}
.head-title{
font-weight: bold;
font-size: 32rpx;
color: #333333;
}
.head-title-right{
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
font-weight: bold;
}
.title-font{
font-size: 30rpx;
color: #666666;
}
.value-font{
font-size: 30rpx;
color: #333333;
}
.jusitify-line{
height: 78rpx;
padding: 20rpx 0;
display: flex;
justify-content: space-between;
}
.jusitify-line-end{
height:1px;
border-bottom: 1px #e5e5e5 solid;
margin: 30rpx 0;
}
.item-view-biao{
padding: 1px 5px;
border-radius: 15rpx 3rpx 15rpx 3rpx;
width: 50px;
text-align: center;
}
.xiaoer{
background-color:#f1f8d7;
color: #58b314;
}
.add-content{
background: #FFFFFF url(../../static/address/map.png)no-repeat top right;
background-size:40%;
padding: 30rpx;
border-radius: 24rpx;
margin-top: 24rpx;
}
.Service-add{
font-size:30rpx;
color: #333;
border-radius:5rpx;
}
.Service-Address{
font-size:34rpx;
color: #333;
font-weight: bold;
padding: 6rpx 0;
flex-direction: column;
}
.Service-name{
font-size: 30rpx;
color: #333;
display: flex;
align-items: flex-end;
padding:4rpx 0;
}
.Service-name span:nth-child(1){
font-size:30rpx;
color:#333;
margin-right: 15rpx;
}
.Service-name span:nth-child(2){
font-size:30rpx;
color:#666;
}
</style>