Initial commit

This commit is contained in:
2022-10-30 11:02:41 +08:00
commit a93cdd1a1e
190 changed files with 27813 additions and 0 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
web/WEB-INF/lib/jstl.jar Normal file

Binary file not shown.

BIN
web/WEB-INF/lib/mail.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

6
web/WEB-INF/web.xml Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
</web-app>

74
web/admin/addGoods.jsp Normal file
View File

@@ -0,0 +1,74 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css" />
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script src="../js/DatePicker.js"></script>
<title>商品添加页面</title>
</head>
<body>
<div class="row" style="margin-left: 20px;">
<form action="${pageContext.request.contextPath }/addGoods" method="post" enctype="multipart/form-data">
<div>
<h3>新增商品</h3>
</div>
<hr />
<div class="row">
<div class="col-sm-6">
<div class="form-group form-inline">
<label>名称:</label>
<input type="text" name="name" class="form-control" />
</div>
<div class="form-group form-inline">
<label>分类:</label>
<select name="typeid" class="form-control">
<option value="0">------</option>
<option value="1">电脑</option>
<option value="2">笔记本</option>
<option value="3">平板</option>
<option value="7">小米手机</option>
<option value="8">红米</option>
</select>
</div>
<div class="form-group form-inline">
<label>时间:</label>
<input type="text" name="pubdate" readonly="readonly" class="form-control" onclick="setday(this)" />
</div>
</div>
<div class="col-sm-6">
<div class="form-group form-inline">
<label>价格:</label>
<input type="text" name="price" class="form-control" />
</div>
<div class="form-group form-inline">
<label>评分:</label>
<input type="text" name="star" class="form-control" />
</div>
</div>
</div>
<div class="row">
<div class="col-sm-10">
<div class="form-group form-inline">
<label>商品图片</label>
<input type="file" name="picture" />
</div>
<div class="form-group ">
<label>商品简介</label>
<textarea name="intro" class="form-control" rows="5"></textarea>
</div>
<div class="form-group form-inline">
<input type="submit" value="添加" class="btn btn-primary" />
<input type="reset" value="重置" class="btn btn-default" />
</div>
</div>
</div>
</form>
</div>
</body>
</html>

View File

@@ -0,0 +1,55 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css" />
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<title>添加商品种类</title>
<script>
</script>
</head>
<body>
<div style="width:98%;margin-left: 1%;">
<div class="panel panel-default">
<div class="panel-heading">
添加商品种类
</div>
<div class="panel-body">
<form action="${pageContext.request.contextPath }/addGoodsType" method="post">
<div class="row">
<div class="form-group form-inline">
<span>所属种类</span>
<select name="goodsParent">
<option value="1">--请选择--</option>
<c:forEach items="${goodsTypeList }" var="type">
<c:if test="${type.level <=2}">
<option value="${type.id }">${type.name }</option>
</c:if>
</c:forEach>
</select>
</div>
</div>
<div class="row">
<div class="form-group form-inline">
<span>种类名称</span>
<input type="text" name="typename" class="form-control">
</div>
</div>
<div class="row">
<div class="btn-group">
<button type="reset" class="btn btn-default">清空</button>
<button type="submit" class="btn btn-default">添加</button>
</div>
</div>
</form>
</div>
</div>
</div>
</body>
</html>

155
web/admin/admin.jsp Normal file
View File

@@ -0,0 +1,155 @@
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>后台首页</title>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../css/bootstrap.min.css" rel="stylesheet">
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<title>后台主页面</title>
<style>
@media ( min-width :768px ) {
#left_tab {
width: 250px;
position: absolute;
z-index: 1;
height: 640px;
}
.mysearch {
margin: 10px;
}
.page_main {
margin-left: 255px;
}
.dv_content{
width: 100%;
height: 500px;
}
}
</style>
</head>
<body>
<c:if test="${admin==null }">
<c:redirect url="login.jsp"></c:redirect>
</c:if>
<!--导航 -->
<div style="width: 80%;margin-left: 10%;">
<nav class="navbar navbar-default navbar-static-top">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#left_tab,#top_right">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="#" class="navbar-brand">网站后台管理</a>
</div>
<ul id="top_right" class="collapse navbar-collapse nav navbar-nav navbar-right" style="margin-right: 20px;">
<li>
<a href="#">
<span class="badge" style="background-color: red;">23</span>
</a>
</li>
<li>
<a href="#">
<span class="glyphicon glyphicon-off"></span>注销
</a>
</li>
</ul>
<!--左侧边栏 -->
<div id="left_tab" style="margin-top: 70px;" class="collapse navbar-default navbar-collapse">
<ul class="nav panel-group" id="myPanel">
<!--栏目-->
<li class="panel">
<a href="#sub1" data-toggle="collapse" data-parent="#myPanel"> 用户管理
<span class="glyphicon glyphicon-triangle-bottom pull-right"></span>
</a>
<ul id="sub1" class="nav collapse panel-collapse">
<li>
<a href="#" id="showUser">
<span class="glyphicon glyphicon-user"></span>&nbsp;&nbsp;<b>会员管理</b>
</a>
</li>
<li>
<a href="#" id="invalid"><!-- 无效会员 -->
<span class="glyphicon glyphicon-user"></span>&nbsp;&nbsp;<b>无效会员管理</b>
</a>
</li>
</ul>
</li>
<li class="panel">
<a href="#sub3" data-toggle="collapse" data-parent="#myPanel"> 商品管理
<span class="glyphicon glyphicon-triangle-bottom pull-right"></span>
</a>
<ul id="sub3" class="nav panel-collapse collapse">
<li>
<a href="#" id="showGoodsType">
<span class="glyphicon glyphicon-record"></span>&nbsp;&nbsp;查看商品分类
</a>
</li>
<li>
<a href="#" id="addGoodsType">
<span class="glyphicon glyphicon-plus"></span>&nbsp;&nbsp;添加商品分类
</a>
</li>
<li>
<a href="#" id="showGoods" >
<span class="glyphicon glyphicon-record"></span>&nbsp;&nbsp;查看商品
</a>
</li>
<li>
<a href="#" id="addGoods">
<span class="glyphicon glyphicon-plus"></span>&nbsp;&nbsp;添加商品
</a>
</li>
</ul>
</li>
<li class="panel">
<a href="#sub2" data-toggle="collapse" data-parent="#myPanel"> 订单管理
<span class="glyphicon glyphicon-triangle-bottom pull-right"></span>
</a>
<ul id="sub2" class="nav panel-collapse collapse">
<li>
<a href="#" id="showOrder">
<span class="glyphicon glyphicon-record"></span>&nbsp;&nbsp;查看订单
</a>
</li>
</ul>
</li>
</ul>
</div>
</nav>
<!--右侧部分-->
<div class="page_main">
<script type="text/javascript">
$("#showUser").click(function(){
$(".dv_content").attr("src","userList.jsp");
})
$("#showGoodsType").click(function(){
$(".dv_content").attr("src","${pageContext.request.contextPath}/getGoodsType?flag=show");
})
$("#addGoodsType").click(function(){
$(".dv_content").attr("src","${pageContext.request.contextPath}/getGoodsType?flag=add");
})
$("#showGoods").click(function(){
$(".dv_content").attr("src","${pageContext.request.contextPath}/getGoodsList");
})
$("#addGoods").click(function(){
$(".dv_content").attr("src","addGoods.jsp");
})
$("#showOrder").click(function(){
$(".dv_content").attr("src","${pageContext.request.contextPath}/getAllOrder");
})
</script>
<iframe class="dv_content" frameborder="0" scrolling="no">
</iframe>
</div>
</div>
</body>
</html>

31
web/admin/invalidUser.jsp Normal file
View File

@@ -0,0 +1,31 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css" />
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<title>无效会员管理</title>
</head>
<body>
<div class="row" style="width:98%;margin-left: 1%;margin-top: 5px;">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
已停用会员列表
</div>
<div class="panel-body">
<table id="tb_list" class="table table-striped table-hover table-bordered">
</table>
</div>
</div>
</div>
</div>
</body>
</html>

72
web/admin/login.jsp Normal file
View File

