Преглед изворни кода

1.新增个贷我的订单列表页面

GouGengquan пре 1 месец
родитељ
комит
7ca22fa160
5 измењених фајлова са 132 додато и 8 уклоњено
  1. 6 1
      src/api/personal.js
  2. 9 0
      src/router/index.js
  3. 1 1
      src/views/home/home.vue
  4. 3 6
      src/views/major/myOrder.vue
  5. 113 0
      src/views/personal/myOrder.vue

+ 6 - 1
src/api/personal.js

@@ -2,7 +2,7 @@ import request from '@/utils/request'
 
 // 获取个贷待办任务
 export function getPersonalTodoList(params) {
-    return request.get('workTaskRecord/personal/todo', {params: params})
+    return request.get('workTaskRecord/personal/todo', { params: params })
 }
 
 // 获取个贷待办详情
@@ -18,4 +18,9 @@ export function getPersonalTargetDetail(params) {
 // 个贷新增订单
 export function add(params) {
     return request.post(`personal`, params)
+}
+
+// 个贷我的订单
+export function myOrder(params) {
+    return request.get(`personal/mine`, { params: params })
 }

+ 9 - 0
src/router/index.js

@@ -20,6 +20,7 @@ import AssetsPlaceOrderView from '@/views/assets/placeOrder.vue'
 import PersonalIndex from '@/views/personal/index.vue'
 import PersonalTodoDetailView from '@/views/personal/todoDetail.vue'
 import PersonalPlaceOrderView from '@/views/personal/placeOrder.vue'
+import PersonalMyOrder from '@/views/personal/myOrder.vue'
 
 // 大中型业务
 import MajorIndex from '@/views/major/index.vue'
@@ -136,6 +137,14 @@ const routes = [
               title: '个贷业务下单'
             },
           },
+          {
+            path: 'myOrder',
+            component: PersonalMyOrder,
+            name: 'personalMyOrderView',
+            meta: {
+              title: '我的订单-个贷'
+            },
+          },
         ]
       },
       // 大中型业务

+ 1 - 1
src/views/home/home.vue

@@ -24,7 +24,7 @@
         </svg>
         <div class="icon-word">正在进行</div>
       </div>
-      <div class="icon-area">
+      <div class="icon-area" @click="goBench('/index/personal/myOrder')">
         <svg t="1748250501503" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2184" id="mx_n_1748250501504" width="48" height="48">
           <path
             d="M810.666667 1024H213.333333c-117.333333 0-213.333333-96-213.333333-213.333333V213.333333C0 96 96 0 213.333333 0h597.333334c117.333333 0 213.333333 96 213.333333 213.333333v597.333334c0 117.333333-96 213.333333-213.333333 213.333333z"

+ 3 - 6
src/views/major/myOrder.vue

@@ -58,24 +58,21 @@ export default {
     this.getMyOrder();
   },
   methods: {
-    onClickLeft() {
-      history.back();
-    },
-    // 大中型待办列表刷新
+    // 列表刷新
     onRefresh() {
       this.listQuery.current = 1;
       this.finished = false;
       this.listData = [];
       this.getMyOrder();
     },
-    // 大中型待办列表关键字搜索
+    // 列表关键字搜索
     onSearch() {
       this.listQuery.current = 1;
       this.finished = false;
       this.listData = [];
       this.getMyOrder();
     },
-    // 获取我的大中型订单
+    // 获取我的订单
     getMyOrder() {
       this.loading = true;
       myOrder(this.listQuery).then((res) => {

+ 113 - 0
src/views/personal/myOrder.vue

@@ -0,0 +1,113 @@
+<template>
+  <div>
+    <BackBar title="我的订单-个贷" lefttext="返回" />
+    <van-search v-model="listQuery.keyword" placeholder="请输入搜索关键词" @search="onSearch()" />
+    <van-pull-refresh v-model="loading" @refresh="onRefresh()">
+      <van-list v-model:loading="loading" :finished="finished" finished-text="还没有订单" @load="getMyOrder()">
+        <div class="card" v-for="item in listData" :key="item.id" @click="toDetail(item)">
+          <h3>
+            <van-icon name="link-o" />
+            &nbsp;{{ item.orderId }}
+          </h3>
+          <p class="projectName">
+            <van-icon name="location-o" />
+            &nbsp;{{ item.orderName }}
+          </p>
+          <p>
+            <van-icon name="contact-o" />
+            &nbsp;{{ item.clientName }}-{{ item.clientSubName}}
+          </p>
+          <p>
+            <van-tag type="primary" size="medium" class="van-tag">{{ item.acreage ? item.acreage : '-' }} 平</van-tag>
+            <van-tag type="success" size="medium" class="van-tag">{{ item.price ? item.price : '-' }} 元/平</van-tag>
+            <van-tag color="#969799" size="medium" class="van-tag">{{ item.amount ? item.amount : '-' }} 万</van-tag>
+          </p>
+        </div>
+      </van-list>
+    </van-pull-refresh>
+    <van-back-top right="10vw" bottom="10vh" />
+  </div>
+</template>
+
+<script>
+import { myOrder } from '@/api/personal';
+
+export default {
+  data() {
+    return {
+      loading: false,
+      listData: [],
+      finished: false,
+      listQuery: {
+        // 当前页数
+        current: 1,
+        // 查询关键字
+        keyword: null,
+      },
+    };
+  },
+  created() {
+    this.getMyOrder();
+  },
+  methods: {
+    // 列表刷新
+    onRefresh() {
+      this.listQuery.current = 1;
+      this.finished = false;
+      this.listData = [];
+      this.getMyOrder();
+    },
+    // 列表关键字搜索
+    onSearch() {
+      this.listQuery.current = 1;
+      this.finished = false;
+      this.listData = [];
+      this.getMyOrder();
+    },
+    // 获取我的订单
+    getMyOrder() {
+      this.loading = true;
+      myOrder(this.listQuery).then((res) => {
+        if (res.code == 200) {
+          if (res.data.records) {
+            this.listData = this.listData.concat(res.data.records);
+          }
+          // 判断是否还有下一页
+          if (res.data.pages > this.listQuery.current) {
+            // 服务端返回的总页数大于当前页数, 将当前页数+1
+            this.listQuery.current++;
+          } else {
+            // 反之停止加载
+            this.finished = true;
+          }
+        }
+        this.loading = false;
+      });
+    },
+    toDetail(item) {},
+  },
+};
+</script>
+
+<style scoped>
+.card {
+  background-color: white;
+  border-radius: 12px;
+  box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.1);
+  padding: 16px;
+  margin: 10px;
+}
+
+.productionNo {
+  width: 100%;
+  font-size: 14px;
+}
+
+.projectName {
+  width: 100%;
+}
+
+.van-tag {
+  margin: 2px;
+}
+</style>