瀏覽代碼

1.新增大中型订单详情页面
2.待办列表页面和大中型我的订单页面布局优化

GouGengquan 1 月之前
父節點
當前提交
90b4674022
共有 5 個文件被更改,包括 122 次插入19 次删除
  1. 9 0
      src/router/index.js
  2. 13 9
      src/views/home/todo.vue
  3. 50 0
      src/views/major/detail.vue
  4. 41 7
      src/views/major/myOrder.vue
  5. 9 3
      src/views/personal/todoDetail.vue

+ 9 - 0
src/router/index.js

@@ -26,6 +26,7 @@ import MajorIndex from '@/views/major/index.vue'
 import MajorTodoDetailView from '@/views/major/todoDetail.vue'
 import MajorPlaceOrder from '@/views/major/placeOrder.vue'
 import MajorMyOrder from '@/views/major/myOrder.vue'
+import MajorDetail from '@/views/major/detail.vue'
 
 // 土规业务
 import LandIndex from '@/views/land/index.vue'
@@ -167,6 +168,14 @@ const routes = [
               title: '我的订单-大中型'
             },
           },
+          {
+            path: 'detail',
+            component: MajorDetail,
+            name: 'majorDetailView',
+            meta: {
+              title: '订单详情-大中型'
+            },
+          },
         ]
       },
       // 土规业务

+ 13 - 9
src/views/home/todo.vue

@@ -18,9 +18,9 @@
                {{ item.clientName }}-{{ item.clientSubName}}
             </p>
             <p>
-              <van-tag type="primary" size="medium">{{ item.nodeName }}</van-tag>&nbsp;
-              <van-tag type="success" size="medium">{{ item.clientManager }}</van-tag>&nbsp;
-              <van-tag color="#969799" size="medium">{{ item.created }}</van-tag>
+              <van-tag type="primary" size="medium" class="van-tag">{{ item.nodeName }}</van-tag>
+              <van-tag type="success" size="medium" class="van-tag">{{ item.clientManager }}</van-tag>
+              <van-tag color="#969799" size="medium" class="van-tag">{{ item.created }}</van-tag>
             </p>
           </div>
         </van-list>
@@ -49,9 +49,9 @@
               &nbsp;{{ item.productionName == null ? item.orderName : item.productionName }}
             </p>
             <p>
-              <van-tag type="primary" size="medium">{{ item.nodeName }}</van-tag>&nbsp;
-              <van-tag type="success" size="medium">{{ item.clientManager }}</van-tag>&nbsp;
-              <van-tag color="#969799" size="medium">{{ item.created }}</van-tag>
+              <van-tag type="primary" size="medium" class="van-tag">{{ item.nodeName }}</van-tag>
+              <van-tag type="success" size="medium" class="van-tag">{{ item.clientManager }}</van-tag>
+              <van-tag color="#969799" size="medium" class="van-tag">{{ item.created }}</van-tag>
             </p>
           </div>
         </van-list>
@@ -80,9 +80,9 @@
               &nbsp;{{ item.reportName || item.statementName || item.name }}
             </p>
             <p>
-              <van-tag type="primary" size="medium">{{ item.currentNodeName }}</van-tag>&nbsp;
-              <van-tag type="success" size="medium">{{ item.clientManagerName }}</van-tag>&nbsp;
-              <van-tag color="#969799" size="medium">{{ item.created }}</van-tag>
+              <van-tag type="primary" size="medium" class="van-tag">{{ item.currentNodeName }}</van-tag>
+              <van-tag type="success" size="medium" class="van-tag">{{ item.clientManagerName }}</van-tag>
+              <van-tag color="#969799" size="medium" class="van-tag">{{ item.created }}</van-tag>
             </p>
           </div>
         </van-list>
@@ -397,4 +397,8 @@ export default {
   white-space: nowrap;
   text-overflow: ellipsis; */
 }
+
+.van-tag {
+  margin: 2px;
+}
 </style>

