From 5cbba170e270e6f1c99a91e27dbb7951a27d596a Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期五, 24 十一月 2023 16:41:32 +0800
Subject: [PATCH] 故障报修验收

---
 src/views/eam/RepairOrderList.vue |  427 ++++++++++++++++++++++++++++++++++------------------
 1 files changed, 278 insertions(+), 149 deletions(-)

diff --git a/src/views/eam/RepairOrderList.vue b/src/views/eam/RepairOrderList.vue
index e4c38fa..e606ddc 100644
--- a/src/views/eam/RepairOrderList.vue
+++ b/src/views/eam/RepairOrderList.vue
@@ -1,6 +1,6 @@
 <template>
   <a-card
-    title="缁翠慨宸ュ崟"
+    title="缁翠慨"
     :bordered="false"
   >
     <div class="table-page-search-wrapper">
@@ -8,6 +8,22 @@
         layout="inline"
         @keyup.enter.native="searchQuery"
       >
+      <a-row :gutter="24" style="margin-bottom: 1%;">
+          <a-col
+            :xl="24"
+            :lg="7"
+            :md="8"
+            :sm="24"
+          >
+          <a-form-item label="缁熶竴缂栧彿缇�">
+              <a-textarea
+                placeholder="璇疯緭鍏ユ墍鏈夌粺涓�缂栫爜,椤荤敤鈥�,鈥濋殧寮�,鍚﹀垯鍙兘鏌ヨ鍑洪敊璇俊鎭�"
+                v-model="queryParam.nums"
+                :auto-size="{ minRows: 2, maxRows:2 }"
+              ></a-textarea>
+            </a-form-item>
+          </a-col>
+        </a-row>
         <a-row :gutter="24">
           <a-col
             :xl="6"
@@ -20,7 +36,7 @@
                 allow-clear
                 placeholder="璇烽�夋嫨宸ュ崟鐘舵��"
                 :triggerChange="true"
-                dictCode="repair_order_status"
+                dictCode="true_repair_status"
                 v-model="queryParam.status"
               />
             </a-form-item>
@@ -44,14 +60,14 @@
             :md="8"
             :sm="24"
           >
-            <a-form-item label="璁惧缂栫爜">
+            <a-form-item label="缁熶竴缂栫爜">
               <a-input
-                placeholder="璇疯緭鍏ヨ澶囩紪鐮�"
+                placeholder="璇疯緭鍏ョ粺涓�缂栫爜"
                 v-model="queryParam.equipmentNum"
               ></a-input>
             </a-form-item>
           </a-col>
-          <a-col :span="3">
+          <!-- <a-col :span="3">
             <span
               style="float: left;overflow: hidden;"
               class="table-page-search-submitButtons"
@@ -64,12 +80,8 @@
                 <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
               </a>
             </span>
-          </a-col>
-        </a-row>
-
-        <template v-if="toggleSearchStatus">
-          <a-row :gutter="24">
-            <a-col
+          </a-col> -->
+          <a-col
               :xl="6"
               :lg="7"
               :md="8"
@@ -82,8 +94,95 @@
                 ></a-input>
               </a-form-item>
             </a-col>
