能正确显示反馈信息,并且能够显示树形表单,不过树形表单没有缩进,需继续修改
This commit is contained in:
@@ -119,6 +119,11 @@
|
||||
>
|
||||
<div class="section-title">新增反馈</div>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="序号" name="num">
|
||||
<a-input-number v-model:value="feedbackForm.num" style="width: 100%" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="反馈部门id" name="responDeptid">
|
||||
<a-input v-model:value="feedbackForm.responDeptid" allow-clear />
|
||||
@@ -139,14 +144,88 @@
|
||||
<a-input v-model:value="feedbackForm.responPersonname" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-form-item label="措施内容" name="method" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.method" :rows="3" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="完成期限" name="deadline">
|
||||
<a-date-picker v-model:value="feedbackForm.deadline" value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="成果形式" name="outcomeForm">
|
||||
<a-input v-model:value="feedbackForm.outcomeForm" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-form-item label="进展情况" name="progress" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.progress" :rows="3" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-form-item label="落实情况" name="implStatus" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.implStatus" :rows="3" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="完成状态" name="completionStatus">
|
||||
<a-input v-model:value="feedbackForm.completionStatus" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-form-item label="落实情况" name="implStatus" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.implStatus" :rows="3" allow-clear />
|
||||
<a-form-item label="落实计划" name="completionPlan" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.completionPlan" :rows="3" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="总措施号" name="sumMethodNum">
|
||||
<a-input v-model:value="feedbackForm.sumMethodNum" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="检查情况" name="checkStatus">
|
||||
<a-input v-model:value="feedbackForm.checkStatus" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-form-item label="监督意见" name="inspectionAdvice" :labelCol="wideLabelCol" :wrapperCol="wideWrapperCol">
|
||||
<a-textarea v-model:value="feedbackForm.inspectionAdvice" :rows="3" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="措施数量" name="measureNum">
|
||||
<a-input-number v-model:value="feedbackForm.measureNum" style="width: 100%" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="发起类型" name="launchType">
|
||||
<a-select v-model:value="feedbackForm.launchType" placeholder="请选择发起类型" allow-clear>
|
||||
<a-select-option :value="0">立即发起</a-select-option>
|
||||
<a-select-option :value="1">周期发起</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="周期类型" name="intervalType">
|
||||
<a-select v-model:value="feedbackForm.intervalType" placeholder="请选择周期类型" allow-clear>
|
||||
<a-select-option :value="1">日</a-select-option>
|
||||
<a-select-option :value="2">周</a-select-option>
|
||||
<a-select-option :value="3">两周</a-select-option>
|
||||
<a-select-option :value="4">月</a-select-option>
|
||||
<a-select-option :value="5">季</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="周期任务数量" name="startCount">
|
||||
<a-input-number v-model:value="feedbackForm.startCount" style="width: 100%" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="周期开始时间" name="startTime">
|
||||
<a-date-picker v-model:value="feedbackForm.startTime" showTime value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" placeholder="请选择周期开始时间" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -258,7 +337,21 @@
|
||||
responPersonname: '',
|
||||
implStatus: '',
|
||||
completionStatus: '',
|
||||
completionPlan: '',
|
||||
mainId: '',
|
||||
num: undefined,
|
||||
method: '',
|
||||
deadline: '',
|
||||
outcomeForm: '',
|
||||
progress: '',
|
||||
sumMethodNum: '',
|
||||
checkStatus: '',
|
||||
inspectionAdvice: '',
|
||||
measureNum: undefined,
|
||||
launchType: undefined,
|
||||
intervalType: undefined,
|
||||
startCount: undefined,
|
||||
startTime: '',
|
||||
});
|
||||
|
||||
const feedbackRules = {
|
||||
@@ -266,10 +359,76 @@
|
||||
};
|
||||
|
||||
const feedbackColumns = [
|
||||
{ title: '反馈部门名称', dataIndex: 'responDeptname', align: 'center', width: 160 },
|
||||
{ title: '反馈人姓名', dataIndex: 'responPersonname', align: 'center', width: 140 },
|
||||
{ title: '落实情况', dataIndex: 'implStatus', align: 'left', width: 280 },
|
||||
{ title: '完成状态', dataIndex: 'completionStatus', align: 'center', width: 120 },
|
||||
{ title: '序号', dataIndex: 'num', align: 'center', width: 60 },
|
||||
{ title: '反馈部门名称', dataIndex: 'responDeptname', align: 'center', width: 120 },
|
||||
{ title: '反馈人姓名', dataIndex: 'responPersonname', align: 'center', width: 100 },
|
||||
{ title: '措施内容', dataIndex: 'method', align: 'left', width: 200 },
|
||||
{
|
||||
title: '完成期限',
|
||||
dataIndex: 'deadline',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
customRender: ({ text }) => {
|
||||
if (!text) return '';
|
||||
if (text instanceof Date) {
|
||||
const y = text.getFullYear();
|
||||
const m = String(text.getMonth() + 1).padStart(2, '0');
|
||||
const d = String(text.getDate()).padStart(2, '0');
|
||||
return `${y}-${m}-${d}`;
|
||||
}
|
||||
return String(text).substr(0, 10);
|
||||
},
|
||||
},
|
||||
{ title: '成果形式', dataIndex: 'outcomeForm', align: 'center', width: 100 },
|
||||
{ title: '进展情况', dataIndex: 'progress', align: 'left', width: 200 },
|
||||
{ title: '落实情况', dataIndex: 'implStatus', align: 'left', width: 200 },
|
||||
{ title: '完成状态', dataIndex: 'completionStatus', align: 'center', width: 100 },
|
||||
{ title: '落实计划', dataIndex: 'completionPlan', align: 'left', width: 200 },
|
||||
{ title: '总措施号', dataIndex: 'sumMethodNum', align: 'center', width: 100 },
|
||||
{ title: '检查情况', dataIndex: 'checkStatus', align: 'center', width: 120 },
|
||||
{ title: '监督意见', dataIndex: 'inspectionAdvice', align: 'left', width: 200 },
|
||||
{ title: '措施数量', dataIndex: 'measureNum', align: 'center', width: 80 },
|
||||
{
|
||||
title: '发起类型',
|
||||
dataIndex: 'launchType',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
customRender: ({ text }) => {
|
||||
if (text === 0) return '立即发起';
|
||||
if (text === 1) return '周期发起';
|
||||
return text || '';
|
||||
},
|
||||
},
|
||||
{
|
||||
title: '周期类型',
|
||||
dataIndex: 'intervalType',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
customRender: ({ text }) => {
|
||||
const map = { 1: '日', 2: '周', 3: '两周', 4: '月', 5: '季' };
|
||||
return map[text] || text || '';
|
||||
},
|
||||
},
|
||||
{ title: '周期任务数量', dataIndex: 'startCount', align: 'center', width: 100 },
|
||||
{
|
||||
title: '周期开始时间',
|
||||
dataIndex: 'startTime',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
customRender: ({ text }) => {
|
||||
if (!text) return '';
|
||||
if (text instanceof Date) {
|
||||
const y = text.getFullYear();
|
||||
const m = String(text.getMonth() + 1).padStart(2, '0');
|
||||
const d = String(text.getDate()).padStart(2, '0');
|
||||
const h = String(text.getHours()).padStart(2, '0');
|
||||
const min = String(text.getMinutes()).padStart(2, '0');
|
||||
const s = String(text.getSeconds()).padStart(2, '0');
|
||||
return `${y}-${m}-${d} ${h}:${min}:${s}`;
|
||||
}
|
||||
return String(text);
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
const mainDisabled = computed(() => {
|
||||
@@ -383,7 +542,11 @@
|
||||
|
||||
function resetFeedbackForm() {
|
||||
Object.keys(feedbackForm).forEach((key) => {
|
||||
feedbackForm[key] = '';
|
||||
if (key === 'num' || key === 'measureNum' || key === 'launchType' || key === 'intervalType' || key === 'startCount') {
|
||||
feedbackForm[key] = undefined;
|
||||
} else {
|
||||
feedbackForm[key] = '';
|
||||
}
|
||||
});
|
||||
feedbackForm.mainId = mainForm.id;
|
||||
nextTick(() => feedbackFormRef.value?.clearValidate?.());
|
||||
|
||||
Reference in New Issue
Block a user