对账中心
diff --git a/payapi/src/main/resources/data.sql b/payapi/src/main/resources/data.sql
index 80a95a2..362bc3c 100644
--- a/payapi/src/main/resources/data.sql
+++ b/payapi/src/main/resources/data.sql
@@ -65,6 +65,13 @@
 VALUES (31, NULL, 1, NULL, '', '/report/shopbusiness', '商户营业情况表', 3, 20, '{tenantid}');
 INSERT INTO "tb_function" ("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", tenantid)
 VALUES (32, NULL, 1, NULL, '', '/settlelog/index', '结算日志', 5, 3, '{tenantid}');
+INSERT INTO "tb_function" ("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", tenantid)
+VALUES (33, NULL, 0, NULL, 'layui-icon-component', '#', '对账中心', 8, -1, '{tenantid}');
+INSERT INTO "tb_function" ("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", tenantid)
+VALUES (34, NULL, 1, NULL, '', '/thirdchk/chkstatus', '对账状态查询', 331, 33, '{tenantid}');
+INSERT INTO "tb_function" ("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", tenantid)
+VALUES (35, NULL, 1, NULL, '', '/thirdchk/chkfile', '对账明细查询', 332, 33, '{tenantid}');
+
 
 
 INSERT INTO "tb_role_function" ("id", "functionid", "roleid", tenantid)
