<template>
  <div class="app-container">
    <!-- 筛选条件 -->
    <div>
      <el-form
        ref="screenForm"
        :model="screenForm"
        label-width="70px"
        size="small"
        label-position="left"
      >
        <el-row :gutter="20">
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="存货编码" prop="materialNumber">
              <el-input
                placeholder="请输入存货编码"
                v-model="screenForm.materialNumber"
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="存货名称" prop="materialName">
              <el-input
                placeholder="请输入存货名称"
                v-model="screenForm.materialName"
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="生效日期" prop="startDate">
              <el-date-picker
                v-model="screenForm.startDate"
                type="datetime"
                placeholder="请输入生效日期"
                value-format="yyyy-MM-dd HH:mm:ss"
              >
              </el-date-picker>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="失效日期" prop="endDate">
              <el-date-picker
                v-model="screenForm.endDate"
                type="datetime"
                placeholder="请输入生效日期"
                value-format="yyyy-MM-dd HH:mm:ss "
              >
              </el-date-picker>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="销售类型" prop="saleTypeId">
              <el-input
                placeholder="请输入销售类型"
                v-model="screenForm.saleTypeId"
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="产品品类" prop="categoryId">
              <el-select
                placeholder="请选择产品品类"
                v-model="screenForm.categoryId"
              >
                <el-option
                  v-for="item in dictList"
                  :label="item.dictValue"
                  :value="item.sysDictId"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :lg="6">
            <el-form-item label="规格型号" prop="specification">
              <el-input
                placeholder="请输入规格型号"
                v-model="screenForm.specification"
              ></el-input>
            </el-form-item>
          </el-col>

          <el-col :xs="24" :sm="24" :lg="24" class="tr">
            <el-form-item label="">
              <el-button size="small" @click="resetScreenForm">清空</el-button>
              <el-button size="small" type="primary" @click="submitScreenForm"
                >搜索</el-button
              >
            </el-form-item>
          </el-col>
        </el-row>
      </el-form>
    </div>
    <!-- 按钮 -->
    <div class="btn-group clearfix">
      <div class="fr">
        <el-button type="primary" size="small">导出</el-button>
        <el-button type="primary" size="small">打印</el-button>
      </div>
    </div>
    <div class="mymain-container">
      <!-- 列表 -->
      <div class="table">
        <el-table
          v-loading="listLoading"
          :data="dataList"
          element-loading-text="Loading"
          border
          fit
          highlight-current-row
          stripe
        >
          <el-table-column type="selection" align="center"></el-table-column>
          <el-table-column
            align="center"
            label="产品品类"
            prop="categoryId"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="存货编码"
            prop="categoryNumber"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="存货名称"
            prop="categoryName"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>

          <el-table-column
            align="center"
            label="规格型号"
            prop="specification"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="销售类型"
            prop="saleTypeId"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="主计量单位名称"
            prop="company"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="数量下限"
            prop="qty"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="返利比例"
            prop="rebateUseRate"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="生效日期"
            prop="startDate"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>

          <el-table-column
            align="center"
            label="失效日期"
            prop="endDate"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="是否促销价"
            prop="isPromote"
            min-width="160"
            show-overflow-tooltip
          >
            <template slot-scope="scope">
              <el-tag type="success" v-if="scope.row.isPromote">是</el-tag>
              <el-tag type="danger" v-else>否</el-tag>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            label="是否促作废"
            prop="isRevoke"
            min-width="160"
            show-overflow-tooltip
          >
            <template slot-scope="scope">
              <el-tag type="success" v-if="scope.row.isRevoke">是</el-tag>
              <el-tag type="danger" v-else>否</el-tag>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            label="批发价1"
            prop="batchPrice"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
          <el-table-column
            align="center"
            label="备注"
            prop="remark"
            min-width="160"
            show-overflow-tooltip
          ></el-table-column>
        </el-table>
      </div>
      <!-- 分页 -->
      <div class="fr">
        <el-pagination
          @size-change="handleSizeChange"
          @current-change="handleCurrentChange"
          :current-page="currentPage"
          :page-sizes="[10, 20, 30, 50]"
          :page-size="10"
          layout="total, sizes, prev, pager, next, jumper"
          :total="listTotal"
        >
        </el-pagination>
      </div>
    </div>
  </div>
</template>

<script>
import Mixin from "@/mixin/index";
import { getProductPriceList } from "@/api/basic_data/material";
import { getDictList } from "@/api/common";
import { downloadFiles, parseTime } from "@/utils/util";
export default {
  mixins: [Mixin],
  data() {
    return {
      currentPage: 1, // 当前页码
      pageSize: 10, // 每页数量
      listTotal: 0, // 列表总数

      dataList: [
        {
          productCategory: "家用空调",
          code: "2022051775",
          name: "夏之凉变频1",
          number: "",
          specs: "DAD-26GW/",
          salesType: "*一票机*",
          company: "套",
          lowerLimit: "",
          rebateRatio: "",
          effectiveDate: "",
          ExpiryDate: "",
          isPromote: "",
          cancellation: "",
          wholesaleOne: "3,299.00",
          remarks: "*常规机*",
        },
        {
          productCategory: "家用空调",
          code: "2022051775",
          name: "夏之凉变频1",
          number: "",
          specs: "DAD-26GW/",
          salesType: "*一票机*",
          company: "套",
          lowerLimit: "",
          rebateRatio: "",
          effectiveDate: "",
          ExpiryDate: "",
          promotion: "",
          cancellation: "",
          wholesaleOne: "3,299.00",
          remarks: "*常规机*",
        },
        {
          productCategory: "家用空调",
          code: "2022051775",
          name: "夏之凉变频1",
          number: "",
          specs: "DAD-26GW/",
          salesType: "*一票机*",
          company: "套",
          lowerLimit: "",
          rebateRatio: "",
          effectiveDate: "",
          ExpiryDate: "",
          promotion: "",
          cancellation: "",
          wholesaleOne: "3,299.00",
          remarks: "*常规机*",
        },
        {
          productCategory: "家用空调",
          code: "2022051775",
          name: "夏之凉变频1",
          number: "",
          specs: "DAD-26GW/",
          salesType: "*一票机*",
          company: "套",
          lowerLimit: "",
          rebateRatio: "",
          effectiveDate: "",
          ExpiryDate: "",
          promotion: "",
          cancellation: "",
          wholesaleOne: "3,299.00",
          remarks: "*常规机*",
        },
      ],
      screenForm: {
        categoryId: "",
        endDate: "",
        materialName: "",
        materialNumber: "",
        saleTypeId: "",
        specification: "",
        startDate: "",
      },
      dictList: {},
    };
  },
  mounted() {
    getDictList({ sysDictEnum: "PRODUCT_TYPE" }).then((res) => {
      this.dictList = res.data;
    });
  },
  methods: {
    addFn() {
      this.showDialogForm = true;
    },
    getList() {
      this.listLoading = true;
      let params = {
        pageNum: this.currentPage,
        pageSize: this.pageSize,
        categoryId: this.screenForm.categoryId,
        endDate: this.screenForm.endDate,
        materialName: this.screenForm.materialName,
        materialNumber: this.screenForm.materialNumber,
        saleTypeId: this.screenForm.saleTypeId,
        specification: this.screenForm.specification,
        startDate: this.screenForm.startDate,
      };
      getProductPriceList(params).then((res) => {
        this.dataList = res.data.records;
        this.listTotal = res.data.total;
        this.listLoading = false;
      });
    },
  },
};
</script>

<style lang="scss" scoped>
::v-deep .el-select--small {
  width: 100%;
}
</style>
