From 3565269c046b9aed7346f8c6c74a231dd1218ec7 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期二, 19 三月 2024 13:47:39 +0800
Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/zgyw-ui

---
 src/views/system/work-order/distribute/index.vue |   59 +++++--
 src/api/platform/check-result.js                 |    8 +
 src/views/system/check-result/index.vue          |   32 ++++
 src/views/system/contract/index.vue              |    4 
 src/api/platform/work-order.js                   |   18 ++
 src/views/system/check-rule/index.vue            |  119 +++++++++++++++-
 src/views/system/publish/index.vue               |  145 ++++++++++++++++++--
 src/views/system/work-order/index.vue            |    1 
 8 files changed, 336 insertions(+), 50 deletions(-)

diff --git a/src/api/platform/check-result.js b/src/api/platform/check-result.js
index 8f25d9a..0563673 100644
--- a/src/api/platform/check-result.js
+++ b/src/api/platform/check-result.js
@@ -43,6 +43,14 @@
   })
 }
 
+// 鍙戝竷鑰冩牳缁撴灉
+export function publishCheckResult(id) {
+  return request({
+    url: '/check-result/publish/' + id,
+    method: 'put'
+  })
+}
+
 // 鎻愪氦浜哄伐鍒嗘暟
 export function manualScore(data) {
   return request({
diff --git a/src/api/platform/work-order.js b/src/api/platform/work-order.js
index 4b02485..38bdefa 100644
--- a/src/api/platform/work-order.js
+++ b/src/api/platform/work-order.js
@@ -9,6 +9,24 @@
   })
 }
 
