| | |
| | | <script setup> |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | |
| | | <div class="app-container"> |
| | | <div style="display: flex;justify-content: space-between;"> |
| | | <el-form :inline="true" style="display: flex;align-items: center;flex-wrap: wrap;" > |
| | | <el-form-item> |
| | | <el-date-picker |
| | | v-model="data.dateRange" |
| | | value-format="YYYY-MM-DD" |
| | | type="daterange" |
| | | range-separator="-" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | style="width: 300px" |
| | | ></el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="状态:" > |
| | | <el-select |
| | | v-model="data.queryParams.filter.pushType" |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | v-for="item in data.statusList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item > |
| | | <el-button |
| | | type="primary" |
| | | @click="getList" |
| | | >查询</el-button> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | @click="reset" |
| | | >重置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <!-- 表格数据 --> |
| | | <el-table v-loading="loading" :data="dataList" :border="true"> |
| | | <el-table-column label="序号" type="index" align="center" width="80" /> |
| | | <el-table-column label="企业名称" prop="companyName" align="center" /> |
| | | <el-table-column label="市(地、州)" prop="type" align="center" width="120" > |
| | | <template #default="scope"> |
| | | <span>{{scope.row.provinceName}}-{{scope.row.cityName}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="区县" prop="areaName" align="center" /> |
| | | <el-table-column label="风险等级" prop="riskLevel" align="center" > |
| | | <template #default="scope"> |
| | | <span>{{scope.row.riskLevel == 1 ? '重大' :scope.row.riskLevel == 2?'较大':scope.row.riskLevel == 3?'一般':scope.row.riskLevel == 4 ? '低': ''}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="推送状态" prop="pushType" align="center" > |
| | | <template #default="scope"> |
| | | <span>{{scope.row.pushType == 0 ? '未下发' :scope.row.pushType == 1 ? '已下发' : '已反馈' }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="推送内容" prop="pushContent" align="center" /> |
| | | <el-table-column label="反馈意见" prop="feedback" align="center" > |
| | | <template #default="scope"> |
| | | <span v-if="scope.row.feedback">{{scope.row.feedback}}</span> |
| | | <span v-else>--</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="创建时间" prop="createDate" align="center" width="120" /> |
| | | <el-table-column label="创建人" prop="createBy" align="center" /> |
| | | <el-table-column label="更新时间" prop="updateDate" align="center" width="120" /> |
| | | <el-table-column label="更新者" prop="updateBy" align="center" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="150" > |
| | | <template #default="scope"> |
| | | <el-button link type="primary" v-if="scope.row.pushType != 2" @click="addProject('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.pageIndex" |
| | | v-model:limit="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <feedback ref="dialogRef" @getList="getList"></feedback> |
| | | </div> |
| | | </template> |
| | | |
| | | <style scoped lang="scss"> |
| | | <script setup> |
| | | import {getCurrentInstance, onMounted, onUnmounted, reactive, ref, toRefs} from "vue"; |
| | | import {ElMessage, ElMessageBox} from "element-plus"; |
| | | import feedback from './components/feedbackDialog.vue' |
| | | import {delTemplate, getTemplate} from "@/api/signAgreement/template"; |
| | | import {delWarning, getWarning} from "@/api/company/warning"; |
| | | import Cookies from "js-cookie"; |
| | | const { proxy } = getCurrentInstance(); |
| | | const loading = ref(false); |
| | | const dialogRef = ref(); |
| | | const createSignRef = ref(); |
| | | const data = reactive({ |
| | | queryParams: { |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | filter: { |
| | | companyName: '', |
| | | companyCode: '', |
| | | createDateStart: '', |
| | | createDateEnd: '', |
| | | pushType: null, |
| | | } |
| | | }, |
| | | total: 0, |
| | | dataList: [], |
| | | dateRange: [], |
| | | statusList: [ |
| | | { |
| | | id: 1, |
| | | name: '已下发' |
| | | }, |
| | | { |
| | | id: 2, |
| | | name: '已反馈' |
| | | }, |
| | | |
| | | </style> |
| | | ], |
| | | }); |
| | | |
| | | const { queryParams, total, dataList } = toRefs(data); |
| | | const classHourRef = ref(); |
| | | onMounted(()=>{ |
| | | const info = JSON.parse(Cookies.get('userInfo')) |
| | | data.queryParams.filter.companyCode = info.companynumber |
| | | getList() |
| | | }) |
| | | |
| | | onUnmounted(()=>{ |
| | | |
| | | }) |
| | | |
| | | const addProject = (type,value) => { |
| | | dialogRef.value.openDialog(type,value) |
| | | } |
| | | const getList = async () => { |
| | | loading.value = true |
| | | data.queryParams.filter.alarmStartTime = data.dateRange[0] |
| | | data.queryParams.filter.alarmEndTime = data.dateRange[1] |
| | | const res = await getWarning(data.queryParams) |
| | | if(res.code == 200){ |
| | | data.dataList = res.result.records |
| | | data.total = res.result.total |
| | | }else{ |
| | | ElMessage.warning(res.message) |
| | | } |
| | | loading.value = false |
| | | } |
| | | |
| | | /** 重置新增的表单以及其他数据 */ |
| | | function reset() { |
| | | data.queryParams = { |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | filter: { |
| | | companyName: '', |
| | | companyCode: '', |
| | | createDateStart: '', |
| | | createDateEnd: '', |
| | | pushType: null, |
| | | } |
| | | } |
| | | data.dateRange = [] |
| | | getList() |
| | | } |
| | | const handleDelete = (val) => { |
| | | ElMessageBox.confirm( |
| | | '确定删除此条数据?', |
| | | '提示', |
| | | { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning', |
| | | }) |
| | | .then( async() => { |
| | | const param = { |
| | | id:val.id |
| | | } |
| | | const res = await delWarning(param) |
| | | if(res.code == 200){ |
| | | ElMessage.success('数据删除成功') |
| | | await getList() |
| | | }else{ |
| | | ElMessage.warning(res.message) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | const getRowKeys = (row) => { |
| | | return row.name |
| | | } |
| | | </script> |