Browse Source

商品搜索

master
林一峰 7 years ago
parent
commit
ca7b240008
  1. 4
      app/Http/Controllers/Admin/GoodsBrandController.php
  2. 5
      app/Http/Controllers/Admin/GoodsController.php
  3. 25
      app/Http/Controllers/Api/GoodsController.php
  4. 53
      app/Http/Controllers/Weixin/BonusController.php
  5. 25
      app/Http/Controllers/Weixin/GoodsController.php
  6. 21
      app/Http/Controllers/Weixin/IndexController.php
  7. 5
      app/Http/Controllers/Weixin/UserController.php
  8. 11
      app/Http/Model/Goods.php
  9. 97
      app/Http/Model/GoodsSearchword.php
  10. 63
      resources/views/admin/GoodsBrand/add.blade.php
  11. 79
      resources/views/admin/GoodsBrand/edit.blade.php
  12. 8
      resources/views/admin/GoodsBrand/index.blade.php
  13. 11
      resources/views/admin/goods/add.blade.php
  14. 14
      resources/views/admin/goods/edit.blade.php
  15. 93
      resources/views/weixin/bonus/bonusList.blade.php
  16. 4
      resources/views/weixin/goods/categoryGoodsList.blade.php
  17. 18
      resources/views/weixin/goods/goodslist.blade.php
  18. 4
      resources/views/weixin/index/index.blade.php
  19. 43
      resources/views/weixin/index/search.blade.php
  20. 18
      routes/web.php

4
app/Http/Controllers/Admin/GoodsBrandController.php

@ -13,7 +13,7 @@ class GoodsBrandController extends CommonController
public function index()
{
$data['posts'] = object_to_array(DB::table("goods_brand")->select('add_time', 'title', 'litpic', 'status', 'listorder', 'cover_img', 'click')->orderBy('id', 'desc')->get());
$data['posts'] = object_to_array(DB::table("goods_brand")->select('id', 'add_time', 'title', 'litpic', 'status', 'listorder', 'cover_img', 'click')->orderBy('id', 'desc')->get());
return view('admin.GoodsBrand.index', $data);
}
@ -27,7 +27,7 @@ class GoodsBrandController extends CommonController
if(DB::table("goods_brand")->insert($_POST))
{
success_jump('添加成功!');
success_jump('添加成功!', route('admin_goodsbrand'));
}
else
{

5
app/Http/Controllers/Admin/GoodsController.php

@ -48,7 +48,9 @@ class GoodsController extends CommonController
{
$data = [];
if(!empty($_GET["catid"])){$data['catid'] = $_GET["catid"];}else{$data['catid'] = 0;}
$data['goodsbrand_list'] = object_to_array(DB::table('goods_brand')->where('status', 0)->orderBy('listorder', 'asc')->get()); //商品品牌
return view('admin.goods.add', $data);
}
@ -101,6 +103,7 @@ class GoodsController extends CommonController
if($goods->promote_end_date != 0){$goods->promote_end_date = date('Y-m-d H:i:s',$goods->promote_end_date);}
$data['post'] = object_to_array($goods, 1);
$data['goodsbrand_list'] = object_to_array(DB::table('goods_brand')->where('status', 0)->orderBy('listorder', 'asc')->get()); //商品品牌
return view('admin.goods.edit', $data);
}

25
app/Http/Controllers/Api/GoodsController.php

@ -6,6 +6,7 @@ use Illuminate\Http\Request;
use App\Common\ReturnData;
use App\Common\Token;
use App\Http\Model\Goods;
use App\Http\Model\GoodsSearchword;
class GoodsController extends CommonController
{
@ -47,28 +48,14 @@ class GoodsController extends CommonController
return ReturnData::create(ReturnData::SUCCESS,$res);
}
//添加余额明细
public function userMoneyAdd(Request $request)
public function goodsSearchwordList(Request $request)
{
//参数
$data['type'] = $request->input('type',null);
$data['money'] = $request->input('money',null);
$data['des'] = $request->input('des',null);
if($request->input('user_money', null) !== null){$data['user_money'] = $request->input('user_money');}
$data['add_time'] = time();
$data['user_id'] = Token::$uid;
if($data['type']===null || $data['money']===null || $data['des']===null)
{
return ReturnData::create(ReturnData::PARAMS_ERROR);
}
$res = UserMoney::add($data);
if(!$res)
{
return ReturnData::create(ReturnData::SYSTEM_FAIL);
}
$data['limit'] = $request->input('limit', 10);
$data['offset'] = $request->input('offset', 0);
$res = GoodsSearchword::getList($data);
return ReturnData::create(ReturnData::SUCCESS,$res);
}
}

53
app/Http/Controllers/Weixin/BonusController.php

