|
@@ -0,0 +1,2567 @@
|
|
|
+<template>
|
|
|
+ <div class="app-container">
|
|
|
+ <el-form
|
|
|
+ :model="tableFilter"
|
|
|
+ ref="queryForm"
|
|
|
+ :inline="true"
|
|
|
+ v-show="showSearch"
|
|
|
+ label-width="68px"
|
|
|
+ >
|
|
|
+ <el-form-item label="申请编号" prop="fCtrlcorpid">
|
|
|
+ <el-input
|
|
|
+ v-model="tableFilter.fBillno"
|
|
|
+ placeholder="请输入系统编号"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="客户名称" prop="fCtrlcorpid">
|
|
|
+ <el-input
|
|
|
+ v-model="tableFilter.fCtrlcorpid"
|
|
|
+ placeholder="请输入货权方"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请人" prop="fCorpid">
|
|
|
+ <el-select
|
|
|
+ v-model="tableFilter.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="timeInterval">
|
|
|
+ <el-input
|
|
|
+ type="daterange"
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ v-model="tableFilter.remark"
|
|
|
+ >
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请金额" prop="timeInterval">
|
|
|
+ <el-input
|
|
|
+ type="daterange"
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ v-model="tableFilter.timeInterval"
|
|
|
+ >
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请日期" prop="timeInterval">
|
|
|
+ <el-date-picker
|
|
|
+ type="daterange"
|
|
|
+ size="small"
|
|
|
+ style="width: 240px"
|
|
|
+ v-model="tableFilter.timeInterval"
|
|
|
+ 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>
|
|
|
+ <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:charge: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="['finance:charge: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="['finance:charge:remove']"
|
|
|
+ >删除
|
|
|
+ </el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button
|
|
|
+ type="warning"
|
|
|
+ icon="el-icon-download"
|
|
|
+ size="mini"
|
|
|
+ @click="handleExport"
|
|
|
+ v-hasPermi="['finance:charge:export']"
|
|
|
+ >导出
|
|
|
+ </el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button
|
|
|
+ type="info"
|
|
|
+ icon="el-icon-download"
|
|
|
+ size="mini"
|
|
|
+ :disabled="single"
|
|
|
+ @click="handleUpdate(null, 2)"
|
|
|
+ v-hasPermi="['agreement:agreementStorage:export']"
|
|
|
+ >复制新增
|
|
|
+ </el-button>
|
|
|
+ </el-col>
|
|
|
+ <div class="tabSetting">
|
|
|
+ <right-toolbar
|
|
|
+ :showSearch.sync="showSearch"
|
|
|
+ @queryTable="getList"
|
|
|
+ ></right-toolbar>
|
|
|
+ <div style="margin: 0 12px">
|
|
|
+ <el-button
|
|
|
+ icon="el-icon-setting"
|
|
|
+ size="mini"
|
|
|
+ circle
|
|
|
+ @click="showSetting = !showSetting"
|
|
|
+ ></el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-row>
|
|
|
+ <el-dialog
|
|
|
+ title="自定义列显示"
|
|
|
+ :visible.sync="showSetting"
|
|
|
+ width="700px"
|
|
|
+ v-dialogDrag
|
|
|
+ >
|
|
|
+ <template slot="title">
|
|
|
+ <div class="avue-crud__dialog__header">
|
|
|
+ <span class="el-dialog__title">
|
|
|
+ <span
|
|
|
+ style="
|
|
|
+ display: inline-block;
|
|
|
+ width: 3px;
|
|
|
+ height: 20px;
|
|
|
+ margin-right: 5px;
|
|
|
+ float: left;
|
|
|
+ margin-top: 2px;
|
|
|
+ "
|
|
|
+ ></span>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <div>配置排序列数据(拖动调整顺序)</div>
|
|
|
+ <div style="margin-left: 17px">
|
|
|
+ <el-checkbox
|
|
|
+ v-model="allCheck"
|
|
|
+ label="全选"
|
|
|
+ @change="allChecked"
|
|
|
+ ></el-checkbox>
|
|
|
+ </div>
|
|
|
+ <div style="padding: 4px; display: flex; justify-content: center">
|
|
|
+ <draggable
|
|
|
+ v-model="setRowList"
|
|
|
+ group="site"
|
|
|
+ animation="300"
|
|
|
+ @start="onStart"
|
|
|
+ @end="onEnd"
|
|
|
+ handle=".indraggable"
|
|
|
+ >
|
|
|
+ <transition-group>
|
|
|
+ <div
|
|
|
+ v-for="item in setRowList"
|
|
|
+ :key="item.surface"
|
|
|
+ class="listStyle"
|
|
|
+ >
|
|
|
+ <div style="width: 500px" class="indraggable">
|
|
|
+ <div class="progress" :style="{ width: item.width + 'px' }">
|
|
|
+ <el-checkbox
|
|
|
+ :label="item.name"
|
|
|
+ v-model="item.checked"
|
|
|
+ :true-label="0"
|
|
|
+ :false-label="1"
|
|
|
+ >{{ item.name }}
|
|
|
+ </el-checkbox>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <el-input-number
|
|
|
+ v-model.number="item.width"
|
|
|
+ controls-position="right"
|
|
|
+ :min="1"
|
|
|
+ :max="500"
|
|
|
+ size="mini"
|
|
|
+ ></el-input-number>
|
|
|
+ </div>
|
|
|
+ </transition-group>
|
|
|
+ </draggable>
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="showSetting = false">取 消</el-button>
|
|
|
+ <el-button @click="delRow" type="danger">重 置</el-button>
|
|
|
+ <el-button type="primary" @click="save()">确 定</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+ <el-table
|
|
|
+ v-loading="loading"
|
|
|
+ :data="chargeList"
|
|
|
+ @selection-change="handleSelectionChange"
|
|
|
+ show-summary
|
|
|
+ :summary-method="listTotal"
|
|
|
+ >
|
|
|
+ <el-table-column type="selection" width="100" align="center" />
|
|
|
+ <el-table-column
|
|
|
+ label="序号"
|
|
|
+ type="index"
|
|
|
+ width="55"
|
|
|
+ align="center"
|
|
|
+ fixed
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ v-for="(item, index) in getRowList"
|
|
|
+ :key="index"
|
|
|
+ :label="item.name"
|
|
|
+ :width="item.width"
|
|
|
+ :prop="item.label"
|
|
|
+ align="center"
|
|
|
+ :show-overflow-tooltip="true"
|
|
|
+ sortable
|
|
|
+ :fixed="item.fixed"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ label="操作"
|
|
|
+ align="center"
|
|
|
+ class-name="small-padding fixed-width"
|
|
|
+ min-width="180"
|
|
|
+ fixed="right"
|
|
|
+ >
|
|
|
+ <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-edit"
|
|
|
+ @click="handleUpdate(scope.row)"
|
|
|
+ v-hasPermi="['finance:charge:edit']"
|
|
|
+ >修改
|
|
|
+ </el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-delete"
|
|
|
+ @click="handleDelete(scope.row)"
|
|
|
+ v-hasPermi="['finance:charge:remove']"
|
|
|
+ >删除
|
|
|
+ </el-button>
|
|
|
+
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <!-- <el-table-column label="单据类型" align="center" prop="fBilltype"/>-->
|
|
|
+ <!-- <el-table-column label="制单部门" align="center" prop="fDeptid"/>-->
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ <pagination
|
|
|
+ v-show="total > 0"
|
|
|
+ :total="total"
|
|
|
+ :page.sync="queryParams.pageNum"
|
|
|
+ :limit.sync="queryParams.pageSize"
|
|
|
+ @pagination="getList"
|
|
|
+ />
|
|
|
+
|
|
|
+ <!-- 添加或修改财务数据主对话框 -->
|
|
|
+ <el-dialog
|
|
|
+ v-dialogDrag
|
|
|
+ :fullscreen="dialogFull"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ :title="title"
|
|
|
+ :show-close="Xbutton"
|
|
|
+ :visible.sync="open"
|
|
|
+ width="70%"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <template slot="title">
|
|
|
+ <div class="avue-crud__dialog__header">
|
|
|
+ <span class="el-dialog__title">
|
|
|
+ <span
|
|
|
+ style="
|
|
|
+ display: inline-block;
|
|
|
+ width: 3px;
|
|
|
+ height: 20px;
|
|
|
+ margin-right: 5px;
|
|
|
+ float: left;
|
|
|
+ margin-top: 2px;
|
|
|
+ "
|
|
|
+ ></span>
|
|
|
+ </span>
|
|
|
+ <div class="avue-crud__dialog__menu enlarge" @click="full">
|
|
|
+ <i
|
|
|
+ style="
|
|
|
+ cursor: pointer;
|
|
|
+ display: block;
|
|
|
+ width: 12px;
|
|
|
+ height: 12px;
|
|
|
+ border: 1px solid #909399;
|
|
|
+ border-top: 3px solid #909399;
|
|
|
+ margin-top: -3px;
|
|
|
+ "
|
|
|
+ ></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <el-form
|
|
|
+ :model="queryParams"
|
|
|
+ :inline="true"
|
|
|
+ v-show="showSearch"
|
|
|
+ label-width="100px"
|
|
|
+ >
|
|
|
+ <el-form-item label="申请编号" prop="fCtrlcorpid">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParams.fCtrlcorpid"
|
|
|
+ placeholder="请输入货权方"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ :disabled="notChange"
|
|
|
+ style="width: 200px"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="客户名称" prop="fCorpid">
|
|
|
+ <el-select
|
|
|
+ v-model="queryParams.fCorpid"
|
|
|
+ filterable
|
|
|
+ remote
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ :remote-method="corpsRemoteMethod"
|
|
|
+ :disabled="doNot"
|
|
|
+ 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="fAccbilldate">
|
|
|
+ <el-date-picker
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ v-model="queryParams.fAccbilldate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择账单日期"
|
|
|
+ :disabled="notChange"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请人" prop="fBillno">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParams.fBillno"
|
|
|
+ placeholder="请输入系统编号"
|
|
|
+ clearable
|
|
|
+ disabled
|
|
|
+ style="width: 200px"
|
|
|
+ size="small"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="金额合计" prop="chargingMethod">
|
|
|
+ <el-select
|
|
|
+ v-model="queryParams.chargingMethod"
|
|
|
+ placeholder="请选择收费方式"
|
|
|
+ clearable
|
|
|
+ :disabled="notChange"
|
|
|
+ style="width: 200px"
|
|
|
+ size="small"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="(dict, index) in methodOptions"
|
|
|
+ :key="index.dictValue"
|
|
|
+ :label="dict.dictLabel"
|
|
|
+ :value="dict.dictValue"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请日期" prop="bank">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParams.bank"
|
|
|
+ placeholder="请输入收款银行"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ :disabled="notChange"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="税率" prop="invoiceNo">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParams.invoiceNo"
|
|
|
+ placeholder="请输入发票号"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ :disabled="notChange"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="备注" prop="fRemarks">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParams.fRemarks"
|
|
|
+ placeholder="请输入备注"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ :disabled="notChange"
|
|
|
+ @keyup.enter.native="handleQuery"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div style="width: 100%; display: flex; justify-content: space-between">
|
|
|
+ <div style="display: flex">
|
|
|
+
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="small"
|
|
|
+ @click="confirmCharge"
|
|
|
+ :disabled="notChange"
|
|
|
+ >请核</el-button
|
|
|
+ >
|
|
|
+ <el-button
|
|
|
+ type="success"
|
|
|
+ size="small"
|
|
|
+ @click="confirmCharge"
|
|
|
+ :disabled="notChange"
|
|
|
+ v-if="feeInfo"
|
|
|
+ >搜索</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ <div style="margin: 0 12px">
|
|
|
+ <el-button
|
|
|
+ icon="el-icon-setting"
|
|
|
+ size="mini"
|
|
|
+ circle
|
|
|
+ @click="showSetting2 = !showSetting2"
|
|
|
+ ></el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <el-dialog
|
|
|
+ title="自定义列显示"
|
|
|
+ :visible.sync="showSetting2"
|
|
|
+ width="700px"
|
|
|
+ v-dialogDrag
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <template slot="title">
|
|
|
+ <div class="avue-crud__dialog__header">
|
|
|
+ <span class="el-dialog__title">
|
|
|
+ <span
|
|
|
+ style="
|
|
|
+ display: inline-block;
|
|
|
+ width: 3px;
|
|
|
+ height: 20px;
|
|
|
+ margin-right: 5px;
|
|
|
+ float: left;
|
|
|
+ margin-top: 2px;
|
|
|
+ "
|
|
|
+ ></span>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <div>配置排序列数据(拖动调整顺序)</div>
|
|
|
+ <div style="margin-left: 17px">
|
|
|
+ <el-checkbox
|
|
|
+ v-model="allCheck2"
|
|
|
+ label="全选"
|
|
|
+ @change="allChecked2"
|
|
|
+ ></el-checkbox>
|
|
|
+ </div>
|
|
|
+ <div style="padding: 4px; display: flex; justify-content: center">
|
|
|
+ <draggable
|
|
|
+ v-model="setRowList2"
|
|
|
+ group="site"
|
|
|
+ animation="300"
|
|
|
+ @start="onStart"
|
|
|
+ @end="onEnd"
|
|
|
+ handle=".indraggable"
|
|
|
+ >
|
|
|
+ <transition-group>
|
|
|
+ <div
|
|
|
+ v-for="item in setRowList2"
|
|
|
+ :key="item.surface"
|
|
|
+ class="listStyle"
|
|
|
+ >
|
|
|
+ <div style="width: 500px" class="indraggable">
|
|
|
+ <div class="progress" :style="{ width: item.width + 'px' }">
|
|
|
+ <el-checkbox
|
|
|
+ :label="item.name"
|
|
|
+ v-model="item.checked"
|
|
|
+ :true-label="0"
|
|
|
+ :false-label="1"
|
|
|
+ >{{ item.name }}
|
|
|
+ </el-checkbox>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <el-input-number
|
|
|
+ v-model.number="item.width"
|
|
|
+ controls-position="right"
|
|
|
+ :min="1"
|
|
|
+ :max="500"
|
|
|
+ size="mini"
|
|
|
+ ></el-input-number>
|
|
|
+ </div>
|
|
|
+ </transition-group>
|
|
|
+ </draggable>
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="showSetting2 = false">取 消</el-button>
|
|
|
+ <el-button @click="delRow2" type="danger">重 置</el-button>
|
|
|
+ <el-button type="primary" @click="save2()">确 定</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+ <el-menu
|
|
|
+ :default-active="activeIndex"
|
|
|
+ class="el-menu-demo"
|
|
|
+ mode="horizontal"
|
|
|
+ @select="handleSelect"
|
|
|
+ text-color="#000"
|
|
|
+ active-text-color="#ffd04b"
|
|
|
+ >
|
|
|
+ <el-menu-item index="1">费用信息</el-menu-item>
|
|
|
+ <el-menu-item index="2">发票信息</el-menu-item>
|
|
|
+ </el-menu>
|
|
|
+ <el-table
|
|
|
+ v-if="feeInfo"
|
|
|
+ v-loading="loading"
|
|
|
+ :data="increase_s"
|
|
|
+ @selection-change="handleSelectionChange_s"
|
|
|
+ >
|
|
|
+ <!-- <el-table-column type="selection" width="55" align="center"/> -->
|
|
|
+ <el-table-column label="序号" type="index" align="center" />
|
|
|
+ <el-table-column
|
|
|
+ v-for="(item, index) in getRowList2"
|
|
|
+ :key="index"
|
|
|
+ :label="item.name"
|
|
|
+ :width="item.width"
|
|
|
+ :prop="item.label"
|
|
|
+ align="center"
|
|
|
+ :show-overflow-tooltip="true"
|
|
|
+ sortable
|
|
|
+ :fixed="item.fixed"
|
|
|
+ />
|
|
|
+ <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"
|
|
|
+ @click.native.prevent="deleteRow(scope.$index, increase_s)"
|
|
|
+ :disabled="notChange"
|
|
|
+ >删除
|
|
|
+ </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="immediateApproval"
|
|
|
+ >审批</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
|
|
|
+ v-dialogDrag
|
|
|
+ :fullscreen="dialogFull"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ width="70%"
|
|
|
+ :visible.sync="innerVisible"
|
|
|
+ title="导入数据"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ ref="form"
|
|
|
+ :model="queryParameter"
|
|
|
+ label-width="120px"
|
|
|
+ style="display: flex; flex-wrap: wrap"
|
|
|
+ >
|
|
|
+ <el-form-item label="申请编号" prop="fCtrlcorpid">
|
|
|
+ <el-select
|
|
|
+ v-model="queryParams.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="queryParameter.fToCorpid"
|
|
|
+ filterable
|
|
|
+ remote
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ :disabled="doNot"
|
|
|
+ @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="tMblno">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParameter.fMblno"
|
|
|
+ placeholder="请输入提单号"
|
|
|
+ style="width: 200px"
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="申请人" prop="fStatementNo">
|
|
|
+ <el-input
|
|
|
+ v-model="queryParameter.fStatementNo"
|
|
|
+ placeholder="请输入提单号"
|
|
|
+ size="small"
|
|
|
+ style="width: 200px"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="金额合计" prop="fFeeid">
|
|
|
+ <template>
|
|
|
+ <el-select
|
|
|
+ v-model="queryParameter.fFeeid"
|
|
|
+ filterable
|
|
|
+ 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" v-if="typevalue == 1">
|
|
|
+ <el-select
|
|
|
+ v-model="queryParameter.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"
|
|
|
+ v-if="typevalue == 1"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="queryParameter.fBusinessType"
|
|
|
+ filterable
|
|
|
+ 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"
|
|
|
+ v-if="typevalue == 1"
|
|
|
+ >
|
|
|
+ <el-date-picker
|
|
|
+ size="small"
|
|
|
+ style="width: 240px"
|
|
|
+ v-model="queryParameter.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>
|
|
|
+ <el-table
|
|
|
+ v-loading="loading"
|
|
|
+ :data="chargeList_s"
|
|
|
+ ref="chargeList"
|
|
|
+ show-summary
|
|
|
+ :summary-method="getSum"
|
|
|
+ @selection-change="handleSelectionChange_s"
|
|
|
+ >
|
|
|
+ <el-table-column type="selection" width="55" align="center" />
|
|
|
+ <el-table-column
|
|
|
+ label="序号"
|
|
|
+ type="index"
|
|
|
+ width="55"
|
|
|
+ align="center"
|
|
|
+ />
|
|
|
+ <el-table-column label="货权方" align="center" prop="fName" />
|
|
|
+ <el-table-column label="提单号" align="center" prop="fMblno" />
|
|
|
+ <el-table-column label="品名" align="center" prop="fProductName" />
|
|
|
+ <el-table-column label="业务日期" align="center">
|
|
|
+ <template slot-scope="scope" v-if="scope.row.fBsdate">
|
|
|
+ <span>{{ scope.row.fBsdate.slice(0, 10) }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <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>{{ scope.row.fBilltype }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ label="作业类型"
|
|
|
+ align="center"
|
|
|
+ prop="fBusinessType"
|
|
|
+ />
|
|
|
+ <el-table-column label="审核日期" align="center" prop="fReviewDate" />
|
|
|
+ <el-table-column label="费用名称" align="center" prop="fFeeName" />
|
|
|
+ <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="fRemarks">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input
|
|
|
+ v-model="scope.row.fRemarks"
|
|
|
+ placeholder="请输入备注"
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ width="100"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <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>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import {
|
|
|
+ collectFee,
|
|
|
+ collectFees,
|
|
|
+ listCharge,
|
|
|
+ listCharges,
|
|
|
+ getCharge,
|
|
|
+ getCharges,
|
|
|
+ delCharge,
|
|
|
+ delCharges,
|
|
|
+ addCharge,
|
|
|
+ addCharges,
|
|
|
+ exportCharge,
|
|
|
+ search,
|
|
|
+ searchs,
|
|
|
+ listCorps,
|
|
|
+ delCharge_s,
|
|
|
+ delCharge_ss,
|
|
|
+ backCharge,
|
|
|
+ revocation,
|
|
|
+ exportWarehousebillsitems,
|
|
|
+} from "@/api/finance/charge";
|
|
|
+import { listFees } from "@/api/basicdata/fees";
|
|
|
+import print from "print-js";
|
|
|
+import AddOrUpdate from "@/views/viewApproval";
|
|
|
+import ApprovalComments from "@/views/startApproval";
|
|
|
+import { queryUserVal } from "@/api/warehouseBusiness/agreement";
|
|
|
+import Global from "@/layout/components/global";
|
|
|
+import draggable from "vuedraggable";
|
|
|
+import Vue from "vue";
|
|
|
+import Cookies from "js-cookie";
|
|
|
+import { addSet, select } from "@/api/system/set";
|
|
|
+Vue.directive("dialogDrag", {
|
|
|
+ bind(el, binding, vnode, oldVnode) {
|
|
|
+ const dialogHeaderEl = el.querySelector(".el-dialog__header");
|
|
|
+ const dragDom = el.querySelector(".el-dialog");
|
|
|
+ const enlarge = el.querySelector(".enlarge");
|
|
|
+ dialogHeaderEl.style.cursor = "move";
|
|
|
+
|
|
|
+ // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
|
|
|
+ const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null);
|
|
|
+ if (enlarge) {
|
|
|
+ enlarge.onclick = (e) => {
|
|
|
+ dragDom.style.top = "0px";
|
|
|
+ dragDom.style.left = "0px";
|
|
|
+ };
|
|
|
+ }
|
|
|
+ dialogHeaderEl.onmousedown = (e) => {
|
|
|
+ // 鼠标按下,计算当前元素距离可视区的距离
|
|
|
+ const disX = e.clientX - dialogHeaderEl.offsetLeft;
|
|
|
+ const disY = e.clientY - dialogHeaderEl.offsetTop;
|
|
|
+
|
|
|
+ // 获取到的值带px 正则匹配替换
|
|
|
+ let styL, styT;
|
|
|
+
|
|
|
+ // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
|
|
|
+ if (sty.left.includes("%")) {
|
|
|
+ styL =
|
|
|
+ +document.body.clientWidth * (+sty.left.replace(/\%/g, "") / 100);
|
|
|
+ styT =
|
|
|
+ +document.body.clientHeight * (+sty.top.replace(/\%/g, "") / 100);
|
|
|
+ } else {
|
|
|
+ styL = +sty.left.replace(/\px/g, "");
|
|
|
+ styT = +sty.top.replace(/\px/g, "");
|
|
|
+ }
|
|
|
+
|
|
|
+ document.onmousemove = function (e) {
|
|
|
+ // 通过事件委托,计算移动的距离
|
|
|
+ const l = e.clientX - disX;
|
|
|
+ const t = e.clientY - disY;
|
|
|
+
|
|
|
+ // 移动当前元素
|
|
|
+
|
|
|
+ if (t + styT >= 0) {
|
|
|
+ dragDom.style.top = `${t + styT}px`;
|
|
|
+ }
|
|
|
+ dragDom.style.left = `${l + styL}px`;
|
|
|
+ // 将此时的位置传出去
|
|
|
+ // binding.value({x:e.pageX,y:e.pageY})
|
|
|
+ };
|
|
|
+
|
|
|
+ document.onmouseup = function (e) {
|
|
|
+ document.onmousemove = null;
|
|
|
+ document.onmouseup = null;
|
|
|
+ };
|
|
|
+ };
|
|
|
+ },
|
|
|
+});
|
|
|
+
|
|
|
+export default {
|
|
|
+ name: "Charge",
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ invoiceInfo:false,
|
|
|
+ feeInfo:true,
|
|
|
+ activeIndex:"1",
|
|
|
+ //全屏放大
|
|
|
+ dialogFull: false,
|
|
|
+ drag: false,
|
|
|
+ tableDate: [
|
|
|
+ {
|
|
|
+ surface: "1",
|
|
|
+ label: "fBillno",
|
|
|
+ name: "申请编号",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "2",
|
|
|
+ label: "fCtrlcorpid",
|
|
|
+ name: "客户名称",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "3",
|
|
|
+ label: "fConsigneername",
|
|
|
+ name: "开票单位",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "4",
|
|
|
+ label: "fName",
|
|
|
+ name: "金额",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "5",
|
|
|
+ label: "fNo",
|
|
|
+ name: "申请日期",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "6",
|
|
|
+ label: "fCntrcount",
|
|
|
+ name: "申请人",
|
|
|
+ fixed:"left",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "7",
|
|
|
+ label: "fBsdate",
|
|
|
+ name: "申请单位",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "8",
|
|
|
+ label: "fBillstatus",
|
|
|
+ name: "状态",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "9",
|
|
|
+ label: "vslName",
|
|
|
+ name: "审核日期",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "10",
|
|
|
+ label: "voyNo",
|
|
|
+ name: "审核人",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "11",
|
|
|
+ label: "remark",
|
|
|
+ name: "备注",
|
|
|
+ checked: 0,
|
|
|
+ width: 120,
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ tableDate2: [
|
|
|
+ {
|
|
|
+ surface: "1",
|
|
|
+ label: "fMblno",
|
|
|
+ name: "业务编号",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "2",
|
|
|
+ label: "fBscorpno",
|
|
|
+ name: "船名",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "3",
|
|
|
+ label: "fProductName",
|
|
|
+ name: "航次",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "4",
|
|
|
+ label: "fBsdate",
|
|
|
+ name: "提单号",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "5",
|
|
|
+ label: "fFeeName",
|
|
|
+ name: "费用名称",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "6",
|
|
|
+ label: "fSrcdc",
|
|
|
+ name: "币别",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "7",
|
|
|
+ label: "fBilltype",
|
|
|
+ name: "金额",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "8",
|
|
|
+ label: "fBusinessType",
|
|
|
+ name: "汇率",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "9",
|
|
|
+ label: "fAmtdr",
|
|
|
+ name: "业务类型",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "10",
|
|
|
+ label: "fAmt",
|
|
|
+ name: "状态",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "11",
|
|
|
+ label: "fRemarks",
|
|
|
+ name: "审核日期",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ surface: "12",
|
|
|
+ label: "remark",
|
|
|
+ name: "备注",
|
|
|
+ checked: 0,
|
|
|
+ width: 100,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ setRowList: [],
|
|
|
+ getRowList: [],
|
|
|
+ setRowList2: [],
|
|
|
+ getRowList2: [],
|
|
|
+ allCheck2: false,
|
|
|
+ showSetting2: false,
|
|
|
+ //自定义列宽
|
|
|
+ allCheck: false,
|
|
|
+ showSetting:false,
|
|
|
+
|
|
|
+ typevalue: "",
|
|
|
+ typeoptions: [
|
|
|
+ {
|
|
|
+ value: "1",
|
|
|
+ label: "仓储",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ value: "2",
|
|
|
+ label: "车队",
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ //收费方式
|
|
|
+ methodOptions: [],
|
|
|
+ doNot: false,
|
|
|
+ Lander: "",
|
|
|
+ Operator: "",
|
|
|
+ approve: false,
|
|
|
+ addOrUpdateVisible: false,
|
|
|
+ businessTypeOption: [],
|
|
|
+ contrastId: 220,
|
|
|
+ tablefilter: false,
|
|
|
+ hide: false,
|
|
|
+ openPrint: false,
|
|
|
+ notChange: false,
|
|
|
+ browseStatus: true,
|
|
|
+ nothing: [],
|
|
|
+ //打印表
|
|
|
+ printObject: [],
|
|
|
+ printStatus: false,
|
|
|
+ //导入状态
|
|
|
+ state_s: true,
|
|
|
+ fWbuOptions: [],
|
|
|
+ options: "",
|
|
|
+ // 遮罩层
|
|
|
+ loading: true,
|
|
|
+ //打开内部弹窗
|
|
|
+ innerVisible: false,
|
|
|
+ chargeList_s: [],
|
|
|
+ selection: "",
|
|
|
+ increase_s: [],
|
|
|
+ cancelButton: true,
|
|
|
+ // 选中数组
|
|
|
+ ids: [],
|
|
|
+ // 非单个禁用
|
|
|
+ single: true,
|
|
|
+ // 非多个禁用
|
|
|
+ multiple: true,
|
|
|
+ // 显示搜索条件
|
|
|
+ showSearch: true,
|
|
|
+ // 总条数
|
|
|
+ total: 0,
|
|
|
+ totAL: 0,
|
|
|
+ Ttime: 0,
|
|
|
+ //提单号暂存
|
|
|
+ fMblno: "",
|
|
|
+ // 财务数据主表格数据
|
|
|
+ chargeList: [],
|
|
|
+ // 弹出层标题
|
|
|
+ title: "",
|
|
|
+ // 是否显示弹出层
|
|
|
+ open: false,
|
|
|
+ fMblnoOptions: "",
|
|
|
+ //导入查询参数
|
|
|
+ queryParameter: {
|
|
|
+ fCorpid: "",
|
|
|
+ fToCorpid: "",
|
|
|
+ fMblno: "",
|
|
|
+ fStatementNo: "",
|
|
|
+ fFeeid: "",
|
|
|
+ timeExamine: "",
|
|
|
+ timeInterval: "",
|
|
|
+ fBilltype: "",
|
|
|
+ fBusinessType: "",
|
|
|
+ },
|
|
|
+ empty: [],
|
|
|
+ //导入从表传主表
|
|
|
+ pass: {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ },
|
|
|
+ Xbutton: true,
|
|
|
+ // 查询参数
|
|
|
+ queryParams: {
|
|
|
+ fId: null,
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ fBillno: null,
|
|
|
+ fCtrlcorpid: null,
|
|
|
+ fCorpid: null,
|
|
|
+ tMblno: null,
|
|
|
+ fAmtdr: null,
|
|
|
+ fAmtcr: null,
|
|
|
+ fBilltype: null,
|
|
|
+ fBillstatus: null,
|
|
|
+ fRemarks: null,
|
|
|
+ fAccbilldate: null,
|
|
|
+ fDeptid: null,
|
|
|
+ chargingMethod: null,
|
|
|
+ invoiceNo: null,
|
|
|
+ bank: null,
|
|
|
+ waterBillNo: null,
|
|
|
+ },
|
|
|
+ addOrUpdateVisib: false,
|
|
|
+ // 主表查询参数
|
|
|
+ tableFilter: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ fBillno: null,
|
|
|
+ fCtrlcorpid: null,
|
|
|
+ fCorpid: null,
|
|
|
+ tMblno: null,
|
|
|
+ fAmtdr: null,
|
|
|
+ fAmtcr: null,
|
|
|
+ fBilltype: null,
|
|
|
+ fBillstatus: null,
|
|
|
+ fRemarks: null,
|
|
|
+ fAccbilldate: null,
|
|
|
+ fDeptid: null,
|
|
|
+ },
|
|
|
+ approval: [],
|
|
|
+ // 表单参数
|
|
|
+ form: {},
|
|
|
+ };
|
|
|
+ },
|
|
|
+ components: {
|
|
|
+ draggable,
|
|
|
+ AddOrUpdate,
|
|
|
+ ApprovalComments,
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.setRowList = this.tableDate;
|
|
|
+ this.getRowList = this.tableDate;
|
|
|
+ this.setRowList2 = this.tableDate2;
|
|
|
+ this.getRowList2 = this.tableDate2;
|
|
|
+ this.typevalue = Cookies.get("sysType");
|
|
|
+ this.getList();
|
|
|
+ this.register();
|
|
|
+ this.getDicts("st_in_type").then((response) => {
|
|
|
+ this.businessTypeOption = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("data_settlement_type").then((response) => {
|
|
|
+ this.methodOptions = response.data;
|
|
|
+ });
|
|
|
+ // this.getRow();
|
|
|
+ },
|
|
|
+ activated() {
|
|
|
+ this.adoPt();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ handleSelect(key, keyPath) {
|
|
|
+ console.log(key, keyPath);
|
|
|
+ if(key === '1') {
|
|
|
+ this.feeInfo = true
|
|
|
+ }else{
|
|
|
+ this.feeInfo = false
|
|
|
+ this.invoiceInfo = true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //导出明细
|
|
|
+ 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("请先保存");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ full() {
|
|
|
+ this.dialogFull = !this.dialogFull;
|
|
|
+ },
|
|
|
+ //列设置全选
|
|
|
+ allChecked() {
|
|
|
+ if (this.allCheck == true) {
|
|
|
+ this.setRowList.map((e) => {
|
|
|
+ return (e.checked = 0);
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.setRowList.map((e) => {
|
|
|
+ return (e.checked = 1);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //查询列数据
|
|
|
+ getRow() {
|
|
|
+ let that = this;
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ };
|
|
|
+ select(this.data).then((res) => {
|
|
|
+ if (res.data.length != 0) {
|
|
|
+ this.getRowList = res.data.filter((e) => e.checked == 0);
|
|
|
+ this.setRowList = res.data;
|
|
|
+ this.setRowList = this.setRowList.reduce((res, item) => {
|
|
|
+ res.push({
|
|
|
+ surface: item.surface,
|
|
|
+ label: item.label,
|
|
|
+ name: item.name,
|
|
|
+ checked: item.checked,
|
|
|
+ width: item.width,
|
|
|
+ fixed: item.fixed,
|
|
|
+ });
|
|
|
+ return res;
|
|
|
+ }, []);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //保存列设置
|
|
|
+ save() {
|
|
|
+ this.showSetting = false;
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ sysTableSetList: this.setRowList,
|
|
|
+ };
|
|
|
+ addSet(this.data).then((res) => {
|
|
|
+ this.getRowList = this.setRowList.filter((e) => e.checked == 0);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //重置列表
|
|
|
+ delRow() {
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ };
|
|
|
+ resetModule(this.data).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.showSetting = false;
|
|
|
+ this.setRowList = this.tableDate;
|
|
|
+ this.getRowList = this.tableDate;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //列设置全选
|
|
|
+ allChecked2() {
|
|
|
+ if (this.allCheck2 == true) {
|
|
|
+ this.setRowList2.map((e) => {
|
|
|
+ return (e.checked = 0);
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.setRowList2.map((e) => {
|
|
|
+ return (e.checked = 1);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //查询列数据
|
|
|
+ getRow2() {
|
|
|
+ let that = this;
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费明细",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ };
|
|
|
+ select(this.data).then((res) => {
|
|
|
+ if (res.data.length != 0) {
|
|
|
+ this.getRowList2 = res.data.filter((e) => e.checked == 0);
|
|
|
+ this.setRowList2 = res.data;
|
|
|
+ this.setRowList2 = this.setRowList2.reduce((res, item) => {
|
|
|
+ res.push({
|
|
|
+ surface: item.surface,
|
|
|
+ label: item.label,
|
|
|
+ name: item.name,
|
|
|
+ checked: item.checked,
|
|
|
+ width: item.width,
|
|
|
+ fixed: item.fixed,
|
|
|
+ });
|
|
|
+ return res;
|
|
|
+ }, []);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //保存列设置
|
|
|
+ save2() {
|
|
|
+ this.showSetting2 = false;
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费明细",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ sysTableSetList: this.setRowList2,
|
|
|
+ };
|
|
|
+ addSet(this.data).then((res) => {
|
|
|
+ this.getRowList2 = this.setRowList2.filter((e) => e.checked == 0);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //重置列表
|
|
|
+ delRow2() {
|
|
|
+ this.data = {
|
|
|
+ tableName: "收费明细",
|
|
|
+ userId: Cookies.get("userName"),
|
|
|
+ };
|
|
|
+ resetModule(this.data).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.showSetting2 = false;
|
|
|
+ this.setRowList2 = this.tableDate2;
|
|
|
+ this.getRowList2 = this.tableDate2;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //开始拖拽事件
|
|
|
+ onStart() {
|
|
|
+ this.drag = true;
|
|
|
+ },
|
|
|
+ //拖拽结束事件
|
|
|
+ onEnd() {
|
|
|
+ this.drag = false;
|
|
|
+ },
|
|
|
+
|
|
|
+ //财务主取消
|
|
|
+ signOut() {
|
|
|
+ if (this.increase_s.length == 0) {
|
|
|
+ this.doNot = false;
|
|
|
+ } else {
|
|
|
+ this.doNot = true;
|
|
|
+ }
|
|
|
+ this.innerVisible = false;
|
|
|
+ this.feeList = [];
|
|
|
+ },
|
|
|
+ //收费页面合计
|
|
|
+ listTotal(param) {
|
|
|
+ const { columns, data } = param;
|
|
|
+ const sums = [];
|
|
|
+ columns.forEach((column, index) => {
|
|
|
+ if (index === 0) {
|
|
|
+ sums[index] = "合计";
|
|
|
+ } else if (index === 12 || index === 13) {
|
|
|
+ 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;
|
|
|
+ },
|
|
|
+ approvalRevocation() {
|
|
|
+ let data = {
|
|
|
+ id: this.queryParams.fId,
|
|
|
+ actId: this.contrastId,
|
|
|
+ billId: this.queryParams.fId,
|
|
|
+ };
|
|
|
+ revocation(data).then((data) => {
|
|
|
+ if (data.code === 200) {
|
|
|
+ this.$message.success("撤销成功");
|
|
|
+ this.open = false;
|
|
|
+ this.getList();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ returnData() {
|
|
|
+ this.addOrUpdateVisib = false;
|
|
|
+ this.open = false;
|
|
|
+ this.homepaGe();
|
|
|
+ },
|
|
|
+ getDataList() {
|
|
|
+ this.addOrUpdateVisible = false;
|
|
|
+ },
|
|
|
+ changefBilltype() {
|
|
|
+ this.businessTypeOption = [];
|
|
|
+ if (this.queryParameter.fBilltype == "SJRK") {
|
|
|
+ this.getDicts("st_in_type").then((response) => {
|
|
|
+ this.businessTypeOption = response.data;
|
|
|
+ });
|
|
|
+ } else if (this.queryParameter.fBilltype == "SJCK") {
|
|
|
+ this.getDicts("st_out_type").then((response) => {
|
|
|
+ this.businessTypeOption = response.data;
|
|
|
+ });
|
|
|
+ } else if (this.queryParameter.fBilltype == "HQZY") {
|
|
|
+ this.getDicts("st_trans_type").then((response) => {
|
|
|
+ this.businessTypeOption = response.data;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ homepaGe() {
|
|
|
+ let view = {
|
|
|
+ fullPath: "/finance/charge",
|
|
|
+ hash: "",
|
|
|
+ matched: Array(2),
|
|
|
+ meta: Object,
|
|
|
+ name: "Charge",
|
|
|
+ params: Object,
|
|
|
+ path: "/finance/charge",
|
|
|
+ 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);
|
|
|
+ },
|
|
|
+ adoPt() {
|
|
|
+ this.approval = this.$route.query.data;
|
|
|
+ if (this.approval) {
|
|
|
+ this.Xbutton = false;
|
|
|
+ this.approval = JSON.parse(this.approval);
|
|
|
+ this.hide = false;
|
|
|
+ this.tablefilter = true;
|
|
|
+ this.notChange = true;
|
|
|
+ this.approve = true;
|
|
|
+ this.cancelButton = false;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ getCharge(this.approval.billId).then((response) => {
|
|
|
+ this.Operator = response.data.tFee.createBy;
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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() {
|
|
|
+ this.open = false;
|
|
|
+ let view = {
|
|
|
+ fullPath: "/finance/charge",
|
|
|
+ hash: "",
|
|
|
+ matched: Array(2),
|
|
|
+ meta: Object,
|
|
|
+ name: "Charge",
|
|
|
+ params: Object,
|
|
|
+ path: "/finance/charge",
|
|
|
+ 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);
|
|
|
+ },
|
|
|
+ register() {
|
|
|
+ queryUserVal().then((response) => {
|
|
|
+ this.Lander = response.user.userName;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ immediateApproval() {
|
|
|
+ this.addOrUpdateVisib = true;
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.ApprovalComments.init(
|
|
|
+ this.approval.billId,
|
|
|
+ this.approval.actId
|
|
|
+ );
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 查看审批流
|
|
|
+ addOrUpdateHandle() {
|
|
|
+ this.addOrUpdateVisible = true;
|
|
|
+ this.addOrUpdateVisib = false;
|
|
|
+ let id = "448";
|
|
|
+ let actId = "110";
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.addOrUpdate.init(this.queryParams.fId, this.contrastId);
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // 撤销收费
|
|
|
+ revokeCharge() {
|
|
|
+ this.queryParams.fBillstatus = "1";
|
|
|
+ let formDate = new window.FormData();
|
|
|
+ formDate.append("tFee", JSON.stringify(this.queryParams));
|
|
|
+ formDate.append("tFeeDo", JSON.stringify(this.increase_s));
|
|
|
+ backCharge(formDate).then((response) => {
|
|
|
+ this.open = false;
|
|
|
+ this.msgSuccess("操作成功");
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // 查看按钮
|
|
|
+ check(row, res) {
|
|
|
+ this.notChange = true;
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ //大木
|
|
|
+ getCharge(row.fId).then((response) => {
|
|
|
+ this.Operator = response.data.tFee.createBy;
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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 = "收费列表";
|
|
|
+ this.tablefilter = true;
|
|
|
+ if (res == 1) {
|
|
|
+ this.notChange = true;
|
|
|
+ if (this.Operator == this.Lander) {
|
|
|
+ this.tablefilter = false;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ const fId = row.fId || this.ids;
|
|
|
+ getCharge(fId).then((response) => {
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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;
|
|
|
+ // this.$message.error('未知异常,请联系管理员')
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.notChange = true;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ const fId = row.fId || this.ids;
|
|
|
+ getCharge(fId).then((response) => {
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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 if (Cookies.get("sysType") == 2) {
|
|
|
+ //车队
|
|
|
+ getCharges(row.fId).then((response) => {
|
|
|
+ this.Operator = response.data.tFee.createBy;
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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 = "收费列表";
|
|
|
+ this.tablefilter = true;
|
|
|
+ if (res == 1) {
|
|
|
+ this.notChange = true;
|
|
|
+ if (this.Operator == this.Lander) {
|
|
|
+ this.tablefilter = false;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ const fId = row.fId || this.ids;
|
|
|
+ getCharges(fId).then((response) => {
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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;
|
|
|
+ // this.$message.error('未知异常,请联系管理员')
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.notChange = true;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ const fId = row.fId || this.ids;
|
|
|
+ getCharges(fId).then((response) => {
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //打印功能
|
|
|
+ printing() {
|
|
|
+ if (this.increase_s.length !== 0) {
|
|
|
+ this.printStatus = true;
|
|
|
+ this.printObject = this.increase_s;
|
|
|
+ } else {
|
|
|
+ this.$message.error("无数据,请检查是否有数据");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //确认打印
|
|
|
+ printSomething() {
|
|
|
+ // 此处的style即为打印时的样式
|
|
|
+ const style =
|
|
|
+ "table tr td,th { border-collapse: collapse;padding:0px;border:.5px #000 solid;text-align:center;}";
|
|
|
+ print({
|
|
|
+ printable: "print_area2",
|
|
|
+ type: "html",
|
|
|
+ header: "收费表",
|
|
|
+ style: style, // 亦可使用引入的外部css;
|
|
|
+ scanStyles: false,
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //关闭打印弹窗
|
|
|
+ closePrinting() {
|
|
|
+ this.$confirm("确认关闭?")
|
|
|
+ .then((_) => {
|
|
|
+ this.printStatus = false;
|
|
|
+ })
|
|
|
+ .catch((_) => {});
|
|
|
+ },
|
|
|
+ // 确认收费
|
|
|
+ confirmCharge() {
|
|
|
+ this.$refs["ruless"].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ if (this.increase_s.length) {
|
|
|
+ // this.queryParams.fBillstatus = '4'
|
|
|
+ let formDate = new window.FormData();
|
|
|
+ formDate.append("tFee", JSON.stringify(this.queryParams));
|
|
|
+ formDate.append("tFeeDo", JSON.stringify(this.increase_s));
|
|
|
+
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ collectFee(formDate).then((response) => {
|
|
|
+ this.open = false;
|
|
|
+ this.msgSuccess("操作成功");
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ collectFees(formDate).then((response) => {
|
|
|
+ this.open = false;
|
|
|
+ this.msgSuccess("操作成功");
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message.error("表单为空不允许操作");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ charGe() {
|
|
|
+ if (!Cookies.get("sysType")) {
|
|
|
+ return this.$message("请先选择业务类型");
|
|
|
+ }
|
|
|
+ this.queryParameter = {
|
|
|
+ fToCorpid: this.queryParams.fCorpid,
|
|
|
+ };
|
|
|
+ this.chargeList_s = [];
|
|
|
+ // this.queryParameter.fToCorpid = this.queryParams.fCorpid
|
|
|
+ this.innerVisible = true;
|
|
|
+ if (this.queryParams.fCorpid) {
|
|
|
+ this.doNot = true;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ 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.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ for (let index in selection) {
|
|
|
+ this.totAL += Number(selection[index].fAmt);
|
|
|
+ this.Ttime += Number(selection[index].fAmtdr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // this.getSummaries()
|
|
|
+ },
|
|
|
+ // 多选框选中数据
|
|
|
+ handleSelectionChange(selection) {
|
|
|
+ this.totAL = 0;
|
|
|
+ this.ids = selection.map((item) => item.fId);
|
|
|
+ this.single =
|
|
|
+ selection.length !== 1 ||
|
|
|
+ selection.map((item) => item.fBillstatus) == 6 ||
|
|
|
+ selection.map((item) => item.fBillstatus) == 4;
|
|
|
+ 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.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //确认导入
|
|
|
+ confirmImport() {
|
|
|
+ this.doNot = true;
|
|
|
+ this.hide = true;
|
|
|
+ for (let item in this.selection) {
|
|
|
+ this.pass.fAmtcr += Number(this.selection[item].fAmt);
|
|
|
+ this.pass.fAmtdr += Number(this.selection[item].fAmtdr);
|
|
|
+ }
|
|
|
+ console.log(this.pass.fAmtcr);
|
|
|
+ console.log(this.pass.fAmtdr);
|
|
|
+ // 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);
|
|
|
+ }
|
|
|
+ //去重提单号
|
|
|
+ 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.increase_s = this.increase_s.concat(this.selection);
|
|
|
+ this.queryParams.tMblno = this.pass.fMblno; //提单号
|
|
|
+ this.queryParams.fCtrlcorpid = this.pass.fName;
|
|
|
+ this.queryParams.fCorpid = this.queryParameter.fToCorpid;
|
|
|
+ this.queryParams.fAmtcr = Number(this.pass.fAmtcr).toFixed(2);
|
|
|
+ this.queryParams.fAmtdr = Number(this.pass.fAmtdr).toFixed(2);
|
|
|
+ this.innerVisible = false;
|
|
|
+ this.chargeList_s = [];
|
|
|
+ this.queryParameter = {
|
|
|
+ fCorpid: "",
|
|
|
+ fToCorpid: "",
|
|
|
+ fMblno: "",
|
|
|
+ fStatementNo: "",
|
|
|
+ fFeeid: "",
|
|
|
+ timeExamine: "",
|
|
|
+ timeInterval: "",
|
|
|
+ };
|
|
|
+ }
|
|
|
+ } else if (this.state_s == false) {
|
|
|
+ this.$message.error("本次金额不能大于原定金额");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /** 查询财务数据主列表 */
|
|
|
+ getList() {
|
|
|
+ this.loading = true;
|
|
|
+ this.getDicts("approval_process").then((response) => {
|
|
|
+ this.options = response.data;
|
|
|
+ });
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ //大木
|
|
|
+ listCharge(this.tableFilter).then((response) => {
|
|
|
+ console.log(response);
|
|
|
+ this.chargeList = response.rows;
|
|
|
+ this.total = response.total;
|
|
|
+ this.loading = false;
|
|
|
+ });
|
|
|
+ } else if (Cookies.get("sysType") == 2) {
|
|
|
+ //车队
|
|
|
+ listCharges(this.tableFilter).then((response) => {
|
|
|
+ console.log(response);
|
|
|
+ response.rows.map((e) => {
|
|
|
+ if (e.createTime) {
|
|
|
+ e.createTime = e.createTime.substring(0, 10);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ this.chargeList = response.rows;
|
|
|
+ this.total = response.total;
|
|
|
+ this.loading = false;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 取消按钮
|
|
|
+ cancel() {
|
|
|
+ this.open = false;
|
|
|
+ this.approve = false;
|
|
|
+ this.getList();
|
|
|
+ this.reset();
|
|
|
+ },
|
|
|
+ // 表单重置
|
|
|
+ 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();
|
|
|
+ },
|
|
|
+ /** 导入搜索 */
|
|
|
+ importSearch() {
|
|
|
+ this.chargeList_s = [];
|
|
|
+ if (this.queryParameter.fStatementNo) {
|
|
|
+ this.rules = {};
|
|
|
+
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ search(this.queryParameter).then((response) => {
|
|
|
+ this.chargeList_s = response.rows;
|
|
|
+ this.$message.success("查询成功");
|
|
|
+ for (let item in this.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ searchs(this.queryParameter).then((response) => {
|
|
|
+ this.chargeList_s = response.rows;
|
|
|
+ this.$message.success("查询成功");
|
|
|
+ for (let item in this.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.rules = {
|
|
|
+ fToCorpid: [{ required: true, message: " ", trigger: "blur" }],
|
|
|
+ timeExamine: [{ required: true, message: " ", trigger: "blur" }],
|
|
|
+ };
|
|
|
+ if (this.rules) {
|
|
|
+ this.$refs["form"].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ search(this.queryParameter).then((response) => {
|
|
|
+ this.chargeList_s = response.rows;
|
|
|
+ if (this.chargeList_s.length !== 0) {
|
|
|
+ this.$message.success("查询成功");
|
|
|
+ this.totAL = 0;
|
|
|
+ this.Ttime = 0;
|
|
|
+ for (let item in this.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message.error("暂无数据");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ searchs(this.queryParameter).then((response) => {
|
|
|
+ this.chargeList_s = response.rows;
|
|
|
+ if (this.chargeList_s.length !== 0) {
|
|
|
+ this.$message.success("查询成功");
|
|
|
+ this.totAL = 0;
|
|
|
+ this.Ttime = 0;
|
|
|
+ for (let item in this.chargeList_s) {
|
|
|
+ this.totAL += Number(this.chargeList_s[item].fAmt);
|
|
|
+ this.Ttime += Number(this.chargeList_s[item].fAmtdr);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message.error("暂无数据");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.$message.error("操作频繁");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /** 远程模糊查询用户 */
|
|
|
+ corpsRemoteMethod(name) {
|
|
|
+ if (name == null || name === "") {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ let queryParams = { fName: name };
|
|
|
+ listCorps(queryParams).then((response) => {
|
|
|
+ this.fMblnoOptions = response;
|
|
|
+ this.KHblnoOptions = response;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /** 重置按钮操作 */
|
|
|
+ resetQuery() {
|
|
|
+ this.tableFilter = {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ fBillno: null,
|
|
|
+ fCtrlcorpid: null,
|
|
|
+ fCorpid: null,
|
|
|
+ timeInterval: null,
|
|
|
+ };
|
|
|
+ this.handleQuery();
|
|
|
+ },
|
|
|
+ //导入重置按钮
|
|
|
+ resetQuery_s() {
|
|
|
+ this.queryParameter = {
|
|
|
+ fCorpid: "",
|
|
|
+ fToCorpid: "",
|
|
|
+ fMblno: "",
|
|
|
+ fStatementNo: "",
|
|
|
+ fFeeid: "",
|
|
|
+ timeExamine: "",
|
|
|
+ timeInterval: "",
|
|
|
+ };
|
|
|
+ },
|
|
|
+ // 远程模糊查询费用名称
|
|
|
+ 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;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /** 新增按钮操作 */
|
|
|
+ handleAdd() {
|
|
|
+ this.notChange = false;
|
|
|
+ this.hide = true;
|
|
|
+ this.reset();
|
|
|
+ (this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ }),
|
|
|
+ // this.queryParams = []
|
|
|
+ (this.increase_s = []);
|
|
|
+ this.queryParams = {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ fBillno: null,
|
|
|
+ fCtrlcorpid: null,
|
|
|
+ fCorpid: null,
|
|
|
+ tMblno: null,
|
|
|
+ fAmtdr: null,
|
|
|
+ fAmtcr: null,
|
|
|
+ fBilltype: null,
|
|
|
+ fBillstatus: null,
|
|
|
+ fRemarks: null,
|
|
|
+ fAccbilldate: null,
|
|
|
+ fDeptid: null,
|
|
|
+ chargingMethod: null,
|
|
|
+ invoiceNo: null,
|
|
|
+ bank: null,
|
|
|
+ waterBillNo: null,
|
|
|
+ fSystemType: Cookies.get("sysType"),
|
|
|
+ };
|
|
|
+ this.resetForm("queryParams");
|
|
|
+ this.open = true;
|
|
|
+ this.title = "添加财务数据主";
|
|
|
+ },
|
|
|
+ /** 修改按钮操作 */
|
|
|
+ handleUpdate(row) {
|
|
|
+ this.approve = false;
|
|
|
+ this.hide = false;
|
|
|
+ this.notChange = false;
|
|
|
+ this.reset();
|
|
|
+ this.pass = {
|
|
|
+ fAmtdr: 0, //应收合计
|
|
|
+ fAmtcr: 0, //应付合计
|
|
|
+ fMblno: "", //提单号
|
|
|
+ fName: "", //货权方
|
|
|
+ fFeesName: "", //结算单位
|
|
|
+ fCorpid: "", //结算单位ID
|
|
|
+ };
|
|
|
+ const fId = row.fId || this.ids;
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ //大木
|
|
|
+ getCharge(fId).then((response) => {
|
|
|
+ this.Operator = response.data.tFee.createBy;
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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 = "修改收费列表";
|
|
|
+ if (this.DzfeeList) {
|
|
|
+ this.doNot = true;
|
|
|
+ } else {
|
|
|
+ this.doNot = false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else if (Cookies.get("sysType") == 2) {
|
|
|
+ //车队
|
|
|
+ getCharges(fId).then((response) => {
|
|
|
+ this.Operator = response.data.tFee.createBy;
|
|
|
+ if (response.data.feeDoList != 0) {
|
|
|
+ response.data.feeDoList.map((e) => {
|
|
|
+ if (e.fBsdate) {
|
|
|
+ e.fBsdate = e.fBsdate.slice(0, 10);
|
|
|
+ }
|
|
|
+ if (e.fSrcdc) {
|
|
|
+ if (e.fSrcdc == "D") {
|
|
|
+ e.fSrcdc = "收";
|
|
|
+ } else {
|
|
|
+ e.fSrcdc = "付";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.increase_s = 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 = "修改收费列表";
|
|
|
+ if (this.DzfeeList) {
|
|
|
+ this.doNot = true;
|
|
|
+ } else {
|
|
|
+ this.doNot = false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /** 提交按钮 */
|
|
|
+ submitForm() {
|
|
|
+ this.$refs["ruless"].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ if (!this.queryParams.fId) {
|
|
|
+ // this.chargeList.fBillstatus = '1'
|
|
|
+ this.queryParams.fBillstatus = "1";
|
|
|
+ let formData = new window.FormData();
|
|
|
+ formData.append("tFee", JSON.stringify(this.queryParams));
|
|
|
+ formData.append("tFeeDo", JSON.stringify(this.increase_s));
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ addCharge(formData).then((response) => {
|
|
|
+ let feeBills = response.data.tFee;
|
|
|
+ this.$set(this.queryParams, "fId", response.data.tFee.fId);
|
|
|
+ this.$set(
|
|
|
+ this.queryParams,
|
|
|
+ "fBillno",
|
|
|
+ response.data.tFee.fBillno
|
|
|
+ );
|
|
|
+ this.msgSuccess("新增成功");
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ addCharges(formData).then((response) => {
|
|
|
+ let feeBills = response.data.tFee;
|
|
|
+ this.$set(this.queryParams, "fId", response.data.tFee.fId);
|
|
|
+ this.$set(
|
|
|
+ this.queryParams,
|
|
|
+ "fBillno",
|
|
|
+ response.data.tFee.fBillno
|
|
|
+ );
|
|
|
+ this.msgSuccess("新增成功");
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.queryParams.fBillstatus = "1";
|
|
|
+ let formData = new window.FormData();
|
|
|
+ formData.append("tFee", JSON.stringify(this.queryParams));
|
|
|
+ formData.append("tFeeDo", JSON.stringify(this.increase_s));
|
|
|
+ addCharge(formData).then((response) => {
|
|
|
+ this.msgSuccess("修改成功");
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /** 删除按钮操作 */
|
|
|
+ handleDelete(row) {
|
|
|
+ const fIds = row.fId || this.ids;
|
|
|
+ let tips = "";
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ //大木
|
|
|
+ delCharge_s(fIds).then((data) => {
|
|
|
+ switch (data.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("未知错误,无状态");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else if (Cookies.get("sysType") == 2) {
|
|
|
+ // 车队;
|
|
|
+ delCharge_ss(fIds).then((data) => {
|
|
|
+ switch (data.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 () {
|
|
|
+ if (Cookies.get("sysType") == 1) {
|
|
|
+ return delCharge(fIds);
|
|
|
+ } else if (Cookies.get("sysType") == 2) {
|
|
|
+ return delCharges(fIds);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ this.getList();
|
|
|
+ this.msgSuccess("删除成功");
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /** 导出按钮操作 */
|
|
|
+ handleExport() {
|
|
|
+ const queryParams = this.queryParams;
|
|
|
+ this.$confirm("是否确认导出所有财务数据主数据项?", "警告", {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning",
|
|
|
+ })
|
|
|
+ .then(function () {
|
|
|
+ return exportCharge(queryParams);
|
|
|
+ })
|
|
|
+ .then((response) => {
|
|
|
+ this.download(response.msg);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //清空一行
|
|
|
+ deleteRow(index, rows) {
|
|
|
+ this.queryParams.fAmtcr = 0;
|
|
|
+ this.queryParams.fAmtdr = 0;
|
|
|
+ rows.splice(index, 1);
|
|
|
+ for (let item in this.increase_s) {
|
|
|
+ this.queryParams.fAmtcr += this.increase_s[item].fAmt;
|
|
|
+ this.queryParams.fAmtdr += this.increase_s[item].fAmtdr;
|
|
|
+ }
|
|
|
+ if (this.increase_s == 0) {
|
|
|
+ console.log("111");
|
|
|
+ this.doNot = false;
|
|
|
+ } else {
|
|
|
+ this.doNot = true;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 财务结算方式(数据字典),对应data_settlement_type 字典翻译
|
|
|
+ methodTypeFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.methodOptions, row.chargingMethod);
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.tabSetting {
|
|
|
+ display: flex;
|
|
|
+ justify-content: flex-end;
|
|
|
+}
|
|
|
+.listStyle {
|
|
|
+ display: flex;
|
|
|
+ border-top: 1px solid #dcdfe6;
|
|
|
+ border-left: 1px solid #dcdfe6;
|
|
|
+ border-right: 1px solid #dcdfe6;
|
|
|
+}
|
|
|
+.listStyle:last-child {
|
|
|
+ border-bottom: 1px solid #dcdfe6;
|
|
|
+}
|
|
|
+.progress {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ padding: 2px;
|
|
|
+ background-color: rgba(0, 0, 0, 0.05);
|
|
|
+ height: 100%;
|
|
|
+}
|
|
|
+.avue-crud__dialog__header {
|
|
|
+ display: -webkit-box;
|
|
|
+ display: -ms-flexbox;
|
|
|
+ display: flex;
|
|
|
+ -webkit-box-align: center;
|
|
|
+ -ms-flex-align: center;
|
|
|
+ align-items: center;
|
|
|
+ -webkit-box-pack: justify;
|
|
|
+ -ms-flex-pack: justify;
|
|
|
+ justify-content: space-between;
|
|
|
+}
|
|
|
+.el-dialog__title {
|
|
|
+ color: rgba(0, 0, 0, 0.85);
|
|
|
+ font-weight: 500;
|
|
|
+ word-wrap: break-word;
|
|
|
+}
|
|
|
+.avue-crud__dialog__menu {
|
|
|
+ padding-right: 20px;
|
|
|
+ float: left;
|
|
|
+}
|
|
|
+.avue-crud__dialog__menu i {
|
|
|
+ color: #909399;
|
|
|
+ font-size: 15px;
|
|
|
+}
|
|
|
+.el-icon-full-screen {
|
|
|
+ cursor: pointer;
|
|
|
+}
|
|
|
+.el-icon-full-screen:before {
|
|
|
+ content: "\e719";
|
|
|
+}
|
|
|
+</style>
|