wip: 🚧 通知公告临时提交

通知公告临时提交
This commit is contained in:
胡少翔
2024-09-12 18:10:38 +08:00
parent 27e7b912af
commit f34df2bb40
3 changed files with 19 additions and 171 deletions

View File

@@ -10,28 +10,6 @@
@keyup.enter="handleQuery()"
/>
</el-form-item>
<el-form-item label="优先级" prop="priority">
<el-select
v-model="queryParams.priority"
class="!w-[100px]"
clearable
placeholder="全部"
>
<el-option :value="0" label="低" />
<el-option :value="1" label="中" />
<el-option :value="2" label="高" />
</el-select>
</el-form-item>
<el-form-item label="发布时间" prop="sendTime">
<el-date-picker
v-model="queryParams.sendTime"
type="daterange"
range-separator="~"
start-placeholder="开始时间"
end-placeholder="结束时间"
value-format="YYYY-MM-DD HH:mm:ss"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="handleQuery()">
<i-ep-search />
@@ -89,7 +67,7 @@
</el-table-column>
<el-table-column
align="center"
key="sendTime"
key="releaseTime"
label="发布时间"
prop="sendTime"
min-width="100"
@@ -117,123 +95,6 @@
@pagination="handleQuery()"
/>
</el-card>
<!-- 通知公告表单弹窗 -->
<el-dialog
v-model="dialog.visible"
:title="dialog.title"
width="500px"
@close="handleCloseDialog"
>
<el-form
ref="dataFormRef"
:model="formData"
:rules="rules"
label-width="100px"
>
<!-- <el-input v-model="queryParams.id" hidden />-->
<el-form-item label="通知标题" prop="title">
<el-input
v-model="formData.title"
placeholder="通知标题"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
<el-form-item label="通知内容" prop="content">
<el-input
v-model="formData.content"
placeholder="通知内容"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
<el-form-item label="通知类型" prop="noticeType">
<el-input
v-model="formData.noticeType"
placeholder="通知类型"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
<!-- <el-form-item label="发布人" prop="releaseBy">-->
<!-- <el-input-->
<!-- v-model="formData.releaseBy"-->
<!-- placeholder="发布人"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery()"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="优先级" prop="priority">
<!-- <el-input-->
<!-- v-model="formData.priority"-->
<!-- placeholder="优先级(0-低 1-中 2-高)"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery()"-->
<!-- />-->
<el-radio-group v-model="formData.priority">
<el-radio :value="0"></el-radio>
<el-radio :value="1"></el-radio>
<el-radio :value="2"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="目标类型" prop="tarType">
<!-- <el-input-->
<!-- v-model="formData.tarType"-->
<!-- placeholder="目标类型(0-全体 1-指定)"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery()"-->
<!-- />-->
<el-radio-group v-model="formData.tarType">
<el-radio :value="0">全体</el-radio>
<el-radio :value="1">指定</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="发布状态" prop="sendStatus">
<!-- <el-input-->
<!-- v-model="formData.sendStatus"-->
<!-- placeholder="发布状态(0-未发布 1已发布 2已撤回)"-->
<!-- clearable-->
<!-- @keyup.enter="handleQuery()"-->
<!-- />-->
<el-radio-group v-model="formData.sendStatus">
<el-radio :value="0">未发布</el-radio>
<el-radio :value="1">已发布</el-radio>
<el-radio :value="2">已撤回</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
v-if="formData.sendStatus === 1"
label="发布时间"
prop="sendTime"
>
<el-date-picker
v-model="formData.sendTime"
type="datetime"
placeholder="发布时间"
value-format="YYYY-MM-DD HH:mm:ss"
/>
</el-form-item>
<el-form-item
v-if="formData.sendStatus === 2"
label="撤回时间"
prop="recallTime"
>
<el-date-picker
v-model="formData.recallTime"
type="datetime"
placeholder="撤回时间"
value-format="YYYY-MM-DD HH:mm:ss"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleSubmit()">确定</el-button>
<el-button @click="handleCloseDialog()">取消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
@@ -250,7 +111,7 @@ import NoticeAPI, {
} from "@/api/notice";
const queryFormRef = ref(ElForm);
const dataFormRef = ref(ElForm);
const pageData = ref<NoticePageVO[]>([]);
const loading = ref(false);
const ids = ref<number[]>([]);
@@ -261,35 +122,10 @@ const queryParams = reactive<NoticePageQuery>({
pageSize: 10,
});
// 通知公告表格数据
const pageData = ref<NoticePageVO[]>([]);
// 弹窗
const dialog = reactive({
title: "",
visible: false,
});
// 通知公告表单数据
const formData = reactive<NoticeForm>({
sendStatus: 0, // 默认状态为未发布
priority: 0, // 默认优先级为低
tarType: 0, // 默认目标类型为全体
});
// 通知公告表单校验规则
const rules = reactive({
title: [{ required: true, message: "请输入通知标题", trigger: "blur" }],
content: [{ required: true, message: "请输入通知内容", trigger: "blur" }],
// releaseBy: [{ required: true, message: "请输入发布人", trigger: "blur" }],
sendTime: [{ required: true, message: "请输入发布时间", trigger: "blur" }],
recallTime: [{ required: true, message: "请输入撤回时间", trigger: "blur" }],
});
/** 查询通知公告 */
function handleQuery() {
loading.value = true;
NoticeAPI.getPage(queryParams)
NoticeAPI.getMyNoticePage(queryParams)
.then((data) => {
pageData.value = data.list;
total.value = data.total;