在vue中点击弹框给弹框中的表格绑值

news2025/2/25 3:22:12
 场景描述:如下图所示,我们需要点击 ‘账单生成’ 按钮,然后里边要展示一个下图这样的表格。
最主要的是如何展示表格中的内容,一起看看吧!


<template>
    <!-- 水费 欠费-->
    <el-dialog title="水费欠费账单生成" :visible.sync="dialogVisiblePrint">
      <div id="printTest">
        <div style="text-align: center;">
          <h3>水费付款通知单</h3>
        </div>
        <div style="margin: 22px;">
          <el-descriptions title="" :column="2" style="font-size: 15px;">
            <el-descriptions-item label="业主/住户名称">{{waterInfo.lodgerName}}</el-descriptions-item>
            <el-descriptions-item label="通知书编号Invoice No"></el-descriptions-item>
            <el-descriptions-item label="客户单元Unit No">
              {{getLocationName(waterInfo.locationId)}}/
              {{getTowerName(waterInfo.towerId)}}/
              {{getFloorName(waterInfo.floorId)}}层
            </el-descriptions-item>
            <el-descriptions-item label="发单日期Lssue Date">{{waterInfo.yearToMonth}}</el-descriptions-item>
            <el-descriptions-item label="计费面积Charge Area(m²)"></el-descriptions-item>
            <el-descriptions-item label="收款终止日期Due Date">{{waterInfo.yearToMonth}}</el-descriptions-item>
          </el-descriptions>
        </div>
        <div style="margin: 18px;">
          <el-table :data="waterData" border>
            <el-table-column prop="feeName" label="收费项目" align="center"></el-table-column>
            <el-table-column prop="yearToMonth" label="缴费期间" align="center"></el-table-column>
            <el-table-column prop="unitPrice" label="单价(元)" align="center"></el-table-column>
            <el-table-column prop="meterReading" label="上期读数" align="center"></el-table-column>
            <el-table-column prop="readingAccuracy" label="本期读数" align="center"></el-table-column>
            <el-table-column prop="totalMoney" label="本期应交金额" width="120px" align="center"></el-table-column>
          </el-table>
        </div>
        <div style="margin: 22px;">
          <h4>物业服务中心盖章(Seal of Property Service Center)</h4>
        </div>
      </div>
      <div style="text-align: center;">
        <el-button type="success" v-print="'#printTest'">打印</el-button>
        <el-button type="primary" @click="dialogVisiblePrint = false">取消</el-button>
      </div>
    </el-dialog>
  </div>
</template>

<script>
  import API from "@/components/common/newApi";
  export default {
    data() {
      return {
        /* data:[]后端获取到的数据列表。option表格配置项.form 表单*/
        form: {},
        query: {},
        areaList: [], //所属区域
        towerList: [], //所属楼栋
        floorList: [], //所属楼层
        dialogVisiblePrint: false,
        waterInfo: {}, //水费对象
        waterData: [],
      }
    },
    mounted() {
      //获取所属区域
      this.getLocationList()
      //获取所属楼层
      this.getFloorList()
      //获取所属楼栋
      this.getTowerList()
    },
    methods: {
      //水费欠费账单生成
      async printOpen(row) {
        this.dialogVisiblePrint = true
        let data = {
          waterBillId: row.waterBillId,
          type: "1",
        }
        //在接口访问之前给 水费 赋值为空
        this.waterData = []
        await API.arrearsNoteInfo(data).then(res => {
          if (res.data.code == 0) {
            //水费绑值
            this.waterInfo = res.data.data.ctyWaterBillInfo
            //水费欠费表格数据
            let waterList = res.data.data.ctyWaterBillInfo;
            this.waterData.push(waterList)
          }
        });
      },

      // 获取所属区域
      getLocationList() {
        API.getAreaList().then((res) => {
          if (res.data.code == 0) {
            this.areaList = res.data.data;
          }
        });
      },
      //根据区域id获取对应的中文
      getLocationName(id) {
        let name
        this.areaList.map(item => {
          if (item.id == id) {
            name = item.locationName
          }
        })
        return name
      },
      // 获取所属楼栋
      getTowerList(locationId = "") {
        let params = {
          data: {
            locationId: locationId,
          },
          pageNum: 1,
          pageSize: 1000,
        };
        API.getTowerList(params).then((res) => {
          if (res.data.code == 0) {
            this.towerList = res.data.data.list;
          }
        });
      },
      //根据楼栋id获取对应的中文
      getTowerName(towerId) {
        let towerName
        this.towerList.map(item => {
          if (item.towerId == towerId) {
            towerName = item.name
          }
        })
        return towerName
      },
      // 获取所属楼层
      getFloorList(towerId = "") {
        let params = {
          data: {
            towerId: towerId,
          },
          pageNum: 1,
          pageSize: 1000,
        };
        API.getFloorList(params).then((res) => {
          if (res.data.code == 0) {
            this.floorList = res.data.data.list;
          }
        });
      },
      //根据楼层id获取对应的中文
      getFloorName(floorId) {
        let floorName
        this.floorList.map(item => {
          if (item.floorId == floorId) {
            floorName = item.floorNo
          }
        })
        return floorName
      },

    }
  }
