su
su1124
2024-04-26 00212ed8e808fc7b76c04389224e65f27f074fb2
src/views/hosp/about/index.vue
@@ -1,45 +1,59 @@
<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
      <el-form-item label="交款员" prop="tollCollectorName">
        <el-select v-model="queryParams.tollCollectorName" filterable style="width: 200px" placeholder="请选择交款员" clearable @clear="getCompanyList" @change="idFn">
          <el-option v-for="dict in CompanyList" :key="dict.userId" :label="dict.nickName" :value="dict.userId"/>
        </el-select>
      </el-form-item>
      <el-form-item label="交账时间" prop="tollCollectorName">
        <el-date-picker v-model="value1" type="datetimerange" :picker-options="pickerOptions" value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="起止日期" end-placeholder="终止日期" :default-time="['12:00:00']">
        </el-date-picker>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" >搜索</el-button>
      </el-form-item>
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
      <el-row>
        <el-col :span="6">
          <el-form-item label="交款员" prop="tollCollectorName" style="display: flex;">
            <el-select v-model="queryParams.tollCollectorName" filterable placeholder="请选择交款员" clearable
              @clear="getCompanyList" @change="idFn">
              <el-option v-for="dict in CompanyList" :key="dict.userId" :label="dict.nickName" :value="dict.userId" />
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="14">
          <el-form-item label="交账时间" prop="tollCollectorName" style="display: flex;">
            <el-date-picker v-model="value1" type="datetimerange" :picker-options="pickerOptions"
              value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="起止日期" end-placeholder="终止日期"
              :default-time="['12:00:00']">
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col :span="3">
          <el-form-item>
            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button icon="el-icon-edit" size="mini" @click="handleDelete" v-hasPermi="['hosp:water:edit']">撤销</el-button>
        <el-button icon="el-icon-edit" size="mini" @click="handleDelete">撤销</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button icon="el-icon-edit" size="mini" @click="handledocument">补打单据</el-button>
      </el-col>
    </el-row>
    <el-table :row-class-name="tableRowClassName" style="width: 80%" :data="tableData" @selection-change="handleSelect" ref="multipleTable" border>
    <el-table :row-class-name="tableRowClassName" style="width: 80%" :data="tableData" @selection-change="handleSelect"
      ref="multipleTable" border>
      <el-table-column type="selection" width="55"> </el-table-column>
      <el-table-column label="交款员" align="center" prop="tollCollector" :show-overflow-tooltip="true"/>
      <el-table-column label="收费金额" align="center" prop="amountReceived" :show-overflow-tooltip="true"/>
      <el-table-column label="退费金额" align="center" prop="refundAmount" :show-overflow-tooltip="true"/>
      <el-table-column label="应交款" align="center" prop="payable" :show-overflow-tooltip="true"/>
      <el-table-column label="交账时间" align="center" prop="createTime" :show-overflow-tooltip="true"/>
      <el-table-column label="起止日期" align="center" prop="accountBeginTime" :show-overflow-tooltip="true"/>
      <el-table-column label="终止日期" align="center" prop="accountEndTime" :show-overflow-tooltip="true"/>
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button size="mini" type="text" icon="el-icon-s-order" title="详情" @click="handleUpdate(scope.row)" v-hasPermi="['hosp:water:edit']"></el-button>
        </template>
      </el-table-column>
      <el-table-column label="交款员" align="center" prop="tollCollector" :show-overflow-tooltip="true" />
      <el-table-column label="收费金额" align="center" prop="amountReceived" :show-overflow-tooltip="true" />
      <el-table-column label="退费金额" align="center" prop="refundAmount" :show-overflow-tooltip="true" />
      <el-table-column label="应交款" align="center" prop="payable" :show-overflow-tooltip="true" />
      <el-table-column label="交账时间" align="center" prop="createTime" :show-overflow-tooltip="true" />
      <el-table-column label="起止时间" align="center" prop="accountBeginTime" :show-overflow-tooltip="true" />
      <el-table-column label="截止时间" align="center" prop="accountEndTime" :show-overflow-tooltip="true" />
    </el-table>
    <div class="pag">
      <div class="pag1">
        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList"/>
        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
          @pagination="getList" />
      </div>
    </div>
@@ -54,7 +68,7 @@
</template>
  