+ 50 - 0
src/views/major/detail.vue

@@ -0,0 +1,50 @@
+<template>
+  <div>
+    <BackBar title="订单详情-大中型" lefttext="返回" />
+    <van-form>
+      <van-cell-group inset>
+        <van-field label="项目编号" v-model="major.orderId" name="orderId" readonly placeholder="-" />
+        <van-field label="订单名称" v-model="major.name" name="name" type="textarea" readonly placeholder="-" />
+        <van-field label="类型" v-model="major.productionType" name="productionType" readonly placeholder="-" />
+        <van-field label="产品号" v-model="major.productionNo" name="productionNo" readonly placeholder="-" />
+        <van-field label="当前节点" v-model="major.nodeName" name="nodeName" readonly :error="true" placeholder="-" />
+        <van-field label="客户经理" v-model="major.clientManager" name="clientManager" readonly placeholder="-" />
+        <van-field label="项目负责人" v-model="major.principal" name="principal" readonly placeholder="-" />
+        <van-field label="实收款" v-model="major.realAmount" name="realAmount" readonly placeholder="-">
+          <template #button>元</template>
+        </van-field>
+        <van-field label="开票金额" v-model="major.invoiceAmount" name="invoiceAmount" readonly placeholder="-">
+          <template #button>元</template>
+        </van-field>
+        <van-field label="客户名称" v-model="major.clienteleName" name="clienteleName" readonly placeholder="-" />
+        <van-field label="业务来源" v-model="major.clienteleSubName" name="clienteleSubName" readonly placeholder="-" />
+        <van-field label="客户联系人" v-model="major.clienteleContactName" name="clienteleContactName" readonly placeholder="-" />
+        <van-field label="委托人" v-model="major.bailor" name="bailor" readonly placeholder="-" />
+        <van-field label="产权人" v-model="major.owner" name="owner" readonly placeholder="-" />
+        <van-field label="库存状态" v-model="major.repertoryState" name="comments" readonly placeholder="-" />
+        <van-field label="送达状态" v-model="major.delivery" name="comments" readonly placeholder="-" />
+        <van-field label="送达日期" v-model="major.deliveryDate" name="comments" readonly placeholder="-" />
+        <van-field label="客户经理申报" v-model="major.mdeclareResult" name="comments" readonly placeholder="-" />
+        <van-field label="评估人员申报" v-model="major.edeclareResult" name="comments" readonly placeholder="-" />
+      </van-cell-group>
+    </van-form>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      // 大中型详情
+      major: {},
+    };
+  },
+  created() {
+    this.major = JSON.parse(this.$route.query.item);
+  },
+  methods: {},
+};
+</script>
+
+<style scoped>
+</style>

+ 41 - 7
src/views/major/myOrder.vue

@@ -4,7 +4,7 @@
     <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">
+        <div class="card" v-for="item in listData" :key="item.id" @click="toDetail(item)">
           <h3>
             <van-icon name="link-o" />
             &nbsp;{{ item.orderId }}
@@ -19,15 +19,16 @@
             &nbsp;{{ item.orderName }}
           </p>
           <p>
-            <van-tag type="primary" size="medium">
+            <van-tag type="primary" size="medium" class="van-tag">
               {{ item.production ? (item.production === 'REPORT' ? '报告' : (item.production === 'STATEMENT' ? '意见书' :
               '复评函'
               )) : '订单' }}
