85 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Vue
		
	
	
| <template>
 | |
|   <s-layout title="发货内容">
 | |
|     <view class="order-card ss-m-x-20 ss-r-20">
 | |
|       <s-goods-item
 | |
|         :img="state.data.goods_image"
 | |
|         :title="state.data.goods_title"
 | |
|         :skuText="state.data.goods_sku_text"
 | |
|         :price="state.data.goods_price"
 | |
|         :num="state.data.goods_num"
 | |
|         radius="20"
 | |
|       >
 | |
|         <template #priceSuffix>
 | |
|           <button class="ss-reset-button tag-btn" v-if="state.data.status_text">
 | |
|             {{ state.data.status_text }}
 | |
|           </button>
 | |
|         </template>
 | |
|       </s-goods-item>
 | |
|     </view>
 | |
|     <view class="bg-white ss-p-20 ss-m-x-20 ss-r-20">
 | |
|       <view class="title ss-m-b-26">发货信息</view>
 | |
|       <view v-if="state.data.ext?.dispatch_content_type === 'params'">
 | |
|         <view class="desc ss-m-b-20" v-for="item in state.data.ext.dispatch_content" :key="item">
 | |
|           {{ item.title }}: {{ item.content }}
 | |
|         </view>
 | |
|       </view>
 | |
|       <view class="desc" v-else>{{ state.data.ext?.dispatch_content }}</view>
 | |
|     </view>
 | |
|   </s-layout>
 | |
| </template>
 | |
| <script setup>
 | |
|   import { onLoad } from '@dcloudio/uni-app';
 | |
|   import { reactive } from 'vue';
 | |
|   import sheep from '@/sheep';
 | |
| 
 | |
|   const state = reactive({
 | |
|     data: [],
 | |
|   });
 | |
|   async function getDetail(id, item_id) {
 | |
|     const { error, data } = await sheep.$api.order.itemDetail(id,item_id);
 | |
|     if (error === 0) {
 | |
|       state.data = data;
 | |
|     }
 | |
|   }
 | |
|   onLoad((options) => {
 | |
|     getDetail(options.id, options.item_id);
 | |
|   });
 | |
| </script>
 | |
| <style lang="scss" scoped>
 | |
|   .order-card {
 | |
|     padding: 20rpx 0;
 | |
| 
 | |
|     .order-sku {
 | |
|       font-size: 24rpx;
 | |
| 
 | |
|       font-weight: 400;
 | |
|       color: rgba(153, 153, 153, 1);
 | |
|       width: 450rpx;
 | |
|       margin-bottom: 20rpx;
 | |
| 
 | |
|       .order-num {
 | |
|         margin-right: 10rpx;
 | |
|       }
 | |
|     }
 | |
|     .tag-btn {
 | |
|       margin-left: 16rpx;
 | |
|       font-size: 24rpx;
 | |
|       height: 36rpx;
 | |
|       color: var(--ui-BG-Main);
 | |
|       border: 2rpx solid var(--ui-BG-Main);
 | |
|       border-radius: 14rpx;
 | |
|       padding: 0 4rpx;
 | |
|     }
 | |
|   }
 | |
|   .title {
 | |
|     font-size: 28rpx;
 | |
|     font-weight: bold;
 | |
|     color: #333333;
 | |
|   }
 | |
|   .desc {
 | |
|     font-size: 26rpx;
 | |
|     font-weight: 400;
 | |
|     color: #333333;
 | |
|   }
 | |
| </style>
 |