|  |  |  | 
|---|
|  |  |  | border: 1px solid #f1f1f1; | 
|---|
|  |  |  | margin-bottom: .5rem; | 
|---|
|  |  |  | padding: .5rem; | 
|---|
|  |  |  | background: #FFFFFF; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #febs-index .welcome-info-wrapper { | 
|---|
|  |  |  | 
|---|
|  |  |  | #febs-index .project-desc { | 
|---|
|  |  |  | color: rgba(0, 0, 0, 0.45); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | /*.layui-card:last-child{*/ | 
|---|
|  |  |  | /*    background: #F8F8F8;*/ | 
|---|
|  |  |  | /*}*/ | 
|---|
|  |  |  | .box{ | 
|---|
|  |  |  | background: #FFFFFF; | 
|---|
|  |  |  | padding: 30px 30px; | 
|---|
|  |  |  | border-radius: 4px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .box .name{ | 
|---|
|  |  |  | font-size: 14px; | 
|---|
|  |  |  | color: #333333; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .box .num{ | 
|---|
|  |  |  | font-size: 24px; | 
|---|
|  |  |  | color: #1890ff; | 
|---|
|  |  |  | font-weight: bold; | 
|---|
|  |  |  | margin-top: 10px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .m-title{ | 
|---|
|  |  |  | position: relative; | 
|---|
|  |  |  | font-size: 16px; | 
|---|
|  |  |  | font-weight: bold; | 
|---|
|  |  |  | color: #000000; | 
|---|
|  |  |  | padding-left: 20px; | 
|---|
|  |  |  | margin: 0 0 10px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .m-title::before{ | 
|---|
|  |  |  | content: ''; | 
|---|
|  |  |  | position: absolute; | 
|---|
|  |  |  | left: 0; | 
|---|
|  |  |  | width: 4px; | 
|---|
|  |  |  | height: 20px; | 
|---|
|  |  |  | background: #1890ff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | <div class="layui-fluid layui-anim febs-anim-up" id="febs-index" lay-title="系统首页"> | 
|---|
|  |  |  | <div class="layui-row layui-col-space8 febs-container"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-sm12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-card"> | 
|---|
|  |  |  | <div class="layui-card" style="background: #F8F8F8;"> | 
|---|
|  |  |  | <div class="layui-card-body layui-anim layui-anim-fadein"> | 
|---|
|  |  |  | <div class="layui-row welcome-info"> | 
|---|
|  |  |  | <div class="layui-col-md6 layui-col-sm12 layui-col-xs12"> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md6 layui-col-sm12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-col-md-offset5"> | 
|---|
|  |  |  | <table class="login-count-table"> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td>今日IP</td> | 
|---|
|  |  |  | <td>今日访问</td> | 
|---|
|  |  |  | <td>总访问量</td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td class="count" id="today-ip"> | 
|---|
|  |  |  | 0 | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="count" id="today-visit-count"> | 
|---|
|  |  |  | 0 | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="count" id="total-visit-count"> | 
|---|
|  |  |  | 0 | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | </table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div class="layui-card-body layui-anim layui-anim-fadein"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="m-title">订单付款</div> | 
|---|
|  |  |  | <div class="layui-row layui-col-space15"> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">微信支付</p> | 
|---|
|  |  |  | <p class="num"><span id="wechatPay"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">余额支付</p> | 
|---|
|  |  |  | <p class="num"><span id="balancePay"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md6 layui-col-sm6 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-card"> | 
|---|
|  |  |  | <div class="layui-card-body"> | 
|---|
|  |  |  | <div id="chart" style="height: 350px"></div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div class="layui-card-body layui-anim layui-anim-fadein"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="m-title">会员注册</div> | 
|---|
|  |  |  | <div class="layui-row layui-col-space15"> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">用户注册总数</p> | 
|---|
|  |  |  | <p class="num"><span id="totalMember"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">本日注册用户数</p> | 
|---|
|  |  |  | <p class="num"><span id="todayMember"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md6 layui-col-sm6 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-card"> | 
|---|
|  |  |  | <div class="layui-card-body"> | 
|---|
|  |  |  | <table class="project-table"> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td style="padding: .8rem;">进行中的项目</td> | 
|---|
|  |  |  | <td style="padding: .8rem;text-align: right"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli?tab=repositories">所有项目</a> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Cloud">FEBS | 
|---|
|  |  |  | Cloud</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | Spring Cloud 微服务权限管理系统。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div class="layui-card-body layui-anim layui-anim-fadein"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-row layui-col-space15"> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">本月注册用户数</p> | 
|---|
|  |  |  | <p class="num"><span id="thisMonthMember"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Cloud-Web">FEBS | 
|---|
|  |  |  | Cloud Web</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | FEBS-Cloud前端,使用 vue-element-admin 构建。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="layui-col-md3"> | 
|---|
|  |  |  | <div class="layui-panel"> | 
|---|
|  |  |  | <div class="box"> | 
|---|
|  |  |  | <p class="name">上月注册用户数</p> | 
|---|
|  |  |  | <p class="num"><span id="lastMonthMember"></span></p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Shiro">FEBS | 
|---|
|  |  |  | Shiro</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | Spring Boot 2.0.4 & Shiro1.4.0 权限管理系统。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Security">FEBS | 
|---|
|  |  |  | Security</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | Spring Boot 2.0.4 & Spring Security 5.0.7 权限管理系统。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Actuator">FEBS | 
|---|
|  |  |  | Cloud K8S</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | FEBS Cloud K8S集群部署脚本。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/SpringAll">SpringAll</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | 循序渐进学习Spring Boot、Spring Cloud与Spring Security。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | <tr> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Vue">FEBS | 
|---|
|  |  |  | Vue</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | FEBS-Shiro前后端分离版本,前端架构采用Vue全家桶。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | <td class="project-table-td"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12 layui-col-xs12"> | 
|---|
|  |  |  | <div class="layui-row"> | 
|---|
|  |  |  | <div class="layui-col-md12"> | 
|---|
|  |  |  | <a target="_blank" href="https://github.com/wuyouzhuguli/FEBS-Actuator">FEBS Actuator</a> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div class="project-desc"> | 
|---|
|  |  |  | 使用Spring Boot Admin 2.0.2构建,用于监控FEBS。 | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </td> | 
|---|
|  |  |  | </tr> | 
|---|
|  |  |  | </table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | var index = Math.floor((Math.random() * welcomeArr.length)); | 
|---|
|  |  |  | var welcomeMessage = time + ',<a id="febs-index-user">' + currentUser.username + '</a>,' + welcomeArr[index]; | 
|---|
|  |  |  | $view.find('#today-ip').text(data.todayIp).end() | 
|---|
|  |  |  | .find('#today-visit-count').text(data.todayVisitCount).end() | 
|---|
|  |  |  | .find('#total-visit-count').text(data.totalVisitCount).end() | 
|---|
|  |  |  | $view.find('#today').text(data.today).end() | 
|---|
|  |  |  | .find('#lastDay').text(data.lastDay).end() | 
|---|
|  |  |  | .find('#thisMonth').text(data.thisMonth).end() | 
|---|
|  |  |  | .find('#lastMonth').text(data.lastMonth).end() | 
|---|
|  |  |  | //会员信息 | 
|---|
|  |  |  | .find('#totalMember').text(data.totalMember).end() | 
|---|
|  |  |  | // .find('#formalMember').text(data.formalMember).end() | 
|---|
|  |  |  | // .find('#informalMember').text(data.informalMember).end() | 
|---|
|  |  |  | .find('#todayMember').text(data.todayMember).end() | 
|---|
|  |  |  | .find('#thisMonthMember').text(data.thisMonthMember).end() | 
|---|
|  |  |  | .find('#lastMonthMember').text(data.lastMonthMember).end() | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .find('#wechatPay').text(data.wechatPay).end() | 
|---|
|  |  |  | // .find('#alipayPay').text(data.alipayPay).end() | 
|---|
|  |  |  | // .find('#scorePay').text(data.scorePay).end() | 
|---|
|  |  |  | .find('#balancePay').text(data.balancePay).end() | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .find('#user-dept').text(currentUser.deptName ? currentUser.deptName : '暂无所属部门').end() | 
|---|
|  |  |  | .find('#user-role').text(currentUser.roleName ? currentUser.roleName : '暂无角色').end() | 
|---|
|  |  |  | .find('#last-login-time').text(currentUser.lastLoginTime ? currentUser.lastLoginTime : '第一次访问系统').end() | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (!contain) totalVisitCount.push(0); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var options = { | 
|---|
|  |  |  | chart: { | 
|---|
|  |  |  | height: 350, | 
|---|
|  |  |  | type: 'area', | 
|---|
|  |  |  | toolbar: { | 
|---|
|  |  |  | show: false | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | colors: ['#1890ff', '#0acf97'], | 
|---|
|  |  |  | plotOptions: { | 
|---|
|  |  |  | bar: { | 
|---|
|  |  |  | horizontal: false, | 
|---|
|  |  |  | columnWidth: '32rem' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | dataLabels: { | 
|---|
|  |  |  | enabled: false | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | stroke: { | 
|---|
|  |  |  | width: [3, 3], | 
|---|
|  |  |  | curve: 'smooth' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | series: [{ | 
|---|
|  |  |  | name: '总数', | 
|---|
|  |  |  | data: totalVisitCount | 
|---|
|  |  |  | }, { | 
|---|
|  |  |  | name: '您', | 
|---|
|  |  |  | data: yourVisitCount | 
|---|
|  |  |  | }], | 
|---|
|  |  |  | xaxis: { | 
|---|
|  |  |  | categories: lastTenDays, | 
|---|
|  |  |  | axisTicks: { | 
|---|
|  |  |  | show: true | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | axisBorder: { | 
|---|
|  |  |  | show: true, | 
|---|
|  |  |  | color: '#f1f1f1' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | fill: { | 
|---|
|  |  |  | type: 'gradient', | 
|---|
|  |  |  | gradient: { | 
|---|
|  |  |  | shadeIntensity: 1, | 
|---|
|  |  |  | inverseColors: false, | 
|---|
|  |  |  | opacityFrom: 0.5, | 
|---|
|  |  |  | opacityTo: 0, | 
|---|
|  |  |  | stops: [0, 90, 100] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | title: { | 
|---|
|  |  |  | text: '近10天系统访问记录', | 
|---|
|  |  |  | align: 'left', | 
|---|
|  |  |  | style: { | 
|---|
|  |  |  | color: 'rgba(0, 0, 0, .65)' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | tooltip: { | 
|---|
|  |  |  | y: { | 
|---|
|  |  |  | formatter: function (val) { | 
|---|
|  |  |  | return "访问次数 " + val + " 次" | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | grid: { | 
|---|
|  |  |  | row: { | 
|---|
|  |  |  | colors: ['transparent', 'transparent'], | 
|---|
|  |  |  | opacity: 0.2 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | borderColor: '#f1f1f1' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | new ApexCharts( | 
|---|
|  |  |  | document.querySelector("#chart"), | 
|---|
|  |  |  | options | 
|---|
|  |  |  | ).render(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $view.on('click', '#febs-index-user',function () { | 
|---|