Browse Source

审批限制修改

duy 1 month ago
parent
commit
5cf66a5276
2 changed files with 22 additions and 6 deletions
  1. 11 0
      src/views/tasks/components/TableCard.vue
  2. 11 6
      src/views/tasks/hc-data.vue

+ 11 - 0
src/views/tasks/components/TableCard.vue

@@ -378,6 +378,17 @@ const setSignRulesClick = () => {
 //批量审批
 const batchApprovalTaskClick = () => {
     const rows = tableCheckedKeys.value
+    const pendingRows = rows.filter(row => row.estatus !== -1)
+
+    if (pendingRows.length > 0) {
+       const pendingNames = pendingRows.map(row => row.taskName).join('')
+        const warningMessage = `
+            存在以下已审批任务,不允许勾选------------\n
+            ${pendingNames}
+        `
+           window.$message?.warning(warningMessage)
+        return
+    }
     if (rows.length > 0) {
         emit('batchApproval', rows)
     } else {

+ 11 - 6
src/views/tasks/hc-data.vue

@@ -66,14 +66,15 @@
                     <div v-if="sbTableKey === 'key1'" class="radio-group-box">
                         <span class="label">审批操作:</span>
                         <el-radio-group v-model="taskReviewForm.flag">
-                            <el-radio value="OK" :disabled="taskReviewInfo.estatus !== -1">同意</el-radio>
-                            <el-radio value="NO" :disabled="taskReviewInfo.estatus !== -1">废除任务</el-radio>
+                            <el-radio value="OK" :disabled="isCanReview">同意</el-radio>
+                            <el-radio value="NO" :disabled="isCanReview">废除任务</el-radio>
                         </el-radio-group>
                     </div>
                     <div v-if="sbTableKey === 'key1'" class="textarea-box">
                         <el-input
-                            v-model="taskReviewForm.comment" 
-                            :disabled="taskReviewInfo.estatus !== -1" :autosize="{ minRows: 3, maxRows: 5 }"
+                            v-model="taskReviewForm.comment"
+                            :disabled="isCanReview" 
+                            :autosize="{ minRows: 3, maxRows: 5 }"
                             placeholder="请输入审核意见"
                             type="textarea"
                         />
@@ -83,7 +84,7 @@
             <template v-if="sbTableKey === 'key1'" #footer>
                 <div class="dialog-footer">
                     <el-button size="large" @click="showTaskReviewModal = false">取消</el-button>
-                    <el-button :loading="SMSAuthLoading" hc-btn type="primary" :disabled="taskReviewInfo.estatus !== -1" @click="ConfirmApprovalClick">确认审批</el-button>
+                    <el-button :loading="SMSAuthLoading" hc-btn type="primary" :disabled="isCanReview" @click="ConfirmApprovalClick">确认审批</el-button>
                 </div>
             </template>
         </hc-new-dialog>
@@ -206,6 +207,7 @@ const sbTableClick = (key) => {
 const showTaskReviewModal = ref(false)
 const taskReviewType = ref('1')
 const taskReviewInfo = ref({})
+const isCanReview = ref(false)
 const taskReviewData = ref([])
 const batchPdfUrl = ref('')
 const taskReviewForm = ref({ flag: 'OK', comment: '' })
@@ -221,7 +223,9 @@ const closeTaskReviewModal = ()=>{
 const rowTaskName = async (row) => {
     if (row.formDataId) {
         taskReviewInfo.value = row
-        console.log( taskReviewInfo.value, ' taskReviewInfo.value')
+       
+        isCanReview.value = taskReviewInfo.value.estatus !== -1
+
         
         const { error, code, data } = await tasksApi.queryApprovalParameter({
             parallelProcessInstanceId: row['parallelProcessInstanceId'] || '',
@@ -285,6 +289,7 @@ const checkedRowsColumns = ref([
 const checkedRowsRef = ref([])
 
 const batchApprovalTaskClick = (rows) => {
+    isCanReview.value = false
     taskReviewType.value = '2'
     showTaskReviewModal.value = true
     checkedRowsRef.value = rows