-            </van-tag>&nbsp;
-            <van-tag type="success" size="medium">{{ item.clienteleName }}</van-tag>&nbsp;
-            <van-tag type="success" :color="item.repertoryState === '未入库' ? '#969799' : ''" size="medium">{{ item.repertoryState }}</van-tag>&nbsp;
-            <van-tag type="success" :color="!item.delivery ? '#969799' : ''" size="medium">{{ item.delivery ? '已送达' : '未送达' }}</van-tag>&nbsp;
-            <van-tag type="success" :color="item.edeclareResult === null ? '#969799' : ''" size="medium">{{ item.edeclareResult==null ? '未申报' : item.edeclareResult }}</van-tag>
+            </van-tag>
+            <van-tag type="primary" size="medium" class="van-tag" v-if="item.currentNodeName">{{ item.currentNodeName }}</van-tag>
+            <van-tag type="success" size="medium" class="van-tag">{{ item.clienteleName }}</van-tag>
+            <van-tag type="success" :color="item.repertoryState === '未入库' ? '#969799' : ''" size="medium" class="van-tag">{{ item.repertoryState }}</van-tag>
+            <van-tag type="success" :color="!item.delivery ? '#969799' : ''" size="medium" class="van-tag">{{ item.delivery ? '已送达' : '未送达' }}</van-tag>
+            <van-tag type="success" :color="item.edeclareResult === null ? '#969799' : ''" size="medium" class="van-tag">{{ item.edeclareResult==null ? '未申报' : item.edeclareResult }}</van-tag>
           </p>
         </div>
       </van-list>
@@ -94,6 +95,35 @@ export default {
         this.loading = false;
       });
     },
+    toDetail(item) {
+      const detailInfo = {
+        orderId: item.orderId,
+        name: item.orderName,
+        productionType: item.production ? (item.production === 'REPORT' ? '报告' : (item.production === 'STATEMENT' ? '意见书' : '复评函' )) : '订单',
+        productionNo: item.productionNo,
+        nodeName: item.currentNodeName,
+        clientManager: item.clientManager,
+        principal: item.principal,
+        realAmount: item.realAmount,
+        invoiceAmount: item.invoiceAmount,
+        clienteleName: item.clienteleName,
+        clienteleSubName: item.clienteleSubName,
+        clienteleContactName: item.clienteleContactName,
+        bailor: item.bailor,
+        owner: item.owner,
+        repertoryState: item.repertoryState,
+        delivery: item.delivery ? '已送达' : '未送达',
+        deliveryDate: item.deliveryDate,
+        mdeclareResult: item.mdeclareResult==null ? '未申报' : item.mdeclareResult,
+        edeclareResult: item.edeclareResult==null ? '未申报' : item.edeclareResult,
+      }
+      this.$router.push({
+        path: `/index/major/detail`,
+        query: {
+          item: JSON.stringify(detailInfo),
+        },
+      });
+    },
   },
 };
 </script>
@@ -118,4 +148,8 @@ export default {
   white-space: nowrap;
   text-overflow: ellipsis; */
 }
+
+.van-tag {
+  margin: 2px;
+}
 </style>

+ 9 - 3
src/views/personal/todoDetail.vue

@@ -7,9 +7,15 @@
         <van-field label="坐落" v-model="personal.location" name="location" readonly type="textarea" />
         <van-field label="当前节点" v-model="currentNode.nodeName" name="nodeName" readonly :error="true" />
         <van-field label="处理人" v-model="currentNode.handlerName" name="handlerName" readonly />
-        <van-field label="面积" v-model="personalTarget.acreage" name="acreage" readonly />
-        <van-field label="单价" v-model="personalTarget.price" name="price" readonly />
-        <van-field label="总价" v-model="personalTarget.amount" name="amount" readonly />
+        <van-field label="面积" v-model="personalTarget.acreage" name="acreage" readonly  >
+            <template #button> 平米 </template>
+          </van-field>
+        <van-field label="单价" v-model="personalTarget.price" name="price" readonly  >
+            <template #button> 元 </template>
+          </van-field>
+        <van-field label="总价" v-model="personalTarget.amount" name="amount" readonly  >
+            <template #button> 万元 </template>
+          </van-field>
         <van-field label="客户名称" v-model="personal.clientName" name="clientName" readonly />
         <van-field label="业务来源" v-model="personal.clientSubName" name="clientSubName" readonly />
         <van-field label="中介" v-model="personal.agent" name="agent" readonly />