+// 鏌ヨ涓嬪彂宸ュ崟鍒楄〃
+export function distributeWorkOrder(query) {
+  return request({
+    url: '/work-order/distribute/page',
+    method: 'post',
+    data: query
+  })
+}
+
+// 蹇�熶笅鍙戝伐鍗�
+export function fastDistribute(data) {
+  return request({
+    url: '/work-order/distribute/fast',
+    method: 'post',
+    data: data
+  })
+}
+
 // 鏌ヨ杩愮淮宸ュ崟璇︾粏
 export function getWorkOrder(id) {
   return request({
diff --git a/src/views/system/check-result/index.vue b/src/views/system/check-result/index.vue
index b8ed730..34a1ad1 100644
--- a/src/views/system/check-result/index.vue
+++ b/src/views/system/check-result/index.vue
@@ -93,7 +93,11 @@
       <div class="text item">鑰冩牳鑼冨洿<span class="time">{{ item.examineRange }}</span></div>
       <div class="text item">鑰冩牳棰戠巼<span class="time">{{ item.frequency }}</span></div>
       <div class="text item">鑰冩牳鍒嗘暟<span class="time">{{ item.checkScore }}</span></div>
-      <div class="text item">鑰冩牳鏃堕棿<span class="time">{{ item.checkTime }}</span></div>
+      <div class="text item">鑰冩牳鏃堕棿
+        <span class="time">{{ item.checkTime }}</span>
+        <el-button size="small" round style="float: right;" @click="handlePublish(item)" v-show="item.publish != 1">纭鍙戝竷</el-button>
+        <el-button size="small" round style="float: right;" v-show="item.publish == 1" disabled="true">宸插彂甯�</el-button>
+      </div>
     </el-card>
 
     <!-- <el-table v-loading="loading" :data="checkResultList" @selection-change="handleSelectionChange">
@@ -194,6 +198,13 @@
         <el-descriptions-item>
           <template slot="label">
             <i class="el-icon-medal"></i>
+            杞﹁締鐐逛綅鍦ㄧ嚎鐜�
+          </template>
+          <el-tag type="danger" size="small">{{detail.carOnlineRate}}</el-tag>
+        </el-descriptions-item>
+        <el-descriptions-item>
+          <template slot="label">
+            <i class="el-icon-medal"></i>
             缁煎悎鍒嗘暟
           </template>
           <el-tag type="danger" size="small">{{detail.systemScore}}</el-tag>
@@ -214,7 +225,7 @@
 </template>
 
 <script>
-import { listCheckResult, getCheckResult, delCheckResult, addCheckResult, updateCheckResult,manualScore } from "@/api/platform/check-result";
+import { listCheckResult, getCheckResult, delCheckResult, addCheckResult, updateCheckResult,manualScore, publishCheckResult } from "@/api/platform/check-result";
 
 export default {
   name: "CheckResult",
@@ -222,7 +233,9 @@
     return {
       detailTitle: '',
       detailOpen: false,
-      detail: {},
+      detail: {
+
+      },
       manualScoreOpen: false,
       manualScoreForm: {},
       manualScoreTitle: '',
@@ -338,8 +351,19 @@
     },
     handleDetail(row) {
       this.detail = row;
+      this.detail.carOnlineRate =  '97%';
       this.detailTitle = row.checkUnitName + '鑰冩牳缁撴灉';
       this.detailOpen = true;
+
+    },
+    handlePublish(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍙戝竷鑰冩牳缁撴灉缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() {
+        return publishCheckResult(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍙戝竷鎴愬姛");
+      }).catch(() => {});
 
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
@@ -437,4 +461,4 @@
   .box-card {
     width: 480px;
   }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/system/check-rule/index.vue b/src/views/system/check-rule/index.vue
index b36c119..b813712 100644
--- a/src/views/system/check-rule/index.vue
+++ b/src/views/system/check-rule/index.vue
@@ -81,9 +81,24 @@
         </template>
       </el-table-column>
       <el-table-column label="瑙勫垯鎻忚堪" align="center" prop="ruleDetail" />
-        <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" />
-        <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+      <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" />
+      <el-table-column label="瀹℃牳鐘舵��" align="center" prop="auditState">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.platform_audit_state" :value="scope.row.auditState"/>
+        </template>
+      </el-table-column>
+      <el-table-column label="瀹℃牳浜�" align="center" prop="auditUser" />
+      <el-table-column label="瀹℃牳鏃堕棿" align="center" prop="auditTime" />
+      <el-table-column label="瀹℃牳鎰忚" align="center" prop="auditDescription" />
+      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
           <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="text"
+              icon="el-icon-s-check"
+              @click="handleAudit(scope.row)"
+              v-hasPermi="['check:rule:audit']"
+            >瀹℃牳</el-button>
             <el-button
               size="mini"
               type="text"
@@ -107,7 +122,7 @@
             :limit.sync="queryParams.pageSize"
             @pagination="getList"
           />
-
+  <div>
     <!-- 娣诲姞鎴栦慨鏀硅�冩牳瑙勫垯瀵硅瘽妗� -->
     <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
@@ -125,7 +140,7 @@
           </el-select>
         </el-form-item>
         <el-form-item label="瑙勫垯鎻忚堪" prop="ruleDetail">
-          <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="璇疯緭鍏ヨ鍒欐弿杩�" />
+          <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="璇疯緭鍏ヨ鍒欐弿杩�"/>
         </el-form-item>
         <el-form-item label="鍙傛暟閰嶇疆" prop="ruleDetail">
           <div class="row-warp">
@@ -138,16 +153,15 @@
               <div class="row-right">
                 <div>涓嶅皯浜�</div>
                 <div>
-                  <el-input class="input-w" type="number" v-model="form.videoPointNum"/>
+                  <el-input class="input-w" type="number" v-model="form.videoPointNum"/>{{" %"}}
                 </div>
-
               </div>
             </div>
             <div class="row">
               <div class="row-left">杞﹁締鍗″彛鐐逛綅鏁�</div>
               <div class="row-right">
                 <div>涓嶅皯浜�</div>
-                <div><el-input class="input-w" type="number" v-model="form.vehicleCheckpointNum"/></div>
+                <div><el-input class="input-w" type="number" v-model="form.vehicleCheckpointNum"/></div>{{" %"}}
               </div>
             </div>
             <div class="row">
@@ -155,7 +169,7 @@
               <div class="row-right">
                 <div>涓嶅皯浜�</div>
                 <div>
-                  <el-input class="input-w" type="number" v-model="form.faceChceckpointNum"/></div>
+                  <el-input class="input-w" type="number" v-model="form.faceChceckpointNum" /></div>{{" %"}}
                 </div>
             </div>
           </div>
@@ -167,6 +181,75 @@
       </div>
     </el-dialog>
   </div>
+
+  <!-- 瀹℃牳鑰冩牳瑙勫垯瀵硅瘽妗� -->
+  <el-dialog :title="title" :visible.sync="auditOpen" width="600px" append-to-body>
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form-item label="瑙勫垯鍚嶇О" prop="ruleName">
+        <el-input v-model="form.ruleName" placeholder="璇疯緭鍏ヨ鍒欏悕绉�" disabled/>
+      </el-form-item>
+      <el-form-item label="瑙勫垯绫诲瀷" prop="category">
+        <el-select v-model="form.category" placeholder="瑙勫垯绫诲瀷" disabled>
+          <el-option
+            v-for="item in categoryList"
+            :key="item.id"
+            :label="item.value"
+            :value="item.id">
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="瑙勫垯鎻忚堪" prop="ruleDetail">
+        <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="璇疯緭鍏ヨ鍒欐弿杩�" disabled/>
+      </el-form-item>
+      <el-form-item label="鍙傛暟閰嶇疆" prop="ruleDetail" disabled>
+        <div class="row-warp">
+          <div class="row">
+            <div class="row-left">鍙傛暟鍚�</div>
+            <div class="row-right">鏉′欢</div>
+          </div>
+          <div class="row">
+            <div class="row-left">澶╃綉瑙嗛鐐逛綅鏁�</div>
+            <div class="row-right">
+              <div>涓嶅皯浜�</div>
+              <div>
+                <el-input class="input-w" type="number" v-model="form.videoPointNum" disabled/>
+              </div>
+            </div>
+          </div>
+          <div class="row">
+            <div class="row-left">杞﹁締鍗″彛鐐逛綅鏁�</div>
+            <div class="row-right">
+              <div>涓嶅皯浜�</div>
+              <div><el-input class="input-w" type="number" v-model="form.vehicleCheckpointNum" disabled/></div>
+            </div>
+          </div>
+          <div class="row">
+            <div class="row-left">浜鸿劯鍗″彛鐐逛綅鏁�</div>
+            <div class="row-right">
+              <div>涓嶅皯浜�</div>
+              <div>
+                <el-input class="input-w" type="number" v-model="form.faceChceckpointNum" disabled/></div>
+            </div>
+          </div>
+        </div>
+      </el-form-item>
+      <el-form-item label="瀹℃牳缁撴灉" prop="auditState" >
+        <el-radio-group v-model="form.auditState">
+        <el-radio :label="1">閫氳繃</el-radio>
+        <el-radio :label="2">椹冲洖</el-radio>
+        </el-radio-group>
+      </el-form-item>
+      <el-form-item label="瀹℃牳璇存槑" prop="auditDescription" >
+        <el-input v-model="form.auditDescription" type="textarea" show-word-limit maxlength="100" />
+      </el-form-item>
+    </el-form>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+      <el-button @click="cancel">鍙� 娑�</el-button>
+    </div>
+  </el-dialog>
+
+  </div>
 </template>
 
 <script>
@@ -174,6 +257,7 @@
 
 export default {
   name: "CheckRule",
+  dicts: ['platform_audit_state'],
   data() {
     return {
       // 閬僵灞�
@@ -201,6 +285,8 @@
       title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
       open: false,
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      auditOpen: false,
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -238,6 +324,7 @@
     // 鍙栨秷鎸夐挳
     cancel() {
       this.open = false;
+      this.auditOpen = false;
       this.reset();
     },
     // 琛ㄥ崟閲嶇疆
@@ -285,6 +372,17 @@
         this.form = response.data;
         this.open = true;
         this.title = "淇敼鑰冩牳瑙勫垯";
+
+      });
+    },
+    /** 瀹℃牳鎸夐挳鎿嶄綔 */
+    handleAudit(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getCheckRule(id).then(response => {
+        this.form = response.data;
+        this.auditOpen = true;
+        this.title = "瀹℃牳鑰冩牳瑙勫垯";
       });
     },
     /** 鎻愪氦鎸夐挳 */
@@ -295,12 +393,14 @@
             updateCheckRule(this.form).then(response => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.open = false;
+              this.auditOpen = false;
               this.getList();
             });
           } else {
             addCheckRule(this.form).then(response => {
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.open = false;
+              this.auditOpen = false;
               this.getList();
             });
           }
@@ -317,6 +417,7 @@
         this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
       }).catch(() => {});
     },