@@ -121,6 +128,12 @@
 VALUES ('ff8080816b7947ed016b795577370081', 18, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
 INSERT INTO "tb_role_function" ("id", "functionid", "roleid", tenantid)
 VALUES ('ff8080816c8468e8016c846d7a570017', 32, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO "tb_role_function" ("id", "functionid", "roleid", tenantid)
+VALUES ('ff8080816c8468e8016c846d7a570017', 33, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO "tb_role_function" ("id", "functionid", "roleid", tenantid)
+VALUES ('ff8080816c8468e8016c846d7a570017', 34, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO "tb_role_function" ("id", "functionid", "roleid", tenantid)
+VALUES ('ff8080816c8468e8016c846d7a570017', 35, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
 
 INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
 VALUES (4, '1', 4, '添加功能', '/function/add', '{tenantid}');
@@ -252,6 +265,15 @@
 VALUES (77, '', 32, '查询', '/settlelog/index', '{tenantid}');
 INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
 VALUES (78, '', 32, '查询', '/settlelog/dosettle', '{tenantid}');
+INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
+VALUES (79, '', 34, '查询', '/thirdchk/chkstatus', '{tenantid}');
+INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
+VALUES (80, '', 34, '强制重对切换', '/thirdchk/forcerecheck', '{tenantid}');
+INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
+VALUES (81, '', 35, '查询', '/thirdchk/chkfile', '{tenantid}');
+INSERT INTO "tb_resource" ("id", "code", "function_id", "name", "uri", tenantid)
+VALUES (82, '', 35, '查看详情', '/thirdchk/chkdtl', '{tenantid}');
+
 
 INSERT INTO "tb_permission" ("id", "resid", "role_func_id", "roleid", tenantid)
 VALUES ('ff8080816b7947ed016b795577300036', 16, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
@@ -383,6 +405,15 @@
 VALUES ('ff8080816c8468e8016c846d7a5d0018', 77, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
 INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
 VALUES ('ff8080816c85279d016c852aa829000d', 78, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816c985e76016c98659ad00015', 79, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816c985e76016c98659ad10016', 80, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816c985e76016c98659ad10017', 81, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+INSERT INTO  "tb_permission" ("id", "resid", "role_func_id", "roleid", "tenantid")
+VALUES ('ff8080816c99abee016c99b1cb1c0004', 82, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs', '{tenantid}');
+
 
 INSERT INTO "tb_subject" ("subjid","subjno", "balflag", "displayflag", "endflag", "fsubjno", "opendate", "subjlevel", "subjname", "subjtype", "tenantid")
 VALUES (1, '1001', 1, 'y', 1, NULL, 20190430, 1, '库存现金', 1, '{tenantid}');
diff --git a/payapi/src/main/resources/templates/system/thirdchk/chkdtl.html b/payapi/src/main/resources/templates/system/thirdchk/chkdtl.html
new file mode 100644
index 0000000..fbc2b4e
--- /dev/null
+++ b/payapi/src/main/resources/templates/system/thirdchk/chkdtl.html
@@ -0,0 +1,188 @@
+<div class="layui-card">
+    <div class="layui-card-header">
+        <h2 class="header-title">对账详情</h2>
+        <span class="layui-breadcrumb pull-right">
+          <a href="#!_thirdchk_chkfile">对账明细查询</a>
+          <a><cite>对账详情</cite></a>
+        </span>
+    </div>
+    <div class="layui-card-body">
+        <div class="layui-form" lay-filter="thirdchk-chkdtl-search-form">
+            <div class="layui-form-item" style="margin-bottom: 0;">
+                <div class="layui-inline">
+                    <label class="layui-form-label">关键字</label>
+                    <div class="layui-input-block" style="width: 260px;">
+                        <input type="text" name="searchkey" id="thirdchk-chkdtl-search-searchkey" class="layui-input"
+                               placeholder="输入本地流水号、第三方流水号查询"/>
+                    </div>
+                </div>
+
+                <div class="layui-inline">
+                    <label class="layui-form-label">对账结果</label>
+                    <div class="layui-input-block" style="height: 35px;">
+                        <select name="chkresult" id="thirdchk-chkdtl-search-chkresult"
+                                lay-filter="thirdchk-chkdtl-search-chkresult-filter">
+                            <option value="">全部</option>
+                            <option value="uncheck">未检查</option>
+                            <option value="equal">双方一致</option>
+                            <option value="nocharge">本地流水未入账</option>
+                            <option value="notexist">本地流水不存在</option>
+                            <option value="surplus">本地多流水</option>
+                            <option value="diff">金额不相等</option>
+                            <option value="error">流水异常</option>
+                        </select>
+                    </div>
+                </div>
+
+                <div class="layui-inline">
+                    <input type="hidden" id="thirdchk-chkdtl-search-chkfileid" th:value="${chkfileid}"/>
+                    <div class="layui-input-block" style="margin-left: 0;">
+                        <input type="checkbox" name="errorshow" id="thirdchk-chkdtl-search-errorshow" value="yes"
+                               lay-skin="primary" title="仅显示不平"/>
+                    </div>
+                </div>
+
+                <div class="layui-inline">
+                    <button id="thirdchk-chkdtl-search-btn" class="layui-btn icon-btn" data-type="search"><i
+                            class="layui-icon">&#xe615;</i>搜索
+                    </button>
+                    <button id="thirdchk-chkdtl-reset-btn" class="layui-btn layui-btn-primary" data-type="reset">清空
+                    </button>
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="layui-card-body">
+        <table class="layui-table" id="thirdchkChkdtlTable" lay-filter="thirdchkChkdtlTable-filter"></table>
+    </div>
+</div>
+
+<script type="text/html" id="thirdchk-chkdtl-toolbar">
+    <div class="layui-btn-container"></div>
+</script>
+
+<script>
+    layui.use(['form', 'table', 'admin'], function () {
+        var form = layui.form;
+        var table = layui.table;
+        var admin = layui.admin
+
+        form.render("select");
+        form.render("checkbox");
+
+        // 渲染表格
+        var renderTable = function (obj) {
+            table.render({
+                id: 'thirdchkChkdtlTable',
+                title: '对账详情',
+                elem: '#thirdchkChkdtlTable',
+                url: '[[@{/thirdchk/chkdtllist}]]',
+                page: true,
+                where: obj,
+                toolbar: '#thirdchk-chkdtl-toolbar',
+                cols: [
+                    [
+                        {field: 'accdate', title: '账单日期', align: 'center', width: 100, fixed: 'left'},
+                        {
+                            field: 'sourcetype',
+                            title: '支付方式',
+                            width: 200,
+                            align: 'center',
+                            fixed: 'left',
+                            templet: function (e) {
+                                return getTempDictValue('sourcetypeList', e.sourcetype);
+                            }
+                        },
+                        {field: 'recordno', title: '记录号', align: 'center', width: 80, fixed: 'left'},
+                        {
+                            field: 'amount', title: '交易金额', align: 'center', width: 100, templet: function (e) {
+                                return parseFloat(e.amount).toFixed(2);
+                            }
+                        },
+                        {
+                            field: 'chkresult', title: '对账结果', align: 'center', width: 150, templet: function (e) {
+                                if ("uncheck" == e.chkresult) {
+                                    return '<span class="layui-badge layui-bg-gray">未检查</span>';
+                                } else if ("equal" == e.chkresult) {
+                                    return '<span class="layui-badge layui-bg-green">双方一致</span>';
+                                } else if ("nocharge" == e.chkresult) {
+                                    return '<span class="layui-badge layui-bg-orange">本地流水未入账</span>';
+                                } else if ("notexist" == e.chkresult) {
+                                    return '<span class="layui-badge layui-bg-orange">本地流水不存在</span>';
+                                } else if ("surplus" == e.chkresult) {
+                                    return '<span class="layui-badge">本地多流水</span>';
+                                } else if ("diff" == e.chkresult) {
+                                    return '<span class="layui-badge">金额不相等</span>';
+                                } else {
+                                    return '<span class="layui-badge">流水异常</span>';
+                                }
+                            }
+                        },
+                        {
+                            field: 'resolved', title: '处理结果', align: 'center', width: 100, templet: function (e) {
+                                if ("none" == e.resolved) {
+                                    return '-';
+                                } else if ("equal" == e.resolved) {
+                                    if ("equal" == e.chkresult) {
+                                        return '一致';
+                                    } else {
+                                        return '补账后一致';
+                                    }
+                                } else if ("add" == e.resolved) {
+                                    return '需补账';
+                                } else if ("fail" == e.resolved) {
+                                    return '补账失败';
+                                } else if ("hangup" == e.resolved) {
+                                    return '异常挂起';
+                                } else {
+                                    return e.resolved;
+                                }
+                            }
+                        },
+                        {field: 'remark', title: '备注', align: 'center', width: 200},
+                        {field: 'localRefno', title: '本地流水号', align: 'center', width: 200},
+                        {field: 'otherRefno', title: '外部流水号', align: 'center', width: 200},
+                        {field: 'otherAccdate', title: '外部记账日期', align: 'center', width: 100},
+                        {
+                            field: 'transtype', title: '交易类型', align: 'center', width: 100, templet: function (e) {
+                                if ("pay" == e.transtype) {
+                                    return '支付';
+                                } else if ("refund" == e.transtype) {
+                                    return '退款';
+                                } else if ("cancel" == e.transtype) {
+                                    return '撤销';
+                                } else {
+                                    return e.transtype;
+                                }
+                            }
+                        },
+                        {field: 'extdata', title: '扩展字段', align: 'center', width: 200}
+                    ]
+                ]
+            });
+        }
+        renderTable({
+            chkfileid: $("#thirdchk-chkdtl-search-chkfileid").val(),
+            errorshow: false
+        });
+
+        $("#thirdchk-chkdtl-search-btn").click(function () {
+            table.reload('thirdchkChkdtlTable', {
+                where: {
+                    chkfileid: $("#thirdchk-chkdtl-search-chkfileid").val(),
+                    searchkey: $("#thirdchk-chkdtl-search-searchkey").val(),
+                    chkresult: $("#thirdchk-chkdtl-search-chkresult").val(),
+                    errorshow: $("#thirdchk-chkdtl-search-errorshow").is(':checked')
+                }, page: {curr: 1}
+            });
+        });
+
+        $("#thirdchk-chkdtl-reset-btn").click(function () {
+            $("#thirdchk-chkdtl-search-searchkey").val("");
+            $("#thirdchk-chkdtl-search-chkresult").val("");
+            $("#thirdchk-chkdtl-search-errorshow").prop("checked", false);
+            form.render("select");
+            form.render("checkbox");
+        });
+    });
+</script>
\ No newline at end of file
diff --git a/payapi/src/main/resources/templates/system/thirdchk/chkfile.html b/payapi/src/main/resources/templates/system/thirdchk/chkfile.html
new file mode 100644
index 0000000..0a5bb52
--- /dev/null
+++ b/payapi/src/main/resources/templates/system/thirdchk/chkfile.html
@@ -0,0 +1,173 @@
+<div class="layui-card">
+    <div class="layui-card-header">
+        <h2 class="header-title">对账明细查询</h2>
+        <span class="layui-breadcrumb pull-right">
+          <a href="#">对账中心</a>
+          <a><cite>对账明细查询</cite></a>
+        </span>
+    </div>
+    <div class="layui-card-body">
+        <div class="layui-form" lay-filter="thirdchk-chkfile-search-form">
+            <div class="layui-form-item" style="margin-bottom: 0;">
+                <div class="layui-inline">
+                    <label class="layui-form-label">账单日期</label>
+                    <div class="layui-input-inline">
+                        <input type="text" name="startdate" id="thirdchk-chkfile-search-startdate" placeholder="起始日期"
+                               autocomplete="off" class="layui-input"/>
+                    </div>
+                    <div class="layui-form-mid">-</div>
+                    <div class="layui-input-inline">
+                        <input type="text" name="enddate" id="thirdchk-chkfile-search-enddate" placeholder="截止日期"
+                               autocomplete="off" class="layui-input"/>
+                    </div>
+                </div>
+
+                <div class="layui-inline">
+                    <label class="layui-form-label">支付方式</label>
+                    <div class="layui-input-block" style="height: 35px;">
+                        <select name="sourcetype" id="thirdchk-chkfile-search-sourcetype"
+                                lay-filter="thirdchk-chkfile-search-sourcetype-filter">
+                            <option value=""> 全部</option>
+                            <option th:each="pt:${checkSourcetypeList}" th:value="${pt.sourceType}"
+                                    th:text="${pt.paydesc}"></option>
+                        </select>&emsp;
+                    </div>
+                </div>
+
+                <div class="layui-inline">
+                    <button id="btn-search-thirdchk-chkfile" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i> 搜 索</button>
+                    <button id="thirdchk-chkfile-reset-btn" class="layui-btn layui-btn-primary" data-type="reset"> 清 空
+                    </button>
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="layui-card-body">
+        <table class="layui-table" id="thirdchkChkfileTable" lay-filter="thirdchkChkfileTable-filter"></table>
+    </div>
+</div>
+
+<script type="text/html" id="thirdchk-chkfile-toolbar">
+    <div class="layui-btn-container"></div>
+</script>
+
+<!-- 表格操作列 -->
+<script type="text/html" id="thirdchk-chkfile-table-bar">
+    <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="load4chkdtl">查看详情</a>
+</script>
+
+<script>
+    layui.use(['form', 'table', 'layer', 'admin', 'laydate', 'index','element'], function () {
+        var $ = layui.jquery;
+        var form = layui.form;
+        var table = layui.table;
+        var admin = layui.admin
+        var laydate = layui.laydate;
+        var index = layui.index;
+        var element = layui.element;
+
+        form.render("select");
+        laydate.render({
+            elem: '#thirdchk-chkfile-search-startdate',
+            trigger: 'click'
+        });
+        laydate.render({
+            elem: '#thirdchk-chkfile-search-enddate',
+            trigger: 'click'
+        });
+
+        // 渲染表格
+        table.render({
+            id: 'thirdchkChkfileTable',
+            title: '对账明细表',
+            elem: '#thirdchkChkfileTable',
+            url: '[[@{/thirdchk/chkfilelist}]]',
+            toolbar: '#thirdchk-chkfile-toolbar',
+            page: true,
+            cols: [
+                [
+                    {
+                        align: 'center',
+                        title: '操作',
+                        width: 100,
+                        fixed: 'left',
+                        toolbar: '#thirdchk-chkfile-table-bar'
+                    },
+                    {
+                        field: 'sourcetype',
+                        title: '名称',
+                        width: 200,
+                        align: 'center',
+                        fixed: 'left',
+                        templet: function (e) {
+                            return getTempDictValue('sourcetypeList', e.sourcetype);
+                        }
+                    },
+                    {field: 'accdate', title: '账单日期', width: 120, align: 'center', fixed: 'left'},
+                    {field: 'othercnt', title: '外部总笔数', width: 120, align: 'center'},
+                    {
+                        field: 'otheramt', title: '外部总金额', width: 120, align: 'center', templet: function (e) {
+                            return parseFloat(e.otheramt).toFixed(2);
+                        }
+                    },
+                    {field: 'localcnt', title: '本地总笔数', width: 120, align: 'center'},
+                    {
+                        field: 'localamt', title: '本地总金额', width: 110, align: 'center', templet: function (e) {
+                            return parseFloat(e.localamt).toFixed(2);
+                        }
+                    },
+                    {
+                        field: 'status', title: '账单状态', width: 120, align: 'center', templet: function (e) {
+                            if ('init' == e.status) {
+                                return '<span class="layui-badge layui-bg-gray">初始化</span>';
+                            } else if ('uncheck' == e.status) {
+                                return '<span class="layui-badge layui-bg-orange">待对账</span>';
+                            } else if ('finish' == e.status) {
+                                return '<span class="layui-badge layui-bg-green">对账完成</span>';
+                            } else if ('error' == e.status) {
+                                return '<span class="layui-badge">异常</span>';
+                            } else if ('checkout' == e.status) {
+                                return '<span class="layui-badge layui-bg-blue">校对完成</span>';
+                            } else {
+                                return e.status;
+                            }
+                        }
+                    },
+                    {field: 'remark', title: '对账结果', align: 'left'}
+                ]
+            ]
+        });
+
+        $("#btn-search-thirdchk-chkfile").click(function () {
+            var startdate = $("#thirdchk-chkfile-search-startdate").val();
+            var enddate = $("#thirdchk-chkfile-search-enddate").val();
+            var sourcetype = $("#thirdchk-chkfile-search-sourcetype").val();
+            table.reload('thirdchkChkfileTable', {
+                where: {
+                    startdate: startdate,
+                    enddate: enddate,
+                    sourcetype: sourcetype
+                }, page: {curr: 1}
+            });
+        });
+
+        $("#thirdchk-chkfile-reset-btn").click(function () {
+            $("#thirdchk-chkfile-search-startdate").val("");
+            $("#thirdchk-chkfile-search-enddate").val("");
+            $("#thirdchk-chkfile-search-sourcetype").val("");
+            form.render("select");
+        });
+
+        //监听单元格
+        table.on('tool(thirdchkChkfileTable-filter)', function (obj) {
+            if ('load4chkdtl' == obj.event) {
+                element.tabDelete('admin-pagetabs', '_thirdchk_chkdtl'); //关闭现有详情
+                index.openNewTab({
+                    url: "[[@{/thirdchk/chkdtl}]]?chkfileid=" + obj.data.id,
+                    menuId: '_thirdchk_chkdtl',
+                    title: '对账详情'
+                })
+            }
+        });
+    });
+</script>
\ No newline at end of file
diff --git a/payapi/src/main/resources/templates/system/thirdchk/chkstatus.html b/payapi/src/main/resources/templates/system/thirdchk/chkstatus.html
new file mode 100644
index 0000000..2114a4a
--- /dev/null
+++ b/payapi/src/main/resources/templates/system/thirdchk/chkstatus.html
@@ -0,0 +1,133 @@
+<div class="layui-card">
+    <div class="layui-card-header">
+        <h2 class="header-title">对账状态查询</h2>
+        <span class="layui-breadcrumb pull-right">
+          <a href="#">对账管理</a>
+          <a><cite>对账状态查询</cite></a>
+        </span>
+    </div>
+    <div class="layui-card-body">
+        <div class="layui-form toolbar">
+            搜索:
+            <input id="search-chkstatus-searchkey" class="layui-input search-input" type="text" maxlength="20"
+                   placeholder="输入支付能力、名称查询"/>&emsp;
+            <button id="btn-chkstatus-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon">&#xe615;</i>搜索
+            </button>
+            <button id="btn-chkstatus-reset" class="layui-btn layui-btn-primary" data-type="reset"><i
+                    class="layui-icon"></i>清 空
+            </button>
+        </div>
+        <table class="layui-table" id="checkStatusTable" lay-filter="checkStatusTable-filter"></table>
+    </div>
+</div>
+
+<!-- 表格状态列 -->
+<script type="text/html" id="chkstatus-forceRechk-tpl-state">
+    <input type="checkbox" lay-filter="chkstatus-forceRechk-tpl-state" value="{{d.id}}" lay-skin="switch"
+           lay-text="启用|关闭" {{d.forceRecheck== true?'checked':''}}/>
+</script>
+
+<script>
+    layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+        var form = layui.form;
+        var table = layui.table;
+        var admin = layui.admin;
+        // 渲染表格
+        table.render({
+            elem: '#checkStatusTable',
+            url: '[[@{/thirdchk/chkstatuslist}]]',
+            page: true,
+            cols: [
+                [
+                    {field: 'sourceType', title: '支付方式', width: 130, align: 'center', fixed: 'left', sort: true},
+                    {
+                        field: 'sourceType',
+                        title: '名称',
+                        width: 200,
+                        align: 'center',
+                        fixed: 'left',
+                        templet: function (e) {
+                            return getTempDictValue('sourcetypeList', e.sourceType);
+                        }
+                    },
+                    {field: 'startAccdate', title: '起始日期', width: 110, align: 'center'},
+                    {field: 'checkFileDate', title: '对账日期', width: 110, align: 'center'},
+                    {
+                        field: 'checkFileOk', title: '下载账单状态', width: 120, align: 'center', templet: function (e) {
+                            if (e.checkFileOk) {
+                                return '<span style="color: green">已成功</span>';
+                            } else {
+                                return '<span style="color: red;">未成功</span>';
+                            }
+                        }
+                    },
+                    {
+                        field: 'checkStatus', title: '对账状态', width: 100, align: 'center', templet: function (e) {
+                            if (e.checkStatus) {
+                                return '<span style="color: green">已完成</span>';
+                            } else {
+                                return '<span style="color: red;">未完成</span>';
+                            }
+                        }
+                    },
+                    {
+                        field: 'settleStatus', title: '清算状态', width: 100, align: 'center', templet: function (e) {
+                            if (e.settleStatus) {
+                                return '<span style="color: green">已完成</span>';
+                            } else {
+                                return '<span style="color: red;">未完成</span>';
+                            }
+                        }
+                    },
+                    {
+                        field: 'forceRecheck',
+                        title: '强制重对',
+                        width: 100,
+                        align: 'center',
+                        templet: '#chkstatus-forceRechk-tpl-state',
+                    },
+                    {field: 'remark', title: '备注', align: 'left'}
+                ]
+            ]
+        });
+
+        // 搜索按钮点击事件
+        $('#btn-chkstatus-search').click(function () {
+            var skey = $("#search-chkstatus-searchkey").val();
+            table.reload('checkStatusTable', {where: {searchkey: skey}, page: {curr: 1}});
+
+        });
+
+        $('#btn-reset-sysparam').click(function () {
+            $("#search-chkstatus-searchkey").val("");
+        });
+
+        // 修改状态
+        form.on('switch(chkstatus-forceRechk-tpl-state)', function (obj) {
+            var token = $("meta[name='_csrf_token']").attr("value");
+            admin.go('[[@{/thirdchk/forcerecheck}]]', {
+                chkid: obj.elem.value,
+                enable: obj.elem.checked,
+                _csrf: token
+            }, function (data) {
+                console.log(data);
+                if (data.code === 200) {
+                    layer.msg(data.msg, {icon: 1, time: 1000});
+                    table.reload('checkStatusTable');
+                } else if (data.code === 401) {
+                    layer.msg(data.msg, {icon: 2, time: 1500}, function () {
+                        location.replace('[[@{/login}]]');
+                    }, 1000);
+                } else {
+                    layer.msg(data.msg, {icon: 2});
+                    $(obj.elem).prop('checked', !obj.elem.checked);
+                    form.render('checkbox');
+                }
+            }, function (err) {
+                admin.errorBack(err);
+                $(obj.elem).prop('checked', !obj.elem.checked);
+                form.render('checkbox');
+            });
+        });
+    });
+</script>
\ No newline at end of file