|
@@ -19,10 +19,15 @@
|
|
:options="opt_info_type"
|
|
:options="opt_info_type"
|
|
@change="change_info_type"
|
|
@change="change_info_type"
|
|
/>
|
|
/>
|
|
- <van-dropdown-item title="时间" ref="timeRef">
|
|
|
|
- <van-picker-group title='发布时间' :tabs="['开始日期', '结束日期']" @confirm="onConfirmTime" @cancel="onCancelTime">
|
|
|
|
- <van-date-picker v-model="queryParams.begin_time"/>
|
|
|
|
- <van-date-picker v-model="queryParams.end_time"/>
|
|
|
|
|
|
+ <van-dropdown-item ref="timeRef" title="时间">
|
|
|
|
+ <van-picker-group
|
|
|
|
+ title="发布时间"
|
|
|
|
+ :tabs="['开始日期', '结束日期']"
|
|
|
|
+ @confirm="onConfirmTime"
|
|
|
|
+ @cancel="onCancelTime"
|
|
|
|
+ >
|
|
|
|
+ <van-date-picker v-model="queryParams.begin_time" />
|
|
|
|
+ <van-date-picker v-model="queryParams.end_time" />
|
|
</van-picker-group>
|
|
</van-picker-group>
|
|
</van-dropdown-item>
|
|
</van-dropdown-item>
|
|
<van-dropdown-item
|
|
<van-dropdown-item
|
|
@@ -48,92 +53,105 @@
|
|
class="event-list-item"
|
|
class="event-list-item"
|
|
@click="handleInfo(item)"
|
|
@click="handleInfo(item)"
|
|
>
|
|
>
|
|
- <div class="item-title">
|
|
|
|
- <div :class="['info_type', get_info_type_color(item.msg_type)]">
|
|
|
|
- {{ item.msg_type }}
|
|
|
|
- </div>
|
|
|
|
- <div class="item-title-text">{{ item.title }}</div>
|
|
|
|
|
|
+ <div class="item-title">
|
|
|
|
+ <div :class="['info_type', get_info_type_color(item.msg_type)]">
|
|
|
|
+ {{ item.msg_type }}
|
|
</div>
|
|
</div>
|
|
- <!--预案通知-->
|
|
|
|
- <div v-if="item.msg_type === '预案通知'" class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">预案名称:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.plan_name }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">响应级别:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.response_level }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">发布时间:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.sent_time }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">任务内容:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.yzy_content || "暂无内容" }}</div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div class="item-title-text">{{ item.title }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <!--预案通知-->
|
|
|
|
+ <div v-if="item.msg_type === '预案通知'" class="item-content">
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">预案名称:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.plan_name }}</div>
|
|
</div>
|
|
</div>
|
|
- <!-- 事件接报 -->
|
|
|
|
- <div v-else-if="item.msg_type === '事件接报'" class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">事件名称:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.event_title }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">事件等级:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.event_level }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">发生时间:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.event_time }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">事发地点:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.address }}</div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">响应级别:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.response_level }}</div>
|
|
</div>
|
|
</div>
|
|
- <!-- 任务消息 -->
|
|
|
|
- <div v-else-if="item.msg_type === '任务消息'" class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">事件名称:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.event_title }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">发布时间:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.creation_time }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">任务内容:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.task_description }}</div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">发布时间:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.sent_time }}</div>
|
|
</div>
|
|
</div>
|
|
- <!-- 在线点名 -->
|
|
|
|
- <div v-else-if="item.msg_type === '在线点名'" class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- {{ item.detail.call_title }}
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">发送时间:</div>
|
|
|
|
- <div class="item-value">{{ item.detail.create_time }}</div>
|
|
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">任务内容:</div>
|
|
|
|
+ <div class="item-value">
|
|
|
|
+ {{ item.detail.yzy_content || "暂无内容" }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <!-- 信息发布 -->
|
|
|
|
- <div v-else-if="['预警信息', '灾情信息', '灾情信息', '指挥救援', '公众防范'].includes(item.msg_type)" class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">发布时间:</div>
|
|
|
|
- <div class="item-value">{{ item.recv_time }}</div>
|
|
|
|
- </div>
|
|
|
|
- <div class="line-item">
|
|
|
|
- <div class="item-label">任务内容:</div>
|
|
|
|
- <div class="item-value">{{ item.content }}</div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <!-- 事件接报 -->
|
|
|
|
+ <div v-else-if="item.msg_type === '事件接报'" class="item-content">
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">事件名称:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.event_title }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">事件等级:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.event_level }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">发生时间:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.event_time }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">事发地点:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.address }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <!-- 任务消息 -->
|
|
|
|
+ <div v-else-if="item.msg_type === '任务消息'" class="item-content">
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">事件名称:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.event_title }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">发布时间:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.creation_time }}</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">任务内容:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.task_description }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <!-- 在线点名 -->
|
|
|
|
+ <div v-else-if="item.msg_type === '在线点名'" class="item-content">
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ {{ item.detail.call_title }}
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">发送时间:</div>
|
|
|
|
+ <div class="item-value">{{ item.detail.create_time }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <!-- 信息发布 -->
|
|
|
|
+ <div
|
|
|
|
+ v-else-if="
|
|
|
|
+ [
|
|
|
|
+ '预警信息',
|
|
|
|
+ '灾情信息',
|
|
|
|
+ '灾情信息',
|
|
|
|
+ '指挥救援',
|
|
|
|
+ '公众防范'
|
|
|
|
+ ].includes(item.msg_type)
|
|
|
|
+ "
|
|
|
|
+ class="item-content"
|
|
|
|
+ >
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">发布时间:</div>
|
|
|
|
+ <div class="item-value">{{ item.recv_time }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ <div class="item-label">任务内容:</div>
|
|
|
|
+ <div class="item-value">{{ item.content }}</div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
|
|
- <div v-else class="item-content">
|
|
|
|
- <div class="line-item">
|
|
|
|
- {{ item.content }}
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div v-else class="item-content">
|
|
|
|
+ <div class="line-item">
|
|
|
|
+ {{ item.content }}
|
|
</div>
|
|
</div>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
</van-list>
|
|
</van-list>
|
|
</div>
|
|
</div>
|
|
@@ -158,7 +176,7 @@ const opt_info_type = [
|
|
{ text: "隐患巡查", value: "隐患巡查" },
|
|
{ text: "隐患巡查", value: "隐患巡查" },
|
|
{ text: "风险排查", value: "风险排查" },
|
|
{ text: "风险排查", value: "风险排查" },
|
|
{ text: "数据采集", value: "数据采集" },
|
|
{ text: "数据采集", value: "数据采集" },
|
|
-
|
|
|
|
|
|
+
|
|
{ text: "预警信息", value: "预警信息" },
|
|
{ text: "预警信息", value: "预警信息" },
|
|
{ text: "灾情信息", value: "灾情信息" },
|
|
{ text: "灾情信息", value: "灾情信息" },
|
|
{ text: "处置信息", value: "处置信息" },
|
|
{ text: "处置信息", value: "处置信息" },
|
|
@@ -175,25 +193,26 @@ const opt_info_order = [
|
|
{ text: "降序", value: "desc" }
|
|
{ text: "降序", value: "desc" }
|
|
];
|
|
];
|
|
|
|
|
|
-const get_info_type_color = (val) => {
|
|
|
|
- if(val == "任务消息") {
|
|
|
|
- return "info_type_2"
|
|
|
|
- }
|
|
|
|
- else if(['预警信息', '灾情信息', '灾情信息', '指挥救援', '公众防范'].includes(val)) {
|
|
|
|
- return "info_type_3"
|
|
|
|
|
|
+const get_info_type_color = val => {
|
|
|
|
+ if (val == "任务消息") {
|
|
|
|
+ return "info_type_2";
|
|
|
|
+ } else if (
|
|
|
|
+ ["预警信息", "灾情信息", "灾情信息", "指挥救援", "公众防范"].includes(val)
|
|
|
|
+ ) {
|
|
|
|
+ return "info_type_3";
|
|
}
|
|
}
|
|
- return "info_type_0"
|
|
|
|
-}
|
|
|
|
|
|
+ return "info_type_0";
|
|
|
|
+};
|
|
|
|
|
|
const onConfirmTime = () => {
|
|
const onConfirmTime = () => {
|
|
timeRef.value.toggle();
|
|
timeRef.value.toggle();
|
|
queryParams.value.page = 0;
|
|
queryParams.value.page = 0;
|
|
getList();
|
|
getList();
|
|
-}
|
|
|
|
|
|
+};
|
|
|
|
|
|
const onCancelTime = () => {
|
|
const onCancelTime = () => {
|
|
timeRef.value.toggle();
|
|
timeRef.value.toggle();
|
|
-}
|
|
|
|
|
|
+};
|
|
|
|
|
|
const timeRef = ref(null);
|
|
const timeRef = ref(null);
|
|
const info_list = ref([]);
|
|
const info_list = ref([]);
|
|
@@ -206,8 +225,8 @@ const queryParams = ref({
|
|
page: 0,
|
|
page: 0,
|
|
page_size: 5,
|
|
page_size: 5,
|
|
info_type: "",
|
|
info_type: "",
|
|
- begin_time: dayjs().add(-3, 'month').format('YYYY-MM-DD').split("-"),
|
|
|
|
- end_time: dayjs().format('YYYY-MM-DD').split("-"),
|
|
|
|
|
|
+ begin_time: dayjs().add(-3, "month").format("YYYY-MM-DD").split("-"),
|
|
|
|
+ end_time: dayjs().format("YYYY-MM-DD").split("-"),
|
|
event_level: "",
|
|
event_level: "",
|
|
info_order: "desc",
|
|
info_order: "desc",
|
|
search_keyword: ""
|
|
search_keyword: ""
|
|
@@ -235,16 +254,21 @@ const change_info_order = () => {
|
|
getList();
|
|
getList();
|
|
};
|
|
};
|
|
|
|
|
|
-const handleInfo = (item) => {
|
|
|
|
- // router.push("/infoDetails?id=" + item.id);
|
|
|
|
- router.push(item.detail.detail_url);
|
|
|
|
-}
|
|
|
|
|
|
+const handleInfo = item => {
|
|
|
|
+ if (item.msg_type === "值班消息") {
|
|
|
|
+ router.push({ name: "Duty" });
|
|
|
|
+ } else if (item.msg_type === "在线点名") {
|
|
|
|
+ router.push({ name: "rollCallRecord2" });
|
|
|
|
+ } else {
|
|
|
|
+ router.push(item.detail.detail_url);
|
|
|
|
+ }
|
|
|
|
+};
|
|
|
|
|
|
const getList = () => {
|
|
const getList = () => {
|
|
queryParams.value.page++;
|
|
queryParams.value.page++;
|
|
let params = queryParams.value;
|
|
let params = queryParams.value;
|
|
- params['begin_time_s'] = params.begin_time.join("-");
|
|
|
|
- params['end_time_s'] = params.end_time.join("-");
|
|
|
|
|
|
+ params["begin_time_s"] = params.begin_time.join("-");
|
|
|
|
+ params["end_time_s"] = params.end_time.join("-");
|
|
// console.log('params:', queryParams.value, params);
|
|
// console.log('params:', queryParams.value, params);
|
|
MsgCenterList(params)
|
|
MsgCenterList(params)
|
|
.then(res => {
|
|
.then(res => {
|
|
@@ -305,25 +329,25 @@ const getList = () => {
|
|
padding: 0 12px 8px 90px;
|
|
padding: 0 12px 8px 90px;
|
|
.item-title-text {
|
|
.item-title-text {
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
- color: #414F64;
|
|
|
|
|
|
+ color: #414f64;
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
}
|
|
}
|
|
|
|
|
|
.info_type {
|
|
.info_type {
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
padding: 3px 10px;
|
|
padding: 3px 10px;
|
|
- color:#fff;
|
|
|
|
|
|
+ color: #fff;
|
|
position: absolute;
|
|
position: absolute;
|
|
top: 0;
|
|
top: 0;
|
|
left: 0;
|
|
left: 0;
|
|
}
|
|
}
|
|
|
|
|
|
.info_type_0 {
|
|
.info_type_0 {
|
|
- background: #FFAF00;
|
|
|
|
|
|
+ background: #ffaf00;
|
|
}
|
|
}
|
|
|
|
|
|
.info_type_1 {
|
|
.info_type_1 {
|
|
- background: #FF1818;
|
|
|
|
|
|
+ background: #ff1818;
|
|
}
|
|
}
|
|
|
|
|
|
.info_type_2 {
|
|
.info_type_2 {
|
|
@@ -331,17 +355,17 @@ const getList = () => {
|
|
}
|
|
}
|
|
|
|
|
|
.info_type_3 {
|
|
.info_type_3 {
|
|
- background: #FF9F9F;
|
|
|
|
|
|
+ background: #ff9f9f;
|
|
}
|
|
}
|
|
|
|
|
|
.info_type_4 {
|
|
.info_type_4 {
|
|
- background: #A4D3FF;
|
|
|
|
|
|
+ background: #a4d3ff;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.item-content {
|
|
.item-content {
|
|
- padding: 0 12px 12px;
|
|
|
|
- font-size: 14px;
|
|
|
|
- color: #414f64;
|
|
|
|
|
|
+ padding: 0 12px 12px;
|
|
|
|
+ font-size: 14px;
|
|
|
|
+ color: #414f64;
|
|
.line-item {
|
|
.line-item {
|
|
display: flex;
|
|
display: flex;
|
|
padding: 3px 0;
|
|
padding: 3px 0;
|