| | |
| | | <!DOCTYPE html> |
| | | <html lang="en"> |
| | | <html> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <title>首页</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta charset="utf-8"/> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> |
| | | <title>工作台</title> |
| | | <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../../static/css/cool.css" media="all"> |
| | | <link rel="stylesheet" href="../../static/css/common.css" media="all"> |
| | | <link rel="stylesheet" href="../../static/css/bg.css"> |
| | | <link rel="stylesheet" href="../../static/css/login.css"> |
| | | <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> |
| | | <style> |
| | | html{ |
| | | height: 100%; |
| | | /** 应用快捷块样式 */ |
| | | .console-app-group { |
| | | padding: 16px; |
| | | border-radius: 4px; |
| | | text-align: center; |
| | | background-color: #fff; |
| | | cursor: pointer; |
| | | display: block; |
| | | } |
| | | body { |
| | | height: 100%; |
| | | |
| | | .console-app-group .console-app-icon { |
| | | width: 32px; |
| | | height: 32px; |
| | | line-height: 32px; |
| | | margin-bottom: 6px; |
| | | display: inline-block; |
| | | -webkit-box-sizing: border-box; |
| | | -moz-box-sizing: border-box; |
| | | box-sizing: border-box; |
| | | font-size: 32px; |
| | | color: #69c0ff; |
| | | } |
| | | |
| | | .console-app-group:hover { |
| | | box-shadow: 0 0 15px rgba(0, 0, 0, .08); |
| | | } |
| | | |
| | | /** //应用快捷块样式 */ |
| | | |
| | | /** 小组成员 */ |
| | | .console-user-group { |
| | | position: relative; |
| | | padding: 10px 0 10px 40px; |
| | | } |
| | | |
| | | .console-user-group .console-user-group-head { |
| | | width: 32px; |
| | | height: 32px; |
| | | position: absolute; |
| | | top: 50%; |
| | | left: 12px; |
| | | margin-top: -10px; |
| | | border-radius: 50%; |
| | | font-size: 18px; |
| | | font-weight: bolder; |
| | | } |
| | | |
| | | .console-user-group .layui-badge { |
| | | position: absolute; |
| | | top: 50%; |
| | | right: 8px; |
| | | margin-top: -10px; |
| | | } |
| | | |
| | | .console-user-group .console-user-group-name { |
| | | line-height: 1.2; |
| | | } |
| | | |
| | | .console-user-group .console-user-group-desc { |
| | | color: #8c8c8c; |
| | | line-height: 1; |
| | | font-size: 12px; |
| | | margin-top: 5px; |
| | | } |
| | | |
| | | /** 卡片轮播图样式 */ |
| | | .admin-carousel .layui-carousel-ind { |
| | | position: absolute; |
| | | top: -41px; |
| | | text-align: right; |
| | | } |
| | | |
| | | .admin-carousel .layui-carousel-ind ul { |
| | | background: 0 0; |
| | | } |
| | | |
| | | .admin-carousel .layui-carousel-ind li { |
| | | background-color: #e2e2e2; |
| | | } |
| | | |
| | | .admin-carousel .layui-carousel-ind li.layui-this { |
| | | background-color: #999; |
| | | } |
| | | |
| | | /** 广告位轮播图 */ |
| | | .admin-news .layui-carousel-ind { |
| | | height: 45px; |
| | | } |
| | | |
| | | .admin-news a { |
| | | display: block; |
| | | line-height: 70px; |
| | | text-align: center; |
| | | } |
| | | |
| | | /** 最新动态时间线 */ |
| | | .layui-timeline-dynamic .layui-timeline-item { |
| | | padding-bottom: 0; |
| | | } |
| | | |
| | | .layui-timeline-dynamic .layui-timeline-item:before { |
| | | top: 16px; |
| | | } |
| | | |
| | | .layui-timeline-dynamic .layui-timeline-axis { |
| | | width: 9px; |
| | | height: 9px; |
| | | left: 1px; |
| | | top: 7px; |
| | | background-color: #cbd0db; |
| | | } |
| | | |
| | | .layui-timeline-dynamic .layui-timeline-axis.active { |
| | | background-color: #0c64eb; |
| | | box-shadow: 0 0 0 2px rgba(12, 100, 235, .3); |
| | | } |
| | | |
| | | .dynamic-card-body { |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | } |
| | | .intr-bg { |
| | | text-align: center; |
| | | position: relative; |
| | | height: 100%; |
| | | /*background-color: #5FB878;*/ |
| | | } |
| | | .intr-bg .msg-contain { |
| | | position: absolute; |
| | | top: 40%; |
| | | left: 50%; |
| | | transform: translate(-50%, -50%); |
| | | z-index: 999; |
| | | |
| | | .dynamic-card-body:hover { |
| | | overflow-y: auto; |
| | | padding-right: 9px; |
| | | } |
| | | #msg { |
| | | font-weight: bolder!important; |
| | | letter-spacing: 5px; |
| | | font-size: 50px; |
| | | color: #595959; |
| | | |
| | | /** 优先级徽章 */ |
| | | .layui-badge-priority { |
| | | padding: 2px; |
| | | border-radius: 20%; |
| | | width: 30px; |
| | | height: 30px; |
| | | line-height: 18px; |
| | | border-width: 2px; |
| | | font-weight: 600; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | <div class="intr-bg"> |
| | | <ul class="bg-bubbles"> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | <li></li> |
| | | </ul> |
| | | <div class="msg-contain"> |
| | | <span id="msg">欢迎来到别样肉客访客签离系统</span> |
| | | <!-- 正文开始 --> |
| | | <div class="layui-fluid ew-console-wrapper"> |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-xs12 layui-col-sm6 layui-col-md3"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header"> |
| | | 组托量<span class="layui-badge layui-badge-green pull-right">日</span> |
| | | </div> |
| | | <div class="layui-card-body"> |
| | | <p class="lay-big-font" id="combQtyDay">0</p> |
| | | <p>总组托量<span class="pull-right"><span id="combQty">0</span></span></p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs12 layui-col-sm6 layui-col-md3"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header"> |
| | | 商品数量<span class="layui-badge layui-badge-blue pull-right">总</span> |
| | | </div> |
| | | <div class="layui-card-body"> |
| | | <p class="lay-big-font"><span style="line-height: 1;" id="matQty">0</span></p> |
| | | <p>货位数量<span class="pull-right"><span id="nodeQty"></span> </span></p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs12 layui-col-sm6 layui-col-md3"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header"> |
| | | 拣货单量<span class="layui-badge layui-badge-red pull-right">月</span> |
| | | </div> |
| | | <div class="layui-card-body"> |
| | | <p class="lay-big-font"><span id="pakoutQtyMonth">0</span></p> |
| | | <p>总单量<span class="pull-right"><span id="pakoutQty">0</span></span></p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs12 layui-col-sm6 layui-col-md3"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header"> |
| | | 系统用户 |
| | | <span class="icon-text pull-right" lay-tips="WMS 系统运行中......" lay-direction="4" lay-offset="5px,5px"> |
| | | <i class="layui-icon layui-icon-loading-1 layui-anim layui-anim-rotate layui-anim-loop"></i> |
| | | </span> |
| | | </div> |
| | | <div class="layui-card-body"> |
| | | <p class="lay-big-font"><span id="usersQty">0</span> <span style="font-size: 24px;line-height: 1;">位</span></p> |
| | | <p>操作次数<span class="pull-right"><span id="optQty">0</span> 次</span></p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <!-- 快捷方式 --> |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-sm6" style="padding-bottom: 0;"> |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <a class="console-app-group" lay-href="mat/mat.html?resourceId=20414" lay-text="商品资料管理"> |
| | | <i class="console-app-icon layui-icon layui-icon-cart" style="color: #ff9c6e;"></i> |
| | | <div class="console-app-name">商品</div> |
| | | </a> |
| | | </div> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="locDetl/locDetl.html?resourceId=20429" lay-text="库存资料查询"> |
| | | <i class="console-app-icon layui-icon layui-icon-chart" style="color: #95de64;"></i> |
| | | <div class="console-app-name">库存</div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="custOrder/custOrder.html?resourceId=30442" lay-text="销售订单"> |
| | | <i class="console-app-icon layui-icon layui-icon-templeate-1" style="color: #5cdbd3;font-size: 30px;"></i> |
| | | <div class="console-app-name">订单</div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="pakout/pakout.html?resourceId=30435" lay-text="拣货单管理"> |
| | | <i class="console-app-icon layui-icon layui-icon-form" style="color: #b37feb;font-size: 30px;"></i> |
| | | <div class="console-app-name">拣货单</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-sm6" style="padding-bottom: 0;"> |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="prior/prior.html?resourceId=30421" lay-text="推荐货位"> |
| | | <i class="console-app-icon layui-icon layui-icon-layer" style="color: #ffd666;font-size: 34px;"></i> |
| | | <div class="console-app-name">推荐货位</div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="user/user.html?resourceId=4" lay-text="系统用户"> |
| | | <i class="console-app-icon layui-icon layui-icon-group" style="font-size: 26px;padding-top: 3px;margin-right: 6px;"></i> |
| | | <div class="console-app-name">用户</div> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-col-xs6 layui-col-sm3">--> |
| | | <!-- <div class="console-app-group" lay-href="allo/allo.html?resourceId=20402" lay-text="货位信息">--> |
| | | <!-- <i class="console-app-icon layui-icon layui-icon-templeate-1" style="color: #5cdbd3;font-size: 36px;"></i>--> |
| | | <!-- <div class="console-app-name">货位</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="tag/tag.html?resourceId=20408" lay-text="归类管理"> |
| | | <i class="console-app-icon layui-icon layui-icon-note" |
| | | style="color: #ff85c0;font-size: 28px;"></i> |
| | | <div class="console-app-name">归类</div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs6 layui-col-sm3"> |
| | | <div class="console-app-group" lay-href="detail.html?resourceId=8" lay-text="基本资料"> |
| | | <i class="console-app-icon layui-icon layui-icon-slider" style="color: #ffc069;"></i> |
| | | <div class="console-app-name">设置</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-md8 layui-col-sm6"> |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header"> |
| | | 组托动态 |
| | | <span class="icon-text pull-right" lay-tips="蓝色代表未入库" lay-direction="4" lay-offset="5px,5px"> |
| | | <i class="layui-icon layui-icon-tips"></i> |
| | | </span> |
| | | </div> |
| | | <div class="layui-card-body dynamic-card-body mini-bar" style="height: 265px;"> |
| | | <ul id="combList" class="layui-timeline layui-timeline-dynamic"> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header">最新拣货</div> |
| | | <div class="layui-card-body"> |
| | | <table class="layui-table" lay-skin="line"> |
| | | <colgroup> |
| | | <col width="80"/> |
| | | <col/> |
| | | <col width="80"/> |
| | | </colgroup> |
| | | <thead> |
| | | <tr> |
| | | <td align="center">数量</td> |
| | | <td>拣货信息</td> |
| | | <td align="center">状态</td> |
| | | </tr> |
| | | </thead> |
| | | <tbody id="pakoutList"> |
| | | </tbody> |
| | | </table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md12"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header">滞留库存</div> |
| | | <div class="layui-card-body"> |
| | | <table class="layui-table" lay-skin="line"> |
| | | <colgroup> |
| | | <col width="40"/> |
| | | <col/> |
| | | <col/> |
| | | <col/> |
| | | <col/> |
| | | <col width="300"/> |
| | | </colgroup> |
| | | <thead> |
| | | <tr> |
| | | <td></td> |
| | | <td align="center">货位</td> |
| | | <td align="center">置入时间</td> |
| | | <td align="center">滞留天数</td> |
| | | <td align="center">商品编码</td> |
| | | <td align="center">商品名称</td> |
| | | <td align="center">数量</td> |
| | | </tr> |
| | | </thead> |
| | | <tbody id="retentionList"> |
| | | </tbody> |
| | | </table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md4 layui-col-sm6"> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header">版本信息</div> |
| | | <div class="layui-card-body"> |
| | | <table class="layui-table layui-text"> |
| | | <colgroup> |
| | | <col width="90"> |
| | | <col> |
| | | </colgroup> |
| | | <tbody> |
| | | <tr> |
| | | <td>系统简称</td> |
| | | <td>仓储管理系统(WMS)</td> |
| | | </tr> |
| | | <tr> |
| | | <td>版本号</td> |
| | | <td>Version 1.0.0</td> |
| | | </tr> |
| | | <tr> |
| | | <td>优点特色</td> |
| | | <td>易上手 / 操作效率高 / 数据及时 / 简约</td> |
| | | </tr> |
| | | <tr> |
| | | <td>制作方</td> |
| | | <td><a href="http://www.zoneyung.com" target="_blank">浙江中扬立库技术有限公司</a></td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | </div> |
| | | </div> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header">安全库存警告</div> |
| | | <div class="layui-card-body" id="safeQuaList"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-header">友情链接</div> |
| | | <div class="layui-card-body"> |
| | | <div class="layui-carousel admin-carousel admin-news" id="workplaceNewsCarousel"> |
| | | <div carousel-item> |
| | | <div> |
| | | <a href="http://192.168.110.56:8080/htwms" target="_blank" |
| | | style="color:#fff;background-color: #009688;background-image: linear-gradient(to right,#009688,#5fb878);"> |
| | | ASRS(自动化立体仓库) - WMS</a> |
| | | </div> |
| | | <div> |
| | | <a href="http://192.168.110.56:8080/htwcs" target="_blank" |
| | | style="color:#fff;background-color: #009fde;background-image: linear-gradient(to right,#009fde,#00beff);"> |
| | | ASRS(自动化立体仓库) - WCS 设备控制中心</a> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <!-- js部分 --> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | </html> |
| | | <script type="text/javascript" src="../../static/js/common.js"></script> |
| | | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script> |
| | | layui.config({ |
| | | base: '../../static/layuiadmin/' //静态资源所在路径 |
| | | }).extend({ |
| | | index: 'lib/index' //主入口模块 |
| | | }).use(['layer', 'carousel', 'element', 'index'], function () { |
| | | var element = layui.element; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var carousel = layui.carousel; |
| | | var device = layui.device(); |
| | | |
| | | |
| | | getHeaderData(); |
| | | getBodyData(); |
| | | |
| | | setInterval(function () { |
| | | getHeaderData(); |
| | | getBodyData(); |
| | | }, 3000) |
| | | |
| | | // 渲染轮播 |
| | | carousel.render({ |
| | | elem: '#workplaceNewsCarousel', |
| | | width: '100%', |
| | | height: '70px', |
| | | arrow: 'none', |
| | | autoplay: true, |
| | | trigger: device.ios || device.android ? 'click' : 'hover', |
| | | anim: 'fade' |
| | | }); |
| | | |
| | | // 头 |
| | | function getHeaderData() { |
| | | $.ajax({ |
| | | url: baseUrl + "/console/header/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200) { |
| | | var result = res.data; |
| | | $('#combQtyDay').text(result.combQtyDay); |
| | | $('#combQty').text(result.combQty); |
| | | |
| | | $('#matQty').text(result.matQty); |
| | | $('#nodeQty').text(result.nodeQty); |
| | | |
| | | $('#pakoutQty').text(result.pakoutQty); |
| | | $('#pakoutQtyMonth').text(result.pakoutQtyMonth); |
| | | |
| | | $('#usersQty').text(result.usersQty); |
| | | $('#deptQty').text(result.deptQty); |
| | | $('#optQty').text(result.optQty); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/"; |
| | | } else { |
| | | layer.msg(res.msg, {icon: 2}) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | |
| | | // 头 |
| | | function getBodyData() { |
| | | $.ajax({ |
| | | url: baseUrl + "/console/body/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200) { |
| | | // 组托 |
| | | var tpl1 = $('#combTpl').html(); |
| | | var template1 = Handlebars.compile(tpl1); |
| | | var html1 = template1(res.data); |
| | | $('#combList').html(html1); |
| | | // 订单 |
| | | var tpl2 = $('#orderTpl').html(); |
| | | var template2 = Handlebars.compile(tpl2); |
| | | var html2 = template2(res.data); |
| | | $('#pakoutList').html(html2); |
| | | // 安全库存 |
| | | var tpl3 = $('#safeQuaTpl').html(); |
| | | var template3 = Handlebars.compile(tpl3); |
| | | var html3 = template3(res.data); |
| | | $('#safeQuaList').html(html3); |
| | | // 库存滞留 |
| | | var tpl4 = $('#retentionTpl').html(); |
| | | var template4 = Handlebars.compile(tpl4); |
| | | var html4 = template4(res.data); |
| | | $('#retentionList').html(html4); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/"; |
| | | } else { |
| | | layer.msg(res.msg, {icon: 2}) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | |
| | | }); |
| | | </script> |
| | | <script type="text/template" id="combTpl"> |
| | | {{#each combList}} |
| | | <li class="layui-timeline-item"> |
| | | <i class="layui-icon layui-timeline-axis {{active}}"></i> |
| | | <div class="layui-timeline-content layui-text"> |
| | | <div class="layui-timeline-title"> |
| | | <span title="{{maktx}}">{{matnr}}</span> 并板 <span>{{zpallet}}</span> 托盘, 数量:{{anfme}} |
| | | <span class="pull-right">{{time}} </span> |
| | | </div> |
| | | </div> |
| | | </li> |
| | | {{/each}} |
| | | </script> |
| | | <script type="text/template" id="orderTpl"> |
| | | {{#each pakoutList}} |
| | | <tr> |
| | | <td align="center"> |
| | | <span class="layui-badge-red layui-badge-priority">{{anfme}}</span> |
| | | </td> |
| | | <td><span class="layui-text"><a style="cursor: default">{{loc_no}} <span style="color: #4c4c4c">出库:</span> <span title="{{maktx}}" style="cursor: default">{{matnr}}</span></a></span></td> |
| | | <td align="center"> |
| | | <span class="{{style}}"> |
| | | {{wrkStsName}} |
| | | </span> |
| | | </td> |
| | | </tr> |
| | | {{/each}} |
| | | </script> |
| | | <script type="text/template" id="safeQuaTpl"> |
| | | {{#each safeQuaList}} |
| | | <div class="console-user-group"> |
| | | <div class="console-user-group-head">{{no}}</div> |
| | | <div class="console-user-group-name">{{node_name}}</div> |
| | | <div class="console-user-group-desc">{{maktx}}</div> |
| | | <span class="layui-badge layui-badge-red" style="letter-spacing: 1px">需入库:{{dValue}}</span> |
| | | </div> |
| | | {{/each}} |
| | | </script> |
| | | <script type="text/template" id="retentionTpl"> |
| | | {{#each retentionList}} |
| | | <tr> |
| | | <td>{{no}}</td> |
| | | <td align="center"><span class="layui-text"><a>{{loc_no}}</a></span></td> |
| | | <td align="center">{{createTime}}</td> |
| | | <td align="center"><span style="font-weight: bold">{{stayDays}}</span> 天</td> |
| | | <td align="center"><span class="text-success">{{matnr}}</span></td> |
| | | <td align="center"> |
| | | <span style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{maktx}}</span> |
| | | </td> |
| | | <td align="center"><span style="font-weight: bold">{{anfme}}</span></td> |
| | | </tr> |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | </html> |