From e972ae643ec3de5b63f035c557b6ea88f93d5838 Mon Sep 17 00:00:00 2001
From: cuijian <cuijian@xalxzn.com>
Date: 星期四, 02 十一月 2023 18:05:02 +0800
Subject: [PATCH] 操作证管理、设备点检工单自动生成

---
 src/views/eam/modules/operationCertificateApply/OperationCertificateApplyForm.vue  |   19 +++++++--
 src/views/eam/OperationCertificateApplyList.vue                                    |   58 ++++++++++++++++++++++++++--
 src/views/eam/modules/operationCertificateApply/OperationCertificateApplyModal.vue |    3 -
 3 files changed, 68 insertions(+), 12 deletions(-)

diff --git a/src/views/eam/OperationCertificateApplyList.vue b/src/views/eam/OperationCertificateApplyList.vue
index c6f6243..ca01c55 100644
--- a/src/views/eam/OperationCertificateApplyList.vue
+++ b/src/views/eam/OperationCertificateApplyList.vue
@@ -43,7 +43,7 @@
       <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
         <a-button type="primary" icon="import">瀵煎叆</a-button>
       </a-upload>
-      <a-button @click="handleAchievement" type="primary" icon="plus" v-if="selectedRowKeys.length == 1">鎴愮哗褰曞叆</a-button>
+      <a-button @click="handleAchievement" type="primary" icon="plus" v-if="selectedRowKeys.length == 1 && selectionRows[0].auditStatus == 'audited'">鎴愮哗褰曞叆</a-button>
       <!-- 楂樼骇鏌ヨ鍖哄煙 -->
 <!--      <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>-->
       <a-dropdown v-if="selectedRowKeys.length > 0">
@@ -96,9 +96,36 @@
         </template>
 
         <span slot="action" slot-scope="text, record">
-          <a @click="handleEdit(record)">缂栬緫</a>
 
-          <a-divider type="vertical" />
+          <a-popconfirm
+            v-if="record.auditStatus == 'created'"
+            title="纭鎻愪氦鍚�?"
+            @confirm="() =>handleCommit(record, 'commit')"
+          >
+            <a>鎻愪氦</a>
+          </a-popconfirm>
+          <a-popconfirm
+            v-if="record.auditStatus == 'submitted'"
+            title="纭鎾ゅ洖鍚�?"
+            @confirm="() =>handleCommit(record, 'back')"
+          >
+            <a>鎾ゅ洖</a>
+          </a-popconfirm>
+          <a-popconfirm
+            v-if="record.auditStatus == 'submitted' || record.auditStatus == 'approved'"
+            title="纭椹冲洖鍚�?"
+            @confirm="() =>handleCommit(record, 'back')"
+          >
+            <a>椹冲洖</a>
+          </a-popconfirm>
+          <a-divider
+            v-if="record.auditStatus == 'created' || record.auditStatus == 'submitted'"
+            type="vertical"
+          />
+          <a @click="handleEdit(record)" v-if="record.auditStatus == 'created'">缂栬緫</a>
+          <a @click="handleCommit(record,'approved')" v-if="record.auditStatus == 'submitted'">瀹℃壒</a>
+          <a @click="handleCommit(record,'audited')" v-if="record.auditStatus == 'approved'">瀹℃牳</a>
+          <a-divider type="vertical" v-if="record.auditStatus == 'created' || record.auditStatus == 'submitted' || record.auditStatus == 'approved'"/>
           <a-dropdown>
             <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
             <a-menu slot="overlay">
@@ -106,7 +133,7 @@
                 <a @click="handleDetail(record)">璇︽儏</a>
               </a-menu-item>
               <a-menu-item>
-                <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
+                <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)" v-if="record.auditStatus == 'created'">
                   <a>鍒犻櫎</a>
                 </a-popconfirm>
               </a-menu-item>
@@ -136,6 +163,7 @@
   import { JeecgListMixin } from '@/mixins/JeecgListMixin'
   import OperationCertificateApplyModal from './modules/operationCertificateApply/OperationCertificateApplyModal'
   import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