@ -0,0 +1,53 @@
<?php
namespace App\Http\Controllers\Weixin;
use App\Http\Controllers\Weixin\CommonController;
use Illuminate\Http\Request;
class BonusController extends CommonController
{
public function __construct()
{
parent::__construct();
}
//红包列表
public function bonusList(Request $request)
{
$pagesize = 10;
$offset = 0;
if(isset($_REQUEST['page'])){$offset = ($_REQUEST['page']-1)*$pagesize;}
$postdata = array(
'limit' => $pagesize,
'offset' => $offset,
'access_token' => $_SESSION['weixin_user_info']['access_token']
);
$url = env('APP_API_URL')."/bonus_list";
$res = curl_request($url,$postdata,'GET');
$data['list'] = $res['data']['list'];
$data['totalpage'] = ceil($res['data']['count']/$pagesize);
if(isset($_REQUEST['page_ajax']) && $_REQUEST['page_ajax']==1)
{
$html = '';
if($res['data']['list'])
{
foreach($res['data']['list'] as $k => $v)
{
$html .= '<li><a href="'.$v['goods']['goods_detail_url'].'"><span class="goods_thumb"><img alt="'.$v['goods']['title'].'" src="'.env('APP_URL').$v['goods']['litpic'].'"></span></a>';
$html .= '<div class="goods_info"><p class="goods_tit">'.$v['goods']['title'].'</p>';
$html .= '<p class="goods_price">¥<b>'.$v['goods']['price'].'</b></p>';
$html .= '<p class="goods_des fr"><span id="del_history" onclick="delconfirm(\''.route('weixin_user_goods_history_delete',array('id'=>$v['id'])).'\')">删除</span></p>';
$html .= '</div></li>';
}
}
exit(json_encode($html));
}
return view('weixin.bonus.bonusList', $data);
}
}

25
app/Http/Controllers/Weixin/GoodsController.php

@ -41,23 +41,24 @@ class GoodsController extends CommonController
//商品列表
public function goodsList(Request $request)
{
if($request->input('typeid', '') != ''){$data['typeid'] = $request->input('typeid');}
if($request->input('tuijian', '') != ''){$data['tuijian'] = $request->input('tuijian');}
if($request->input('keyword', '') != ''){$data['keyword'] = $request->input('keyword');}
if($request->input('status', '') != ''){$data['status'] = $request->input('status');}
if($request->input('is_promote', '') != ''){$data['is_promote'] = $request->input('is_promote');}
if($request->input('orderby', '') != ''){$data['orderby'] = $request->input('orderby');}
if($request->input('max_price', '') != ''){$data['max_price'] = $request->input('max_price');}else{$data['max_price'] = 99999;}
if($request->input('min_price', '') != ''){$data['min_price'] = $request->input('min_price');}else{$data['min_price'] = 0;}
if($request->input('typeid', '') != ''){$param['typeid'] = $request->input('typeid');}
if($request->input('tuijian', '') != ''){$param['tuijian'] = $request->input('tuijian');}
if($request->input('keyword', '') != ''){$param['keyword'] = $request->input('keyword');}
if($request->input('status', '') != ''){$param['status'] = $request->input('status');}
if($request->input('is_promote', '') != ''){$param['is_promote'] = $request->input('is_promote');}
if($request->input('orderby', '') != ''){$param['orderby'] = $request->input('orderby');}
if($request->input('max_price', '') != ''){$param['max_price'] = $request->input('max_price');}else{$param['max_price'] = 99999;}
if($request->input('min_price', '') != ''){$param['min_price'] = $request->input('min_price');}else{$param['min_price'] = 0;}
//商品列表
$postdata = array(
'limit' => 10,
'offset' => 0
);
$postdata = $param;
$postdata['limit'] = 10;
$postdata['offset'] = 0;
$url = env('APP_API_URL')."/goods_list";
$res = curl_request($url,$postdata,'GET');
$data['goods_list'] = $res['data']['list'];
$data['request_param'] = $param;
return view('weixin.goods.goodsList', $data);
}

21
app/Http/Controllers/Weixin/IndexController.php

@ -54,6 +54,16 @@ class IndexController extends CommonController
$res = curl_request($url,$postdata,'GET');
$data['goods_list'] = $res['data']['list'];
//商品推荐
$postdata = array(
'tuijian'=> 1,
'limit' => 4,
'offset' => 0
);
$url = env('APP_API_URL')."/goods_list";
$res = curl_request($url,$postdata,'GET');
$data['goods_recommend_list'] = $res['data']['list'];
return view('weixin.index.index',$data);
}
@ -125,7 +135,16 @@ class IndexController extends CommonController
//搜索页
public function search()
{
return view('weixin.index.search');
//商品热门搜索词列表
$postdata = array(
'limit' => 10,
'offset' => 0
);
$url = env('APP_API_URL')."/goods_searchword_list";
$res = curl_request($url,$postdata,'GET');
$data['goods_searchword_list'] = $res['data']['list'];
return view('weixin.index.search',$data);
}
//单页面

5
app/Http/Controllers/Weixin/UserController.php

@ -27,6 +27,8 @@ class UserController extends CommonController
$res = curl_request($url,$postdata,'GET');
$data['user_info'] = $res['data'];
if($res['code'] != ReturnCode::SUCCESS_CODE){unset($_SESSION['weixin_user_info']);$this->error_jump('请先登录',route('weixin_login'));}
return view('weixin.user.index', $data);
}
@ -514,8 +516,7 @@ class UserController extends CommonController
header('Location: '.route('weixin_user'));exit;
}
$data['isWechatBrowser'] = Helper::isWechatBrowser();
return view('weixin.user.login',$data);
return view('weixin.user.login');
}
//注册

11
app/Http/Model/Goods.php

