<template>
  <div>
    <el-form :inline="true" :model="query" class="query-form" size="mini">
      <el-form-item class="query-form-item">
        <el-input v-model="query.code" placeholder="搜索"></el-input>
      </el-form-item>

      <el-form-item>
        <el-button-group>
          <el-button type="primary" icon="search" @click="onSubmit"
            >查询</el-button
          >
          <el-button type="primary" icon="search" @click="deleteDialog"
            >删除</el-button
          >
        </el-button-group>
      </el-form-item>
    </el-form>
    <el-table
      v-loading="loading"
      :data="codeArry"
      style="width: 100%"
      ref="multipleTable"
      tooltip-effect="dark"
      @selection-change="handleSelectionChange"
    >
      <el-table-column type="selection" width="55"></el-table-column>
      <el-table-column label="序号" type="index" fixed></el-table-column>
      <!-- <el-table-column label="ID" prop="id" fixed></el-table-column> -->
      <el-table-column label="条码" prop="code" fixed></el-table-column>
      <el-table-column
        label="扫码数量"
        prop="count"
       width="220"
        show-overflow-tooltip
      ></el-table-column>
      <el-table-column label="创建时间"  prop="actDate" >
        <template slot-scope="scope">
          <i class="el-icon-time"></i>
          <span>{{ scope.row.actDate }}</span>
        </template>
      </el-table-column>
      <!-- <el-table-column label="操作员" prop="actor" fixed>
        <el-button type="text" size="small" @click.native.stop="onDelete(scope.$index)">删除</el-button>
      </el-table-column>-->
    </el-table>

    <el-pagination
      :page-size="query.limit"
      @current-change="handleCurrentChange"
      layout="prev, pager, next"
      :total="total"
    ></el-pagination>
  </div>
</template>

<script>
import {
  orderList,
  errorCodeList,
  deleteCodes,
} from "../../api/warehouse/order";
import draggable from "vuedraggable";
import { saveAs } from "file-saver";

export default {
  name: "idQuery",
  props: {
    idQuery: {
      type: Object,
      required: true,
    },
  },
  data() {
    return {
      query: {
        code: "",
        orderId: "",
        page: 1,
        limit: 20,
      },
      codeArry: [],
      total: 0,
      loading: true,
      index: null,
      formLoading: false,
      formVisible: false,
      deleteLoading: false,
      orderNo: null,
      multipleSelection: [],
    };
  },
  components: {
    draggable,
  },
  methods: {
    handleSelectionChange(val) {
      console.log(val);
      this.multipleSelection = val;
    },

    onReset() {
      this.$router.push({
        path: "",
      });
      this.query = {
        code: "",
        orderId:null,
        page: 1,
        limit: 20,
      };
      this.getCodeList();
    },
    onSubmit() {
      this.$router.push({
        path: "",
        query: this.query,
      });
      this.getCodeList();
    },
    handleSizeChange(val) {
      this.query.limit = val;
      this.getCodeList();
    },
    handleCurrentChange(val) {
      this.query.page = val;
      this.getCodeList();
    },

    deleteDialog() {
      this.$confirm("是否删除所选条码?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          this.onDelete();
        })
        .catch(() => {});
    },

    onDelete() {
      var selectData = this.multipleSelection;

      var codeList = [];
      selectData.forEach((obj, index) => {
        codeList.push(obj.id);
      });
      var tquery = {
        codes: codeList,
      };
      deleteCodes(tquery).then((response) => {
        this.getCodeList();
        this.$message({
          type: "success",
          message: "删除成功！",
        });
      });
    },

    getCodeList() {
      this.loading = true;
      this.query.orderId = this.idQuery.id;
      errorCodeList(this.query) //查找该单号下的所有条码
        .then((response) => {
          this.loading = false;
          this.codeArry = response.data.list || [];
          this.total = response.data.total || 0;
        })
        .catch(() => {
          this.loading = false;
          this.list = [];
          this.total = 0;
        });
    },
    intentBack() {
      //  this.$router.push({path:'../readme/detail',query:{id:row.corpOrderId}});
      this.$router.go(-1);
    },
  },
  filters: {},
  mounted() {
    document.body.ondrop = function (event) {
      event.preventDefault();
      event.stopPropagation();
    };
  },
  created() {
    // 将参数拷贝进查询对象
    let query = this.$route.query;
    this.orderNo = query.id;

    this.query = Object.assign(this.query, query);
    this.query.limit = parseInt(this.query.limit);
    this.query.orderId = query.id;

    // 加载表格数据
    this.getCodeList();
  },
};
</script>

<style type="text/scss" lang="scss">
</style>
