<template>
|
<div>
|
<!-- 内容 -->
|
<div class="content-wrap">
|
<!-- 事故快报审核 -->
|
<div class="column">
|
<!-- 标题 -->
|
<v-title-home content="规章制度和工作要求管理" width="100%" :showDateFlag="false">
|
|
</v-title-home>
|
<!-- banner -->
|
<img src="../../../assets/safety/banner3.png" class="mt16" >
|
<!-- <div class="layer layer-1"></div> -->
|
<!-- 操作栏 -->
|
<div class="action-bar">
|
<div
|
@click="$to('/safetyArticleList')"
|
class="action-item orange pointer"
|
>
|
查看全部
|
</div>
|
<div
|
@click="$to('/safetyArticleEdit?type=4')"
|
class="action-item blue pointer"
|
>
|
新建内容
|
</div>
|
</div>
|
<!-- 列表 -->
|
<perfect-scrollbar>
|
<div class="list-wrap">
|
<div class="no-data" v-if="ruleList.length == 0">
|
- 暂无数据 -
|
</div>
|
<div :key="i" @click="$router.push('/safetyArticleDetail?id='+item.id)" class="list-item flex"
|
v-for="(item, i) in ruleList">
|
<div class="img-wrap">
|
<img :src="getImgSrc(item.publishContent)" alt=""
|
v-if="getImgSrc(item.publishContent)"/>
|
<img :src="require('@/assets/safety/rule.png')" alt="" v-else>
|
<div class="top-left inner-border"></div>
|
<div class="top-right inner-border"></div>
|
<div class="bottom-left inner-border"></div>
|
<div class="bottom-right inner-border"></div>
|
</div>
|
<div class="item-info">
|
<div class="item-title font18">{{ item.title }}</div>
|
<div class="item-ellipsis-info text_clamp_2">
|
{{ getText(item.publishContent) }}
|
</div>
|
<div class="item-sub">{{item.createDate}}</div>
|
</div>
|
</div>
|
</div>
|
</perfect-scrollbar>
|
|
<div class="g-pagination">
|
<el-pagination
|
layout="total, prev, pager, next"
|
:current-page="pageNum"
|
:page-size="pageSize"
|
:total="total"
|
background
|
prev-text="上一页"
|
next-text="下一页"
|
@current-change="pageChange"
|
></el-pagination>
|
</div>
|
</div>
|
</div>
|
</div>
|
</template>
|
<script>
|
import moment from 'moment'
|
import {PerfectScrollbar} from "vue2-perfect-scrollbar";
|
export default {
|
name: "safety",
|
components: {
|
PerfectScrollbar,
|
},
|
data() {
|
return {
|
ruleList: [],
|
pageSize: 20,
|
pageNum: 1,
|
total: 1, // 总页数
|
};
|
},
|
created() {
|
this.loadDataList();
|
},
|
activated() {
|
this.loadDataList();
|
},
|
methods: {
|
pageChange(page) {
|
this.pageNum = page;
|
this.loadDataList();
|
},
|
loadDataList() {
|
this.$axios
|
.get(this.$Interface.safetyArticle.list, {
|
params: {
|
limit: this.pageSize,
|
page: this.pageNum,
|
type: '4'
|
},
|
})
|
.then((res) => {
|
this.ruleList = res.data.records;
|
this.total = Math.ceil(Number(res.data.total) / this.pageSize) || 1;
|
});
|
},
|
getText(str) {
|
return str
|
.replace(/<[^<>]+>/g, "")
|
.replace(/ /gi, "");
|
},
|
getImgSrc(str) {
|
let data = '';
|
str.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/, function (match, capture) {
|
data = capture;
|
});
|
return data;
|
},
|
getTime(value) {
|
return moment(value).format('yyyy-MM-DD HH:mm:ss')
|
}
|
},
|
mounted() {
|
|
},
|
};
|
</script>
|
<style scoped lang="less">
|
</style>
|