|
@@ -1,315 +0,0 @@
|
|
|
-<template>
|
|
|
|
|
- <!--布局容器-->
|
|
|
|
|
- <div class="container" style="width: 99%; margin-top: 0px">
|
|
|
|
|
- <templateTable
|
|
|
|
|
- :btnGroup="btnGroup"
|
|
|
|
|
- :formList="formList"
|
|
|
|
|
- :tableConfig="tableConfig"
|
|
|
|
|
- :data="tableData"
|
|
|
|
|
- @findPage="findPage"
|
|
|
|
|
- @handleSearchList="handleSearchList"
|
|
|
|
|
- :pagination="pageData"
|
|
|
|
|
- ></templateTable>
|
|
|
|
|
- <el-dialog
|
|
|
|
|
- v-dialogDrag
|
|
|
|
|
- title="结算"
|
|
|
|
|
- :visible.sync="dialogVisible"
|
|
|
|
|
- width="45%"
|
|
|
|
|
- @close="closdialogVisible"
|
|
|
|
|
- >
|
|
|
|
|
- <el-form
|
|
|
|
|
- :model="formData"
|
|
|
|
|
- :rules="rules"
|
|
|
|
|
- ref="formData"
|
|
|
|
|
- :inline="true"
|
|
|
|
|
- label-width="80px"
|
|
|
|
|
- size="small"
|
|
|
|
|
- >
|
|
|
|
|
- <el-row>
|
|
|
|
|
- <el-col :span="10">
|
|
|
|
|
- <el-form-item label="开始时间" prop="startDate">
|
|
|
|
|
- <el-date-picker
|
|
|
|
|
- v-model="formData.startDate"
|
|
|
|
|
- type="date"
|
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
|
- placeholder="选择日期时间"
|
|
|
|
|
- ></el-date-picker>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- <el-col :span="10">
|
|
|
|
|
- <el-form-item label="结束时间" prop="endDate">
|
|
|
|
|
- <el-date-picker
|
|
|
|
|
- v-model="formData.endDate"
|
|
|
|
|
- type="date"
|
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
|
- placeholder="选择日期时间"
|
|
|
|
|
- ></el-date-picker>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- <el-col :span="2">
|
|
|
|
|
- <el-form-item>
|
|
|
|
|
- <el-button type="primary" @click="handlingFeesFun()">查询</el-button>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- <el-col :span="10" prop="settlementAmount">
|
|
|
|
|
- <el-form-item label="结算金额" prop="settlementAmount">
|
|
|
|
|
- <el-input v-model="formData.settlementAmount" style="width: 220px;"></el-input>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- </el-row>
|
|
|
|
|
- </el-form>
|
|
|
|
|
-
|
|
|
|
|
- <el-table
|
|
|
|
|
- ref="singleTable"
|
|
|
|
|
- :data="protocolTableData"
|
|
|
|
|
- highlight-current-row
|
|
|
|
|
- border
|
|
|
|
|
- class="table_wrapper"
|
|
|
|
|
- @select="selectClick"
|
|
|
|
|
- style="width: 100%"
|
|
|
|
|
- :header-cell-class-name="cellClass"
|
|
|
|
|
- >
|
|
|
|
|
- <el-table-column type="selection" width="55" />
|
|
|
|
|
- <el-table-column type="index" label="序号" align="center" width="50"></el-table-column>
|
|
|
|
|
- <el-table-column label="总金额" align="center" prop="totAmount"></el-table-column>
|
|
|
|
|
- <el-table-column label="总单数" align="center" prop="totalorders"></el-table-column>
|
|
|
|
|
- </el-table>
|
|
|
|
|
- <span slot="footer" class="dialog-footer">
|
|
|
|
|
- <el-button size="small" @click="dialogVisible = false">取 消</el-button>
|
|
|
|
|
- <el-button size="small" type="primary" @click="submit('formData')">确 定</el-button>
|
|
|
|
|
- </span>
|
|
|
|
|
- </el-dialog>
|
|
|
|
|
- </div>
|
|
|
|
|
-</template>
|
|
|
|
|
- <script>
|
|
|
|
|
-import templateTable from "@/components/TemplateTable/index.vue";
|
|
|
|
|
-import { mapState } from "vuex";
|
|
|
|
|
-
|
|
|
|
|
-export default {
|
|
|
|
|
- name: "baosi",
|
|
|
|
|
- components: { templateTable },
|
|
|
|
|
- created() {},
|
|
|
|
|
- computed: {
|
|
|
|
|
- ...mapState({
|
|
|
|
|
- perms: state => state.user.perms
|
|
|
|
|
- })
|
|
|
|
|
- },
|
|
|
|
|
- data() {
|
|
|
|
|
- return {
|
|
|
|
|
- formList: [
|
|
|
|
|
- {
|
|
|
|
|
- label: " 结算金额:",
|
|
|
|
|
- prop: "settlementAmount",
|
|
|
|
|
- type: "input"
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
- btnGroup: [
|
|
|
|
|
- {
|
|
|
|
|
- name: "批量手续费结算",
|
|
|
|
|
- click: () => {
|
|
|
|
|
- return this.addSettlement();
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
-
|
|
|
|
|
- tableConfig: {
|
|
|
|
|
- columns: [
|
|
|
|
|
- {
|
|
|
|
|
- prop: "totalOrders",
|
|
|
|
|
- label: "结算单数",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- prop: "totalAmount",
|
|
|
|
|
- label: "结算总金额",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- prop: "startTime",
|
|
|
|
|
- label: "开始时间",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- prop: "endTime",
|
|
|
|
|
- label: "结束时间",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- prop: "settlementAmount",
|
|
|
|
|
- label: "结算金额",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- },
|
|
|
|
|
-
|
|
|
|
|
- {
|
|
|
|
|
- prop: "unsettledAmount",
|
|
|
|
|
- label: "未结算金额",
|
|
|
|
|
- type: "text"
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
- loading: true,
|
|
|
|
|
- isPaginationShow: true,
|
|
|
|
|
- isShowIndex: true,
|
|
|
|
|
- operationWidth:'50',
|
|
|
|
|
- optBtns:[
|
|
|
|
|
- {
|
|
|
|
|
- type:'primary',
|
|
|
|
|
- label:'结算',
|
|
|
|
|
- perm:'sys:nonDocumentary:balance',
|
|
|
|
|
- click:(row, index) => {return this.balanceFun(row)},
|
|
|
|
|
- }
|
|
|
|
|
- ],
|
|
|
|
|
- },
|
|
|
|
|
- tableData: [],
|
|
|
|
|
- formData: {},
|
|
|
|
|
- dialogVisible: false,
|
|
|
|
|
- pageData: {
|
|
|
|
|
- pageNum: 1,
|
|
|
|
|
- pageSize: 20
|
|
|
|
|
- },
|
|
|
|
|
- rules: {
|
|
|
|
|
- startDate: [
|
|
|
|
|
- { required: true, message: "请输入开始时间", trigger: "blur" }
|
|
|
|
|
- ],
|
|
|
|
|
- endDate: [
|
|
|
|
|
- { required: true, message: "请输入结束时间", trigger: "blur" }
|
|
|
|
|
- ],
|
|
|
|
|
- settlementAmount: [
|
|
|
|
|
- { required: true, message: "请输入结算金额", trigger: "blur" }
|
|
|
|
|
- ],
|
|
|
|
|
- },
|
|
|
|
|
- protocolTableData: [],
|
|
|
|
|
- toggleSelection:{}
|
|
|
|
|
- };
|
|
|
|
|
- },
|
|
|
|
|
- created() {
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- },
|
|
|
|
|
- methods: {
|
|
|
|
|
- // 查询
|
|
|
|
|
- handleSearchList() {
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- },
|
|
|
|
|
- //列表数据
|
|
|
|
|
- findPage(data) {
|
|
|
|
|
- this.tableConfig.loading = true;
|
|
|
|
|
- this.$api.task.settlementFees(this.pageData).then(res => {
|
|
|
|
|
- if (res.data) {
|
|
|
|
|
- this.tableData = res.data.content;
|
|
|
|
|
- this.pageData.pageNum = res.data.pageNum;
|
|
|
|
|
- this.pageData.pageSize = res.data.pageSize;
|
|
|
|
|
- this.pageData.totalSize = res.data.totalSize;
|
|
|
|
|
- this.tableConfig.loading = false;
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- },
|
|
|
|
|
- // 新增
|
|
|
|
|
- addSettlement() {
|
|
|
|
|
- this.formData={}
|
|
|
|
|
- this.dialogVisible = true;
|
|
|
|
|
- },
|
|
|
|
|
- closdialogVisible() {
|
|
|
|
|
- this.dialogVisible = false;
|
|
|
|
|
- },
|
|
|
|
|
-
|
|
|
|
|
- submit(formData) {
|
|
|
|
|
- this.$refs[formData].validate(valid => {
|
|
|
|
|
- if (valid) {
|
|
|
|
|
- this.$api.task
|
|
|
|
|
- .batchBalance({
|
|
|
|
|
- ...this.toggleSelection,
|
|
|
|
|
- ... this.formData,
|
|
|
|
|
- })
|
|
|
|
|
- .then(res => {
|
|
|
|
|
- if (res.code == "200") {
|
|
|
|
|
- this.$message({
|
|
|
|
|
- message: res.msg,
|
|
|
|
|
- type: "success"
|
|
|
|
|
- });
|
|
|
|
|
- this.dialogVisible = false;
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- } else {
|
|
|
|
|
- this.$message.error(res.msg);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- } else {
|
|
|
|
|
- return false;
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- },
|
|
|
|
|
- tablePageChange(val) {
|
|
|
|
|
- this.pageData.pageSize = val;
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- },
|
|
|
|
|
- tableCurrentChange(val) {
|
|
|
|
|
- this.pageData.pageNum = val;
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- },
|
|
|
|
|
- selectClick(selection, row) {
|
|
|
|
|
- if(selection.length==1){
|
|
|
|
|
- this.toggleSelection={
|
|
|
|
|
- totAmount:selection[0].totAmount,
|
|
|
|
|
- totalorders:selection[0].totalorders,
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- if (selection.length > 1) {
|
|
|
|
|
- let del_row = selection.shift();
|
|
|
|
|
- this.$refs.singleTable.toggleRowSelection(del_row, false); // 用于多选表格,切换某一行的选中状态,如果使用了第二个参数,则是设置这一行选中与否(selected 为 true 则选中);第二个参数为true时又变成了多选
|
|
|
|
|
- this.toggleSelection=del_row
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- cellClass(row) {
|
|
|
|
|
- if (row.columnIndex === 0) {
|
|
|
|
|
- return 'disabledCheck';
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- // 新增里的查询
|
|
|
|
|
- handlingFeesFun() {
|
|
|
|
|
- if(this.formData.startDate && this.formData.endDate){
|
|
|
|
|
- this.$api.task
|
|
|
|
|
- .totalQuery({ ...this.formData, agreementtype: 2 })
|
|
|
|
|
- .then(res => {
|
|
|
|
|
- if (res.code == "200") {
|
|
|
|
|
- this.protocolTableData = res.data.content;
|
|
|
|
|
- } else {
|
|
|
|
|
- this.$message.error(res.msg);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- }
|
|
|
|
|
- else{
|
|
|
|
|
- this.$message.error('请输入开始时间与结束时间进行查询!');
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- balanceFun(row){
|
|
|
|
|
- this.$prompt('请输入结算金额', '提示', {
|
|
|
|
|
- confirmButtonText: '确定',
|
|
|
|
|
- cancelButtonText: '取消',
|
|
|
|
|
- inputPattern: /^\d+(.\d{1,2})?$/,
|
|
|
|
|
- inputErrorMessage: '请输入结算金额'
|
|
|
|
|
- }).then(({ value }) => {
|
|
|
|
|
- this.$api.task
|
|
|
|
|
- .documentarySettle({ id:row.id,settlementAmount:value})
|
|
|
|
|
- .then(res => {
|
|
|
|
|
- if (res.code == "200") {
|
|
|
|
|
- this.$message({
|
|
|
|
|
- type: 'success',
|
|
|
|
|
- message: res.msg
|
|
|
|
|
- });
|
|
|
|
|
- this.findPage();
|
|
|
|
|
- } else {
|
|
|
|
|
- this.$message.error(res.msg);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- })
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-};
|
|
|
|
|
-</script>
|
|
|
|
|
-
|
|
|
|
|
-<style scoped lang="scss">
|
|
|
|
|
-.table_wrapper {
|
|
|
|
|
- /deep/ .disabledCheck .cell {
|
|
|
|
|
- visibility: hidden;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-</style>
|
|
|
|
|
-
|
|
|