Kaynağa Gözat

个人中心兑换码

natasha 1 yıl önce
ebeveyn
işleme
be2d5856b9

+ 56 - 46
src/views/personalCenter/components/ConversionCode.vue

@@ -2,7 +2,7 @@
   <div class="conversion-code personal-info">
     <h2>兑换码</h2>
     <el-input placeholder="输入兑换码" v-model="inputValue" class="input-with-btn" maxlength="20">
-        <el-button slot="append">兑换</el-button>
+        <el-button slot="append" @click="handleExchange" :loading="loading">兑换</el-button>
     </el-input>
     <el-table
         :data="dataList"
@@ -14,32 +14,34 @@
                 <el-form label-position="left" inline class="demo-table-expand">
                     <el-form-item>
                         <h3 class="content-title">兑换内容</h3>
-                        <div class="content-list" v-for="(itemC,indexC) in props.row.content" :key="indexC">
+                        <div class="content-list" v-for="(itemC,indexC) in props.row.goods_list" :key="indexC">
                             <span>{{indexC+1+'.'}}</span>
-                            <b>{{itemC}}</b>
+                            <b>{{itemC.goods_name}}</b>
                         </div>
                     </el-form-item>
                 </el-form>
             </template>
         </el-table-column>
         <el-table-column
+            type="index"
             label="#"
-            prop="number"
-            width="112">
+            sortable
+            width="54"
+            :index="(pageNumber-1)*pageSize+1">
         </el-table-column>
         <el-table-column
             label="名称"
-            prop="name"
+            prop="discount_code_name"
             width="300">
         </el-table-column>
         <el-table-column
             label="兑换码"
-            prop="code"
+            prop="discount_code"
             width="300">
         </el-table-column>
         <el-table-column
             label="使用时间"
-            prop="time">
+            prop="use_time">
         </el-table-column>
     </el-table>
     <el-pagination
@@ -69,47 +71,11 @@ export default {
         pageSize: 10, 
         pageNumber: 1,
         inputValue: '', // 兑换码输入框
-        dataList:[
-            {
-                number:'1',
-                name:'高三英语提高礼包',
-                code:'hfajkdh124',
-                time:'2022-10-7 16:32',
-                content:[
-                    '2021 年高三版专辑','2022 年高三版专辑','2023 年高三版专辑'
-                ]
-            },
-            {
-                number:'2',
-                name:'高三英语提高礼包',
-                code:'JFKDS827fabBV712bAga',
-                time:'2022-10-7 16:32',
-                content:[
-                    '2021 年高三版专辑','2022 年高三版专辑','2023 年高三版专辑'
-                ]
-            },
-            {
-                number:'3',
-                name:'高三英语提高礼包',
-                code:'hfajkdh124',
-                time:'2022-10-7 16:32',
-                content:[
-                    '2021 年高三版专辑','2022 年高三版专辑','2023 年高三版专辑'
-                ]
-            },
-            {
-                number:'4',
-                name:'高三英语提高礼包',
-                code:'JFKDS827fabBV712bAga',
-                time:'2022-10-7 16:32',
-                content:[
-                    '2021 年高三版专辑','2022 年高三版专辑','2023 年高三版专辑'
-                ]
-            },
-        ],
+        dataList:[],
         total_count: 0,
         tableLoading: false,
         tableHeight: "", // 表格高度
+        loading: false
     }
   },
   //计算属性 类似于data概念
@@ -132,14 +98,58 @@ export default {
     },
     handleSizeChange(val) {
         this.pageSize = val
+        this.pageNumber = 1
+        this.getList()
     },
     handleCurrentChange(val) {
         this.pageNumber = val
+        this.getList()
     },
+    getList(val){
+        this.tableLoading = true
+        if(val){
+            this.pageNumber = val
+        }
+        let MethodName = "/ShopServer/Client/OrderManager/PageQueryMyOrderList_DiscountCode"
+        let data = {
+            page_capacity:this.pageSize,
+            cur_page:this.pageNumber
+        }
+        getLogin(MethodName, data)
+        .then((res) => {
+            this.tableLoading = false
+            if(res.status===1){
+                this.dataList = res.order_list
+                this.total_count = res.total_count
+            }
+        })
+        .catch(() => {
+            this.tableLoading = false
+        });
+    },
+    // 兑换
+    handleExchange(){
+        this.loading = true
+        let MethodName = "/ShopServer/Client/OrderManager/CreateOrder_UseDiscountCode"
+        let data = {
+            discount_code:this.inputValue.trim()
+        }
+        getLogin(MethodName, data)
+        .then((res) => {
+            this.loading = false
+            if(res.status===1){
+                this.getList(1)
+            }
+        })
+        .catch(() => {
+            this.loading = false
+        });
+    }
   },
   //生命周期 - 创建完成(可以访问当前this实例)
   created() {
     this.getTableHeight()
+    this.getList()
   },
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {