|
|
@@ -0,0 +1,577 @@
|
|
|
+<template>
|
|
|
+ <div class="order-bg">
|
|
|
+ <div class="order-top clearfix">
|
|
|
+ <div class="order-type">
|
|
|
+ <img src="@/assets/images/order/order_icon.png" class="order-icon" alt="" />
|
|
|
+ <span>{{orderTypeCn}}</span>
|
|
|
+ </div>
|
|
|
+ <p class="order-time" v-if="orderDetail.status === 1 && cancelTime"><van-count-down :time="cancelTime" /> 后自动取消订单</p>
|
|
|
+ <!-- <p class="order-count">订单金额: {{orderDetail.total_price | getAcounting()}}</p> -->
|
|
|
+ </div>
|
|
|
+ <div class="order-address">
|
|
|
+ <img src="@/assets/images/order/location.png" class="address-img" alt="" />
|
|
|
+ <div class="address-info">
|
|
|
+ <div class="info-name">
|
|
|
+ <p>
|
|
|
+ {{orderDetail.contact}}
|
|
|
+ <small class="info-tel">{{orderDetail.tel}}</small>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="address-text">
|
|
|
+ {{orderDetail.address}}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="order-product">
|
|
|
+ <div class="product-top clearfix" @click="toProduct">
|
|
|
+ <van-image class="product-img" fit="cover" :src="orderDetail.project_image" />
|
|
|
+ <div class="product-info">
|
|
|
+ <p class="product-name">{{orderDetail.project_name}}</p>
|
|
|
+ <p class="product-money" v-if="!orderDetail.pay_jf">¥<span class="money-text">{{orderDetail.price | getAcounting('')}}</span><span class="money-count">x {{orderDetail.count}}</span></p>
|
|
|
+ <p class="product-money"><span class="money-text">{{orderDetail.pay_jf}} 积分</span><span class="money-count">x {{orderDetail.count}}</span></p>
|
|
|
+ <p>{{orderDetail.buy_card_fee || userCheck.is_vip ? '(会员价)' : ''}}</p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <van-divider :style="{ borderColor: '#eee', margin: '0' }" />
|
|
|
+
|
|
|
+ <div class="product-bottom">
|
|
|
+ <div class="detail-item clearfix">
|
|
|
+ <div class="detail-left">商品总价{{orderDetail.buy_card_fee || userCheck.is_vip ? '(会员价)' : ''}}</div>
|
|
|
+ <p class="detail-right" v-if="!orderDetail.pay_jf">{{productTotal | getAcounting()}}</p>
|
|
|
+ <p class="detail-right" v-else>{{orderDetail.pay_jf}} 积分</p>
|
|
|
+ </div>
|
|
|
+ <div class="detail-item clearfix" v-if="orderDetail.buy_card_fee">
|
|
|
+ <div class="detail-left">会员卡</div>
|
|
|
+ <div class="detail-right">{{orderDetail.buy_card_fee | getAcounting}}</div>
|
|
|
+ </div>
|
|
|
+ <div class="detail-item clearfix" v-if="orderDetail.pay_balance">
|
|
|
+ <div class="detail-left">余额抵扣</div>
|
|
|
+ <div class="detail-right">-{{orderDetail.pay_balance | getAcounting()}}</div>
|
|
|
+ </div>
|
|
|
+ <div class="detail-item clearfix" v-if="orderDetail.status > 2">
|
|
|
+ <p class="detail-left1" v-if="!orderDetail.pay_jf">{{orderDetail.status > 1 ? '需':'实'}}付款</p>
|
|
|
+ <p class="detail-left1" v-else>积分抵扣</p>
|
|
|
+ <div class="detail-right1">
|
|
|
+ <span v-if="!orderDetail.pay_jf">{{orderDetail.pay_price | getAcounting()}}</span>
|
|
|
+ <span v-else>{{orderDetail.pay_jf}} 积分</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="order-dec">
|
|
|
+ <div class="dec-title">订单信息</div>
|
|
|
+ <div class="dec-info">
|
|
|
+ <p class="info-item">订单编号: {{orderDetail.order_id}} <van-button class="dec-copy" round plain type="primary" color="#ff484c" :data-clipboard-text="orderDetail.order_id" @click="copy(1)">复制</van-button></p>
|
|
|
+ <p class="info-item">下单时间: {{orderDetail.create_time_unix | formatTime}}</p>
|
|
|
+ <p class="info-item" v-if="orderDetail.dispatch_no">快递单号:{{orderDetail.dispatch_no}} <van-button class="dec-copy1" round plain type="primary" color="#ff484c" :data-clipboard-text="orderDetail.dispatch_no" @click="copy(2)">复制</van-button></p>
|
|
|
+ <p class="info-item" v-if="orderDetail.dispatch_company">快递公司:{{orderDetail.dispatch_company}}</p>
|
|
|
+ <!-- <p class="info-item">备注:{{orderDetail.remark?orderDetail.remark:'-'}}</p> -->
|
|
|
+ <!-- <div class="info-item" v-if="orderDetail.order_state !== 1">支付方式: 微信支付</div> -->
|
|
|
+ <!-- <div class="info-item" v-if="orderDetail.order_state !== 1">下单时间: {{orderDetail.create_time | formatTime}}</div> -->
|
|
|
+ </div>
|
|
|
+ <van-divider :style="{ borderColor: '#eee', margin: '0' }" />
|
|
|
+ <div class="dec-bottom" @click="serviceDialogClick">
|
|
|
+ <img class="dec-icon" src="@/assets/images/order/service_icon.png" alt="" />
|
|
|
+ <div class="dec-kefu">联系客服</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="order-bottom" v-if="btnCn || orderDetail.order_state <= 2">
|
|
|
+ <div class="bottom-btn">
|
|
|
+ <van-button class="btn btn1" round plain type="primary" color="#ff484c" v-if="btnCn" @click="postClick">{{btnCn}}</van-button>
|
|
|
+ <van-button class="btn" round plain type="primary" color="#999999" v-if="orderDetail.status === 1" @click="btnClick('cancel')">取消订单</van-button>
|
|
|
+ <!-- <van-button class="btn" round plain type="primary" color="#999999" v-if="orderDetail.status === 2" @click="deleteOrder">删除订单</van-button> -->
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <service-dialog :show="showServiceDialog" :serviceData="serviceData" />
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import Vue from 'vue'
|
|
|
+import { mapGetters } from 'vuex'
|
|
|
+import Clipboard from 'clipboard'
|
|
|
+import { Image as VanImage, Divider, CountDown } from 'vant'
|
|
|
+import ServiceDialog from '@/components/dialog/Service'
|
|
|
+// import localStorage from '@/common/localStorage'
|
|
|
+const CHANNEL_KEY = 'channel'
|
|
|
+export default {
|
|
|
+ name: 'userOrderDetail',
|
|
|
+ data () {
|
|
|
+ return {
|
|
|
+ now: new Date().getTime(),
|
|
|
+ showServiceDialog: false,
|
|
|
+ oid: this.$route.params.order_id,
|
|
|
+ payData: {},
|
|
|
+ serviceData: {
|
|
|
+ title: '添加客服',
|
|
|
+ desc: '长按扫描二维码,添加售后客服',
|
|
|
+ remark: '有关商品售后问题可咨询客服',
|
|
|
+ url: 'http://world-wine.oss-cn-shenzhen.aliyuncs.com/shareImg/service_code.jpg'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ ...mapGetters(['orderDetail', 'userCheck']),
|
|
|
+ cancelTime: function () {
|
|
|
+ let time = Math.round(this.orderDetail.create_time_unix * 1000 + 30 * 60 * 1000 - this.now)
|
|
|
+ if (time < 0) {
|
|
|
+ return 0
|
|
|
+ }
|
|
|
+ return time
|
|
|
+ },
|
|
|
+ orderTypeCn: function () {
|
|
|
+ let type = this.orderDetail.status
|
|
|
+ if (type === 1) {
|
|
|
+ return '等待买家付款'
|
|
|
+ } else if (type === 2) {
|
|
|
+ return '交易已关闭'
|
|
|
+ } else if (type === 4) {
|
|
|
+ return '等待卖家发货'
|
|
|
+ } else if (type === 5) {
|
|
|
+ return '卖家已发货'
|
|
|
+ } else if (type === 6 || type === 7) {
|
|
|
+ return '已完成'
|
|
|
+ } else if (type === 8) {
|
|
|
+ return '退款中'
|
|
|
+ } else if (type === 9) {
|
|
|
+ return '退款成功'
|
|
|
+ } else {
|
|
|
+ return '--'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ btnCn: function () {
|
|
|
+ let type = this.orderDetail.status
|
|
|
+ if (type === 1) {
|
|
|
+ return '付款'
|
|
|
+ } else if (type === 5) {
|
|
|
+ return '确认收货'
|
|
|
+ } else {
|
|
|
+ return ''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ productTotal: function () {
|
|
|
+ let product = this.orderDetail
|
|
|
+ let total = product.price * product.count
|
|
|
+ return total
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ toProduct () {
|
|
|
+ this.$router.push(`/product/${this.orderDetail.product_id}`)
|
|
|
+ },
|
|
|
+ copy (id) {
|
|
|
+ var clipboard
|
|
|
+ if (id === 1) {
|
|
|
+ clipboard = new Clipboard('.dec-copy')
|
|
|
+ } else {
|
|
|
+ clipboard = new Clipboard('.dec-copy1')
|
|
|
+ }
|
|
|
+ clipboard.on('success', e => {
|
|
|
+ this.$toast({
|
|
|
+ message: `复制${id === 1 ? '订单号' : '快递单号'}成功`,
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ clipboard.destroy()
|
|
|
+ })
|
|
|
+ clipboard.on('error', e => {
|
|
|
+ this.$toast({
|
|
|
+ message: '该浏览器不支持自动复制',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ clipboard.destroy()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getOrderInfo () {
|
|
|
+ this.$store.dispatch('getOrderDetail', {id: this.oid})
|
|
|
+ },
|
|
|
+ serviceDialogClick () {
|
|
|
+ this.showServiceDialog = !this.showServiceDialog
|
|
|
+ },
|
|
|
+ btnClick (type) {
|
|
|
+ let msg
|
|
|
+ if (type === 'cancel') {
|
|
|
+ msg = '是否确认取消该订单'
|
|
|
+ } else {
|
|
|
+ this.$router.push(`/pay/${this.orderDetail.order_id}`)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.$dialog.confirm({
|
|
|
+ title: '提示',
|
|
|
+ message: msg
|
|
|
+ }).then(() => {
|
|
|
+ if (type === 'cancel') {
|
|
|
+ this.cancelOrder()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ confirmOrder () {
|
|
|
+ this.$post({
|
|
|
+ url: `v1/spirit/order/${this.orderDetail.order_id}/confirm`
|
|
|
+ }).then((resp) => {
|
|
|
+ if (resp.result) {
|
|
|
+ this.$toast('收货成功')
|
|
|
+ this.getOrderInfo()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ postClick: function () {
|
|
|
+ let type = this.orderDetail.status
|
|
|
+ if (type === 1) {
|
|
|
+ this.btnClick()
|
|
|
+ } else if (type === 5) {
|
|
|
+ this.confirmOrder()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 微信支付
|
|
|
+ onBridgeReady () {
|
|
|
+ // eslint-disable-next-line
|
|
|
+ WeixinJSBridge.invoke('getBrandWCPayRequest', {
|
|
|
+ appId: this.payData.appId,
|
|
|
+ timeStamp: this.payData.timeStamp,
|
|
|
+ nonceStr: this.payData.nonceStr,
|
|
|
+ package: this.payData.package,
|
|
|
+ signType: this.payData.signType,
|
|
|
+ paySign: this.payData.paySign
|
|
|
+ },
|
|
|
+ function (res) {
|
|
|
+ if (res.err_msg === 'get_brand_wcpay_request:ok') {
|
|
|
+ this.$toast('微信支付成功!')
|
|
|
+ this.goSuccess()
|
|
|
+ } else {
|
|
|
+ this.$toast('微信支付失败!')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ pay () {
|
|
|
+ this.$post({
|
|
|
+ url: 'v1/pay',
|
|
|
+ data: {
|
|
|
+ order: this.oid
|
|
|
+ }
|
|
|
+ }).then((resp) => {
|
|
|
+ this.payData = resp.pay_data
|
|
|
+ this.cancelLoading()
|
|
|
+ // eslint-disable-next-line
|
|
|
+ if (typeof WeixinJSBridge === undefined) {
|
|
|
+ if (document.addEventListener) {
|
|
|
+ document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady, false)
|
|
|
+ } else if (document.attachEvent) {
|
|
|
+ document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady)
|
|
|
+ document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady)
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.onBridgeReady()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ cancelOrder () {
|
|
|
+ this.$put({
|
|
|
+ url: `v1/spirit/order/${this.orderDetail.order_id}/cancel`,
|
|
|
+ data: {
|
|
|
+ order_id: this.oid
|
|
|
+ }
|
|
|
+ }).then((resp) => {
|
|
|
+ if (resp.result) {
|
|
|
+ this.$toast('取消成功')
|
|
|
+ this.getOrderInfo()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ deleteOrder () {
|
|
|
+ this.$post({
|
|
|
+ url: 'v1/order/delete',
|
|
|
+ data: {
|
|
|
+ order_id: this.oid
|
|
|
+ }
|
|
|
+ }).then((resp) => {
|
|
|
+ if (resp.result) {
|
|
|
+ this.$toast('删除订单成功')
|
|
|
+ this.$router.push({ path: '/order', query: { status: 0, index: 0 } })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created () {
|
|
|
+ this.getOrderInfo()
|
|
|
+ Vue.use(VanImage).use(Divider).use(CountDown)
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ },
|
|
|
+ components: {
|
|
|
+ ServiceDialog
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="less" scoped>
|
|
|
+.order-bg {
|
|
|
+ text-align: left;
|
|
|
+ min-height: 100%;
|
|
|
+ background-color: #f3f3f3;
|
|
|
+ .van-button--normal {
|
|
|
+ padding: 0;
|
|
|
+ }
|
|
|
+ .editBtn {
|
|
|
+ &.van-button {
|
|
|
+ height: .64rem;
|
|
|
+ padding: 0 .12rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-top {
|
|
|
+ position: relative;
|
|
|
+ width: 100%;
|
|
|
+ background: #a8c0cf;
|
|
|
+ color: #fff;
|
|
|
+ padding: 0.3rem .2rem;
|
|
|
+ margin-bottom: .3rem;
|
|
|
+ box-sizing: border-box;
|
|
|
+ .order-type {
|
|
|
+ float: left;
|
|
|
+ width: 3.2rem;
|
|
|
+ font-size: 0.32rem;
|
|
|
+ }
|
|
|
+ .order-count {
|
|
|
+ font-size: 0.28rem;
|
|
|
+ }
|
|
|
+ .order-time {
|
|
|
+ float: right;
|
|
|
+ font-size: 0.26rem;
|
|
|
+ padding: 0.05rem 0.2rem;
|
|
|
+ border: 0.02rem solid #ffffff;
|
|
|
+ border-radius: 0.2rem;
|
|
|
+ overflow: hidden;
|
|
|
+ box-sizing: border-box;
|
|
|
+ .van-count-down {
|
|
|
+ color: #fff;
|
|
|
+ margin-right: .08rem;
|
|
|
+ float: left;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .product-code {
|
|
|
+ float: right;
|
|
|
+ font-size: .28rem;
|
|
|
+ .van-icon {
|
|
|
+ font-size: .5rem;
|
|
|
+ vertical-align: middle;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-icon {
|
|
|
+ width: 0.4rem;
|
|
|
+ height: 0.44rem;
|
|
|
+ vertical-align: middle;
|
|
|
+ margin-right: .16rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-address {
|
|
|
+ position: relative;
|
|
|
+ width: 100%;
|
|
|
+ background: #fff;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 0.3rem 0.3rem 0.3rem 0.77rem;
|
|
|
+ margin-bottom: .3rem;
|
|
|
+ .address-img {
|
|
|
+ position: absolute;
|
|
|
+ top: 0.4rem;
|
|
|
+ left: 0.2rem;
|
|
|
+ width: 0.4rem;
|
|
|
+ height: 0.4rem;
|
|
|
+ }
|
|
|
+ .address-info {
|
|
|
+ .info-name {
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.34rem;
|
|
|
+ margin-right: 0.2rem;
|
|
|
+ }
|
|
|
+ .info-tel {
|
|
|
+ color: #999;
|
|
|
+ font-size: 0.24rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .address-text {
|
|
|
+ width: 5.8rem;
|
|
|
+ line-height: 0.4rem;
|
|
|
+ margin-top: 0.12rem;
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-product {
|
|
|
+ width: 100%;
|
|
|
+ background: #fff;
|
|
|
+ .product-top {
|
|
|
+ position: relative;
|
|
|
+ padding: 0.3rem 0.2rem 0.3rem;
|
|
|
+ box-sizing: border-box;
|
|
|
+ .product-img {
|
|
|
+ float: left;
|
|
|
+ background: #7f7f7f;
|
|
|
+ height: 1.6rem;
|
|
|
+ width: 1.6rem;
|
|
|
+ border-radius: 0.2rem;
|
|
|
+ margin-right: 0.2rem;
|
|
|
+ }
|
|
|
+ .product-info {
|
|
|
+ float: left;
|
|
|
+ .product-name {
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ margin-bottom: 0.05rem;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ display: -webkit-box;
|
|
|
+ -webkit-box-orient: vertical;
|
|
|
+ -webkit-line-clamp: 2;
|
|
|
+ overflow: hidden;
|
|
|
+ width: 5rem;
|
|
|
+ }
|
|
|
+ .product-dec {
|
|
|
+ color: #999;
|
|
|
+ font-size: 0.24rem;
|
|
|
+ width: 5rem;
|
|
|
+ line-height: 0.35rem;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ display: -webkit-box;
|
|
|
+ -webkit-box-orient: vertical;
|
|
|
+ -webkit-line-clamp: 2;
|
|
|
+ overflow: hidden;
|
|
|
+ height: 0.72rem;
|
|
|
+ }
|
|
|
+ .product-money {
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ margin-top: 0.24rem;
|
|
|
+ .money-text {
|
|
|
+ font-size: 0.34rem;
|
|
|
+ }
|
|
|
+ .money-count {
|
|
|
+ padding-left: 0.3rem;
|
|
|
+ color: #999;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .product-size {
|
|
|
+ font-size: .24rem;
|
|
|
+ color: #999;
|
|
|
+ margin-top: .12rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .product-btn {
|
|
|
+ color: #999;
|
|
|
+ border: 0.02rem solid #ccc;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 0.26rem;
|
|
|
+ border-radius: 0.3rem;
|
|
|
+ width: 1.4rem;
|
|
|
+ height: 0.4rem;
|
|
|
+ line-height: 0.4rem;
|
|
|
+ position: absolute;
|
|
|
+ bottom: 0.25rem;
|
|
|
+ right: 0.3rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .product-bottom {
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 0.2rem 0.2rem;
|
|
|
+ background: #fff;
|
|
|
+ .detail-item {
|
|
|
+ line-height: 0.6rem;
|
|
|
+ .detail-left {
|
|
|
+ float: left;
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ }
|
|
|
+ .detail-left1 {
|
|
|
+ float: left;
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.32rem;
|
|
|
+ }
|
|
|
+ .detail-right {
|
|
|
+ float: right;
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ }
|
|
|
+ .detail-right1 {
|
|
|
+ float: right;
|
|
|
+ color: #f14f4f;
|
|
|
+ font-size: 0.36rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-dec {
|
|
|
+ // height: 3.16rem;
|
|
|
+ width: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ // padding: 0.3rem 0.2rem 0;
|
|
|
+ margin-top: 0.25rem;
|
|
|
+ background: #fff;
|
|
|
+ position: relative;
|
|
|
+ margin-bottom: 0.25rem;
|
|
|
+ .dec-title {
|
|
|
+ color: #4c4c4c;
|
|
|
+ font-size: 0.3rem;
|
|
|
+ padding-bottom: 0.3rem;
|
|
|
+ padding-top: 0.3rem;
|
|
|
+ padding-left: 0.2rem;
|
|
|
+ }
|
|
|
+ .dec-info {
|
|
|
+ padding-bottom: 0.1rem;
|
|
|
+ .info-item {
|
|
|
+ position: relative;
|
|
|
+ color: #999;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ padding-bottom: 0.25rem;
|
|
|
+ padding-left: 0.2rem;
|
|
|
+ padding-right: 0.3rem;
|
|
|
+ line-height: 0.35rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .dec-copy, .dec-copy1 {
|
|
|
+ position: absolute;
|
|
|
+ // top: 0.95rem;
|
|
|
+ right: 0.2rem;
|
|
|
+ height: .42rem;
|
|
|
+ padding: 0 .1rem;
|
|
|
+ color: #ff484c;
|
|
|
+ font-size: 0.28rem;
|
|
|
+ }
|
|
|
+ .dec-bottom {
|
|
|
+ position: relative;
|
|
|
+ .dec-kefu {
|
|
|
+ color: #4c4c4c;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 0.26rem;
|
|
|
+ height: 0.8rem;
|
|
|
+ line-height: 0.8rem;
|
|
|
+ padding-left: 0.4rem;
|
|
|
+ }
|
|
|
+ .dec-icon {
|
|
|
+ width: 0.4rem;
|
|
|
+ height: 0.38rem;
|
|
|
+ position: absolute;
|
|
|
+ top: 0.18rem;
|
|
|
+ left: 2.8rem;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .order-bottom {
|
|
|
+ height: 0.94rem;
|
|
|
+ background: #fff;
|
|
|
+ width: 100%;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding-top: 0.25rem;
|
|
|
+ padding-right: 0.3rem;
|
|
|
+ .bottom-btn {
|
|
|
+ .btn {
|
|
|
+ color: #999;
|
|
|
+ font-size: 0.26rem;
|
|
|
+ width: 1.4rem;
|
|
|
+ height: 0.4rem;
|
|
|
+ float: right;
|
|
|
+ margin-left: 0.3rem;
|
|
|
+ }
|
|
|
+ .btn1 {
|
|
|
+ color: #ff484c;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|