@@ -0,0 +1,72 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<!-- Bootstrap -->
<link href="../css/bootstrap.min.css" rel="stylesheet">
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<title>登录</title>
<script type="text/javascript">
$(function(){
$("#eye").click(function(){
if($("#password").attr("type")=="password"){
$("#password").attr("type","text");
$("#eye").attr("class","glyphicon glyphicon-eye-close");
}else{
$("#password").attr("type","password");
$("#eye").attr("class","glyphicon glyphicon-eye-open");
}
})
})
</script>
<style type="text/css">
#main{
position: absolute;
width: 400px;
height: 300px;
left:50%;
top:40%;
margin-left: -200px;
margin-top: -100px;
}
</style>
</head>
<body>
<div id="main" class="panel panel-primary">
<div class="panel-heading">
<div class="panel-title">
后台登录
</div>
</div>
<div class="panel-body">
<div style="text-align: center;">
<img src="../image/mistore_logo.png" alt="logo" width="30%" height="30%" />
</div>
<form action="${pageContext.request.contextPath }/adminLogin" method="post">
<div class="form-group">
<label>用户名:</label>
<input type="text" name="username" id="" class="form-control" placeholder="请输入用户名"/>
</div>
<div class="form-group">
<label>密&nbsp;&nbsp;&nbsp;码:</label>
<div class="input-group">
<input type="password" name="password" id="password" class="form-control" placeholder="请输入密码"/>
<span class="input-group-addon">
<span class="glyphicon glyphicon-eye-open" id="eye"></span>
</span>
</div>
</div>
<div class="form-group" style="text-align: center;">
<input type="submit" value="登录" class="btn btn-primary">
<input type="reset" value="重置" class="btn btn-default">
</div>
</form>
</div>
</div>
</body>
</html>

104
web/admin/showAllOrder.jsp Normal file
View File

@@ -0,0 +1,104 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>后台 订单列表</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css">
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script type="text/javascript">
function sendOrder(id){
location.href = "${pageContext.request.contextPath}/sendOrder?oid="+id;
}
$(function(){
$("#search").click(function(){
var username = $("input[name='username']").val();
var status = $("select[name='orderStatus'] option:selected").val();
location.href="${pageContext.request.contextPath}/searchOrder?username="+username+"&status="+status;
})
})
</script>
</head>
<body>
<div class="row" style="width:98%;margin-left: 1%;margin-top: 5px;">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
订单列表
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>用户姓名</span>
<input type="text" name="username" class="form-control">
</div>
</div>
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>订单状态</span>
<select name="orderStatus" class="form-control">
<option value=" ">----------</option>
<option value="1">未支付</option>
<option value="2">已支付,待发货</option>
<option value="3">已发货,待收货</option>
<option value="4">完成订单</option>
</select>
</div>
</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
<button type="button" class="btn btn-primary" id="search"><span class="glyphicon glyphicon-search"></span></button>
</div>
</div>
<table id="tb_list" class="table table-striped table-hover table-bordered table-condensed">
<tr>
<td>序号</td>
<td>订单编号</td>
<td>总金额</td>
<td>订单状态</td>
<td>订单时间</td>
<td>用户姓名</td>
<td>操作</td>
</tr>
<c:forEach items="${orderList}" var="order" varStatus="i">
<tr>
<td>${i.count}</td>
<td>${order.id}</td>
<td>${order.money}</td>
<td>
<c:if test="${order.status eq 1}">
未支付
</c:if>
<c:if test="${order.status eq 2}">
已支付,待发货
</c:if>
<c:if test="${order.status eq 3}">
已发货,待收货
</c:if>
<c:if test="${order.status eq 4}">
订单完成
</c:if>
</td>
<td>${order.time}</td>
<td>${order.username}</td>
<td>
<c:if test="${order.status eq 2}">
<button type="button" class="btn btn-danger btn-sm" onclick="sendOrder('${order.id}')">发货</button>
</c:if>
</td>
</tr>
</c:forEach>
</table>
</div>
</div>
</div>
</div>
</body>
</html>

76
web/admin/showGoods.jsp Normal file
View File

@@ -0,0 +1,76 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css" />
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script src="../js/DatePicker.js"></script>
<title>商品列表</title>
</head>
<body>
<div class="row" style="width:98%;margin-left: 1%;">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
会员列表
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>商品名称</span>
<input type="text" name="name" class="form-control">
</div>
</div>
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>上架时间</span>
<input type="text" readonly="readonly" name="pubdate" class="form-control" onclick="setday(this)">
</div>
</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
<button type="button" class="btn btn-primary" id="search"><span class="glyphicon glyphicon-search"></span></button>
</div>
</div>
<div style="height: 400px;overflow: scroll;">
<table id="tb_list" class="table table-striped table-hover table-bordered">
<tr>
<td>序号</td><td>商品名称</td><td>价格</td><td>上架时间</td><td>类型</td><td>操作</td>
</tr>
<c:forEach items="${goodsList}" var="goods" varStatus="i">
<tr>
<td>${i.count}</td>
<td>${goods.name}</td>
<td>${goods.price}</td>
<td>${goods.pubdate}</td>
<td>${goods.typeName}</td>
<td>删除 &nbsp;修改 &nbsp;
<a tabindex="0" id="example${goods.id}" class="btn btn-primary btn-xs"
role="button" data-toggle="popover"
data-trigger="focus"
data-placement="left"
data-content="${goods.intro}">描述</a>
<script type="text/javascript">
$(function(){
$("#example${goods.id}").popover();
})
</script>
</td>
</tr>
</c:forEach>
</table>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,66 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../css/bootstrap.min.css" />
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<title>商品分类</title>
</head>
<body>
<div class="row" style="width:98%;margin-left: 1%;">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
商品类型
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>商品等级</span>
<input type="text" name="username" class="form-control">
</div>
</div>
<div class="col-xs-5 col-sm-5 col-md-5 col-lg-5">
<div class="form-group form-inline">
<span>商品名称</span>
<input type="text" name="pubdate" class="form-control">
</div>
</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
<button type="button" class="btn btn-primary" id="search"><span class="glyphicon glyphicon-search"></span></button>
</div>
</div>
<div style="height: 400px;overflow: scroll;">
<table id="tb_list" class="table table-striped table-hover table-bordered">
<tr>
<td>序号</td><td>类型</td><td>等级</td><td>所属类型</td><td>操作</td>
</tr>
<c:forEach items="${goodsTypeList}" var="gtype" varStatus="i">
<tr>
<td>${i.count}</td>
<td>${gtype.name}</td>
<td>${gtype.level}</td>
<td>${gtype.parentName}</td>
<td>
<button>修改</button>&nbsp;&nbsp;
<button>删除</button>
</td>
</tr>
</c:forEach>
</table>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

147
web/admin/userList.jsp Normal file
View File

@@ -0,0 +1,147 @@
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>小米网后台主页-会员信息页面</title>
<link href="../css/bootstrap.min.css" rel="stylesheet">
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
loadUser();
})
//连接servlet 获取 数据
function loadUser(){
$.ajax({
url:"${pageContext.request.contextPath}/getUserList",
method:"get",
success:function(data){
showMsg(data);
},
error:function(XMLHttpRequest,textStatus,errorThrown){
alert("失败"+XMLHttpRequest.status+":"+textStatus+":"+errorThrown);
}
});
}
//显示用户信息
function showMsg(data){
var list = JSON.parse(data);
$("#tb_list").html("<tr class='tr_head'><td>编号</td><td>邮箱</td><td>姓名</td><td>性别</td><td>类别</td><td>操作</td></tr>");
var i = 1;
for(var u in list){
//声明 tr td 对象
var tr = $("<tr></tr>");
var td1 = $("<td>"+(i++)+"</td>");
var td2 = $("<td>"+list[u].email+"</td>");
var td3 = $("<td>"+list[u].username+"</td>");
var td4 = $("<td>"+list[u].gender+"</td>");
var td5 = $("<td>"+(list[u].role==0?"管理员":"会员")+"</td>");
var td6 = $("<td><a href='javascript:delUser("+list[u].id+")' class='btn btn-primary btn-xs'>删除</a></td>");
//将td 添加到tr中
tr.append(td1);
tr.append(td2);
tr.append(td3);
tr.append(td4);
tr.append(td5);
tr.append(td6);
$("#tb_list").append(tr);
}
}
//删除用户
function delUser(id){
if(confirm("确认要删除吗?")){
$.ajax({
url:"${pageContext.request.contextPath}/deleteUser?id="+id,
method:"get",
success:function(data){
loadUser();
},
error:function(XMLHttpRequest,textStatus,errorThrown){
alert("失败"+XMLHttpRequest.status+":"+textStatus+":"+errorThrown);
}
})
}
}
//条件查询
$(function(){
//给查询按钮 添加 点击事件
$("#search").click(function(){
var username = $("input[name='username']").val();
var genders = $("input[name='gender']");
var gender = "";
for(var i=0;i<genders.length;i++){
if(genders[i].checked){
gender += genders[i].value;
}
}
//使用ajax 进行异步交互
$.ajax({
url:"${pageContext.request.contextPath}/searchUser?username="+username+"&gender="+gender,
method:"post",
success:function(data){
if(data==0){
alert("未找到指定内容");
$("input[name='username']").val("");
$("input[name='gender']").removeAttr("checked");
}else{
showMsg(data);
}
},
error:function(XMLHttpRequest,textStatus,errorThrown){
alert("失败"+XMLHttpRequest.status+":"+textStatus+":"+errorThrown);
}
})
})
})
</script>
</head>
<body>
<div class="row" style="width: 100%;">
<div class="col-md-12">
<div class="panel panel-default">
<div class="panel-heading">会员列表</div>
<div class="panel-body">
<!-- 条件查询 -->
<div class="row">
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6">
<div class="form-group form-inline">
<span>用户姓名</span>
<input type="text" name="username" class="form-control">
</div>
</div>
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
<div class="form-group form-inline">
<span>性别</span>
&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" name="gender" value="男"> 男&nbsp;&nbsp;&nbsp;&nbsp;
</label>
<label class="radio-inline">
<input type="radio"name="gender" value="女"> 女
</label>
</div>
</div>
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
<button type="button" class="btn btn-primary" id="search"><span class="glyphicon glyphicon-search"></span></button>
</div>
</div>
<!-- 列表显示 -->
<table id="tb_list" class="table table-striped table-hover table-bordered">
</table>
</div>
</div>
</div>
</div>
</body>
</html>