@ -67,9 +67,16 @@ class Goods extends BaseModel
$model = $model->where($where);
}
if(isset($keyword)){$model = $model->where("title", "like", "%$keyword%")->orWhere("sn", "like", "%$keyword%");} //关键词搜索
//关键词搜索
if(isset($max_price) && isset($min_price)){$model = $model->where("price", ">=", $min_price)->where("price", "<=", $max_price);} //价格区间搜索
if(isset($keyword))
{
$model = $model->where(function ($query) use ($keyword) {$query->where("title", "like", "%$keyword%")->orWhere("sn", "like", "%$keyword%");});
//添加搜索关键词
GoodsSearchword::add(array('name'=>$keyword));
}
//return $model->toSql();//打印sql语句
$res['count'] = $model->count();
$res['list'] = array();

97
app/Http/Model/GoodsSearchword.php

@ -0,0 +1,97 @@
<?php
namespace App\Http\Model;
class GoodsSearchword extends BaseModel
{
//用户消息
protected $table = 'goods_searchword';
public $timestamps = false;
/**
* 不能被批量赋值的属性
*
* @var array
*/
protected $guarded = array();
//获取列表
public static function getList(array $param)
{
extract($param); //参数:limit,offset
$limit = isset($limit) ? $limit : 10;
$offset = isset($offset) ? $offset : 0;
$model = new self;
$where['status'] = 0;
$model = $model->where($where);
$res['count'] = $model->count();
$res['list'] = array();
if($res['count']>0)
{
$res['list'] = $model->skip($offset)->take($limit)->orderBy('click','desc')->orderBy('listorder','asc')->get();
}
else
{
return false;
}
return $res;
}
public static function getOne($where)
{
return self::where($where)->first();
}
public static function add(array $data)
{
//如果关键词存在,就增加点击量
if(isset($data['name']))
{
if(self::getOne(array('name'=>$data['name'])))
{
\DB::table('goods_searchword')->where(array('name'=>$data['name']))->increment('click', 1);
}
else
{
if ($id = self::insertGetId($data))
{
return $id;
}
}
}
else
{
return false;
}
return false;
}
public static function modify($where, array $data)
{
if (self::where($where)->update($data))
{
return true;
}
return false;
}
//删除一条记录
public static function remove($id)
{
if (!self::whereIn('id', explode(',', $id))->delete())
{
return false;
}
return true;
}
}

63
resources/views/admin/GoodsBrand/add.blade.php

@ -2,26 +2,27 @@
@section('title', '品牌添加')
@section('content')
<h5 class="sub-header"><a href="/fladmin/goodbrand">品牌列表</a> > 品牌添加</h5>
<h5 class="sub-header"><a href="/fladmin/goodsbrand">品牌列表</a> > 品牌添加</h5>
<form id="addarc" method="post" action="/fladmin/goodbrand/doadd" role="form" enctype="multipart/form-data" class="table-responsive">{{ csrf_field() }}
<form id="addarc" method="post" action="/fladmin/goodsbrand/doadd" role="form" enctype="multipart/form-data" class="table-responsive">{{ csrf_field() }}
<table class="table table-striped table-bordered">
<tbody>
<tr>
<td align="right">页面标题</td>
<td align="right">名称</td>
<td><input name="title" type="text" id="title" value="" class="required" style="width:60%" placeholder="在此输入标题"></td>
</tr>
<tr>
<td align="right">别名:</td>
<td><input name="filename" type="text" id="filename" class="required" value="" size="30"> </td>
<td align="right">是否显示:</td>
<td>
<input type="radio" value='0' name="status" checked />&nbsp;&nbsp;&nbsp;
<input type="radio" value='1' name="status" />&nbsp;
</td>
</tr>
<tr>
<td align="right">模板文件名:</td>
<td><input name="template" type="text" id="template" value="page" size="30"></td>
</tr>
<tr>
<td align="right">seoTitle:</td>
<td><input name="seotitle" type="text" id="seotitle" value="" style="width:60%"></td>
<td align="right">排序:</td>
<td>
<input name="listorder" type="text" id="listorder" value="50" size="3" />
</td>
</tr>
<tr>
<td align="right" style="vertical-align:middle;">缩略图:</td>
@ -56,21 +57,45 @@ function upImage()
</script>
<script type="text/plain" id="ueditorimg"></script>
<tr>
<td align="right">页面关键字:</td>
<td><input type="text" name="keywords" id="keywords" style="width:50%" value=""> (","分开)</td>
</tr>
<tr>
<td align="right" style="vertical-align:middle;">页面摘要信息:</td>
<td><textarea name="description" rows="5" id="description" style="width:80%;height:70px;vertical-align:middle;"></textarea></td>
<td align="right" style="vertical-align:middle;">封面:</td>
<td style="vertical-align:middle;"><button type="button" onclick="upImage2();">选择图片</button> <input name="cover_img" type="text" id="cover_img" value="" style="width:40%"> <img style="margin-left:20px;display:none;" src="" width="120" height="80" id="picview2"></td>
</tr>
<script type="text/javascript">
var _editor2;
$(function() {
//重新实例化一个编辑器,防止在上面的editor编辑器中显示上传的图片或者文件
_editor2 = UE.getEditor('ueditorimg2');
_editor2.ready(function () {
//设置编辑器不可用
_editor2.setDisabled('insertimage');
//隐藏编辑器,因为不会用到这个编辑器实例,所以要隐藏
_editor2.hide();
//侦听图片上传
_editor2.addListener('beforeInsertImage', function (t, arg) {
//将地址赋值给相应的input,只取第一张图片的路径
$('#cover_img').val(arg[0].src);
//图片预览
$('#picview2').attr("src",arg[0].src).css("display","inline-block");
})
});
});
//弹出图片上传的对话框
function upImage2()
{
var myImage = _editor2.getDialog("insertimage");
myImage.render();
myImage.open();
}
</script>
<script type="text/plain" id="ueditorimg2"></script>
<tr>
<td colspan="2"><strong>页面内容:</strong></td>
</tr>
<tr>
<td colspan="2">
<!-- 加载编辑器的容器 --><script id="container" name="body" type="text/plain"></script>
<!-- 加载编辑器的容器 --><script id="container" name="content" type="text/plain"></script>
<!-- 配置文件 --><script type="text/javascript" src="/other/flueditor/ueditor.config.js"></script>
<!-- 编辑器源码文件 --><script type="text/javascript" src="/other/flueditor/ueditor.all.js"></script>
<!-- 编辑器源码文件 --><script type="text/javascript" src="/other/flueditor/ueditor.all.min.js"></script>
<!-- 实例化编辑器 --><script type="text/javascript">var ue = UE.getEditor('container',{maximumWords:100000,initialFrameHeight:320,enableAutoSave:false});</script></td>
</tr>
<tr>

