<template>
  <div class="app-container">
    <el-form
      :model="queryParams"
      ref="queryForm"
      :inline="true"
      v-show="showSearch"
      label-width="88px"
    >
      <el-form-item label="业务编号" prop="fbillno">
        <el-input
          v-model="queryParams.fbillno"
          placeholder="请输入业务编号"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="制单人" prop="createBy">
        <el-input
          v-model="queryParams.createBy"
          placeholder="请输入制单人"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="制单日期" prop="createTime">
        <el-date-picker
          clearable
          size="small"
          style="width: 400px"
          v-model="queryParams.createTime"
          type="date"
          value-format="timestamp"
          placeholder="选择制单日期"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item label="贸易方式" prop="ftrademodeid">
        <el-input
          v-model="queryParams.ftrademodeid"
          placeholder="请输入贸易方式"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="货权方" prop="fCorpid">
        <el-input
          v-model="queryParams.fCorpid"
          placeholder="请输入货权方"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="经营单位" prop="fsbu">
        <el-input
          v-model="queryParams.fsbu"
          placeholder="请输入经营单位"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="提单号" prop="fmblno">
        <el-input
          v-model="queryParams.fmblno"
          placeholder="请输入提单号"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="报关单号" prop="fcustomsdeclartion">
        <el-input
          v-model="queryParams.fcustomsdeclartion"
          placeholder="请输入报关单号"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="货物名称" prop="fgoodsid">
        <el-select
          v-model="queryParams.fgoodsid"
          placeholder="请选择货物名称"
          clearable
          size="small"
        >
          <el-option label="请选择字典生成" value=""/>
        </el-select>
      </el-form-item>
      <el-form-item label="箱型" prop="fcntrtype">
        <el-select
          v-model="queryParams.fcntrtype"
          placeholder="请选择箱型"
          clearable
          size="small"
        >
          <el-option label="请选择字典生成" value=""/>
        </el-select>
      </el-form-item>
      <el-form-item label="箱量" prop="fCntqty">
        <el-input
          v-model="queryParams.fCntqty"
          placeholder="请输入箱量"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="仓库" prop="fwarehouseid">
        <el-input
          v-model="queryParams.fwarehouseid"
          placeholder="请输入仓库"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item>
        <el-button
          type="cyan"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
        >搜索
        </el-button
        >
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
        >重置
        </el-button
        >
      </el-form-item>
    </el-form>

    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          icon="el-icon-plus"
          size="mini"
          @click="handleAdd"
          v-hasPermi="['warehouseBusiness:warehousebills:add']"
        >新增
        </el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="success"
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleUpdate"
          v-hasPermi="['warehouseBusiness:warehousebills:edit']"
        >修改
        </el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="danger"
          icon="el-icon-delete"
          size="mini"
          :disabled="multiple"
          @click="handleDelete"
          v-hasPermi="['warehouseBusiness:warehousebills:remove']"
        >删除
        </el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="warning"
          icon="el-icon-download"
          size="mini"
          @click="handleExport"
          v-hasPermi="['warehouseBusiness:warehousebills:export']"
        >导出
        </el-button
        >
      </el-col>
      <right-toolbar
        :showSearch.sync="showSearch"
        @queryTable="getList"
      ></right-toolbar>
    </el-row>

    <el-table
      v-loading="loading"
      :data="warehousebillsList"
      @selection-change="handleSelectionChange"
    >
      <el-table-column type="selection" width="55" align="center"/>
      <el-table-column type="index" label="序号" align="center"/>
      <el-table-column label="业务编号" align="center" prop="fbillno"/>
      <el-table-column label="制单人" align="center" prop="createBy"/>
      <el-table-column label="客户名称" align="center" prop="fcorpid"/>
      <el-table-column label="贸易方式" align="center" prop="ftrademodeid"/>
      <!-- <el-table-column label="货转客户名称" align="center" prop="fTocorpid" /> -->
      <el-table-column label="入库毛重" align="center" prop="fgrossweight"/>
      <!-- <el-table-column
        label="入库日期"
        align="center"
        prop="fcreatetime"
        width="180"
      >
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.fcreatetime, "{y}-{m}-{d}") }}</span>
        </template>
      </el-table-column> -->
      <el-table-column label="入库件数" align="center" prop="fQty"/>
      <el-table-column label="入库毛重" align="center" prop="fGrossweight"/>
      <el-table-column
        label="净重"
        align="center"
        prop="fNetweight"
      />
      <el-table-column
        label="状态"
        align="center"
        prop="fBillstatus"
        :formatter="fBillstatusFormat"
      />
      <el-table-column
        label="是否质押"
        align="center"
        prop="fIfpledge"
        :formatter="fIfpledgeFormat"
      />
      <el-table-column label="质押银行" align="center" prop="fBankcorpid"/>
      <el-table-column label="业务编号" align="center" prop="fBillno"/>
      <el-table-column label="报关号" align="center" prop="fCustomno"/>
      <el-table-column
        label="原始业务编号,入库时和f_billno 相同，出库 取入库的f_originalbillno"
        align="center"
        prop="fOriginalbillno"
      />
      <el-table-column label="制单部门" align="center" prop="fDeptid"/>
      <el-table-column label="业务所属部门" align="center" prop="fBsdeptid"/>
      <el-table-column label="联系人" align="center" prop="fContacts"/>
      <el-table-column label="电话" align="center" prop="fTel"/>
      <el-table-column
        label="货权方，t_corps 中的no或 name，模糊查找选择后，存储id，显示name"
        align="center"
        prop="fCorpid"
      />
      <el-table-column
        label="货转客户名称，t_corps 中的no或 name，模糊查找选择后，存储id，显示name，自有在货权转移是该字段有效"
        align="center"
        prop="fTocorpid"
      />
      <el-table-column
        label="结算方式，默认提取corps中stltypeid	也可以从表t_stltypes中下拉选择，存储id，显示name"
        align="center"
        prop="fStltypeid"
      />
      <el-table-column
        label="客户存货编号,格式编号客户编号+YYYY +NNNN，
