Browse Source

添加货权转移页面(需要调整小部分控件布局)

阿伏兔 4 years ago
parent
commit
199a3531ab

+ 62 - 0
src/api/warehouseBusiness/goodsTransfer.js

@@ -0,0 +1,62 @@
+import request from '@/utils/request'
+
+// 查询仓库主(出入库)列表
+export function listGoodsTransfer(query) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询仓库主(出入库)列表
+export function getGoodsTransferList(query) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询仓库主(出入库)详细
+export function getGoodsTransfer(fId) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/' + fId,
+    method: 'get'
+  })
+}
+
+// 新增仓库主(出入库)
+export function addGoodsTransfer(data) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/add',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改仓库主(出入库)
+export function updateGoodsTransfer(data) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除仓库主(出入库)
+export function delGoodsTransfer(fId) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/' + fId,
+    method: 'delete'
+  })
+}
+
+// 导出仓库主(出入库)
+export function exportGoodsTransfer(query) {
+  return request({
+    url: '/warehouseBusiness/goodsTransfer/export',
+    method: 'get',
+    params: query
+  })
+}

+ 4 - 4
src/views/reportManagement/whgenleg/index.vue

@@ -64,10 +64,10 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="出库毛重,单位为吨" prop="fGrossweightc">
+      <el-form-item label="出库毛重" prop="fGrossweightc">
         <el-input
           v-model="queryParams.fGrossweightc"
-          placeholder="请输入出库毛重,单位为吨"
+          placeholder="请输入出库毛重"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
@@ -109,8 +109,8 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="状态,默认 T ,正常T 停用F 下拉选择" prop="fStatus">
-        <el-select v-model="queryParams.fStatus" placeholder="请选择状态,默认 T ,正常T 停用F 下拉选择" clearable size="small">
+      <el-form-item label="状态" prop="fStatus">
+        <el-select v-model="queryParams.fStatus" placeholder="请选择状态" clearable size="small">
           <el-option label="请选择字典生成" value="" />
         </el-select>
       </el-form-item>

+ 2373 - 0
src/views/warehouseBusiness/goodsTransfer/index.vue