79
resources/views/admin/GoodsBrand/edit.blade.php

@ -2,26 +2,27 @@
@section('title', '品牌修改')
@section('content')
<h5 class="sub-header"><a href="/fladmin/page">品牌列表</a> > 品牌修改</h5>
<h5 class="sub-header"><a href="/fladmin/goodsbrand">品牌列表</a> > 品牌修改</h5>
<form id="addarc" method="post" action="/fladmin/page/doedit" role="form" enctype="multipart/form-data" class="table-responsive">{{ csrf_field() }}
<form id="addarc" method="post" action="/fladmin/goodsbrand/doedit" role="form" enctype="multipart/form-data" class="table-responsive">{{ csrf_field() }}
<table class="table table-striped table-bordered">
<tbody>
<tr>
<td align="right">页面标题</td>
<td align="right">名称</td>
<td><input name="title" type="text" id="title" value="<?php echo $post["title"]; ?>" class="required" style="width:60%" placeholder="在此输入标题"> <input style="display:none;" type="text" name="id" id="id" value="<?php echo $id; ?>"></td>
</tr>
<tr>
<td align="right">别名:</td>
<td><input name="filename" type="text" id="filename" class="required" value="<?php echo $post["filename"]; ?>" size="30"> </td>
<td align="right">是否显示:</td>
<td>
<input type="radio" value='0' name="status" <?php if(isset($post['status']) && $post['status']==0){echo 'checked';} ?> />&nbsp;是&nbsp;&nbsp;
<input type="radio" value='1' name="status" <?php if(isset($post['status']) && $post['status']==1){echo 'checked';} ?> />&nbsp;否
</td>
</tr>
<tr>
<td align="right">模板文件名:</td>
<td><input name="template" type="text" id="template" value="<?php echo $post["template"]; ?>" size="30"></td>
</tr>
<tr>
<td align="right">seoTitle:</td>
<td><input name="seotitle" type="text" id="seotitle" value="<?php echo $post["seotitle"]; ?>" style="width:60%"></td>
<td align="right">排序:</td>
<td>
<input name="listorder" type="text" id="listorder" value="<?php echo $post['listorder']; ?>" size="3" />
</td>
</tr>
<tr>
<td align="right" style="vertical-align:middle;">缩略图:</td>
@ -56,21 +57,45 @@ function upImage()
</script>
<script type="text/plain" id="ueditorimg"></script>
<tr>
<td align="right">页面关键字:</td>
<td><input type="text" name="keywords" id="keywords" style="width:50%" value="<?php echo $post["keywords"]; ?>"> (","分开)</td>
</tr>
<tr>
<td align="right" style="vertical-align:middle;">页面摘要信息:</td>
<td><textarea name="description" rows="5" id="description" style="width:80%;height:70px;vertical-align:middle;"><?php echo $post["description"]; ?></textarea></td>
<td align="right" style="vertical-align:middle;">封面:</td>
<td style="vertical-align:middle;"><button type="button" onclick="upImage2();">选择图片</button> <input name="cover_img" type="text" id="cover_img" value="<?php echo $post["cover_img"]; ?>" style="width:40%"> <img style="margin-left:20px;<?php if(empty($post["cover_img"]) || !imgmatch($post["cover_img"])){ echo "display:none;"; } ?>" src="<?php if(imgmatch($post["cover_img"])){echo $post["cover_img"];} ?>" width="120" height="80" id="picview2"></td>
</tr>
<script type="text/javascript">
var _editor2;
$(function() {
//重新实例化一个编辑器,防止在上面的editor编辑器中显示上传的图片或者文件
_editor2 = UE.getEditor('ueditorimg2');
_editor2.ready(function () {
//设置编辑器不可用
_editor2.setDisabled('insertimage');
//隐藏编辑器,因为不会用到这个编辑器实例,所以要隐藏
_editor2.hide();
//侦听图片上传
_editor2.addListener('beforeInsertImage', function (t, arg) {
//将地址赋值给相应的input,只取第一张图片的路径
$('#cover_img').val(arg[0].src);
//图片预览
$('#picview2').attr("src",arg[0].src).css("display","inline-block");
})
});
});
//弹出图片上传的对话框
function upImage2()
{
var myImage = _editor2.getDialog("insertimage");
myImage.render();
myImage.open();
}
</script>
<script type="text/plain" id="ueditorimg2"></script>
<tr>
<td colspan="2"><strong>页面内容:</strong></td>
</tr>
<tr>
<td colspan="2">
<!-- 加载编辑器的容器 --><script id="container" name="body" type="text/plain"><?php echo $post["body"]; ?></script>
<!-- 加载编辑器的容器 --><script id="container" name="content" type="text/plain"><?php echo $post["content"]; ?></script>
<!-- 配置文件 --><script type="text/javascript" src="/other/flueditor/ueditor.config.js"></script>
<!-- 编辑器源码文件 --><script type="text/javascript" src="/other/flueditor/ueditor.all.js"></script>
<!-- 编辑器源码文件 --><script type="text/javascript" src="/other/flueditor/ueditor.all.min.js"></script>
<!-- 实例化编辑器 --><script type="text/javascript">var ue = UE.getEditor('container',{maximumWords:100000,initialFrameHeight:320,enableAutoSave:false});</script></td>
</tr>
<tr>
@ -88,21 +113,7 @@ $(function(){
}
else
{
if( $(this).is('#filename') ){
var reg = /^[a-zA-Z]+[0-9]*[a-zA-Z0-9]*$/;//验证是否为字母、数字
if(!reg.test($("#filename").val()))
{
$parent.append(' <small class="formtips onError"><font color="red">格式不正确!</font></small>');
}
else
{
$parent.append(' <small class="formtips onSuccess"><font color="green">OK</font></small>');
}
}
else
{
$parent.append(' <small class="formtips onSuccess"><font color="green">OK</font></small>');
}
$parent.append(' <small class="formtips onSuccess"><font color="green">OK</font></small>');
}
});

