loulijun2021
2022-12-30 afd3eab5d9db604134f570586ccd5598d38ce799
src/views/bbgl/bzgz.vue
@@ -9,12 +9,12 @@
        <el-form
          ref="form"
          :model="form"
          label-width="80px"
          label-width="100px"
          inline
          style="display: flex;justify-content: space-between"
        >
          <div class="elForm">
            <el-form-item label="工单编号" style=" display: flex;">
            <el-form-item label="工单编号" style=" display: flex;" label-width="70px">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
            <el-form-item label="产品编码" style=" display: flex;">
@@ -26,7 +26,7 @@
            <el-form-item label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="工序名称" style=" display: flex;">
            <el-form-item v-show="isExpandForm" label="工序名称" label-width="70px" style="display: flex;">
              <el-input v-model="form.stepname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="生产班组" style=" display: flex;">
@@ -42,7 +42,7 @@
            <el-form-item v-show="isExpandForm" label="操作人员" style=" display: flex;">
              <el-input v-model="form.username" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="操作时间" style="display: flex;align-items: center">
            <el-form-item v-show="isExpandForm" label="报工时间" style="display: flex;align-items: center">
              <el-date-picker
                v-model="form.operdate"
                type="daterange"
@@ -59,29 +59,41 @@
            </el-form-item>
          </div>
          <div class="bodySearchReset">
          <div class="bodySearchReset" :style="{marginLeft:$store.state.app.sidebar.opened?'5%':'10%'}">
            <el-button type="primary" icon="el-icon-search" @click="search">查询</el-button>
            <el-button type="info" icon="el-icon-refresh" @click="reset">重置</el-button>
          </div>
        </el-form>
        <div
          class="bodyTopFormExpand"
        >
          <svg-icon
            v-show="mouseHoverType==='mouseout'"
            style="cursor: pointer"
            :icon-class="!isExpandForm?'doubleDown3':'doubleUp3'"
            @mouseenter="mouseHoverType=$event.type"
          />
          <svg-icon
            v-show="mouseHoverType==='mouseenter'"
            style="cursor: pointer"
            :icon-class="!isExpandForm?'doubleDown':'doubleUp'"
            @click="isExpandForm=!isExpandForm"
            @mouseout="mouseHoverType=$event.type"
          />
        </div>
      </div>
      <div
        class="bodyTopFormExpand"
        @click="isExpandForm=!isExpandForm"
      >
        <i
          :class="!isExpandForm?'el-icon-arrow-down':'el-icon-arrow-up'"
          :style="{color:'#42B983'}"
        /></div>
      <div class="elTableDiv" style="margin-top: 0">
      <div class="elTableDiv">
        <el-table
          ref="tableDataRef"
          class="tableFixed"
          :data="tableData"
          :height="isExpandForm?tableHeight:(tableHeight+40)+'px'"
          border
          :summary-method="getSummaries"
          show-summary
          :row-class-name="tableRowClassName"
          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}"
          highlight-current-row
@@ -118,6 +130,7 @@
          <el-table-column
            prop="partspec"
            label="产品规格"
            width="150"
            show-tooltip-when-overflow
            sortable="custom"
          >
@@ -167,7 +180,7 @@
            sortable="custom"
          >
            <template slot-scope="{row}">
              <div v-if="row.unprice">{{ row.unprice }}元</div>
              <div v-if="row.unprice">{{ row.unprice }} 元</div>
              <div v-else>/</div>
            </template>
          </el-table-column>
@@ -178,14 +191,19 @@
            sortable="custom"
          >
            <template slot-scope="{row}">
              <div v-if="row.usermoney">{{ row.usermoney }}元</div>
              <div v-if="row.usermoney">{{ row.usermoney }} 元</div>
              <div v-else>/</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="lm_user"
            label="操作人员"
            label="报工人员"
            width="110"
            sortable="custom"
          />          <el-table-column
            prop="report_date"
            label="报工时间"
            width="160"
            sortable="custom"
          />
@@ -200,7 +218,8 @@
                  <!--                  <i class="el-icon-edit-outline" @click="edit('edit',row)" />-->
                  <i
                    class="el-icon-tickets"
                    style="cursor: pointer;color: #42b983;margin-right: 15px"
                    :style="{color:$store.state.settings.theme}"
                    style="cursor: pointer;margin-right: 15px"
                    @click="edit('edit',row)"
                  />
                </el-tooltip>
@@ -239,6 +258,7 @@
          :key="tag.name"
          type="success"
          style="margin-right: 15px;min-width: 80px;text-align: center"
          :style="{color:$store.state.settings.theme}"
        >
          {{ tag }}
        </el-tag>
@@ -273,8 +293,7 @@
import {
  GroupSalaryReportExcelSearch,
  GroupSalaryReportSearch,
  GroupSalaryReportSearchUser,
  OutSourceReportExcelSearch
  GroupSalaryReportSearchUser
} from '@/api/bbgl'
import { MesOrderStepReportSelectUserGroup } from '@/api/scgl'
@@ -285,6 +304,7 @@
  },
  data() {
    return {
      mouseHoverType: 'mouseout',
      isExpandForm: false,
      mainHeight: 0,
      tableHeight: 0,
@@ -355,6 +375,37 @@
        }
      })
    },
    getSummaries(param) {
      const { columns, data } = param
      const sums = []
      columns.forEach((column, index) => {
        if (index === 10) {
          sums[index] = '总价'
          return
        }
        const values = data.map(item => Number(item[column.property]))
        if (column.property === 'usermoney') {
          sums[index] = values.reduce((prev, curr) => {
            const value = Number(curr)
            if (!isNaN(value)) {
              return prev + curr
            } else {
              return prev
            }
          }, 0)
          sums[index] += ' 元'
        } else {
          // sums[index] = 'N/A'
          sums[index] = ' '
        }
      })
      this.$nextTick(() => {
        this.$refs.tableDataRef.doLayout()
      })
      return sums
    },
    async getGroupSalaryReportSearch() {
      let tempDate = this.form.operdate
      if (tempDate.length > 0) {
@@ -375,7 +426,6 @@
        rows: this.form.rows
      }
      console.log(data, 1)
      const res = await GroupSalaryReportSearch(data)
      this.tableData = res.data
      this.total = res.count
@@ -522,7 +572,7 @@
    getHeight() {
      this.$nextTick(() => {
        this.mainHeight = window.innerHeight - 85
        this.tableHeight = this.mainHeight - 245
        this.tableHeight = this.mainHeight - 255
        this.$refs.tableDataRef.doLayout()
      })
    },
@@ -653,11 +703,13 @@
  align-items: center;
  justify-content: center;
}
.tableFixed{
  ::v-deep .el-table__fixed-right{
.tableFixed {
  ::v-deep .el-table__fixed-right {
    height: 100% !important;
  }
  ::v-deep .el-table__fixed{
  ::v-deep .el-table__fixed {
    height: 100% !important;
  }
}