bus_user.vue 4.01 KB
<template>
  <div class="sys-container">
    <form ref="form" label-width="80px">
      <el-row :gutter="10">
        <el-col :span="3.5">
          <div class="sys-form-item bg-purple">
            <div class="sys-form-item-text">用户编码:</div>
            <div class="sys-form-item-input">
              <el-input v-model="paramsQuery.queryConfig.UserCode" placeholder="请输入用户编码" />
            </div>
          </div>
        </el-col>
        <el-col :span="3.5">
          <div class="sys-form-item bg-purple">
            <div class="sys-form-item-text">用户名称:</div>
            <div class="sys-form-item-input">
              <el-input v-model="paramsQuery.queryConfig.UserName" placeholder="请输入用户名称" />
            </div>
          </div>
        </el-col>

        <el-col :span="4">
          <div class="sys-form-item bg-purple">
            <el-button icon="el-icon-search" @click="btnAction(1)" type="primary">查询</el-button>
            <el-button icon="el-icon-refresh-right" @click="btnAction(0)" type="primary">重置</el-button>
          </div>
        </el-col>
      </el-row>
    </form>
    <!-- table -->
    <div class="sys-table-border">
      <el-table :data="tableData" style="width: 100%" height="700"
        :header-cell-style="{ background: '#d9ebfe', color: '#000000' }">
        <el-table-column type="selection" align="center" width="55"></el-table-column>
        <el-table-column prop="id" label="id" v-if="false"></el-table-column>
        <el-table-column prop="userCode" label="用户编码"> </el-table-column>
        <el-table-column prop="userName" label="用户名称"> </el-table-column>
        <el-table-column prop="department" label="部门"> </el-table-column>
        <el-table-column prop="address" label="地址"> </el-table-column>
        <el-table-column prop="phone" label="电话"> </el-table-column>
        <el-table-column prop="remark" label="备注"> </el-table-column>
        <el-table-column prop="errorCode" label="备注"> </el-table-column>

        <el-table-column prop="created" label="创建时间" width="180"> </el-table-column>
        <el-table-column prop="createdBy" label="创建人"> </el-table-column>
      </el-table>

      <div class="sys-pagination-container">
        <el-pagination background layout="prev, pager, next" :current-page="paramsQuery.PageNumber"
          :page-size="paramsQuery.PerPageCount" :total="paramsQuery.PageTotal" @current-change="handleCurrentChange">
        </el-pagination>
      </div>
    </div>
  </div>
</template>
<script>
import { getUserData } from "@/api/systemPermission/user";
export default {
  data() {
    const initialData = {
      PageNumber: 1,
      PerPageCount: 30,
      queryConfig: {
        UserCode: "",
        UserName: "",
      },
      PageTotal: 0,
    };
    return {
      tableData: [],
      paramsQuery: { ...initialData },
      initialData: JSON.parse(JSON.stringify(initialData))
    };
  },
  methods: {
    btnAction(flag) {
      //重置
      if (flag == 0) {
        this.paramsQuery = JSON.parse(JSON.stringify(this.initialData));
      }
      this.getData();
    },
    getData() {
      getUserData(this.paramsQuery).then(response => {
        this.total = response.data.totalCount;
        this.tableData = response.data.data;
      });
    },

    //获取表格行数据
    handleSelectionChange(val) {
      this.multipleSelection = val;
    },
    //分页
    handleCurrentChange(page) {
      debugger
      this.queryConfig.currentPage = page;
      this.getData();
    },
  },
  mounted() {
    this.getData();
  },
};
</script>
<style scoped lang="scss">
.sys-container {
  width: 100%;
}

.el-row {
  margin-bottom: 5px;
}

.sys-form-item {
  display: flex;
  border-radius: 4px;
  min-height: 46px;
  margin-bottom: 10px;
  align-items: center;
}

.sys-table-border {
  border: 1px solid #e5e9f2;
}

.T1 {
  border: 1px solid #b3d8ff;
}

.sys-pagination-container {
  text-align: center;
  /* 使分页组件靠右 */
  margin-top: 20px;
  /* 添加顶部间距 */
}
</style>