+  import { getAction, postAction } from '@/api/manage'
   import OperationCertificateApplyDetailList from './modules/operationCertificateApply/OperationCertificateApplyDetailList'
   import '@/assets/less/TableExpand.less'
 
@@ -218,7 +246,7 @@
           deleteBatch: "/eam/operationCertificateApply/deleteBatch",
           exportXlsUrl: "/eam/operationCertificateApply/exportXls",
           importExcelUrl: "eam/operationCertificateApply/importExcel",
-
+          approve:"/eam/operationCertificateApply/approve"
         },
         dictOptions:{},
         superFieldList:[],
@@ -246,6 +274,26 @@
         fieldList.push({type:'string',value:'remark',text:'澶囨敞',dictCode:''})
         this.superFieldList = fieldList
       },
+      handleCommit(record, type) {
+        if(type == 'commit'){
+          record.auditStatus = 'submitted'
+        }else if(type == 'back'){
+          record.auditStatus = 'created'
+        }else if(type == 'approved'){
+          record.auditStatus = 'approved'
+        }else if(type == 'audited'){
+          record.auditStatus = 'audited'
+        }
+      
+      postAction(this.url.approve, record).then(res => {
+        if (res.success) {
+          this.$message.success("鎿嶄綔鎴愬姛锛�");
+          this.loadData(1);
+        } else {
+          this.$message.warning(res.message);
+        }
+      })
+    },
       handleEdit: function (record) {
       this.$refs.modalForm.edit(record);
       this.$refs.modalForm.title = "缂栬緫";
diff --git a/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyForm.vue b/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyForm.vue
index 8fc2c25..3064b2e 100644
--- a/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyForm.vue
+++ b/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyForm.vue
@@ -123,7 +123,8 @@
           {
             title: '鐢ㄦ埛',
             key: 'userId',
-            type: JVXETypes.userSelect,
+            type: JVXETypes.selectSearch,
+            dictCode: 'sys_user,realname,id ',
             width: '200px',
             placeholder: '璇疯緭鍏�${title}',
             defaultValue: '',
@@ -142,7 +143,7 @@
           {
             title: '璁惧缁熶竴缂栫爜',
             key: 'equipmentIds',
-            type: JVXETypes.selectSearch,
+            type: JVXETypes.selectMultiple,
             dictCode: 'mom_eam_equipment,num,id ',
             width: '200px',
             placeholder: '璇疯緭鍏�${title}',
@@ -181,7 +182,7 @@
             width: '200px',
             placeholder: '璇疯緭鍏�${title}',
             defaultValue: '',
-            disabled:false
+            disabled:'achievementDisabled'
           },
           {
             title: '瀹炴搷鎴愮哗',
@@ -190,7 +191,7 @@
             width: '200px',
             placeholder: '璇疯緭鍏�${title}',
             defaultValue: '',
-            disabled:false
+            disabled:'achievementDisabled'
           },
           {
             title: '鑰冭瘯缁撹',
@@ -200,7 +201,7 @@
             width: '200px',
             placeholder: '璇疯緭鍏�${title}',
             defaultValue: '',
-            disabled:false
+            disabled:'achievementDisabled'
           },
           // {
           //   title: '鐘舵��',
@@ -231,10 +232,18 @@
       default: false,
       required: false
     },
+    isAchievement: {
+      type: Boolean,
+      default: false,
+      required: false
+    },
   },
   computed: {
     formDisabled() {
       return this.disabled
+    },
+    achievementDisabled() {
+      return this.isAchievement
     }
   },
   created() {
diff --git a/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyModal.vue b/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyModal.vue
index f244f5b..2e2272e 100644
--- a/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyModal.vue
+++ b/src/views/eam/modules/operationCertificateApply/OperationCertificateApplyModal.vue
@@ -8,7 +8,7 @@
     @ok="handleOk"
     :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
     @cancel="handleCancel">
-    <operation-certificate-apply-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/>
+    <operation-certificate-apply-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" isAchievement="isAchievement"/>
   </j-modal>
 </template>
 
@@ -41,7 +41,6 @@
         this.visible=true
         this.$nextTick(()=>{
           this.$refs.realForm.edit(record);
-          this.$refs.realForm.isAchievement = true;
         })
       },
       close () {

--
Gitblit v1.9.3