编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用，每年从001开始"
        align="center"
        prop="fBscorpno"
      />
      <el-table-column label="仓库" align="center" prop="fWarehouseid"/>
      <el-table-column label="仓管人" align="center" prop="fStorekeeper"/>
      <el-table-column
        label="计划件数,由明细表自动合计生成"
        align="center"
        prop="fPlanqty"
      />
      <el-table-column
        label="计划毛重,由明细表自动合计生成"
        align="center"
        prop="fPlangrossweight"
      />
      <el-table-column
        label="计划净重,由明细表自动合计生成"
        align="center"
        prop="fPlannetweight"
      />
      <el-table-column
        label="计划尺码,由明细表自动合计生成"
        align="center"
        prop="fPlanvolumn"
      />
      <el-table-column
        label="尺码，由明细表自动合计生成"
        align="center"
        prop="fVolumn"
      />
      <el-table-column
        label="贸易方式(数据字典),对应t_trademodels "
        align="center"
        prop="fTrademodeid"
        :formatter="fTrademodeidFormat"
      />
      <el-table-column label="经营单位(客户列表)" align="center" prop="fSbu"/>
      <el-table-column
        label="计费单位(数据字典),下拉选择毛重或净重"
        align="center"
        prop="fFeetunit"
        :formatter="fFeetunitFormat"
      />
      <el-table-column label="提单号" align="center" prop="fMblno"/>
      <el-table-column
        label="提单号"
        align="center"
        prop="fVslvoy"
      />
      <el-table-column label="到港日期" align="center" prop="fEta" width="180">
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.fEta, "{y}-{m}-{d}") }}</span>
        </template>
      </el-table-column>
      <el-table-column label="报关单号" align="center" prop="fCustomno"/>
      <el-table-column
        label="是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择"
        align="center"
        prop="fIfweigh"
        :formatter="fIfweighFormat"
      />
      <el-table-column
        label="单据类型(数据字典)SJRK"
        align="center"
        prop="fBilltype"
        :formatter="fBilltypeFormat"
      />
      <el-table-column label="备注" align="center" prop="remark"/>
      <el-table-column
        label="操作"
        align="center"
        class-name="small-padding fixed-width"
      >
        <template slot-scope="scope">
          <el-button
            size="mini"
            type="text"
            icon="el-icon-edit"
            @click="handleUpdate(scope.row)"
            v-hasPermi="['warehouseBusiness:warehousebills:edit']"
          >修改
          </el-button
          >
          <el-button
            size="mini"
            type="text"
            icon="el-icon-delete"
            @click="handleDelete(scope.row)"
            v-hasPermi="['warehouseBusiness:warehousebills:remove']"
          >删除
          </el-button
          >
        </template>
      </el-table-column>
    </el-table>
    <pagination
      v-show="total > 0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />
    <!-- 添加或修改仓库主(出入库)对话框 -->
    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="80%" append-to-body>
      <el-form
        style="height: 500px"
        ref="form"
        :model="form"
        :rules="rules"
        label-width="120px"
      >
        <el-row>
          <el-col :span="8">
            <el-form-item label="制单人" prop="createBy">
              <el-input disabled v-model="form.createBy" style="width: 220px" placeholder="制单人"/>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="制单部门" prop="fDeptid">
              <el-select
                v-model="form.fDeptid"
                filterable
                disabled
                style="width: 220px"
                remote>
                <el-option
                  v-for="dict in deptOptions"
                  :key="dict.deptId"
                  :label="dict.deptName"
                  :value="dict.deptId"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item disabled label="制单日期" prop="fbilldate">
              <el-date-picker
                v-model="form.createTime"
                size="large"
                type="date"
                disabled
                value-format="timestamp"
                placeholder="制单日期"
              >
              </el-date-picker>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="货权方" prop="fcorpid">
              <el-select
                v-model="form.fCorpid"
                filterable
                remote
                style="width: 220px"
                :remote-method="corpsRemoteMethod"
                placeholder="请选择货权方">
                <el-option
                  v-for="dict in fMblnoOptions"
                  :key="dict.fId"
                  :label="dict.fName"
                  :value="dict.fId"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="联系人" prop="fContacts">
              <el-select
                v-model="form.fContacts"
                filterable
                remote
                :remote-method="userRemoteMethod"
                style="width: 220px"
                placeholder="请选择联系人">
                <el-option
                  v-for="dict in userOptions"
                  :key="dict.userName"
                  :label="dict.nickName"
                  :value="dict.userName"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="电话" prop="ftel">
              <el-input v-model="form.fTel" style="width: 220px" placeholder="请输入电话"/>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="提单号" prop="fmblno">
              <el-input v-model="form.fMblno" style="width: 220px" placeholder="请输入提单号"/>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="船名航次" prop="fvslvoy">
              <el-input v-model="form.fVslvoy" style="width: 220px" placeholder="船名航次"/>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="到港日期" prop="feta">
              <el-date-picker
                v-model="form.fEta"
                style="width: 220px"
                type="date"
                value-format="timestamp"
                placeholder="到港日期"
              >
              </el-date-picker>
            </el-form-item>
          </el-col>
        </el-row>

        <el-row>
          <el-col :span="8">
            <el-form-item label="报关单号" prop="fcustomno">
              <el-input v-model="form.fCustomno" style="width: 220px" laceholder="报关单号"/>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="贸易方式" prop="ftrademodeid">
              <el-select v-model="form.fTrademodeid" placeholder="请选择贸易方式" clearable style="width: 220px">
                <el-option
                  v-for="dict in fTrademodeidOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="结算方式" prop="fstltypeid">
              <el-select
                v-model="form.fStltypeid"
                placeholder="请选择结算方式"
                clearable
                style="width: 220px;"
              >
                <el-option
                  v-for="dict in fStltypeOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="仓库" prop="fwarehouseid">
              <el-select
                v-model="form.fWarehouseid"
                filterable
                remote
                style="width: 220px"
                :remote-method="warehouseRemoteMethod"
                placeholder="请选择仓库">
                <el-option
                  v-for="dict in warehouseOptions"
                  :key="dict.fId"
                  :label="dict.fName"
                  :value="dict.fId"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="仓管员" prop="fstorekeeper">
              <el-input v-model="form.fStorekeeper" placeholder="请输入仓管员" style="width: 220px"/>
            </el-form-item>
          </el-col><el-col :span="8">
          <el-form-item label="入库日期" prop="fbsdate">
            <el-date-picker
              v-model="form.fBsdate"
              style="width: 220px"
              type="date"
              value-format="timestamp"
              placeholder="入库日期"
            >
            </el-date-picker>
          </el-form-item>
        </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="是否质押" prop="fifpledge">
              <el-select
                v-model="form.fIfpledge"
                placeholder="请选择是否过磅"
                clearable
                style="width: 220px"
              >
                <el-option
                  v-for="dict in fIfpledgeOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="银行名称" prop="fbankcorpid">
              <el-input v-model="form.fBankcorpid" laceholder="银行名称" style="width: 220px"/>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="经营单位" prop="fsbu">
              <el-select
                v-model="form.fSbu"
                filterable
                remote
                :remote-method="fSbuRemoteMethod"
                style="width: 220px"
                placeholder="请选择经营单位">
                <el-option
                  v-for="dict in fSbuOptions"
                  :key="dict.fId"
                  :label="dict.fName"
                  :value="dict.fId"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="是否过磅" prop="fifweigh">
              <el-select
                v-model="form.fIfweigh"
                placeholder="请选择是否过磅"
                clearable
                style="width: 220px"
              >
                <el-option
                  v-for="dict in fIfweighOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="是否破损" prop="fifdamage">
              <el-select
                v-model="form.fIfdamage"
                placeholder="请选择是否破损"
                clearable
                style="width: 220px"
              >
                <el-option
                  v-for="dict in fIfdamageOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="客户存货编号" prop="fbscorpno">
              <el-input v-model="form.fBscorpno" style="width: 220px" laceholder="客户存货编号"/>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="8">
            <el-form-item label="计费方式" prop="fbillingway">
              <el-select v-model="form.fBillingway "
                         placeholder="请选择计费方式"
                         clearable
                         style="width: 220px"
              >
                <el-option
                  v-for="dict in fFeetunitOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="计费单位" prop="ffeetunit">
              <el-select
                v-model="form.fFeetunit"
                placeholder="请选择计费单位"
                clearable
                style="width: 220px"
              >
                <el-option
                  v-for="dict in fFeetunitOptions"
                  :key="dict.dictValue"
                  :label="dict.dictLabel"
                  :value="dict.dictValue"
                />
              </el-select>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-form-item label="备注" prop="remark">
            <el-input
              style="width: 100%"
              v-model="form.remark"
              type="textarea"
              placeholder="请输入内容"
            />
          </el-form-item>
        </el-row>
      </el-form>
      <div class="dialogTableTitle flex a-center jlr">
        <h2>库存明细</h2>
        <el-button :disabled="browseStatus" @click.prevent="addRelevant()"
        >添加
        </el-button
        >
      </div>
      <el-table :data="dataList" ref="table" tooltip-effect="dark" border stripe show-summary>
        <el-table-column label="序号" type="index" width="80">
        </el-table-column>
        <el-table-column
          prop="fbsdate"
          header-align="center"
          align="center"
          label="入库日期"
        >
          <template slot-scope="scope">
            <el-date-picker
              v-model="scope.row.fBsdate"
              style="width: 375px"
              type="date"
              value-format="timestamp"
              placeholder=入库日期
            >
            </el-date-picker>
          </template>
        </el-table-column>
        <el-table-column
          prop="fgoodsid"
          header-align="center"
          align="center"
          label="品名"
        >
          <template slot-scope="scope">
            <el-select
              v-model="scope.row.fGoodsid"
              filterable
              remote
              :remote-method="goodsRemoteMethod"
              placeholder="请选择品名">
              <el-option
                v-for="dict in goodsOptions"
                :key="dict.fId"
                :label="dict.fName"
                :value="dict.fId"
              ></el-option>
            </el-select>
          </template>
        </el-table-column>
        <el-table-column
          prop="fcntrtype"
          header-align="center"
          align="center"
          label="箱型"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fCntrtype"
              placeholder="箱型"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fCntqty"
          header-align="center"
          align="center"
          label="箱量"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fCntqty"
              placeholder="箱量"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fplangrossweight"
          header-align="center"
          align="center"
          label="计划毛重"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fPlangrossweight"
              placeholder="计划毛重"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fplannetweight"
          header-align="center"
          align="center"
          label="计划净重"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fplannetweight"
              placeholder="计划净重"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fplanvolumn"
          header-align="center"
          align="center"
          label="计划尺码"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fPlanvolumn"
              placeholder="尺码"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fplanqty"
          header-align="center"
          align="center"
          label="计划件数"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fPlanqty"
              placeholder="件数"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fgrossweight"
          header-align="center"
          align="center"
          label="入库毛重"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fGrossweight"
              placeholder="入库毛重"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fnetweight"
          header-align="center"
          align="center"
          label="入库净重"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fNetweight"
              placeholder="入库净重"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fqty"
          header-align="center"
          align="center"
          label="入库件数"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fQty"
              placeholder="入库件数"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fPackagespecs"
          header-align="center"
          align="center"
          label="包装规格"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fPackagespecs"
              placeholder="包装规格"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fwarehouselocid"
          header-align="center"
          align="center"
          label="库区"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fWarehouselocid"
              placeholder="库区"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fBoxno"
          header-align="center"
          align="center"
          label="箱号"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fBoxno"
              placeholder="箱号"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fGoodsval"
          header-align="center"
          align="center"
          label="货值"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fGoodsval"
              placeholder="货值"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="ftruckno"
          header-align="center"
          align="center"
          label="车号"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fTruckno"
              placeholder="车号"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="remark"
          header-align="center"
          align="center"
          label="备注"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.remark"
              placeholder="备注"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          header-align="center"
          align="center"
          label="操作"
          width="130PX">
          <template slot-scope="scope">
            <el-button @click.native.prevent="deleteRow(scope.$index, dataList)" size="small">移除</el-button>
          </template>
        </el-table-column>
      </el-table>
      <div class="dialogTableTitle flex a-center jlr">
        <h2>附件上传</h2>
        <el-button :disabled="browseStatus" @click.prevent="addRelevt()"
        >添加
        </el-button
        >
      </div>
      <el-table
        :data="relevantAttachments"
        ref="table"
        tooltip-effect="dark"
        border
        stripe
        style="width: 100%"
        height="150"
      >
        <el-table-column label="序号" type="index" width="80">
        </el-table-column>
        <el-table-column
          prop="attachName"
          header-align="center"
          align="center"
          label="附件名称"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.attachName"
              :disabled="browseStatus"
              placeholder="附件名称"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="opUserName"
          header-align="center"
          align="center"
          label="上传人"
        >
        </el-table-column>
        <el-table-column
          prop="opDate"
          header-align="center"
          align="center"
          label="上传时间"
        >
          <template slot-scope="scope">
            <el-date-picker
              v-model="scope.row.opDate"
              type="date"
              disabled
              placeholder="上传时间"
              format="yyyy-MM-dd HH:mm"
              value-format="timestamp"
            ></el-date-picker>
          </template>
        </el-table-column>
        <el-table-column
          header-align="center"
          align="center"
          width="250PX"
          label="上传附件"
        >
          <template slot-scope="scope">
            <el-button style="float: left; height: 38px">
              <a
                :href="scope.row.attachId"
                target="_blank"
                class="buttonText"
                style="float: left; margin-left: 1px"
              >查看</a
              >
            </el-button>
            <el-upload
              class="upload-demo"
              ref="upload"
              action="node"
              :on-change="checkType"
              :disabled="browseStatus"
              :show-file-list="false"
              :auto-upload="false"
              style="float: left"
            >
              <el-button
                slot="trigger"
                @click="clickAttachId(scope.$index)"
                size="small"
                type="primary"
                style="margin-left: 5px"
              >上传
              </el-button>
            </el-upload>
            <el-button
              style="margin-left: 5px"
              @click.native.prevent="deleteAttach(scope.row)"
              :disabled="browseStatus"
              size="small"
            >删除
            </el-button>
          </template>
        </el-table-column>
        <el-table-column
          header-align="center"
          align="center"
          label="操作"
          width="130PX"
        >
          <template slot-scope="scope">
            <el-button
              @click.native.prevent="deleteRow(scope.$index, relevantAttachments)"
              :disabled="browseStatus"
              size="small"
            >移除
            </el-button>
          </template>
        </el-table-column>
      </el-table>
      <div class="dialogTableTitle flex a-center jlr">
        <h2>收款信息</h2>
        <el-button :disabled="browseStatus" @click.prevent="addCollection()"
        >添加
        </el-button
        >
      </div>
      <el-table
        :data="warehouseDrList"
        ref="table"
        tooltip-effect="dark"
        border
        stripe
        show-summary
      >
        <el-table-column label="序号" type="index" width="80">
        </el-table-column>
        <el-table-column
          prop="fcorpid"
          header-align="center"
          align="center"
          label="客户名称"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCorpid"
              :disabled="browseStatus"
              placeholder="客户名称"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="ffeeid"
          header-align="center"
          align="center"
          label="费用名称"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fFeeid"
              placeholder="费用名称"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="ffeeUnitid"
          header-align="center"
          align="center"
          label="计价单位">
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fFeeUnitid"
              placeholder="计价单位"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fQty"
          header-align="center"
          align="center"
          label="数量"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fQty"
              placeholder="数量"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="funitprice"
          header-align="center"
          align="center"
          label="单价"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fUnitprice"
              placeholder="单价"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fAmount"
          header-align="center"
          align="center"
          label="金额"
        >
          <template slot-scope="scope">
            <el-input
              disabled
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fAmount"
              placeholder="金额"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fCurrency"
          header-align="center"
          align="center"
          label="币别"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCurrency"
              :disabled="browseStatus"
              placeholder="币别"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fCxrate"
          header-align="center"
          align="center"
          label="汇率"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCxrate"
              :disabled="browseStatus"
              placeholder="汇率"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fRate"
          header-align="center"
          align="center"
          label="税率"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fRate"
              :disabled="browseStatus"
              placeholder="税率"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="remarks"
          header-align="center"
          align="center"
          label="备注"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.remarks"
              :disabled="browseStatus"
              placeholder="备注"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          header-align="center"
          align="center"
          label="操作"
          width="130PX">
          <template slot-scope="scope">
            <el-button size="small">审核费用</el-button>
            <el-button @click.native.prevent="deleteRow(scope.$index, warehouseDrList)" size="small">移除</el-button>
          </template>
        </el-table-column>
      </el-table>
      <div class="dialogTableTitle flex a-center jlr">
        <h2>付款信息</h2>
        <el-button :disabled="browseStatus" @click.prevent="addpayment()"
        >添加
        </el-button
        >
      </div>
      <el-table
        :data="warehouseCrList"
        ref="table"
        tooltip-effect="dark"
        border
        stripe
        show-summary
      >
        <el-table-column label="序号" type="index" width="80">
        </el-table-column>
        <el-table-column
          prop="fcorpid"
          header-align="center"
          align="center"
          label="客户名称"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCorpid"
              :disabled="browseStatus"
              placeholder="客户名称"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="ffeeid"
          header-align="center"
          align="center"
          label="费用名称"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fFeeid"
              placeholder="费用名称"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="ffeeUnitid"
          header-align="center"
          align="center"
          label="计价单位">
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fFeeUnitid"
              placeholder="计价单位"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fQty"
          header-align="center"
          align="center"
          label="数量"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fQty"
              placeholder="数量"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="funitprice"
          header-align="center"
          align="center"
          label="单价"
        >
          <template slot-scope="scope">
            <el-input
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fUnitprice"
              placeholder="单价"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fAmount"
          header-align="center"
          align="center"
          label="金额"
        >
          <template slot-scope="scope">
            <el-input
              disabled
              oninput="value=value.replace(/[^\d.]/g,'')"
              v-model="scope.row.fAmount"
              placeholder="金额"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fCurrency"
          header-align="center"
          align="center"
          label="币别"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCurrency"
              :disabled="browseStatus"
              placeholder="币别"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fCxrate"
          header-align="center"
          align="center"
          label="汇率"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fCxrate"
              :disabled="browseStatus"
              placeholder="汇率"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="fRate"
          header-align="center"
          align="center"
          label="税率"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.fRate"
              :disabled="browseStatus"
              placeholder="税率"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          prop="remarks"
          header-align="center"
          align="center"
          label="备注"
        >
          <template slot-scope="scope">
            <el-input
              v-model="scope.row.remarks"
              :disabled="browseStatus"
              placeholder="备注"
              show-word-limit
            />
          </template>
        </el-table-column>
        <el-table-column
          header-align="center"
          align="center"
          label="操作"
          width="130PX">
          <template slot-scope="scope">
            <el-button size="small">审核费用</el-button>
            <el-button @click.native.prevent="deleteRow(scope.$index, warehouseCrList)" size="small">移除</el-button>
          </template>
        </el-table-column>
      </el-table>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">确 定</el-button>
        <el-button @click="cancel">取 消</el-button>
      </div>
    </el-dialog>
  </div>