124
web/cart.jsp Normal file
View File

@@ -0,0 +1,124 @@
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>购物车</title>
<link href="css/bootstrap.min.css" rel="stylesheet">
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
function sub(cid,cnum,price){
if (cnum == 1){
if (confirm("当前购物车只有一条商品,是否要移除!"))
{
location.href = "cart?method=delete&cid="+cid;
}
}else{
cnum--;
location.href = "cart?method=update&cid="+cid+"&cnum="+cnum+"&price="+price;
}
}
function add(cid,cnum,price){
cnum++;
location.href = "cart?method=update&cid="+cid+"&cnum="+cnum+"&price="+price;
}
function delCart(cid){
if (confirm("是否要删除购物车数据!")){
location.href = "cart?method=delete&cid="+cid;
}
}
function clearCart(uid){
if (confirm("是否要清空购物车!"))
{
location.href = "cart?method=clear&uid="+uid;
}
}
</script>
</head>
<body style="background-color:#f5f5f5">
<%@ include file="header.jsp"%>
<div class="container" style="background-color: white;">
<div class="row" style="margin-left: 40px">
<h3>我的购物车<small>温馨提示:产品是否购买成功,以最终下单为准哦,请尽快结算</small></h3>
</div>
<div class="row" style="margin-top: 40px;">
<c:if test="${empty list}">
<h3>购物车空空如也!快去购物车吧!</h3>
</c:if>
<c:if test="${!empty list}">
<div class="col-md-10 col-md-offset-1">
<table class="table table-bordered table-striped table-hover">
<tr>
<th>序号</th>
<th>商品名称</th>
<th>价格</th>
<th>数量</th>
<th>小计</th>
<th>操作</th>
</tr>
<c:set value="0" var="sum"></c:set>
<c:forEach items="${list}" var="c" varStatus="i">
<tr>
<th>${i.count}</th>
<th>${c.product.pname}</th>
<th>${c.product.pprice}</th>
<th width="100px">
<div class="input-group">
<span class="input-group-btn">
<button class="btn btn-default" type="button" onclick="sub(${c.cid},${c.cnum},${c.product.pprice})">-</button>
</span>
<input type="text" class="form-control" id="num_count${i.count}" value="${c.cnum}" readonly="readonly" style="width:40px">
<span class="input-group-btn">
<button class="btn btn-default" type="button" onclick="add(${c.cid},${c.cnum},${c.product.pprice})">+</button>
</span>
</div>
</th>
<th>¥&nbsp;${c.ccount }</th>
<th>
<button type="button" class="btn btn-default" onclick="delCart(${c.cid})">删除</button>
</th>
</tr>
<c:set var="sum" value="${sum+c.ccount}"></c:set>
</c:forEach>
</table>
</div>
</c:if>
</div>
<hr>
<div class="row">
<div class="pull-right" style="margin-right: 40px;">
<div>
<a id="removeAllProduct" href="javascript:clearCart(0)" onclick="clearCart(${loginUser.uid})" class="btn btn-default btn-lg">清空购物车</a>
&nbsp;&nbsp;
<a href="${pageContext.request.contextPath}/order?method=preView&uid=${loginUser.uid}" class="btn btn-danger btn-lg">添加收货地址</a>
</div>
<br><br>
<div style="margin-bottom: 20px;">
商品金额总计:<span id="total" class="text-danger"><b>¥&nbsp;&nbsp;${sum}</b></span>
</div>
</div>
</div>
</div>
<!-- 底部 -->
<%@ include file="footer.jsp"%>
</body>
</html>

33
web/cartSuccess.jsp Normal file
View File

@@ -0,0 +1,33 @@
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="css/bootstrap.min.css" />
<title>购物车</title>
</head>
<body>
<%@ include file="header.jsp" %>
<div class="container">
<hr>
<div class="row" style="width: 30%;margin: 0 auto;padding-top: 20px">
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">购物车提示</h3>
</div>
<div class="panel-body">
<h3 class="text-default"><span class="glyphicon glyphicon-ok-sign"></span>&nbsp;&nbsp;&nbsp;&nbsp;添加购物车成功!!</h3>
<hr>
<a href="${pageContext.request.contextPath}/cart?method=show&uid=${loginUser.uid}" class="btn btn-primary">查看购物车</a>&nbsp;&nbsp;&nbsp;&nbsp;
<a href="#" class="btn btn-default">继续购物</a>
</div>
</div>
</div>
</div>
<%@ include file="footer.jsp" %>
</body>
</html>

45
web/confirm.jsp Normal file
View File

@@ -0,0 +1,45 @@
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>在线支付 连接易付宝</title>
</head>
<body>
<%@ include file="header.jsp" %>
<div class="panel panel-default" style="margin: 0 auto;width: 95%;">
<div class="panel-heading">
<h3 class="panel-title"><span class="glyphicon glyphicon-yen"></span>&nbsp;&nbsp;在线支付
<span class="pull-right"><a href="${pageContext.request.contextPath }/getOrderList">返回订单列表</a></span>
</h3>
</div>
<div class="panel-body">
<form action="https://www.yeepay.com/app-merchant-proxy/node" method="post">
<h3>订单号:${p2_Order}</h3>
<p class="text-danger"><font size="20px"><strong>付款金额 ${p3_Amt}</strong></font></p>
<hr>
<input type="hidden" name="pd_FrpId" value="${pd_FrpId }" />
<input type="hidden" name="p0_Cmd" value="${p0_Cmd }" />
<input type="hidden" name="p1_MerId" value="${p1_MerId }" />
<input type="hidden" name="p2_Order" value="${p2_Order }" />
<input type="hidden" name="p3_Amt" value="${p3_Amt }" />
<input type="hidden" name="p4_Cur" value="${p4_Cur }" />
<input type="hidden" name="p5_Pid" value="${p5_Pid }" />
<input type="hidden" name="p6_Pcat" value="${p6_Pcat }" />
<input type="hidden" name="p7_Pdesc" value="${p7_Pdesc }" />
<input type="hidden" name="p8_Url" value="${p8_Url }" />
<input type="hidden" name="p9_SAF" value="${p9_SAF }" />
<input type="hidden" name="pa_MP" value="${pa_MP }" />
<input type="hidden" name="pr_NeedResponse" value="${pr_NeedResponse }" />
<input type="hidden" name="hmac" value="${hmac }" />
<input type="submit" value="确认支付" class="btn btn-warning btn-lg"/>
</form>
</div>
</div>
<!-- 底部 -->
<%@ include file="footer.jsp"%>
</body>
</html>

587
web/css/bootstrap-theme.css vendored Normal file
View File

