<template>
  <div class="app-container">
    <el-card>
      <span>项目名称:</span>
      <el-select
        v-model="entryNameValue"
        placeholder="项目名称"
        style="width:200px"
        size="small"
        clearable
        filterable
        @change="empty">
        <el-option
          v-for="item in entryName"
          :key="item.value"
          :label="item.label"
          :value="item.value"/>
      </el-select>
      <span>机床号:</span>
      <el-input v-model="machineToolNumber" placeholder="请双击选择" size="small" clearable style="width:200px" @change="empty1" @dblclick.native="SearchMachine"/>
      <span>组号:</span>
      <el-input v-model="groupNumber" placeholder="请双击选择" size="small" clearable style="width:200px" @dblclick.native="searchGroupList"/>
      <el-button type="success" icon="el-icon-search" size="small" style="margin-top: 15px;margin-left: 10px" @click="total=0;pageSize=1000;pageCurrent=1;searchData();searchTable()">查询</el-button>
    </el-card>
    <el-card>
      <h3 style="text-align: center;">车间生产</h3>
      <el-table
        v-loading="loading"
        :data="tableData"
        :summary-method="getSummaries"
        style="width: 100%;margin-top: 6px"
        highlight-current-row
        height="400"
        size="mini"
        show-summary
        border
        stripe>
        <el-table-column align="center" label="零件图号">
          <template slot-scope="scope">
            {{ scope.row.零件图号 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="零件名称">
          <template slot-scope="scope">
            {{ scope.row.零件名称 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="投产数量">
          <template slot-scope="scope">
            {{ scope.row.投产数量 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="入库数量">
          <template slot-scope="scope">
            {{ scope.row.入库数量 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="类别">
          <template slot-scope="scope">
            {{ scope.row.类别 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="计划完成时间">
          <template slot-scope="scope">
            {{ scope.row.计划完成时间 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="入库时间">
          <template slot-scope="scope">
            {{ scope.row.入库时间 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="操作" fixed="right">
          <template slot-scope="scope">
            <el-button type="primary" plain size="mini" @click="processingStatus(scope.row)">查看加工进度</el-button>
          </template>
        </el-table-column>
      </el-table>
      <div class="block" style="margin-top: 10px;">
        <el-pagination
          :current-page="pageCurrent"
          :page-sizes="[10, 20, 30, 40, 50]"
          :page-size="pageSize"
          :total="total"
          layout="total"
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"/>
      </div>
    </el-card>
    <el-card>
      <h3 style="text-align: center;">采购部采购</h3>
      <el-tabs v-model="PartType" type="border-card" style="margin-top: 10px" @tab-click="searchTable()">
        <el-tab-pane label="标准件" name="标准件">
          <el-table :data="tableData00" size="mini" height="400px" border stripe>
            <el-table-column align="center" label="机床图号">
              <template slot-scope="scope">
                {{ scope.row.机床图号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="组号">
              <template slot-scope="scope">
                {{ scope.row.组号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="名称">
              <template slot-scope="scope">
                {{ scope.row.物料名称 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="型号">
              <template slot-scope="scope">
                {{ scope.row.物料型号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="规格">
              <template slot-scope="scope">
                {{ scope.row.物料规格 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="技术下达数量">
              <template slot-scope="scope">
                {{ scope.row.零件数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="合同采购数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.数量 || scope.row.离线采购数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="到货数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.已到货数量 || scope.row.离线到货数量 || '—' }}
              </template>
            </el-table-column>
          </el-table>
          <div class="block">
            <el-pagination
              :current-page="pageCurrent00"
              :page-sizes="[10, 20, 30, 40]"
              :page-size="pageSize00"
              :total="total00"
              style="margin-top:10px;display:inline-block;width:50%"
              layout="total"
              @size-change="handleSizeChange00"
              @current-change="handleCurrentChange00"/>
          </div>
        </el-tab-pane>
        <el-tab-pane label="外购件" name="外购件">
          <el-table :data="tableData01" size="mini" height="400px" border stripe>
            <el-table-column align="center" label="机床图号">
              <template slot-scope="scope">
                {{ scope.row.机床图号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="组号">
              <template slot-scope="scope">
                {{ scope.row.组号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="名称">
              <template slot-scope="scope">
                {{ scope.row.物料名称 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="型号">
              <template slot-scope="scope">
                {{ scope.row.物料型号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="规格">
              <template slot-scope="scope">
                {{ scope.row.物料规格 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="技术下达数量">
              <template slot-scope="scope">
                {{ scope.row.零件数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="合同采购数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.数量 || scope.row.离线采购数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="到货数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.已到货数量 || scope.row.离线到货数量 || '—' }}
              </template>
            </el-table-column>
          </el-table>
          <div class="block">
            <el-pagination
              :current-page="pageCurrent01"
              :page-sizes="[10, 20, 30, 40]"
              :page-size="pageSize01"
              :total="total01"
              style="margin-top:10px;display:inline-block;width:50%"
              layout="total"
              @size-change="handleSizeChange01"
              @current-change="handleCurrentChange01"/>
          </div>
        </el-tab-pane>
        <el-tab-pane label="基本件" name="基本件">
          <el-table :data="tableData02" size="mini" height="400px" border stripe>
            <el-table-column align="center" label="机床图号">
              <template slot-scope="scope">
                {{ scope.row.机床图号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="组号">
              <template slot-scope="scope">
                {{ scope.row.组号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="名称">
              <template slot-scope="scope">
                {{ scope.row.零件名称 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="图号">
              <template slot-scope="scope">
                {{ scope.row.零件图号 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="规格">
              <template slot-scope="scope">
                {{ scope.row.规格 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="材料">
              <template slot-scope="scope">
                {{ scope.row.材料 }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="技术下达数量">
              <template slot-scope="scope">
                {{ scope.row.零件数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="采购数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.数量 || '—' }}
              </template>
            </el-table-column>
            <el-table-column align="center" label="到货数量">
              <template slot-scope="scope">
                {{ parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!=='' ? '—' : scope.row.已到货数量 || '—' }}
              </template>
            </el-table-column>
          </el-table>
          <div class="block">
            <el-pagination
              :current-page="pageCurrent02"
              :page-sizes="[10, 20, 30, 40]"
              :page-size="pageSize02"
              :total="total02"
              style="margin-top:10px;display:inline-block;width:50%"
              layout="total"
              @size-change="handleSizeChange02"
              @current-change="handleCurrentChange02"/>
          </div>
        </el-tab-pane>
      </el-tabs>
    </el-card>

    <el-card>
      <h3 style="text-align: center;">制造部采购</h3>
      <el-table
        :data="tableData1"
        border
        style="width: 100%;margin-top: 6px;"
        height="400">
        <el-table-column label="机床图号" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.机床图号 }}
          </template>
        </el-table-column>
        <el-table-column label="组号" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.组号 }}
          </template>
        </el-table-column>
        <el-table-column label="物料名称" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.物料名称 }}
          </template>
        </el-table-column>
        <el-table-column label="图号或型号" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.图号 }}
          </template>
        </el-table-column>
        <el-table-column label="材料或规格" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.规格或材料 }}
          </template>
        </el-table-column>
        <el-table-column label="零件数量" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.零件数量 }}
          </template>
        </el-table-column>
        <el-table-column label="已到货数量" align="center" min-width="80">
          <template slot-scope="scope">
            {{ scope.row.已到货数量 }}
          </template>
        </el-table-column>
      </el-table>
      <div class="block" style="margin-top: 10px;">
        <el-pagination
          :current-page="pageCurrent5"
          :page-sizes="[10, 20, 30, 40]"
          :page-size="pageSize5"
          :total="total5"
          layout="total"
          @size-change="handleSizeChange5"
          @current-change="handleCurrentChange5"/>
      </div>
    </el-card>
    <el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible2" title="选择机床" center style="min-height: 300px">
      <el-table
        :data="tableData6"
        style="width:100%;max-height: 300px;display: inline-block"
        height="300"
        highlight-current-row
        border
        @row-click="selectMachine">
        <el-table-column align="center" label="机床图号">
          <template slot-scope="scope">
            {{ scope.row.机床图号 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="机床名称">
          <template slot-scope="scope">
            {{ scope.row.机床名称 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="机床开始时间">
          <template slot-scope="scope">
            {{ scope.row.机床开始时间 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="机床结束时间">
          <template slot-scope="scope">
            {{ scope.row.机床结束时间 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="工位属性">
          <template slot-scope="scope">
            {{ scope.row.工位属性 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="机床主管">
          <template slot-scope="scope">
            {{ scope.row.机床主管 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="装配状态">
          <template slot-scope="scope">
            <el-tag v-if="scope.row.装配状态===null || scope.row.装配状态===0" type="success" size="small">未装配</el-tag>
            <el-tag v-else-if="scope.row.装配状态===1" type="danger" size="small" >装配中</el-tag>
            <el-tag v-else type="info" size="small" >装配完成</el-tag>
          </template>
        </el-table-column>
      </el-table>
      <div class="block" style="margin-top: 10px;">
        <el-pagination
          :current-page="pageCurrent1"
          :page-sizes="[10, 20, 30, 40, 50]"
          :page-size="pageSize1"
          :total="total1"
          layout="total, sizes, prev, pager, next, jumper"
          @size-change="handleSizeChange1"
          @current-change="handleCurrentChange1"/>
      </div>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitName">提交</el-button>
      </div>
    </el-dialog>

    <el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible3" title="选择组号" center style="min-height: 300px">
      <el-table
        :data="tableData7"
        style="width:100%;max-height: 300px;display: inline-block"
        height="300"
        highlight-current-row
        border
        @row-click="selectGroup">
        <el-table-column align="center" label="机床图号">
          <template slot-scope="scope">
            {{ scope.row.机床图号 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="机床名称">
          <template slot-scope="scope">
            {{ scope.row.机床名称 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="组号">
          <template slot-scope="scope">
            {{ scope.row.组号 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="组件名称">
          <template slot-scope="scope">
            {{ scope.row.组件名称 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="装配状态">
          <template slot-scope="scope">
            <el-tag v-if="scope.row.组件是否完成===null || scope.row.组件是否完成===0" type="success" size="small">未装配</el-tag>
            <el-tag v-else-if="scope.row.组件是否完成===1" type="danger" size="small" >装配中</el-tag>
            <el-tag v-else type="info" size="small" >装配完成</el-tag>
          </template>
        </el-table-column>
      </el-table>
      <div class="block" style="margin-top: 10px;">
        <el-pagination
          :current-page="pageCurrent2"
          :page-sizes="[10, 20, 30, 40, 50]"
          :page-size="pageSize2"
          :total="total2"
          layout="total, sizes, prev, pager, next, jumper"
          @size-change="handleSizeChange3"
          @current-change="handleCurrentChange3"/>
      </div>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitGroup">提交</el-button>
      </div>
    </el-dialog>

    <el-dialog v-el-drag-dialog :visible.sync="dialogFormVisible4" :title="titleaa" center style="min-height: 300px">
      <el-table
        :data="tableData5"
        style="width: 100%;max-height: 400px;"
        size="mini"
        height="300"
        highlight-current-row
        border>
        <el-table-column align="center" label="工序顺序" width="80">
          <template slot-scope="scope">
            {{ scope.row.工序顺序 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="工艺名称" width="110">
          <template slot-scope="scope">
            {{ scope.row.工艺名称 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="工艺要求" show-overflow-tooltip>
          <template slot-scope="scope">
            {{ scope.row.工艺要求 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="计划日期" width="100">
          <template slot-scope="scope">
            {{ scope.row.计划日期 }}
          </template>
        </el-table-column>
        <el-table-column align="center" label="工艺是否完成" width="100">
          <template slot-scope="scope">
            <el-tag v-if="parseInt(scope.row.工序状态)===4" type="success" size="small">已完成</el-tag>
            <el-tag v-if="parseInt(scope.row.工序状态)===5" type="warning" size="small">报废</el-tag>
            <el-tag v-if="parseInt(scope.row.工序状态)!==4 && parseInt(scope.row.工序状态)!==5" type="primary" size="small">未完成</el-tag>
          </template>
        </el-table-column>
        <el-table-column align="center" label="工艺是否质检" width="100">
          <template slot-scope="scope">
            <el-tag v-if="parseInt(scope.row.是否质检)===1" type="success" size="small">合格</el-tag>
            <el-tag v-if="parseInt(scope.row.是否质检)===2" type="warning" size="small">不合格</el-tag>
            <el-tag v-if="parseInt(scope.row.是否质检)!==1 && parseInt(scope.row.是否质检)!==2" type="primary" size="small">未检测</el-tag>
          </template>
        </el-table-column>
      </el-table>
    </el-dialog>
  </div>
</template>

<script>
import { initProject, searchTable, searchmachine, searchgroup, searchPurchaseTable, searchTable1, processingStatus, searchTable22, searchTable01, searchTable02 } from '@/api/ManufacturingCenter/GroupMatching'
export default {
  data() {
    return {
      titleaa: '',
      零件图号: '',
      entryNameValue: null, // 项目流水号
      entryName: [], // 项目数组
      machineToolNumber: '', // 机床图号
      machineNumber: '',
      machine: null, // 机床流水号
      groupNumber: '', // 组号
      groupNumber1: '',
      groupNum: null, // 组件流水号
      partNumber: '', // 零件号
      num: null,
      PartType: '标准件',
      pageCurrent00: 1,
      pageSize00: 1000,
      pageCurrent01: 1,
      pageSize01: 10,
      pageCurrent02: 1,
      pageSize02: 1000,
      pageCurrent: 1,
      pageSize: 1000,
      pageCurrent1: 1,
      pageSize1: 10,
      pageCurrent2: 1,
      pageSize2: 10,
      pageCurrent4: 1,
      pageSize4: 10,
      pageCurrent5: 1,
      pageSize5: 10,
      tableData7: [],
      tableData6: [],
      tableData: [],
      tableData1: [],
      tableData5: [],
      tableData00: [],
      tableData01: [],
      tableData02: [],
      state: null,
      listLoading1: false,
      listLoading2: false,
      total00: 0,
      total01: 0,
      total02: 0,
      total: 0,
      total1: 0,
      total2: 0,
      total4: 0,
      total5: 0,
      title: '',
      totalNum: 0,
      totalNum1: 0,
      dialogFormVisible2: false,
      dialogFormVisible3: false,
      dialogFormVisible4: false,
      check: null,
      check1: null,
      check2: null,
      check3: null,
      check4: null,
      check5: null,
      month: null,
      year: null,
      time: '',
      loading: false,
      monthes: [{
        value: 1,
        label: '1'
      }, {
        value: 2,
        label: '2'
      }, {
        value: 3,
        label: '3'
      }, {
        value: 4,
        label: '4'
      }, {
        value: 5,
        label: '5'
      }, {
        value: 6,
        label: '6'
      }, {
        value: 7,
        label: '7'
      }, {
        value: 8,
        label: '8'
      }, {
        value: 9,
        label: '9'
      }, {
        value: 10,
        label: '10'
      }, {
        value: 11,
        label: '11'
      }, {
        value: 12,
        label: '12'
      }],
      tableDataPurchase: []
    }
  },
  created() {
    this.getList()
  },
  methods: {
    searchData() {
      this.totalNum = 0
      this.loading = true
      this.listLoading1 = true
      this.listLoading2 = true
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        searchTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.pageCurrent, this.pageSize).then(response => {
          for (let i = 0; i < response.data.rows.length; i++) {
            if (response.data.rows[i].入库时间 !== '') {
              response.data.rows[i].入库时间 = response.data.rows[i].入库时间.split(' ', 2)[0]
            }
            if (response.data.rows[i].计划完成时间 !== '') {
              response.data.rows[i].计划完成时间 = response.data.rows[i].计划完成时间.split(' ', 2)[0]
            }
          }
          this.tableData = response.data.rows
          this.total = parseInt(response.data.total)
          this.loading = false
        })
        searchTable22(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent, this.pageSize).then(response => {
          for (let i = 0; i < response.data.length; i++) {
            console.log(response.data[i].入库时间, 123)
            if (response.data[i].入库时间 !== null) {
              this.totalNum += 1
            }
          }
        })
        searchPurchaseTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent, this.pageSize).then(response => {
          for (let i = 0; i < response.data.rows.length; i++) {
            if (response.data.rows[i].到货时间 !== '' || response.data.rows[i].到货时间 !== null) {
              response.data.rows[i].到货时间 = response.data.rows[i].到货时间.split(' ', 2)[0]
            }
          }
          this.tableDataPurchase = response.data.rows
          this.total4 = parseInt(response.data.total)
        })
        searchTable1(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.pageCurrent, this.pageSize).then(response => {
          this.tableData1 = response.data.rows
          this.total5 = parseInt(response.data.total)
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    getList() { // 初始化项目名称
      initProject().then(response => {
        for (let i = 0; i < response.data.length; i++) {
          this.entryName.push({
            label: response.data[i].项目名称,
            value: response.data[i].项目流水号
          })
        }
      })
    },
    processingStatus(row) {
      this.dialogFormVisible4 = true
      this.titleaa = row.零件图号
      processingStatus(row.工艺计划流水号).then(response => {
        for (let i = 0; i < response.data.length; i++) {
          if (response.data[i].计划日期 !== '' && response.data[i].计划日期 !== null) {
            response.data[i].计划日期 = response.data[i].计划日期.split(' ')[0]
          }
        }
        this.tableData5 = response.data
      })
    },
    empty() {
      this.machineToolNumber = ''
      this.groupNumber = ''
    },
    SearchMachine() { // 查询机床
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        this.dialogFormVisible2 = true
        this.check6 = 1
        searchmachine(this.entryNameValue, this.check6, this.pageCurrent1, this.pageSize1).then(response => {
          for (let i = 0; i < response.data.result; i++) {
            if (response.data.result[i].机床开始时间 !== '') {
              response.data.result[i].机床开始时间 = response.data.result[i].机床开始时间.substr(0, 10)
            }
            if (response.data.result[i].机床结束时间 !== '') {
              response.data.result[i].机床结束时间 = response.data.result[i].机床结束时间.substr(0, 10)
            }
          }
          this.tableData6 = response.data.result
          this.total1 = parseInt(response.data.output[0].ItemCount)
        })
      } else {
        this.$message.warning('请先选择项目')
      }
    },
    selectMachine(row) { // 选择机床号
      this.machine = row.机床流水号
      this.machineNumber = row.机床图号
    },
    submitName() { // 提交机床号
      this.machineToolNumber = this.machineNumber
      this.dialogFormVisible2 = false
    },
    empty1() {
      this.groupNumber = ''
    },
    searchGroupList() { // 查询组号
      if (this.machineToolNumber !== '') {
        this.dialogFormVisible3 = true
        searchgroup(this.machine, this.pageCurrent2, this.pageSize2).then(response => {
          this.tableData7 = response.data.result
          this.total2 = parseInt(response.data.output[0].ItemCount)
        })
      } else {
        this.$message.warning('请先选择机床')
      }
    },
    selectGroup(row) { // 选择组号
      this.groupNumber1 = row.组号
      this.groupNum = row.组件流水号
    },
    submitGroup() { // 提交组号
      this.groupNumber = this.groupNumber1
      this.dialogFormVisible3 = false
    },
    searchTable() {
      if (this.machine === '' || this.machine === null) {
        this.$message.warning('请先选择机床组号')
      } else {
        if (this.PartType === '标准件') {
          this.searchTable0()
        } else if (this.PartType === '外购件') {
          this.searchTable1()
        } else if (this.PartType === '基本件') {
          this.searchTable2()
        }
      }
    },
    searchTable0() { // 查询标准件
      let check1, check2
      this.machine ? check1 = 1 : check1 = 0
      this.groupNum ? check2 = 1 : check2 = 0
      searchTable01(check1, this.machine, check2, this.groupNum, this.pageCurrent00, this.pageSize00, 1).then(response => {
        this.tableData00 = response.data.rows
        this.total00 = response.data.total
      })
    },
    searchTable1() { // 查询外购件
      let check1, check2
      this.machine ? check1 = 1 : check1 = 0
      this.groupNum ? check2 = 1 : check2 = 0
      searchTable01(check1, this.machine, check2, this.groupNum, this.pageCurrent01, this.pageSize01, 2).then(response => {
        this.tableData01 = response.data.rows
        this.total01 = response.data.total
      })
    },
    searchTable2() { // 查询基本件
      let check1, check2, check3
      this.machine ? check1 = 1 : check1 = 0
      this.groupNum ? check2 = 1 : check2 = 0
      this.entryNameValue ? check3 = 1 : check3 = 0
      searchTable02(check3, this.entryNameValue, check1, this.machine, check2, this.groupNum, this.pageCurrent02, this.pageSize02).then(response => {
        this.tableData02 = response.data.rows
        this.total02 = response.data.total
      })
    },
    handleSizeChange(val) {
      this.pageCurrent = 1
      this.pageSize = val
      console.log(val)
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.pageCurrent, this.pageSize).then(response => {
          console.log(response)
          for (let i = 0; i < response.data.rows.length; i++) {
            if (response.data.rows[i].入库时间 !== '') {
              response.data.rows[i].入库时间 = response.data.rows[i].入库时间.split(' ', 2)[0]
            }
            if (response.data.rows[i].计划完成时间 !== '') {
              response.data.rows[i].计划完成时间 = response.data.rows[i].计划完成时间.split(' ', 2)[0]
            }
          }
          this.tableData = response.data.rows
          this.total = parseInt(response.data.total)
          this.loading = false
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleCurrentChange(val) {
      this.pageCurrent = val
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.pageCurrent, this.pageSize).then(response => {
          for (let i = 0; i < response.data.rows.length; i++) {
            if (response.data.rows[i].入库时间 !== '') {
              response.data.rows[i].入库时间 = response.data.rows[i].入库时间.split(' ', 2)[0]
            }
            if (response.data.rows[i].计划完成时间 !== '') {
              response.data.rows[i].计划完成时间 = response.data.rows[i].计划完成时间.split(' ', 2)[0]
            }
          }
          this.tableData = response.data.rows
          this.total = parseInt(response.data.total)
          this.loading = false
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleSizeChange1(val) {
      this.pageCurrent1 = 1
      this.pageSize1 = val
      this.SearchMachine()
    },
    handleCurrentChange1(val) {
      this.pageCurrent1 = val
      this.SearchMachine()
    },
    handleSizeChange3(val) {
      this.pageCurrent2 = 1
      this.pageSize2 = val
      this.searchGroupList()
    },
    handleCurrentChange3(val) {
      this.pageCurrent2 = val
      this.searchGroupList()
    },
    handleSizeChange4(val) {
      this.pageCurrent4 = 1
      this.pageSize4 = val
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchPurchaseTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent4, this.pageSize4).then(response => {
          console.log(response)
          this.tableDataPurchase = response.data.rows
          this.listLoading1 = false
          this.total4 = parseInt(response.data.total)
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleCurrentChange4(val) {
      this.pageCurrent4 = val
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchPurchaseTable(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent4, this.pageSize4).then(response => {
          console.log(response)
          this.tableDataPurchase = response.data.rows
          this.listLoading1 = false
          this.total4 = parseInt(response.data.total)
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleSizeChange5(val) {
      this.pageCurrent5 = 1
      this.pageSize5 = val
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchTable1(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent5, this.pageSize5).then(response => {
          console.log(response)
          this.tableData1 = response.data.rows
          this.listLoading2 = false
          this.total5 = parseInt(response.data.total)
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleCurrentChange5(val) {
      this.pageCurrent5 = val
      if (this.entryNameValue !== null && this.entryNameValue !== '') {
        if (this.entryNameValue !== null && this.entryNameValue !== '') {
          this.check = 1
        } else {
          this.check = 0
        }
        if (this.machineToolNumber !== '') {
          this.check1 = 1
        } else {
          this.check1 = 0
        }
        if (this.groupNumber !== '') {
          this.check2 = 1
        } else {
          this.check2 = 0
        }
        if (this.year !== null && this.year !== '') {
          this.check3 = 1
        } else {
          this.check3 = 0
        }
        if (this.month !== null && this.month !== '') {
          this.check4 = 1
        } else {
          this.check4 = 0
        }
        if (this.time !== '' && this.time !== null) {
          this.check5 = 1
        } else {
          this.check5 = 0
        }
        searchTable1(this.check, this.entryNameValue, this.check1, this.machine, this.check2, this.groupNum, this.check3, this.year, this.check4, this.month, this.check5, this.time, this.pageCurrent5, this.pageSize5).then(response => {
          console.log(response)
          this.tableData1 = response.data.rows
          this.listLoading2 = false
          this.total5 = parseInt(response.data.total)
        })
      } else {
        this.loading = false
        this.$message.warning('请先选择项目')
      }
    },
    handleSizeChange00(val) {
      this.pageCurrent00 = 1
      this.pageSize00 = val
      this.searchTable0()
    },
    handleCurrentChange00(val) {
      this.pageCurrent00 = val
      this.searchTable0()
    },
    handleSizeChange01(val) {
      this.pageCurrent01 = 1
      this.pageSize01 = val
      this.searchTable1()
    },
    handleCurrentChange01(val) {
      this.pageCurrent01 = val
      this.searchTable1()
    },
    handleSizeChange02(val) {
      this.pageCurrent02 = 1
      this.pageSize02 = val
      this.searchTable2()
    },
    handleCurrentChange02(val) {
      this.pageCurrent02 = val
      this.searchTable2()
    },
    getSummaries(param) {
      const { columns } = param
      const sums = []
      columns.forEach((column, index) => {
        if (index === 4) {
          sums[index] = '总件数'
          return
        } else if (index === 5) {
          sums[index] = this.total + '件'
        } else if (index === 6) {
          sums[index] = '入库数量'
        } else if (index === 7) {
          sums[index] = this.totalNum + ' 件'
        }
      })
      return sums
    }
  }
}
</script>

<style scoped>
  .el-card{
    margin-bottom: 15px;
  }
  .el-date-editor{
    width:150px
  }
  span{
    margin: 10px 0 10px 10px;
  }
  .el-card{
    margin: 1px;
  }
</style>
