123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- <script setup lang="ts">
- import { ref, reactive, computed } from "vue";
- import { ElMessageBox, ElMessage, ElTable } from "element-plus";
- import { Search } from "@element-plus/icons-vue";
- import { textSpanOverlapsWith } from "typescript";
- import { getStateData, getStateType } from "@/config/tag";
- const dialogVisibleAdd = ref(false);
- const handleClose = () => {
- ElMessageBox.confirm("确认关闭弹窗吗?")
- .then(() => {
- dialogVisibleAdd.value = !dialogVisibleAdd.value;
- ElMessage({
- message: "已关闭"
- });
- })
- .catch(() => {
- // catch error
- });
- };
- const tableData = [
- {
- date: "2016-05-04",
- name: "Aleyna Kutzner",
- address: "Lohrbergstr",
- index: 1
- },
- {
- date: "2016-05-03",
- name: "Helen Jacobi",
- address: "760 A St",
- index: 2
- },
- {
- date: "2016-05-02",
- name: "Brandon Deckert",
- address: "Arnold-O",
- index: 0
- },
- {
- date: "2016-05-01",
- name: "Margie Smith",
- address: "23618 ",
- index: 0
- }
- ];
- // 添加部门保存
- const saveDepartment = () => {
- ElMessageBox.confirm("不保存,更新的信息将会丢失", "需要保存吗?", {
- type: "warning"
- })
- .then(() => {
- dialogVisibleAdd.value = false;
- ElMessage({
- message: "已保存",
- type: "success"
- });
- })
- .catch(() => {
- // catch error
- });
- };
- const open = () => {
- dialogVisibleAdd.value = true;
- };
- // 选中
- const selectedNums = ref(0);
- const handleSelectionChange = selectedRows => {
- // this.selectedRows = selectedRows;
- selectedNums.value = selectedRows.length;
- console.log("选中的行:", selectedRows);
- };
- defineExpose({
- open
- });
- </script>
- <template>
- <div>
- <el-dialog
- v-model="dialogVisibleAdd"
- title="添加成员"
- width="600"
- :before-close="handleClose"
- >
- <div class="w-full flex justify-between items-center">
- <div><el-text>指标分类</el-text></div>
- <div><el-input placeholder="请输入" :prefix-icon="Search" /></div>
- </div>
- <el-table
- :data="tableData"
- style="width: 100%"
- @selection-change="handleSelectionChange"
- >
- <el-table-column type="selection" width="55" />
- <el-table-column label="指标名称">
- <template #default="scope">{{ scope.row.date }}</template>
- </el-table-column>
- <el-table-column property="name" label="指标分类" width="100" />
- <el-table-column
- property="address"
- label="状态"
- width="100"
- show-overflow-tooltip
- >
- <template #default="scope">
- <el-tag :type="getStateType(scope.row.index)">
- {{ getStateData(scope.row.index) }}
- </el-tag>
- </template>
- </el-table-column>
- <el-table-column property="address" label="数据来源" width="120" />
- </el-table>
- <div class="w-full flex justify-evenly items-center">
- <div class="mt-5"><el-text>共111项数据</el-text></div>
- <div class="ml-10">
- <el-pagination
- size="small"
- background
- layout="prev, pager, next"
- :total="50"
- class="mt-4"
- />
- </div>
- </div>
- <template #footer>
- <div class="dialog-footer w-full flex justify-between mt-4">
- <div>
- <el-text>已选择</el-text>
- <el-text type="primary">
- {{ selectedNums }}
- </el-text>
- <el-text>项</el-text>
- </div>
- <div>
- <el-button @click="handleClose">取消</el-button>
- <el-button type="primary" @click="saveDepartment"> 确认 </el-button>
- </div>
- </div>
- </template>
- </el-dialog>
- </div>
- </template>
|