<template>
<div>
  <el-button :disabled="data.status !== '新建'" class="normal-margin" type="primary" size="small" @click="onShow(drawer=true)">添加工具</el-button>
  <el-drawer
    title="新增"
    :visible.sync="drawer"
    append-to-body
    size="70%"
    direction="rtl">
    <div class="drawer__panel">
      <div class="flex-align-center flex-between mt-10">
        <el-input style="width:200px" size="small"  suffix-icon="el-icon-search" v-model="params.content.where.condition" placeholder="产品名称,编号" @keyup.enter.native="listData(params.content.pageNumber = 1)" @clear="listData(params.content.pageNumber = 1)" clearable></el-input>
        <el-button type="primary" size="small" :disabled="tableSelectData.length === 0" @click="onConfirm">添加选中商品</el-button>
      </div>
      <div>
        <el-table
          ref="multipleTable"
          :data="tableData"
          style="width: 100%"
          :header-cell-style="{height:'50px',color:'#768093',fontWeight:'400'}"
          :cell-style="{height:'50px',color:'#768093',fontWeight:'400'}"
          size="mini"
          border
          @selection-change="selectionChange">
          <el-table-column
            type="selection"
            width="55">
          </el-table-column>
          <el-table-column
            prop="itemname"
            label="产品名称"
            width="180">
          </el-table-column>
          <el-table-column
            prop="itemno"
            label="产品编号"
            width="180">
          </el-table-column>
          <el-table-column
            label="型号">
            <template slot-scope="scope">
              <p><span>{{scope.row.model}}</span></p>
            </template>
          </el-table-column>
          <el-table-column
            prop="unit"
            label="计量单位"
            width="90">
            <template slot-scope="scope">
              <el-tag size="mini" type="info" effect="plain">{{scope.row.unit}}/{{scope.row.auxunit}}</el-tag>
            </template>
          </el-table-column>
        </el-table>
        <div style="margin-top:16px;text-align:right">
          <el-pagination
            background
            small
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
            :current-page="currentPage"
            :page-size="params.content.pageSize"
            layout="total, prev, pager, next, jumper"
            :total="total">
          </el-pagination>
        </div>
      </div>
    </div>
  </el-drawer>

</div>
</template>

<script>
import uploadFile from '@/components/upload/hw_obs_upload'
import previewImage from '@/components/previewImage/index'

export default {
  props:['data'],
  data () {
    return {
      drawer:false,
      params:{
        "id": 20230116111602,
        "content": {
            "sa_orderid": 0,
            "pageNumber": 1,
            "pageSize": 10,
            "where": {
              "condition": ""
            }
        },
      },
      tableSelectData:[],
      tableData: [],
      total:0,
      currentPage:0
    }
  },
  components:{
    uploadFile,
    previewImage
  },
  methods:{
    onShow () {
      this.listData()
    },
    async listData () {
      this.params.content.sa_orderid = this.$route.query.id
      const res = await this.$api.requested(this.params)
      this.tableData = res.data
      this.total = res.total
      this.currentPage = res.pageNumber
    },
    handleSizeChange(val) {
      // console.log(`每页 ${val} 条`);
      this.params.content.pageSize = val
      this.listData()
    },
    handleCurrentChange(val) {
      // console.log(`当前页: ${val}`);
      this.params.content.pageNumber = val
      this.listData()
    },
    selectionChange (val) {
      this.tableSelectData = val
    },
    // 订单添加商品
    async reqData (data) {
      const res = await this.$api.requested({
        "id": 20221109093602,
        "content": {
          "sa_orderid": this.$route.query.id, //订单ID
          "sys_enterpriseid": this.data.sys_enterpriseid, //企业ID
          "type": "工具借用单", //订单类型
          "items": data.map(e=>{
            return {
              sa_orderitemsid:0,
              itemid:e.itemid,
              qty:e.orderminqty,
              needdate:e.deliverydate
            }
          })
        },
      })
      this.tool.showMessage(res,()=>{
        this.drawer = false
        this.$emit('onConfirm')
      })
    },
    onConfirm () {
      this.reqData(this.tableSelectData)
     
    },
    clearSelection () {
      this.$refs.multipleTable.clearSelection();
    }
  },
  mounted () {
    
  }
}

</script>
<style>
</style>
<style scoped>
.produtMag-panel{
  /* margin: 30px; */
  padding:0 10px 10px 10px;
  background: #fff;
  border-radius:5px;
  overflow: hidden;
  border:1px solid rgb(0 0 0 / 5%)
  /* box-shadow: 0 5px 5px rgb(0 0 0 / 10%);
  transform: translate3d(0,-2px,0); */
}
.image {
  width:40px;height:40px;margin:0px auto;
}
</style>