From 74c60c36aef44eb3b9c033704a67edb4b4d333cd Mon Sep 17 00:00:00 2001
From: he wei <858544502@qq.com>
Date: 星期五, 05 十一月 2021 12:17:36 +0800
Subject: [PATCH] U 修改工单列表页面

---
 src/pages/alarmWork/list.vue                |   78 +++++++++++++++++++------
 src/pages/alarmWork/js/const.js             |   20 ++++++
 src/router/routes.js                        |    4 
 src/pages/alarmWork/components/listCard.vue |   25 ++++++--
 src/pages/alarmWork/index.vue               |    2 
 5 files changed, 100 insertions(+), 29 deletions(-)

diff --git a/src/pages/alarmWork/components/listCard.vue b/src/pages/alarmWork/components/listCard.vue
index 7de954f..aa003c1 100644
--- a/src/pages/alarmWork/components/listCard.vue
+++ b/src/pages/alarmWork/components/listCard.vue
@@ -7,9 +7,9 @@
     >
       <div class="">
         <span>宸ュ崟缂栧彿: {{data.orderId}}</span>
-        <span>宸ュ崟鐢熸垚鏃堕棿: {{data.workflowAlarm.alarmTime}}</span>
+        <span>宸ュ崟鐢熸垚鏃堕棿: {{data.createTime}}</span>
       </div>
-      <div class="timer">澶勭悊鏃堕檺:3333</div>
+      <div class="timer">澶勭悊鏃堕檺: ---</div>
     </div>
     <!-- 鍐呭 -->
     <div class="contain">
@@ -28,18 +28,18 @@
       <div class="item">
         <div class="inner">
           <div class="title">褰撳墠澶勭悊鐜妭</div>
-          <div class="content strong">T1澶勭悊涓�</div>
+          <div class="content strong">{{status}}</div>
         </div>
       </div>
       <div class="item">
         <div class="inner">
           <div class="title">鍛婅鏄惁娓呴櫎</div>
-          <div class="content strong">鏈竻闄�</div>
+          <div class="content strong">---</div>
         </div>
       </div>
       <div class="item">
         <div class="inner">
-          <div class="state">寰呭鐞�</div>
+          <div class="state">{{orderStatus}}</div>
         </div>
       </div>
     </div>
@@ -47,17 +47,30 @@
 </template>
 
 <script>
