zhouwenxuan
2023-11-30 25fa992e12447e535b801da2cc497bdafe0b7b9b
src/views/safetyReview/notice/notice.vue
@@ -10,33 +10,38 @@
        </div>
        <!-- 表格数据 -->
        <el-table v-loading="loading" :data="dataList" :border="true">
            <el-table-column label="发布时间" prop="publishTime" align="center"  />
            <el-table-column label="标题" prop="noticeTitle" align="center" :show-overflow-tooltip="true" width="650" />
            <el-table-column label="发布时间" prop="createTime" align="center"  />
            <el-table-column label="标题" prop="title" align="center" :show-overflow-tooltip="true" width="650" />
            <el-table-column label="最近修改时间" prop="updateTime" align="center"  />
            <el-table-column label="操作" align="center" class-name="small-padding fixed-width" >
                <template #default="scope">
                    <el-button link type="primary"  @click="openDialog('review',scope.row)" >查看</el-button>
                    <el-button link type="primary"  @click="openDialog('edit',scope.row)" v-hasPermi="['system:role:edit']">编辑</el-button>
                    <el-button link type="danger"  @click="handleDelete(scope.row)" v-hasPermi="['system:role:remove']">删除</el-button>
                    <el-button link type="primary"  @click="openDialog('edit',scope.row)" >编辑</el-button>
                    <el-button link type="danger"  @click="handleDelete(scope.row)" >删除</el-button>
                </template>
            </el-table-column>
        </el-table>
        <pagination
            v-show="total > 0"
            :total="total"
            v-model:page="queryParams.pageNum"
            v-model:limit="queryParams.pageSize"
            @pagination="getList"
        />
        <div class="pag-container">
            <el-pagination
                v-model:current-page="data.queryParams.pageNum"
                v-model:page-size="data.queryParams.pageSize"
                :page-sizes="[10,15,20,25]"
                layout="total, sizes, prev, pager, next, jumper"
                :total="total"
                @size-change="handleSizeChange"
                @current-change="handleCurrentChange"
            />
        </div>
        <notice-dialog ref="noticeRef" @getList = "getList"></notice-dialog>
    </div>
</template>
<script setup>
import {getCurrentInstance, reactive, ref, toRefs} from "vue";
import {getCurrentInstance, onMounted, reactive, ref, toRefs} from "vue";
import noticeDialog from "./components/noticeDialog.vue"
import {ElMessageBox} from "element-plus";
import {ElMessage, ElMessageBox} from "element-plus";
import {getNoticeList, delNotice} from "@/api/backManage/notice";
const { proxy } = getCurrentInstance();
const loading = ref(false);
const noticeRef = ref();
@@ -44,23 +49,47 @@
    queryParams: {
        pageNum: 1,
        pageSize: 10,
        title: '',
        content: '',
    },
    total: 0,
    dataList: []
});
const dataList = ref([]);
const total = ref(0);
const { queryParams, total, dataList } = toRefs(data);
const { queryParams } = toRefs(data);
const getList = () => {
onMounted(() => {
    getList();
});
const getList = async () => {
    loading.value = true;
    console.log("获取数据")
    const res = await getNoticeList(data.queryParams);
    if(res.code === 200){
        dataList.value = res.data.list.map(item => {
            return {
                ...item,
                createTime: item.createTime.replace(/T/g," ")
            }
        })
        total.value = res.data.total
    }else{
        ElMessage.warning(res.message)
    }
    loading.value = false;
}
const openDialog = (type, value) => {
    noticeRef.value.openDialog(type, value);
}
const handleSizeChange = (val) => {
    data.queryParams.pageSize = val
    getList()
}
const handleCurrentChange = (val) => {
    data.queryParams.pageNum = val
    getList()
}
/** 重置新增的表单以及其他数据  */
@@ -77,8 +106,23 @@
            type: 'warning',
        })
        .then( async() => {
            const res = await delNotice(val);
            if(res.code === 200){
                ElMessage({
                    type: 'success',
                    message: '删除成功'
                });
                getList();
            }else{
                ElMessage.warning(res.message)
            }
        })
}
</script>
<style lang="scss">
.pag-container{
    float: right;
    margin-top: 10px;
}
</style>