<script>
import { getcolllist, getdatalist, delById } from "@/api/hosp/water";
import { getcolllist, getdatalist, delById, getNewDate } from "@/api/hosp/water";
import { getInfo } from "@/api/login";
import moment from "moment";
@@ -65,7 +79,7 @@
      pickerOptions: {
        shortcuts: [
          {
            text: "最近一周",
            text: "近一周",
            onClick(picker) {
              const end = new Date();
              const start = new Date();
@@ -74,7 +88,7 @@
            },
          },
          {
            text: "最近一个月",
            text: "近一月",
            onClick(picker) {
              const end = new Date();
              const start = new Date();
@@ -83,7 +97,7 @@
            },
          },
          {
            text: "最近三个月",
            text: "近三月",
            onClick(picker) {
              const end = new Date();
              const start = new Date();
@@ -118,6 +132,7 @@
      showSearch: true,
      // 总条数
      total: 0,
      item: "",
      userId: "",
      // 弹出层标题
      title: "",
@@ -145,7 +160,7 @@
  created() {
    this.getList();
    this.getCompanyList();
  },
  methods: {
    /** 查询体检流水列表 */
@@ -154,42 +169,49 @@
        this.userId = response.user.userId;
        this.queryParams.tollCollectorName = response.user.nickName;
      });
      let data = {
        tollCollectorId: this.tollCollectorId,
        accountBeginTime: this.value1[0],
        accountEndTime: new Date(new Date().getTime() + 8 * 3600 * 1000)
          .toJSON()
          .substr(0, 19)
          .replace("T", " "),
        pageNum: this.queryParams.pageNum,
        pageSize: this.queryParams.pageSize,
      };
      getcolllist(data).then((res) => {
        this.tableData = res.data.list;
        if(this.tableData.length === 0){
          this.$message({
          message: '请搜索要撤销数据的时间段哦~',
          type: 'warning'
        });
        }
        if (res.code === 200) {
          if (this.tableData.length != 0) {
            this.$nextTick(() => {
              this.$refs.multipleTable.toggleRowSelection(
                this.tableData[0],
                true
              );
            });
          } else {
            this.$refs.multipleTable.clearSelection();
          }
        }
        // this.tableData.forEach(item => {
        //   this.allList = item.tjTollCollectorDetailList
        // })
        this.total = res.data.total;
      getNewDate().then((response) => {
        if (response.code === 200) {
          this.value1 = [
            moment(response.data).format("YYYY-MM-DD 00:00:00"),
            moment(response.data).format("YYYY-MM-DD HH:mm:ss")
          ];
        }
      });
      // let data = {
      //   tollCollectorId: this.tollCollectorId,
      //   accountBeginTime: this.value1[0],
      //   accountEndTime: this.value1[1],
      //   pageNum: this.queryParams.pageNum,
      //   pageSize: this.queryParams.pageSize,
      // };
      // getcolllist(data).then((res) => {
      //   this.tableData = res.data.list;
      //   if (this.tableData.length === 0) {
      //     this.$message({
      //       message: '请搜索要撤销数据的时间段哦~',
      //       type: 'warning'
      //     });
      //   }
      //   if (res.code === 200) {
      //     if (this.tableData.length != 0) {
      //       this.$nextTick(() => {
      //         this.$refs.multipleTable.toggleRowSelection(
      //           this.tableData[0],
      //           true
      //         );
      //       });
      //     } else {
      //       this.$refs.multipleTable.clearSelection();
      //     }
      //   }
      //   // this.tableData.forEach(item => {
      //   //   this.allList = item.tjTollCollectorDetailList
      //   // })
      //   this.total = res.data.total;
      // });
    },
    // 选中下拉框Id
    idFn(value) {
@@ -209,15 +231,13 @@
      let data = {
        tollCollectorId: this.tollCollectorId,
        accountBeginTime: this.value1[0],
        accountEndTime: new Date(new Date().getTime() + 8 * 3600 * 1000)
          .toJSON()
          .substr(0, 19)
          .replace("T", " "),
        accountEndTime: this.value1[1],
        pageNum: this.queryParams.pageNum,
        pageSize: this.queryParams.pageSize,
      };
      getcolllist(data).then((res) => {
        this.tableData = res.data.list;
        this.allList = []
        if (this.tableData.length != 0) {
          this.$nextTick(() => {
            this.$refs.multipleTable.toggleRowSelection(
@@ -238,7 +258,7 @@
        this.total = res.data.total;
      });
    },
    handleUpdate() {},
    handleUpdate() { },
    // 表格单选
    handleSelect(selection, val) {
@@ -253,6 +273,12 @@
        let del_row = selection.shift();
        this.$refs.multipleTable.toggleRowSelection(del_row, false);
      }
    },
    handledocument() {
      const viewNum = "809743614817824768";
      let accountId = this.selectList[0].accountId
      const params = { viewNum, accountId };
      this.$tab.openPage("结账单", "/report/settlement", params);
    },
    tableRowClassName({ row, rowIndex }) {
      for (let i = 0; i < this.selectList.length; i++) {
@@ -273,16 +299,22 @@
          type: "success",
        });
        this.getList();
        this.handleQuery()
      });
    },
  },
};
</script>
<style>
.el-table__header-wrapper .el-checkbox {
  display: none;
}
.el-date-editor--datetimerange.el-input, .el-date-editor--datetimerange.el-input__inner {
    width: 100%;
}
.pag {
  width: 100%;
  display: flex;
@@ -292,10 +324,13 @@
.pag1 {
  width: 30%;
}
.el-table__body tr.current-row > td {
.el-table__body tr.current-row>td {
  background-color: #f19944 !important;
  /* color: #f19944; */ /* 设置文字颜色,可以选择不设置 */
  /* color: #f19944; */
  /* 设置文字颜色,可以选择不设置 */
}
.el-table .warning-row {
  background: #e5f3ff !important;
}