</script>

<style>
</style>

el-descriptions标签 (描述列表):列表形式展示多个字段。

column: 一行 DescriptionsItem 的数量 (即:一行多少列),number类型

  重点代码

 


 效果图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/743462.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

静态图片转3D动态GIF/视频

Leiapix是一项令人印象深刻的技术&#xff0c;它可以让静态的图片动起来&#xff0c;为观众提供沉浸式和交互式的图像体验。这项创新的技术使用了Leia Inc.的自适应光栅屏幕技术&#xff0c;通过利用人眼的视差和立体视觉效应&#xff0c;将图像中的元素以动态的方式呈现出来&a…

《第一次线下面试总结》

《第一次线下面试总结》 面试时间&#xff1a;2023/7/11 上午10点 面试总时长20分钟。 实习薪资&#xff1a;2.3k…后期看表现&#xff0c;可根据实际情况那啥 。估计是看锤子… 一、HR面 自我介绍你哪里的、目前住哪里等基本信息。你偏向前端还是后端&#xff1f;说说你的项目…

电路分析基础学习(上)第7章

李瀚荪版电分第二版 目录 二阶电路的定义 电路中的等幅振荡与阻尼振荡 RLC电路的零输入响应 ----------------------------------------------------------------------------------------------------------------------------- 二阶电路的定义 二阶电路是指由电容、电感…

[QT编程系列-3]:C++图形用户界面编程,QT框架快速入门培训 - 2- QT程序的运行框架:HelloWorld、常见控件、对象树原理

目录 2. QT程序的运行框架 2.1 Hello World程序框架 2.2 QT Designer初识 2.3 用QT Designer设计用户登录界 2. QT程序的运行框架 2.1 Hello World程序框架 上述示例代码中&#xff0c;首先根据应用程序的需求使用 QCoreApplication 或 QApplication 定义 app 对象。如果你…

[综述] Generative AI meets 3D: A Survey on Text-to-3D in AIGC Era

论文&#xff5c; 改文章是23年5月27日挂在arxiv上&#xff0c;本文重点关注4.1节Text Guided 3D Avatar Generation、4.4节Text Guided 3D Shape Transformation和第5章Discussion Text Guided 3D Avatar Generation DreamAvatar DreamAvatar: Text-and-Shape Guided 3D Hu…

k8s中网络通讯简单介绍

1 前言 Kubernetes的网络模型假定了所有的pod都在一个可以直接连通的扁平的网络空间中&#xff0c;这在GCE&#xff08;Google Compute Engine&#xff09;里面是现成的网络模型&#xff0c;Kubernetes假设这定这个网络已经存在。但是在私有云里搭建Kubernetes集群&#xff0c;…

CHI read trans flow

Read transactions with DMT and without snoops 对于不产生snoop的read trans&#xff0c;建议使用DMT功能&#xff0c;如下图所示&#xff1a; 注意点&#xff1a; a. SNF并不需要给HNF回响应&#xff0c;因为RN发送的compack可以释放HNF处记录的请求; Read transaction wi…

《Redis 核心技术与实战》课程学习笔记(七)

切片集群&#xff1a;数据增多了&#xff0c;是该加内存还是加实例&#xff1f; 切片集群&#xff0c;也叫分片集群&#xff0c;就是指启动多个 Redis 实例组成一个集群&#xff0c;然后按照一定的规则&#xff0c;把收到的数据划分成多份&#xff0c;每一份用一个实例来保存。…