+        </a-row>
+          <a-row :gutter="24">
+            <a-col 
+            :xl="6"
+              :lg="7"
+              :md="8"
+              :sm="24">
+            <a-form-item
+            label="璁惧鎵�灞炲垎绫�" 
+            >
+              <j-dict-select-tag
+                dictCode="mom_eam_equipment_category,name,id"
+                placeholder="璇疯緭鍏ユ悳绱㈡潯浠跺苟閫夋嫨"
+                v-model="queryParam.equipmentCategoryId"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col 
+          :xl="6"
+            :lg="7"
+              :md="8"
+              :sm="24"
+          >
+            <a-form-item
+              label="宸ュ尯"
+            >
+              <j-dict-select-tag
+                allow-clear
+                placeholder="璇烽�夋嫨璧勫伐鍖�"
+                :triggerChange="true"
+                dictCode="mom_base_area,name,id,del_flag!='1'"
+                v-model="queryParam.factoryModelId"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col
+          :xl="6"
+            :lg="7"
+              :md="8"
+              :sm="24"
+          >
+            <a-form-item
+              label="鏄惁鍏抽敭璁惧"
+            >
+              <j-dict-select-tag
+                allow-clear
+                placeholder="璇烽�夋嫨鏄惁鍏抽敭璁惧"
+                :triggerChange="true"
+                dictCode="specific_equipment"
+                v-model="queryParam.specificEquipment"
+              />
+            </a-form-item>
+          </a-col>
+          <a-col
+            :xl="6"
+            :lg="7"
+            :md="8"
+            :sm="24"
+          >
+            <a-form-item label="缁翠慨鐘舵��">
+              <j-dict-select-tag
+                allow-clear
+                placeholder="璇烽�夋嫨缁翠慨鐘舵��"
+                :triggerChange="true"
+                dictCode="repair_status"
+                v-model="queryParam.repairOrderUda1"
+              />
+            </a-form-item>
+          </a-col>
           </a-row>
-        </template>
+          <!-- <a-row :gutter="24">
+            <a-col 
+            :xl="6"
+            :lg="7"
+              :md="8"
+              :sm="24">
+            <a-form-item
+              label="宸ュ尯"
+            >
+              <j-dict-select-tag
+                allow-clear
+                placeholder="璇烽�夋嫨宸ュ尯"
+                :triggerChange="true"
+                dictCode="mom_base_area,name,id,del_flag!='1'"
+                v-model="queryParam.factoryModelId"
+              />
+            </a-form-item>
+          </a-col>
+          </a-row> -->
       </a-form>
     </div>
     <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
@@ -94,10 +193,10 @@
             key="1"
             @click="handleAddPre(1)"
           ><a-icon type="smile" />鑷缓</a-menu-item>
-          <a-menu-item
+          <!-- <a-menu-item
             key="2"
             @click="handleAddPre(2)"
-          ><a-icon type="copy" />鍙傜収淇濅慨鏁呴殰鍗�</a-menu-item>
+          ><a-icon type="copy" />鍙傜収鏁呴殰鎶ヤ慨鍗�</a-menu-item> -->
           <a-menu-item
             key="2"
             @click="handleAddPre(3)"
@@ -126,6 +225,11 @@
         @click="handleDispatch()"
         :disabled="selectionRows.length==0"
       >娲惧伐</a-button>
+      <a-button
+          type="primary"
+          icon="plus"
+          @click="getReports"
+      >棰嗗彇</a-button>
       <!-- <a-button type="primary" icon="download" @click="handleExportXls('缁翠慨宸ュ崟')">瀵煎嚭</a-button>
       <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
         <a-button type="primary" icon="import">瀵煎叆</a-button>
@@ -160,15 +264,22 @@
         :loading="loading"
         @change="handleTableChange"
         :customRow="clickThenSelect"
+        :rowClassName="tableRowClass"
       >
-        <!-- :rowSelection="rowSelection" -->
-
+        <span slot="jell" slot-scope="text">
+            <j-ellipsis :value="text" :length="8" />
+        </span>
+        <span
+          slot="specificEquipment"
+          slot-scope="text"
+        >
+        <a-icon type="check" style="color: chartreuse;" v-if="text==='0'" />
+        <a-icon type="close" v-else style="color:red;"/>
+      </span>
         <span
           slot="num"
           slot-scope="text, record"
         >
-
-
           <a
             v-if="record.status === '3' || record.status === '4' ||record.status === '5'  ||record.status === '7' "
             class="lot"
@@ -176,71 +287,6 @@
           ><j-ellipsis :value="text" :length="15"/></a>
           <span v-else> <j-ellipsis :value="text" :length="15"/></span>
         </span>
