fix(xispeak): 调整讲话批示页面格式并修复反馈表单组件引用

参考 fixcontact 方案统一查询区列宽与弹窗 labelCol,精简长标签消除文字遮挡;
修复 BgXiSpeakFeedbackModal 中 mainId 未注入、unref 未导入的引用缺陷。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
wsm
2026-08-06 11:40:06 +08:00
co-authored by Claude Opus 4.7
parent 5eecdd16e9
commit 7698c6c084
7 changed files with 144 additions and 18 deletions
@@ -48,7 +48,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="是否报送上级报告" name="isReportedToHigher">
<a-form-item label="是否报送上级" name="isReportedToHigher">
<JDictSelectTag v-model:value="formData.isReportedToHigher" dictCode="need_report_higher" placeholder="请选择" type="select" :stringToNumber="true" :disabled="nonJiJianFieldsReadonly" allow-clear />
</a-form-item>
</a-col>
@@ -126,10 +126,10 @@
const uploadFileRef = ref<InstanceType<typeof SUploadFile> | null>(null);
const uploadSecretLevel = ref(1);
const uploadKey = ref(0);
const labelCol = { xs: { span: 24 }, sm: { span: 7 } };
const wrapperCol = { xs: { span: 24 }, sm: { span: 17 } };
const wideLabelCol = { xs: { span: 24 }, sm: { span: 3 } };
const wideWrapperCol = { xs: { span: 24 }, sm: { span: 21 } };
const labelCol = { xs: { span: 24 }, sm: { span: 8 } };
const wrapperCol = { xs: { span: 24 }, sm: { span: 16 } };
const wideLabelCol = { xs: { span: 24 }, sm: { span: 8 } };
const wideWrapperCol = { xs: { span: 24 }, sm: { span: 16 } };
const formData = reactive<Record<string, any>>({
id: '',
@@ -317,8 +317,8 @@ import {
const labelCol = { xs: { span: 24 }, sm: { span: 7 } };
const wrapperCol = { xs: { span: 24 }, sm: { span: 17 } };
const wideLabelCol = { xs: { span: 24 }, sm: { span: 3 } };
const wideWrapperCol = { xs: { span: 24 }, sm: { span: 21 } };
const wideLabelCol = { xs: { span: 24 }, sm: { span: 7 } };
const wideWrapperCol = { xs: { span: 24 }, sm: { span: 17 } };
const compactLabelCol = { xs: { span: 24 }, sm: { span: 5 } };
const compactWrapperCol = { xs: { span: 24 }, sm: { span: 19 } };
@@ -224,8 +224,8 @@
const props = defineProps({
disabled: { type: Boolean, default: false },
});
const labelCol = { xs: { span: 24 }, sm: { span: 7 } };
const wrapperCol = { xs: { span: 24 }, sm: { span: 17 } };
const labelCol = { xs: { span: 24 }, sm: { span: 8 } };
const wrapperCol = { xs: { span: 24 }, sm: { span: 16 } };
function fillDeptFromLogin() {
const userInfo = (userStore.getUserInfo || {}) as Record<string, any>;
@@ -5,10 +5,11 @@
</template>
<script lang="ts" setup>
import { ref, nextTick, defineExpose } from 'vue';
import { ref, nextTick, defineExpose, inject, unref } from 'vue';
import BgXiSpeakFeedbackForm from './BgXiSpeakFeedbackForm.vue';
import JModal from '/@/components/Modal/src/JModal/JModal.vue';
const mainId = inject('mainId');
const title = ref<string>('');
const width = ref<number>(800);
const visible = ref<boolean>(false);
@@ -12,8 +12,8 @@
v-bind="validateInfos.speakStatus"
id="BgXiSpeakForm-speakStatus"
name="speakStatus"
:labelCol="{ xs: { span: 24 }, sm: { span: 3 } }"
:wrapperCol="{ xs: { span: 24 }, sm: { span: 21 } }"
:labelCol="{ xs: { span: 24 }, sm: { span: 6 } }"
:wrapperCol="{ xs: { span: 24 }, sm: { span: 18 } }"
>
<a-textarea v-model:value="formData.speakStatus" :rows="3" placeholder="请输入习近平总书记重要讲话指示批示情况" allow-clear />
</a-form-item>