<!-- Description: 现场管理列表页 Author: 李亚光 Date: 2023-04-23 --> <script lang="ts" setup name="ListLog"> import { reactive, ref } from 'vue' import { ElMessage, ElMessageBox } from 'element-plus' const $router = useRouter() const { proxy } = getCurrentInstance() as any const listQuery = reactive({ beginTime: '', endTime: '', // logType: '业务日志', offset: 1, limit: 20, }) const columns = ref([ { text: '作业名称', value: '1', align: 'center', // width: 170, }, { text: '所属道路', value: '2', align: 'center', // width: 100, }, { text: '作业简介', value: '3', align: 'center', }, { text: '负责人', value: '4', align: 'center', }, { text: '负责人联系方式', value: '5', align: 'center', }, { text: '注册时间', value: '6', align: 'center', }, { text: '当前状态', value: '7', align: 'center', }, ]) const list = ref([]) const total = ref(20) const logTypeList = ref(null) const listLoading = ref(true) const dialogFormVisible = ref(false) const dialogStatus = ref('') // 获取日志数据 const fetchData = () => { listLoading.value = true // getBizLogList(listQuery).then((response) => { // list.value = response.data.rows // total.value = parseInt(response.data.total) // listLoading.value = false // }) list.value = [ { 1:'作业一', 2:'永定路', 3:'xxxxxx', 4:'张三', 5:'1370000000', 6:'2020-02-02', 7:'进行中' }, { 1:'作业二', 2:'长安路', 3:'xxxxx', 4:'李四', 5:'1572000000', 6:'2023-04-01', 7:'已完成' }, { 1:'作业三', 2:'学院路', 3:'xxxx', 4:'王五', 5:'183123123123', 6:'2021-01-01', 7:'未开始' }, ] total.value = list.value.length listLoading.value = false } fetchData() // 打开详情对话框 // const detail = (row: any) => { // getBizLogDetail(row.id).then((res) => { // if (res.code === 200) { // ElMessageBox.alert(res.data, '详情', { // confirmButtonText: '确定', // }) // } // }) // } // 清空日志 const cleanAll = () => { ElMessageBox.confirm('确定要清空全部日志吗?', '确认操作', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning', }).then(() => { // delLog().then((response) => { // if (response.code === 200) { // ElMessage({ // message: '删除成功', // type: 'success', // }) // list.value = [] // total.value = 0 // // this.fetchData() // } // }) }) } // 查询数据 const search = () => { fetchData() } // 获取日志类型 // const fetchLogType = () => { // getLogType().then((response) => { // logTypeList.value = response.data // }) // } // 页数发生变化后的操作,可能是页码变化,可能是每页容量变化,此函数必写 const changePage = (val: { size: number; page: number }) => { if (val && val.size) { listQuery.limit = val.size } if (val && val.page) { listQuery.offset = val.page } fetchData() } // 表格被选中的行 const selectList = ref<any[]>([]) // 表格多选 const multiSelect = (row: any[]) => { selectList.value = row } // 新增、 const add = () => { $router.push({ path: '/scene/sceneedit' }) } // 编辑 const edit = (row: any) => { // editRef.value.initDialog('update', row) } // 删除 const del = () => { if (selectList.value.length) { ElMessageBox.confirm('是否删除所选的数据?', '提示', { confirmButtonText: '是', cancelButtonText: '否', type: 'info', }).then((res) => { // 点击确认 const ids = selectList.value.map(item => item.id) // delDevice(ids).then((res) => { // if (res.code === 200) { // selectList.value = [] // fetchData() // } // }) }).catch(() => { // 点击取消 selectList.value = [] }) } else { ElMessage.warning('请先选择需要删除的数据') } } </script> <template> <div class="list-log"> <!-- 布局 --> <app-container> <!-- 筛选条件 --> <search-area @search="search"> <search-item> <el-input v-model.trim="listQuery.beginTime" placeholder="作业名称" clearable /> </search-item> <search-item> <el-select v-model="listQuery.beginTime" clearable placeholder="所属街道"> <el-option v-for="item in []" :key="item.id" :label="item.name" :value="item.value"></el-option> </el-select> </search-item> <search-item> <el-input v-model.trim="listQuery.beginTime" placeholder="责任人" clearable /> </search-item> <search-item> <el-date-picker v-model="listQuery.beginTime" type="datetime" value-format="YYYY/MM/DD HH:mm:ss" placeholder="注册开始时间" /> </search-item> <search-item> <el-date-picker v-model="listQuery.endTime" type="datetime" value-format="YYYY/MM/DD HH:mm:ss" placeholder="注册结束时间" /> </search-item> <search-item> <el-select v-model="listQuery.beginTime" clearable placeholder="当前状态"> <el-option v-for="item in []" :key="item.id" :label="item.name" :value="item.value"></el-option> </el-select> </search-item> <template #btns> <el-button class="search-btn" type="primary" @click="add" > 新增 </el-button> <el-button class="search-btn" type="info" @click="del" > 删除 </el-button> </template> </search-area> <table-container> <!-- 查询结果Table显示 --> <normal-table :data="list" :total="total" :columns="columns" :query="listQuery" :is-showmulti-select="true" :is-multi="true" :list-loading="listLoading" @change="changePage" @multi-select="multiSelect" > <template #columns> <el-table-column label="编辑" width="70" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="detail(scope.row)"> 编辑 </el-button> </template> </el-table-column> <el-table-column label="操作" width="70" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="detail(scope.row)"> ㅤ详情ㅤㅤ </el-button> </template> </el-table-column> <el-table-column label="作业报告" width="90" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="detail(scope.row)"> 作业报告 </el-button> </template> </el-table-column> </template> </normal-table> </table-container> </app-container> </div> </template>