-
-        <!-- <span
-          slot="action"
-          slot-scope="text, record"
-        >
-          <a-popconfirm
-            title="纭畾涓嬪彂鍚�?"
-            @confirm="() => handleDistribute(record)"
-          >
-            <a v-if="record.status=='0'">涓嬪彂</a>
-          </a-popconfirm>
-          <a-divider
-            type="vertical"
-            v-if="record.status=='0'"
-          />
-          <a-popconfirm
-            title="纭畾鎾ゅ洖鍚�?"
-            @confirm="() => handleWithdraw(record)"
-          >
-            <a v-if="record.status=='1'">鎾ゅ洖</a>
-          </a-popconfirm>
-          <a-divider
-            type="vertical"
-            v-if="record.status=='1'"
-          />
-          <a-popconfirm
-            title="纭畾棰嗗彇鍚�?"
-            @confirm="() => handleReceive(record)"
-          >
-            <a v-if="record.status=='1'">棰嗗彇</a>
-          </a-popconfirm>
-          <a-divider
-            type="vertical"
-            v-if="record.status=='1'"
-          />
-          <a
-            v-if="record.status === '2' || record.status === '3' ||record.status === '4'"
-            @click="handleOrderExe(record)"
-          >鎵ц</a>
-          <a-divider
-            type="vertical"
-            v-if="record.status === '2' || record.status === '3' ||record.status === '4'"
-          />
-          <a
-            @click="handleEditPre(record)"
-            v-if="record.status=='0'"
-          >缂栬緫</a>
-          <a-divider
-            type="vertical"
-            v-if="record.status=='0'"
-          />
-          <a-dropdown v-if="record.status=='0'">
-            <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
-            <a-menu slot="overlay">
-              <a-menu-item>
-                <a-popconfirm
-                  title="纭畾鍒犻櫎鍚�?"
-                  @confirm="() => handleDelete(record.id)"
-                >
-                  <a>鍒犻櫎</a>
-                </a-popconfirm>
-              </a-menu-item>
-            </a-menu>
-          </a-dropdown>
-        </span> -->
         <span
           slot="action"
           slot-scope="text, record"
@@ -275,10 +321,10 @@
             v-if="record.status == '1' && record.dispatchMethod == '1'  "
             @click="handleAssignOrder(record)"
           >娲惧伐</a>
-          <a
+          <!-- <a
             v-if="record.status == '2' && record.dispatchMethod != null "
             @click="handleAssignOrder(record)"
-          >鏀规淳</a>
+          >鏀规淳</a> -->
           <a-divider
             v-if="record.status == '1' || record.status == '2' "
             type="vertical"
@@ -407,9 +453,14 @@
     <repair-order-excute-drawer
       ref="repairOrderExcuteDrawer"
       @ok="modalFormOk"
+      :repairOrderId="repairOrderFaultAnalysisMainId"
       :repairOrder="excuteRepairOrder"
     >
     </repair-order-excute-drawer>
+    <fault-report-repair
+      ref="FaultReportRepair"
+      @ok="modalFormOk"
+    ></fault-report-repair>
   </a-card>
 </template>
 <script>
@@ -426,9 +477,12 @@
 import EquipmentDocumentList from './RepairOrderEquipmentDocumentList'
 import '@/assets/less/TableExpand.less'
 import { putAction } from '../../api/manage'
-import RepairOrderAssignTask from './modules/repairorder/RepairOrderAssignTask.vue'
-import RepairOrderExcuteDrawer from './modules/repairorder/repairOrderExcuteDrawer.vue'
+import RepairOrderAssignTask from './modules/repairorder/RepairOrderAssignTask'
+import RepairOrderExcuteDrawer from './modules/repairorder/repairOrderExcuteDrawer'
 import FaultDescriptionList from './FaultDescriptionList'