@@ -0,0 +1,587 @@
/*!
* Bootstrap v3.3.7 (http://getbootstrap.com)
* Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
}
.btn-default:active,
.btn-primary:active,
.btn-success:active,
.btn-info:active,
.btn-warning:active,
.btn-danger:active,
.btn-default.active,
.btn-primary.active,
.btn-success.active,
.btn-info.active,
.btn-warning.active,
.btn-danger.active {
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn-default.disabled,
.btn-primary.disabled,
.btn-success.disabled,
.btn-info.disabled,
.btn-warning.disabled,
.btn-danger.disabled,
.btn-default[disabled],
.btn-primary[disabled],
.btn-success[disabled],
.btn-info[disabled],
.btn-warning[disabled],
.btn-danger[disabled],
fieldset[disabled] .btn-default,
fieldset[disabled] .btn-primary,
fieldset[disabled] .btn-success,
fieldset[disabled] .btn-info,
fieldset[disabled] .btn-warning,
fieldset[disabled] .btn-danger {
-webkit-box-shadow: none;
box-shadow: none;
}
.btn-default .badge,
.btn-primary .badge,
.btn-success .badge,
.btn-info .badge,
.btn-warning .badge,
.btn-danger .badge {
text-shadow: none;
}
.btn:active,
.btn.active {
background-image: none;
}
.btn-default {
text-shadow: 0 1px 0 #fff;
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #dbdbdb;
border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus {
background-color: #e0e0e0;
background-position: 0 -15px;
}
.btn-default:active,
.btn-default.active {
background-color: #e0e0e0;
border-color: #dbdbdb;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
background-color: #e0e0e0;
background-image: none;
}
.btn-primary {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88));
background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #245580;
}
.btn-primary:hover,
.btn-primary:focus {
background-color: #265a88;
background-position: 0 -15px;
}
.btn-primary:active,
.btn-primary.active {
background-color: #265a88;
border-color: #245580;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
background-color: #265a88;
background-image: none;
}
.btn-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #3e8f3e;
}
.btn-success:hover,
.btn-success:focus {
background-color: #419641;
background-position: 0 -15px;
}
.btn-success:active,
.btn-success.active {
background-color: #419641;
border-color: #3e8f3e;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
background-color: #419641;
background-image: none;
}
.btn-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #28a4c9;
}
.btn-info:hover,
.btn-info:focus {
background-color: #2aabd2;
background-position: 0 -15px;
}
.btn-info:active,
.btn-info.active {
background-color: #2aabd2;
border-color: #28a4c9;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
background-color: #2aabd2;
background-image: none;
}
.btn-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #e38d13;
}
.btn-warning:hover,
.btn-warning:focus {
background-color: #eb9316;
background-position: 0 -15px;
}
.btn-warning:active,
.btn-warning.active {
background-color: #eb9316;
border-color: #e38d13;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
background-color: #eb9316;
background-image: none;
}
.btn-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #b92c28;
}
.btn-danger:hover,
.btn-danger:focus {
background-color: #c12e2a;
background-position: 0 -15px;
}
.btn-danger:active,
.btn-danger.active {
background-color: #c12e2a;
border-color: #b92c28;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
background-color: #c12e2a;
background-image: none;
}
.thumbnail,
.img-thumbnail {
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
background-color: #e8e8e8;
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
background-color: #2e6da4;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
.navbar-default {
background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8));
background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2));
background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
background-repeat: repeat-x;
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
}
.navbar-brand,
.navbar-nav > li > a {
text-shadow: 0 1px 0 rgba(255, 255, 255, .25);
}
.navbar-inverse {
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-radius: 4px;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);
background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f));
background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
background-repeat: repeat-x;
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
}
.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-nav > li > a {
text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.navbar-static-top,
.navbar-fixed-top,
.navbar-fixed-bottom {
border-radius: 0;
}
@media (max-width: 767px) {
.navbar .navbar-nav .open .dropdown-menu > .active > a,
.navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #fff;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
}
.alert {
text-shadow: 0 1px 0 rgba(255, 255, 255, .2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
}
.alert-success {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
background-repeat: repeat-x;
border-color: #b2dba1;
}
.alert-info {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));
background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
background-repeat: repeat-x;
border-color: #9acfea;
}
.alert-warning {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
background-repeat: repeat-x;
border-color: #f5e79e;
}
.alert-danger {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
background-repeat: repeat-x;
border-color: #dca7a7;
}
.progress {
background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090));
background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-striped {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.list-group {
border-radius: 4px;
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
text-shadow: 0 -1px 0 #286090;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a));
background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);
background-repeat: repeat-x;
border-color: #2b669a;
}
.list-group-item.active .badge,
.list-group-item.active:hover .badge,
.list-group-item.active:focus .badge {
text-shadow: none;
}
.panel {
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}
.panel-default > .panel-heading {
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x;
}
.panel-primary > .panel-heading {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
.panel-success > .panel-heading {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
background-repeat: repeat-x;
}
.panel-info > .panel-heading {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
background-repeat: repeat-x;
}
.panel-warning > .panel-heading {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
background-repeat: repeat-x;
}
.panel-danger > .panel-heading {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
background-repeat: repeat-x;
}
.well {
background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x;
border-color: #dcdcdc;
-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
}
/*# sourceMappingURL=bootstrap-theme.css.map */

File diff suppressed because one or more lines are too long

6
web/css/bootstrap-theme.min.css vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

6757
web/css/bootstrap.css vendored Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

6
web/css/bootstrap.min.css vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

75
web/css/login.css Normal file
View File

