Browse Source

单独发送消息

xiongzhu 7 years ago
parent
commit
877fc2253d

+ 54 - 14
src/main/webapp/member/query_model.jsp

@@ -7,6 +7,7 @@
 <%@ page language="java" import="biz.*" %>
 <%@ page language="java" import="net.sf.json.JSONObject" %>
 <%@ page import="org.apache.http.entity.ContentType" %>
+<%@ page import="net.sf.json.JSONArray" %>
 <jsp:useBean id="db" class="dbconnection.DbConnection" scope="page"/>
 <%
     String path = request.getContextPath();
@@ -31,6 +32,7 @@
     if (sess_JiGouPK.equals("")) sess_JiGouPK = "0";
 
     out.clear();
+    JSONArray areas = JSONArray.fromObject(DBRecordsPack.Pack(db, "select * from datatypeinfo where TypeName = '地区'"));
     if (operator.equals("query")) {
         int PageIndex = Integer.parseInt(request.getParameter("PageIndex"));
         int Area = Integer.parseInt(request.getParameter("Area"));
@@ -126,16 +128,21 @@
 </head>
 <body>
 <div id="app">
-    <el-input v-model="keyword" size="small">
-        <template slot="append">
-            <el-button @click="getData()" type="primary">搜索</el-button>
-        </template>
-    </el-input>
+    <div class="query-filters">
+        <el-input v-model="keyword" size="small" placeholder="输入关键字">
+        </el-input>
+        <el-select v-model="Area" size="small">
+            <el-option label="全部" :value="0"></el-option>
+            <el-option v-for="item in areas" :label="item.name" :value="item.pk"></el-option>
+        </el-select>
+        <el-button @click="getData()" type="primary" size="small">搜索</el-button>
+    </div>
     <el-table :data="tableData" v-loading="loading">
         <el-table-column prop="tel" label="帐号" width="120"></el-table-column>
         <el-table-column prop="pet" label="姓名"></el-table-column>
         <el-table-column prop="phone" label="电话" width="120"></el-table-column>
         <el-table-column prop="lname" label="个性签名" width="120"></el-table-column>
+        <el-table-column prop="area" label="地区" :formatter="areaFormatter" width="60"></el-table-column>
         <el-table-column prop="ratio_r" label="红包分成(%)" width="120"></el-table-column>
         <el-table-column prop="ratio_v" label="视频分成(%)" width="120"></el-table-column>
         <el-table-column prop="ratio_s" label="服务分成(%)" width="120"></el-table-column>
@@ -146,13 +153,29 @@
         <el-table-column prop="qrcode" label="邀请码"></el-table-column>
         <el-table-column prop="mdate" label="注册日期" width="200"></el-table-column>
         <el-table-column prop="sort" label="排序"></el-table-column>
-        <el-table-column label="操作" width="220" fixed="right" align="center">
+        <el-table-column label="操作" width="150" fixed="right" align="center">
             <template slot-scope="{row}">
                 <el-button type="text" size="small" @click="modelEdit(row)">编辑</el-button>
                 <el-button type="text" size="small" @click="deleteModel(row)">删除</el-button>
-                <el-button type="text" size="small" @click="inviteList(row.modelinfopk)">邀请列表</el-button>
-                <el-button type="text" size="small" @click="orderList(row.modelinfopk)">订单</el-button>
-                <el-button type="text" size="small" @click="sort(row.modelinfopk)">排序</el-button>
+                <el-dropdown style="margin-left: 10px;">
+                    <el-button type="text" size="small">
+                        更多<i class="el-icon-arrow-down el-icon--right"></i>
+                    </el-button>
+                    <el-dropdown-menu slot="dropdown">
+                        <el-dropdown-item>
+                            <el-button type="text" size="small" @click="inviteList(row.modelinfopk)">邀请列表</el-button>
+                        </el-dropdown-item>
+                        <el-dropdown-item>
+                            <el-button type="text" size="small" @click="orderList(row.modelinfopk)">订单</el-button>
+                        </el-dropdown-item>
+                        <el-dropdown-item>
+                            <el-button type="text" size="small" @click="sort(row.modelinfopk)">排序</el-button>
+                        </el-dropdown-item>
+                        <el-dropdown-item>
+                            <el-button type="text" size="small" @click="sendMsg(row)">发消息</el-button>
+                        </el-dropdown-item>
+                    </el-dropdown-menu>
+                </el-dropdown>
             </template>
         </el-table-column>
     </el-table>
@@ -180,7 +203,8 @@
             keyword: '',
             Area: 0,
             currentPage: 1,
-            total: 0
+            total: 0,
+            areas: JSON.parse('<%=areas%>')
         },
         methods: {
             getData: function (page) {
@@ -188,7 +212,7 @@
                 if (!(page >= 0)) {
                     page = -1;
                 }
-                $.post("<%=basePath%>member/query_model.jsp", {
+                $.post("${pageContext.request.contextPath}/member/query_model.jsp", {
                     operator: "query",
                     keyword: this.keyword,
                     PageIndex: page,
@@ -206,6 +230,14 @@
                     }.bind(this));
                 }.bind(this));
             },
+            areaFormatter: function (row, column, cellValue, index) {
+                var i;
+                for (i = 0; i < this.areas.length; i++) {
+                    if (cellValue == this.areas[i].pk) {
+                        return this.areas[i].name
+                    }
+                }
+            },
             currentChange: function (page) {
                 this.currentPage = page;
                 this.getData(page - 1);
@@ -214,7 +246,7 @@
                 var sort = prompt("请输入排序数值(数值越大排序越前)");
                 sort = Number(sort);
                 if (!isNaN(sort)) {
-                    $.post("<%=basePath%>member/query_model.jsp", {
+                    $.post("${pageContext.request.contextPath}${pageContext.request.servletPath}", {
                         operator: "updateSort",
                         pk: modelinfopk,
                         sort: sort
@@ -225,7 +257,7 @@
             },
             inviteList(modelinfopk) {
                 this.showIframe({
-                    url: '<%=basePath%>member/model.jsp?introducerpk=' + modelinfopk,
+                    url: '${pageContext.request.contextPath}/member/model.jsp?introducerpk=' + modelinfopk,
                     title: '邀请列表'
                 });
             },
@@ -264,9 +296,17 @@
             },
             orderList(modelinfopk) {
                 this.showIframe({
-                    url: '<%=basePath%>member/orderlist.jsp?modelinfopk=' + modelinfopk,
+                    url: '${pageContext.request.contextPath}/member/orderlist.jsp?modelinfopk=' + modelinfopk,
                     title: '订单列表'
                 });
+            },
+            sendMsg: function (row) {
+                this.showIframe({
+                    url: '${pageContext.request.contextPath}/system/sendMsg.jsp?memberpk=' + row.memberpk,
+                    title: '发消息',
+                    width: 400,
+                    height: 300
+                });
             }
         }
     });

+ 12 - 12
src/main/webapp/member/query_withdraw.jsp

@@ -35,16 +35,16 @@
     String operator = request.getParameter("operator");
     if ("submit".equals(operator)) {
         out.clear();
-        double amount  = Double.parseDouble(request.getParameter("amount"));
+        double amount = Double.parseDouble(request.getParameter("amount"));
         String account = request.getParameter("account");
-        String name    = request.getParameter("name");
-        String phone   = request.getParameter("phone");
+        String name = request.getParameter("name");
+        String phone = request.getParameter("phone");
 
         Record record = ctx.select()
-                           .from(MEMBERINFO)
-                           .where(MEMBERINFO.PK.equal(Integer.valueOf(BMemberPK)))
-                           .fetchOne();
-        double     coinA      = MEMBERINFO.COIN_A.getValue(record).doubleValue();
+                .from(MEMBERINFO)
+                .where(MEMBERINFO.PK.equal(Integer.valueOf(BMemberPK)))
+                .fetchOne();
+        double coinA = MEMBERINFO.COIN_A.getValue(record).doubleValue();
         JSONObject jsonObject = new JSONObject();
         if (amount <= 0) {
             jsonObject.put("success", false);
@@ -53,9 +53,9 @@
             jsonObject.put("error", "账户余额不足");
         } else {
             int result = ctx.insertInto(CASHRECORD, CASHRECORD.FEEDATE, CASHRECORD.MEMBERPK, CASHRECORD.FEE, CASHRECORD.ABSTRACT, CASHRECORD.INTRO, CASHRECORD.WID, CASHRECORD.PTYPE, CASHRECORD.PSTATE, CASHRECORD.USERNAME, CASHRECORD.PHONE, CASHRECORD.ACCFLAG)
-                            .values(Timestamp.valueOf(LocalDateTime.now()), Integer.valueOf(BMemberPK), BigDecimal.valueOf(amount), "取钱", "提现", account, PayConstants.TYPE_ALIPAY, PayConstants.STATE_4, name, phone, 0)
-                            .returning(CASHRECORD.PK)
-                            .execute();
+                    .values(Timestamp.valueOf(LocalDateTime.now()), Integer.valueOf(BMemberPK), BigDecimal.valueOf(amount), "取钱", "提现", account, PayConstants.TYPE_ALIPAY, PayConstants.STATE_4, name, phone, 0)
+                    .returning(CASHRECORD.PK)
+                    .execute();
             if (result > 0) {
                 jsonObject.put("success", true);
             } else {
@@ -71,8 +71,8 @@
     }
 
     Result<Record> records = ctx.select().from(CASHRECORD)
-                                .where(CASHRECORD.MEMBERPK.equal(Integer.valueOf(BMemberPK)))
-                                .fetch();
+            .where(CASHRECORD.MEMBERPK.equal(Integer.valueOf(BMemberPK)))
+            .fetch();
     List<JSONObject> jsonObjects = DBRecordsPack.Pack(records);
     ctx.close();
 %>

+ 79 - 8
src/main/webapp/system/memberInfo.jsp

@@ -13,11 +13,16 @@
 <%@ page import="system.DBRecordsPack" %>
 <%@ page import="net.sf.json.JSONObject" %>
 <%@ page import="org.jooq.*" %>
+<%@ page import="static jooq.Tables.DATATYPEINFO" %>
+<%@ page import="net.sf.json.JSONArray" %>
 <jsp:useBean id="db" class="dbconnection.DbConnection" scope="page"/>
 <%
     String operator = ExtendString.getDBStr(request.getParameter("operator"));
     out.clear();
     DSLContext ctx = DSL.using(DbConnection.getPara("MySQLURL"));
+    JSONArray areas = JSONArray.fromObject(DBRecordsPack.Pack(ctx.select().from(DATATYPEINFO).where(DATATYPEINFO.TYPENAME.equal("地区")).fetch()));
+    JSONArray levels = JSONArray.fromObject(DBRecordsPack.Pack(ctx.select().from(DATATYPEINFO).where(DATATYPEINFO.TYPENAME.equal("会员等级")).fetch()));
+
     if (operator.equals("query")) {
         response.setContentType("application/json");
         int PageIndex = Integer.parseInt(request.getParameter("PageIndex"));
@@ -37,7 +42,7 @@
         if (StringUtils.isNotEmpty(keyword)) {
             select.and(a.TEL.containsIgnoreCase(keyword)).or(a.PET.containsIgnoreCase(keyword).or(a.PHONE.containsIgnoreCase(keyword)));
         }
-        select.orderBy(a.ID.desc()).limit((PageIndex - 1) * 10, 10);
+        select.orderBy(a.PK.desc()).limit((PageIndex - 1) * 10, 10);
         System.out.println(select.getSQL(true));
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("data", DBRecordsPack.Pack(select.fetch()));
@@ -67,9 +72,8 @@
     }
 
 %>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
+<!DOCTYPE html>
+<html>
 <head>
     <base href="${pageContext.request.contextPath}"/>
     <title>会员查询</title>
@@ -82,9 +86,27 @@
         <el-button @click="getData" type="primary" size="small">查询</el-button>
     </div>
     <el-table :data="tableData">
-        <el-table-column prop="Pet" label="姓名"></el-table-column>
-        <el-table-column prop="Tel" label="账号"></el-table-column>
-        <el-table-column prop="count" label="邀请数量"></el-table-column>
+        <el-table-column prop="Tel" label="账号" width="120"></el-table-column>
+        <el-table-column prop="Pet" label="昵称"></el-table-column>
+        <el-table-column prop="Area" label="地区" :formatter="areaFormatter" width="60"></el-table-column>
+        <el-table-column prop="MembClass" label="会员等级" :formatter="levelFormatter" width="80"></el-table-column>
+        <el-table-column prop="introModelNum" label="邀请模特" width="80"></el-table-column>
+        <el-table-column prop="introMemberNum" label="邀请会员" width="80"></el-table-column>
+        <el-table-column prop="coin_A" label="余额" width="80"></el-table-column>
+        <el-table-column prop="coin_I" label="冲值" width="80"></el-table-column>
+        <el-table-column prop="coin_OR" label="红包支付" width="80"></el-table-column>
+        <el-table-column prop="coin_OV" label="聊天支付" width="80"></el-table-column>
+        <el-table-column prop="coin_OS" label="订单支付" width="80"></el-table-column>
+        <el-table-column prop="coin_O" label="提现支出" width="80"></el-table-column>
+        <el-table-column prop="coin_OI" label="预支币额" width="80"></el-table-column>
+        <el-table-column prop="MDate" label="注册日期" width="200" :formatter="dateFormatter"></el-table-column>
+        <el-table-column label="操作" width="200" fixed="right">
+            <template slot-scope="{row}">
+                <el-button size="small" type="text" @click="inviteList(row)">邀请列表</el-button>
+                <el-button size="small" type="text" @click="sendMsg(row)">发消息</el-button>
+                <el-button size="small" type="text" @click="del(row)">删除</el-button>
+            </template>
+        </el-table-column>
     </el-table>
     <el-pagination
             background
@@ -104,7 +126,9 @@
                 invitor: '${param["invitor"]}',
                 keyword: '',
                 tableData: [],
-                total: 0
+                total: 0,
+                areas: JSON.parse('<%=areas%>' || '[]'),
+                levels: JSON.parse('<%=levels%>' || '[]')
             }
         },
         created: function () {
@@ -131,6 +155,53 @@
             currentChange: function (page) {
                 this.page = page;
                 this.getData();
+            },
+            areaFormatter: function (row, column, cellValue, index) {
+                var i;
+                for (i = 0; i < this.areas.length; i++) {
+                    if (cellValue == this.areas[i].PK) {
+                        return this.areas[i].Name
+                    }
+                }
+            },
+            levelFormatter: function (row, column, cellValue, index) {
+                var i;
+                for (i = 0; i < this.levels.length; i++) {
+                    if (cellValue == this.levels[i].PK) {
+                        return this.areas[i].Name
+                    }
+                }
+            },
+            dateFormatter: function (row, column, cellValue, index) {
+                return new Date(cellValue.time).toLocaleString()
+            },
+            del: function (row) {
+                if (confirm("确认删除?")) {
+                    $.post({
+                        url: '${pageContext.request.contextPath}${pageContext.request.servletPath}',
+                        data: {
+                            operator: 'delete',
+                            memberpk: row.PK
+                        },
+                        success: function () {
+                            this.getData()
+                        }.bind(this)
+                    });
+                }
+            },
+            inviteList: function (row) {
+                this.showIframe({
+                    url: '${pageContext.request.contextPath}/system/memberInfo.jsp?invitor=' + row.PK,
+                    title: '邀请列表'
+                });
+            },
+            sendMsg: function (row) {
+                this.showIframe({
+                    url: '${pageContext.request.contextPath}/system/sendMsg.jsp?memberpk=' + row.PK,
+                    title: '发消息',
+                    width: 400,
+                    height: 300
+                });
             }
         },
         watch: {}

+ 18 - 12
src/main/webapp/system/push.jsp

@@ -26,8 +26,8 @@
             Thread t = new Thread(new Runnable() {
                 @Override
                 public void run() {
-                    DSLContext ctx       = DSL.using(DbConnection.getPara("MySQLURL"));
-                    Condition  condition = MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_HuiYuan).or(MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_Model));
+                    DSLContext ctx = DSL.using(DbConnection.getPara("MySQLURL"));
+                    Condition condition = MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_HuiYuan).or(MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_Model));
                     switch (type) {
                         case "1":
                             condition = MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_HuiYuan).or(MEMBERINFO.MEMBTYPE.equal(Constants.MEMTYPE_Model));
@@ -40,24 +40,24 @@
                             break;
                     }
                     int total = ctx.selectCount()