8
resources/views/admin/GoodsBrand/index.blade.php

@ -18,10 +18,10 @@
<?php if($posts){foreach($posts as $row){ ?>
<tr>
<td><?php echo $row["id"]; ?></td>
<td><a href="/fladmin/goodsbrand/edit?id=<?php echo $row["id"]; ?>"><?php echo $row["title"]; ?></a></td>
<td><?php if(){echo $row["filename"];} ?></td>
<td><?php echo date('Y-m-d',$row["pubdate"]); ?></td>
<td><a target="_blank" href="<?php echo get_front_url(array("type"=>"page","pagename"=>$row["filename"])); ?>">预览</a>&nbsp;<a href="/fladmin/goodsbrand/edit?id=<?php echo $row["id"]; ?>">修改</a>&nbsp;<a onclick="delconfirm('/fladmin/goodsbrand/del?id=<?php echo $row["id"]; ?>')" href="javascript:;">删除</a></td>
<td><a href="<?php echo route('admin_goodsbrand_edit',array('id'=>$row["id"])); ?>"><?php echo $row["title"]; ?></a></td>
<td><?php if($row['status']==0){echo "";}else{echo "<font color=red>否</font>";} ?></td>
<td><?php echo date('Y-m-d',$row["add_time"]); ?></td>
<td><a href="<?php echo route('admin_goodsbrand_edit',array('id'=>$row["id"])); ?>">修改</a>&nbsp;<a onclick="delconfirm('<?php echo route('admin_goodsbrand_del',array('id'=>$row["id"])); ?>')" href="javascript:;">删除</a></td>
</tr>
<?php }} ?>
</tbody>

11
resources/views/admin/goods/add.blade.php

@ -99,6 +99,17 @@ function upImage()
</select>
</td>
</tr>
<tr>
<td align="right">商品品牌:</td>
<td>
<select name="brand_id" id="brand_id">
<option value="0">请选择品牌</option>
<?php foreach($goodsbrand_list as $row){ ?>
<option value="<?php echo $row["id"]; ?>"><?php echo $row["title"]; ?></option>
<?php } ?>
</select>
</td>
</tr>
<tr>
<td align="right">关键词:</td>
<td><input type="text" name="keywords" id="keywords" style="width:50%" value=""> (多个用","分开)</td>

14
resources/views/admin/goods/edit.blade.php

@ -90,6 +90,20 @@ function upImage()
</select>
</td>
</tr>
<tr>
<td align="right">商品品牌:</td>
<td>
<select name="brand_id" id="brand_id">
<option value="0">请选择品牌</option>
<?php foreach($goodsbrand_list as $row){
if($row["id"]==$post["brand_id"]){ ?>
<option selected="selected" value="<?php echo $row["id"]; ?>"><?php echo $row["title"]; ?></option>
<?php }else{ ?>
<option value="<?php echo $row["id"]; ?>"><?php echo $row["title"]; ?></option>
<?php }} ?>
</select>
</td>
</tr>
<tr>
<td align="right">关键词:</td>
<td><input type="text" name="keywords" id="keywords" style="width:50%" value="<?php echo $post["keywords"]; ?>"> (多个用","分开)</td>

93
resources/views/weixin/bonus/bonusList.blade.php

