feat: 恢复重建PC端 曲线人员 项目填报调通

This commit is contained in:
huangchenhao 2026-04-09 17:46:43 +08:00
parent 7d5ebc8b5f
commit 6f5c28722f
2 changed files with 72 additions and 10 deletions

View File

@ -191,6 +191,17 @@ export default () => {
prop: "endTime",
label: "完工或预计完工时间",
},
{
prop: "reportStatus",
label: "申报状态",
formatter: (row) => {
const statusMap = {
0: '未申报',
1: '已申报',
};
return statusMap[row.reportStatus] || '未知状态';
}
},
{
prop: "approvalStatus",
label: "审批状态",

View File

@ -174,12 +174,12 @@
<el-row>
<el-col :span="12">
<el-form-item label="项目实施进度" prop="项目实施进度">
<el-select v-model="form.projectProgress">
<el-select :disabled="form.projectExpenseType === '申报重修'" v-model="form.projectProgress">
<el-option v-for="item in [
{ value: '立项', label: '立项' },
{ value: '财政评审', label: '财政评审' },
{ value: '开展施工图设计', label: '开展施工图设计' },
{ value: '完成施设于批复', label: '完成施设于批复' }
{ value: '完成施设于批复', label: '完成施设于批复' },
]" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
@ -212,7 +212,7 @@
<el-row>
<el-col :span="12">
<el-form-item label="施工单位联系人" prop="施工单位联系人">
<el-input v-model="form.designUnitContact"></el-input>
<el-input v-model="form.executionUnitContact"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@ -334,7 +334,7 @@
</el-form>
</div>
<div class="button-box">
<el-button type="primary" size="large">提交</el-button>
<el-button type="primary" @click="submit" size="large">提交</el-button>
</div>
</div>
</template>
@ -344,12 +344,14 @@
import { ref, onMounted, watch, reactive, toRaw } from 'vue'
import { useRouter, useRoute } from 'vue-router'
import FileUpload from '@/component/FileUpload/FileUpload.vue'
import { request } from '../../../../shared/utils/request'
import { ElLoading } from 'element-plus'
const router = useRouter()
const route = useRoute()
const form = ref({})
const formRef = ref(null)
//: 1-/ 2- 3- 4- 5- 6-
// : 1-/ 2- 3- 4- 5- 6-
const designApprovalFiles = ref([]) //
const contractFiles = ref([]) //
const acceptanceFiles = ref([]) //
@ -358,18 +360,67 @@ const otherFiles = ref([]) // 其他佐证文件
watch(() => designApprovalFiles.value, (data) => {
console.log('@@@@@', data);
})
// watch(() => designApprovalFiles.value, (data) => {
// console.log('@@@@@', data);
// })
// watch(() => form.value, (data) => {
// console.log('@@@@@form', data);
// }, { deep: true })
onMounted(() => {
if (route.params.data) {
const data = JSON.parse(decodeURIComponent(route.params.data));
form.value = data
// console.log('form', form.value.projectExpenseType)
if (data.projectExpenseType === '申报重修') {
form.value = {
...data,
projectProgress: '申报审批'
}
} else {
form.value = data
}
}
})
const submit = async () => {
const data = {
project: form.value,
designApprovalFiles: designApprovalFiles.value,
contractFiles: contractFiles.value,
acceptanceFiles: acceptanceFiles.value,
completedFiles: completedFiles.value,
otherFiles: otherFiles.value,
}
await formRef.value.validate().then(async () => {
try {
const loading = ElLoading.service({
lock: true,
text: '操作中',
background: 'rgba(0, 0, 0, 0.7)',
})
const res = await request({
url: '/snow-ops-platform/recovery/report',
method: 'POST',
data: data,
})
loading.close();
if (res.code === '00000') {
router.push({
name: 'projectManagement',
})
} else {
throw new Error(res.message || '操作失败')
}
} catch (error) {
ElMessage.error(error.message);
}
})
.catch((err) => {
ElMessage.error('请处理表单中的错误项');
});
}
</script>
<style scoped>