Переглянути джерело

Merge branch 'master' of git.echepei.com:zhujiawei/Warehouse_management_ui into master

qukaidi 4 роки тому
батько
коміт
f789353630

+ 109 - 0
src/api/finances/contrast.js

@@ -0,0 +1,109 @@
+import request from '@/utils/request'
+
+// 查询财务数据主列表
+export function listFee(query) {
+  return request({
+    url: '/finances/contrast/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询财务数据主详细
+export function getFee(fId) {
+  return request({
+    url: '/finances/contrast/' + fId,
+    method: 'get'
+  })
+}
+
+// 新增财务数据主
+export function addFee(data) {
+  return request({
+    url: '/finances/contrast/add',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改财务数据主
+export function updateFee(data) {
+  return request({
+    url: '/finances/contrast/add',
+    method: 'post',
+    data: data
+  })
+}
+
+// 删除财务数据主
+export function delFee(fId) {
+  return request({
+    url: '/finances/contrast/' + fId,
+    method: 'delete'
+  })
+}
+
+// 导出财务数据主
+export function exportFee(query) {
+  return request({
+    url: '/finances/contrast/export',
+    method: 'get',
+    params: query
+  })
+}
+
+// 导入搜索
+export function importFee(TWareHouseFees) {
+  return request({
+    url: '/finances/contrast/contrastList',
+    // url:'/finances/charge/chargeList',
+    method: 'get',
+    params: TWareHouseFees,
+    tFee:TWareHouseFees,
+    tFeeDo:TWareHouseFees
+  })
+}
+// 确认对账
+export function Cfee(TWareHouseFees) {
+  return request({
+    url:'/finances/contrast/confirm',
+    method: 'post',
+    data: TWareHouseFees
+    // tFee:TWareHouseFees,
+    // tFeeDo:TWareHouseFees
+  })
+}
+
+// 删除财务数据主 是否有明细
+export function detailFee(fId) {
+  return request({
+    url: '/finances/contrast/queryRemove/' + fId,
+    method: 'delete'
+  })
+}
+
+// 撤销对账
+export function backFee(TWareHouseFees) {
+  return request({
+    url: '/finances/contrast/revoke',
+    method: 'post',
+    data: TWareHouseFees
+  })
+}
+
+//撤销审批
+export function RevocationApproval(data){
+  return request({
+    url:'/warehouse/paths/revoke',
+    method:'post',
+    data:data
+  })
+}
+
+// 导出计算明细从表
+export function exportWarehousebillsitems(fId) {
+  return request({
+    url: '/finances/contrast/exportItems/'+fId,
+    method: 'get'
+  })
+}

+ 1750 - 0
src/views/finances/contrast/index.vue

@@ -0,0 +1,1750 @@
+<template>
+  <div class="app-container">
+    <el-form
+      :model="tablefilter"
+      ref="queryParams_s"
+      :inline="true"
+      v-show="showSearch"
+      label-width="68px"
+    >
+      <el-form-item label="货权方" prop="fCtrlcorpid">
+        <el-input
+          v-model="tablefilter.fCtrlcorpid"
+          placeholder="请输入客户名称"
+          filterable
+          remote
+          clearable
+          size="small"
+          style="width:200px"
+          @keyup.enter.native="handleQuery"
+          :remote-method="corpsRemoteMethod"
+          />
+
+      </el-form-item>
+
+      <el-form-item label="结算单位" prop="fCorpid">
+        <el-select
+          v-model="tablefilter.fCorpid"
+          placeholder="请选择结算单位"
+          filterable
+          remote
+          clearable
+          size="small"
+          style="width: 200px"
+          @keyup.enter.native="handleQuery"
+          :remote-method="corpsRemoteMethod"
+        >
+          <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-form-item label="对账日期" prop="timeInterval">
+        <el-date-picker
+          v-model="tablefilter.timeInterval"
+          size="small"
+          style="width: 240px"
+          value-format="yyyy-MM-dd"
+          type="daterange"
+          range-separator="-"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+        ></el-date-picker>
+      </el-form-item>
+
+      <el-form-item label="系统编号" prop="fBillno">
+        <el-input
+          v-model="tablefilter.fBillno"
+          placeholder="请输入系统编号"
+          clearable
+          size="small"
+          style="width:200px"
+          @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="['finance:contrast: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="['warehouse:contrast:edit']"
+          >修改</el-button
+        >
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['finance:contrast:export']"
+          >导出</el-button
+        >
+      </el-col>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
+    </el-row>
+
+    <el-table
+      v-loading="loading"
+      :data="contrastList"
+      @selection-change="handleSelectionChange"
+      show-summary
+      :summary-method="listTotal"
+    >
+      <el-table-column width="60" align="center" type="selection"/>
+      <!-- <el-table-column label="制单部门" align="center" prop="fId" /> -->
+      <el-table-column label="行号" align="center" type="index"/>
+      <el-table-column label="系统编号" align="center" prop="billNo" show-overflow-tooltip width="120"/>
+      <el-table-column label="货权方" sortable align="center" show-overflow-tooltip prop="fCtrlcorpid" width="220"/>
+      <el-table-column label="账单日期" sortable align="center" prop="fAccbilldate" width="120">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.fAccbilldate, "{y}-{m}-{d}") }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="参考号" sortable align="center" prop="refNo" width="216"/>
+      <el-table-column label="金额" align="center" prop="amt" width="120"/>
+      <el-table-column label="对账金额" align="center" prop="amt" width="120"/>
+      <!--       <el-table-column label="单据类型" align="center" prop="fBilltype" />-->
+      <el-table-column label="备注" align="center" show-overflow-tooltip prop="remarks" width="120"/>
+      <el-table-column label="状态" align="center" prop="billStatus" width="120">
+        <template slot-scope="scope">
+          <span v-if="scope.row.billStatus == '1'">保存</span>
+          <span v-else-if="scope.row.billStatus == '2'">暂存</span>
+          <span v-else-if="scope.row.billStatus == '3'">审批驳回</span>
+          <span v-else-if="scope.row.billStatus == '4'">提交审核</span>
+          <span v-else-if="scope.row.billStatus == '5'">审核中</span>
+          <span v-else-if="scope.row.billStatus == '6'">审核完成</span>
+        </template>
+      </el-table-column>
+
+      <!-- <el-table-column label="制单部门" align="center" prop="fDeptid" /> -->
+      <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-view"
+            @click="check(scope.row,0)"
+            v-hasPermi="['finance:contrast:edit']"
+          >查看</el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-view"
+            @click="check(scope.row,1)"
+            v-hasPermi="['finance:contrast:edit']"
+            v-if="scope.row.fBillstatus == 4 || scope.row.fBillstatus == 5"
+          >审批进度</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['finance:contrast:edit']"
+            v-if="scope.row.fBillstatus <= 3">
+            修改</el-button>
+
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['finance:contrast:remove']"
+            v-if="scope.row.fBillstatus <= 3"
+            >删除</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
+      :visible.sync="open"
+      width="70%"
+      append-to-body
+      :close-on-click-modal="false"
+      :show-close="colseButton"
+    >
+      <el-form
+        ref="ruless"
+        :model="queryParams"
+        :rules="ruless"
+        label-width="68px"
+        :inline="true"
+        v-show="showSearch"
+      >
+        <el-form-item label="货权方" prop="corpId">
+          <el-input
+            v-model="queryParams.corpId"
+            clearable
+            size="small"
+            style="width:200px"
+            @keyup.enter.native="handleQuery"
+            :disabled="notChange"
+            placeholder="请输入客户名称"
+          />
+        </el-form-item>
+
+        <el-form-item label="结算单位" label-width="78px" prop="fCorpid">
+          <el-select
+            v-model="queryParams.corpId"
+            placeholder="请选择结算单位"
+            filterable
+            remote
+            clearable
+            :disabled="doNot"
+            style="width: 200px"
+            size="small"
+            @keyup.enter.native="handleQuery"
+            :remote-method="corpsRemoteMethod"
+          >
+            <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-form-item label="对账日期" prop="postDate" label-width="78px">
+          <el-date-picker
+            v-model="queryParams.postDate"
+            size="small"
+            style="width: 200px"
+            value-format="yyyy-MM-dd"
+            type="date"
+            :disabled="notChange"
+            placeholder="选择账单日期"
+          >
+          </el-date-picker>
+        </el-form-item>
+
+
+        <el-form-item label="系统编号" prop="billNo">
+          <el-input
+            v-model="queryParams.billNo"
+            placeholder=""
+            clearable
+            size="small"
+            :disabled="true"
+            style="width: 200px"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+
+        <el-form-item label="录入人" prop="createBy">
+          <el-input v-model="queryParams.createBy" disabled/>
+        </el-form-item>
+
+        <el-form-item label="备注" prop="remarks">
+          <el-input v-model="queryParams.remarks" size="small" style="width:200px" :disabled="notChange"/>
+        </el-form-item>
+
+        <div style="width: 100%">
+          <el-button type="warning" size="small" @click="reconciliation" :disabled="notChange" v-if="queryParams.fBillstatus < '4'"
+            >对账</el-button>
+          <el-button type="primary" size="small" @click="confirmReconciliation" :disabled="notChange" v-if="queryParams.fBillstatus < '4'">确认对账</el-button>
+          <el-button type="warning" size="small" @click="handleExportItems">导出</el-button>
+          <el-button type="success" size="small" @click="backrRconciliation" v-if="queryParams.fBillstatus === '6'">撤销对账</el-button>
+<!--          <el-button type="info" size="small" @click="exportData">导出</el-button>-->
+          <el-button type="danger" size="small" :disabled="disappear" v-if="queryParams.fBillstatus === '4'" @click="backApproval">撤销审批</el-button>
+        </div>
+
+        <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
+      </el-form>
+
+      <el-table
+        v-loading="loading"
+        :data="DzfeeList"
+        @selection-change="handleSelectionChange_s"
+      >
+        <el-table-column label="行号" align="center" type="index" />
+        <el-table-column label="提单号" align="center" prop="fMblno" />
+        <el-table-column label="业务日期" align="center" prop="fBsdate">
+          <template slot-scope="scope">
+            <span v-if="scope.row.fBsdate === undefined">无</span>
+            <span v-else>{{scope.row.fBsdate.slice(0, 10)}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="费用名称" align="center" prop="fFeeName" />
+        <el-table-column label="收/付" align="center" prop="fSrcdc">
+          <template slot-scope="scope">
+            <span v-if="scope.row.fSrcdc == 'D'">收</span>
+            <span v-else-if="scope.row.fSrcdc == 'C'">付</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="金额" align="center" prop="fAmtdr" />
+        <el-table-column label="计价单位" align="center" prop="fFeeunitid" />
+        <el-table-column label="数量" align="center" prop="fQty" />
+        <el-table-column label="单价" align="center" prop="fUnitprice" />
+        <el-table-column label="本次金额" align="center" prop="fAmt" />
+
+        <el-table-column label="业务类型" align="center" prop="fBilltype">
+          <template slot-scope="scope">
+            <span v-if="scope.row.fBilltype == 'SJRK'">入库</span>
+            <span v-else-if="scope.row.fBilltype == 'SJCK'">出库</span>
+            <span v-else-if="scope.row.fBilltype == 'CKDB'">调拨</span>
+            <span v-else-if="scope.row.fBilltype == 'HQZY'">货权转移</span>
+            <span v-else-if="scope.row.fBilltype == 'JSCCF'">仓储费</span>
+            <span v-else>{{scope.row.fBilltype}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="来源编号" align="center" prop="srcBillNo" />
+        <el-table-column label="提单号" align="center" prop="fMblno" />
+        <el-table-column label="货物品名" align="center" prop="fProductName" />
+        <el-table-column label="品牌" align="center" prop="fMarks" />
+        <el-table-column label="计费起始日期" align="center" prop="fChargedate">
+          <template slot-scope="scope">
+            <span v-if="scope.row.fChargedate === undefined">无</span>
+            <span v-else>{{scope.row.fChargedate.slice(0, 10)}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="计费截止日期" align="center" prop="fBillingDeadline">
+          <template slot-scope="scope">
+            <span v-if="scope.row.fBillingDeadline === undefined">无</span>
+            <span v-else>{{scope.row.fBillingDeadline.slice(0, 10)}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="计费天数" align="center" prop="fBillingDays" />
+        <el-table-column label="库存天数" align="center" prop="fInventoryDays" />
+        <el-table-column label="备注" align="center" prop="fRemarks"/>
+        <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-delete"
+              :disabled="notChange"
+              @click.native.prevent="deleteRow(scope.$index,DzfeeList)"
+            >删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+
+      <div slot="footer" class="dialog-footer">
+        <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
+        <approval-comments v-if="addOrUpdateVisib" ref="ApprovalComments" @refreshDataList="returnData"></approval-comments>
+          <el-button v-if="approve === true" @click="goApproval">审批</el-button>
+          <el-button type="primary" v-if="queryParams.fBillstatus >= '3'"@click="addOrUpdateHandle()">查看审批流</el-button>
+          <el-button type="primary" @click="submitForm" :disabled="notChange">保 存</el-button>
+          <el-button v-if="cancelButton === true" @click="cancel">取 消</el-button>
+          <el-button v-if="cancelButton === false" @click="homePage">取消</el-button>
+      </div>
+
+      <!-- 添加或修改财务数据主对话框 -->
+      <el-dialog
+        :close-on-click-modal="false"
+        width="70%"
+        :title="title"
+        :visible.sync="innerVisible"
+        append-to-body
+      >
+        <el-form
+          :model="TWareHouseFees"
+          ref="feeListRules"
+          :rules="feeListRules"
+          label-width="80px"
+          :inline="true"
+        >
+
+          <el-form-item
+            label="货权方"
+            prop="fCorpid"
+          >
+            <el-select
+              v-model="TWareHouseFees.fCorpid"
+              filterable
+              remote
+              clearable
+              size="small"
+              style="width: 200px"
+              @keyup.enter.native="handleQuery"
+              :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-form-item label="结算单位" prop="fToCorpid">
+            <el-select
+              v-model="TWareHouseFees.fToCorpid"
+              placeholder="请选择结算单位"
+              :disabled="doNot"
+              filterable
+              remote
+              clearable
+              style="width: 200px"
+              size="small"
+              @keyup.enter.native="handleQuery"
+              :remote-method="corpsRemoteMethod"
+            >
+              <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-form-item label="提单号" prop="fMblno">
+            <el-input
+              clearable
+              v-model="TWareHouseFees.fMblno"
+              placeholder="请输入提单号"
+              style="width: 200px"
+              size="small"
+            />
+          </el-form-item>
+          <el-form-item label="收付" prop="fDc">
+            <el-col :span="8">
+              <el-select v-model="TWareHouseFees.fDc" size="small" style="width: 200px">
+                <el-option label="收" value="D" />
+                <el-option label="付" value="C" />
+              </el-select>
+            </el-col>
+          </el-form-item>
+          <el-form-item label="是否对账" prop="fReconciliation">
+            <el-col :span="8">
+              <el-select
+                v-model="TWareHouseFees.fReconciliation"
+                size="small"
+                style="width: 200px"
+              >
+                <el-option label="是" value="1" />
+                <el-option label="否" value="0" />
+              </el-select>
+            </el-col>
+          </el-form-item>
+
+          <el-form-item label="费用名称" prop="fFeeid">
+            <template>
+              <el-select
+                v-model="TWareHouseFees.fFeeid"
+                filterable
+                :disabled="browseStatus"
+                remote
+                size="small"
+                style="width:200px"
+                :remote-method="fWRemoteMethod"
+                placeholder="费用名称"
+                multiple
+              >
+                <el-option
+                  v-for="item in fWbuOptions"
+                  :key="item.fId"
+                  :label="item.fName"
+                  :value="item.fId"
+                >
+                </el-option>
+              </el-select>
+            </template>
+          </el-form-item>
+<!--          <el-form-item label="仓储业务" prop="fFeeid">
+            <el-select
+              v-model="TWareHouseFees.fBilltype"
+              size="small"
+              style="width:200px"
+              @change="changefBilltype"
+              placeholder="请选择仓储业务"
+            >
+              <el-option label="入库" value="SJRK"></el-option>
+              <el-option label="出库" value="SJCK"></el-option>
+              <el-option label="货权转移" value="HQZY"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="作业类型" prop="fBusinessType">
+            <el-select
+              v-model="TWareHouseFees.fBusinessType"
+              filterable
+              :disabled="browseStatus"
+              remote
+              size="small"
+              style="width:200px"
+              placeholder="作业类型"
+              multiple
+            >
+              <el-option
+                v-for="dict in businessTypeOption"
+                :key="dict.dictValue"
+                :label="dict.dictLabel"
+                :value="dict.dictValue"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>-->
+          <el-form-item label="审核日期" prop="timeExamine">
+            <el-date-picker
+              style="width: 240px"
+              size="small"
+              v-model="TWareHouseFees.timeExamine"
+              type="daterange"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              value-format="yyyy-MM-dd"
+              :default-time="['00:00:00', '23:59:59']"
+            >
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item label="对账日期" label-width="85px" prop="timeReconci" v-if="TWareHouseFees.fReconciliation == '1'">
+            <el-date-picker
+              v-model="TWareHouseFees.timeReconci"
+              size="small"
+              style="width: 240px"
+              value-format="yyyy-MM-dd"
+              type="daterange"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              :default-time="['00:00:00', '23:59:59']"
+            ></el-date-picker>
+          </el-form-item>
+          <el-form-item>
+            <!-- <el-button class="btnColor" type="info" size="mini">导入</el-button> -->
+            <el-button
+              type="cyan"
+              size="mini"
+              @click="searchFee"
+              >搜索</el-button
+            >
+            <el-button
+              type="info"
+              size="mini"
+              @click="resetQuery_s"
+              >重置</el-button
+            >
+          </el-form-item>
+
+          <el-table
+            v-loading="loading"
+            :data="feeList"
+            ref="feeList"
+            show-summary
+            :summary-method="getSum"
+            @selection-change="handleSelectionChange_s"
+          >
+            <el-table-column type="selection" width="55" align="center" />
+            <!-- <el-table-column label="制单部门" align="center" prop="fId" /> -->
+            <el-table-column label="行号" align="center" type="index"/>
+            <el-table-column label="货权方" align="center" prop="fName" show-overflow-tooltip/>
+            <el-table-column label="结算单位" align="center" prop="fFeesName" show-overflow-tooltip/>
+            <!-- <el-table-column label="账单日期" align="center" prop="fAccbilldate"/> -->
+            <el-table-column label="提单号" align="center" prop="fMblno" />
+            <el-table-column label="品名" align="center" prop="fProductName" />
+            <el-table-column label="业务日期" align="center" prop="fBsdate" />
+            <el-table-column label="业务类型" align="center" prop="fBilltype" />
+
+<!--            <el-table-column label="作业类型" align="center" prop="fBusinessType" />-->
+            <!--       <el-table-column label="单据类型" align="center" prop="fBilltype" />-->
+            <el-table-column
+              label="审核日期"
+              align="center"
+              prop="fReviewDate"
+            />
+            <el-table-column label="金额" align="center" prop="fAmtdr" />
+            <el-table-column label="本次金额" align="center" prop="fAmt"  width="100">
+              <template slot-scope="scope">
+                <el-input
+                  v-model="scope.row.fAmt"
+                  placeholder="请输入本次金额"
+                  clearable
+                  size="small"
+                  oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
+                  @change="imgChangeI(scope.row)"
+                />
+              </template>
+            </el-table-column>
+            <el-table-column label="费用名称" align="center" prop="fFeeName" />
+            <el-table-column label="备注" align="center" prop="fRemarks">
+              <template slot-scope="scope">
+              <el-input
+                v-model="scope.row.fRemarks"
+                placeholder="请输入备注"
+                clearable
+                size="small"
+                width="100"
+              />
+            </template>
+            </el-table-column>
+          </el-table>
+
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+          <el-button type="primary" @click="confirmImport">确 定</el-button>
+          <el-button @click="signOut">取 消</el-button>
+        </div>
+      </el-dialog>
+    </el-dialog>
+
+    <!-- 打印页面 -->
+<!--    <el-dialog-->
+<!--      :visible.sync="openPrint"-->
+<!--      width="80%"-->
+<!--      append-to-body-->
+<!--      :close-on-click-modal="false"-->
+<!--      title="对账单"-->
+<!--    >-->
+<!--      <el-table-->
+<!--        ref="table"-->
+<!--        id="print_area2"-->
+<!--        v-loading="loading"-->
+<!--        :data="printObject"-->
+<!--        @selection-change="handleSelectionChange_s">-->
+
+<!--        <el-table-column label="行号" align="center" type="index" width="70"/>-->
+<!--        <el-table-column label="提单号" align="center" prop="fMblno" />-->
+<!--        <el-table-column label="业务日期" align="center" prop="fBsdate">-->
+<!--          <template slot-scope="scope">-->
+<!--            <span>{{scope.row.fBsdate.slice(0,10)}}</span>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
+<!--        <el-table-column label="费用名称" align="center" prop="fFeeName" />-->
+<!--        <el-table-column label="收/付" align="center" prop="fSrcdc">-->
+<!--          <template slot-scope="scope">-->
+<!--            <span v-if="scope.row.fSrcdc == 'D'">收</span>-->
+<!--            <span v-else-if="scope.row.fSrcdc == 'C'">付</span>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
+<!--        <el-table-column label="金额" align="center" prop="fAmtdr" />-->
+<!--        <el-table-column label="本次金额" align="center" prop="fAmt"/>-->
+<!--        <el-table-column label="业务类型" align="center" prop="fBilltype">-->
+<!--          <template slot-scope="scope">-->
+<!--            <span v-if="scope.row.fBilltype == 'SJRK'">入库</span>-->
+<!--            <span v-else-if="scope.row.fBilltype == 'SJCK'">出库</span>-->
+<!--            <span v-else-if="scope.row.fBilltype == 'CKDB'">调拨</span>-->
+<!--            <span v-else-if="scope.row.fBilltype == 'HQZY'">货权转移</span>-->
+<!--            <span v-else>{{scope.row.fBilltype}}</span>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
+<!--      </el-table>-->
+<!--      <span slot="footer" class="dialog-footer">-->
+<!--        <el-button type="primary" style="marginTop:10px"  @click="printSomething">打印</el-button>-->
+<!--        <el-button @click="openPrint = false">取消</el-button>-->
+<!--      </span>-->
+<!--    </el-dialog>-->
+  </div>
+</template>
+
+<script>
+import { RevocationApproval, backFee, detailFee, Cfee, listFee, getFee, delFee, addFee, updateFee, exportFee, importFee,exportWarehousebillsitems} from "@/api/finances/contrast";
+import { listCorps } from '@/api/basicdata/corps'
+import { listFees } from '@/api/basicdata/fees'
+import AddOrUpdate from '@/views/viewApproval'
+import { queryUserVal } from '@/api/warehouseBusiness/agreement'
+import moment from 'moment'
+import print from "print-js"
+import ApprovalComments from '@/views/startApproval'
+import Global from '@/layout/components/global'
+export default {
+  name: "Fee",
+
+  data() {
+    return {
+      //控制结算单位是否可操作
+      doNot:false,
+      jFeetunitOptions:[],
+      // 总条数
+      total: 0,
+      totAL:0,
+      Ttime:0,
+      colseButton:true,
+      approval:[],
+      disappear:false,
+      addIndex:[],
+      addOrUpdateVisible: false,
+      addOrUpdateVisib:false,
+      contrastId:210,
+      // 审批状态
+      approve:false,
+      // 打印表
+      printObject:[],
+      //登陆人
+      Lander:'',
+      openPrint:false,
+      statrGo:true,
+      state_s: true,
+      notChange:false,
+      browseStatus:false,
+      options:'',
+      dateRange:"",
+      // 遮罩层
+      loading: true,
+      fAccbilldate: '',
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 财务数据主表格数据
+      feeList: [],
+      // 客户(客户数据)
+      fMblnoOptions: [],
+      fFeeunitidOptions: [],
+      fWbuOptions: [],
+      KHblnoOptions: [],
+      //打开内部弹窗
+      innerVisible: false,
+      selection: '',
+      // 弹出层标题
+      title: "",
+      // 操作人
+      Operator:'',
+      // 是否显示弹出层
+      open: false,
+      dialogVisible: false,
+      // 财务对账表格
+      DzfeeList: [],
+      // 财务主页面表格
+      contrastList: [],
+      empty:[],
+      nothing:[],
+      Fee:[],
+      //导入从表传主表
+      pass:{
+        fAmtdr:'',    //应收合计
+        fAmtcr:'',    //应付合计
+        fMblno:'',    //提单号
+        fName:'',      //货权方
+        fFeesName:'',   //结算单位
+        fCorpid:''     //结算单位ID
+      },
+      hide:false,
+      cancelButton:true,
+      businessTypeOption:[],
+      // 传值对象
+      TWareHouseFees:{
+        fCorpid:'',
+        fToCorpid:'',
+        fMblno:'',
+        fStatementNo:'',
+        fFeeid :'',
+        timeExamine:'',
+        timeInterval:'',
+        fDc:'D',
+        fReconciliation:'0',
+        timeReconci:'',
+        fBusinessType:'',
+        fBilltype:'SJRK'
+      },
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        fBillno: null,
+        fCtrlcorpid: null,
+        fCorpid: null,
+        tMblno: null,
+        fAmtdr: null,
+        fAmtcr: null,
+        fId:null,
+        fBilltype: null,
+        fBillstatus: null,
+        fRemarks: null,
+        fAccbilldate: null,
+        fDeptid: null,
+        createBy: null,
+        timeReconci: null
+      },
+      // 主表查询参数
+      tablefilter: {
+        pageNum: 1,
+        pageSize: 10,
+        fBillno: null,
+        fCtrlcorpid: null,
+        fId:null,
+        fCorpid: null,
+        tMblno: null,
+        fAmtdr: null,
+        fAmtcr: null,
+        fBilltype: null,
+        fBillstatus: null,
+        fRemarks: null,
+        fAccbilldate: null,
+        fDeptid: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      ruless:{
+        fCtrlcorpid: [
+          { required: true, message: ' ', trigger: 'blur' }
+        ],
+        fCorpid: [
+          { required: true, message: ' ', trigger: 'blur' }
+        ],
+        fAccbilldate: [
+          { required: true, message: ' ', trigger: 'blur' }
+        ]
+      },
+      feeListRules: {
+        fDc: [
+          { required:true,message: ' ', trigger:'blur' }
+        ],
+        fToCorpid: [
+          { required:true,message:' ', trigger:'blur'}
+        ],
+        fReconciliation: [
+          { required:true,message:' ', trigger:'blur'}
+        ],
+        timeExamine: [
+          { required: true, message: ' ', trigger: 'blur' }
+        ]
+      }
+    };
+  },
+  components: {
+    AddOrUpdate,
+    ApprovalComments
+  },
+  created() {
+    this.getList()
+    this.register()
+    this.getDicts("data_unitfees").then((response) => {
+      this.jFeetunitOptions = response.data;
+    });
+    this.getDicts("st_in_type").then((response) => {
+      this.businessTypeOption = response.data;
+    });
+  },
+  activated(){
+    this.Jump()
+  },
+  methods: {
+    //对账页面合计
+    listTotal(param){
+      const { columns, data } = param
+      const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '合计'
+        } else if (index ===7  || index ===8 ) {
+          const values = data.map(item => Number(item[column.property]))
+          if (!values.every(value => isNaN(value))) {
+            sums[index] = values.reduce((prev, curr) => {
+              const value = Number(curr)
+              if (!isNaN(value)) {
+                return prev + curr
+              } else {
+                return prev
+              }
+            }, 0)
+          }
+        }
+      })
+      return sums
+    },
+    //财务主取消
+    signOut(){
+      if(this.DzfeeList.length == 0){
+        this.doNot = false
+      }else{
+        this.doNot = true
+      }
+      this.innerVisible = false
+      this.feeList = []
+    },
+    // 审批跳转
+    Jump(){
+      this.approval = this.$route.query.data
+      if(this.approval){
+        this.colseButton = false
+        this.approval = JSON.parse(this.approval)
+        this.hide = false
+        this.doNot = true
+        this.notChange = true
+        this.approve = true
+        this.disappear = true
+        this.cancelButton = false
+        this.reset()
+        this.pass = {
+          fAmtdr: '',    //应收合计
+          fAmtcr: '',    //应付合计
+          fMblno: '',    //提单号
+          fName: '',      //货权方
+          fFeesName: '',   //结算单位
+          fCorpid: ''     //结算单位ID
+        }
+        getFee(this.approval.billId).then(response => {
+          this.Operator = response.data.tFee.createBy
+          this.DzfeeList = response.data.feeDoList
+          this.fWbuOptions = response.data.feesList
+          this.queryParams = response.data.tFee
+          this.fWbuOptions = response.data.feesList
+          this.fMblnoOptions = response.data.corps
+          this.open = true;
+          this.title = "修改财务数据主"
+        })
+      }
+    },
+    homepaGe(){
+      let view = {
+        fullPath: "/finance/contrast",
+        hash: "",
+        matched: Array(2),
+        meta: Object,
+        name: "Contrast",
+        params: Object,
+        path: "/finance/contrast",
+        query: Object,
+        title: "对账"
+      }
+      this.$router.push({ path: '/index'})
+      this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
+        if (this.isActive(view)) {
+          this.toLastView(visitedViews, view)
+        }
+      })
+      Global.$emit("removeCache", "closeSelectedTag", view);
+    },
+    homePage() {
+      this.open = false
+      let view = {
+        fullPath: "/finance/contrast",
+        hash: "",
+        matched: Array(2),
+        meta: Object,
+        name: "Contrast",
+        params: Object,
+        path: "/finance/contrast",
+        query: Object,
+        title: "对账"
+      }
+      this.$router.push({ path: '/index' })
+      this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
+        if (this.isActive(view)) {
+          this.toLastView(visitedViews, view)
+        }
+      })
+      Global.$emit("removeCache", "closeSelectedTag", view);
+    },
+    // 撤销审批
+    backApproval(){
+      let data = {
+        id:this.queryParams.fId,
+        actId:this.contrastId,
+        billId:this.queryParams.fId
+      }
+      RevocationApproval(data).then(response => {
+        this.msgSuccess("撤销审批成功")
+        this.disappear = true
+        this.open = false
+        this.getList()
+      })
+    },
+    returnData(){
+      this.addOrUpdateVisib = false
+      this.open = false
+      this.homepaGe()
+    },
+    getDataList(){
+    this.addOrUpdateVisible = false
+  },
+    // 审批按钮
+    goApproval(){
+      this.addOrUpdateVisib = true
+      this.$nextTick(() => {
+        this.$refs.ApprovalComments.init(this.queryParams.fId,this.contrastId)
+      })
+    },
+    // 查看审批流
+    addOrUpdateHandle(){
+      this.addOrUpdateVisible = true
+      this.addOrUpdateVisib = false
+      let id = '448'
+      let actId = '110'
+      this.$nextTick(() => {
+        this.$refs.addOrUpdate.init(this.queryParams.fId,this.contrastId)
+      })
+    },
+    // 撤销对账
+    backrRconciliation(){
+        this.queryParams.fBillstatus = '1'
+        let formDate = new window.FormData()
+        formDate.append('tFee',JSON.stringify(this.queryParams))
+        formDate.append("tFeeDo", JSON.stringify(this.DzfeeList))
+        backFee(formDate).then(response=>{
+          this.msgSuccess("撤回成功")
+          this.open = false
+          this.reset()
+          this.getList()
+        })
+    },
+
+    // 打印功能
+    printing() {
+      if(this.DzfeeList.length !== 0){
+        this.openPrint = true
+        this.printObject = this.DzfeeList
+      }else {
+        this.$message.error('无数据,请检查是否有数据');
+      }
+    },
+    // 确认打印
+    printSomething() {
+      // 此处的style即为打印时的样式
+      const style ='table tr td,th { border-collapse: collapse;padding:15px;border:.5px #000 solid;text-align:center;}'
+        // "@media print {} }";
+      print({
+        printable: "print_area2",
+        type: "html",
+        header:"对账表",
+        headerStyle: 'text-align:center;color:#000;width:100%;',
+        style: style,// 亦可使用引入的外部css;
+        scanStyles: false,
+      });
+    },
+    // 确认对账按钮功能
+    confirmReconciliation(){
+      this.$refs['ruless'].validate(valid => {
+        if(valid){
+          if(this.DzfeeList.length){
+            // this.queryParams.fBillstatus = '4'
+            let formDate = new window.FormData()
+            formDate.append('tFee',JSON.stringify(this.queryParams))
+            formDate.append("tFeeDo", JSON.stringify(this.DzfeeList))
+
+            Cfee(formDate).then(response=>{
+            this.open = false
+            this.msgSuccess("操作成功")
+            this.getList()
+          })
+        }else{
+            this.$message.error('表单为空不允许操作');
+          }
+        }
+      })
+    },
+    //导出
+    handleExportItems() {
+      const fIds = this.queryParams.fId
+      if(fIds !== null){
+        this.$confirm("是否确认导出所有计费物资明细数据?", "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        })
+          .then(function () {
+            return exportWarehousebillsitems(fIds);
+          })
+          .then((response) => {
+            this.download(response.msg);
+          });
+      }else{
+        this.$message("请先保存")
+      }
+
+    },
+    // 对账按钮功能
+    reconciliation(){
+      this.queryParameter = {
+        fToCorpid: this.queryParams.fCorpid,
+      }
+      this.innerVisible = true
+      this.feeList = []
+      this.TWareHouseFees = {
+        fCorpid:'',
+        fToCorpid:this.queryParams.fCorpid,
+        fMblno:'',
+        fStatementNo:'',
+        fFeeid :'',
+        timeExamine:'',
+        timeInterval:'',
+        fSrcdc:'',
+        fReconciliation:'0',
+        timeReconci: '',
+        fDc:'D',
+        fBilltype:''
+      }
+      if(this.queryParams.fCorpid){
+        this.doNot = true
+      }
+    },
+    // 默认录入人
+    register() {
+      queryUserVal().then((response)=>{
+        this.Lander = response.user.userName
+      })
+    },
+    // 合计
+    getSum(param){
+      const {columns,data} = param;
+      const sums = [];
+      columns.forEach((column, index) => {
+        sums[0] = '合计'
+        sums[10] = this.totAL.toFixed(2)
+        sums[9] = this.Ttime.toFixed(2)
+      });
+      return sums;
+    },
+    // 导入多选框
+    handleSelectionChange_s(selection) {
+      this.totAL = 0
+      this.Ttime = 0
+      this.selection = selection
+      if(this.selection.length == 0){
+        for (let item in this.feeList){
+          this.totAL += Number(this.feeList[item].fAmt)
+          this.Ttime += Number(this.feeList[item].fAmtdr)
+        }
+      }else{
+        for (let index in selection){
+          this.totAL += Number(selection[index].fAmt)
+          this.Ttime += Number(selection[index].fAmtdr)
+        }
+      }
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.totAL = 0
+      this.ids = selection.map(item => item.fId)
+      this.single = selection.length !== 1
+      this.multiple = !selection.length
+    },
+       // 金额筛选
+    imgChangeI(row){
+      if (row.fAmt && Number(row.fAmt) > Number(row.fAmtdr)){
+        this.$set(row, 'fAmt', row.fAmtdr)
+        this.state_s = true
+      }
+      if (this.selection.length !== 0){
+        this.totAL = 0
+        this.Ttime = 0
+        for (let item in this.selection){
+          this.totAL += Number(this.selection[item].fAmt)
+          this.Ttime += Number(this.selection[item].fAmtdr)
+        }
+      }else {
+        this.totAL = 0
+        this.Ttime = 0
+        for (let item in this.feeList){
+          this.totAL += Number(this.feeList[item].fAmt)
+          this.Ttime += Number(this.feeList[item].fAmtdr)
+        }
+      }
+    },
+
+    /* 添加财务数据主 导入*/
+    confirmImport(){
+      this.doNot = true
+      this.hide = true
+      this.pass.fAmtdr = 0
+      this.pass.fAmtcr = 0
+      for (let item in this.selection) {
+        this.pass.fAmtcr = Number(this.pass.fAmtcr)
+        this.pass.fAmtdr = Number(this.pass.fAmtdr)
+        this.pass.fAmtcr += Number(this.selection[item].fAmt)
+        this.pass.fAmtdr += Number(this.selection[item].fAmtdr.toFixed(2))
+      }
+      this.pass.fAmtcr.toFixed(2)
+      if(this.state_s == true) {
+        if (this.selection.length == '0') {
+          this.$message.error('未选择导入行');
+        } else {
+          for (let item in this.selection){
+            this.empty.push(this.selection[item].fMblno)
+            this.nothing.push(this.selection[item].fName)
+            if(this.DzfeeList.length === 0) {
+                this.DzfeeList = this.DzfeeList.concat(this.selection)
+
+              //去重提单号
+              this.empty = new Set(this.empty)
+              this.empty = Array.from(this.empty)
+              //去重货权方
+              this.nothing = new Set(this.nothing)
+              this.nothing = Array.from(this.nothing)
+              if(this.empty.length <= 1){
+                this.pass.fMblno = this.empty[0]
+              }else {
+                this.pass.fMblno = this.empty[0] + "..."
+              }
+              if (this.nothing.length <= 1){
+                this.pass.fName = this.nothing[0]
+              }else {
+                this.pass.fName = this.nothing[0] + "..."
+              }
+              // this.DzfeeList = this.DzfeeList.concat(this.Fee)
+              this.queryParams.tMblno = this.pass.fMblno //提单号
+              this.queryParams.fCorpid = this.TWareHouseFees.fToCorpid
+              this.queryParams.fCtrlcorpid = this.pass.fName
+              this.queryParams.fAmtcr = this.pass.fAmtcr
+              this.queryParams.fAmtdr = this.pass.fAmtdr
+              this.innerVisible = false
+              this.feeList = []
+              //  this.feeList = this.DzfeeList
+              this.TWareHouseFees = {
+                fCorpid:'',
+                fToCorpid:'',
+                fMblno:'',
+                fStatementNo:'',
+                fFeeid :'',
+                timeExamine:'',
+                timeInterval:'',
+                fSrcdc:'',
+                fReconciliation:'0',
+                timeReconci: '',
+                fDc:'D'
+              }
+              return
+            }else{
+              for(let li in this.DzfeeList){
+                if(this.selection[item].fSrcid !== this.DzfeeList[li].fSrcid){
+                  this.Fee = this.DzfeeList.concat(this.selection)
+                  console.log(this.Fee)
+                  let result = [];
+                  let obj = {};
+                  for(let lis in this.Fee){
+                    if(!obj[this.Fee[lis].fSrcid]){
+                      result.push(this.Fee[lis]);
+                      obj[this.Fee[lis].fSrcid] = true;
+                    }
+                  }
+                  //去重提单号
+                  this.empty = new Set(this.empty)
+                  this.empty = Array.from(this.empty)
+                  //去重货权方
+                  this.nothing = new Set(this.nothing)
+                  this.nothing = Array.from(this.nothing)
+                  if(this.empty.length <= 1){
+                    this.pass.fMblno = this.empty[0]
+                  }else {
+                    this.pass.fMblno = this.empty[0] + "..."
+                  }
+                  if (this.nothing.length <= 1){
+                    this.pass.fName = this.nothing[0]
+                  }else {
+                    this.pass.fName = this.nothing[0] + "..."
+                  }
+                  // this.DzfeeList = this.DzfeeList.concat(this.Fee)
+                  this.queryParams.tMblno = this.pass.fMblno //提单号
+                  this.queryParams.fCorpid = this.TWareHouseFees.fToCorpid
+                  this.queryParams.fCtrlcorpid = this.pass.fName
+                  this.queryParams.fAmtcr = this.pass.fAmtcr
+                  this.queryParams.fAmtdr = this.pass.fAmtdr
+                  this.innerVisible = false
+                  this.feeList = []
+                  //  this.feeList = this.DzfeeList
+                  this.TWareHouseFees = {
+                    fCorpid:'',
+                    fToCorpid:'',
+                    fMblno:'',
+                    fStatementNo:'',
+                    fFeeid :'',
+                    timeExamine:'',
+                    timeInterval:'',
+                    fSrcdc:'',
+                    fReconciliation:'0',
+                    timeReconci: '',
+                    fDc:'D'
+                  }
+                  this.DzfeeList = result
+                }else{
+                  let i = Number(item)+1
+                  this.$message.error('行号为'+ i +'重复')
+
+                }
+              }
+            }
+          }
+        }
+      }else if(this.state_s == false){
+        this.$message.error('本次金额不能大于原定金额');
+      }
+    },
+    // imgChangeI(fAmtdr,fAmt){
+    //   if (fAmt <= fAmtdr){
+    //     this.state_s = true
+    //   }else if(fAmt > fAmtdr){
+    //     this.$message.error('本次金额不能大于原定金额');
+    //     this.state_s = false
+    //   }
+    // },
+    // 导入搜索
+      searchFee() {
+      this.feeList = []
+      this.$refs['feeListRules'].validate(valid => {
+        if (valid){
+          importFee(this.TWareHouseFees).then(response =>{
+          this.feeList = response.rows
+            if(this.feeList.length !== 0){
+              this.$message.success("查询成功")
+              this.totAL = 0
+              this.Ttime = 0
+              for (let item in this.feeList){
+                this.totAL += Number(this.feeList[item].fAmt)
+                this.Ttime += Number(this.feeList[item].fAmtdr)
+              }
+            }else{
+              this.$message.error("暂无数据")
+            }
+         })
+        }
+      })
+    },
+
+     /** 打开导入表弹窗 */
+    openImportTable() {
+      this.$refs.import.show();
+    },
+    /** 查询财务数据主列表 */
+    getList() {
+      this.loading = true;
+       this.getDicts("approval_process").then(response => {
+        // this.feeList = response.rows;
+        this.options = response.data
+      });
+       console.log(this.tablefilter)
+      listFee(this.tablefilter).then(response => {
+        this.contrastList = response.rows
+        this.total = response.total
+        this.loading = false
+      })
+    },
+
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      // this.feeList = []
+      this.reset();
+      this.getList()
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        fId: null,
+        fBillno: null,
+        fCtrlcorpid: null,
+        fCorpid: null,
+        tMblno: null,
+        fAmtdr: null,
+        fAmtcr: null,
+        fBilltype: null,
+        fBillstatus: "0",
+        fRemarks: null,
+        fAccbilldate: null,
+        delFlag: null,
+        createBy: null,
+        fDeptid: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+      // this.searchFee()
+    },
+    changefBilltype(){
+      this.businessTypeOption = []
+      if (this.TWareHouseFees.fBilltype == 'SJRK'){
+        this.getDicts("st_in_type").then((response) => {
+          this.businessTypeOption = response.data;
+        });
+      }else if (this.TWareHouseFees.fBilltype == 'SJCK'){
+        this.getDicts("st_out_type").then((response) => {
+          this.businessTypeOption = response.data;
+        });
+      }else if(this.TWareHouseFees.fBilltype == 'HQZY'){
+        this.getDicts("st_trans_type").then((response) => {
+          this.businessTypeOption = response.data;
+        });
+      }
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      // this.resetForm("queryParams_s");
+      this.tablefilter = {
+        pageNum: 1,
+        pageSize: 10,
+        fBillno: null,
+        fCtrlcorpid: null,
+        fCorpid: null,
+        timeInterval:null,
+      }
+
+      this.handleQuery();
+      this.TWareHouseFees={
+        fCorpid:'',
+        fToCorpid:'',
+        fMblno:'',
+        fStatementNo:'',
+        fFeeid :'',
+        timeExamine:'',
+        timeInterval:'',
+        fSrcdc:'',
+        fReconciliation:'0'
+      }
+    },
+    //导入重置按钮
+    resetQuery_s() {
+      this.TWareHouseFees = {
+        fCorpid: '',
+        fToCorpid: '',
+        fMblno: '',
+        fStatementNo: '',
+        fFeeid: '',
+        timeExamine: '',
+        timeInterval: '',
+        fDc:'D',
+        fReconciliation:'0'
+      }
+    },
+    // 多选框选中数据
+    // handleSelectionChange(selection) {
+    //   this.ids = selection.map(item => item.fId)
+    //   this.single = selection.length!==1
+    //   this.multiple = !selection.length
+    // },
+
+    // handleSelectionChanGe(selection){
+    //   if(selection.length > 0) {
+    //     this.statrGo = false
+    //   }else{
+    //     this.statrGo = true
+    //   }
+    // },
+    /** 新增按钮操作 */
+    handleAdd() {
+      queryUserVal().then((response) => {
+        this.queryParams.createBy = response.user.userName
+      })
+      this.doNot = false
+      this.notChange = false
+      this.hide = true
+      this.reset()
+      this.DzfeeList = []
+      this.pass = {
+        fAmtdr: '',    //应收合计
+        fAmtcr: '',    //应付合计
+        fMblno: '',    //提单号
+        fName: '',      //货权方
+        fFeesName: '',   //结算单位
+        fCorpid: ''     //结算单位ID
+      }
+      this.open = true
+      this.title = '添加财务数据主'
+      this.queryParams = {
+        pageNum: 1,
+        pageSize: 10,
+        fBillno: null,
+        fCtrlcorpid: null,
+        fCorpid: null,
+        tMblno: null,
+        fAmtdr: null,
+        fId: null,
+        fAmtcr: null,
+        fBilltype: null,
+        fBillstatus: null,
+        fRemarks: null,
+        fAccbilldate: null,
+        fDeptid: null,
+        createBy: null,
+        timeReconci: null
+      }
+    },
+    // 查看按钮
+    check(row, res) {
+      this.doNot = true
+      this.notChange = true
+      getFee(row.fId).then(response => {
+        this.Operator = response.data.tFee.createBy
+        this.DzfeeList = response.data.feeDoList
+        this.fWbuOptions = response.data.feesList
+        this.queryParams = response.data.tFee
+        this.fWbuOptions = response.data.feesList
+        this.fMblnoOptions = response.data.corps
+        this.open = true
+        this.disappear = true
+        this.title = '修改财务数据主'
+        if (res == 1) {
+          this.notChange = true
+          if (this.Operator == this.Lander) {
+            this.disappear = false
+            this.reset()
+            this.pass = {
+              fAmtdr: '',    //应收合计
+              fAmtcr: '',    //应付合计
+              fMblno: '',    //提单号
+              fName: '',      //货权方
+              fFeesName: '',   //结算单位
+              fCorpid: ''     //结算单位ID
+            }
+            const fId = row.fId || this.ids
+            getFee(fId).then(response => {
+              this.DzfeeList = response.data.feeDoList
+              this.fWbuOptions = response.data.feesList
+              this.queryParams = response.data.tFee
+              this.fWbuOptions = response.data.feesList
+              this.fMblnoOptions = response.data.corps
+              this.open = true
+            })
+          } else {
+            this.notChange = true
+          }
+        } else {
+          this.notChange = true
+          this.reset()
+          this.pass = {
+            fAmtdr: '',    //应收合计
+            fAmtcr: '',    //应付合计
+            fMblno: '',    //提单号
+            fName: '',      //货权方
+            fFeesName: '',   //结算单位
+            fCorpid: ''     //结算单位ID
+          }
+          const fId = row.fId || this.ids
+          getFee(fId).then(response => {
+            this.DzfeeList = response.data.feeDoList
+            this.fWbuOptions = response.data.feesList
+            this.queryParams = response.data.tFee
+            this.fWbuOptions = response.data.feesList
+            this.fMblnoOptions = response.data.corps
+            this.open = true
+            this.open = true
+          })
+        }
+      })
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.notChange = false
+      this.hide = false
+      this.reset();
+      this.pass={
+        fAmtdr:'',    //应收合计
+        fAmtcr:'',    //应付合计
+        fMblno:'',    //提单号
+        fName:'',      //货权方
+        fFeesName:'',   //结算单位
+        fCorpid:''     //结算单位ID
+      }
+      const fId = row.fId || this.ids
+      getFee(fId).then(response => {
+        this.Operator = response.data.tFee.createBy
+        this.DzfeeList = response.data.feeDoList
+        this.fWbuOptions = response.data.feesList
+        this.queryParams = response.data.tFee
+        this.fMblnoOptions = response.data.corps
+        this.open = true;
+        this.title = "修改财务数据主";
+        if(this.DzfeeList){
+          this.doNot = true
+        }else{
+          this.doNot = false
+        }
+      });
+    },
+    /** 远程模糊查询用户 */
+    corpsRemoteMethod(name) {
+      if (name == null || name === "") {
+        return false;
+      }
+      let queryParams = { pageNum: 1, pageSize: 10, fName: name, type: 1 };
+      listCorps(queryParams).then((response) => {
+        this.fMblnoOptions = response.rows;
+        this.KHblnoOptions = response.rows;
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs['ruless'].validate(valid => {
+        if (valid) {
+          if (!this.queryParams.fId) {
+            this.queryParams.fBillstatus = '1'
+            let formData = new window.FormData()
+            formData.append('tFee', JSON.stringify(this.queryParams))
+            formData.append('tFeeDo', JSON.stringify(this.DzfeeList))
+            updateFee(formData).then(response => {
+              console.log(response)
+              this.queryParams = response.data.tFee
+              this.msgSuccess('新增成功')
+              // this.DzfeeList = []
+              // this.open = false;
+              this.getList()
+            })
+          } else {
+            this.pass.fAmtcr = 0
+            this.pass.fAmtdr = 0
+
+            for (let item in this.DzfeeList) {
+              this.pass.fAmtcr += Number(this.DzfeeList[item].fAmt)
+              this.pass.fAmtdr += Number(this.DzfeeList[item].fAmtdr)
+            }
+            this.queryParams.fAmtcr = Number(this.pass.fAmtcr.toFixed(2))
+            this.queryParams.fAmtdr = Number(this.pass.fAmtdr.toFixed(2))
+            this.pass.fAmtcr.toFixed(2)
+            this.queryParams.fBillstatus = '1'
+            let formData = new window.FormData()
+            formData.append('tFee', JSON.stringify(this.queryParams))
+            formData.append('tFeeDo', JSON.stringify(this.DzfeeList))
+            addFee(formData).then(response => {
+              this.msgSuccess('修改成功')
+              // this.DzfeeList = []
+              // this.open = false;
+              this.getList()
+            })
+          }
+        }
+      })
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const fIds = row.fId || this.ids
+      let tips = ''
+      detailFee(fIds).then(res => {
+        switch (res.msg) {
+          case '0': {
+            this.$message.error('当前数据已被其他操作员操作,请刷新页面')
+            break
+          }
+          case '1': {
+            tips = '当前主表有数据,从表无数据,确认是否删除?'
+            this.delete_s(fIds, tips)
+            break
+          }
+          case '2': {
+            tips = '当前主表有数据,从表有数据,确认是否删除?'
+            this.delete_s(fIds, tips)
+            break
+          }
+          default: {
+            return this.$message.error('未知错误,无状态')
+          }
+        }
+      })
+    },
+    delete_s(fIds, tips) {
+      this.$confirm(tips, '警告', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(function() {
+        return delFee(fIds)
+      }).then(() => {
+        this.getList()
+        this.msgSuccess('删除成功')
+      })
+    },
+    // 远程模糊查询费用名称
+    fWRemoteMethod(name) {
+      this.fWbuOptions = []
+      if (name == null || name === "") {
+        return false;
+      }
+      let queryParams = { pageNum: 1, pageSize: 10, fName: name };
+      listFees(queryParams).then((response) => {
+       this.fWbuOptions = response.rows
+      });
+    },
+
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有财务数据主数据项?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        return exportFee(queryParams);
+      }).then(response => {
+        this.download(response.msg);
+      })
+    },
+    exportData(){
+      // 在这里判断筛选DzfeeList={}
+      const DzfeeList = this.DzfeeList
+      this.$confirm('是否确认导出所有财务数据主数据项?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function(){
+        return
+      }).then(function(){
+        this.download(response.msg);
+      })
+    },
+    //清空一行
+    deleteRow(index, rows) {
+      this.queryParams.fAmtdr = 0
+      this.queryParams.fAmtcr = 0
+      rows.splice(index, 1)
+      for(let item in this.DzfeeList) {
+        this.queryParams.fAmtcr = this.DzfeeList[item].fAmt
+        this.queryParams.fAmtdr = this.DzfeeList[item].fAmtdr
+      }
+      if(this.DzfeeList == 0){
+        console.log("111")
+        this.doNot = false
+      }else{
+        this.doNot = true
+      }
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 13 - 13
src/views/track/singleCost/AddOrUpdate.vue

@@ -308,7 +308,7 @@
             filterable
             size="mini"
             style="width: 160px"
-            :disabled="scope.row.actId != '1080' ? true : false || disabled"
+            :disabled="scope.row.actId != '1090' ? true : false || disabled"
           >
                 <el-option
                   v-for="(dict, index) in fMblnoOptions"
@@ -328,7 +328,7 @@
                 <el-select
                   v-model="scope.row.fFeeid"
                   filterable
-                  :disabled="scope.row.actId != '1080' ? true : false || disabled"
+                  :disabled="scope.row.actId != '1090' ? true : false || disabled"
                   remote
                   placeholder="费用名称"
                 >
@@ -347,7 +347,7 @@
           width="180"
         >
           <template slot-scope="scope">
-            <el-select v-model="scope.row.fDc" placeholder="请选择" :disabled="scope.row.actId != '1080' ? true : false || disabled">
+            <el-select v-model="scope.row.fDc" placeholder="请选择" :disabled="scope.row.actId != '1090' ? true : false || disabled">
               <el-option label="收" value="D"></el-option>
               <el-option label="付" value="C"></el-option>
             </el-select>
@@ -362,7 +362,7 @@
               <el-select
                 v-model="scope.row.fFeeunitid"
                 placeholder="请选择计费单位"
-                :disabled="scope.row.actId != '1080' ? true : false || disabled"
+                :disabled="scope.row.actId != '1090' ? true : false || disabled"
                 clearable
               >
                 <el-option
@@ -380,7 +380,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fBillingQty" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fBillingQty" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -389,7 +389,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fUnitprice" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fUnitprice" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -398,7 +398,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fCurrency" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fCurrency" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -407,7 +407,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fTaxrate" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fTaxrate" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -416,7 +416,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fAmount" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fAmount" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -425,7 +425,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.fExrate" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.fExrate" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
         <el-table-column
@@ -434,7 +434,7 @@
           width="180"
         >
           <template slot-scope="scope">
-          <el-input v-model="scope.row.remarks" :disabled="scope.row.actId != '1080' ? true : false || disabled" placeholder="请输入内容"></el-input>
+          <el-input v-model="scope.row.remarks" :disabled="scope.row.actId != '1090' ? true : false || disabled" placeholder="请输入内容"></el-input>
           </template>
       </el-table-column>
        <el-table-column
@@ -449,7 +449,7 @@
             size="mini"
             type="text"
             icon="el-icon-delete"
-            :disabled="scope.row.actId != '1080' ? true : false || disabled"
+            :disabled="scope.row.actId != '1090' ? true : false || disabled"
             @click.native.prevent="deleteRow(scope.$index)"
           >删除</el-button
           >
@@ -638,7 +638,7 @@ export default {
     // 新增附件上传
     addRelevt() {
       this.feesList.push({
-        actId:'1080',
+        actId:'1090',
         fPid:this.feesList[0].fPid,
         fCorpid:'',
         fFeeid:'',