@@ -0,0 +1,2373 @@
+<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="fBsdate">
+        <el-date-picker
+          clearable
+          size="small"
+          v-model="queryParams.fBsdate"
+          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="fmblno">
+        <el-input
+          v-model="queryParams.fmblno"
+          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="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="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:goodsTransfer: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:goodsTransfer: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:goodsTransfer: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:goodsTransfer:export']"
+          >导出
+        </el-button>
+      </el-col>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
+
+    <el-table
+      v-loading="loading"
+      :data="goodsTransferList"
+      @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="fCorpid" />
+      <el-table-column label="转货权方" align="center" prop="fTocorpid" />
+      <el-table-column label="提单号" align="center" prop="fMblno" />
+      <el-table-column label="经营单位" align="center" prop="fSbu" />
+      <el-table-column
+        label="货转日期"
+        align="center"
+        prop="fBsdate"
+        width="180"
+        ><template slot-scope="scope">
+          <span>{{ parseTime(scope.row.fBsdate, "{y}-{m}-{d}") }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column
+        label="贸易方式"
+        align="center"
+        prop="fTrademodeid"
+        :formatter="fTrademodeidFormat"
+      />
+      <el-table-column label="仓库" align="center" prop="fWarehouseid" />
+      <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"
+        class-name="small-padding fixed-width"
+        width="100"
+      >
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row, true)"
+            v-hasPermi="['warehouseBusiness:goodsTransfer:edit']"
+            >查看
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row, false)"
+            v-hasPermi="['warehouseBusiness:goodsTransfer:edit']"
+            >修改
+          </el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            v-if="scope.row.fBillstatus !== '6'"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['warehouseBusiness:goodsTransfer: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: 570px"
+        ref="form"
+        :model="form"
+        :rules="rules"
+        label-width="120px"
+      >
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="货权方" prop="fCorpid">
+              <el-select
+                v-model="form.fCorpid"
+                filterable
+                remote
+                style="width: 250px"
+                :remote-method="corpsRemoteMethod"
+                placeholder="请选择货权方"
+              >
+                <el-option
+                  v-for="(dict,index) in fMblnoOptions"
+                  :key="index.fId"
+                  :label="dict.fName"
+                  :value="dict.fId"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+            <el-button :disabled="browseStatus" @click.prevent="addRelevant()">显示库存</el-button>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="新货权方" prop="fTocorpid">
+              <el-select
+                v-model="form.fTocorpid"
+                filterable
+                remote
+                style="width: 250px"
+                :remote-method="corpsRemoteMethod"
+                placeholder="请选择新货权方"
+              >
+                <el-option
+                  v-for="(dict,index) in fMblnoOptions"
+                  :key="index.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="createBy">
+              <el-input
+                disabled
+                v-model="form.createBy"
+                style="width: 250px"
+                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: 250px"
+                remote
+              >
+                <el-option
+                  v-for="(dict,index) in deptOptions"
+                  :key="index.deptId"
+                  :label="dict.deptName"
+                  :value="dict.deptId"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="货转日期" prop="fBsdate">
+              <el-date-picker
+                v-model="form.fBsdate"
+                style="width: 250px"
+                type="date"
+                value-format="timestamp"
+                placeholder="货转日期"
+              >
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="仓储计费日期" prop="fChargedate">
+              <el-date-picker
+                v-model="form.fChargedate"
+                style="width: 250px"
+                type="date"
+                value-format="timestamp"
+                placeholder="仓储计费日期"
+              >
+              </el-date-picker>
+            </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: 250px"
+              >
+                <el-option
+                  v-for="(dict,index) in fStltypeOptions"
+                  :key="index.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: 250px"
+              >
+                <el-option
+                  v-for="(dict,index) in fFeetunitOptions"
+                  :key="index.dictValue"
+                  :label="dict.dictLabel"
+                  :value="dict.dictValue"
+                />
+              </el-select>
+            </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: 250px"
+              >
+                <el-option
+                  v-for="(dict,index) in fTrademodeidOptions"
+                  :key="index.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="fMblno">
+              <el-input
+                v-model="form.fMblno"
+                style="width: 250px"
+                placeholder="手工输入"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="原始入库单号" prop="fOriginalbillno">
+              <el-input
+                v-model="form.fOriginalbillno"
+                style="width: 250px"
+                placeholder="原始入库单号"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="原始入库日期" prop="orgStorageDate">
+              <el-date-picker
+                v-model="orgStorageDate"
+                type="daterange"
+                value-format="yyyy-MM-dd"
+                range-separator="至"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="仓库" prop="fWarehouseid">
+              <el-select
+                v-model="form.fWarehouseid"
+                filterable
+                :disabled="browseStatus"
+                remote
+                style="width: 250px"
+                :remote-method="warehouseRemoteMethod"
+                placeholder="请选择仓库"
+              >
+                <el-option
+                  v-for="(dict,index) in warehouseOptions"
+                  :key="index.fId"
+                  :label="dict.fName"
+                  :value="dict.fId"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+      <div class="dialogTableTitle flex a-center jlr">
+        <h2>库存明细</h2>
+      </div>
+      <el-table
+        :data="dataList"
+        ref="table"
+        tooltip-effect="dark"
+        border
+        stripe
+        :summary-method="getSummaries"
+        show-summary
+      >
+        <el-table-column label="序号" type="index" width="80">
+        </el-table-column>
+        <el-table-column
+          prop="fGoodsids"
+          header-align="center"
+          align="center"
+          width="140px"
+          label="品名"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fMarks"
+          header-align="center"
+          align="center"
+          width="140px"
+          label="唛头"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fMblno"
+          header-align="center"
+          align="center"
+          width="140px"
+          label="提单号"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fOriginalbillno"
+          header-align="center"
+          align="center"
+          width="140px"
+          label="原始入库单号"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fWarehouselocids"
+          header-align="center"
+          width="150px"
+          align="center"
+          label="库区"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fPlanqty"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="库存件数"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fPlangrossweight"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="库存毛重"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="fQty"
+          header-align="center"
+          width="180px"
+          align="center"
+          label="货转件数"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fQty"
+              placeholder="货转件数"
+              :disabled="browseStatus"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fGrossweight"
+          header-align="center"
+          width="180px"
+          align="center"
+          label="货转毛重"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fGrossweight"
+              placeholder="货转毛重"
+              :disabled="browseStatus"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fCntqty"
+          header-align="center"
+          width="180px"
+          align="center"
+          label="箱量"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fCntqty"
+              placeholder="箱量"
+              :disabled="browseStatus"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fPackagespecs"
+          header-align="center"
+          width="180px"
+          align="center"
+          label="包装规格"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput="value=value.replace(/[^\d.]/g,'')"
+              v-model="scope.row.fPackagespecs"
+              :disabled="browseStatus"
+              placeholder="包装规格"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fGoodsval"
+          header-align="center"
+          width="150px"
+          align="center"
+          label="货值"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput="value=value.replace(/[^\d.]/g,'')"
+              v-model="scope.row.fGoodsval"
+              placeholder="货值"
+              :disabled="browseStatus"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="remark"
+          header-align="center"
+          width="150px"
+          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="fName"
+          header-align="center"
+          align="center"
+          label="附件名称"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.fName"
+              :disabled="browseStatus"
+              placeholder="附件名称"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="createBy"
+          header-align="center"
+          align="center"
+          label="上传人"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.createBy"
+              :disabled="browseStatus"
+              placeholder="上传人"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="createTime"
+          header-align="center"
+          align="center"
+          label="上传时间"
+        >
+          <template slot-scope="scope">
+            <el-date-picker
+              v-model="scope.row.createTime"
+              type="date"
+              disabled
+              placeholder="上传时间"
+              format="yyyy-MM-dd HH:mm"
+              value-format="timestamp"
+            ></el-date-picker>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fUrl"
+          header-align="center"
+          align="center"
+          width="250PX"
+          label="上传附件"
+        >
+          <template slot-scope="scope">
+            <uploadFile @input="showFile" v-model="scope.row.fUrl" />
+          </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
+        :summary-method="warehouseDrSummaries"
+        show-summary
+      >
+        <el-table-column label="序号" type="index" width="80">
+        </el-table-column>
+        <el-table-column
+          prop="fCorpid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="客户名称"
+        >
+          <template slot-scope="scope">
+            <el-select
+              v-model="scope.row.fCorpid"
+              filterable
+              remote
+              :disabled="browseStatus"
+              :remote-method="corpsRemoteMethod"
+              placeholder="客户名称"
+            >
+              <el-option
+                v-for="(dict,index) in KHblnoOptions"
+                :key="index.fId"
+                :label="dict.fName"
+                :value="dict.fId"
+              ></el-option>
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fFeeid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="费用名称"
+        >
+          <template slot-scope="scope">
+            <el-select
+              :disabled="browseStatus"
+              v-model="scope.row.fFeeid"
+              filterable
+              remote
+              :remote-method="fWRemoteMethod"
+              placeholder="费用名称"
+            >
+              <el-option
+                v-for="(dict,index) in fWbuOptions"
+                :key="index.fId"
+                :label="dict.fName"
+                :value="dict.fId"
+              ></el-option>
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fFeeunitid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="计价单位"
+        >
+          <template slot-scope="scope">
+            <el-select
+              v-model="scope.row.fFeeUnitid"
+              placeholder="请选择计价单位"
+              :disabled="browseStatus"
+              @change="changeFeeUnit(scope.row)"
+              clearable
+            >
+              <el-option
+                v-for="(dict,index) in jFeetunitOptions"
+                :key="index.dictValue"
+                :label="dict.dictLabel"
+                :value="dict.dictValue"
+              />
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fQty"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="数量"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fQty"
+              placeholder="数量"
+              :disabled="browseStatus"
+              @change="changeEstmateAmt(scope.row)"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fUnitprice"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="单价"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fUnitprice"
+              placeholder="单价"
+              :disabled="browseStatus"
+              @change="changeContractAmt(scope.row)"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fAmount"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="金额"
+        >
+          <template slot-scope="scope">
+            <el-input
+              disabled
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fAmount"
+              placeholder="金额"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fCurrency"
+          header-align="center"
+          align="center"
+          width="150px"
+          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="fExrate"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="汇率"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.fExrate"
+              :disabled="browseStatus"
+              placeholder="汇率"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fTaxrate"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="税率"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.fTaxrate"
+              :disabled="browseStatus"
+              placeholder="税率"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="remarks"
+          header-align="center"
+          align="center"
+          width="150px"
+          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="150px"
+        >
+          <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
+        :summary-method="warehouseDrSummaries"
+        show-summary
+      >
+        <el-table-column label="序号" type="index" width="80">
+        </el-table-column>
+        <el-table-column
+          prop="fCorpid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="客户名称"
+        >
+          <template slot-scope="scope">
+            <el-select
+              v-model="scope.row.fCorpid"
+              filterable
+              remote
+              :disabled="browseStatus"
+              :remote-method="corpsRemoteMethod"
+              placeholder="客户名称"
+            >
+              <el-option
+                v-for="(dict, index) in KHblnoOptions"
+                :key="index.fId"
+                :label="dict.fName"
+                :value="dict.fId"
+              ></el-option>
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fFeeid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="费用名称"
+        >
+          <template slot-scope="scope">
+            <el-select
+              v-model="scope.row.fFeeid"
+              filterable
+              remote
+              :disabled="browseStatus"
+              :remote-method="fWRemoteMethod"
+              placeholder="费用名称"
+            >
+              <el-option
+                v-for="(dict,index) in fWbuOptions"
+                :key="index.fId"
+                :label="dict.fName"
+                :value="dict.fId"
+              ></el-option>
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fFeeUnitid"
+          header-align="center"
+          align="center"
+          width="180px"
+          label="计价单位"
+        >
+          <template slot-scope="scope">
+            <el-select
+              v-model="scope.row.fFeeUnitid"
+              filterable
+              remote
+              :disabled="browseStatus"
+              @change="changeFeeUnit(scope.row)"
+              :remote-method="corpsRemoteMethod"
+              placeholder="计价单位"
+            >
+              <el-option
+                v-for="(dict, index) in jFeetunitOptions"
+                :key="index.dictValue"
+                :label="dict.dictLabel"
+                :value="dict.dictValue"
+              ></el-option>
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fQty"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="数量"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fQty"
+              :disabled="browseStatus"
+              @change="changeContractAmt(scope.row)"
+              placeholder="数量"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fUnitprice"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="单价"
+        >
+          <template slot-scope="scope">
+            <el-input
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fUnitprice"
+              :disabled="browseStatus"
+              @change="changeContractAmt(scope.row)"
+              placeholder="单价"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fAmount"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="金额"
+        >
+          <template slot-scope="scope">
+            <el-input
+              disabled
+              oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+              v-model="scope.row.fAmount"
+              placeholder="金额"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fCurrency"
+          header-align="center"
+          align="center"
+          width="150px"
+          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="fExrate"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="汇率"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.fExrate"
+              :disabled="browseStatus"
+              placeholder="汇率"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="fTaxrate"
+          header-align="center"
+          align="center"
+          width="150px"
+          label="税率"
+        >
+          <template slot-scope="scope">
+            <el-input
+              v-model="scope.row.fTaxrate"
+              :disabled="browseStatus"
+              placeholder="税率"
+              show-word-limit
+            />
+          </template>
+        </el-table-column>
+        <el-table-column
+          prop="remarks"
+          header-align="center"
+          align="center"
+          width="150px"
+          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"
+          width="150px"
+          label="操作"
+        >
+          <template slot-scope="scope">
+            <el-button size="small">审核费用</el-button>
+            <el-button
+              @click.native.prevent="deleteRow(scope.$index, warehouseCrList)"
+              :disabled="browseStatus"
+              size="small"
+              >移除</el-button
+            >
+          </template>
+        </el-table-column>
+      </el-table>
+      <div slot="footer" class="dialog-footer">
+        <el-button
+          type="danger"
+          size="mini"
+          prop="打印"
+          @click="showEditDialog_ss"
+          >收货单
+        </el-button>
+        <el-button
+          type="danger"
+          size="mini"
+          prop="打印"
+          @click="showEditDialog_s"
+          >入库单
+        </el-button>
+        <el-button type="primary" @click="submitForm(2)">暂 存</el-button>
+        <el-button type="primary" @click="submitForm(6)">提 交</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+      <!-- 选择库存总账数据 -->
+      <el-dialog
+        title="库存总账"
+        :modal="false"
+        style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
+        :visible.sync="whgenlegVisible"
+        width="70%"
+      >
+        <el-table
+          :data="whgenlegList"
+          ref="table"
+          tooltip-effect="dark"
+          width="100%"
+          border
+          stripe
+          @selection-change="whgenlegSelectionChange"
+        >
+          <el-table-column
+            type="selection"
+            width="55">
+          </el-table-column>
+          <el-table-column
+            prop="fMblno"
+            header-align="center"
+            align="center"
+            label="提单号"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="createTime"
+            header-align="center"
+            align="center"
+            width="180px"
+            label="入库日期"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="fGoodsid"
+            header-align="center"
+            align="center"
+            label="品名"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="fQtyblc"
+            header-align="center"
+            align="center"
+            label="结余数量"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="fWarehouseLocationid"
+            header-align="center"
+            align="center"
+            label="库区"
+          >
+          </el-table-column>
+        </el-table>
+        <pagination
+          v-show="whgenlegTotal>0"
+          :total="whgenlegTotal"
+          :page.sync="whgenlegParams.pageNum"
+          :limit.sync="whgenlegParams.pageSize"
+          @pagination="getWhgenlegList"
+        />
+        <div slot="footer" class="dialog-footer">
+          <el-button type="primary" @click="whgenlegData">导入</el-button>
+          <el-button @click="whgenlegVisible = false">取 消</el-button>
+        </div>
+      </el-dialog>
+      <el-dialog
+        title="入库页面"
+        :modal="false"
+        style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
+        :visible.sync="editDialogVisible_s"
+        width="70%"
+      >
+        <table
+          id="print_area"
+          class="biaoge zzss"
+          border="1"
+          style="border-collapse: collapse; border: none"
+        >
+          <tr>
+            <td
+              width="100"
+              colspan="7"
+              class="zzss"
+              style="font-size: 28px; font-weight: bold; border: none"
+            >
+              青岛大木进进仓单
+            </td>
+          </tr>
+          <tr>
+            <td
+              width="100"
+              colspan="7"
+              class="zzss"
+              style="font-size: 28px; font-weight: bold; border: none"
+            >
+              &nbsp;
+            </td>
+          </tr>
+          <tr>
+            <td width="450" colspan="2" class="zzss">货权方:某某有限公司</td>
+            <td width="450" colspan="2" class="zzss">仓库:某某3号大仓</td>
+            <td width="450" colspan="3" class="zzss">
+              地址:青岛市市北区郑州路1344号
+            </td>
+          </tr>
+          <tr>
+            <td width="200" colspan="2" class="zzss">保管方:某某有限公司</td>
+            <td width="200" colspan="2" class="zzss">联系人:张三</td>
+            <td width="200" colspan="3" class="zzss">
+              电话:0532-561651561-546
+            </td>
+          </tr>
+          <tr>
+            <td width="100" border="1">提单号</td>
+            <td width="100">品名</td>
+            <td width="100">箱型</td>
+            <td width="100">品牌</td>
+            <td width="100">件数</td>
+            <td width="100">重量</td>
+            <td width="100">包装规格</td>
+          </tr>
+          <tr>
+            <td width="100">56165654555</td>
+            <td width="100">某某商品</td>
+            <td width="100">20GP</td>
+            <td width="100">某某</td>
+            <td width="100">包</td>
+            <td width="100">吨</td>
+            <td width="100">50kg</td>
+          </tr>
+          <tr>
+            <td width="100">序号</td>
+            <td width="100">入货日期</td>
+            <td width="100">箱量(20GP)</td>
+            <td width="100">重量</td>
+            <td width="100">件数</td>
+            <td width="100">入库重量</td>
+            <td width="100">入库件数</td>
+          </tr>
+          <tr>
+            <td width="100">1</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">2</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">3</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">4</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">5</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">6</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">7</td>
+            <td width="100">2020-11-20</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100" colspan="2">合计:</td>
+            <td width="100">10</td>
+            <td width="100">100</td>
+            <td width="100">10000</td>
+            <td width="100">20</td>
+            <td width="100">3000</td>
+          </tr>
+          <tr>
+            <td width="100">备注:</td>
+            <td width="100" colspan="6"></td>
+          </tr>
+          <tr>
+            <td width="100" colspan="7" class="zzss">
+              本进仓单经仓管员签字并经保管方盖章后即专项作为货物所有人的货权证明,本单据不得转让。
+            </td>
+          </tr>
+          <tr style="border: none">
+            <td width="100" colspan="2" class="zzss" style="border: none">
+              开单员:
+            </td>
+            <td width="100" colspan="3" class="zzss" style="border: none"></td>
+            <td width="100" colspan="2" class="zzss" style="border: none">
+              仓管员:张三
+            </td>
+          </tr>
+          <tr style="border: none">
+            <td width="100" colspan="2" class="zzss" style="border: none">
+              开单时间:
+            </td>
+            <td width="100" colspan="3" class="zzss" style="border: none"></td>
+            <td width="100" colspan="2" class="zzss" style="border: none">
+              (盖章)
+            </td>
+          </tr>
+        </table>
+        <button @click="printSomething">打印</button>
+      </el-dialog>
+      <el-dialog
+        title="收货单打印"
+        style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
+        :visible.sync="editDialogVisible_ss"
+        width="70%"
+        :modal="false"
+      >
+        <table
+          id="print_area"
+          class="biaoge zzss"
+          border="1"
+          style="border-collapse: collapse; border: none"
+        >
+          <tr>
+            <td
+              width="1400"
+              colspan="6"
+              class="zzss"
+              style="font-size: 28px; font-weight: bold; border: none"
+            >
+              大木国际物流(青岛)有限公司收货单
+            </td>
+          </tr>
+          <tr>
+            <td
+              width="900"
+              colspan="4"
+              class="zzss"
+              style="font-size: 28px; font-weight: bold"
+            >
+              &nbsp;
+            </td>
+            <td
+              width="500"
+              colspan="2"
+              style="padding-bottom: 0px; font-weight: bold; border: none"
+              class="zzss"
+            >
+              出库日期:2020-11-20
+            </td>
+          </tr>
+          <tr>
+            <td width="200">车号</td>
+            <td width="200">苏HFN751</td>
+            <td width="200">货物品名</td>
+            <td width="200" colspan="4" class="zzss">某某商品名</td>
+          </tr>
+          <tr>
+            <td width="1400" colspan="6">&nbsp;</td>
+          </tr>
+          <tr>
+            <td>备注:</td>
+            <td colspan="5"></td>
+          </tr>
+          <tr>
+            <td>收费</td>
+            <td>装箱费</td>
+            <td>100元</td>
+            <td colspan="4">办单费:5元,过磅费自理</td>
+          </tr>
+          <tr>
+            <td>司机签字:</td>
+            <td></td>
+            <td>电话</td>
+            <td>15896154516</td>
+            <td colspan="2" rowspan="2">
+              确认货物数量无误,包装于货物完好!<br />出库盖好篷布,如有违背责任自负<br />装卸工是否收小费
+            </td>
+          </tr>
+          <tr>
+            <td>制表:</td>
+            <td>张三</td>
+            <td>机械/人工:</td>
+            <td></td>
+          </tr>
+          <tr>
+            <td colspan="6" class="zzss">&nbsp;</td>
+          </tr>
+          <tr>
+            <td width="280" class="zzss"></td>
+            <td width="280" class="zzss"></td>
+            <td width="280" class="zzss"></td>
+            <td width="280" class="zzss"></td>
+            <td width="290" class="zzss">地址:淮河东路96号</td>
+            <td width="290" class="zzss">电话:18685818919</td>
+          </tr>
+        </table>
+        <button @click="printSomething">打印</button>
+      </el-dialog>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import print from "print-js";
+import {
+  listGoodsTransfer,
+  getGoodsTransfer,
+  addGoodsTransfer,
+  updateGoodsTransfer,
+  delGoodsTransfer,
+  exportGoodsTransfer
+} from "@/api/warehouseBusiness/goodsTransfer";
+
+import { listCorps } from "@/api/basicdata/corps";
+
+import { listFees } from "@/api/basicdata/fees";
+
+import { listWarehouse } from "@/api/basicdata/warehouse";
+
+import { listArea } from "@/api/basicdata/area";
+
+import { listGoods } from "@/api/basicdata/goods";
+
+import { listUser, queryUserVal } from "@/api/system/user";
+
+import { listWhgenleg } from '@/api/reportManagement/whgenleg'
+
+import UploadFile from "@/components/Uploadfile";
+export default {
+  name: "goodsTransfer",
+  components: {
+    UploadFile,
+  },
+  data() {
+    return {
+      // 修改查看状态
+      browseStatus: false,
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      userVal: {
+        userName: null,
+        nickName: null,
+        deptId: null,
+      },
+      queryForm: {},
+      // 添加用户对话框
+      editDialogVisible_s: false,
+      editDialogVisible_ss: false,
+      editDialogClosed_ss: false,
+      dataList: [],
+      warehouseCrList: [],
+      warehouseDrList: [],
+      relevantAttachments: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 仓库主(出入库)表格数据
+      goodsTransferList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 货权方(客户数据)
+      fMblnoOptions: [],
+      // 货权方(客户数据)
+      // 客户名称
+      KHblnoOptions: [],
+      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: [],
+      // 费用名称
+      fWbuOptions: [],
+      // 计价单位
+      jFeetunitOptions: [],
+      // 查询参数
+      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,
+      },
+      // 日期区间
+      orgStorageDate: null,
+      // 表单参数
+      form: {},
+      // 库存总账参数
+      whgenlegParams: {
+        pageNum: 1,
+        pageSize: 10,
+        fMblno: null,
+        fCorpid: null,
+        fWarehouseid: null,
+        fTrademodeid: null,
+        orgStorageDate: null
+      },
+      // 库存总账表
+      whgenlegList: [],
+      whgenlegTotal: 0,
+      // 弹窗库存总账数据
+      dialogWhgenlegList: [],
+      // 库存总账对话框
+      whgenlegVisible: false,
+      // 表单校验
+      rules: {
+        fDeptid: [
+          { required: true, message: "制单部门不能为空", trigger: "blur" },
+        ],
+        fMblno: [{ required: true, message: "请输入提单号", trigger: "blur" }],
+        fBsdeptid: [
+          { required: true, message: "业务所属部门不能为空", trigger: "blur" },
+        ],
+        fCorpid: [
+          {
+            required: true,
+            message: "请选择货权方",
+            trigger: "blur",
+          },
+        ],
+        fBsdate: [
+          { required: true, message: "请选择业务日期", trigger: "blur" },
+        ],
+        fTrademodeid: [
+          { required: true, message: "请选择贸易方式", trigger: "blur" },
+        ],
+        fSbu: [
+          { required: true, message: "请选择经营单位", trigger: "blur" },
+        ],
+        fStorekeeper: {
+          required: true,
+          message: "请输入仓管员",
+          trigger: "blur",
+        },
+        fWarehouseid: [
+          { required: true, message: "请选择仓库", trigger: "blur" },
+        ],
+        fbillingway: [
+          {
+            required: true,
+            message: "请选择结算方式",
+            trigger: "blur",
+          },
+        ],
+        fTocorpid: [
+          {
+            required: true,
+            message:
+              "请选择新货转货权方",
+            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.jFeetunitOptions = JSON.parse(JSON.stringify(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: {
+    // 上传成功返回数据
+    showFile(row) {
+      // this.$set(this.relevantAttachments[0], 'fName', row.fileName)
+      this.$set(this.relevantAttachments[0], "fUrl", row.url);
+    },
+    printSomething() {
+      // 此处的style即为打印时的样式
+      const style =
+        "@media print { .print-div{ padding:8px;background-color:#cccccc;line-height:12px } .red{ color:#f00} .green{color:green} td{text-align: center}}";
+      print({
+        printable: "print_area",
+        type: "html",
+        style: style, // 亦可使用引入的外部css;
+        scanStyles: false,
+      });
+    },
+    // 添加附件上传
+    addRelevt() {
+      this.relevantAttachments.push({
+        fUrl: null,
+        fName: null,
+        createBy: this.queryParams.createBy,
+        createTime: Date.parse(new Date()),
+      });
+    },
+    // 添加list
+    addRelevant() {
+      if (!this.form.fCorpid || !this.form.fTrademodeid || !this.form.fWarehouseid) {
+        this.$message({ message: '请维护货权方、贸易方式、仓库', type: 'warning' })
+        return false
+      }
+      this.whgenlegList = []
+      this.dialogWhgenlegList = []
+      this.whgenlegTotal = 0
+      this.whgenlegVisible = true
+      this.getWhgenlegList()
+    },
+    // 查询库存总账信息
+    getWhgenlegList () {
+      this.whgenlegParams.fMblno = this.form.fMblno
+      this.whgenlegParams.fCorpid = this.form.fCorpid
+      this.whgenlegParams.fWarehouseid = this.form.fWarehouseid
+      this.whgenlegParams.fTrademodeid = this.form.fTrademodeid
+      this.whgenlegParams.orgStorageDate = this.orgStorageDate
+      listWhgenleg(this.whgenlegParams).then(response => {
+        this.whgenlegList = response.rows
+        this.whgenlegTotal = response.total
+      })
+    },
+    // 库存总账多选框
+    whgenlegSelectionChange (selection) {
+      this.dialogWhgenlegList = selection
+    },
+    // 库存总账导出数据
+    whgenlegData () {
+      for (let whgen in this.dialogWhgenlegList) {
+        if (!this.form.fMblno) {
+          this.$set(this.form, 'fMblno', this.dialogWhgenlegList[whgen].fMblno)
+        }
+        this.dataList.push({
+          fMblno: this.dialogWhgenlegList[whgen].fMblno,
+          fGoodsid: this.dialogWhgenlegList[whgen].fGoodsid,
+          fGoodsids: this.dialogWhgenlegList[whgen].fGoodsids,
+          fMarks: this.dialogWhgenlegList[whgen].fMarks,
+          fOriginalbillno: this.dialogWhgenlegList[whgen].fOriginalbillno,
+          fWarehouselocid: this.dialogWhgenlegList[whgen].fWarehouseLocationid,
+          fWarehouselocids: this.dialogWhgenlegList[whgen].fWarehouseLocationids,
+          fPlanqty: this.dialogWhgenlegList[whgen].fQtyblc,
+          fPlangrossweight: this.dialogWhgenlegList[whgen].fGrossweightblc,
+          fQty: 0,
+          fCntqty: 1,
+          fGrossweight: 0,
+          fPackagespecs: null,
+          fGoodsval: null,
+          remark: null
+        })
+      }
+      this.whgenlegVisible = false
+    },
+    // 收货单打印界面
+    showEditDialog_s() {
+      this.editDialogVisible_s = true;
+    },
+    showEditDialog_ss() {
+      this.editDialogVisible_ss = true;
+    },
+    // 收款信息
+    addCollection() {
+      this.warehouseDrList.push({
+        fCorpid: null,
+        fFeeid: null,
+        fFeeUnitid: null,
+        fQty: 0,
+        fUnitprice: 0,
+        fAmount: 0,
+        fCurrency: null,
+        fCxrate: null,
+        fRate: null,
+        remarks: null,
+      });
+    },
+    addpayment() {
+      this.warehouseCrList.push({
+        fCorpid: null,
+        fFeeid: null,
+        fFeeUnitid: null,
+        fQty: 0,
+        fUnitprice: 0,
+        fAmount: 0,
+        fCurrency: null,
+        fCxrate: null,
+        fRate: null,
+        remarks: null,
+      })
+    },
+    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.relevantAttachments, "opUserName", 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;
+      listGoodsTransfer(this.queryParams).then((response) => {
+        this.goodsTransferList = 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);
+    },
+    // 编号字典翻译
+    fStltypeidFormat(row, column) {
+      return this.selectDictLabel(this.fStltypeOptions, row.fStltypeid);
+    },
+    // 是否质押(数据字典),默认 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.dataList = [];
+      this.warehouseCrList = [];
+      this.warehouseDrList = [];
+      this.relevantAttachments = [];
+      this.title = "入库单";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row, status) {
+      this.browseStatus = status
+      this.reset();
+      const fId = row.fId || this.ids;
+      getgoodsTransfer(fId).then((response) => {
+        this.form = response.data.goodsTransfer
+        this.fMblnoOptions = response.data.corps
+        this.KHblnoOptions = response.data.corps
+        this.fSbuOptions = response.data.corps
+        this.fWbuOptions = response.data.feesList
+        this.warehouseOptions = response.data.warehouse;
+        this.$set(this.form, 'fStltypeid', this.form.fStltypeid + '')
+        this.$set(this.form,'fEta', Date.parse(this.form.fEta))
+        this.$set(this.form,'createTime', Date.parse(this.form.createTime))
+        this.$set(this.form, 'fTrademodeid', this.form.fTrademodeid + '')
+        this.dataList = response.data.goodsTransferItem;
+        for (let list in this.dataList) {
+          this.$set(this.dataList[list], 'fBsdate', Date.parse(this.dataList[list].fBsdate))
+        }
+        this.goodsOptions = response.data.goodsList
+        this.relevantAttachments = response.data.enclosures
+        this.warehouseDrList = response.data.goodsTransferfeesDr
+        for (let dr in this.warehouseDrList) {
+          this.$set(this.warehouseDrList[dr], 'fFeeUnitid', this.warehouseDrList[dr].fFeeUnitid + "")
+        }
+        this.warehouseCrList = response.data.goodsTransferfeesCr
+        for (let cr in this.warehouseCrList) {
+          this.$set(this.warehouseCrList[cr], 'fFeeUnitid', this.warehouseCrList[cr].fFeeUnitid + "")
+        }
+        this.userOptions = response.data.sysUser;
+        this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate))
+        this.open = true;
+        this.title = "修改仓入库)";
+      });
+    },
+    // 库存明细合计
+    getSummaries (param) {
+        const {columns, data} = param
+         const sums = []
+         var values = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+              sums[index] = '总价'
+                return
+              }
+        if (column.property === 'fPlanqty') {
+            values = data.map(item => Number(item['fPlanqty']))
+          }
+          if (column.property === 'fPlangrossweight') {
+            values = data.map(item => Number(item['fPlangrossweight']))
+          }
+          if (column.property === 'fQty') {
+            values = data.map(item => Number(item['fQty']))
+          }
+          if (column.property === 'fGrossweight') {
+            values = data.map(item => Number(item['fGrossweight']))
+          }
+          if (column.property === 'fCntqty') {
+            values = data.map(item => Number(item['fCntqty']))
+          }
+        // const values = data.map(item => Number(item[column.property]))
+        if (column.property === 'fPlanqty' || column.property === 'fPlangrossweight'|| column.property === 'fQty'|| column.property === 'fGrossweight'|| column.property === 'fCntqty') {
+          sums[index] = values.reduce((prev, curr) => {
+            const value = Number(curr)
+            if (!isNaN(value)) {
+            if (column.property === 'fGrossweight') {
+                this.form.fGrossweight = prev + curr
+            }
+            if (column.property === 'fQty') {
+                this.form.fQty = prev + curr
+            }
+            if (column.property === 'fCntqty') {
+                this.form.fCntqty = prev + curr
+            }
+              return prev + curr
+            } else {
+              return prev
+            }
+          }, 0)
+          // sums[index]
+        }
+      })
+    this.sums = sums
+   return sums
+
+    },
+    // 付款合计
+    warehouseDrSummaries (param) {
+        const {columns, data} = param
+         const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+              sums[index] = '合计'
+                return
+              }
+        const values = data.map(item => Number(item[column.property]))
+        if (column.property === 'fUnitprice' || column.property === 'fAmount'|| column.property === 'fQty'|| column.property === 'fQty') {
+          sums[index] = values.reduce((prev, curr) => {
+            const value = Number(curr)
+            if (!isNaN(value)) {
+              return prev + curr
+            } else {
+              return prev
+            }
+          }, 0)
+          // sums[index]
+        }
+      })
+   return sums
+
+    },
+    // 数量计算
+    changeContractAmt(row) {
+      let fQty = 0
+      let fUnitprice = 0
+      if (row.fUnitprice) {
+        fUnitprice = row.fUnitprice
+      }
+      if (row.fQty) {
+        fQty = row.fQty
+      }
+      this.$set(row, "fAmount", Number(fUnitprice) * Number(fQty)).toFixed(2);
+    },
+    changefBsdate(row) {
+      if (this.dataList.length > 0) {
+        for (var i = 0; i < this.dataList.length; i++) {
+          this.$set(this.dataList[i], "fBsdate", row);
+        }
+      }
+    },
+    /** 提交按钮 */
+    submitForm(status) {
+      this.$refs["form"].validate((valid) => {
+        if (this.form.fCorpid === this.form.fTocorpid) {
+          this.$message.error('新货权方不得与货权方一致')
+          return false
+        }
+        if (this.dataList.length ===  0) {
+          this.$message.error('请添加库存明细!')
+          return false
+        }
+        if (this.relevantAttachments.length === 0) {
+          this.$message.error('请添加附件上传!')
+          return false
+        }
+        if (this.warehouseDrList.length === 0) {
+          this.$message.error('请添加收款信息!')
+          return false
+        }
+        if (this.warehouseCrList.length === 0) {
+          this.$message.error('请添加付款信息!')
+          return false
+        }
+        for (let list in this.dataList) {
+          if (!this.dataList[list].fQty || Number(this.dataList[list].fQty) === 0) {
+            this.$message.error('请维护序号为' + (Number(list) + 1) + '的货转件数!')
+            return false
+          }
+          if (!this.dataList[list].fGrossweight || Number(this.dataList[list].fGrossweight) === 0) {
+            this.$message.error('请维护序号为' + (Number(list) + 1) + '的货转毛重!')
+            return false
+          }
+        }
+        for (let relevant in this.relevantAttachments) {
+          if (!this.relevantAttachments[relevant].fName) {
+            this.$message.error('请输入附件名称!')
+            return false
+          }
+        }
+        for (let warehouseDr in this.warehouseDrList) {
+          if (!this.warehouseDrList[warehouseDr].fAmount) {
+            this.$message.error('收款信息序号为' + (Number(warehouseDr) + 1) + '的金额异常')
+            return false
+          }
+        }
+        for (let warehouseCr in this.warehouseCrList) {
+          if (!this.warehouseCrList[warehouseCr].fAmount) {
+            this.$message.error('付款信息序号为' + (Number(warehouseCr) + 1) + '的金额异常')
+            return false
+          }
+        }
+        if (valid) {
+          this.form.fBillstatus = status;
+          let formData = new window.FormData();
+          // 附件数据
+          formData.append("tWarehouseBills", JSON.stringify(this.form))
+          // 库存明细
+          formData.append("tWarehousebillsitems", JSON.stringify(this.dataList))
+          // 附件数据
+          formData.append("tWhgenleg", JSON.stringify(this.relevantAttachments))
+          // 费用明细付款
+          formData.append("tWarehousebillsfeesCr", JSON.stringify(this.warehouseCrList))
+          // 收款
+          formData.append("tWarehousebillsfeesDr", JSON.stringify(this.warehouseDrList))
+          addGoodsTransfer(formData).then((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 delgoodsTransfer(fIds);
+        })
+        .then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        });
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm("是否确认导出所有仓库主(出入库)数据项?", "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(function () {
+          return exportgoodsTransfer(queryParams);
+        })
+        .then((response) => {
+          this.download(response.msg);
+        });
+    },
+    deleteRow(index, rows) {
+      rows.splice(index, 1);
+    },
+    // 变更计价单位
+    changeFeeUnit (row) {
+      if (!row.fFeeUnitid) {
+        return false
+      }
+      if (row.fFeeUnitid === '0') {
+        this.$set(row, 'fQty', this.form.fCntqty)
+      } else if (row.fFeeUnitid === '1') {
+        this.$set(row, 'fQty', this.form.fGrossweight)
+      }
+      if (row.fUnitprice) {
+        this.$set(row, 'fAmount', parseFloat(Number(row.fUnitprice) * Number(row.fQty)).toFixed(2))
+      }
+    },
+    /* 远程模糊查询用户 */
+    corpsRemoteMethod(name) {
+      if (name == null || name === "") {
+        return false;
+      }
+      let queryParams = { pageNum: 1, pageSize: 10, fName: name };
+      listCorps(queryParams).then((response) => {
+        this.fMblnoOptions = response.rows;
+        this.KHblnoOptions = 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;
+      });
+    },
+    // 远程模糊查询费用名称
+    fWRemoteMethod(name) {
+      if (name == null || name === "") {
+        return false;
+      }
+      let queryParams = { pageNum: 1, pageSize: 10, fName: name };
+      listFees(queryParams).then((response) => {
+        this.fWbuOptions = 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>
+<style lang="scss">
+.juzhong > th {
+  text-align: center;
+}
+.biaoge > tr > td {
+  height: 30px;
+  text-align: center;
+  border-right: 1px solid #dfe6ec !important;
+  order-bottom: 1px solid #dfe6ec !important;
+  border-bottom: 1px solid #dfe6ec !important;
+}
+.el-table thead th {
+  background: #1890ff;
+  color: #fff;
+}
+
+.upload-demo {
+  margin-left: 50px;
+}
+</style>