使用Dcoker Registry搭建私有镜像仓库

Dcoker Registry 和Harbor有什么相似和区别&#xff1f;各自有什么优劣&#xff0c;请详细介绍 Docker Registry和Harbor都是容器镜像仓库管理系统&#xff0c;用于存储、管理和分发Docker镜像。它们有一些相似之处&#xff0c;但也存在一些区别。下面是对它们的相似之处和区别…

idea导入springboot项目,下载的pom.xml文件是html格式。

一、可以看到我的pom.xml的parent标签 <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0…

使用cuda报错的一次记录(CUDA error: out of memory)

原因&#xff1a; 由于batch_size设置过大导致的&#xff01;&#xff01;&#xff01;

机器学习技术(四)——特征工程与模型评估

机器学习技术&#xff08;四&#xff09;——特征工程与模型评估(1️⃣) 文章目录 机器学习技术&#xff08;四&#xff09;——特征工程与模型评估(:one:)一、特征工程1、标准化2、特征缩放3、缩放有离群值的数据4、非线性转换5、样本归一化6、特征二值化7、标称特征编码(one-…

亚马逊云科技推出的一项完全托管的生成式AI服务——Amazon Bedrock

在全球生成式AI浪潮兴起之际&#xff0c;以“智联世界&#xff0c;生成未来”为主题的2023世界人工智能大会&#xff08;WAIC 2023&#xff09;于7月6日在上海世博中心拉开帷幕。大会首日&#xff0c;亚马逊云科技携生成式AI产品Amazon Bedrock亮相大会现场&#xff0c;亚马逊云…

C语言 指针进阶(二)

目录 一.函数指针 1.1函数指针的认识 1.2函数指针的使用 二、函数指针数组 1.1函数指针的认识 1.2 函数指针数组实现计算器 三、指向函数指针数组的指针 四、回调函数 通过使用qsort函数加强对回调函数的理解 qsort排序整形 qosrt排序结构体 用冒泡排序的思想&…

Java设计模式之结构型-组合模式(UML类图+案例分析)

目录 一、基础概念 二、UML类图 三、角色分析 四、案例分析 1、基本实现 2、菜单遍历 五、总结 一、基础概念 组合模式&#xff08;Composite Pattern&#xff09;又叫部分-整体模式&#xff0c;它通过将对象组合成树形结构来表示“整体-部分”的层次关系&#xff0c…

《网络安全标准实践指南》(72页)

导读 摘要&#xff1a;为指导网络数据安全风险评估工作&#xff0c;发现数据安全隐患&#xff0c;防范数据安全风险&#xff0c;依据《中华人民共和国网络安全法》《中华人民共和国数据安全法》《中华人民共和国个人信息保护法》等法律法规&#xff0c;参照数据安全相关国家标…

[MySQL]MySQL表的操作

[MySQL]表的操作 文章目录 [MySQL]表的操作1. 创建表2. 创建表的示例3. 查看表4. 修改表5. 删除表6. 关于表操作 1. 创建表 语法&#xff1a; CREATE TABLE [IF NOT EXISTS] table_name(field1 datatype1 [COMMENT 注释信息],field2 datatype2 [COMMENT 注释信息],field3 dat…

使用VSC从零开始写一个Vue前端

使用Visual Studio Code&#xff08;VSC&#xff09;进行Vue开发非常方便&#xff0c;下面是一些基本步骤&#xff1a; 安装Node.js&#xff1a;Vue.js是基于Node.js的&#xff0c;所以首先需要安装Node.js。你可以从Node.js官方网站&#xff08;https://nodejs.org&#xff09…

Acwing.859 Kruskal算法求最小生成树(Kruskal算法)

题目 给定一个n个点m条边的无向图&#xff0c;图中可能存在重边和自环&#xff0c;边权可能为负数。 求最小生成树的树边权重之和&#xff0c;如果最小生成树不存在则输出impossible。 给定一张边带权的无向图G(V,E)&#xff0c;其中V表示图中点的集合&#xff0c;E表示图中边…

Linux - CentOS 二进制安装 MySQL 8.0.31(非常实用)

一、下载 mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz 下载地址&#xff1a;MySQL :: Download MySQL Community Server (Archived Versions) 具体如下图所示&#xff1a; 二、将 mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz 放入到服务器的 /usr/local &#xff08;路径可…