From 5fd5c69347db39f256cc6e433bb6239e7bc7df84 Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Wed, 21 Jan 2026 14:38:11 +0800
Subject: [PATCH] feat:字典
---
applications/task-work-order/src/views/orderView/orderDataManage/dataObjection/FormDiaLog.vue | 89 +++++++++++++++++++----------
applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue | 35 ++++++-----
2 files changed, 77 insertions(+), 47 deletions(-)
diff --git a/applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue b/applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue
index eca4847..345ef80 100644
--- a/applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue
+++ b/applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue
@@ -14,7 +14,9 @@
clearable
@change="handleSearch"
>
- <el-option v-for="item in appInnovationStatusOptions" :key="item.value" :label="item.label" :value="item.value" />
+ <el-option v-for="item in dictObj.appInnovationStatus" :key="item.dictKey"
+ :label="item.dictValue"
+ :value="item.dictKey"/>
</el-select>
</el-form-item>
@@ -32,12 +34,16 @@
<div class="gd-table-container" v-loading="loading">
<div class="gd-table-content gd-table-content-bg">
<el-table class="gd-table" :data="list" @selection-change="handleSelectionChange">
- <el-table-column type="selection" width="46" />
+ <el-table-column label="序号" width="60" align="center">
+ <template #default="{ $index }">
+ {{ formatNumber((searchParams.current - 1) * searchParams.size + $index + 1) }}
+ </template>
+ </el-table-column>
<el-table-column prop="caseName" show-overflow-tooltip label="案例名称" />
<el-table-column prop="belongDomain" show-overflow-tooltip label="所属领域" />
<el-table-column prop="innovationStatus" show-overflow-tooltip label="应用创新状态">
<template v-slot="{ row }">
- {{ getInnovationStatusLabel(row.innovationStatus) }}
+ {{ getDictLabel(row.innovationStatus) }}
</template>
</el-table-column>
<el-table-column prop="applicationScenarioDesc" show-overflow-tooltip label="应用场景描述" />
@@ -75,6 +81,7 @@
import { onMounted, ref, nextTick, provide } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import { getDictionaryByCode } from '@/api/system/dictbiz'
+import { getDictLabel } from '@ztzf/utils'
import FormDiaLog from './FormDiaLog.vue'
import {
gdApplicationInnovationPageApi,
@@ -96,23 +103,16 @@
const queryParamsRef = ref(null) // 查询表单实例
const dialogRef = ref(null) // 弹框实例
const dialogVisible = ref(false)
-const appInnovationStatusOptions = ref([]) // 应用创新状态字典
-
-// 注入字典数据到子组件
-provide('appInnovationStatusOptions', appInnovationStatusOptions)
-
+const dictObj = ref({}) // 字典对象
+provide('dictObj', dictObj)
// 获取字典
function getDictList() {
- getDictionaryByCode('appInnovationStatus').then(res => {
- appInnovationStatusOptions.value = res.data.data?.appInnovationStatus || []
+ return getDictionaryByCode('appInnovationStatus').then(res => {
+ dictObj.value = res.data.data
+
})
}
-// 获取应用创新状态标签
-function getInnovationStatusLabel(value) {
- const item = appInnovationStatusOptions.value.find(item => item.value === value)
- return item?.label || value
-}
// 获取列表
async function getList() {
@@ -168,6 +168,11 @@
selectedIds.value = rows.map(item => item.id)
}
+// 格式化数字为两位数
+function formatNumber(num) {
+ return num.toString().padStart(2, '0')
+}
+
onMounted(() => {
getList()
getDictList()
diff --git a/applications/task-work-order/src/views/orderView/orderDataManage/dataObjection/FormDiaLog.vue b/applications/task-work-order/src/views/orderView/orderDataManage/dataObjection/FormDiaLog.vue
index db38371..8df7d39 100644
--- a/applications/task-work-order/src/views/orderView/orderDataManage/dataObjection/FormDiaLog.vue
+++ b/applications/task-work-order/src/views/orderView/orderDataManage/dataObjection/FormDiaLog.vue
@@ -24,23 +24,23 @@
<div class="label">提交人联系方式</div>
<div class="val">{{ formData.submitterContact }}</div>
</el-col>
- <el-col :span="12">
+ <!-- <el-col :span="12">
<div class="label">提交单位</div>
<div class="val">{{ formData.submitUnitName }}</div>
- </el-col>
+ </el-col> -->
<el-col :span="12">
<div class="label">目录/申请资源名称</div>
<div class="val">{{ formData.catalogResourceName }}</div>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<div class="label">异议描述</div>
<div class="val">{{ formData.objectionDesc }}</div>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<div class="label">异议依据</div>
<div class="val">{{ formData.objectionBasis }}</div>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<div class="label">相关附件</div>
<div class="val">{{ formData.attachName || '暂无附件' }}</div>
</el-col>
@@ -90,50 +90,46 @@
<el-input class="gd-input" v-model="formData.submitterContact" placeholder="请输入" clearable />
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="提交单位" prop="submitUnitId">
- <el-tree-select
- class="gd-select"
- popper-class="gd-tree-select-popper"
- v-model="formData.submitUnitId"
- node-key="id"
- :data="deptTree"
- :props="treeProps"
- check-strictly
- clearable
- />
- </el-form-item>
- </el-col>
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="提交单位" prop="submitUnitId">-->
+<!-- <el-tree-select-->
+<!-- class="gd-select"-->
+<!-- popper-class="gd-tree-select-popper"-->
+<!-- v-model="formData.submitUnitId"-->
+<!-- node-key="id"-->
+<!-- :data="deptTree"-->
+<!-- :props="treeProps"-->
+<!-- check-strictly-->
+<!-- clearable-->
+<!-- />-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
<el-col :span="12">
<el-form-item label="目录/申请资源名称" prop="catalogResourceName">
<el-input class="gd-input" v-model="formData.catalogResourceName" placeholder="请输入" clearable />
</el-form-item>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<el-form-item label="异议描述" prop="objectionDesc">
<el-input
class="gd-input"
v-model="formData.objectionDesc"
- type="textarea"
- :rows="4"
placeholder="请输入"
clearable
/>
</el-form-item>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<el-form-item label="异议依据" prop="objectionBasis">
<el-input
class="gd-input"
v-model="formData.objectionBasis"
- type="textarea"
- :rows="4"
placeholder="请输入"
clearable
/>
</el-form-item>
</el-col>
- <el-col :span="24">
+ <el-col :span="12">
<el-form-item label="相关附件" prop="attachId">
<div class="upload-container">
<el-upload
@@ -160,7 +156,6 @@
</el-row>
</el-form>
<template #footer>
- <el-button color="#F2F3F5" @click="visible = false">{{ dialogReadonly ? '关闭' : '取消' }}</el-button>
<el-button
class="save-btn"
color="#4C34FF"
@@ -171,6 +166,8 @@
>
保存
</el-button>
+ <el-button color="#F2F3F5" @click="handleApply">申请</el-button>
+
</template>
</el-dialog>
</template>
@@ -195,8 +192,13 @@
catalogResourceName: '',
objectionDesc: '',
objectionBasis: '',
- attachId: '',
- attachName: '',
+ attachmentList:[
+ {
+ attachId: '',
+ attachName: '',
+ }
+ ]
+
})
// 注入部门树和字典
@@ -211,7 +213,7 @@
const dialogMode = ref('add') // 弹框模式
const submitting = ref(false) // 提交中
const dialogReadonly = computed(() => dialogMode.value === 'view')
-const titleEnum = ref({ edit: '编辑', view: '查看', add: '新增' })
+const titleEnum = ref({ edit: '编辑', view: '查看', add: '数据异议申请' })
const fileList = ref([]) // 上传文件列表
const uploadedFiles = ref([]) // 已上传文件列表
@@ -297,7 +299,27 @@
if (!isValid) return
submitting.value = true
try {
- await gdDataObjectionSubmitApi(formData.value)
+ // 构建符合接口要求的提交数据
+ const submitData = {
+ title: formData.value.title,
+ objectionType: formData.value.objectionType,
+ submitter: formData.value.submitter,
+ submitterContact: formData.value.submitterContact,
+ catalogResourceName: formData.value.catalogResourceName,
+ objectionDesc: formData.value.objectionDesc,
+ objectionBasis: formData.value.objectionBasis,
+ areaCode: formData.value.areaCode || '',
+ handleUnit: formData.value.handleUnit || '',
+ objectionStatus: formData.value.objectionStatus || '',
+ otherObjectionDetail: formData.value.otherObjectionDetail || '',
+ reviewOpinion: formData.value.reviewOpinion || '',
+ // 构建附件列表
+ attachmentList: uploadedFiles.value.map(file => ({
+ attachId: file.attachId,
+ attachName: file.originalName,
+ }))
+ }
+ await gdDataObjectionSubmitApi(submitData)
ElMessage.success(dialogMode.value === 'add' ? '新增成功' : '更新成功')
visible.value = false
emit('success')
@@ -305,7 +327,10 @@
submitting.value = false
}
}
-
+// 申请提交
+async function handleApply() {
+
+}
// 加载详情
async function loadDetail() {
if (!formData.value.id) return
--
Gitblit v1.9.3