From 439eb9608361f57b820777eb5f77ba99c6f27f42 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=85=B1=E5=AD=90?= <1638743013@qq.com>
Date: Tue, 19 Apr 2022 09:35:48 +0800
Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=94=AF=E4=BB=98=E6=A8=A1?=
 =?UTF-8?q?=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 pom.xml                                       |   7 -
 ruoyi-framework/pom.xml                       |   5 -
 ruoyi-pay/pom.xml                             |  28 --
 .../pay/controller/SysPayController.java      | 104 ------
 .../java/com/ruoyi/pay/domain/SysPay.java     |  84 -----
 .../com/ruoyi/pay/mapper/SysPayMapper.java    |  61 ----
 .../com/ruoyi/pay/service/ISysPayService.java |  61 ----
 .../pay/service/impl/SysPayServiceImpl.java   |  96 ------
 .../resources/mapper/pay/SysPayMapper.xml     |  86 -----
 ruoyi-ui/public/favicon.ico                   | Bin 5663 -> 19510 bytes
 ruoyi-ui/src/api/pay/wxPay.js                 |  44 ---
 ruoyi-ui/src/views/pay/wxPay/index.vue        | 304 ------------------
 12 files changed, 880 deletions(-)
 delete mode 100644 ruoyi-pay/pom.xml
 delete mode 100644 ruoyi-pay/src/main/java/com/ruoyi/pay/controller/SysPayController.java
 delete mode 100644 ruoyi-pay/src/main/java/com/ruoyi/pay/domain/SysPay.java
 delete mode 100644 ruoyi-pay/src/main/java/com/ruoyi/pay/mapper/SysPayMapper.java
 delete mode 100644 ruoyi-pay/src/main/java/com/ruoyi/pay/service/ISysPayService.java
 delete mode 100644 ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/SysPayServiceImpl.java
 delete mode 100644 ruoyi-pay/src/main/resources/mapper/pay/SysPayMapper.xml
 delete mode 100644 ruoyi-ui/src/api/pay/wxPay.js
 delete mode 100644 ruoyi-ui/src/views/pay/wxPay/index.vue

diff --git a/pom.xml b/pom.xml
index 236a8327d..f7515c535 100644
--- a/pom.xml
+++ b/pom.xml
@@ -199,12 +199,6 @@
                 <version>${ruoyi.version}</version>
             </dependency>
 
-            <!-- 支付模块-->
-            <dependency>
-                <groupId>com.ruoyi</groupId>
-                <artifactId>ruoyi-pay</artifactId>
-                <version>${ruoyi.version}</version>
-            </dependency>
 
         </dependencies>
     </dependencyManagement>
@@ -216,7 +210,6 @@
         <module>ruoyi-quartz</module>
         <module>ruoyi-generator</module>
         <module>ruoyi-common</module>
-        <module>ruoyi-pay</module>
     </modules>
     <packaging>pom</packaging>
 
diff --git a/ruoyi-framework/pom.xml b/ruoyi-framework/pom.xml
index e7e05f791..e0d40ed0c 100644
--- a/ruoyi-framework/pom.xml
+++ b/ruoyi-framework/pom.xml
@@ -59,11 +59,6 @@
             <artifactId>ruoyi-system</artifactId>
         </dependency>
 
-        <!-- 支付模块-->
-        <dependency>
-            <groupId>com.ruoyi</groupId>
-            <artifactId>ruoyi-pay</artifactId>
-        </dependency>
 
     </dependencies>
 
