| | |
| | | </el-dialog> |
| | | |
| | | <!-- 添加在其他 dialog 组件之后 --> |
| | | <el-dialog v-model="reviewDialogVisible" title="批量审核" width="70%" append-to-body custom-class="review-dialog" |
| | | <el-dialog v-model="reviewDialogVisible" title="批量审核" width="1100" append-to-body custom-class="review-dialog" |
| | | @close="cancleBatchReject"> |
| | | <div class="review-container"> |
| | | <div class="review-image-wrapper"> |
| | |
| | | </div> |
| | | |
| | | <div class="review-image-container"> |
| | | <el-image v-if="currentReviewImage" :src="getThumbUrl(currentReviewImage)" fit="fill" |
| | | <!-- <el-image v-if="currentReviewImage" :src="getThumbUrl(currentReviewImage)" fit="fill" |
| | | :preview-src-list="getImageList()" :initial-index="currentImageIndex - 1" class="preview-image" |
| | | style="cursor: pointer"> |
| | | style="cursor: pointer"> --> |
| | | <el-image v-if="currentReviewImage" :src="getPreviewUrl(currentReviewImage)" fit="fill" |
| | | :initial-index="currentImageIndex - 1" class="preview-image" style="cursor: pointer"> |
| | | <template #error> |
| | | <div class="image-error"> |
| | | <i class="el-icon-picture-outline"></i> |
| | |
| | | { label: '待处理', value: '0' }, |
| | | { label: '处理中', value: '3' }, |
| | | { label: '已完成', value: '4' }, |
| | | { label: '已完结', value: '5' }, |
| | | ], |
| | | reviewStatuses: [ |
| | | { label: '否', value: 0 }, |
| | |
| | | { label: '所属单位', prop: 'department', overHidden: true, tooltip: true }, |
| | | { label: '发起时间', prop: 'startTime', width: 160 }, |
| | | { label: '关联算法', prop: 'aiType', width: 150, overHidden: true, tooltip: true }, |
| | | { label: '工单类型', prop: 'type', width: 130, overHidden: true, tooltip: true }, |
| | | { |
| | | label: '工单类型', |
| | | prop: 'type', |
| | | width: 130, |
| | | overHidden: true, |
| | | tooltip: true, |
| | | type: 'select', |
| | | dicData: [], |
| | | }, |
| | | { |
| | | label: '工单内容', |
| | | prop: 'content', |
| | |
| | | formattedDetailFields () { |
| | | const fields = [ |
| | | { label: '工单名称', value: this.currentDetail.orderName }, |
| | | { label: '工单类型', value: this.currentDetail.type }, |
| | | { |
| | | label: '工单类型', |
| | | // 修改这里:使用 types 数组查找对应的 label |
| | | value: this.types.find(t => t.value === this.currentDetail.type)?.label || this.currentDetail.type || '/' |
| | | }, |
| | | { label: '关联任务', value: this.currentDetail.job_name || '/' }, |
| | | { label: '任务发起人', value: this.currentDetail.creator }, |
| | | { label: '当前状态', value: this.mapStatus(this.currentDetail.status) }, |
| | |
| | | value: key, |
| | | })) |
| | | |
| | | const columnType = this.findObject(this.option.column, 'type') |
| | | columnType.dicData = this.types |
| | | |
| | | // 确保算法数据的映射一致 |
| | | this.algorithms = |
| | | ai_type?.map(item => ({ |
| | |
| | | startTime: item.create_time, |
| | | aiType: item.ai_types, |
| | | content: item.content, // 将后端返回的 content 映射为 content |
| | | type: this.types.find(t => t.value === item.work_order_type_dict_key)?.label, |
| | | type: item.work_order_type_dict_key, |
| | | keyData: |
| | | !isNaN(longitude) && !isNaN(latitude) |
| | | ? `${longitude.toFixed(6)}, ${latitude.toFixed(6)}` |
| | |
| | | 0: '待处理', |
| | | 3: '处理中', |
| | | 4: '已完成', |
| | | 5: '已完结', |
| | | } |
| | | return statusTextMap[status] || '未知状态' |
| | | }, |
| | |
| | | 3: '#e57373', // 处理中-更淡红 |
| | | 2: '#faad14', // 待审核-橙色 |
| | | 4: '#a0cfff', // 已完成-淡蓝 |
| | | 5: '#67c23a', // 已完结-绿色 |
| | | } |
| | | return colorMap[String(status)] || '' |
| | | }, |
| | |
| | | reCheckConfirm (key) { |
| | | const that = this |
| | | if (key == 1) { |
| | | getReviewById(this.reCheckData.id).then(res => { |
| | | this.reCheckDialog = false |
| | | this.page.currentPage = 1 |
| | | this.fetchTableData() |
| | | this.fetchTabCounts() |
| | | getReviewById(that.reCheckData.id).then(res => { |
| | | that.reCheckDialog = false |
| | | that.page.currentPage = 1 |
| | | that.fetchTableData() |
| | | that.fetchTabCounts() |
| | | }) |
| | | } else { |
| | | const loading = ElLoading.service({ |
| | |
| | | background: 'rgba(0, 0, 0, 0.7)', |
| | | }) |
| | | |
| | | function closeConfirm () { |
| | | that.reCheckDialog = false |
| | | that.page.currentPage = 1 |
| | | that.fetchTableData() |
| | | that.fetchTabCounts() |
| | | loading.close() |
| | | } |
| | | |
| | | // 获取时间的接口 |
| | | getCreateEventJob(that.reCheckData.id).then(res => { |
| | | loading.close() |
| | | |
| | | ElMessageBox.confirm(`预计复核执行时间为${res.data.data}`, '提示', { |
| | | confirmButtonText: '确定', |
| | | showCancelButton: false, // 关键配置 |
| | | closeOnClickModal: false, |
| | | closeOnPressEscape: false, |
| | | type: 'warning', |
| | | }).then(() => { |
| | | this.reCheckDialog = false |
| | | this.page.currentPage = 1 |
| | | this.fetchTableData() |
| | | this.fetchTabCounts() |
| | | closeConfirm() |
| | | }).catch(() => { |
| | | closeConfirm() |
| | | }) |
| | | }).catch(() => { |
| | | closeConfirm() |
| | | }) |
| | | } |
| | | }, |
| | |
| | | :deep(.el-dialog__body) { |
| | | padding: 0; |
| | | background-color: #f5f7fa; |
| | | |
| | | } |
| | | } |
| | | |