chenqilong 1 rok temu
rodzic
commit
506515eed6
1 zmienionych plików z 93 dodań i 30 usunięć
  1. 93 30
      src/pages/mine/myBuy/return.vue

+ 93 - 30
src/pages/mine/myBuy/return.vue

@@ -1,37 +1,45 @@
 <template>
   <zj-page-layout
-  	:hasFooter="true"
-  	:isScroll="true"
-  	:refresherTriggered="refresherTriggered"
-  	@refresherrefresh="refresherrefresh">
-
+    :hasFooter="true"
+    :isScroll="true"
+    :refresherTriggered="refresherTriggered"
+    @refresherrefresh="refresherrefresh"
+  >
     <view class="goods-container">
       <view class="title">商品信息</view>
       <view class="goods">
-        <image src="@/static/user/other_book.png"></image>
+        <image :src="$imageUrl + form.goodsPicUrl"></image>
         <view class="main">
-          <view class="name">商品名称</view>
-          <view class="des">商品描述</view>
-          <view class="price"><text>¥18.00</text>x2</view>
+          <view class="name">{{ form.goodsTitle }}</view>
+          <view class="des">{{ form.goods.content }}</view>
+          <view class="price"
+            ><text>¥{{ form.goodsAmount }}</text
+            >x{{ form.num }}</view
+          >
         </view>
       </view>
-      <view class="total">订单总金额<text>¥1200.00</text></view>
+      <view class="total"
+        >订单总金额<text>¥{{ form.price }}</text></view
+      >
     </view>
 
     <view class="form-container">
       <view class="title">退货信息填写</view>
       <view class="radio">
         <view class="label">选择类型</view>
-        <u-radio-group
-            v-model="type"
-            placement="row">
-        	<u-radio label="仅退款" activeColor="#01C30B" :name="1"></u-radio>
+        <u-radio-group v-model="formdata.applyType" placement="row">
+          <u-radio label="仅退款" activeColor="#01C30B" name="REFUND"></u-radio>
         </u-radio-group>
       </view>
       <view class="content">
         <view class="label">退货原因</view>
-        <u--textarea v-model="content" placeholder="请输入内容" ></u--textarea>
+        <u--textarea v-model="formdata.applyNote" placeholder="请输入内容"></u--textarea>
+      </view>
+      <view class="content">
+        <view class="label">上传图片(最多9张)</view>
       </view>
+      <br />
+      <zj-upload key="cp" @getFiles="getFiles" :fileList="fileList" :count="9" />
     </view>
 
     <view class="form-container">
@@ -59,19 +67,75 @@
         <u-button text="提交申请" type="primary" shape="circle"></u-button>
       </view>
     </template>
-
   </zj-page-layout>
 </template>
 
 <script>
-  export default {
-    data() {
-      return {
-        type: 1,
-        content: ''
+import zjUpload from '@/components/zj-upload/index.vue'
+export default {
+  components: {
+    zjUpload
+  },
+  data() {
+    return {
+      type: 1,
+      content: '',
+      refresherTriggered: false,
+      form: {
+        goods: {}
+      },
+      formdata: {
+        applyType: 'REFUND',
+        applyNote: ''
+      },
+      fileList: [],
+      fileurl: []
+    }
+  },
+  onLoad({ orderId }) {
+    this.orderId = orderId
+  },
+  onShow() {
+    this.getDetail()
+  },
+  methods: {
+    getFiles(value) {
+      this.fileurl = []
+      value.forEach(v => {
+        this.fileurl.push({
+          imgUrl: v
+        })
+      })
+    },
+    //
+    apply() {
+      let params = {
+        ...this.formdata,
+        refundFile: this.fileurl.toString()
       }
+      this.$api
+        .postJson('/refundOrder/apply', params)
+        .then(res => {
+        })
+        .catch(err => {})
+    },
+    //
+    getDetail() {
+      this.$api
+        .postJson('/orderPay/detail', {
+          orderId: this.orderId
+        })
+        .then(res => {
+          this.form = res.data
+        })
+        .catch(err => {})
+    },
+    refresherrefresh() {
+      this.refresherTriggered = true
+      // this.getDetail()
     }
   }
+}
 </script>
 
 <style lang="scss" scoped>
@@ -102,12 +166,12 @@
       }
       .price {
         margin-top: 12rpx;
-      	text {
-      		color: $assist-color;
-      		font-weight: 500;
-      		font-size: 32rpx;
+        text {
+          color: $assist-color;
+          font-weight: 500;
+          font-size: 32rpx;
           margin-right: 12rpx;
-      	}
+        }
       }
     }
   }
@@ -133,9 +197,9 @@
     font-weight: 500;
   }
   .label {
-  	color: $sec-font;
-  	flex-shrink: 0;
-  	margin-right: 30rpx;
+    color: $sec-font;
+    flex-shrink: 0;
+    margin-right: 30rpx;
   }
   .radio {
     display: flex;
@@ -155,5 +219,4 @@
 .bottom-container {
   padding: 20rpx 30rpx;
 }
-
 </style>