+import FaultReportRepair from './modules/repairorder/moudles/select/FaultReportRepair.vue'
+import store from '@/store'
+import dayjs from 'dayjs'
 export default {
   name: "RepairOrderList",
   mixins: [JeecgListMixin],
@@ -444,7 +498,14 @@
     RepairOrderModal,
     RepairOrderAssignTask,
     RepairOrderExcuteDrawer,
-    FaultDescriptionList
+    FaultDescriptionList,
+    FaultReportRepair,
+    store
+  },
+  mounted(){
+    let intervalId = setInterval(() => {
+        this.loadData();
+    }, 600*1000); // 1000姣锛屽嵆1绉�
   },
   data() {
     return {
@@ -462,9 +523,23 @@
           }
         },
         {
+          title: '鍏抽敭璁惧?',
+          align: "center",
+          dataIndex: 'specificEquipment',
+          scopedSlots: { customRender: 'specificEquipment' }
+        },
+        {
           title: '鐘舵��',
           align: "center",
           dataIndex: 'status_dictText'
+        },
+        {
+          title: '缁翠慨鐘舵��',
+          align: "center",
+          dataIndex: 'repairOrderUda1_dictText',
+          customRender:function (t,r,index) {
+              return t===null||r.repairOrderUda1===null?'/':t;
+          }
         },
         {
           title: '鍗曟嵁鍙�',
@@ -472,13 +547,13 @@
           dataIndex: 'num',
           scopedSlots: { customRender: 'num' }
         },
+        // {
+        //   title: '涓氬姟绫诲瀷',
+        //   align: "center",
+        //   dataIndex: 'businessType_dictText'
+        // },
         {
-          title: '涓氬姟绫诲瀷',
-          align: "center",
-          dataIndex: 'businessType_dictText'
-        },
-        {
-          title: '璁惧缂栫爜',
+          title: '缁熶竴缂栫爜',
           align: "center",
           dataIndex: 'equipmentNum'
         },
@@ -497,50 +572,81 @@
           align: "center",
           dataIndex: 'departId_dictText'
         },
+        // {
+        //   title: '绱ф�ョ▼搴�',
+        //   align: "center",
+        //   dataIndex: 'urgency_dictText'
+        // },
+        // {
+        //   title: '缁翠繚鏂瑰紡',
+        //   align: "center",
+        //   dataIndex: 'maintenanceMethod_dictText'
+        // },
+        // {
+        //   title: '澶栧鍗曚綅',
+        //   align: "center",
+        //   dataIndex: 'outsourcingUnitName'
+        // },
         {
-          title: '绱ф�ョ▼搴�',
+          title: '缁翠慨鐝粍',
           align: "center",
-          dataIndex: 'urgency_dictText'
-        },
-        {
-          title: '缁翠繚鏂瑰紡',
-          align: "center",
-          dataIndex: 'maintenanceMethod_dictText'
-        },
-        {
-          title: '濮斿鍗曚綅',
-          align: "center",
-          dataIndex: 'outsourcingUnitName'
-        },
-        {
-          title: '璐d换鐝粍',
-          align: "center",
-          dataIndex: 'teamId_dictText'
+          dataIndex: 'teamId_dictText',
+          scopedSlots: { 
+            customRender: 'jell' 
+          }
         },
         {
           title: '璐d换浜�',
           align: "center",
           dataIndex: 'responsibilityId_dictText'
         },
-        {
-          title: '娲惧伐鏂瑰紡',
-          align: "center",
-          dataIndex: 'dispatchMethod_dictText'
-        },
+        // {
+        //   title: '娲惧伐鏂瑰紡',
+        //   align: "center",
+        //   dataIndex: 'dispatchMethod_dictText'
+        // },
         // {
         //   title: '鐗圭璁惧',
         //   align: "center",
         //   dataIndex: 'specificEquipment_dictText'
         // },
         {
+          title: '鏁呴殰鏃堕棿',
+          align: "center",
+          dataIndex: 'faultTime'
+        },
+        {
+          title: '鎶ヤ慨浜�',
+          align: "center",
+          dataIndex: 'errUda2'
+        },
+        {
           title: '鏁呴殰鎻忚堪',
           align: "center",
-          dataIndex: 'faultDescription'
+          dataIndex: 'faultDescription',
+          scopedSlots: { 
+            customRender: 'jell' 
+          }
         },
         // {
-        //   title: '鏁呴殰鏃堕棿',
+        //   title: '鏁呴殰鍘熷洜',
         //   align: "center",