@ -0,0 +1,93 @@
<!DOCTYPE html><html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<title>领券中心</title><meta name="keywords" content=""><meta name="description" content=""><meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
<link href="<?php echo env('APP_URL'); ?>/css/weixin/style.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/weixin/mobile.js"></script></head><body style="background-color:#f1f1f1;">
<div class="classreturn loginsignup">
<div class="ds-in-bl return"><a href="javascript:history.back(-1);"><img src="<?php echo env('APP_URL'); ?>/images/weixin/return.png" alt="返回"></a></div>
<div class="ds-in-bl tit center"><span>领券中心</span></div>
</div>
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/layer/mobile/layer.js"></script>
<style>
.bonus_list .flow-have-adr{padding:10px;margin:10px;background-color:#fff;}
.bonus_list .f-h-adr-title .ect-colory{color:#f45239;font-size:32px;}
.bonus_list .f-h-adr-title label{font-size:18px;color:#2e2e2e;margin-right:5px;}
.bonus_list .f-h-adr-con{color:#616161;margin-top:5px;margin-bottom:5px;font-size:14px;}
.bonus_list .adr-edit-del{margin-top:10px;padding-top:8px;border-top:1px dashed #ddd;line-height:22px;color:#a0a0a0;font-size:14px;}
</style>
<div class="bonus_list">
<?php if($list){foreach($list as $k=>$v){ ?>
<div class="flow-have-adr">
<p class="f-h-adr-title"><label><?php echo $v['bonus']['name']; ?></label><span class="ect-colory fr"><small>¥</small><?php echo $v['bonus']['money']; ?></span><div class="cl"></div></p>
<p class="f-h-adr-con">有效期至<?php echo $v['bonus']['end_time']; ?> <span class="fr">满<?php echo $v['bonus']['min_amount']; ?>可用</span></p>
<!-- <div class="adr-edit-del">说明</div> -->
</div>
<?php }}else{ ?>
<div style="text-align:center;line-height:40px;color:#999;">暂无记录</div>
<?php } ?>
</div>
<script>
$(function(){
var ajaxload = false;
var maxpage = false;
var startpage = 1;
var totalpage = <?php echo $totalpage; ?>;
var tmp_url = window.location.href;
msg = tmp_url.split("#");
tmp_url = msg[0];
$(window).scroll(function ()
{
var listheight = $(".bonus_list").outerHeight();
if ($(document).scrollTop() + $(window).height() >= listheight)
{
if(startpage >= totalpage)
{
//$("#submit_bt_one").html("已是最后一页,没有更多数据!");
return false;
}
if(!ajaxload && !maxpage)
{
ajaxload = true;
//$("#submit_bt_one").html("努力加载中...");
var url = tmp_url;
var nextpage = startpage+1;
$.get(url,{page_ajax:1,page:nextpage},function(res)
{
if(res)
{
$(".bonus_list").append(res);
startpage++;
if(startpage >= totalpage)
{
maxpage = true;
//$("#submit_bt_one").html("已是最后一页,没有更多数据!");
}
else
{
//$("#submit_bt_one").html("点击加载更多");
}
ajaxload = false;
}
else
{
//$("#submit_bt_one").html("请求失败,请稍候再试!");
ajaxload = false;
}
},'json');
}
}
});
});
</script>
@include('weixin.common.footer')
</body></html>

4
resources/views/weixin/goods/categoryGoodsList.blade.php

@ -2,7 +2,7 @@
<title>商城</title><meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
<link href="<?php echo env('APP_URL'); ?>/css/weixin/style.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/jquery.min.js"></script><script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/weixin/mobile.js"></script>
<meta name="keywords" content="关键词"><meta name="description" content="描述"></head><body>
<meta name="keywords" content="关键词"><meta name="description" content="描述"></head><body style="background-color:#f1f1f1;">
<div class="classreturn loginsignup">
<div class="ds-in-bl return"><a href="javascript:history.back(-1);"><img src="<?php echo env('APP_URL'); ?>/images/weixin/return.png" alt="返回"></a></div>
@ -12,7 +12,7 @@
@include('weixin.common.headerNav')
<div class="flool classlist">
<div class="flool classlist" style="margin-top:4px;">
<div class="fl category1">
<ul>
<li<?php if(0==$typeid){echo ' class="on"';} ?>>

18
resources/views/weixin/goods/goodslist.blade.php

@ -2,7 +2,7 @@
<title>LQYCMS微商城</title><meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
<link href="<?php echo env('APP_URL'); ?>/css/weixin/style.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/jquery.min.js"></script><script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/weixin/mobile.js"></script>
<meta name="keywords" content="关键词"><meta name="description" content="描述"></head><body>
<meta name="keywords" content="关键词"><meta name="description" content="描述"></head><body style="background-color:#f1f1f1;">
<div class="classreturn loginsignup">
<div class="ds-in-bl return"><a href="javascript:history.back(-1);"><img src="<?php echo env('APP_URL'); ?>/images/weixin/return.png" alt="返回"></a></div>
<div class="ds-in-bl tit center"><span>商品列表</span></div>
@ -10,18 +10,20 @@
<nav class="storenav">
<ul class="table-cell">
<li>
<span class="lb">综合</span>
<li<?php if(!isset($_REQUEST['orderby'])){echo ' class="red"';} ?>>
<a href="<?php $complexorder = $request_param;if(isset($complexorder['orderby'])){unset($complexorder['orderby']);}echo route('weixin_goods_list',$complexorder); ?>">
<span class="lb">综合</span>
</a>
</li>
<li class="red">
<a href="/index.php/Mobile/Goods/search/id/0/q/冰箱/sort/sales_sum">
<li<?php if(isset($_REQUEST['orderby']) && $_REQUEST['orderby']==1){echo ' class="red"';} ?>>
<a href="<?php $saleorder = $request_param;$saleorder['orderby']=1;echo route('weixin_goods_list',$saleorder); ?>">
<span class="dq">销量</span>
</a>
</li>
<li>
<a href="/index.php/Mobile/Goods/search/id/0/q/冰箱/sort/shop_price/sort_asc/desc">
<li<?php if((isset($_REQUEST['orderby']) && ($_REQUEST['orderby']==3 || $_REQUEST['orderby']==4))){echo ' class="red"';} ?>>
<a href="<?php $priceorder = $request_param;if(isset($_REQUEST['orderby']) && $_REQUEST['orderby']==3){$priceorder['orderby']=4;}else{$priceorder['orderby']=3;}echo route('weixin_goods_list',$priceorder); ?>">
<span class="jg">价格 </span>
<i class="pr bpr1"></i>
<i class="pr<?php if(isset($_REQUEST['orderby']) && $_REQUEST['orderby']==3){echo ' bpr1';}elseif(isset($_REQUEST['orderby']) && $_REQUEST['orderby']==4){echo ' bpr2';} ?>"></i>
</a>
</li>
</ul><div class="cl"></div>

4
resources/views/weixin/index/index.blade.php

@ -140,7 +140,7 @@ var swiper = new Swiper('.swiper-nav', {
<div class="banner_tit">- 精品推荐 -</div>
<div class="likeshop">
<ul class="goods_list" id="goods_list">
<?php if($goods_list){foreach($goods_list as $k=>$v){ ?>
<?php if($goods_recommend_list){foreach($goods_recommend_list as $k=>$v){ ?>
<li><a href="<?php echo $v['goods_detail_url']; ?>"><img alt="<?php echo $v['title']; ?>" src="<?php echo $v['litpic']; ?>"><div class="goods_info"><p class="goods_tit"><?php echo $v['title']; ?></p><div class="goods_price">¥<b><?php echo $v['price']; ?></b></div></div></a></li>
<?php }} ?>
</ul>
@ -150,7 +150,7 @@ var swiper = new Swiper('.swiper-nav', {
<!--猜您喜欢-start-->
<div class="floor guesslike">
<div class="banner_tit">- 猜你喜欢 -</div>
<div class="banner_tit">- 新品 -</div>
<ul class="goods_list_s cl">
<?php if($goods_list){foreach($goods_list as $k=>$v){ ?>
<a href="<?php echo $v['goods_detail_url']; ?>"><li><span class="goods_thumb"><img alt="<?php echo $v['title']; ?>" src="<?php echo $v['litpic']; ?>"></span>

43
resources/views/weixin/index/search.blade.php

@ -1,5 +1,5 @@
<!DOCTYPE html><html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<title>商城</title><meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
<title>搜索</title><meta content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport">
<link href="<?php echo env('APP_URL'); ?>/css/weixin/style.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/weixin/mobile.js"></script>
@ -9,16 +9,8 @@
<div class="ds-in-bl tit center"><span>搜索</span></div>
<div class="ds-in-bl nav_menu"><a href="javascript:void(0);"><img src="<?php echo env('APP_URL'); ?>/images/weixin/class1.png" alt="菜单"></a></div>
</div>
<div class="flool tpnavf cl">
<div class="nav_list">
<ul>
<a href="<?php echo route('weixin'); ?>"><li><img src="<?php echo env('APP_URL'); ?>/images/weixin/home_icon.png"><p>首页</p></li></a>
<a href="/Weixin/index.php?m=Store&amp;a=index"><li><img src="<?php echo env('APP_URL'); ?>/images/weixin/brand_icon.png"><p>分类</p></li></a>
<a href="/Weixin/index.php?m=Cart&amp;a=index"><li><img src="<?php echo env('APP_URL'); ?>/images/weixin/car_icon.png"><p>购物车</p></li></a>
<a href="/Weixin/index.php?m=User&amp;a=index"><li><img src="<?php echo env('APP_URL'); ?>/images/weixin/center_icon.png"><p>个人中心</p></li></a></ul>
<div class="cl"></div>
</div>
</div>
@include('weixin.common.headerNav')
<div class="cl search_pl">
<form method="get" action="<?php echo route('weixin_goods_list'); ?>" id="sourch_form">
@ -29,28 +21,27 @@
</div>
<script type="text/javascript" src="<?php echo env('APP_URL'); ?>/js/layer/layer.js"></script>
<script>
function ajaxsecrch(){
if($.trim($('#keyword').val()) != ''){
$("#sourch_form").submit();
}else{
layer.msg('请输入搜索关键字', {
time: 3000, //3s后自动关闭
});
}
function ajaxsecrch()
{
if($.trim($('#keyword').val()) != '')
{
$("#sourch_form").submit();
}
else
{
layer.msg('请输入搜索关键字', {
time: 3000, //3s后自动关闭
});
}
}
</script>
<div class="hot_keyword_box">
<div class="tit_18 mt10 mb10">
<span>热门搜索</span>
</div>
<div class="hot_keyword">
<a href="/index.php/mobile/Goods/search/q/%E6%89%8B%E6%9C%BA.html" class="ht">手机</a>
<a href="/index.php/mobile/Goods/search/q/%E5%B0%8F%E7%B1%B3.html">小米</a>
<a href="/index.php/mobile/Goods/search/q/iphone.html">iphone</a>
<a href="/index.php/mobile/Goods/search/q/%E4%B8%89%E6%98%9F.html">三星</a>
<a href="/index.php/mobile/Goods/search/q/%E5%8D%8E%E4%B8%BA.html">华为</a>
<a href="/index.php/mobile/Goods/search/q/%E5%86%B0%E7%AE%B1.html">冰箱</a>
<div class="hot_keyword"><?php if($goods_searchword_list){foreach($goods_searchword_list as $v){ ?>
<a href="<?php echo route('weixin_goods_list',array('keyword'=>$v['name'])); ?>" class="ht"><?php echo $v['name'] ?></a><?php }} ?>
</div>
</div>

18
routes/web.php

@ -61,11 +61,12 @@ Route::group(['prefix' => 'weixin', 'namespace' => 'Weixin'], function () {
Route::get('/search', 'IndexController@search')->name('weixin_search'); //搜索页面
Route::get('/p/{id}', 'ArticleController@detail')->name('weixin_article_detail'); //文章详情页
Route::get('/cat{cat}', 'ArticleController@category')->name('weixin_article_category'); //分类页
Route::get('/tag{tag}', 'IndexController@tag')->name('weixin_tag'); //标签页
Route::get('/page/{id}', 'IndexController@page')->name('weixin_singlepage'); //单页
Route::get('/tag{tag}', 'IndexController@tag')->name('weixin_tag'); //标签页
Route::get('/page/{id}', 'IndexController@page')->name('weixin_singlepage');//单页
Route::get('/goods/{id}', 'GoodsController@goodsDetail')->name('weixin_goods_detail'); //商品详情页
Route::get('/goodslist', 'GoodsController@goodsList')->name('weixin_goods_list'); //产品分类页
Route::get('/bonus_list', 'BonusController@bonusList')->name('weixin_bonus_list');
Route::any('/wxpay_notify', 'WxPayController@wxpayNotify')->name('weixin_wxpay_notify'); //微信回调
Route::any('/wxoauth', 'UserController@oauth')->name('weixin_wxoauth'); //微信网页授权
Route::any('/login', 'UserController@login')->name('weixin_login');
@ -136,6 +137,7 @@ Route::group(['prefix' => 'dataapi', 'namespace' => 'Api', 'middleware' => ['web
Route::get('/goods_detail', 'GoodsController@goodsDetail'); //商品详情
Route::get('/goods_list', 'GoodsController@goodsList'); //商品列表
Route::get('/goodstype_list', 'GoodsTypeController@goodsTypeList'); //商品分类列表
Route::get('/goods_searchword_list', 'GoodsController@goodsSearchwordList'); //商品搜索词列表
//地区,省市区
Route::get('/region_list', 'RegionController@regionList');
Route::get('/region_detail', 'RegionController@regionDetail');
@ -281,12 +283,12 @@ Route::group(['prefix' => 'fladmin', 'namespace' => 'Admin', 'middleware' => ['w
Route::post('/goodstype/doedit', 'GoodsTypeController@doedit')->name('admin_goodstype_doedit');
Route::get('/goodstype/del', 'GoodsTypeController@del')->name('admin_goodstype_del');
//商品品牌
Route::get('/goodbrand', 'GoodsBrandController@index')->name('admin_goodbrand');
Route::get('/goodbrand/add', 'GoodsBrandController@add')->name('admin_goodbrand_add');
Route::post('/goodbrand/doadd', 'GoodsBrandController@doadd')->name('admin_goodbrand_doadd');
Route::get('/goodbrand/edit', 'GoodsBrandController@edit')->name('admin_goodbrand_edit');
Route::post('/goodbrand/doedit', 'GoodsBrandController@doedit')->name('admin_goodbrand_doedit');
Route::get('/goodbrand/del', 'GoodsBrandController@del')->name('admin_goodbrand_del');
Route::get('/goodsbrand', 'GoodsBrandController@index')->name('admin_goodsbrand');
Route::get('/goodsbrand/add', 'GoodsBrandController@add')->name('admin_goodsbrand_add');
Route::post('/goodsbrand/doadd', 'GoodsBrandController@doadd')->name('admin_goodsbrand_doadd');
Route::get('/goodsbrand/edit', 'GoodsBrandController@edit')->name('admin_goodsbrand_edit');
Route::post('/goodsbrand/doedit', 'GoodsBrandController@doedit')->name('admin_goodsbrand_doedit');
Route::get('/goodsbrand/del', 'GoodsBrandController@del')->name('admin_goodsbrand_del');
//友情链接
Route::get('/friendlink', 'FriendlinkController@index')->name('admin_friendlink');
Route::get('/friendlink/add', 'FriendlinkController@add')->name('admin_friendlink_add');

Loading…
Cancel
Save