applications/drone-command/src/styles/common/cockpit.scss
@@ -1079,6 +1079,7 @@ transform: translate(-50%, -50%); .el-dialog__header { padding-bottom: 20px; position: relative; span { @@ -1111,7 +1112,7 @@ padding: 0 10px; .detail-title { line-height: 40px; margin-bottom: 20px; font-family: Source Han Sans CN, Source Han Sans CN; font-weight: 500; font-size: 16px; @@ -1123,7 +1124,7 @@ .el-row { .el-col { margin-bottom: 0; margin-bottom: 20px; display: flex; align-items: center; @@ -1133,7 +1134,6 @@ font-weight: 500; font-size: 14px; color: #D4D5D7; line-height: 40px; text-align: right; font-style: normal; text-transform: none; @@ -1145,7 +1145,6 @@ font-weight: 400; font-size: 14px; color: #9E9EBA; line-height: 40px; text-align: left; font-style: normal; text-transform: none; @@ -1165,6 +1164,11 @@ } .dialog-form { h3 { margin: 0; margin-bottom: 20px; } .detail-title { line-height: 40px; font-family: Source Han Sans CN, Source Han Sans CN; @@ -1433,7 +1437,7 @@ align-items: center; justify-content: space-between; padding-left: 16px; padding-bottom: 16px; padding-bottom: 20px; font-family: Source Han Sans CN, Source Han Sans CN; font-weight: 400; font-size: 18px; @@ -1469,7 +1473,7 @@ .el-row { .el-col { margin-bottom: 0; margin-bottom: 20px; display: flex; align-items: center; @@ -1479,7 +1483,6 @@ font-weight: 500; font-size: 14px; color: #D4D5D7; line-height: 40px; text-align: right; font-style: normal; text-transform: none; applications/task-work-order/src/views/orderView/orderManage/inspectionRequest/ViewDiaLog.vue
@@ -154,7 +154,7 @@ </div> <template #footer> <el-button color="#F2F3F5" @click="visible = false">{{ dialogReadonly ? '关闭' : '取消' }}</el-button> <!-- <el-button color="#F2F3F5" @click="visible = false">{{ dialogReadonly ? '关闭' : '取消' }}</el-button>--> <el-button class="save-btn" color="#4C34FF" @@ -165,6 +165,19 @@ > 确认 </el-button> <template v-if="requester"> <el-button color="#F2F3F5" v-if="taskStatus === '1'">拒绝原因</el-button> <el-button color="#F2F3F5" @click="statusChange(3)" v-if="taskStatus === '3'">撤回任务</el-button> <el-button color="#F2F3F5" @click="statusChange(6)" v-if="taskStatus === '6'">拒绝验收</el-button> <el-button color="#F2F3F5" @click="statusChange(7)" v-if="taskStatus === '6'">验收通过</el-button> </template> <template v-else> <el-button color="#F2F3F5" @click="statusChange(2)" v-if="taskStatus === '0'">拒绝签收</el-button> <el-button color="#F2F3F5" @click="statusChange(1)" v-if="taskStatus === '0'">签收</el-button> <el-button color="#F2F3F5" @click="statusChange(5)" v-if="taskStatus === '3'">驳回</el-button> <el-button color="#F2F3F5" @click="statusChange(4)" v-if="taskStatus === '3'">通过</el-button> </template> </template> </el-dialog> </template> @@ -173,7 +186,7 @@ import { computed, ref, onMounted } from 'vue' import { ElMessage } from 'element-plus' import { fieldRules, getDictLabel } from '@ztzf/utils' import { gdPatrolTaskRepublish, gdFlyerPageApi } from './inspectionRequestApi' import { gdPatrolTaskRepublish, gdFlyerPageApi, gdPatrolTaskAuditApi } from './inspectionRequestApi' import { gdWorkOrderPageApi } from '../orderManage/orderManageApi' import { gdManageDeviceListApi } from '../orderManage/gdManageDeviceApi' import { pxToRem } from '@/utils/rem' @@ -194,6 +207,7 @@ const mapRef = ref(null) const dictObj = inject('dictObj') const requester = inject('requester') const emit = defineEmits(['success']) const formRef = ref(null) const formData = ref(initForm()) @@ -202,7 +216,7 @@ const submitting = ref(false) const dialogReadonly = computed(() => dialogMode.value === 'view') const titleEnum = ref({ edit: '编辑', view: '查看' }) const taskStatus = computed(() => formData.value.taskStatus) // 下拉选项 const flyerList = ref([]) const deviceList = ref([]) @@ -255,6 +269,14 @@ flyerList.value = res?.data?.data?.records ?? [] } // 操作类型:1.同意签收、2.拒绝签收 、3.撤回任务 、4.同意审核、 5.拒绝审核、 6.验收通过、 7.验收拒绝 function statusChange(auditStatus) { gdPatrolTaskAuditApi({ auditStatus, id: formData.value.id }).then(res => { visible.value = false emit('success') }) } // 获取设备列表 async function getDeviceList() { const res = await gdManageDeviceListApi() @@ -280,6 +302,7 @@ async function open({ mode = 'view', row } = {}) { dialogMode.value = mode formData.value = { ...initForm(), ...row } console.log(formData.value) initMap() } applications/task-work-order/src/views/orderView/orderManage/inspectionRequest/index.vue
@@ -63,6 +63,8 @@ </el-form> <div class="gd-table-toolbar"> <el-button color="#F2F3F5" @click="requester = !requester">我是{{ requester ? '需求方' : '服务方' }}</el-button> <el-button :icon="Plus" color="#4C34FF" type="primary" @click="openForm('add')">新增</el-button> <el-button :icon="Delete" color="#4C34FF" :disabled="!selectedIds.length" @click="handleDelete()">删除</el-button> </div> @@ -90,9 +92,8 @@ <el-table-column prop="taskDesc" show-overflow-tooltip label="巡查任务描述" /> <el-table-column label="操作" class-name="operation-btns"> <template v-slot="{ row }"> <el-link @click="viewDiaLogView('view', row)">查看</el-link> <el-link @click="openForm('edit', row)">编辑</el-link> <el-link @click="handleDelete(row)">删除</el-link> <el-link @click="viewDiaLogView(row)">查看</el-link> <!-- <el-link @click="openForm('edit', row)">编辑</el-link>--> </template> </el-table-column> </el-table> @@ -210,9 +211,17 @@ }) } function viewDiaLogView(mode, row) { // 状态:0待签收、1拒绝签收、2已撤回、3待审核、4审核驳回 // 5审核通过、6待验收、7拒绝验收、8验收通过 function viewDiaLogView(row) { viewDiaLogVisible.value = true nextTick(() => { let mode if (requester.value) { mode = ['0', '2', '3', '5', '6', '7', '8'].includes(row.taskStatus) ? 'view' : 'edit' } else { mode = 'view' } viewDiaLogRef.value?.open({ mode, row }) }) } applications/task-work-order/src/views/orderView/orderManage/inspectionRequest/inspectionRequestApi.js
@@ -44,3 +44,12 @@ data, }) } // 审核巡查任务 - 传入审核参数,拒绝时必须填写拒绝原因 export const gdPatrolTaskAuditApi = data => { return request({ url: `/drone-gd/workOrder/gdPatrolTask/audit`, method: 'post', data, }) } applications/task-work-order/src/views/orderView/orderManage/orderManage/index.vue
@@ -108,7 +108,7 @@ <el-table-column label="操作" class-name="operation-btns"> <template v-slot="{ row }"> <el-link @click="openFormChange(row)">查看</el-link> <!-- <el-link @click="openForm('edit', row)">编辑</el-link>--> <!--<el-link @click="openForm('edit', row)">编辑</el-link>--> <el-link @click="handleDelete(row)">删除</el-link> </template> </el-table-column> packages/utils/common/index.js
@@ -1,3 +1,13 @@ /* * @Author : yuan * @Date : 2026-01-20 17:01:20 * @LastEditors : yuan * @LastEditTime : 2026-01-20 17:20:21 * @FilePath : \packages\utils\common\index.js * @Description : * Copyright 2026 OBKoro1, All Rights Reserved. * 2026-01-20 17:01:20 */ export function fieldRules(required,max) { // export function fieldRules({ required = true, isSelect = false, max = 50,type = 'string' }) { const trigger = ['blur', 'change'] @@ -14,7 +24,7 @@ export function getDictLabel(value, dictList) { return dictList.filter(item => value.includes(item.dictKey)).map(item => item.dictValue).join(',') return dictList.filter(item => String(value).includes(String(item.dictKey))).map(item => item.dictValue).join(',') } export function blobDownload(res) {