Просмотр исходного кода

fix: 修复考核创建时间显示问题,优化审核不通过原因字段处理

sunqijun 2 месяцев назад
Родитель
Сommit
ae749d297c

+ 1 - 1
src/views/production-safety/safetyAssessment/evaluationSystem/components/EvaluationTarget.vue

@@ -6,7 +6,7 @@
         <div class="evaluation-meta">
           <span>考核部门: {{ evaluationDetail.deptNames || '-' }}</span>
           <span>创建人: {{ evaluationDetail.createdUserName || '-' }}</span>
-          <span>创建时间: {{ formatDateTime(evaluationDetail.createdAt) || '-' }}</span>
+          <span>创建时间: {{ evaluationDetail.createdAt || '-' }}</span>
         </div>
       </div>
     </header>

+ 2 - 2
src/views/production-safety/safetyAssessment/evaluationSystem/configs/status.ts

@@ -1,7 +1,7 @@
 // 安全考核管理状态配置(搜索条件使用数值状态码)
 // 0-未下发 / 2-待反馈 / 3-待复核 / 4-待审核 / 5-已作废 / 1-已完成
 export const EVALUATION_SYSTEM_STATUS_OPTIONS = [
-  { label: '未下发', value: 0 },
+//   { label: '未下发', value: 0 },
   { label: '待反馈', value: 2 },
   { label: '待复核', value: 3 },
   { label: '待审核', value: 4 },
@@ -10,7 +10,7 @@ export const EVALUATION_SYSTEM_STATUS_OPTIONS = [
 ];
 
 export const EVALUATION_SYSTEM_STATUS_LABEL: Record<string, string> = {
-  '0': '未下发',
+//   '0': '未下发',
   '2': '待反馈',
   '3': '待复核',
   '4': '待审核',

+ 9 - 4
src/views/production-safety/safetyAssessment/receiptRecord/components/ReceiptRecordDetail.vue

@@ -1,4 +1,5 @@
 <template>
+    <el-alert v-if="currentStatus === -1" :title="ruleFormData.returnReason" type="warning" />
   <main class="safety-platform-container__main">
     <BasicForm
       ref="basicFormRef"
@@ -123,7 +124,7 @@
 <script setup lang="ts">
   import { computed, onMounted, ref, reactive } from 'vue';
   import { useRoute, useRouter } from 'vue-router';
-  import { ElMessage } from 'element-plus';
+  import { ElMessage, ElAlert } from 'element-plus';
   import BasicForm from '@/components/BasicForm.vue';
   import BasicDialog from '@/components/BasicDialog.vue';
   import { useFormConfigHook } from '@/hooks/useFormConfigHook';
@@ -346,14 +347,15 @@
     const res = await basicFormRef.value.validateForm();
     return res;
   };
-
+const ReceiptRecordData = ref({})
   const getDetail = async () => {
     if (!currentId.value) return;
     try {
       const res = await queryClaimItemsLogDetail(currentId.value);
       if (res) {
+        ReceiptRecordData.value = res;
         currentStatus.value = res.status;
-        ruleFormData.itemId = res.pimId;
+        ruleFormData.itemId = res.stuffName;
         ruleFormData.outboundDate = res.outStoreTime ? res.outStoreTime.split('T')[0] : '';
         ruleFormData.outboundQuantity = res.claimQty;
         ruleFormData.receiptNumber = res.orderNumber;
@@ -390,7 +392,9 @@
     const message = isCreateMode.value ? '添加' : '修改';
 
     try {
-      const selectedInventory = inventoryList.value.find((item) => item.id === ruleFormData.itemId);
+      const selectedInventory = inventoryList.value.find((item) => {
+        return item.id === ruleFormData.itemId || item.id ===ReceiptRecordData.value.pimId
+      });
       if (!selectedInventory) {
         ElMessage.error('请选择有效的奖品名称');
         return;
@@ -428,6 +432,7 @@
             ? (createRes as any).id
             : undefined;
       } else if (isEditMode.value && currentId.value) {
+        
         await updateClaimItemsLog({
           id: currentId.value,
           ...basePayload,

+ 13 - 12
src/views/production-safety/safetyAssessment/receiptRecord/configs/form.ts

@@ -64,22 +64,23 @@ export const RECEIPT_RECORD_FORM_CONFIG: FormConfig[] = [
       placeholder: '请选择审批流程',
     },
   },
-  {
-    prop: 'returnReason',
-    label: '审核不通过原因:',
-    component: 'ElInput',
-    componentProps: {
-      type: 'textarea',
-      rows: 2,
-      placeholder: '暂无审核不通过原因',
-      disabled: true,
-    },
-  },
+//   {
+//     prop: 'returnReason',
+//     label: '审核不通过原因:',
+//     component: 'ElInput',
+//     componentProps: {
+//       type: 'textarea',
+//       rows: 2,
+//       placeholder: '暂无审核不通过原因',
+//       disabled: true,
+//     },
+//   },
 ];
 
 export const RECEIPT_RECORD_FORM_DATA = {
-  itemId: undefined as number | undefined, // 奖品库存ID(用于下拉框选中)
+  itemId: undefined as number | undefined|string, // 奖品库存ID(用于下拉框选中)
   outboundDate: '',
+  status: null as number | null, // 物品领取记录状态
   outboundQuantity: 1, // 最小值为1
   receiptNumber: '',
   deptId: null as number | null, // 部门ID(部门级联,与应急预案制定部门同源)

+ 18 - 13
src/views/production-safety/safetyAssessment/receiptRecord/receiptRecordAdministratorReview.vue

@@ -185,19 +185,24 @@
     try {
       const res = await queryClaimItemsApprovalPage(tableQuery);
       if (res) {
-        // 映射返回数据字段到表格字段
-        tableData.value = res.records.map((item) => ({
-          id: item.id,
-          itemName: item.stuffName, // 奖品名称
-          outboundDate: item.outStoreTime, // 出库日期
-          outboundQuantity: item.claimQty, // 取出数量
-          remainingQuantity: item.surplusQty, // 结余数量
-          receiptNumber: item.orderNumber, // 单号
-          department: item.deptName, // 部门
-          recipient: item.userName, // 领取人
-          status: item.status, // 0 待审核 1 审核通过 -1 审核不通过 2 已领取
-          approvalOrder: item.approvalOrder, // 审批顺序
-        }));
+        // 映射返回数据字段到表格字段,并处理可能的null或undefined值
+        tableData.value = res.records.map((item) => {
+            if(item && typeof item === 'object') {
+                return {
+                    id: item.id,
+                    itemName: item.stuffName, // 奖品名称
+                    outboundDate: item.outStoreTime, // 出库日期
+                    outboundQuantity: item.claimQty, // 取出数量
+                    remainingQuantity: item.surplusQty, // 结余数量
+                    receiptNumber: item.orderNumber, // 单号
+                    department: item.deptName, // 部门
+                    recipient: item.userName, // 领取人
+                    status: item.status, // 0 待审核 1 审核通过 -1 审核不通过 2 已领取
+                    approvalOrder: item.approvalOrder, // 审批顺序
+                }
+            }
+        });
+        console.log(tableData.value,'tableData')
         pagination.total = res.totalRow;
       }
     } catch (e) {