|
@@ -9,36 +9,37 @@
|
|
|
<h3 class="common-dialog-title">信息详情</h3>
|
|
|
</div>
|
|
|
<div class="common-dialog-box">
|
|
|
- <el-form ref="form" :model="formData" :rules="rules" label-width="120px">
|
|
|
+ <el-form ref="form" :model="formData" label-width="120px">
|
|
|
<h4>信息内容</h4>
|
|
|
<div class="box1">
|
|
|
<el-form-item label="标题:" prop="title">
|
|
|
- <el-input v-model="formData.title" placeholder="请输入标题" style="width: 468px !important" />
|
|
|
+ <el-input v-model="formData.title" disabled placeholder="请输入标题" style="width: 468px !important" />
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="发布单位:" prop="publishUnit">
|
|
|
- <el-input v-model="formData.publishUnit" placeholder="请输入发布单位" style="width: 468px !important" />
|
|
|
+ <el-form-item label="发布单位:" prop="publish_group">
|
|
|
+ <el-input v-model="formData.publish_group" disabled placeholder="请输入发布单位" style="width: 468px !important" />
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="信息模板:" prop="templateType">
|
|
|
- <el-radio-group v-model="formData.templateType">
|
|
|
+ <el-form-item label="信息模板:" prop="template_id">
|
|
|
+ <el-radio-group v-model="formData.template_id" disabled>
|
|
|
<el-radio label="预设模板">预设模板</el-radio>
|
|
|
<el-radio label="自定义模板">自定义模板</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="formData.templateType === '预设模板'" label="预设模板:" prop="presetTemplate">
|
|
|
+ <el-form-item v-if="formData.template_id === '预设模板'" label="预设模板:" prop="presetTemplate">
|
|
|
<el-select v-model="selectedPresetTemplate" placeholder="请选择预设模板" style="width: 300px !important">
|
|
|
<el-option v-for="option in presetTemplates" :key="option.value" :label="option.label" :value="option.value"></el-option>
|
|
|
</el-select>
|
|
|
<el-text class="common-btn-text-primary" @click="showExample">样例</el-text>
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="formData.templateType === '自定义模板'" prop="customPageUrl">
|
|
|
+ <el-form-item v-if="formData.template_id === '自定义模板'" prop="customPageUrl">
|
|
|
<el-input v-model="formData.customPageUrl" placeholder="请输入自定义详情页面链接地址" style="width: 468px !important" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="信息内容:" prop="messageContent">
|
|
|
+ <el-form-item label="信息内容:" prop="content">
|
|
|
<el-input
|
|
|
- v-model="formData.messageContent"
|
|
|
+ v-model="formData.content"
|
|
|
type="textarea"
|
|
|
+ disabled
|
|
|
placeholder="请输入信息内容"
|
|
|
style="width: 468px !important"
|
|
|
></el-input>
|
|
@@ -54,7 +55,7 @@
|
|
|
<h4>推送配置</h4>
|
|
|
<div class="box1">
|
|
|
<el-form-item label="发布名单:" prop="releaseList" style="width: 468px !important"
|
|
|
- ><span class="highlight-text">已选择{{ formData.releaseList }}人</span>
|
|
|
+ ><span class="highlight-text">已选择{{ formData.user_count }}人</span>
|
|
|
<el-text class="common-btn-text-primary" @click="showReleaseDetail">发送明细</el-text>
|
|
|
</el-form-item>
|
|
|
<el-row :gutter="18">
|
|
@@ -64,15 +65,13 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="定时发布:" prop="timing">
|
|
|
- <el-date-picker v-model="formData.timing" type="datetime" placeholder="选择发布时间"></el-date-picker>
|
|
|
+ <el-form-item label="定时发布:" prop="publish_time">
|
|
|
+ <el-date-picker v-model="formData.publish_time" disabled type="datetime" placeholder="选择发布时间"></el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-form-item label="消息反馈方式:" prop="feedbackWay" style="width: 468px !important">
|
|
|
- <el-select v-model="formData.feedbackWay" placeholder="请选择消息反馈方式">
|
|
|
- <el-option v-for="option in feedbackOptions" :key="option.value" :label="option.label" :value="option.value"></el-option>
|
|
|
- </el-select>
|
|
|
+ <el-form-item label="消息反馈方式:" prop="response_type" style="width: 468px !important">
|
|
|
+ <el-select v-model="displayFeedbackText" disabled placeholder="请选择消息反馈方式"> </el-select>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
<h4 class="common-dialog-title">审核配置</h4>
|
|
@@ -84,8 +83,8 @@
|
|
|
</li>
|
|
|
</ul>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="审核人:" prop="auditor">
|
|
|
- <el-input v-model="formData.auditor" placeholder="请输入审核人姓名" style="width: 368px !important" />
|
|
|
+ <el-form-item label="审核人:" prop="examine_by">
|
|
|
+ <el-input v-model="formData.examine_by" disabled placeholder="请输入审核人姓名" style="width: 368px !important" />
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</el-form>
|
|
@@ -157,33 +156,32 @@ import { reactive, ref } from 'vue';
|
|
|
import { ElMessage } from 'element-plus';
|
|
|
import SendDetail from './sendDetail.vue';
|
|
|
import ShowReleaseDetail from './showReleaseDetail.vue';
|
|
|
+import { getInformationView } from '@/api/informationissue/informationissue';
|
|
|
const processingTime = '1小时 6分22秒';
|
|
|
+const props = defineProps({
|
|
|
+ eventId: {
|
|
|
+ type: String,
|
|
|
+ required: true
|
|
|
+ }
|
|
|
+});
|
|
|
const formData = ref({
|
|
|
title: '',
|
|
|
- publishUnit: '',
|
|
|
- templateType: '',
|
|
|
- messageContent: '',
|
|
|
- releaseList: 0,
|
|
|
+ publish_group: '',
|
|
|
+ template_id: '',
|
|
|
+ content: '',
|
|
|
+ user_count: '',
|
|
|
releaseTime: '',
|
|
|
- feedbackWay: '',
|
|
|
- auditor: '',
|
|
|
- timing: '',
|
|
|
+ response_type: '',
|
|
|
+ examine_by: '',
|
|
|
+ publish_time: '',
|
|
|
materials: '',
|
|
|
processingTime: '',
|
|
|
- approvalStatus: '',
|
|
|
- approvalComment: ''
|
|
|
+ examines: []
|
|
|
});
|
|
|
|
|
|
const auditMaterials = ['2023年4月29日广东省发布突发事件预警信息.pdf', '审核材料2'];
|
|
|
const rules = {
|
|
|
- title: [{ required: true, message: '请填写标题', trigger: 'blur' }],
|
|
|
- publishUnit: [{ required: true, message: '请填写发布单位', trigger: 'blur' }],
|
|
|
- releaseList: [{ required: true, message: '请选择发布名单', trigger: 'change' }],
|
|
|
- timing: [{ required: true, message: '请选择发布时间', trigger: 'change' }],
|
|
|
- feedbackWay: [{ required: true, message: '请选择消息反馈方式', trigger: 'change' }],
|
|
|
- auditor: [{ required: true, message: '请填写审核人', trigger: 'blur' }],
|
|
|
- approvalStatus: [{ required: true, message: '请选择审批状态', trigger: 'change' }],
|
|
|
- approvalComment: [{ required: true, message: '请输入具体意见', trigger: 'blur' }]
|
|
|
+ approvalStatus: [{ required: true, message: '请选择审批状态', trigger: 'change' }]
|
|
|
};
|
|
|
const files = ref([
|
|
|
{ name: '2023年4月29日广东省发布突发事件预警信息.pdf', url: '/path/to/file1.pdf' },
|
|
@@ -236,6 +234,19 @@ const approvalSteps = ref([
|
|
|
comment: ''
|
|
|
}
|
|
|
]);
|
|
|
+const feedbackTextMap = {
|
|
|
+ 0: '仅需阅读',
|
|
|
+ 1: '点击确认',
|
|
|
+ 2: '签字确认'
|
|
|
+};
|
|
|
+const displayFeedbackText = computed({
|
|
|
+ get() {
|
|
|
+ return feedbackTextMap[formData.value.response_type];
|
|
|
+ },
|
|
|
+ set(value) {
|
|
|
+ formData.value.response_type = Object.keys(feedbackTextMap).find((key) => feedbackTextMap[key] === value);
|
|
|
+ }
|
|
|
+});
|
|
|
let sendDetailState = reactive({
|
|
|
show: false,
|
|
|
eventId: ''
|
|
@@ -256,6 +267,20 @@ const viewFile = (file) => {
|
|
|
const publishNow = () => {
|
|
|
ElMessage.info('点击了立即发布');
|
|
|
};
|
|
|
+const fetchInformation = async () => {
|
|
|
+ try {
|
|
|
+ const response = await getInformationView({ info_id: props.eventId });
|
|
|
+ if (response && response.data) {
|
|
|
+ formData.value = response.data;
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ console.error('Failed to fetch information:', error);
|
|
|
+ }
|
|
|
+};
|
|
|
+// 在组件挂载时调用 fetchInformation
|
|
|
+onMounted(() => {
|
|
|
+ fetchInformation();
|
|
|
+});
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|