@@ -0,0 +1,75 @@
/*閺嶅嘲绱¢崚婵嗩潗閸栵拷*/
*{margin:0;padding: 0;}
a{text-decoration: none;color: #000;}
img {border: 0; vertical-align:middle;}
ul li{list-style: none;}
body,h1,h2,h3,h4,h5,h6{font: 12px <EFBFBD>,Times New Roman;}
body{background: rgb(20,33,42) }
/*妫板嫬鐣炬稊澶嬬壉瀵拷*/
.w{width: 1000px;margin: 0 auto;}
.fl{float: left;}
.fr{float: right;}
.clear{clear:both;}
.center{margin:0 auto;}
.border{border:1px solid red;}
table{width: 360px;height: 240px;border:none;margin: 0 auto;}
tr,th,td{height: 20px;}
th{width: 60px;}
input:focus{border: 2px solid orange;}
/*閻€劍鍩涢惂璇茬秿*/
.top{width: 100%;height: 100px;background: #fff;}
.top .logo{width: 1130px;height: 100px;}
.form{width: 1130px;height:588px;background: url('../image/login_bg.jpg')no-repeat center center; }
.login{width: 400px;height: 470px;/*border:1px solid #ff6700;*/margin:30px auto;background: #444;color:#fff;margin-right: 0px;border-radius: 4px;}
.login .login_center{width: 360px;margin: 10px auto;}
.login .login_top{margin: 10px 0;}
.login .login_top .left{height: 40px;line-height: 40px;font-weight: bold;font-size: 20px;}
.login .login_top .right{height: 40px;line-height: 40px;font-size: 13px;}
.login .login_top .right a{color:red;font-weight: bold;}
.login .login_top .right a:hover{color:orange;}
.xian{height: 2px;background: #ff6700;margin:8px 0;}
.login_main{padding:20px 0;}
.login_main .username{font:16px Times New Roman;height: 40px;line-height: 40px;margin:15px 0;}
.login_main .username .shurukuang{width: 150px;height: 30px;border:1px solid #ccc;padding:5px 10px; }
.login_main .username .yanzhengma{width: 45px;height: 30px;border:1px solid #ccc;padding:5px 10px; }
.login_main .username .shurukuang:focus{border: 1px solid blue;background: #F0FFFF;}
.login_main .username .yanzhengma:focus{border: 1px solid blue;background: #F0FFFF;}
.login_main .username .right{margin-left: 20px;}
/*鐠佸墽鐤嗛幐澶愭尦閺嶅嘲绱<E598B2>*/
.login .login_center .login_submit{margin: 15px auto;}
.login .login_center .submit{border:none;width: 240px;height: 45px;margin-left:55px;background: #ff6700;color: #fff; font-size: 20px;font-weight: bold;letter-spacing: 2px;cursor:pointer;border-radius: 4px;}
.login .login_center .submit:hover{border:1px solid #fff;}
/*閻€劍鍩涘▔銊ュ斀*/
.regist{width: 1000px;height: 550px;margin:20px auto;background:#fff;color:#000;border-radius: 6px;}
.regist_center{width: 870px;margin: 10px auto;}
.regist .regist_top{margin: 20px 0;}
.regist .regist_top .left{height: 40px;line-height: 40px;font-weight: bold;font-size: 20px; margin-top: 20px;}
.regist .regist_top .right{height: 40px;line-height: 40px;font-size: 13px;margin-top: 20px;}
.regist .regist_top .right a{color:#ff6700;font-weight: bold;}
.regist .regist_top .right a:hover{color:orange;}
.xian{height: 2px;background: #ff6700;margin: 8px auto;}
.regist_main{padding:10px 0;padding-left:45px;}
.regist_main .username{font:16px Times New Roman;height: 40px;line-height: 40px;margin:20px 0;}
.regist_main .username .shurukuang{width: 220px;height: 30px;border:1px solid #ccc;padding:5px 10px; }
.regist_main .username .yanzhengma{width: 100px;height: 30px;border:1px solid #ccc;padding:5px 10px; }
.regist_main .username .shurukuang:focus{border: 1px solid blue;background: #F0FFFF;}
.regist_main .username .yanzhengma:focus{border: 1px solid blue;background: #F0FFFF;}
.regist_main .username .right{margin-left: 20px;}
.regist_main .username span{display:inline-block;margin-left:20px;font-size: 12px;color: #ccc;font-weight: bold;}
.regist_main .username span:hover{color: #ff6700;}
.regist .regist_center .regist_submit{margin: 20px auto;}
.regist .regist_center .submit{border:none;width: 440px;height: 45px;margin-left:45px;background: #ff6700;color: #fff; font-size: 22px;font-weight: bold;letter-spacing: 8px;cursor:pointer;}
.regist .regist_center .submit:hover{border:1px solid #ccc;}
footer{width: 100%;height: 80px;background:#fff;padding: 30px 0;}
footer .copyright{height: 30px;line-height: 30px;font-size: 13px;word-spacing: 15px;text-align: center;}
footer .copyright:first-of-type{margin-top: 10px;}

117
web/css/login2.css Normal file
View File

@@ -0,0 +1,117 @@
@charset "utf-8";
/* CSS Document */
body{ margin:0; padding:0}
a{ text-decoration:none; outline:none}
#top{
height:40px;
background-color:#333333;
}
#topdiv{ width:1230px; margin:0 auto;}
#a_top{
color:#b0b0b0b0;
line-height:40px;
font-size:12px;
float:left
}
span li{ list-style:none; float:left; line-height:40px; color:#b0b0b0b0; font-size:12px; margin:0px 5px;}
#shorpcar{
font-size:14px;
height:40px;
width:120px;
float:right;
line-height:40px;
background-color:#F00;
color:#FFF;
margin-left:30px;
text-align:center
}
#shorpcar:hover{ background:#666666}
#a_top:hover{ color:#FFF}
#second{
height:100px;
width:1230px;
margin:0 auto;
}
#seimg{ float:left;}
#seimg:nth-child(1){ margin-top:23px;}
#second img:nth-child(2){ margin-top:17px;}
#product{ float:left; margin:0;}
p a{
line-height:100px;
font-size:18px;
color:#000;
font-family:"微软雅黑";
float:left;
margin-left:15px;
font-size:18px
}
p a:hover{ color:#F00}
input{
height:52px;
margin:24px 0px;
float:right;
}
input:nth-chlid(1){ width:254px}
input:nth-chlid(1){ width:50px; float:right}
#txt{
width:252px;
height:52px;
float:right;
border:#cccccc 1px solid;
color:#757575;
line-height:52px;
margin-top:24px;
position:relative;
}
#txt:hover{ border:#ff6700 1px solid; z-index:9}
#thred{ width:1230px; height:460px; margin:0 auto;}
#forth{ width:1230px; height:170px; margin:0 auto; padding-top:17px}
#forth span{ width:234px; height:170px; float:left;}
#a_left{ margin-left:16px}
#forth a{ float:left; opacity:0.7}
#forth a:hover{ opacity:1}
#fifth{ width:1230px; margin:0 auto; height:80px;}
#fif_text{ font-family:"黑体"; font-size:24px; height:30px; line-height:80px; float:left; margin-bottom:0px;}
#fif_a{ float:right; width:400px; height:80px; position:relative; left:270px;}
#fif_a li{ line-height:80px}
#m6{ float:left; line-height:80px; color:#000}
#m6:hover{ color:#ff6700}
#sixth{ width:1230px; height:341px; margin:0 auto; text-align:center}
#sixth span{ width:220px; height:301px; background-color:#fafafa; float:left; margin-left:30px;}
#siximg{ opacity:0.7}
#siximg:hover{ opacity:1}
#na{ font-size:18px; color:#000; font-family:"宋体"; margin-top:20px}
#chip{ font-size:12px; color:#b0b0b0}
#pri{ color:#ff6709}
#seventh{ height:130px; background-color:#fafafa; margin-top:20px; padding-top:45px; text-align:center}
#sevep{ line-height:20px; font-size:10px;}
#liebiaobox{border:#FFF 1px solid; padding-top:40px}
#liebiaobox:hover{ border:#F00 1px solid}
#body_big_a{ float:left; width:280px; height:60px; border:#bbbbbb 1px solid; text-align:center;}
#body_big_a:hover{ color:#ff6700; border:#ff6700 1px solid;}
#body_big_btn{ width:200px; height:50px; background:#ff6700; border:#ff6700 2px solid; float:left; margin-top:10px; text-align:center; color:#FFF; font-weight:bold}
#body_big_btn:hover{ border:#f8f8f8 2px solid;}
#body_big_pric{ font-size:14px}
#dingdanxiangqing_body{ width:100%; height:520px; background:#f5f5f5; padding-top:20px}
#dingdanxiangqing_body_big{ width:1230px; height:500px; margin:0px auto;}
#big_left{ height:500px; width:195px; background:#FFF; float:left; padding-left:40px}
#big_left_a{ line-height:45px; font-size:16px}
#big_right{ width:1000px; height:500px; background:#FFF; float:left;margin-left: 10px}
#big_right_p{ float:right; width:132px; height:61px; border-left:#aaaaaa 1px solid; line-height:61px; text-align:center; font-size:12px; margin-top:21px}
#big_right_txt{ width:902px; height:47px; margin-top:12px; border:#aaaaaa 1px solid; border-radius:5px; background-color:#fdfdfd;}
#big_right_txt_box{ float:left; height:47px; margin-left:20px; width:65px}
#big_right_txt_p{ line-height:15px; color:#757575}
#gouwuche_top{ height:101px; border-bottom:#ff6700 2px solid; background-color:#FFF}
#gouwuche_body{ width:1230px; height:102px; margin:0 auto; border-bottom:#cccccc 1px solid; background-color:#FFF}
#phone_sum{height:40px; width:40px; line-height:40px; text-align:center; background-color:#FFF}
#phone_sum:hover{ background-color:#e0e0e0;}

242
web/css/style.css Normal file
View File

@@ -0,0 +1,242 @@
*{margin: 0;padding: 0;text-decoration: none;list-style-type: none;font-family: Times New Roman;}
img{border:none;}
a{border:none;text-decoration: none;color:#000;}
.border{border:1px solid red;}
.center{margin: 0 auto;}
.w{width: 1226px;margin: 0 auto;}
.fl{float: left;}
.fr{float: right;}
.clear{clear:both;}
.mt20{margin-top: 20px;}
.mt10{margin-top: 10px;}
.ml20{margin-left: 20px;}
.ml40{margin-left: 40px;}
.mr40{margin-right: 40px;}
.mb20{margin-bottom: 20px;}
.border2{border:2px solid #ff6700;}
.ft20{font-size: 20px;}
.ftbc{color: #ff6700;font-weight: bold;}
.pr{padding-right: 40px;}
.h3{font-size: 22px;font-weight: bold;}
/*header*/
header{width: 100%;height: 40px;background: #333}
header .top{width: 1226px;height: 40px;line-height: 40px;}
header .top .left ul li{float: left;font-size: 12px;color: #ccc;}
header .top .left ul li a{display:block;padding:0 8px;font-size: 12px;font-family: Times New Roman;color: #b0b0b0;}
header .top .left ul li a:hover{color:#fff;}
header .top .right ul li{float: left;font-size: 12px;color: #ccc;}
header .top .right ul li a{display:block;padding:0 8px;font-size: 12px;font-family: Times New Roman;color: #b0b0b0;}
header .top .right ul li a:hover{color:#fff;}
header .top .right .gouwuche a{color:#fff;}
header .top .right .gouwuche{margin:0 20px;background: #424242;width: 120px;text-align: center;font-size: 12px;cursor:pointer;background: #ff6700;color: #fff;}
header .top .right .gouwuche:hover{color:#000;background: #666;}
/*banner_x*/
.banner_x {width: 1226px;height: 100px;}
.banner_x .logo{background: url('../image/logo_top.png') no-repeat center center;width: 50px;height: 100px;}
.banner_x .ad_top{width: 180px;height: 100px;background: url('../image/yyymix.gif') no-repeat center center;}
.banner_x .nav ul li{float: left;height: 100px;line-height: 100px;}
.banner_x .nav ul li a{display:inline-block;color: #000;font-size: 16px;padding: 0 10px;}
.banner_x .nav ul li a:hover{color: rgb(255,103,0); }
.banner_x .search{width: 308px;height: 100px;line-height: 100px;}
.banner_x .search .text{width: 250px;height:50px;line-height: 50px;font-size: 12px;margin-top: 25px;border:1px solid #ccc;}
.banner_x .search .text:hover{border-color: #ff6700;}
.banner_x .search .text .shuru{border: none;width: 250px;height: 50px;}
.banner_x .search .submit{width: 50px;height:50px;line-height: 50px;text-align:center;font-size: 12px;margin-top: 25px;border:1px solid #ccc;}
.banner_x .search .submit .sousuo{letter-spacing:3px;text-align:center;width: 50px;height:50px;border: none;background: none;cursor:pointer;}
.banner_x .search .submit:hover{border-color: #ff6700;color:#ff6700;}
/*banner_y*/
.banner_y{width:1226px;height:460px;background: url('../image/banner2.jpg') no-repeat;}
.banner_y .nav{width: 234px;height: 460px;background: rgb(12,12,19);}
.banner_y .nav ul{padding: 20px 0;position:relative;}
.banner_y .nav ul li{display: block;width: 174px;height: 40px;line-height:40px;font-size: 14px;padding: 0 30px;}
.banner_y .nav ul li .pop{width: 800px;height: 460px;background: #fff;position:absolute;left:234px;top:0px;display: none;}
.banner_y .nav ul li:hover .pop{display: block;box-shadow: 2px 3px 5px #ccc; border-top: 1px solid #ccc;}
.banner_y .nav ul li .pop .left{width: 265px;height: 460px;background: #fff;}
.banner_y .nav ul li .pop .left div{margin-bottom: 3px;}
.banner_y .nav ul li .pop .left .xuangou_left{height: 40px;line-height:40px; font-size: 14px;margin-left: 10px;margin-top: 20px;}
.banner_y .nav ul li .pop .left .xuangou_left a{color: #000;}
.banner_y .nav ul li .pop .left .xuangou_left a img{valign:middle;}
.banner_y .nav ul li .pop .left .xuangou_left a span{display: inline-block;margin-left: 10px;font-size: 14px;}
.banner_y .nav ul li .pop .left .xuangou_left a span:hover{color:#ff6700;}
.banner_y .nav ul li .pop .left .xuangou_right{margin-top: 25px;height: 40px;line-height: 40px;}
.banner_y .nav ul li .pop .left .xuangou_right a{display: block;width: 60px;line-height:24px;height: 24px;text-align: center;font-size: 12px;color:#ff6700;border:1px solid #ff6700;}
.banner_y .nav ul li .pop .left .xuangou_right a:hover{display: block;background:#ff6700;color:#fff; }
.banner_y .nav ul li .pop .ctn{width: 265px;height: 460px;}
.banner_y .nav ul li .pop .ctn div{margin-bottom: 3px;}
.banner_y .nav ul li .pop .ctn .xuangou_left{height: 40px;line-height:40px; font-size: 14px;margin-left: 10px;margin-top: 20px;}
.banner_y .nav ul li .pop .ctn .xuangou_left a{color: #000;}
.banner_y .nav ul li .pop .ctn .xuangou_left a img{valign:middle;}
.banner_y .nav ul li .pop .ctn .xuangou_left a span{display: inline-block;margin-left: 10px;font-size: 14px;}
.banner_y .nav ul li .pop .ctn .xuangou_left a span:hover{color:#ff6700;}
.banner_y .nav ul li .pop .ctn .xuangou_right{margin-top: 25px;height: 40px;line-height: 40px;}
.banner_y .nav ul li .pop .ctn .xuangou_right a{display: block;width: 60px;line-height:24px;height: 24px;text-align: center;font-size: 12px;color:#ff6700;border:1px solid #ff6700;}
.banner_y .nav ul li .pop .ctn .xuangou_right a:hover{display: block;background:#ff6700;color:#fff; }
.banner_y .nav ul li .pop .right{width: 265px;height: 460px;margin-right: 5px;}
.banner_y .nav ul li .pop .right div{margin-bottom: 3px;}
.banner_y .nav ul li .pop .right .xuangou_left{height: 40px;line-height:40px; font-size: 14px;margin-left: 10px;margin-top: 20px;}
.banner_y .nav ul li .pop .right .xuangou_left a{color: #000;}
.banner_y .nav ul li .pop .right .xuangou_left a img{valign:middle;}
.banner_y .nav ul li .pop .right .xuangou_left a span{display: inline-block;margin-left: 10px;font-size: 14px;}
.banner_y .nav ul li .pop .right .xuangou_left a span:hover{color:#ff6700;}
.banner_y .nav ul li .pop .right .xuangou_right{margin-top: 25px;height: 40px;line-height: 40px;}
.banner_y .nav ul li .pop .right .xuangou_right a{display: block;width: 60px;line-height:24px;height: 24px;text-align: center;font-size: 12px;color:#ff6700;border:1px solid #ff6700;}
.banner_y .nav ul li .pop .right .xuangou_right a:hover{display: block;background:#ff6700;color:#fff; }
.banner_y .nav ul li:hover{background: #ff6700; }
.banner_y .nav ul li a{display:inline-block;margin-left:10px;color: #fff;}
/*sub_banner*/
.sub_banner{width: 1226px;height: 170px;margin-top: 15px;}
.sub_banner .sidebar{width: 234px;height: 170px;}
.sub_banner .sidebar div{width: 78px;height: 85px;marign:0;padding: 0;}
.sub_banner .sidebar div a img{opacity:0.8;}
.sub_banner .sidebar div a img:hover{opacity:1;}
.sub_banner .datu{width: 316px;height: 170px;margin-left: 14px;}
.sub_banner .datu a img{width: 316px;height: 170px;opacity:0.8;}
.sub_banner .datu a img:hover{opacity:1;}
/*danpin*/
.biaoti{width: 1226px;height: 58px;line-height: 58px;font-size:
22px;font-weight: bold;margin-top: 20px;}
.danpin .main{width: 1226px;height: 340px;}
.danpin .main .mingxing{width: 234px;height: 339px;background: rgb(250,250,250);}
.danpin .main .mingxing:nth-of-type(1){border-top: 1px solid orange;margin-right:14px;}
.danpin .main .mingxing:nth-of-type(2){border-top: 1px solid green;margin-right:14px;}
.danpin .main .mingxing:nth-of-type(3){border-top: 1px solid blue;margin-right:14px;}
.danpin .main .mingxing:nth-of-type(4){border-top: 1px solid red;margin-right:14px;}
.danpin .main .mingxing:nth-of-type(5){border-top: 1px solid teal;}
.danpin .main .mingxing .sub_mingxing{padding: 37px;}
.danpin .main .mingxing .sub_mingxing a img{display:block;width: 160px;height: 160px;opacity: 0.85}
.danpin .main .mingxing .sub_mingxing a img:hover{width: 160px;height: 160px;opacity: 1;}
.danpin .main .mingxing .pinpai{width: 234px;height: 14px;line-height: 14px;text-align: center;margin-top: -10px;}
.danpin .main .mingxing .pinpai a{font-size: 14px;color:#333;}
.danpin .main .mingxing .youhui{width: 234px;height: 12px;line-height: 12px;margin:15px 0;font-size: 12px;color: rgb(176,176,176);text-align: center;}
.danpin .main .mingxing .jiage{font-size: 14px;text-align: center;color:#ff6709;}
/*peijian*/
.peijian{background: rgb(245,245,245);}
.peijian .main{height:614px;}
.peijian .main .content{width: 1226px;height: 300px;}
.peijian .main .content:nth-of-type(2){margin-top: 14px;}
.peijian .main .content .remen{width:234px;height: 300px;margin-right: 14px;position:relative;background: #fff;}
.peijian .main .content .remen:hover{margin-top: -2px;box-shadow: 0px 0px 30px #ccc;}
.peijian .main .content .remen:nth-of-type(5){margin:0;}
.peijian .main .content .remen .xinpin span{display: block;margin:0 auto;font-size: 10px;line-height:20px;height: 20px;color:#fff;width: 65px;background: #83c44e;text-align: center;}
.peijian .main .content .remen .tu a img{margin:10px 42px 20px 42px;}
.peijian .main .content .remen .miaoshu{width: 234px;height: 25px;line-height: 25px;text-align: center;overflow: hidden;}
.peijian .main .content .remen .miaoshu a{color:#000;font-size: 14px;}
.peijian .main .content .remen .jiage{color:#ff6700;font-size: 14px;text-align:center;width: 234px;height: 25px;line-height: 25px;}
.peijian .main .content .remen .pingjia{width:234px;height: 15px;line-height: 15px;font-size: 12px;color:#aaa;text-align: center;}
.peijian .main .content .remen .piao{width: 204px;height: 60px;font-size:12px;padding:10px 0px 0px 30px;background:#ff6700; position: absolute;display: none;}
.peijian .main .content .remen .piao a{color:#fff;}
.peijian .main .content .remen .piao span{display: block;margin-top:5px;}
.peijian .main .content .remen:hover .piao{display: block;margin-top: -40px;}
.peijian .main .content .remenlast{width:234px;height: 300px;}
.hongmi:hover{margin-top: -2px;box-shadow: 0px 0px 15px #ccc;}
.liulangengduo{margin-top: 12px;}
.liulangengduo:hover{margin-top: 10px;box-shadow: 0px 0px 30px #ccc;}
/*xiangqing*/
.xiangqing{width: 100%;height: 58px;background: rgb(240,240,240);}
.xiangqing .neirong{height: 58px;width: 1226px;}
.xiangqing .neirong .xiaomi6{width:300px;height: 58px;line-height: 58px;font-size:
22px;font-weight: bold;}
.xiangqing .neirong nav{display:inline-block;width: 410px;height: 58px;line-height: 58px;}
.xiangqing .neirong nav li{font-size:14px;float: left;display: block;margin:0px 5px;}
.xiangqing .neirong nav li a{color: #333;font-size: 14px;}
.xiangqing .neirong nav li a:hover{color:#ff6700;}
/*jieshao*/
.jieshao{height: 560px; }
.jieshao .left{width:560px;height:560px;border:1px solid #ccc;}
.jieshao .right{width:620px;background: rgb(248,248,248);height: 600px;}
.jieshao .right .jianjie{font-size: 14px;color: rgb(176,176,176);line-height: 20px;}
.jieshao .right .jiage{font-size: 18px;color:#ff6700;font-weight: bold;}
.jieshao .right .xzbb{height: 58px;line-height:58px;}
.jieshao .right .xzbb .banben{height: 58px;line-height: 58px;width: 278px;cursor:pointer;margin-right: 5px;border:1px solid #bbb;}
.jieshao .right .xzbb .banben a{display:block;font-size: 18px;color:#000;padding:0 10px;}
.jieshao .right .xzbb .banben a span{display: inline-block;margin-right: 10px;}
.jieshao .right .xzbb .banben a:hover{color:#ff6700;}
.jieshao .right .xzbb .banben:hover{border:1px solid #ff6700;}
.jieshao .right .xzbb .banben a .yuandian{display: inline-block;height: 15px;width: 15px;border-radius: 50%;background: #000;margin-left: 80px;}
/*选取详情*/
.xqxq{height: 80px;width: 555px;background: rgb(255,255,255);padding:20px;}
/*是否下单*/
.xiadan{height: 50px;line-height: 50px;}
.xiadan .jrgwc{height: 50px;width: 200px;border:none;background:#ff6700;color:#fff;font-size: 18px;font-weight: bold;cursor:pointer;margin-right: 50px;}
.xiadan .jrgwc:hover{border:1px solid #fff;}
/*我的购物车*/
.banner_x .wdgwc{height: 100px;line-height: 100px;font-weight:bold;font-size: 24px;}
.banner_x .wxts{height: 90px;line-height: 105px;font-size: 12px;color:#777;}
.banner_x .dlzc{height: 100px;line-height: 100px;}
.banner_x .dlzc ul li{float: left;font-size: 12px;}
.banner_x .dlzc ul li a{display:block;padding:0 8px;font-size: 12px;font-family: Times New Roman;color: #777;}
.banner_x .dlzc ul li a:hover{color:#ff6700; }
.xiantiao{width: 100%;height: 2px;background:#ff6700; }
/*购物车详单*/
.gwcxqbj{width: 100%;height:400px;background: rgb(245,245,245);padding-bottom: 20px;}
.gwcxqbj .gwcxd{background: #fff;width: 1226px;height: auto;padding-top: 30px;}
.gwcxqbj .gwcxd .top2{width:1226px;height: 70px;}
.gwcxqbj .gwcxd .top2 .sub_top{width: 100px;height: 70px;line-height:36px;margin-right: 0px;margin-top:0px;margin-left: 30px;}
.gwcxqbj .gwcxd .top2 .sub_top:nth-of-type(2){margin-left: 100px;}
.gwcxqbj .gwcxd .top2 .sub_top:nth-of-type(3){margin-left: 300px;}
.gwcxqbj .gwcxd .top2 .sub_top:nth-of-type(4){margin-left: 60px;}
.gwcxqbj .gwcxd .top2 .sub_top:nth-of-type(5){margin-left: 60px;}
.gwcxqbj .gwcxd .top2 .sub_top .quanxuan{width:18px;height:18px;border:1px solid #ccc;background: none;}
.gwcxqbj .gwcxd .content2{width:1226px;height: 120px;border-top: 1px solid #ccc;}
.gwcxqbj .gwcxd .content2 .sub_content{width:50px;height: 120px;line-height:120px;margin-right: 0px;}
.gwcxqbj .gwcxd .sub_content .quanxuan{width:18px;height:18px;border:1px solid #ccc;background: none;}
.gwcxqbj .gwcxd .content2 .sub_content img{vertical-align: middle;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(1){margin-left: 30px;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(2){margin-left: 35px;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(3){margin-left: 55px;width: 330px;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(4){margin-left: 55px;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(5){margin-left: 115px;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(6){margin-left: 115px;color:#ff6700;}
.gwcxqbj .gwcxd .content2 .sub_content:nth-of-type(7){margin-left: 145px;font-size: 25px;}
.gwcxqbj .gwcxd .content2 .sub_content .shuliang{width: 70px;height: 35px;border:2px solid #ccc;text-align: center;font-size:16px;color:#ff6700;}
.gwcxqbj .gwcxd .content2 .sub_content a{display: block;width: 20px;height: 20px;border-radius: 10px;color:#000;}
.gwcxqbj .gwcxd .content2 .sub_content a:hover{color:#ff6700;}
/*结算单*/
.jiesuandan{width:1226px;height: 50px;background: #fff;}
.jiesuandan .tishi{width: 400px;height: 50px;line-height: 50px;}
.jiesuandan .tishi ul li{float: left; font-size: 14px;display: inline-block;padding:0 10px;color:#666;}
.jiesuandan .tishi ul li a{color:#666;}
.jiesuandan .tishi ul li a:hover{color:#ff6700;}
.jiesuandan .tishi ul li span{display:inline-block;color:#ff6700;margin:0 4px;}
.jiesuandan .jiesuan{width: 500px;height: 50px;line-height: 50px;font-size: 14px;color:#ff6700;}
.jiesuandan .jiesuan .jiesuanjiage span{font-size: 24px;font-weight: bold;}
.jiesuandan .jiesuan .jsanniu .jsan{width: 200px;height: 50px;color:#fff;background:rgb(255,103,0); font-size: 20px;border:none;cursor:pointer;}
.jiesuandan .jiesuan .jsanniu .jsan:hover{background: rgb(242,88,7);}
/*个人中心*/
.grzxbj{width: 100%;height:auto;background: rgb(245,245,245);padding-bottom: 20px;padding-top: 20px;}
.grzxbj .selfinfo{width: 1226px;}
.grzxbj .selfinfo .lfnav{width: 234px;height: 500px;background: #fff;}
.grzxbj .selfinfo .lfnav .ddzx{width: 234px;height: 40px;line-height: 40px;font-size: 19px; margin:30px 20px 10px 40px;color:rgb(51,51,51);}
.grzxbj .selfinfo .lfnav .subddzx ul li{display: block;width: 194px;height: 40px;line-height: 40px;padding-left: 40px;}
.grzxbj .selfinfo .lfnav .subddzx ul li a{color:rgb(117,117,117);}
.grzxbj .selfinfo .lfnav .subddzx ul li a:hover{color:rgb(51,51,51);}
.grzxbj .selfinfo .rtcont{width: 978px;height: 500px;background: #fff;}
.grzxbj .selfinfo .rtcont .ddzxbt{width: 938px;height: 60px;line-height: 60px;font-size: 22px;font-weight:bold;color:rgb(117,117,117);padding-left: 40px;border-bottom: 1px solid #ccc;}
.grzxbj .selfinfo .rtcont .grzlbt{width:938px;height: 60px;line-height: 60px;font-size: 20px;color:rgb(117,117,117);}
.grzxbj .selfinfo .rtcont .subgrzl{height: 45px;line-height: 45px;width: 900px;background: rgb(253,253,253);border:1px solid #aaa;margin-top: 10px;margin-bottom: 10px;border-radius: 3px;}
.grzxbj .selfinfo .rtcont .subgrzl span:nth-of-type(1){display: inline-block;font-size: 15px;font-weight: bold;color:rgb(117,117,117);width: 70px;height: 45px;line-height: 45px;padding-left: 20px;}
.grzxbj .selfinfo .rtcont .subgrzl span:nth-of-type(2){display: inline-block;font-size: 15px;color:rgb(117,117,117);width: 480px;height: 45px;line-height: 45px;padding-left: 120px;
}
.grzxbj .selfinfo .rtcont .subgrzl span:nth-of-type(3){display: inline-block;font-size: 15px;width: 160px;height: 45px;line-height: 45px;text-align: right;}
.grzxbj .selfinfo .rtcont .subgrzl span a{color:teal; }
.grzxbj .selfinfo .rtcont .subgrzl span a:hover{color:#ff6700; }
/*订单中心*/
.grzxbj .selfinfo .rtcont .ddxq{width: 938px;height: 120px;line-height: 120px;font-size: 17px;color:rgb(117,117,117);
border-bottom: 1px solid #ccc;padding-left: 40px;}
.grzxbj .selfinfo .rtcont .ddxq .ddspt{width: 80px;height: 80px;margin: 19px 25px 0 0;border:1px solid #aaa;}
.grzxbj .selfinfo .rtcont .ddxq .ztxx ul li{display: inline-block;width: 130px;height: 60px;line-height:60px;float: left;border-left:1px solid #aaa; margin-top: 30px;text-align: center;}
.grzxbj .selfinfo .rtcont .ddxq .ztxx ul li a{color:rgb(117,117,117);}
.grzxbj .selfinfo .rtcont .ddxq .ztxx ul li a:hover{color:#ff6700;}
/*footer*/
footer{width: 100%;height: 120px;line-height: 30px;text-align: center;font-size: 12px;background: rgb(250,250,250);padding:30px 0;}

10
web/error/404.html Normal file
View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>错误页面</title>
</head>
<body>
抱歉!你要的东西还没上车,稍等...
</body>
</html>

12
web/error/500.jsp Normal file
View File

@@ -0,0 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>错误页面</title>
</head>
<body>
抱歉!服务器正在努力加载...
</body>
</html>

12
web/error/error.jsp Normal file
View File

@@ -0,0 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>错误</title>
</head>
<body>
服务器正在忙!!!
</body>
</html>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

8
web/footer.jsp Normal file
View File

@@ -0,0 +1,8 @@
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!--网站版权部分开始-->
<div id="seventh">
<p id="sevep">小米商城|MIUI|米聊|多看书城|小米路由器|视频电话|小米天猫店|小米淘宝直营店|小米网盟|小米移动|隐私政策|Select Region</p>
<p id="sevep">©mi.com 京ICP证110507号 京ICP备10046444号 京公网安备11010802020134号 京网文[2014]0059-0009号</p>
<p id="sevep">违法和不良信息举报电话185-0130-1238本网站所列数据除特殊说明所有数据均出自我司实验室测试</p>
</div>

57
web/goodsDetail.jsp Normal file
View File

@@ -0,0 +1,57 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>商品详情页</title>
</head>
<body>
<%@ include file="header.jsp"%>
<div style="margin: 0 auto;width: 90%;">
<ol class="breadcrumb">
<li><a href="#">小米商城</a></li>
<li><a href="#">手机</a></li>
<li class="active"><a href="getGoodsListByTypeId?typeid=${product.tid}">手机</a></li>
</ol>
</div>
<div class="container">
<div class="row">
<div class="col-xs-6 col-md-6">
<a href="#" class="thumbnail">
<img src="${pageContext.request.contextPath}/${product.pimage}" width="560" height="560" alt="${product.pname}" />
</a>
</div>
<div class="col-xs-6 col-md-6">
<div class="panel panel-default" style="height: 560px">
<div class="panel-heading">商品详情</div>
<div class="panel-body">
<h3>产品名称:<small>${product.pname}</small></h3>
<div style="margin-left: 10px;">
<p>市场价格:&nbsp;&nbsp;&nbsp;<span class="text-danger" style="font-size: 15px;">${product.pprice}</span>&nbsp;&nbsp;&nbsp;<span class="glyphicon glyphicon-yen"></span></p>
<p>上市时间:&nbsp;&nbsp;&nbsp;${product.ptime}</p>
<p>热销指数:&nbsp;&nbsp;&nbsp;
<c:forEach begin="1" end="${product.pstate}">
<img src="image/star_red.gif" alt="star"/>
</c:forEach>
</p>
<p>详细介绍:</p>
<p>&nbsp;&nbsp;${product.pinfo }</p>
<a href="${pageContext.request.contextPath}/cart?method=create&pid=${product.pid}" class="btn btn-warning">加入购物车&nbsp;&nbsp;&nbsp;<span class="glyphicon glyphicon-shopping-cart"></span></a>&nbsp;&nbsp;&nbsp;
<button class="btn btn-danger">直接购买</button>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 底部 -->
<%@ include file="footer.jsp"%>
</body>
</html>

72
web/goodsList.jsp Normal file
View File

@@ -0,0 +1,72 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>商品列表页</title>
</head>
<body>
<%@ include file="header.jsp"%>
<div class="panel panel-default" style="margin: 0 auto;width: 95%;">
<div class="panel-heading">
<h3 class="panel-title"><span class="glyphicon glyphicon-th-list"></span>&nbsp;&nbsp;商品列表</h3>
</div>
<div class="panel-body">
<!--列表开始-->
<div class="row" style="margin: 0 auto;">
<c:forEach items="${pageBean.list}" var="g" varStatus="i">
<div class="col-sm-3">
<div class="thumbnail">
<img src="${pageContext.request.contextPath}/${g.pimage}" width="180" height="180" alt="小米6" />
<div class="caption">
<h4>商品名称<a href="${pageContext.request.contextPath}/product?method=detail&pid=${g.pid}">${g.pname}</a></h4>
<p>热销指数
<c:forEach begin="1" end="${g.pstate}">
<img src="image/star_red.gif" alt="star"/>
</c:forEach>
</p>
<p>上架日期:${g.ptime}</p>
<p style="color:orange">价格:${g.pprice}</p>
</div>
</div>
</div>
</c:forEach>
</div>
<center>
<nav aria-label="Page navigation">
<ul class="pagination">
<li class="${pageBean.currentPage==1?'disabled':''}">
<a href="product?method=show&tid=${param.tid}&currentPage=${pageBean.currentPage-1}" aria-label="Previous">
<span aria-hidden="true">&laquo;</span>
</a>
</li>
<c:forEach begin="1" end="${pageBean.totalPage}" step="1" var="index">
<c:if test="${pageBean.currentPage==index}">
<li class="active"><a href="product?method=show&tid=${param.tid}&currentPage=${index}">${index}</a></li>
</c:if>
<c:if test="${pageBean.currentPage!=index}">
<li ><a href="product?method=show&tid=${param.tid}&currentPage=${index}">${index}</a></li>
</c:if>
</c:forEach>
<li class="${pageBean.currentPage==pageBean.totalPage?'disabled':''}">
<a href="product?method=show&tid=${param.tid}&currentPage=${pageBean.currentPage+1}" aria-label="Next">
<span aria-hidden="true">&raquo;</span>
</a>
</li>
</ul>
</nav>
</center>
</div>
</div>
<!-- 底部 -->
<%@ include file="footer.jsp"%>
</body>
</html>

80
web/header.jsp Normal file
View File

@@ -0,0 +1,80 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="css/login2.css">
<link href="css/bootstrap.min.css" rel="stylesheet">
<script type="text/javascript" src="js/jquery.min.js"></script>
<title>头部</title>
<script type="text/javascript">
$(document).ready(function(){
$.ajax({
url:"${pageContext.request.contextPath}/type?method=findAll",
type:"GET",
dataType:"json",
success:function(data){
for(var i in data){
var a = $("<a href='${pageContext.request.contextPath}/product?method=show&tid="+data[i].tid+"'>"+data[i].tname+"</a>");
$("#goodsType").append(a);
}
},
error:function(){
alert("失败");
}
})
})
</script>
</head>
<body>
<div id="top">
<div id="topdiv">
<span>
<a href="index.jsp" id="a_top" target="_blank">小米商城</a>
<li>|</li>
<a href="" id="a_top">小米商城移动版</a>
<li>|</li>
<a href="" id="a_top">问题反馈</a>
</span>
<span style="float:right">
<c:if test="${empty loginUser}">
<a href="login.jsp" id="a_top">登录</a>
<li>|</li>
<a href="register.jsp" id="a_top">注册</a>
</c:if>
<c:if test="${not empty loginUser}">
<a href="address?method=show" id="a_top">${loginUser.username}</a>
<li>|</li>
<a href="user?method=logOut" id="a_top">注销</a>
<li>|</li>
<a href="order?method=show" id="a_top">我的订单</a>
<li>|</li>
<a href="userservlet?method=getAddress" id="a_top">地址管理</a>
</c:if>
<li>|</li>
<a href="" id="a_top">消息通知</a>
<a href="${pageContext.request.contextPath}/cart?method=show&uid=${loginUser.uid}" id="shorpcar">购物车</a>
</span>
</div>
</div>
<div id="second">
<a href="" id="seimg" style=" margin-top:23px;"><img id="logo" src="image/logo_top.png" width="55" height="54"/></a>
<a href="" id="seimg" style=" margin-top:17px;"><img id="gif" src="image/yyymix.gif" width="180" height="66" /></a>
<p id="goodsType">
<!-- 根据ajax 回调函数 填写数据 到此id中 -->
</p>
<form class="form-inline pull-right" style="margin-top: 40px;margin-right: 10px;">
<div class="form-group">
<input type="text" class="form-control" style="width: 400px" placeholder="搜索一下好东西...">
</div>
<button type="submit" class="btn btn-warning"><span class="glyphicon glyphicon-search"></span>&nbsp;&nbsp;搜索</button>
</form>
</div>
</body>
</html>

BIN
web/image/5c_80.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
web/image/MIX-80.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
web/image/banner.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

BIN
web/image/banner2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

BIN
web/image/compare.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
web/image/ghs.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
web/image/gwc_xiaomi6.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
web/image/hjh_01.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 B

BIN
web/image/hjh_02.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
web/image/hjh_03.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
web/image/hjh_04.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
web/image/hjh_05.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
web/image/hjh_06.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 B

BIN
web/image/hm4-80.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
web/image/hm4A-80.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
web/image/hm4x_80.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
web/image/hmn4x80.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
web/image/hmnote4-80.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
web/image/hongmi4x.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
web/image/hongmin4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 KiB

BIN
web/image/liulangengduo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
web/image/login_bg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

BIN
web/image/logo_foot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
web/image/logo_top.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 B

BIN
web/image/mimobile.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
web/image/mistore_logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

BIN
web/image/peijian1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
web/image/peijian10.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 827 B

BIN
web/image/peijian2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
web/image/peijian3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
web/image/peijian4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

BIN
web/image/peijian5.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

BIN
web/image/peijian6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
web/image/peijian7.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
web/image/peijian8.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

BIN
web/image/peijian9.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
web/image/pinghengche.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
web/image/pinpai1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
web/image/pinpai2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
web/image/pinpai3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
web/image/pinpai4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
web/image/pinpai5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Some files were not shown because too many files have changed in this diff Show More