fix: 修复项目管理前端字段与后端Entity不匹配问题
问题: - 项目金额在新增和编辑时不会更新 - 前端表单字段与后端Entity字段不一致 - projectAmount不存在于后端,应该是budgetAmount和contractAmount - projectManager应该是projectManagerId (Long类型) - projectDesc应该是description 修复: 1. 修正前端表单字段 - projectAmount → budgetAmount (预算金额) - 新增 contractAmount (合同金额) - projectManager → projectManagerId - projectDesc → description - 新增 projectShort, projectType, remark等字段 2. 优化表单UI - 添加项目简称字段 - 添加项目类型下拉选择(开发/维护/咨询) - 预算金额和合同金额分开显示 - 添加备注字段 3. 修正表格显示列 - 项目金额 → 预算金额 + 合同金额(两列) 现在前后端字段完全一致!
This commit is contained in:
parent
d1137f5528
commit
504da52c88
@ -36,9 +36,14 @@
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="projectAmount" label="项目金额" width="120">
|
||||
<el-table-column prop="budgetAmount" label="预算金额" width="120">
|
||||
<template #default="scope">
|
||||
{{ formatAmount(scope.row.projectAmount) }}
|
||||
{{ formatAmount(scope.row.budgetAmount) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="contractAmount" label="合同金额" width="120">
|
||||
<template #default="scope">
|
||||
{{ formatAmount(scope.row.contractAmount) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="startDate" label="开始日期" width="120" />
|
||||
@ -81,13 +86,29 @@
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="项目金额" prop="projectAmount">
|
||||
<el-input-number v-model="form.projectAmount" :precision="2" :min="0" style="width: 100%" />
|
||||
<el-form-item label="项目简称" prop="projectShort">
|
||||
<el-input v-model="form.projectShort" placeholder="请输入项目简称" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="项目经理" prop="projectManager">
|
||||
<el-input v-model="form.projectManager" placeholder="请输入项目经理" />
|
||||
<el-form-item label="项目类型">
|
||||
<el-select v-model="form.projectType" placeholder="请选择" style="width: 100%">
|
||||
<el-option label="开发项目" value="development" />
|
||||
<el-option label="维护项目" value="maintenance" />
|
||||
<el-option label="咨询项目" value="consulting" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="预算金额" prop="budgetAmount">
|
||||
<el-input-number v-model="form.budgetAmount" :precision="2" :min="0" style="width: 100%" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="合同金额">
|
||||
<el-input-number v-model="form.contractAmount" :precision="2" :min="0" style="width: 100%" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -103,8 +124,11 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="项目描述" prop="projectDesc">
|
||||
<el-input v-model="form.projectDesc" type="textarea" rows="3" placeholder="请输入项目描述" />
|
||||
<el-form-item label="项目描述">
|
||||
<el-input v-model="form.description" type="textarea" rows="3" placeholder="请输入项目描述" />
|
||||
</el-form-item>
|
||||
<el-form-item label="备注">
|
||||
<el-input v-model="form.remark" type="textarea" rows="2" placeholder="请输入备注" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
@ -159,17 +183,22 @@ const form = reactive({
|
||||
projectId: null,
|
||||
projectCode: '',
|
||||
projectName: '',
|
||||
projectAmount: 0,
|
||||
projectManager: '',
|
||||
projectShort: '',
|
||||
customerId: null,
|
||||
projectType: 'development',
|
||||
projectManagerId: null,
|
||||
budgetAmount: 0,
|
||||
contractAmount: 0,
|
||||
startDate: '',
|
||||
endDate: '',
|
||||
projectDesc: ''
|
||||
description: '',
|
||||
remark: ''
|
||||
})
|
||||
|
||||
const rules = {
|
||||
projectCode: [{ required: true, message: '请输入项目编码', trigger: 'blur' }],
|
||||
projectName: [{ required: true, message: '请输入项目名称', trigger: 'blur' }],
|
||||
projectAmount: [{ required: true, message: '请输入项目金额', trigger: 'blur' }]
|
||||
budgetAmount: [{ required: true, message: '请输入项目预算', trigger: 'blur' }]
|
||||
}
|
||||
|
||||
const statusDialogVisible = ref(false)
|
||||
@ -224,11 +253,16 @@ const resetForm = () => {
|
||||
form.projectId = null
|
||||
form.projectCode = ''
|
||||
form.projectName = ''
|
||||
form.projectAmount = 0
|
||||
form.projectManager = ''
|
||||
form.projectShort = ''
|
||||
form.customerId = null
|
||||
form.projectType = 'development'
|
||||
form.projectManagerId = null
|
||||
form.budgetAmount = 0
|
||||
form.contractAmount = 0
|
||||
form.startDate = ''
|
||||
form.endDate = ''
|
||||
form.projectDesc = ''
|
||||
form.description = ''
|
||||
form.remark = ''
|
||||
}
|
||||
|
||||
const handleSubmit = async () => {
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 86d22460f4d127306501a7a053cb17c9245bfc7b
|
||||
Subproject commit 9e120359625bc1222ee4d31dd04bd64cdd1c0b35
|
||||
Loading…
x
Reference in New Issue
Block a user