</template>

<script>
  import {
    listWarehousebills,
    getWarehousebills,
    delWarehousebills,
    addWarehousebills,
    updateWarehousebills,
    exportWarehousebills,
  } from "@/api/warehouseBusiness/warehouseInStock";

  import {listCorps} from "@/api/basicdata/corps";

  import {listWarehouse} from "@/api/basicdata/warehouse";

  import {listGoods} from "@/api/basicdata/goods";

  import {listUser, queryUserVal} from "@/api/system/user";

  export default {
    name: "Warehousebills",
    components: {},
    data() {
      return {
        // 遮罩层
        loading: true,
        // 选中数组
        ids: [],
        userVal: {
          userName: null,
          nickName: null,
          deptId: null
        },
        queryForm: {},
        dataList: [],
        warehouseCrList: [],
        warehouseDrList: [],
        browseStatus: false,
        relevantAttachments: [],
        // 非单个禁用
        single: true,
        // 非多个禁用
        multiple: true,
        // 显示搜索条件
        showSearch: true,
        // 总条数
        total: 0,
        // 仓库主(出入库)表格数据
        warehousebillsList: [],
        // 弹出层标题
        title: "",
        // 是否显示弹出层
        open: false,
        // 货权方(客户数据)
        fMblnoOptions: [],
        // 货权方(客户数据)
        fSbuOptions: [],
        // 操作员
        userOptions: [],
        // 操作员
        goodsOptions: [],
        // 制单部门
        deptOptions: [],
        // 仓库(仓库数据)
        warehouseOptions: [],
        // 贸易方式(数据字典),对应t_trademodels 字典
        fTrademodeidOptions: [],
        // 计费单位(数据字典),下拉选择毛重或净重字典
        fFeetunitOptions: [],
        // 结算方式(数据字典),下拉选择字典
        fStltypeOptions: [],
        // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典
        fIfweighOptions: [],
        // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典
        fIfpledgeOptions: [],
        // 是否破损(数据字典),默认F否则T字典
        fIfdamageOptions: [],
        // 单据类型(数据字典)SJRK字典
        fBilltypeOptions: [],
        // 状态(数据字典),N 入字典
        fBillstatusOptions: [],
        // 查询参数
        queryParams: {
          pageNum: 1,
          pageSize: 10,
          fBillno: null,
          createBy: null,
          createTime: null,
          fCustomsdeclartion: null,
          fOriginalbillno: null,
          fDeptid: null,
          fBsdeptid: null,
          fContacts: null,
          fTel: null,
          fCorpid: null,
          fTocorpid: null,
          fStltypeid: null,
          fBscorpno: null,
          fWarehouseid: null,
          fStorekeeper: null,
          fBsdate: null,
          fPlanqty: null,
          fPlangrossweight: null,
          fPlannetweight: null,
          fPlanvolumn: null,
          fQty: null,
          fGrossweight: null,
          fNetweight: null,
          fVolumn: null,
          fTrademodeid: null,
          fSbu: null,
          fFeetunit: null,
          fMblno: null,
          fVslvoy: null,
          fEta: null,
          fCustomno: null,
          fIfweigh: null,
          fIfpledge: null,
          fIfdamage: null,
          fBankcorpid: null,
          fBilltype: null,
          fBillstatus: null,
          fCreateby: null,
          fCreatetime: null,
          fGoodsid: null,
          fCntrtype: null,
          fCntqty: null
        },
        // 表单参数
        form: {},
        // 表单校验
        rules: {
          fDeptid: [
            {required: true, message: "制单部门不能为空", trigger: "blur"},
          ],
          fBsdeptid: [
            {required: true, message: "业务所属部门不能为空", trigger: "blur"},
          ],
          fCorpid: [
            {
              required: true,
              message:
                "客户名称，t_corps 中的no或 name，模糊查找选择后，存储id，显示name不能为空",
              trigger: "blur",
            },
          ],
          fTocorpid: [
            {
              required: true,
              message:
                "货转客户名称，t_corps 中的no或 name，模糊查找选择后，存储id，显示name，自有在货权转移是该字段有效不能为空",
              trigger: "blur",
            },
          ],
          fBscorpno: [
            {
              required: true,
              message:
                "客户存货编号,格式编号客户编号+YYYY +NNNN，编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用，每年从001开始不能为空",
              trigger: "blur",
            },
          ],
        },
      };
    },
    created() {
      this.getList();
      this.getDicts("data_trademodes").then((response) => {
        this.fTrademodeidOptions = response.data;
      });
      this.getDicts("data_unitfees").then((response) => {
        this.fFeetunitOptions = response.data;
      });
      this.getDicts("data_stltype_type").then((response) => {
        this.fStltypeOptions = response.data;
      });
      this.getDicts("data_ifweigh_status").then((response) => {
        this.fIfweighOptions = response.data;
      });
      this.getDicts("data_ifpledge_status").then((response) => {
        this.fIfpledgeOptions = response.data;
      });
      this.getDicts("data_ifdamage_status").then((response) => {
        this.fIfdamageOptions = response.data;
      });
      this.getDicts("data_billtype_type").then((response) => {
        this.fBilltypeOptions = response.data;
      });
      this.getDicts("sys_common_status").then((response) => {
        this.fBillstatusOptions = response.data;
      });
    },
    methods: {
      // 添加list
      addRelevant() {
        console.log(JSON.stringify(this.dataList))
        this.dataList.push({
          fbsdate: null,
          fgoodsid: null,
          fcntrtype: null,
          fCntqty: null,
          fplangrossweight: null,
          fplanvolumn: null,
          fplanqty: null,
          fgrossweight: null,
          fqty: null,
          fPackagespecs: null,
          fwarehouselocid: null,
          fBoxno: null,
          fGoodsval: null,
          ftruckno: null,
          remark: null
        });
      },
      // 收款信息
      addCollection() {
        var obj = {};
        this.warehouseDrList.push(obj);
      },
      addpayment() {
        var obj = {};
        this.warehouseCrList.push(obj);
      },
      queryUser() {
        queryUserVal().then((response) => {
          if (response.user !== null) {
            this.userVal = response.user
            this.$set(this.form, 'fDeptid', this.userVal.deptId)
            this.$set(this.form, 'createBy', this.userVal.userName)
            this.$set(this.form, 'createTime', Date.parse(new Date()))
          }
          if (response.dept !== null) {
            this.deptOptions = []
            this.deptOptions.push(response.dept)
          }
        });
      },
      /** 查询仓库主(出入库)列表 */
      getList() {
        this.loading = true;
        listWarehousebills(this.queryParams).then((response) => {
          this.warehousebillsList = response.rows;
          this.total = response.total;
          this.loading = false;
        });
      },
      // 贸易方式(数据字典),对应t_trademodels 字典翻译
      fTrademodeidFormat(row, column) {
        return this.selectDictLabel(this.fTrademodeidOptions, row.fTrademodeid);
      },
      // 计费单位(数据字典),下拉选择毛重或净重字典翻译
      fFeetunitFormat(row, column) {
        return this.selectDictLabel(this.fFeetunitOptions, row.fFeetunit);
      },
      // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典翻译
      fIfweighFormat(row, column) {
        return this.selectDictLabel(this.fIfweighOptions, row.fIfweigh);
      },
      // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典翻译
      fIfpledgeFormat(row, column) {
        return this.selectDictLabel(this.fIfpledgeOptions, row.fIfpledge);
      },
      // 是否破损(数据字典),默认F否则T字典翻译
      fIfdamageFormat(row, column) {
        return this.selectDictLabel(this.fIfdamageOptions, row.fIfdamage);
      },
      // 单据类型(数据字典)SJRK字典翻译
      fBilltypeFormat(row, column) {
        return this.selectDictLabel(this.fBilltypeOptions, row.fBilltype);
      },
      // 状态(数据字典),N 入字典翻译
      fBillstatusFormat(row, column) {
        return this.selectDictLabel(this.fBillstatusOptions, row.fBillstatus);
      },
      // 取消按钮
      cancel() {
        this.open = false;
        this.reset();
      },
      // 表单重置
      reset() {
        this.form = {
          fId: null,
          fBillno: null,
          fCustomsdeclartion: null,
          fOriginalbillno: null,
          fDeptid: null,
          fBsdeptid: null,
          fContacts: null,
          fTel: null,
          fCorpid: null,
          fTocorpid: null,
          fStltypeid: null,
          fBscorpno: null,
          fWarehouseid: null,
          fStorekeeper: null,
          fBsdate: null,
          fPlanqty: null,
          fPlangrossweight: null,
          fPlannetweight: null,
          fPlanvolumn: null,
          fQty: null,
          fGrossweight: null,
          fNetweight: null,
          fVolumn: null,
          fTrademodeid: null,
          fSbu: null,
          fFeetunit: null,
          fMblno: null,
          fVslvoy: null,
          fEta: null,
          fCustomno: null,
          fIfweigh: null,
          fIfpledge: null,
          fIfdamage: null,
          fBankcorpid: null,
          fBilltype: null,
          fBillstatus: null,
          delFlag: null,
          createBy: null,
          createTime: null,
          updateBy: null,
          updateTime: null,
          remark: null,
          fCreateby: null,
          fCreatetime: null,
          fGoodsid: null,
          fCntrtype: null,
          fCntqty: null
        };
        this.resetForm("form");
      },
      /** 搜索按钮操作 */
      handleQuery() {
        this.queryParams.pageNum = 1;
        this.getList();
      },
      /** 重置按钮操作 */
      resetQuery() {
        this.resetForm("queryForm");
        this.handleQuery();
      },
      // 多选框选中数据
      handleSelectionChange(selection) {
        this.ids = selection.map((item) => item.fId);
        this.single = selection.length !== 1;
        this.multiple = !selection.length;
      },
      /** 新增按钮操作 */
      handleAdd() {
        this.reset();
        this.queryUser()
        this.open = true;
        this.title = "入库单";
      },
      /** 修改按钮操作 */
      handleUpdate(row) {
        this.reset();
        const fId = row.fid || this.ids;
        getWarehousebills(row.fid).then((response) => {
          this.form = response.data.warehousebills;
          this.$set(this.form, 'fCorpid', response.data.warehousebills.fcorpid)
          this.$set(this.form, 'fWarehouseid', response.data.warehousebills.fwarehouseid)
          this.$set(this.form, 'fContacts', response.data.warehousebills.fcontacts)
          this.$set(this.form, 'fTel', response.data.warehousebills.ftel)
          this.$set(this.form, 'fMblno', response.data.warehousebills.fmblno)
          this.$set(this.form, 'fBsdate', Date.parse(response.data.warehousebills.fbsdate))
          this.$set(this.form, 'fStorekeeper', response.data.warehousebills.fstorekeeper)
          this.$set(this.form, 'createBy', response.data.warehousebills.createBy)
          this.$set(this.form, 'fDeptid', response.data.warehousebills.fdeptid)
          this.$set(this.form, 'fDilldate', Date.parse(response.data.warehousebills.fbilldate))
          this.$set(this.form, 'fVslvoy', response.data.warehousebills.fvslvoy)
          this.$set(this.form, 'fEta', Date.parse(response.data.warehousebills.feta))
          this.$set(this.form, 'createTime', Date.parse(response.data.warehousebills.createTime))
          this.$set(this.form, 'fTrademodeid', response.data.warehousebills.ftrademodeid + '')
          this.$set(this.form, 'fBillingway', response.data.warehousebills.fbillingway + '')
          this.$set(this.form, 'fFeetunit', response.data.warehousebills.ffeetunit + '')
          this.$set(this.form, 'fBscorpno', response.data.warehousebills.fbscorpno)
          this.$set(this.form, 'fCustomno', response.data.warehousebills.fcustomno)
          this.$set(this.form, 'fStltypeid', response.data.warehousebills.fstltypeid + '')
          this.$set(this.form, 'fIfweigh', response.data.warehousebills.fifweigh + '')
          this.$set(this.form, 'fIfdamage', response.data.warehousebills.fifdamage + '')
          this.$set(this.form, 'fSbu', response.data.warehousebills.fsbu)
          this.$set(this.form, 'fIfpledge', response.data.warehousebills.fifpledge + '')
          this.$set(this.form, 'fBankcorpid', response.data.warehousebills.fbankcorpid)
          this.$set(this.form, 'remark', response.data.warehousebills.remark)
          this.deptOptions = []
          this.deptOptions.push(response.data.dept)
          this.fMblnoOptions = []
          this.fMblnoOptions.push(response.data.fCorps)
          if (response.data.fSbu !== null) {
            this.fSbuOptions = []
            this.fSbuOptions.push(response.data.fSbu)
          }
          if (response.data.warehouse !== null) {
            this.warehouseOptions = []
            this.warehouseOptions.push(response.data.warehouse)
          }
          if (typeof response.data.warehouseBillsItem !== 'undefined' && response.data.warehouseBillsItem !== null) {
            this.dataList = response.data.warehouseBillsItem
            if (response.data.goodsList !== null) {
              this.goodsOptions = []
              this.goodsOptions = response.data.goodsList
            }
          }
          this.open = true;
          this.title = "修改仓库主(出入库)";
        });
      },
      /** 提交按钮 */
      submitForm() {
        this.$refs["form"].validate((valid) => {
          if (valid) {
            // let formData = new FormData()
            // console.log(JSON.stringify(this.form));
            // formData.append('tWarehouseBills', JSON.stringify(this.formData))
            let formData = new window.FormData();
            // 附件数据
            formData.append("tWarehouseBills", JSON.stringify(this.form));
            console.log(JSON.stringify(this.form));
            // 附件数据
            formData.append("tWhgenleg", null);
            // // 费用明细付款
            formData.append("tWarehousebillsfeesCr", JSON.stringify(this.warehouseCrList));
            // // 收款
            formData.append("tWarehousebillsfeesDr", JSON.stringify(this.warehouseDrList));
            // // 库存明细
            formData.append("tWarehousebillsitems", JSON.stringify(this.dataList));
            // 附件数据
            // formData.append('tWhgenleg', dataForm)
            // // 费用明细付款
            // formData.append('tWarehousebillsfeesCr', dataForm)
            // // 收款
            // formData.append('tWarehousebillsfeesDr"', dataForm)
            // // 库存明细
            // formData.append('tWarehousebillsitems', dataForm)
            addWarehousebills(formData).then((response) => {
              console.log(response);
              this.msgSuccess("新增成功");
              this.open = false;
              this.getList();
            });
          }
        });
      },
      /** 删除按钮操作 */
      handleDelete(row) {
        const fIds = row.fId || this.ids;
        this.$confirm(
          '是否确认删除仓库主(出入库)编号为"' + fIds + '"的数据项?',
          "警告",
          {
            confirmButtonText: "确定",
            cancelButtonText: "取消",
            type: "warning",
          }
        )
          .then(function () {
            return delWarehousebills(fIds);
          })
          .then(() => {
            this.getList();
            this.msgSuccess("删除成功");
          });
      },
      /** 导出按钮操作 */
      handleExport() {
        const queryParams = this.queryParams;
        this.$confirm("是否确认导出所有仓库主(出入库)数据项?", "警告", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning",
        })
          .then(function () {
            return exportWarehousebills(queryParams);
          })
          .then((response) => {
            this.download(response.msg);
          });
      },
      deleteRow(index, rows) {
        rows.splice(index, 1)
      },
      /* 远程模糊查询用户 */
      corpsRemoteMethod(name) {
        if (name == null || name === '') {
          return false
        }
        let queryParams = {pageNum: 1, pageSize: 10, fName: name}
        listCorps(queryParams).then((response) => {
          this.fMblnoOptions = response.rows
        });
      },
      /* 远程模糊查询商品 */
      goodsRemoteMethod(name) {
        if (name == null || name === '') {
          return false
        }
        let queryParams = {pageNum: 1, pageSize: 10, fName: name}
        listGoods(queryParams).then((response) => {
          this.goodsOptions = response.rows
        });
      },
      /* 远程模糊查询经营单位 */
      fSbuRemoteMethod(name) {
        if (name == null || name === '') {
          return false
        }
        let queryParams = {pageNum: 1, pageSize: 10, fName: name}
        listCorps(queryParams).then((response) => {
          this.fSbuOptions = response.rows
        });
      },
      /* 远程模糊查询仓库 */
      warehouseRemoteMethod(name) {
        if (name == null || name === '') {
          return false
        }
        let queryParams = {pageNum: 1, pageSize: 10, fName: name}
        listWarehouse(queryParams).then((response) => {
          this.warehouseOptions = response.rows
        });
      },
      /* 远程模糊查询操作用户 */
      userRemoteMethod(name) {
        if (name == null || name === '') {
          return false
        }
        let queryParams = {pageNum: 1, pageSize: 10, userName: name}
        listUser(queryParams).then((response) => {
          this.userOptions = response.rows
        });
      },
    },
  };
</script>
