<template>
  <el-dialog
    title="分批"
    append-to-body
    :modelValue="showBatches"
    @close="closeDialog"
    class="dialog"
    width="25%"
  >
    <el-form
      :model="batchesForm"
      :rules="batchesRules"
      label-width="100px"
      class="form"
      ref="batchesForm"
    >
      <el-form-item class="icon-right">
        <el-popover placement="right-start" :width="200" trigger="hover" append-to-body="false">
          <p>(1)返工：分批后剩余数量零件依据返工订单进行生产</p>
          <p>(2)关闭：分批后自动关闭剩余数量零件的生产</p>
          <p>(3)其他：分批后剩余数量零件排产后进行生产</p>
          <template #reference>
            <img src="@/assets/question_mark.png" alt="说明" class="img" />
          </template>
        </el-popover>
      </el-form-item>
      <el-form-item label="分批数量：" prop="makeQty">
        <!-- <el-input
          placeholder="请输入分批数量"
          v-model="batchesForm.makeQty"
          type="number"
          oninput="value=value.replace(/[^\d]/g,'')"
        ></el-input> -->
        <el-input-number
          v-model="batchesForm.makeQty"
          controls-position="right"
          :min="1"
        ></el-input-number>
      </el-form-item>
      <el-form-item label="分批原因：" prop="batchReason">
        <el-select placeholder="请选择分批原因" v-model="batchesForm.batchReason">
          <el-option value="1" label="返工"></el-option>
          <el-option value="2" label="关闭"></el-option>
          <el-option value="3" label="其他"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="车间订单号：" prop="batchReason"> 
        {{ batchesInfo.woCode }}
      </el-form-item>
      <el-form-item label="流程卡号：" prop="batchReason">
        {{ batchesInfo.cardNo }} </el-form-item>
      <el-form-item label="批次号：" prop="batchReason">
        {{ batchesInfo.batchNo }} 
       </el-form-item>
    </el-form>
    <template #footer>
      <span class="dialog-footer">
        <el-button @click="closeDialog">取 消</el-button>
        <el-button type="primary" @click="submit()" :loading="saveLoading">确 认</el-button>
      </span>
    </template>
  </el-dialog>
</template>

<script>
import { inBatches, batchesPrepare } from '@/api/productionManagement/productionMonitoring';
export default {
  props: {
    showBatches: {
      type: Boolean,
      default: false,
    },
    itemData: {
      type: Array,
      default: () => [],
    },
  },
  data() {
    return {
      saveLoading: false,
      isOpen: false,
      batchesForm: {},
      batchesRules: {
        makeQty: [{ required: true, message: '请输入分批数量', trigger: 'blur' }],
        batchReason: [{ required: true, message: '请选择分批原因', trigger: 'blur' }],
      },
      batchesInfo: {}, //分批数据
    };
  },
  mounted() {
    this.init();
  },
  methods: {
    init() {
      batchesPrepare(this.itemData[0].woId).then(res => {
        this.batchesInfo = res.data.data;
        console.log(this.batchesInfo, 98989898);
      });
    },
    // 关闭弹窗
    closeDialog() {
      this.$emit('closeDialog');
      this.$refs.batchesForm.resetFields();
    },
    submit() {
      this.$refs.batchesForm.validate(valid => {
        if (valid) {
          this.saveLoading = true;
          let query = {
            id: this.batchesInfo.id,
            batchNo: this.batchesInfo.batchNo,
            cardNo: this.batchesInfo.cardNo,
            woCode: this.batchesInfo.woCode,
            makeQty: this.batchesForm.makeQty,
            batchReason: this.batchesForm.batchReason,
          };
          inBatches(query)
            .then(res => {
              this.$message.success('操作成功');
              this.saveLoading = false;
              this.closeDialog();
            })
            .catch(err => {
              this.saveLoading = false;
            });
        } else {
          this.saveLoading = false;
          console.log('error submit!!');
          return false;
        }
      });
    },
  },
};
</script>

<style scoped>
.icon-right {
  position: relative !important;
  display: block !important;
  text-align: left !important;
  height: auto !important;
  overflow: visible !important;
}

.icon-right .img {
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 20px !important;
  height: 20px !important;
  cursor: pointer;
  display: inline-block !important;
  background: #fff;
}

.icon-right .el-form-item__content {
  margin-left: 0 !important;
  width: 100% !important;
  text-align: left !important;
}
</style>