-                                   .from(MEMBERINFO)
-                                   .where(condition)
-                                   .fetchOne(0, int.class);
+                            .from(MEMBERINFO)
+                            .where(condition)
+                            .fetchOne(0, int.class);
                     int page = 0;
                     while (total > 0) {
                         Result<Record1<Integer>> result =
                                 ctx.select(MEMBERINFO.PK)
-                                   .from(MEMBERINFO)
-                                   .where(condition)
-                                   .limit(page * 500, 500)
-                                   .fetch();
+                                        .from(MEMBERINFO)
+                                        .where(condition)
+                                        .limit(page * 500, 500)
+                                        .fetch();
                         JSONArray toAccids = new JSONArray();
                         for (Record1<Integer> record1 : result) {
                             toAccids.add(record1.get(0));
                         }
                         System.out.println(toAccids.toString());
-                        Nimserver  nimserver = new Nimserver();
-                        JSONObject body      = new JSONObject();
+                        Nimserver nimserver = new Nimserver();
+                        JSONObject body = new JSONObject();
                         body.put("msg", content);
                         nimserver.sendBatchMsg("system", toAccids.toString(), "0", body.toString(), new HashMap<String, String>());
 
@@ -88,6 +88,10 @@
             <el-radio v-model="type" label="2">用户端</el-radio>
             <el-radio v-model="type" label="3">模特端</el-radio>
         </div>
+        <div>
+            <el-checkbox v-model="notLogin30">30天未登录</el-checkbox>
+            <el-checkbox v-model="broker">经纪人</el-checkbox>
+        </div>
         <br>
         <div>
             <el-input
@@ -106,7 +110,9 @@
         el: '#app',
         data: {
             type: '1',
-            content: ''
+            content: '',
+            notLogin30: false,
+            broker: false
         },
         methods: {
             send: function () {

+ 91 - 0
src/main/webapp/system/sendMsg.jsp

@@ -0,0 +1,91 @@
+<%@ page import="org.jooq.DSLContext" %>
+<%@ page import="org.jooq.impl.DSL" %>
+<%@ page import="dbconnection.DbConnection" %>
+<%@ page import="util.ExtendString" %>
+<%@ page import="static jooq.Tables.MEMBERINFO" %>
+<%@ page import="net.sf.json.JSONObject" %>
+<%@ page import="system.DBRecordsPack" %>
+<%@ page import="nimserver.Nimserver" %>
+<%@ page import="java.util.HashMap" %><%--
+  Created by IntelliJ IDEA.
+  User: drew
+  Date: 2018/12/12
+  Time: 9:53 AM
+  To change this template use File | Settings | File Templates.
+--%>
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+<%
+    JSONObject info = new JSONObject();
+    DSLContext ctx = DSL.using(DbConnection.getPara("MySQLURL"));
+    String memberpk = ExtendString.getDBStr(request.getParameter("memberpk"));
+    String operator = ExtendString.getDBStr(request.getParameter("operator"));
+    if ("send".equals(operator)) {
+        String content = ExtendString.getDBStr(request.getParameter("content"));
+        Nimserver nimserver = new Nimserver();
+        JSONObject body = new JSONObject();
+        body.put("msg", content);
+        nimserver.sendMsg("system", "0", memberpk, "0", body.toString(), new HashMap<>());
+        response.setContentType("application/json");
+        out.print("{\"success\":true}");
+        ctx.close();
+        return;
+    }
+    info = DBRecordsPack.Pack(ctx.select().from(MEMBERINFO).where(MEMBERINFO.PK.equal(Integer.valueOf(memberpk))).fetchOne());
+    ctx.close();
+
+%>
+<!DOCTYPE html>
+<html>
+<head>
+    <base href="${pageContext.request.contextPath}"/>
+    <title>发送消息</title>
+    <%@include file="/_common.jsp" %>
+</head>
+<body>
+<div id="app">
+    <div>
+        <el-input
+                type="textarea"
+                :rows="5"
+                placeholder="请输入内容"
+                v-model="content">
+        </el-input>
+    </div>
+    <br>
+    <el-button size="small" @click="send">发送</el-button>
+</div>
+<script>
+    new Vue({
+        el: '#app',
+        data: function () {
+            return {
+                info: JSON.parse('<%=info%>'),
+                content: ''
+            }
+        },
+        methods: {
+            send: function () {
+                if (confirm('发送给:' + this.info.Pet + '\n内容:' + this.content)) {
+                    $.post({
+                        url: '${pageContext.request.contextPath}${pageContext.request.servletPath}',
+                        data: {
+                            operator: 'send',
+                            content: this.content,
+                            memberpk: '<%=memberpk%>'
+                        },
+                        success: function (res) {
+                            if (res.success) {
+                                alert('发送成功');
+                            } else {
+                                alert('发送失败');
+                            }
+                            parentDialog.close();
+                        }
+                    })
+                }
+            }
+        }
+    })
+</script>
+</body>
+</html>

+ 30 - 18
src/main/webapp/system/withdraw.jsp

@@ -14,18 +14,15 @@
 <%@ page language="java" import="biz.*" %>
 <%@ page language="java" import="net.sf.json.JSONObject" %>
 <%@ page import="org.apache.http.entity.ContentType" %>
-<%@ page import="org.jooq.DSLContext" %>
 <%@ page import="org.jooq.impl.DSL" %>
-<%@ page import="org.jooq.SQLDialect" %>
 <%@ page import="jooq.Tables" %>
 <%@ page import="static jooq.Tables.MEMBERINFO" %>
-<%@ page import="org.jooq.Record" %>
-<%@ page import="org.jooq.Result" %>
 <%@ page import="constants.Constants" %>
 <%@ page import="dbconnection.DbConnection" %>
 <%@ page import="org.apache.commons.lang.StringUtils" %>
 <%@ page import="static jooq.Tables.CASHRECORD" %>
 <%@ page import="constants.PayConstants" %>
+<%@ page import="org.jooq.*" %>
 <jsp:useBean id="db" class="dbconnection.DbConnection"/>
 <%
 
@@ -35,10 +32,10 @@
     if (operator.equals("finish")) {
         int pk = Integer.valueOf(request.getParameter("pk"));
         int num = ctx.update(CASHRECORD)
-                     .set(CASHRECORD.PSTATE, PayConstants.STATE_5)
-                     .set(CASHRECORD.ACCFLAG, 9)
-                     .where(CASHRECORD.PK.equal(pk))
-                     .execute();
+                .set(CASHRECORD.PSTATE, PayConstants.STATE_5)
+                .set(CASHRECORD.ACCFLAG, 9)
+                .where(CASHRECORD.PK.equal(pk))
+                .execute();
         JSONObject res = new JSONObject();
         res.put("success", num > 0);
         ctx.close();
@@ -47,18 +44,22 @@
         return;
     } else if (operator.equals("query")) {
         String paramPage = request.getParameter("page");
-        int    pageIndex = 1;
+        String state = ExtendString.getDBStr(request.getParameter("state"));
+        int pageIndex = 1;
         if (StringUtils.isNotEmpty(paramPage)) {
             pageIndex = Integer.valueOf(paramPage);
         }
-        Result<Record> records = ctx.select().from(CASHRECORD)
-                                    .where(CASHRECORD.PSTATE.equal(PayConstants.STATE_4))
-                                    .limit(10 * (pageIndex - 1), 10)
-                                    .fetch();
+        SelectConditionStep<Record> step = ctx.select().from(CASHRECORD)
+                .where(CASHRECORD.PSTATE.equal(PayConstants.STATE_4));
+        if (!"全部".equals(state)) {
+            step.and(CASHRECORD.PSTATE.equal(state));
+        }
+        Result<Record> records = step.limit(10 * (pageIndex - 1), 10)
+                .fetch();
         List<JSONObject> jsonObjects = DBRecordsPack.Pack(records);
         int total = ctx.selectCount().from(CASHRECORD)
-                       .where(CASHRECORD.PSTATE.equal(PayConstants.STATE_4))
-                       .fetchOne(0, int.class);
+                .where(CASHRECORD.PSTATE.equal(PayConstants.STATE_4))
+                .fetchOne(0, int.class);
         JSONObject res = new JSONObject();
         res.put("data", jsonObjects);
         res.put("total", total);
@@ -77,7 +78,16 @@
 </head>
 <body>
 <div id="app">
-    <el-table :data="tableData">
+    <div class="query-filters">
+        <el-select v-model="state" size="small">
+            <el-option value="全部">全部</el-option>
+            <el-option value="待提现">待提现</el-option>
+            <el-option value="已提现">已提现</el-option>
+            <el-option value="提现失败">提现失败</el-option>
+        </el-select>
+        <el-button @click="getData" type="primary" size="small">查询</el-button>
+    </div>
+    <el-table :data="tableData" v-loading="loading">
         <el-table-column prop="Fee" label="金额"></el-table-column>
         <el-table-column prop="FeeDate" :formatter="dateFormatter" label="时间"></el-table-column>
         <el-table-column prop="username" label="姓名"></el-table-column>
@@ -109,7 +119,8 @@
             loading: false,
             tableData: [],
             page: 1,
-            total: 0
+            total: 0,
+            state: '待提现'
         },
         methods: {
             getData: function () {
@@ -118,7 +129,8 @@
                     url: "${pageContext.request.contextPath}/system/withdraw.jsp",
                     data: {
                         operator: 'query',
-                        page: this.page
+                        page: this.page,
+                        state: this.state
                     },
                     success: function (res) {
                         this.loading = false;