+import {
+  STATUS,
+  ORDERTYPE
+} from '../js/const';
+
 export default {
   props: {
     data: {
       type: Object,
       default () {
         return {
-
+          
         }
       }
     }
   },
+  computed: {
+    status () {
+      return STATUS[this.data.status] || '鐘舵�侀敊璇�';
+    },
+    orderStatus () {
+      return ORDERTYPE[this.$route.meta.unitType];
+    }
+  },
   methods: {
     itemClick () {
       this.$emit('itemclick', this.data);
diff --git a/src/pages/alarmWork/index.vue b/src/pages/alarmWork/index.vue
index 0183404..2f5482e 100644
--- a/src/pages/alarmWork/index.vue
+++ b/src/pages/alarmWork/index.vue
@@ -1,5 +1,5 @@
 <template>
-	<router-view></router-view>
+	<router-view :key="$route.fullPath"></router-view>
 </template>
 
 <script>
diff --git a/src/pages/alarmWork/js/const.js b/src/pages/alarmWork/js/const.js
new file mode 100644
index 0000000..eab900e
--- /dev/null
+++ b/src/pages/alarmWork/js/const.js
@@ -0,0 +1,20 @@
+// 褰撳墠鐘舵��
+const STATUS = {
+  "0": "鑷姩娲惧崟",
+  "2": "浜哄伐娲惧崟",
+  "3": "T1澶勭悊涓�",
+  "4": "T2澶勭悊涓�",
+  "5": "褰掓。",
+  "6": "鎾ら攢"
+};
+
+// 宸ュ崟鐘舵��
+const ORDERTYPE = {
+  "0": "寰呭鐞�",
+  "1": "宸插鐞�"
+}
+
+export {
+  STATUS,
+  ORDERTYPE
+};
\ No newline at end of file
diff --git a/src/pages/alarmWork/list.vue b/src/pages/alarmWork/list.vue
index ff71924..46eb8a1 100644
--- a/src/pages/alarmWork/list.vue
+++ b/src/pages/alarmWork/list.vue
@@ -7,7 +7,7 @@
           <el-col :span="12">
             <label>
               <span class="label">鏍囬鍐呭:</span>
-              <el-input v-model="title" size="small" placeholder="璇疯緭鍏ュ叧閿瘝"></el-input>
+              <el-input v-model="title" size="small" @change="keyWordChanged" placeholder="璇疯緭鍏ュ叧閿瘝"></el-input>
             </label>
           </el-col>
           <el-col :span="12">
@@ -20,13 +20,14 @@
                 range-separator=" ~ "
                 start-placeholder="寮�濮嬫棩鏈�"
                 end-placeholder="缁撴潫鏃ユ湡"
+                @change="dateChanged"
               >
               </el-date-picker>
             </label>
           </el-col>
         </el-row>
         <div class="" slot="footer">
-          <el-button type="primary" icon="el-icon-search">鏌ヨ</el-button>
+          <el-button type="primary" @click="getList" icon="el-icon-search">鏌ヨ</el-button>
         </div>
       </flex-layout>
     </div>
@@ -40,10 +41,11 @@
           @itemclick="details"
           :data="item"
         ></list-card>
+        <el-empty :image-size="200" v-if="!list.length"></el-empty>
       </div>
       <!-- 鍒嗛〉 -->
       <div class="pagination" slot="footer">
-        <el-button type="primary" size="mini" icon="el-icon-arrow-left">涓婁竴椤�</el-button>
+        <el-button type="primary" :disabled="!page.hasPreviousPage" size="mini" icon="el-icon-arrow-left" @click="prevPage">涓婁竴椤�</el-button>
         <el-pagination
           @size-change="handleSizeChange"
           @current-change="handleCurrentChange"
@@ -53,7 +55,7 @@
           layout="total, sizes, prev, pager, next, jumper"
           :total="page.total">
         </el-pagination>
-        <el-button type="primary" size="mini" icon="el-icon-arrow-right">涓嬩竴椤�</el-button>
+        <el-button type="primary" :disabled="!page.hasNextPage" size="mini" icon="el-icon-arrow-right" @click="nextPage">涓嬩竴椤�</el-button>
       </div>
     </flex-layout>
   </flex-layout>
@@ -72,17 +74,17 @@
 		return {
 			unitType: 1,
       title: "",
-      desc: "",
       datetime: "",
-      level: 0,
-      fileList: [],
-      operate: 0,
       list: [],
       page: {
         currentPage: 1,
         pageSizes: [1, 5, 10, 20],
         pageSize: 5,
-        total: 0
+        total: 0,
+        hasNextPage: false,
+        hasPreviousPage: false,
+        prePage: 0,
+        nextPage: 0
       }
 		}
 	},
@@ -99,31 +101,67 @@
   methods: {
     details (data) {
       console.log(data);
+      this.$message({
+        type: 'success',
+        message: '娉ㄦ剰, 鎴戣璺宠浆璇︽儏椤甸潰浜� 鍗曞彿锛�' + data.orderId
+      });
     },
     handleSizeChange (val) {
-      console.log(`姣忛〉 ${val} 鏉);
+      // console.log(`姣忛〉 ${val} 鏉);
+      this.page.pageSize = val;
+      this.getList();
     },
     handleCurrentChange (val) {
-      console.log(`褰撳墠椤�: ${val}`);
+      // console.log(`褰撳墠椤�: ${val}`);
+      this.page.currentPage = val;
+      this.getList();
+    },
+    // 涓婁竴椤�
+    prevPage () {
+      this.page.currentPage = this.page.prePage;
+      this.getList();
+    },
+    // 涓嬩竴椤�
+    nextPage () {
+      this.page.currentPage = this.page.nextPage;
+      this.getList();
+    },
+    keyWordChanged () {
+      this.getList();
+    },
+    dateChanged () {
+      // TODO
+      this.$message({
+        type: 'warning',
+        message: '鍔熻兘寮�鍙戜腑...'
+      });
     },
     // 鏌ュ垪琛�
     getList () {
       let param = {
-        pageNum: 1,
-        pageSize: 1,
-        type: 1
+        pageNum: this.page.currentPage,
+        pageSize: this.page.pageSize,
+        type: this.unitType
       };
-      let data = {
-
-      };
+      let data = {};
+      if (this.title) {
+        data.title = this.title;
+      }
       getList(param, data).then((res) => {
         res = res.data;
-        console.log(res, '=====');
+        // console.log(res, '=====');
         let list = [];
         if (res.code) {
-          list = res.data;
+          let _data = res.data;
+          list = _data.list;
+          // 鏇存柊鍒嗛〉鏁版嵁
+          this.page.total = _data.total;
+          this.page.hasNextPage = _data.hasNextPage;
+          this.page.hasPreviousPage = _data.hasPreviousPage;
+          this.page.prePage = _data.prePage;
+          this.page.nextPage = _data.nextPage;
         }
-        console.log(list);
+        // console.log(list);
         this.list = list;
       }).catch((err) => {
         console.error(err);
diff --git a/src/router/routes.js b/src/router/routes.js
index 437e046..dc48ff8 100644
--- a/src/router/routes.js
+++ b/src/router/routes.js
@@ -22,14 +22,14 @@
                     path: 'pending',
                     meta: {
                         title: '寰呭鐞嗗垪琛�',
-                        unitType: 1
+                        unitType: 0
                     },
                     component: (resolve) => require(['@/pages/alarmWork/list.vue'], resolve),
                 }, {
                     path: 'processed',
                     meta: {
                         title: '宸插鐞嗗垪琛�',
-                        unitType: 2
+                        unitType: 1
                     },
                     component: (resolve) => require(['@/pages/alarmWork/list.vue'], resolve),
                 },

--
Gitblit v1.9.1