| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 | 
							- <template>
 
-   <view class="container">
 
-     <!-- 收货地址选择 -->
 
-     <yd-address-select :address="address"></yd-address-select>
 
-     <!-- 订单商品信息 -->
 
-     <view class="checkout-goods">
 
-       <yd-order-goods :goods-list="checkoutList"></yd-order-goods>
 
-     </view>
 
-     <view class="freight-coupon-box">
 
-       <vidw class="box-row">
 
-         <view class="title">运费</view>
 
-         <yd-text-price class="freight-fee" size="15" :price="freightAmount"></yd-text-price>
 
-       </vidw>
 
-       <vidw class="box-row">
 
-         <view class="coupon-wrap">
 
-           <view class="coupon-title-tag">
 
-             <view class="title">优惠券</view>
 
-             <scroll-view class="coupon-tag-list" scroll-x="true">
 
-               <view v-for="item in couponList" :key="item.couponId" class="coupon-tag-item">{{ item.couponTag }}</view>
 
-             </scroll-view>
 
-           </view>
 
-           <yd-text-price class="coupon-fee" color="red" size="15" symbol="-¥" :price="couponAmount"></yd-text-price>
 
-         </view>
 
-         <u-icon name="arrow-right"></u-icon>
 
-       </vidw>
 
-     </view>
 
-     <!-- 订单备注信息 -->
 
-     <view class="user-remark-box">
 
-       <view class="title">订单备注</view>
 
-       <u--input maxlength="50" border="none" fontSize="14" v-model="remark" placeholder="如您需要请备注"></u--input>
 
-     </view>
 
-     <view class="cart-btn-container">
 
-       <view class="order-total-wrap">
 
-         <view class="order-total-info">
 
-           <view class="info-text">合计:</view>
 
-           <view>
 
-             <yd-text-price color="red" size="15" intSize="20" :price="totalAmount"></yd-text-price>
 
-           </view>
 
-         </view>
 
-         <view class="cart-btn-group">
 
-           <u-button style="margin-left: 10px" class="main-btn" type="primary" shape="circle" size="small" text="提交订单" @click="handleSubmitOrder"></u-button>
 
-         </view>
 
-       </view>
 
-       <u-safe-bottom customStyle="background: #ffffff"></u-safe-bottom>
 
-     </view>
 
-   </view>
 
- </template>
 
- <script>
 
- import { checkoutCartProduct } from '../../api/order'
 
- export default {
 
-   components: {},
 
-   data() {
 
-     return {
 
-       checkedProduct: [],
 
-       address: {
 
-         name: '客户',
 
-         mobile: '139****6563',
 
-         area: 'XXX市XXX区',
 
-         detail: 'XXX街道XXX小区XXX号楼XX-XXX'
 
-       },
 
-       checkoutList: [],
 
-       couponList: [
 
-         {
 
-           couponId: 3,
 
-           couponTag: '6元运费券'
 
-         }
 
-       ],
 
-       totalAmount: 0,
 
-       freightAmount: 6,
 
-       couponAmount: 6,
 
-       remark: ''
 
-     }
 
-   },
 
-   onLoad(e) {
 
-     const checkedProduct = e.checkedProduct
 
-     if (checkedProduct) {
 
-       this.checkedProduct = JSON.parse(checkedProduct)
 
-       this.loadCheckoutProductData()
 
-     } else {
 
-       uni.$u.toast('请求参数错误')
 
-     }
 
-   },
 
-   methods: {
 
-     loadCheckoutProductData() {
 
-       checkoutCartProduct(this.checkedProduct)
 
-         .then(res => {
 
-           this.checkoutList = res.data.checkoutList || []
 
-           this.totalAmount = res.data.totalAmount || 0
 
-         })
 
-         .catch(err => {
 
-           console.log(err)
 
-         })
 
-     }
 
-   }
 
- }
 
- </script>
 
- <style lang="scss" scoped>
 
- .container {
 
-   background-color: $custom-bg-color;
 
-   height: 100vh;
 
-   overflow-x: scroll;
 
- }
 
- .checkout-goods {
 
-   background-color: #fff;
 
-   margin-top: 20rpx;
 
-   padding: 20rpx;
 
-   border-radius: 20rpx;
 
- }
 
- .freight-coupon-box {
 
-   background-color: #fff;
 
-   margin-top: 20rpx;
 
-   padding: 20rpx 30rpx;
 
-   border-radius: 20rpx;
 
-   .box-row {
 
-     @include flex-space-between;
 
-     padding: 10rpx 0;
 
-     .coupon-wrap {
 
-       @include flex-space-between;
 
-       width: 670rpx;
 
-       .coupon-title-tag {
 
-         @include flex-left;
 
-         .coupon-tag-list {
 
-           @include flex-left;
 
-           overflow-x: scroll;
 
-           width: 360rpx;
 
-           .coupon-tag-item {
 
-             display: inline-block;
 
-             font-size: 22rpx;
 
-             color: red;
 
-             border: 1rpx solid red;
 
-             padding: 1px 6rpx;
 
-             margin-right: 10rpx;
 
-             border-radius: 5rpx;
 
-           }
 
-         }
 
-       }
 
-     }
 
-     .title {
 
-       font-weight: 700;
 
-       font-size: 30rpx;
 
-       color: #333;
 
-       margin-right: 30rpx;
 
-     }
 
-     .freight-fee {
 
-       margin-right: 50rpx;
 
-     }
 
-     .coupon-fee {
 
-       margin-right: 20rpx;
 
-     }
 
-   }
 
- }
 
- .user-remark-box {
 
-   @include flex-space-between;
 
-   background-color: #fff;
 
-   margin-top: 20rpx;
 
-   padding: 30rpx;
 
-   border-radius: 20rpx;
 
-   .title {
 
-     font-weight: 700;
 
-     font-size: 30rpx;
 
-     color: #333;
 
-     margin-right: 30rpx;
 
-   }
 
- }
 
- .cart-btn-container {
 
-   position: fixed;
 
-   bottom: 0;
 
-   left: 0;
 
-   .order-total-wrap {
 
-     background: $custom-bg-color;
 
-     border-top: $custom-border-style;
 
-     width: 750rpx;
 
-     @include flex-space-between();
 
-     height: 100rpx;
 
-     .order-total-info {
 
-       @include flex-left;
 
-       .info-text {
 
-         margin-left: 20rpx;
 
-         font-size: 26rpx;
 
-         font-weight: bold;
 
-         color: #666666;
 
-       }
 
-     }
 
-     .cart-btn-group {
 
-       @include flex-right();
 
-       width: 360rpx;
 
-       padding-right: 10px;
 
-       .btn-gap {
 
-         width: 20rpx;
 
-       }
 
-     }
 
-   }
 
- }
 
- </style>
 
 
  |