diff --git a/ruoyi-pay/pom.xml b/ruoyi-pay/pom.xml
deleted file mode 100644
index 5ca5e6735..000000000
--- a/ruoyi-pay/pom.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>ruoyi</artifactId>
-        <groupId>com.ruoyi</groupId>
-        <version>3.8.1</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>ruoyi-pay</artifactId>
-    <description>
-        支付模块
-    </description>
-
-    <dependencies>
-
-        <!-- 通用工具-->
-        <dependency>
-            <groupId>com.ruoyi</groupId>
-            <artifactId>ruoyi-common</artifactId>
-        </dependency>
-
-    </dependencies>
-
-
-</project>
\ No newline at end of file
diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/SysPayController.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/SysPayController.java
deleted file mode 100644
index 4300ba4ee..000000000
--- a/ruoyi-pay/src/main/java/com/ruoyi/pay/controller/SysPayController.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package com.ruoyi.pay.controller;
-
-import java.util.List;
-import javax.servlet.http.HttpServletResponse;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.ruoyi.common.annotation.Log;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.enums.BusinessType;
-import com.ruoyi.pay.domain.SysPay;
-import com.ruoyi.pay.service.ISysPayService;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.page.TableDataInfo;
-
-/**
- * 支付相关Controller
- * 
- * @author ruoyi
- * @date 2022-03-29
- */
-@RestController
-@RequestMapping("/pay/wxPay")
-public class SysPayController extends BaseController
-{
-    @Autowired
-    private ISysPayService sysPayService;
-
-    /**
-     * 查询支付相关列表
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(SysPay sysPay)
-    {
-        startPage();
-        List<SysPay> list = sysPayService.selectSysPayList(sysPay);
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出支付相关列表
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:export')")
-    @Log(title = "支付相关", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, SysPay sysPay)
-    {
-        List<SysPay> list = sysPayService.selectSysPayList(sysPay);
-        ExcelUtil<SysPay> util = new ExcelUtil<SysPay>(SysPay.class);
-        util.exportExcel(response, list, "支付相关数据");
-    }
-
-    /**
-     * 获取支付相关详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id)
-    {
-        return AjaxResult.success(sysPayService.selectSysPayById(id));
-    }
-
-    /**
-     * 新增支付相关
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:add')")
-    @Log(title = "支付相关", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody SysPay sysPay)
-    {
-        return toAjax(sysPayService.insertSysPay(sysPay));
-    }
-
-    /**
-     * 修改支付相关
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:edit')")
-    @Log(title = "支付相关", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody SysPay sysPay)
-    {
-        return toAjax(sysPayService.updateSysPay(sysPay));
-    }
-
-    /**
-     * 删除支付相关
-     */
-    @PreAuthorize("@ss.hasPermi('pay:wxPay:remove')")
-    @Log(title = "支付相关", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids)
-    {
-        return toAjax(sysPayService.deleteSysPayByIds(ids));
-    }
-}
diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/SysPay.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/SysPay.java
deleted file mode 100644
index 401782585..000000000
--- a/ruoyi-pay/src/main/java/com/ruoyi/pay/domain/SysPay.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.ruoyi.pay.domain;
-
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import com.ruoyi.common.annotation.Excel;
-import com.ruoyi.common.core.domain.BaseEntity;
-
-/**
- * 支付相关对象 sys_pay
- * 
- * @author ruoyi
- * @date 2022-03-29
- */
-public class SysPay extends BaseEntity
-{
-    private static final long serialVersionUID = 1L;
-
-    /** 支付id */
-    private Long id;
-
-    /** 支付名称 */
-    @Excel(name = "支付名称")
-    private String name;
-
-    /** 支付状态 */
-    @Excel(name = "支付状态")
-    private String state;
-
-    /** 金额 */
-    @Excel(name = "金额")
-    private String figure;
-
-    public void setId(Long id) 
-    {
-        this.id = id;
-    }
-
-    public Long getId() 
-    {
-        return id;
-    }
-    public void setName(String name) 
-    {
-        this.name = name;
-    }
-
-    public String getName() 
-    {
-        return name;
-    }
-    public void setState(String state) 
-    {
-        this.state = state;
-    }
-
-    public String getState() 
-    {
-        return state;
-    }
-    public void setFigure(String figure) 
-    {
-        this.figure = figure;
-    }
-
-    public String getFigure() 
-    {
-        return figure;
-    }
-
-    @Override
-    public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("id", getId())
-            .append("name", getName())
-            .append("state", getState())
-            .append("figure", getFigure())
-            .append("createBy", getCreateBy())
-            .append("createTime", getCreateTime())
-            .append("updateBy", getUpdateBy())
-            .append("updateTime", getUpdateTime())
-            .append("remark", getRemark())
-            .toString();
-    }
-}
diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/mapper/SysPayMapper.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/mapper/SysPayMapper.java
deleted file mode 100644
index aa43d4d06..000000000
--- a/ruoyi-pay/src/main/java/com/ruoyi/pay/mapper/SysPayMapper.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.ruoyi.pay.mapper;
-
-import java.util.List;
-import com.ruoyi.pay.domain.SysPay;
-
-/**
- * 支付相关Mapper接口
- * 
- * @author ruoyi
- * @date 2022-03-29
- */
-public interface SysPayMapper 
-{
-    /**
-     * 查询支付相关
-     * 
-     * @param id 支付相关主键
-     * @return 支付相关
-     */
-    public SysPay selectSysPayById(Long id);
-
-    /**
-     * 查询支付相关列表
-     * 
-     * @param sysPay 支付相关
-     * @return 支付相关集合
-     */
-    public List<SysPay> selectSysPayList(SysPay sysPay);
-
-    /**
-     * 新增支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    public int insertSysPay(SysPay sysPay);
-
-    /**
-     * 修改支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    public int updateSysPay(SysPay sysPay);
-
-    /**
-     * 删除支付相关
-     * 
-     * @param id 支付相关主键
-     * @return 结果
-     */
-    public int deleteSysPayById(Long id);
-
-    /**
-     * 批量删除支付相关
-     * 
-     * @param ids 需要删除的数据主键集合
-     * @return 结果
-     */
-    public int deleteSysPayByIds(Long[] ids);
-}
diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/ISysPayService.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/ISysPayService.java
deleted file mode 100644
index f7966975a..000000000
--- a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/ISysPayService.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.ruoyi.pay.service;
-
-import java.util.List;
-import com.ruoyi.pay.domain.SysPay;
-
-/**
- * 支付相关Service接口
- * 
- * @author ruoyi
- * @date 2022-03-29
- */
-public interface ISysPayService 
-{
-    /**
-     * 查询支付相关
-     * 
-     * @param id 支付相关主键
-     * @return 支付相关
-     */
-    public SysPay selectSysPayById(Long id);
-
-    /**
-     * 查询支付相关列表
-     * 
-     * @param sysPay 支付相关
-     * @return 支付相关集合
-     */
-    public List<SysPay> selectSysPayList(SysPay sysPay);
-
-    /**
-     * 新增支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    public int insertSysPay(SysPay sysPay);
-
-    /**
-     * 修改支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    public int updateSysPay(SysPay sysPay);
-
-    /**
-     * 批量删除支付相关
-     * 
-     * @param ids 需要删除的支付相关主键集合
-     * @return 结果
-     */
-    public int deleteSysPayByIds(Long[] ids);
-
-    /**
-     * 删除支付相关信息
-     * 
-     * @param id 支付相关主键
-     * @return 结果
-     */
-    public int deleteSysPayById(Long id);
-}
diff --git a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/SysPayServiceImpl.java b/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/SysPayServiceImpl.java
deleted file mode 100644
index a5df58500..000000000
--- a/ruoyi-pay/src/main/java/com/ruoyi/pay/service/impl/SysPayServiceImpl.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package com.ruoyi.pay.service.impl;
-
-import java.util.List;
-import com.ruoyi.common.utils.DateUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.ruoyi.pay.mapper.SysPayMapper;
-import com.ruoyi.pay.domain.SysPay;
-import com.ruoyi.pay.service.ISysPayService;
-
-/**
- * 支付相关Service业务层处理
- * 
- * @author ruoyi
- * @date 2022-03-29
- */
-@Service
-public class SysPayServiceImpl implements ISysPayService 
-{
-    @Autowired
-    private SysPayMapper sysPayMapper;
-
-    /**
-     * 查询支付相关
-     * 
-     * @param id 支付相关主键
-     * @return 支付相关
-     */
-    @Override
-    public SysPay selectSysPayById(Long id)
-    {
-        return sysPayMapper.selectSysPayById(id);
-    }
-
-    /**
-     * 查询支付相关列表
-     * 
-     * @param sysPay 支付相关
-     * @return 支付相关
-     */
-    @Override
-    public List<SysPay> selectSysPayList(SysPay sysPay)
-    {
-        return sysPayMapper.selectSysPayList(sysPay);
-    }
-
-    /**
-     * 新增支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    @Override
-    public int insertSysPay(SysPay sysPay)
-    {
-        sysPay.setCreateTime(DateUtils.getNowDate());
-        return sysPayMapper.insertSysPay(sysPay);
-    }
-
-    /**
-     * 修改支付相关
-     * 
-     * @param sysPay 支付相关
-     * @return 结果
-     */
-    @Override
-    public int updateSysPay(SysPay sysPay)
-    {
-        sysPay.setUpdateTime(DateUtils.getNowDate());
-        return sysPayMapper.updateSysPay(sysPay);
-    }
-
-    /**
-     * 批量删除支付相关
-     * 
-     * @param ids 需要删除的支付相关主键
-     * @return 结果
-     */
-    @Override
-    public int deleteSysPayByIds(Long[] ids)
-    {
-        return sysPayMapper.deleteSysPayByIds(ids);
-    }
-
-    /**
-     * 删除支付相关信息
-     * 
-     * @param id 支付相关主键
-     * @return 结果
-     */
-    @Override
-    public int deleteSysPayById(Long id)
-    {
-        return sysPayMapper.deleteSysPayById(id);
-    }
-}
diff --git a/ruoyi-pay/src/main/resources/mapper/pay/SysPayMapper.xml b/ruoyi-pay/src/main/resources/mapper/pay/SysPayMapper.xml
deleted file mode 100644
index 1175641d6..000000000
--- a/ruoyi-pay/src/main/resources/mapper/pay/SysPayMapper.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.pay.mapper.SysPayMapper">
-    
-    <resultMap type="SysPay" id="SysPayResult">
-        <result property="id"    column="id"    />
-        <result property="name"    column="name"    />
-        <result property="state"    column="state"    />
-        <result property="figure"    column="figure"    />
-        <result property="createBy"    column="create_by"    />
-        <result property="createTime"    column="create_time"    />
-        <result property="updateBy"    column="update_by"    />
-        <result property="updateTime"    column="update_time"    />
-        <result property="remark"    column="remark"    />
-    </resultMap>
-
-    <sql id="selectSysPayVo">
-        select id, name, state, figure, create_by, create_time, update_by, update_time, remark from sys_pay
-    </sql>
-
-    <select id="selectSysPayList" parameterType="SysPay" resultMap="SysPayResult">
-        <include refid="selectSysPayVo"/>
-        <where>  
-            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
-            <if test="state != null  and state != ''"> and state = #{state}</if>
-            <if test="figure != null  and figure != ''"> and figure = #{figure}</if>
-        </where>
-    </select>
-    
-    <select id="selectSysPayById" parameterType="Long" resultMap="SysPayResult">
-        <include refid="selectSysPayVo"/>
-        where id = #{id}
-    </select>
-        
-    <insert id="insertSysPay" parameterType="SysPay" useGeneratedKeys="true" keyProperty="id">
-        insert into sys_pay
-        <trim prefix="(" suffix=")" suffixOverrides=",">
-            <if test="name != null">name,</if>
-            <if test="state != null">state,</if>
-            <if test="figure != null">figure,</if>
-            <if test="createBy != null">create_by,</if>
-            <if test="createTime != null">create_time,</if>
-            <if test="updateBy != null">update_by,</if>
-            <if test="updateTime != null">update_time,</if>
-            <if test="remark != null">remark,</if>
-         </trim>
-        <trim prefix="values (" suffix=")" suffixOverrides=",">
-            <if test="name != null">#{name},</if>
-            <if test="state != null">#{state},</if>
-            <if test="figure != null">#{figure},</if>
-            <if test="createBy != null">#{createBy},</if>
-            <if test="createTime != null">#{createTime},</if>
-            <if test="updateBy != null">#{updateBy},</if>
-            <if test="updateTime != null">#{updateTime},</if>
-            <if test="remark != null">#{remark},</if>
-         </trim>
-    </insert>
-
-    <update id="updateSysPay" parameterType="SysPay">
-        update sys_pay
-        <trim prefix="SET" suffixOverrides=",">
-            <if test="name != null">name = #{name},</if>
-            <if test="state != null">state = #{state},</if>
-            <if test="figure != null">figure = #{figure},</if>
-            <if test="createBy != null">create_by = #{createBy},</if>
-            <if test="createTime != null">create_time = #{createTime},</if>
-            <if test="updateBy != null">update_by = #{updateBy},</if>
-            <if test="updateTime != null">update_time = #{updateTime},</if>
-            <if test="remark != null">remark = #{remark},</if>
-        </trim>
-        where id = #{id}
-    </update>
-
-    <delete id="deleteSysPayById" parameterType="Long">
-        delete from sys_pay where id = #{id}
-    </delete>
-
-    <delete id="deleteSysPayByIds" parameterType="String">
-        delete from sys_pay where id in 
-        <foreach item="id" collection="array" open="(" separator="," close=")">
-            #{id}
-        </foreach>
-    </delete>
-</mapper>
\ No newline at end of file
diff --git a/ruoyi-ui/public/favicon.ico b/ruoyi-ui/public/favicon.ico
index e26376026420542212ed58d90d0ed34f554fa4ae..46f78400a5e9b3828330f3e6c3288b611f2a86fd 100644
GIT binary patch
literal 19510
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
W((Yy*s@VQ_T*d|m;8l9ZBK`-v8BGuX

literal 5663
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

diff --git a/ruoyi-ui/src/api/pay/wxPay.js b/ruoyi-ui/src/api/pay/wxPay.js
deleted file mode 100644
index 7c82bac25..000000000
--- a/ruoyi-ui/src/api/pay/wxPay.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import request from '@/utils/request'
-
-// 查询支付相关列表
-export function listWxPay(query) {
-  return request({
-    url: '/pay/wxPay/list',
-    method: 'get',
-    params: query
-  })
-}
-
-// 查询支付相关详细
-export function getWxPay(id) {
-  return request({
-    url: '/pay/wxPay/' + id,
-    method: 'get'
-  })
-}
-
-// 新增支付相关
-export function addWxPay(data) {
-  return request({
-    url: '/pay/wxPay',
-    method: 'post',
-    data: data
-  })
-}
-
-// 修改支付相关
-export function updateWxPay(data) {
-  return request({
-    url: '/pay/wxPay',
-    method: 'put',
-    data: data
-  })
-}
-
-// 删除支付相关
-export function delWxPay(id) {
-  return request({
-    url: '/pay/wxPay/' + id,
-    method: 'delete'
-  })
-}
diff --git a/ruoyi-ui/src/views/pay/wxPay/index.vue b/ruoyi-ui/src/views/pay/wxPay/index.vue
deleted file mode 100644
index b9095008c..000000000
--- a/ruoyi-ui/src/views/pay/wxPay/index.vue
+++ /dev/null
@@ -1,304 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="支付名称" prop="name">
-        <el-input
-          v-model="queryParams.name"
-          placeholder="请输入支付名称"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="支付状态" prop="state">
-        <el-select v-model="queryParams.state" placeholder="请选择支付状态" clearable>
-          <el-option
-            v-for="dict in dict.type.sys_pay_status"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="金额" prop="figure">
-        <el-input
-          v-model="queryParams.figure"
-          placeholder="请输入金额"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item>
-        <el-button type="primary" 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"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['pay:wxPay:add']"
-        >新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['pay:wxPay:edit']"
-        >修改</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="danger"
-          plain
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-hasPermi="['pay:wxPay:remove']"
-        >删除</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          @click="handleExport"
-          v-hasPermi="['pay:wxPay:export']"
-        >导出</el-button>
-      </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-    </el-row>
-
-    <el-table v-loading="loading" :data="wxPayList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="支付id" align="center" prop="id" />
-      <el-table-column label="支付名称" align="center" prop="name" />
-      <el-table-column label="支付状态" align="center" prop="state">
-        <template slot-scope="scope">
-          <dict-tag :options="dict.type.sys_pay_status" :value="scope.row.state"/>
-        </template>
-      </el-table-column>
-      <el-table-column label="金额" align="center" prop="figure" />
-      <el-table-column label="备注" align="center" prop="remark" />
-      <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-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['pay:wxPay:edit']"
-          >修改</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['pay:wxPay:remove']"
-          >删除</el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-    
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
-
-    <!-- 添加或修改支付相关对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="支付名称" prop="name">
-          <el-input v-model="form.name" placeholder="请输入支付名称" />
-        </el-form-item>
-        <el-form-item label="支付状态">
-          <el-radio-group v-model="form.state">
-            <el-radio
-              v-for="dict in dict.type.sys_pay_status"
-              :key="dict.value"
-:label="dict.value"
-            >{{dict.label}}</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="金额" prop="figure">
-          <el-input v-model="form.figure" placeholder="请输入金额" />
-        </el-form-item>
-        <el-form-item label="备注" prop="remark">
-          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import { listWxPay, getWxPay, delWxPay, addWxPay, updateWxPay } from "@/api/pay/wxPay";
-
-export default {
-  name: "WxPay",
-  dicts: ['sys_pay_status'],
-  data() {
-    return {
-      // 遮罩层
-      loading: true,
-      // 选中数组
-      ids: [],
-      // 非单个禁用
-      single: true,
-      // 非多个禁用
-      multiple: true,
-      // 显示搜索条件
-      showSearch: true,
-      // 总条数
-      total: 0,
-      // 支付相关表格数据
-      wxPayList: [],
-      // 弹出层标题
-      title: "",
-      // 是否显示弹出层
-      open: false,
-      // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        name: null,
-        state: null,
-        figure: null,
-      },
-      // 表单参数
-      form: {},
-      // 表单校验
-      rules: {
-        name: [
-          { required: true, message: "支付名称不能为空", trigger: "blur" }
-        ],
-        state: [
-          { required: true, message: "支付状态不能为空", trigger: "blur" }
-        ],
-        figure: [
-          { required: true, message: "金额不能为空", trigger: "blur" }
-        ],
-      }
-    };
-  },
-  created() {
-    this.getList();
-  },
-  methods: {
-    /** 查询支付相关列表 */
-    getList() {
-      this.loading = true;
-      listWxPay(this.queryParams).then(response => {
-        this.wxPayList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-    // 取消按钮
-    cancel() {
-      this.open = false;
-      this.reset();
-    },
-    // 表单重置
-    reset() {
-      this.form = {
-        id: null,
-        name: null,
-        state: "0",
-        figure: null,
-        createBy: null,
-        createTime: null,
-        updateBy: null,
-        updateTime: null,
-        remark: null
-      };
-      this.resetForm("form");
-    },
-    /** 搜索按钮操作 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
-    /** 重置按钮操作 */
-    resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
-    },
-    // 多选框选中数据
-    handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
-      this.multiple = !selection.length
-    },
-    /** 新增按钮操作 */
-    handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = "添加支付相关";
-    },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
-      const id = row.id || this.ids
-      getWxPay(id).then(response => {
-        this.form = response.data;
-        this.open = true;
-        this.title = "修改支付相关";
-      });
-    },
-    /** 提交按钮 */
-    submitForm() {
-      this.$refs["form"].validate(valid => {
-        if (valid) {
-          if (this.form.id != null) {
-            updateWxPay(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.open = false;
-              this.getList();
-            });
-          } else {
-            addWxPay(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.open = false;
-              this.getList();
-            });
-          }
-        }
-      });
-    },
-    /** 删除按钮操作 */
-    handleDelete(row) {
-      const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除支付相关编号为"' + ids + '"的数据项?').then(function() {
-        return delWxPay(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
-    },
-    /** 导出按钮操作 */
-    handleExport() {
-      this.download('pay/wxPay/export', {
-        ...this.queryParams
-      }, `wxPay_${new Date().getTime()}.xlsx`)
-    }
-  }
-};
-</script>