Crunchy
2025-04-29 e5454b769d44a34af423bf87ac8a740bf8c20341
src/views/performance/manHour/workTimeStatistics.vue
@@ -1,59 +1,54 @@
<template>
  <div>
  <div class="capacity-scope">
    <div>
      <div class="search">
        <div class="search_thing">
          <div class="search_label">日期:</div>
          <div class="search_input" style="display: flex; align-items: center">
            <el-date-picker
              v-model="queryParams.month"
              :clearable="false"
              format="yyyy-MM"
              placeholder="选择月"
              size="small"
              style="width: 100%"
              type="month"
              value-format="yyyy-MM"
              @change="refreshTable()"
            >
            </el-date-picker>
          </div>
        </div>
        <div class="search_thing">
          <div class="search_label">员工:</div>
          <el-input
            v-model="queryParams.name"
            clearable
            placeholder="请输入"
            size="small"
            @keyup.enter.native="refreshTable()"
          ></el-input>
        </div>
        <div class="search_thing" style="padding-left: 30px">
          <el-button size="small" @click="refresh()">重 置</el-button>
          <el-button size="small" type="primary" @click="refreshTable()"
            >查 询</el-button
          >
        <div>
          <el-form :model="queryParams" ref="queryParams" size="small" :inline="true">
            <el-form-item label="日期" prop="month">
              <el-date-picker
                v-model="queryParams.month"
                :clearable="false"
                format="yyyy-MM"
                placeholder="选择月"
                size="small"
                style="width: 100%"
                type="month"
                value-format="yyyy-MM"
                @change="refreshTable()"
              >
              </el-date-picker>
            </el-form-item>
            <el-form-item label="员工" prop="name">
              <el-input
                v-model="queryParams.name"
                clearable
                placeholder="请输入"
                size="small"
                @keyup.enter.native="refreshTable()"
              ></el-input>
            </el-form-item>
            <el-form-item>
              <el-button type="primary" size="mini" @click="refreshTable">查询</el-button>
              <el-button size="mini" @click="refresh">重置</el-button>
            </el-form-item>
          </el-form>
        </div>
      </div>
      <div class="table">
        <limsTable
          :column="tableColumn"
          :table-data="tableData"
          :table-loading="tableLoading"
          :page="page"
          style="padding: 0 15px"
          :height="'calc(100vh - 290px)'"
          @pagination="pagination"
        >
        </limsTable>
      </div>
      <limsTable
        :column="tableColumn"
        :table-data="tableData"
        :table-loading="tableLoading"
        :page="page"
        :height="'calc(100vh - 290px)'"
        @pagination="pagination"
      >
      </limsTable>
    </div>
  </div>
</template>
<script>
import { getYearAndMonthAndDays } from "@/utils/date";
import { getYearAndMonthAndDays, getYearAndMonthAndDaysZTZB } from "@/utils/date";
import limsTable from "@/components/Table/lims-table.vue";
import { selectAuxiliaryAllByMonth } from "@/api/performance/manHour";
export default {
@@ -63,7 +58,7 @@
  data() {
    return {
      queryParams: {
        month: getYearAndMonthAndDays().slice(0, 7),
        month: getYearAndMonthAndDaysZTZB().slice(0, 7),
        name: "",
        departLims: "",
      },
@@ -98,7 +93,7 @@
      tableLoading: false,
      page: {
        total: 0,
        size: 10,
        size: 20,
        current: 0,
      },
    };
@@ -120,7 +115,7 @@
    },
    refresh() {
      this.queryParams = {
        month: getYearAndMonthAndDays().slice(0, 7),
        month: getYearAndMonthAndDaysZTZB().slice(0, 7),
        name: "",
        departLims: "",
      };
@@ -137,32 +132,5 @@
</script>
<style scoped>
.work-time-statistics {
  height: 100%;
}
.search {
  background-color: #fff;
  height: 80px;
  display: flex;
  align-items: center;
}
.search_thing {
  width: 270px;
  display: flex;
  align-items: center;
}
.search_label {
  width: 60px;
  font-size: 14px;
  text-align: right;
}
.search_input {
  width: calc(100% - 60px);
}
.table {
  height: calc(100% - 60px - 80px - 10px - 40px - 25px);
}
</style>