-        //   dataIndex: 'faultTime'
+        //   dataIndex: 'faultReason'
+        // },
+        // {
+        //   title: '鏁呴殰鐜拌薄',
+        //   align: "center",
+        //   dataIndex: 'faultPhenomenon'
+        // },
+        // {
+        //   title: '鏁呴殰鎺掗櫎',
+        //   align: "center",
+        //   dataIndex: 'faultRemove'
+        // },
+        // {
+        //   title: '棰勯槻鎺柦',
+        //   align: "center",
+        //   dataIndex: 'preventiveMeasure'
         // },
         // {
         //   title: '鏁呴殰鐓х墖',
@@ -553,36 +659,36 @@
         //   align: "center",
         //   dataIndex: 'isStop_dictText'
         // },
-        {
-          title: '宸ユ椂瀹氶',
-          align: "center",
-          dataIndex: 'workingHourQuota'
-        },
-        {
-          title: '瀹為檯宸ユ椂',
-          align: "center",
-          dataIndex: 'actualHour'
-        },
-        {
-          title: '璁″垝寮�濮嬫椂闂�',
-          align: "center",
-          dataIndex: 'planStartTime'
-        },
-        {
-          title: '璁″垝缁撴潫鏃堕棿',
-          align: "center",
-          dataIndex: 'planEndTime'
-        },
-        {
-          title: '瀹為檯寮�濮嬫椂闂�',
-          align: "center",
-          dataIndex: 'actualStartTime'
-        },
-        {
-          title: '瀹為檯缁撴潫鏃堕棿',
-          align: "center",
-          dataIndex: 'actualEndTime'
-        },
+        // {
+        //   title: '宸ユ椂瀹氶',
+        //   align: "center",
+        //   dataIndex: 'workingHourQuota'
+        // },
+        // {
+        //   title: '瀹為檯宸ユ椂',
+        //   align: "center",
+        //   dataIndex: 'actualHour'
+        // },
+        // {
+        //   title: '璁″垝寮�濮嬫椂闂�',
+        //   align: "center",
+        //   dataIndex: 'planStartTime'
+        // },
+        // {
+        //   title: '璁″垝缁撴潫鏃堕棿',
+        //   align: "center",
+        //   dataIndex: 'planEndTime'
+        // },
+        // {
+        //   title: '瀹為檯寮�濮嬫椂闂�',
+        //   align: "center",
+        //   dataIndex: 'actualStartTime'
+        // },
+        // {
+        //   title: '瀹為檯缁撴潫鏃堕棿',
+        //   align: "center",
+        //   dataIndex: 'actualEndTime'
+        // },
         {
           title: '鍒涘缓浜�',
           align: "center",
@@ -733,6 +839,7 @@
       }
       this.onClearSelected()
       this.queryParam.repairOrderType = 0;
+      this.queryParam.userId = store.getters.userInfo.id
       var params = this.getQueryParams();//鏌ヨ鏉′欢
       this.loading = true;
       getAction(this.url.list, params).then((res) => {
@@ -833,10 +940,32 @@
       this.onClearSelected()
       this.$refs.FaultDescriptionList.faultId = '-1'
     },
+    getReports(){
+         this.$refs.FaultReportRepair.title = '鏁呴殰鎶ヤ慨鍗�';
+         this.$refs.FaultReportRepair.loadData();
+         this.$refs.FaultReportRepair.visible = true;
+    },
+    tableRowClass(record, index) {
+      if ("2" === record.status) {
+        if (record.specificEquipment==='0'&&dayjs(record.faultTime).add(12,'hour')<dayjs()) {
+          return 'error'
+        } else if(dayjs(record.faultTime).add(7,'day')<dayjs()){
+          return 'primary'
+        }
+      }
+    },
 
   },
 }
 </script>
 <style scoped>
 @import '~@assets/less/common.less';
+.error {
+  color: red;
+  font-weight: bold;
+}
+.primary {
+  color: rgb(255, 0, 251);
+  font-weight: bold;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3