<template>
  <div class="ele-body">
    <!-- <el-card shadow="never"> -->
    <el-form ref="form" :model="form" label-width="130px">
      <!-- <headerTitle title="收货信息"></headerTitle> -->
      <el-row>
        <el-col :span="8">
          <el-form-item label="供应商名称：" prop="supplierName">
            {{ form.supplierName }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="供应商联系人：" prop="linkName">
            {{ form.linkName }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="供应商电话：" prop="linkPhone">
            {{ form.linkPhone }}
          </el-form-item>
        </el-col>
        <!-- <el-form-item
            label="客户地址："
            prop="partaAddress"
            style="margin-bottom: 16px"
          >
            {{ form.receiveAddress }}
          </el-form-item> -->
        <el-col :span="8">
          <el-form-item label="车牌号：" prop="carNo">
            {{ form.carNo }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item prop="receiveDate" label="收货日期：">
            {{ form.receiveDate }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="收货单编码：" prop="receiveNo">
            {{ form.receiveNo }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item prop="orderNo" label="订单编码：">
            {{ form.orderNo }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item prop="outsourceSendCode" label="委外发货单编码：">
            {{ form.outsourceSendCode }}
          </el-form-item>
        </el-col>
        <!-- <el-col :span="8">
          <el-form-item prop="pricingWay" label="计价方式：">
            {{ form.pricingWay == 1 ? '按数量计费' : '按重量计费' }}
          </el-form-item>
        </el-col> -->
        <el-col :span="8">
          <el-form-item label="制单人：" prop="makerName">
            {{ form.makerName }}
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="审核状态：" prop="reviewStatus">
            {{ reviewStatusEnum[form.reviewStatus]?.label }}
          </el-form-item>
        </el-col>

        <el-col :span="8">
          <el-form-item label="附件：" prop="receiveFiles">
            <fileMain v-model="form.receiveFiles" type="view"></fileMain>
          </el-form-item>
        </el-col>
        <!-- <el-form-item prop="replied" label="是否回执：">
            {{ form.replied == 1 ? '是' : '否' }}
          </el-form-item> -->
      </el-row>
    </el-form>
    <div class="fontSize" style="margin-bottom: 12px">物品清单</div>
    <ele-pro-table
      ref="table"
      :needPage="false"
      :columns="columns"
      :toolkit="[]"
      :datasource="detailData.productList"
      row-key="id"
      max-height="500px"

    >
      <template v-slot:technicalDrawings="{ row }">
        <fileMain v-model="row.receiveFiles" type="view"></fileMain>
      </template>
    </ele-pro-table>
    <!-- </el-card> -->
  </div>
</template>

<script>
  import { reviewStatusEnum } from '@/enum/dict';
  import dictMixins from '@/mixins/dictMixins';
  import { lbjtList } from '@/enum/dict.js';
  import { levelList } from '@/enum/dict.js';
  // import fileMain from '@/components/addDoc/index.vue';
  export default {
    // components: { fileMain },
    mixins: [dictMixins],

    props: {
      form: { type: Object, default: () => {} },
      detailData: { type: Object, default: () => {} }
    },

    data() {
      return {
        reviewStatusEnum,
        columns: [
          {
            width: 45,
            type: 'index',
            columnKey: 'index',
            align: 'center',
            fixed: 'left'
          },
          {
            width: 200,
            prop: 'productName',
            label: '名称',
            slot: 'productName',
            align: 'center'
          },
          {
            width: 120,
            prop: 'productCode',
            label: '编码',
            slot: 'productCode',
            align: 'center'
          },
          {
            width: 200,
            prop: 'productCategoryName',
            label: '类型',
            slot: 'productCategoryName',
            align: 'center'
          },
          {
            width: 160,
            prop: 'productBrand',
            label: '牌号',
            slot: 'productBrand',
            align: 'center'
          },
          {
            width: 120,
            prop: 'modelType',
            label: '型号',
            slot: 'modelType',
            align: 'center'
          },
          {
            width: 120,
            prop: 'produceType',
            align: 'center',
            label: '属性类型',
            showOverflowTooltip: true,
            formatter: (row, column) => {
              if (row.produceType) {
                return row.produceType
                  .map((item) => {
                    return lbjtList[item];
                  })
                  .toString();
              }
            }
          },
          {
            width: 120,
            prop: 'packingSpecification',
            align: 'center',
            label: '包装规格',
            showOverflowTooltip: true
          },
          {
            width: 120,
            prop: 'supplierMark',
            label: '供应商代号',
            slot: 'supplierMark',
            align: 'center'
          },
          {
            width: 120,
            prop: 'specification',
            label: '规格',
            slot: 'specification',
            align: 'center'
          },
          {
            width: 200,
            prop: 'warehouseName',
            label: '仓库名称',
            slot: 'warehouseName',
            align: 'center'
          },
          {
            width: 80,
            prop: 'totalCount',
            label: '进货数量',
            slot: 'totalCount',
            align: 'center'
          },
          {
            width: 120,
            prop: 'orderTotalCount',
            label: '总数量',
            slot: 'orderTotalCount',
            align: 'center'
          },
          {
            minWidth: 120,
            prop: 'taskName',
            label: '工序',
            slot: 'taskName',
            align: 'center'
          },
          {
            width: 80,
            prop: 'measuringUnit',
            label: '计量单位',
            slot: 'measuringUnit',
            align: 'center'
          },
          {
            width: 120,
            prop: 'singleWeight',
            label: '单重',
            slot: 'singleWeight',
            align: 'center'
          },
          {
            width: 200,
            prop: 'sendTotalWeight',
            label: '发货总重',
            slot: 'sendTotalWeight',
            align: 'center',
            headerSlot: 'headerTotalCount'
          },
          {
            width: 100,
            prop: 'receiveTotalWeight',
            label: '收货总重',
            slot: 'receiveTotalWeight',
            align: 'center'
          },
          {
            width: 100,
            prop: 'increaseTotalWeight',
            label: '增重重量',
            slot: 'increaseTotalWeight',
            align: 'center'
          },
          {
            width: 100,
            prop: 'weightUnit',
            label: '重量单位',
            slot: 'weightUnit',
            align: 'center'
          },
          {
            width: 160,
            prop: 'pricingWay',
            label: '计价方式',
            slot: 'pricingWay',
            align: 'center',
            formatter: (row, column) => {
              return row.pricingWay == 1
                ? '按数量计费'
                : row.pricingWay == 2
                ? '按重量计费'
                : '';
            }
          },
          {
            minWidth: 120,
            prop: 'goodsLevel',
            label: '物品级别',
            formatter: (_row, _column, cellValue) => {
              return levelList.find((item) => item.value == _row.goodsLevel)
                ?.label;
            },
            align: 'center'
          },
          {
            width: 160,
            prop: 'singlePrice',
            label: '单价',
            slot: 'singlePrice',
            align: 'center'
          },
          {
            width: 120,
            prop: 'taxRate',
            label: '税率',
            formatter: (_row, _column, cellValue) => {
              return _row.taxRate ? _row.taxRate + '%' : '';
            },
            align: 'center'
          },
          {
            width: 150,
            prop: 'notaxSinglePrice',
            label: '不含税单价',
            align: 'center'
          },
          {
            width: 160,
            prop: 'discountSinglePrice',
            label: '折后单价',
            slot: 'discountSinglePrice',
            align: 'center'
          },
          {
            width: 120,
            prop: 'totalPrice',
            label: '合计',
            slot: 'totalPrice',
            align: 'center'
          },
          {
            width: 160,
            prop: 'discountTotalPrice',
            label: '折后合计',
            slot: 'discountTotalPrice',
            align: 'center'
          },
          {
            prop: 'provenance',
            label: '产地',
            slot: 'provenance',
            align: 'center',
            minWidth: 200,
            showOverflowTooltip: true,
            formatter: (row, column) => {
              return row.provenance && row.provenance.length
                ? row.provenance
                    .map((item) => this.getDictValue('产地', item))
                    .join(',')
                : '';
            }
          },
          // {
          //   width: 80,
          //   prop: 'deliveryDays',
          //   label: '交期(天)',
          //   slot: 'deliveryDays',
          //   align: 'center'
          // },
          {
            width: 160,
            prop: 'deliveryDeadline',
            label: '交期截止日期',
            slot: 'deliveryDeadline',
            align: 'center'
          },
          {
            width: 200,
            prop: 'guaranteePeriod',
            label: '有效期',
            slot: 'guaranteePeriod',
            align: 'center',
            formatter: (_row, _column, cellValue) => {
              return (
                (_row.guaranteePeriod || '') + _row.guaranteePeriodUnitName
              );
            }
          },
          {
            width: 160,
            prop: 'guaranteePeriodDeadline',
            label: '有效期截止日期',
            slot: 'guaranteePeriodDeadline',
            align: 'center'
          },
          {
            width: 130,
            prop: 'technicalAnswerName',
            label: '技术答疑人',
            slot: 'technicalAnswerName',
            align: 'center'
          },
          {
            width: 220,
            prop: 'technicalParams',
            label: '技术参数',
            slot: 'technicalParams',
            align: 'center'
          },
          {
            width: 240,
            prop: 'technicalDrawings',
            label: '技术图纸',
            slot: 'technicalDrawings',
            align: 'center'
          },
          {
            width: 220,
            prop: 'remark',
            label: '备注',
            slot: 'remark',
            align: 'center'
          }
        ]
      };
    },
    created() {
      console.log(this.detailData, 'detailData');
      this.requestDict('产地');
      this.requestDict('生产类型');
    },
    methods: {}
  };
</script>

<style scoped lang="scss">
  .fontSize {
    font-size: 14px;
    font-weight: bold;
  }
</style>