+
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
       this.download('system/checkRule/export', {
@@ -330,7 +431,7 @@
 <style scoped>
 .input-w {
   margin-left: 5px;
-  width: 100px;
+  width: 70px;
 }
 .row-warp {
   display: flex;
diff --git a/src/views/system/contract/index.vue b/src/views/system/contract/index.vue
index 0e76e36..5353213 100644
--- a/src/views/system/contract/index.vue
+++ b/src/views/system/contract/index.vue
@@ -95,7 +95,7 @@
     </el-dialog>
     
     <!-- 鍚堝悓璇︽儏 -->
-    <el-dialog :title="detailName" :visible.sync="detail" width="500px" append-to-body>
+    <el-dialog :title="detailName" :visible.sync="detail" width="800px" append-to-body>
       <el-form label-position="left" inline class="table-expand">
         <el-collapse v-model="activeNames" @change="handleChange">
           <el-collapse-item title="瑙嗛骞冲潎鍦ㄧ嚎鐜�" name="1">
@@ -198,7 +198,7 @@
                 </span>
               </div>
           </el-upload>
-          <el-dialog :visible.sync="dialogVisible">
+          <el-dialog :visible.sync="dialogVisible" append-to-body="false">
             <img width="100%" :src="dialogImageUrl" alt="">
           </el-dialog>
           <div style="text-align: right; margin-top: 10px;">
diff --git a/src/views/system/publish/index.vue b/src/views/system/publish/index.vue
index 7c10d18..b508a11 100644
--- a/src/views/system/publish/index.vue
+++ b/src/views/system/publish/index.vue
@@ -117,12 +117,25 @@
         <dict-tag :options="dict.type.sys_normal_disable" :value="scope.row.state"/>
       </template>
       </el-table-column>
-      <el-table-column label="鍒涘缓浜�" align="center" prop="createUserName" />
-      <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" />
       <el-table-column label="淇敼浜�" align="center" prop="updateUserName" />
-      <el-table-column label="淇敼鏃堕棿" align="center" prop="updateTime" />
+      <el-table-column label="淇敼鏃堕棿" align="center" prop="updateTime" width="170px" />
+      <el-table-column label="瀹℃牳鐘舵��" align="center" prop="auditState">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.platform_audit_state" :value="scope.row.auditState"/>
+        </template>
+      </el-table-column>
+      <el-table-column label="瀹℃牳浜�" align="center" prop="auditUser" />
+      <el-table-column label="瀹℃牳鏃堕棿" align="center" prop="auditTime" width="170px"/>
+      <el-table-column label="瀹℃牳鎰忚" align="center" prop="auditDescription" />
       <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-s-check"
+            @click="handleAudit(scope.row)"
+            v-hasPermi="['examine:publish:audit']"
+          >瀹℃牳</el-button>
           <el-button
             size="mini"
             type="text"
@@ -146,7 +159,7 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
-
+  <div>
     <!-- 娣诲姞鎴栦慨鏀硅�冩牳鍙戝竷瀵硅瘽妗� -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
@@ -175,22 +188,22 @@
               v-for="dict in dict.type.platform_examine_range"
               :key="dict.value"
               :label="dict.label"
-              :value="dict.value"
+              :value="parseInt(dict.value)"
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="鑰冩牳棰戠巼" prop="frequency">
-          <el-select
-            v-model="form.frequency"
-            placeholder="鑰冩牳棰戠巼"
-            clearable
-            style="width: 170px"
-          >
+        <el-form-item label="鑰冩牳棰戠巼">
+            <el-select
+              v-model="form.frequency"
+              placeholder="鑰冩牳棰戠巼"
+              clearable
+              style="width: 170px"
+            >
             <el-option
               v-for="dict in dict.type.platform_examine_frequency"
               :key="dict.value"
               :label="dict.label"
-              :value="dict.value"
+              :value="parseInt(dict.value)"
             />
           </el-select>
         </el-form-item>
@@ -208,7 +221,7 @@
               v-for="dict in dict.type.sys_normal_disable"
               :key="dict.value"
               :label="dict.label"
-              :value="dict.value"
+              :value="parseInt(dict.value)"
             />
           </el-select>
         </el-form-item>
@@ -221,6 +234,94 @@
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </el-dialog>
+
+    <!-- 瀹℃牳鑰冩牳鍙戝竷瀵硅瘽妗� -->
+    <el-dialog :title="title" :visible.sync="auditOpen" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="鑰冩牳鍚�" prop="examineName">
+          <el-input v-model="form.examineName" placeholder="璇疯緭鍏ヨ�冩牳鍚�" disabled/>
+        </el-form-item>
+        <el-form-item label="鑰冩牳妯℃澘" prop="templateId">
+          <el-select v-model="form.templateId" placeholder="鑰冩牳妯℃澘" disabled>
+            <el-option
+              v-for="item in templateList"
+              :key="item.id"
+              :label="item.value"
+              :value="item.id">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鑰冩牳鑼冨洿" prop="examineRange" >
+          <el-select
+            v-model="form.examineRange"
+            placeholder="鑰冩牳鑼冨洿"
+            clearable
+            style="width: 170px"
+            disabled
+          >
+            <el-option
+              v-for="dict in dict.type.platform_examine_range"
+              :key="dict.value"
+              :label="dict.label"
+              :value="parseInt(dict.value)"
+            />
+          </el-select>
+        </el-form-item>
+
+        <el-form-item label="鑰冩牳棰戠巼" prop="frequency" >
+          <el-select
+            v-model="form.frequency"
+            placeholder="鑰冩牳棰戠巼"
+            clearable
+            style="width: 170px"
+            disabled
+          >
+            <el-option
+              v-for="dict in dict.type.platform_examine_frequency"
+              :key="dict.value"
+              :label="dict.label"
+              :value="parseInt(dict.value)"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鎶ヨ鍒嗘暟闃堝��" prop="alarmScore">
+          <el-input v-model="form.alarmScore" placeholder="璇疯緭鍏ュ垎鏁�" style="width: 170px"  disabled/>
+        </el-form-item>
+        <el-form-item label="鑰冩牳鐘舵��" prop="state">
+          <el-select
+            v-model="form.state"
+            placeholder="鑰冩牳鐘舵��"
+            clearable
+            style="width: 170px"
+            disabled
+          >
+            <el-option
+              v-for="dict in dict.type.sys_normal_disable"
+              :key="dict.value"
+              :label="dict.label"
+              :value="parseInt(dict.value)"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鎻忚堪" prop="description">
+          <el-input v-model="form.description" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" disabled/>
+        </el-form-item>
+        <el-form-item label="瀹℃牳缁撴灉" prop="auditState" >
+          <el-radio-group v-model="form.auditState">
+            <el-radio :label="1">閫氳繃</el-radio>
+            <el-radio :label="2">椹冲洖</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="瀹℃牳璇存槑" prop="auditDescription" >
+          <el-input v-model="form.auditDescription" type="textarea" show-word-limit maxlength="100" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+        <el-button @click="cancel">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+  </div>
   </div>
 </template>
 
@@ -229,7 +330,7 @@
 import { templateSelect } from "@/api/platform/check-template";
 export default {
   name: "Publish",
-  dicts: ['sys_normal_disable','platform_examine_range','platform_examine_frequency'],
+  dicts: ['sys_normal_disable','platform_examine_range','platform_examine_frequency','platform_audit_state'],
   data() {
     return {
       // 閬僵灞�
@@ -250,6 +351,7 @@
       title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
       open: false,
+      auditOpen: false,
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -291,6 +393,7 @@
     // 鍙栨秷鎸夐挳
     cancel() {
       this.open = false;
+      this.auditOpen = false;
       this.reset();
     },
     // 琛ㄥ崟閲嶇疆
@@ -341,6 +444,16 @@
         this.title = "淇敼鑰冩牳鍙戝竷";
       });
     },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleAudit(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getPublish(id).then(response => {
+        this.form = response.data;
+        this.auditOpen = true;
+        this.title = "瀹℃牳鑰冩牳鍙戝竷";
+      });
+    },
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
       this.$refs["form"].validate(valid => {
@@ -349,12 +462,14 @@
             updatePublish(this.form).then(response => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.open = false;
+              this.auditOpen = false;
               this.getList();
             });
           } else {
             addPublish(this.form).then(response => {
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.open = false;
+              this.auditOpen = false;
               this.getList();
             });
           }
diff --git a/src/views/system/work-order/distribute/index.vue b/src/views/system/work-order/distribute/index.vue
index 0a0f18c..8e9ab85 100644
--- a/src/views/system/work-order/distribute/index.vue
+++ b/src/views/system/work-order/distribute/index.vue
@@ -2,7 +2,7 @@
   <div class="row">
     <el-row type="flex" justify="left">
       <el-col :span="24" style="position: relative">
-        <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
+        <el-menu :default-active="activeIndex" class="el-menu" mode="horizontal" @select="handleSelect">
           <el-menu-item index="0" @click="changeUnit(null, '鍏ㄩ儴')">
             鍏ㄩ儴鍗曚綅
           </el-menu-item>
@@ -27,13 +27,19 @@
     <el-row class="op-warp" type="flex" justify="left" >
       <el-col :span="24">
         <el-button size="small" type="info" @click="selectedDistribute" class="op">涓嬪彂閫変腑宸ュ崟</el-button>
-        <el-button size="small" type="danger" @click="allDistribute" class="op">鍏ㄩ儴涓嬪彂</el-button>
+        <el-popconfirm
+          @confirm="allDistribute"
+          title="纭畾瑕佷笅鍙戞墍鏈夊伐鍗曞悧锛�"
+        >
+          <el-button size="small" type="danger"  class="op" slot="reference">鍏ㄩ儴涓嬪彂</el-button>
+        </el-popconfirm>
+
         <el-popover
           class="op"
           placement="right"
           width="300px"
           trigger="click">
-          <span style="font-weight: bold;font-size: 16px">蹇�熶笅鍙�</span>
+          <span style="font-weight: bold;font-size: 16px">蹇嵎涓嬪彂</span>
           <el-form ref="fastDistributeForm" :model="fastDistributeForm" :rules="fastDistributeRules" label-width="80px">
             <el-form-item label="蹇嵎鏂瑰紡" prop="fastWay">
               <el-radio v-model="fastDistributeForm.fastWay" label="0">鏈�杩�30鍒嗛挓</el-radio>
@@ -89,6 +95,7 @@
 </template>
 
 <script>
+import {distributeWorkOrder, fastDistribute} from '@/api/platform/work-order'
 export default {
   name: 'index',
   data() {
@@ -102,7 +109,7 @@
       fastTimeRange: [],
       // 涓嬪彂
       fastDistributeForm: {
-        fastWay: '',
+        fastWay: null,
         fastNumLimit: null,
         start: null,
         end: null,
@@ -118,8 +125,9 @@
         ],
       },
       queryParams: {
+        unitId: null,
         pageNum: 1,
-        pageSize: 10,
+        pageSize: 20,
       },
       // 鎬绘潯鏁�
       total: 0,
@@ -130,11 +138,23 @@
       workOrderList: [],
     }
   },
+  mounted() {
+    this.page();
+  },
   methods: {
+    page() {
+      this.loading = true;
+      distributeWorkOrder(this.queryParams).then(res => {
+        this.workOrderList = res.data;
+        this.total = res.total;
+        this.loading = false;
+      })
+    },
     changeUnit(unitId, unitName) {
       this.unitId = unitId;
+      this.queryParams.unitId = unitId;
       this.unitName = unitName;
-      // todo 瑙﹀彂鏁版嵁鏌ヨ
+      this.page()
     },
     clearFastDistributeForm() {
       this.fastDistributeForm.fastWay = ''
@@ -146,17 +166,12 @@
     allDis() {},
     // 鍏ㄩ儴涓嬪彂
     allDistribute() {
-      this.$modal.confirm("纭畾瑕佷笅鍙�" + (this.unitId ? this.unitName + "涓嬬殑" : "鎵�鏈夊伐鍗�") + "鍚楋紵").then(function() {
-        return this.allDis();
-      }).then(() => {
-        // this.getList();
-        // this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-      }).catch(() => {});
+      this.fastDistribute();
     },
     // 蹇�熶笅鍙�
     fastDistribute() {
-      this.$refs['fastDistributeForm'].validate((valid) => {
-        if (valid) {
+      // this.$refs['fastDistributeForm'].validate((valid) => {
+      //   if (valid) {
           // 濡傛灉鏄嚜瀹氫箟鏂瑰紡锛岄偅涔堟椂闂存蹇呭~
           if (this.fastDistributeForm.fastWay === '101' && !this.fastTimeRange.length > 0) {
             this.$message.warning("璇烽�夋嫨鏃堕棿鑼冨洿")
@@ -167,11 +182,14 @@
             this.fastDistributeForm.end = this.fastTimeRange[1]
           }
           this.fastDistributeForm.unitId = this.unitId
-          // todo 鎻愪氦蹇�熷彂甯冭姹�
-        } else {
-          return false
-        }
-      })
+          fastDistribute(this.fastDistributeForm).then(res => {
+            // this.clearFastDistributeForm();
+            this.page();
+          })
+        // } else {
+        //   return false
+        // }
+      // })
     },
     // 閫変腑宸ュ崟涓嬪彂
     selectedDistribute() {
@@ -179,7 +197,7 @@
         this.$message.warning("璇峰厛閫夋嫨瑕佷笅鍙戠殑宸ュ崟")
         return
       }
-      // todo 涓嬪彂宸ュ崟
+      this.fastDistribute();
     },
     handleSelect(key, keyPath) {
       console.log(key, keyPath);
@@ -213,4 +231,5 @@
   top: 10px;
   right:5px
 }
+
 </style>
diff --git a/src/views/system/work-order/index.vue b/src/views/system/work-order/index.vue
index e1ef50b..f27f236 100644
--- a/src/views/system/work-order/index.vue
+++ b/src/views/system/work-order/index.vue
@@ -102,6 +102,7 @@
             size="mini"
             type="text"
             @click="handleAuditing(scope.row)"
+            v-hasPermi="['work:order:audit']"
           >瀹℃牳</el-button>
           <el-button
             size="mini"

--
Gitblit v1.8.0