|
@@ -1,135 +1,389 @@
|
|
|
|
|
+<!--<template>-->
|
|
|
|
|
+<!-- <a-spin :spinning="confirmLoading">-->
|
|
|
|
|
+<!-- <j-form-container :disabled="formDisabled">-->
|
|
|
|
|
+<!-- <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">-->
|
|
|
|
|
+<!-- <a-form-item v-show="false"><a-input v-model="model.id"/></a-form-item>-->
|
|
|
|
|
+<!-- <a-row>-->
|
|
|
|
|
+<!-- <a-col :span="24">-->
|
|
|
|
|
+<!-- <a-form-model-item label="是否启用" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="status">-->
|
|
|
|
|
+<!-- <a-select v-model="model.status" style="width: 100%">-->
|
|
|
|
|
+<!-- <a-select-option value="0">关闭</a-select-option>-->
|
|
|
|
|
+<!-- <a-select-option value="1">启用</a-select-option>-->
|
|
|
|
|
+<!-- <!– <a-select-option v-for="(item,index) in cardinalList" style="width: 100%"–>-->
|
|
|
|
|
+<!-- <!– :key="index" :value="item.value">{{ item.text || item.label }}</a-select-option>–>–>-->
|
|
|
|
|
+<!-- </a-select>-->
|
|
|
|
|
+<!-- </a-form-model-item>-->
|
|
|
|
|
+<!-- </a-col>-->
|
|
|
|
|
+<!-- <a-col :span="24">-->
|
|
|
|
|
+<!-- <a-form-model-item label="绑定" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payTypeId">-->
|
|
|
|
|
+<!-- <a-select-->
|
|
|
|
|
+<!-- v-model="model.payTypeId"-->
|
|
|
|
|
+<!-- placeholder="请选择支付方式"-->
|
|
|
|
|
+<!-- :allowClear="true"-->
|
|
|
|
|
+<!-- >-->
|
|
|
|
|
+<!-- <a-select-option :value="item.id" v-for="(item,index) in payTypeList" :key="index">{{ item.name }}</a-select-option>-->
|
|
|
|
|
+<!-- </a-select>-->
|
|
|
|
|
+<!-- </a-form-model-item>-->
|
|
|
|
|
+<!-- </a-col>-->
|
|
|
|
|
+<!-- <a-col :span="24">-->
|
|
|
|
|
+<!-- <a-form-model-item label="商户号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="merchantNo">-->
|
|
|
|
|
+<!-- <a-input v-model="model.merchantNo" placeholder="请输入商户号" ></a-input>-->
|
|
|
|
|
+<!-- </a-form-model-item>-->
|
|
|
|
|
+<!-- </a-col>-->
|
|
|
|
|
+<!-- <a-col :span="24">-->
|
|
|
|
|
+<!-- <a-form-model-item label="终端号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="terminalNo">-->
|
|
|
|
|
+<!-- <a-input v-model="model.terminalNo" placeholder="请输入终端号" ></a-input>-->
|
|
|
|
|
+<!-- </a-form-model-item>-->
|
|
|
|
|
+<!-- </a-col>-->
|
|
|
|
|
+<!-- <a-col :span="24">-->
|
|
|
|
|
+<!-- <a-form-model-item label="TOKEN令牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="token">-->
|
|
|
|
|
+<!-- <a-input v-model="model.token" placeholder="请输入TOKEN令牌" ></a-input>-->
|
|
|
|
|
+<!-- </a-form-model-item>-->
|
|
|
|
|
+<!-- </a-col>-->
|
|
|
|
|
+<!-- </a-row>-->
|
|
|
|
|
+<!-- <a-button type="primary" @click="submitForm">确定</a-button>-->
|
|
|
|
|
+<!-- </a-form-model>-->
|
|
|
|
|
+<!-- </j-form-container>-->
|
|
|
|
|
+<!-- </a-spin>-->
|
|
|
|
|
+<!--</template>-->
|
|
|
|
|
+
|
|
|
|
|
+<!--<script>-->
|
|
|
|
|
+
|
|
|
|
|
+<!-- import { httpAction, getAction } from '@/api/manage'-->
|
|
|
|
|
+<!-- import { validateDuplicateValue } from '@/utils/util'-->
|
|
|
|
|
+<!-- import {getPayApiConfigInfo} from "../../../api/api";-->
|
|
|
|
|
+
|
|
|
|
|
+<!-- export default {-->
|
|
|
|
|
+<!-- name: 'payApiSettings',-->
|
|
|
|
|
+<!-- components: {-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- props: {-->
|
|
|
|
|
+<!-- //表单禁用-->
|
|
|
|
|
+<!-- disabled: {-->
|
|
|
|
|
+<!-- type: Boolean,-->
|
|
|
|
|
+<!-- default: false,-->
|
|
|
|
|
+<!-- required: false-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- data () {-->
|
|
|
|
|
+<!-- return {-->
|
|
|
|
|
+<!-- model:{-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- labelCol: {-->
|
|
|
|
|
+<!-- xs: { span: 24 },-->
|
|
|
|
|
+<!-- sm: { span: 3 },-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- wrapperCol: {-->
|
|
|
|
|
+<!-- xs: { span: 24 },-->
|
|
|
|
|
+<!-- sm: { span: 20 },-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- confirmLoading: false,-->
|
|
|
|
|
+<!-- validatorRules: {-->
|
|
|
|
|
+<!-- status: [-->
|
|
|
|
|
+<!-- { required: true, message: '请选择是否启用!'},-->
|
|
|
|
|
+<!-- ],-->
|
|
|
|
|
+<!-- payTypeId: [-->
|
|
|
|
|
+<!-- { required: true, message: '请选择关联支付方式!'},-->
|
|
|
|
|
+<!-- ],-->
|
|
|
|
|
+<!-- merchantNo: [-->
|
|
|
|
|
+<!-- { required: true, message: '请输入商户号!'},-->
|
|
|
|
|
+<!-- ],-->
|
|
|
|
|
+<!-- terminalNo: [-->
|
|
|
|
|
+<!-- { required: true, message: '请输入终端号!'},-->
|
|
|
|
|
+<!-- ],-->
|
|
|
|
|
+<!-- token: [-->
|
|
|
|
|
+<!-- { required: true, message: '请输入TOKEN令牌!'},-->
|
|
|
|
|
+<!-- ],-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- url: {-->
|
|
|
|
|
+<!-- add: "/business/busPayInterfaceConfig/add",-->
|
|
|
|
|
+<!-- edit: "/business/busPayInterfaceConfig/edit",-->
|
|
|
|
|
+<!-- query_payType: "/business/busRoomPayType/queryList",-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- payTypeList:[]-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- computed: {-->
|
|
|
|
|
+<!-- formDisabled(){-->
|
|
|
|
|
+<!-- return this.disabled-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- created () {-->
|
|
|
|
|
+<!-- //备份model原始值-->
|
|
|
|
|
+<!-- this.modelDefault = JSON.parse(JSON.stringify(this.model));-->
|
|
|
|
|
+<!-- var _info = JSON.parse(localStorage.getItem("storeInfo"));-->
|
|
|
|
|
+<!-- setTimeout(() => {-->
|
|
|
|
|
+<!-- getPayApiConfigInfo({-->
|
|
|
|
|
+<!-- }).then(res => {-->
|
|
|
|
|
+<!-- console.log(res)-->
|
|
|
|
|
+<!-- if (res.code == 200 && res.result ) {-->
|
|
|
|
|
+<!-- var info = res.result-->
|
|
|
|
|
+<!-- this.model = {-->
|
|
|
|
|
+<!-- id: info.id,-->
|
|
|
|
|
+<!-- status :info.status.toString(),-->
|
|
|
|
|
+<!-- payTypeId:info.payTypeId,-->
|
|
|
|
|
+<!-- merchantNo:info.merchantNo,-->
|
|
|
|
|
+<!-- terminalNo:info.terminalNo,-->
|
|
|
|
|
+<!-- token:info.token-->
|
|
|
|
|
+<!-- };-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- })-->
|
|
|
|
|
+<!-- }, 100)-->
|
|
|
|
|
+
|
|
|
|
|
+<!-- getAction(this.url.query_payType,{}).then((res)=>{-->
|
|
|
|
|
+<!-- if(res.success){-->
|
|
|
|
|
+<!-- this.payTypeList = res.result-->
|
|
|
|
|
+<!-- }else{-->
|
|
|
|
|
+
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- })-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- methods: {-->
|
|
|
|
|
+<!-- add () {-->
|
|
|
|
|
+<!-- this.edit(this.modelDefault);-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- edit (record) {-->
|
|
|
|
|
+<!-- this.model = Object.assign({}, record);-->
|
|
|
|
|
+<!-- this.visible = true;-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- submitForm () {-->
|
|
|
|
|
+<!-- const that = this;-->
|
|
|
|
|
+<!-- // 触发表单验证-->
|
|
|
|
|
+<!-- this.$refs.form.validate(valid => {-->
|
|
|
|
|
+<!-- if (valid) {-->
|
|
|
|
|
+<!-- that.confirmLoading = true;-->
|
|
|
|
|
+<!-- let httpurl = '';-->
|
|
|
|
|
+<!-- let method = '';-->
|
|
|
|
|
+<!-- if(!this.model.id){-->
|
|
|
|
|
+<!-- httpurl+=this.url.add;-->
|
|
|
|
|
+<!-- method = 'post';-->
|
|
|
|
|
+<!-- var info = JSON.parse(localStorage.getItem("storeInfo"));-->
|
|
|
|
|
+<!-- this.model.hotelId = info.id;-->
|
|
|
|
|
+<!-- }else{-->
|
|
|
|
|
+<!-- httpurl+=this.url.edit;-->
|
|
|
|
|
+<!-- method = 'put';-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- httpAction(httpurl,this.model,method).then((res)=>{-->
|
|
|
|
|
+<!-- if(res.success){-->
|
|
|
|
|
+<!-- that.$message.success(res.message);-->
|
|
|
|
|
+<!-- that.$emit('ok');-->
|
|
|
|
|
+<!-- that.model.id = res.result.id-->
|
|
|
|
|
+<!-- }else{-->
|
|
|
|
|
+<!-- that.$message.warning(res.message);-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- }).finally(() => {-->
|
|
|
|
|
+<!-- that.confirmLoading = false;-->
|
|
|
|
|
+<!-- })-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+
|
|
|
|
|
+<!-- })-->
|
|
|
|
|
+<!-- },-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!-- }-->
|
|
|
|
|
+<!--</script>-->
|
|
|
|
|
+
|
|
|
<template>
|
|
<template>
|
|
|
- <a-spin :spinning="confirmLoading">
|
|
|
|
|
- <j-form-container :disabled="formDisabled">
|
|
|
|
|
- <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
|
|
|
|
|
- <a-form-item v-show="false"><a-input v-model="model.id"/></a-form-item>
|
|
|
|
|
- <a-row>
|
|
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-model-item label="是否启用" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="status">
|
|
|
|
|
- <a-select v-model="model.status" style="width: 100%">
|
|
|
|
|
- <a-select-option value="0">关闭</a-select-option>
|
|
|
|
|
- <a-select-option value="1">启用</a-select-option>
|
|
|
|
|
- <!-- <a-select-option v-for="(item,index) in cardinalList" style="width: 100%"-->
|
|
|
|
|
- <!-- :key="index" :value="item.value">{{ item.text || item.label }}</a-select-option>–>-->
|
|
|
|
|
- </a-select>
|
|
|
|
|
- </a-form-model-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-model-item label="绑定" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payTypeId">
|
|
|
|
|
|
|
+ <a-card :bordered="false">
|
|
|
|
|
+ <!-- 查询区域 -->
|
|
|
|
|
+ <div class="table-page-search-wrapper">
|
|
|
|
|
+ <a-form layout="inline" @keyup.enter.native="searchQuery">
|
|
|
|
|
+ <a-row :gutter="24">
|
|
|
|
|
+ <a-col :md="6" :sm="8">
|
|
|
|
|
+ <a-form-item>
|
|
|
<a-select
|
|
<a-select
|
|
|
- v-model="model.payTypeId"
|
|
|
|
|
- placeholder="请选择支付方式"
|
|
|
|
|
|
|
+ v-model="queryParam.payTypeId"
|
|
|
|
|
+ placeholder="请选择"
|
|
|
:allowClear="true"
|
|
:allowClear="true"
|
|
|
>
|
|
>
|
|
|
<a-select-option :value="item.id" v-for="(item,index) in payTypeList" :key="index">{{ item.name }}</a-select-option>
|
|
<a-select-option :value="item.id" v-for="(item,index) in payTypeList" :key="index">{{ item.name }}</a-select-option>
|
|
|
</a-select>
|
|
</a-select>
|
|
|
- </a-form-model-item>
|
|
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :md="4" :sm="6">
|
|
|
|
|
+ <a-form-item>
|
|
|
|
|
+ <j-input placeholder="请输入商户号" v-model="queryParam.merchantNo"></j-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
</a-col>
|
|
</a-col>
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-model-item label="商户号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="merchantNo">
|
|
|
|
|
- <a-input v-model="model.merchantNo" placeholder="请输入商户号" ></a-input>
|
|
|
|
|
- </a-form-model-item>
|
|
|
|
|
|
|
+ <a-col :md="4" :sm="6">
|
|
|
|
|
+ <a-form-item>
|
|
|
|
|
+ <j-input placeholder="请输入终端号" v-model="queryParam.terminalNo"></j-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
</a-col>
|
|
</a-col>
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-model-item label="终端号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="terminalNo">
|
|
|
|
|
- <a-input v-model="model.terminalNo" placeholder="请输入终端号" ></a-input>
|
|
|
|
|
- </a-form-model-item>
|
|
|
|
|
|
|
+ <a-col :md="4" :sm="6">
|
|
|
|
|
+ <a-form-item>
|
|
|
|
|
+ <j-input placeholder="请输入TOKEN令牌" v-model="queryParam.token"></j-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
</a-col>
|
|
</a-col>
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-model-item label="TOKEN令牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="token">
|
|
|
|
|
- <a-input v-model="model.token" placeholder="请输入TOKEN令牌" ></a-input>
|
|
|
|
|
- </a-form-model-item>
|
|
|
|
|
|
|
+ <a-col :md="4" :sm="6">
|
|
|
|
|
+ <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
|
|
|
|
+ <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
|
|
|
|
+ <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
|
|
|
|
+ </span>
|
|
|
</a-col>
|
|
</a-col>
|
|
|
</a-row>
|
|
</a-row>
|
|
|
- <a-button type="primary" @click="submitForm">确定</a-button>
|
|
|
|
|
- </a-form-model>
|
|
|
|
|
- </j-form-container>
|
|
|
|
|
- </a-spin>
|
|
|
|
|
|
|
+ </a-form>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <!-- 查询区域-END -->
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 操作按钮区域 -->
|
|
|
|
|
+ <div class="table-operator">
|
|
|
|
|
+ <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
|
|
|
|
|
+<!-- <a-button type="primary" icon="download" @click="handleExportXls('支付接口配置')">导出</a-button>-->
|
|
|
|
|
+<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">-->
|
|
|
|
|
+<!-- <a-button type="primary" icon="import">导入</a-button>-->
|
|
|
|
|
+<!-- </a-upload>-->
|
|
|
|
|
+<!-- <!– 高级查询区域 –>-->
|
|
|
|
|
+<!-- <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>-->
|
|
|
|
|
+ <a-dropdown v-if="selectedRowKeys.length > 0">
|
|
|
|
|
+<!-- <a-menu slot="overlay">-->
|
|
|
|
|
+<!-- <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>-->
|
|
|
|
|
+<!-- </a-menu>-->
|
|
|
|
|
+<!-- <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>-->
|
|
|
|
|
+
|
|
|
|
|
+ <a-button @click="batchDel" type="danger" icon="delete">批量删除</a-button>
|
|
|
|
|
+ </a-dropdown>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- table区域-begin -->
|
|
|
|
|
+ <div>
|
|
|
|
|
+ <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
|
|
|
|
|
+ <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
|
|
|
|
|
+ <a style="margin-left: 24px" @click="onClearSelected">清空</a>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <a-table
|
|
|
|
|
+ ref="table"
|
|
|
|
|
+ size="middle"
|
|
|
|
|
+ :scroll="{x:true}"
|
|
|
|
|
+ bordered
|
|
|
|
|
+ rowKey="id"
|
|
|
|
|
+ :columns="columns"
|
|
|
|
|
+ :dataSource="dataSource"
|
|
|
|
|
+ :pagination="ipagination"
|
|
|
|
|
+ :loading="loading"
|
|
|
|
|
+ :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
|
|
|
|
+ class="j-table-force-nowrap"
|
|
|
|
|
+ @change="handleTableChange">
|
|
|
|
|
+
|
|
|
|
|
+ <template slot="htmlSlot" slot-scope="text">
|
|
|
|
|
+ <div v-html="text"></div>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ <span slot="status" slot-scope="text,record">
|
|
|
|
|
+ <a-tag v-if="text == 1" color="green">启用</a-tag>
|
|
|
|
|
+ <a-tag v-else color="grey">关闭</a-tag>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ <template slot="imgSlot" slot-scope="text,record">
|
|
|
|
|
+ <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
|
|
|
|
|
+ <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ <template slot="fileSlot" slot-scope="text">
|
|
|
|
|
+ <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
|
|
|
|
|
+ <a-button
|
|
|
|
|
+ v-else
|
|
|
|
|
+ :ghost="true"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ icon="download"
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ @click="downloadFile(text)">
|
|
|
|
|
+ 下载
|
|
|
|
|
+ </a-button>
|
|
|
|
|
+ </template>
|
|
|
|
|
+
|
|
|
|
|
+ <span slot="action" slot-scope="text, record">
|
|
|
|
|
+ <a @click="handleEdit(record)">编辑</a>
|
|
|
|
|
+
|
|
|
|
|
+ <a-divider type="vertical" />
|
|
|
|
|
+ <a-dropdown>
|
|
|
|
|
+ <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
|
|
|
|
|
+ <a-menu slot="overlay">
|
|
|
|
|
+ <a-menu-item>
|
|
|
|
|
+ <a @click="handleDetail(record)">详情</a>
|
|
|
|
|
+ </a-menu-item>
|
|
|
|
|
+ <a-menu-item>
|
|
|
|
|
+ <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
|
|
|
|
|
+ <a>删除</a>
|
|
|
|
|
+ </a-popconfirm>
|
|
|
|
|
+ </a-menu-item>
|
|
|
|
|
+ </a-menu>
|
|
|
|
|
+ </a-dropdown>
|
|
|
|
|
+ </span>
|
|
|
|
|
+
|
|
|
|
|
+ </a-table>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <pay-interface-config-modal ref="modalForm" @ok="modalFormOk"></pay-interface-config-modal>
|
|
|
|
|
+ </a-card>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
|
|
|
|
|
|
|
+ import '@/assets/less/TableExpand.less'
|
|
|
|
|
+ import { mixinDevice } from '@/utils/mixin'
|
|
|
|
|
+ import { JeecgListMixin } from '@/mixins/JeecgListMixin'
|
|
|
|
|
+ import payInterfaceConfigModal from './modules/payInterfaceConfigModal'
|
|
|
import { httpAction, getAction } from '@/api/manage'
|
|
import { httpAction, getAction } from '@/api/manage'
|
|
|
- import { validateDuplicateValue } from '@/utils/util'
|
|
|
|
|
- import {getPayApiConfigInfo} from "../../../api/api";
|
|
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
|
name: 'payApiSettings',
|
|
name: 'payApiSettings',
|
|
|
|
|
+ mixins:[JeecgListMixin, mixinDevice],
|
|
|
components: {
|
|
components: {
|
|
|
- },
|
|
|
|
|
- props: {
|
|
|
|
|
- //表单禁用
|
|
|
|
|
- disabled: {
|
|
|
|
|
- type: Boolean,
|
|
|
|
|
- default: false,
|
|
|
|
|
- required: false
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ payInterfaceConfigModal
|
|
|
},
|
|
},
|
|
|
data () {
|
|
data () {
|
|
|
return {
|
|
return {
|
|
|
- model:{
|
|
|
|
|
- },
|
|
|
|
|
- labelCol: {
|
|
|
|
|
- xs: { span: 24 },
|
|
|
|
|
- sm: { span: 3 },
|
|
|
|
|
- },
|
|
|
|
|
- wrapperCol: {
|
|
|
|
|
- xs: { span: 24 },
|
|
|
|
|
- sm: { span: 20 },
|
|
|
|
|
- },
|
|
|
|
|
- confirmLoading: false,
|
|
|
|
|
- validatorRules: {
|
|
|
|
|
- status: [
|
|
|
|
|
- { required: true, message: '请选择是否启用!'},
|
|
|
|
|
- ],
|
|
|
|
|
- payTypeId: [
|
|
|
|
|
- { required: true, message: '请选择关联支付方式!'},
|
|
|
|
|
- ],
|
|
|
|
|
- merchantNo: [
|
|
|
|
|
- { required: true, message: '请输入商户号!'},
|
|
|
|
|
- ],
|
|
|
|
|
- terminalNo: [
|
|
|
|
|
- { required: true, message: '请输入终端号!'},
|
|
|
|
|
- ],
|
|
|
|
|
- token: [
|
|
|
|
|
- { required: true, message: '请输入TOKEN令牌!'},
|
|
|
|
|
- ],
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ description: '支付接口配置管理页面',
|
|
|
|
|
+ // 表头
|
|
|
|
|
+ columns: [
|
|
|
|
|
+ {
|
|
|
|
|
+ title:'支付方式',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ dataIndex: 'payTypeId_dictText'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ title:'商户号',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ dataIndex: 'merchantNo'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ title:'终端号',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ dataIndex: 'terminalNo'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ title:'TOKEN令牌',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ dataIndex: 'token'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ title:'状态',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ dataIndex: 'status',
|
|
|
|
|
+ scopedSlots: { customRender: 'status' },
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ title: '操作',
|
|
|
|
|
+ dataIndex: 'action',
|
|
|
|
|
+ align:"center",
|
|
|
|
|
+ fixed:"right",
|
|
|
|
|
+ width:147,
|
|
|
|
|
+ scopedSlots: { customRender: 'action' }
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
url: {
|
|
url: {
|
|
|
- add: "/business/busPayInterfaceConfig/add",
|
|
|
|
|
- edit: "/business/busPayInterfaceConfig/edit",
|
|
|
|
|
|
|
+ list: "/business/busPayInterfaceConfig/list",
|
|
|
|
|
+ delete: "/business/busPayInterfaceConfig/delete",
|
|
|
|
|
+ deleteBatch: "/business/busPayInterfaceConfig/deleteBatch",
|
|
|
|
|
+ exportXlsUrl: "/business/busPayInterfaceConfig/exportXls",
|
|
|
|
|
+ importExcelUrl: "business/busPayInterfaceConfig/importExcel",
|
|
|
query_payType: "/business/busRoomPayType/queryList",
|
|
query_payType: "/business/busRoomPayType/queryList",
|
|
|
},
|
|
},
|
|
|
|
|
+ dictOptions:{},
|
|
|
|
|
+ superFieldList:[],
|
|
|
payTypeList:[]
|
|
payTypeList:[]
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
- computed: {
|
|
|
|
|
- formDisabled(){
|
|
|
|
|
- return this.disabled
|
|
|
|
|
- },
|
|
|
|
|
- },
|
|
|
|
|
- created () {
|
|
|
|
|
- //备份model原始值
|
|
|
|
|
- this.modelDefault = JSON.parse(JSON.stringify(this.model));
|
|
|
|
|
- var _info = JSON.parse(localStorage.getItem("storeInfo"));
|
|
|
|
|
- setTimeout(() => {
|
|
|
|
|
- getPayApiConfigInfo({
|
|
|
|
|
- }).then(res => {
|
|
|
|
|
- console.log(res)
|
|
|
|
|
- if (res.code == 200 && res.result ) {
|
|
|
|
|
- var info = res.result
|
|
|
|
|
- this.model = {
|
|
|
|
|
- id: info.id,
|
|
|
|
|
- status :info.status.toString(),
|
|
|
|
|
- payTypeId:info.payTypeId,
|
|
|
|
|
- merchantNo:info.merchantNo,
|
|
|
|
|
- terminalNo:info.terminalNo,
|
|
|
|
|
- token:info.token
|
|
|
|
|
- };
|
|
|
|
|
- }
|
|
|
|
|
- })
|
|
|
|
|
- }, 100)
|
|
|
|
|
-
|
|
|
|
|
|
|
+ created() {
|
|
|
|
|
+ this.getSuperFieldList();
|
|
|
getAction(this.url.query_payType,{}).then((res)=>{
|
|
getAction(this.url.query_payType,{}).then((res)=>{
|
|
|
if(res.success){
|
|
if(res.success){
|
|
|
this.payTypeList = res.result
|
|
this.payTypeList = res.result
|
|
@@ -138,46 +392,30 @@
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
- methods: {
|
|
|
|
|
- add () {
|
|
|
|
|
- this.edit(this.modelDefault);
|
|
|
|
|
- },
|
|
|
|
|
- edit (record) {
|
|
|
|
|
- this.model = Object.assign({}, record);
|
|
|
|
|
- this.visible = true;
|
|
|
|
|
|
|
+ computed: {
|
|
|
|
|
+ importExcelUrl: function(){
|
|
|
|
|
+ return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
|
|
|
},
|
|
},
|
|
|
- submitForm () {
|
|
|
|
|
- const that = this;
|
|
|
|
|
- // 触发表单验证
|
|
|
|
|
- this.$refs.form.validate(valid => {
|
|
|
|
|
- if (valid) {
|
|
|
|
|
- that.confirmLoading = true;
|
|
|
|
|
- let httpurl = '';
|
|
|
|
|
- let method = '';
|
|
|
|
|
- if(!this.model.id){
|
|
|
|
|
- httpurl+=this.url.add;
|
|
|
|
|
- method = 'post';
|
|
|
|
|
- var info = JSON.parse(localStorage.getItem("storeInfo"));
|
|
|
|
|
- this.model.hotelId = info.id;
|
|
|
|
|
- }else{
|
|
|
|
|
- httpurl+=this.url.edit;
|
|
|
|
|
- method = 'put';
|
|
|
|
|
- }
|
|
|
|
|
- httpAction(httpurl,this.model,method).then((res)=>{
|
|
|
|
|
- if(res.success){
|
|
|
|
|
- that.$message.success(res.message);
|
|
|
|
|
- that.$emit('ok');
|
|
|
|
|
- that.model.id = res.result.id
|
|
|
|
|
- }else{
|
|
|
|
|
- that.$message.warning(res.message);
|
|
|
|
|
- }
|
|
|
|
|
- }).finally(() => {
|
|
|
|
|
- that.confirmLoading = false;
|
|
|
|
|
- })
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- })
|
|
|
|
|
|
|
+ },
|
|
|
|
|
+ methods: {
|
|
|
|
|
+ initDictConfig(){
|
|
|
},
|
|
},
|
|
|
|
|
+ getSuperFieldList(){
|
|
|
|
|
+ let fieldList=[];
|
|
|
|
|
+ fieldList.push({type:'string',value:'tenantId',text:'关联租户'})
|
|
|
|
|
+ fieldList.push({type:'string',value:'hotelId',text:'关联酒店'})
|
|
|
|
|
+ fieldList.push({type:'string',value:'payTypeId',text:'关联支付方式'})
|
|
|
|
|
+ fieldList.push({type:'string',value:'merchantNo',text:'商户号'})
|
|
|
|
|
+ fieldList.push({type:'string',value:'terminalNo',text:'终端号'})
|
|
|
|
|
+ fieldList.push({type:'string',value:'token',text:'TOKEN令牌'})
|
|
|
|
|
+ fieldList.push({type:'int',value:'status',text:'状态(0-关闭;1-启用)'})
|
|
|
|
|
+ fieldList.push({type:'int',value:'minute',text:'预定超时时间'})
|
|
|
|
|
+ fieldList.push({type:'int',value:'delFlag',text:'删除状态(0-正常,1-已删除)'})
|
|
|
|
|
+ this.superFieldList = fieldList
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
|
|
|
+<style scoped>
|
|
|
|
|
+ @import '~@assets/less/common.less';
|
|
|
|
|
+</style>
|