From ca7b24000857cf1a6ba070391091db76ff4f3c11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E4=B8=80=E5=B3=B0?= <1feng.0595@gmail.com> Date: Mon, 4 Dec 2017 00:04:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/GoodsBrandController.php | 4 +- .../Controllers/Admin/GoodsController.php | 5 +- app/Http/Controllers/Api/GoodsController.php | 25 ++--- .../Controllers/Weixin/BonusController.php | 53 ++++++++++ .../Controllers/Weixin/GoodsController.php | 25 ++--- .../Controllers/Weixin/IndexController.php | 21 +++- .../Controllers/Weixin/UserController.php | 5 +- app/Http/Model/Goods.php | 11 ++- app/Http/Model/GoodsSearchword.php | 97 +++++++++++++++++++ .../views/admin/GoodsBrand/add.blade.php | 63 ++++++++---- .../views/admin/GoodsBrand/edit.blade.php | 79 ++++++++------- .../views/admin/GoodsBrand/index.blade.php | 8 +- resources/views/admin/goods/add.blade.php | 11 +++ resources/views/admin/goods/edit.blade.php | 14 +++ .../views/weixin/bonus/bonusList.blade.php | 93 ++++++++++++++++++ .../weixin/goods/categoryGoodsList.blade.php | 4 +- .../views/weixin/goods/goodslist.blade.php | 18 ++-- resources/views/weixin/index/index.blade.php | 4 +- resources/views/weixin/index/search.blade.php | 43 ++++---- routes/web.php | 18 ++-- 20 files changed, 459 insertions(+), 142 deletions(-) create mode 100644 app/Http/Controllers/Weixin/BonusController.php create mode 100644 app/Http/Model/GoodsSearchword.php create mode 100644 resources/views/weixin/bonus/bonusList.blade.php diff --git a/app/Http/Controllers/Admin/GoodsBrandController.php b/app/Http/Controllers/Admin/GoodsBrandController.php index 99e41dd..a1d6714 100644 --- a/app/Http/Controllers/Admin/GoodsBrandController.php +++ b/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 { diff --git a/app/Http/Controllers/Admin/GoodsController.php b/app/Http/Controllers/Admin/GoodsController.php index b7912ab..2317521 100644 --- a/app/Http/Controllers/Admin/GoodsController.php +++ b/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); } diff --git a/app/Http/Controllers/Api/GoodsController.php b/app/Http/Controllers/Api/GoodsController.php index b3f53a3..a49177f 100644 --- a/app/Http/Controllers/Api/GoodsController.php +++ b/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); } } \ No newline at end of file diff --git a/app/Http/Controllers/Weixin/BonusController.php b/app/Http/Controllers/Weixin/BonusController.php new file mode 100644 index 0000000..8bbe22c --- /dev/null +++ b/app/Http/Controllers/Weixin/BonusController.php @@ -0,0 +1,53 @@ + $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 .= '
  • '.$v['goods']['title'].''; + $html .= '

    '.$v['goods']['title'].'

    '; + $html .= '

    '.$v['goods']['price'].'

    '; + $html .= '

    删除

    '; + $html .= '
  • '; + } + } + + exit(json_encode($html)); + } + + return view('weixin.bonus.bonusList', $data); + } +} \ No newline at end of file diff --git a/app/Http/Controllers/Weixin/GoodsController.php b/app/Http/Controllers/Weixin/GoodsController.php index 4ad8f5a..8ef9d5b 100644 --- a/app/Http/Controllers/Weixin/GoodsController.php +++ b/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); } diff --git a/app/Http/Controllers/Weixin/IndexController.php b/app/Http/Controllers/Weixin/IndexController.php index 472aa41..a338727 100644 --- a/app/Http/Controllers/Weixin/IndexController.php +++ b/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); } //单页面 diff --git a/app/Http/Controllers/Weixin/UserController.php b/app/Http/Controllers/Weixin/UserController.php index 32ad36b..35b2df9 100644 --- a/app/Http/Controllers/Weixin/UserController.php +++ b/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'); } //注册 diff --git a/app/Http/Model/Goods.php b/app/Http/Model/Goods.php index de853a0..1a5fdbe 100644 --- a/app/Http/Model/Goods.php +++ b/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(); diff --git a/app/Http/Model/GoodsSearchword.php b/app/Http/Model/GoodsSearchword.php new file mode 100644 index 0000000..fdf61c5 --- /dev/null +++ b/app/Http/Model/GoodsSearchword.php @@ -0,0 +1,97 @@ +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; + } +} \ No newline at end of file diff --git a/resources/views/admin/GoodsBrand/add.blade.php b/resources/views/admin/GoodsBrand/add.blade.php index 219221a..6f4c749 100644 --- a/resources/views/admin/GoodsBrand/add.blade.php +++ b/resources/views/admin/GoodsBrand/add.blade.php @@ -2,26 +2,27 @@ @section('title', '品牌添加') @section('content') -
    品牌列表 > 品牌添加
    +
    品牌列表 > 品牌添加
    -
    {{ csrf_field() }} +{{ csrf_field() }} - + - - + + - - - - - - + + @@ -56,21 +57,45 @@ function upImage() - - - - - - + + + + diff --git a/resources/views/admin/GoodsBrand/edit.blade.php b/resources/views/admin/GoodsBrand/edit.blade.php index eaace2c..0c15bd4 100644 --- a/resources/views/admin/GoodsBrand/edit.blade.php +++ b/resources/views/admin/GoodsBrand/edit.blade.php @@ -2,26 +2,27 @@ @section('title', '品牌修改') @section('content') -
    品牌列表 > 品牌修改
    +
    品牌列表 > 品牌修改
    -{{ csrf_field() }} +{{ csrf_field() }}
    页面标题:名称:
    别名: 是否显示: +  是   +  否 +
    模板文件名:
    seoTitle:排序: + +
    缩略图:
    页面关键字: (用","分开)
    页面摘要信息:封面:
    页面内容:
    - + - +
    - + - - + + - - - - - - + + @@ -56,21 +57,45 @@ function upImage() - - - - - - + + + + @@ -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(' 格式不正确!'); - } - else - { - $parent.append(' OK'); - } - } - else - { - $parent.append(' OK'); - } + $parent.append(' OK'); } }); diff --git a/resources/views/admin/GoodsBrand/index.blade.php b/resources/views/admin/GoodsBrand/index.blade.php index 15999cd..f7cb58f 100644 --- a/resources/views/admin/GoodsBrand/index.blade.php +++ b/resources/views/admin/GoodsBrand/index.blade.php @@ -18,10 +18,10 @@ - - - - + + + + diff --git a/resources/views/admin/goods/add.blade.php b/resources/views/admin/goods/add.blade.php index f40374e..27b682e 100644 --- a/resources/views/admin/goods/add.blade.php +++ b/resources/views/admin/goods/add.blade.php @@ -99,6 +99,17 @@ function upImage() + + + + diff --git a/resources/views/admin/goods/edit.blade.php b/resources/views/admin/goods/edit.blade.php index 04e7536..acf26bf 100644 --- a/resources/views/admin/goods/edit.blade.php +++ b/resources/views/admin/goods/edit.blade.php @@ -90,6 +90,20 @@ function upImage() + + + + diff --git a/resources/views/weixin/bonus/bonusList.blade.php b/resources/views/weixin/bonus/bonusList.blade.php new file mode 100644 index 0000000..af522b3 --- /dev/null +++ b/resources/views/weixin/bonus/bonusList.blade.php @@ -0,0 +1,93 @@ + +领券中心 + + + +
    +
    返回
    +
    领券中心
    +
    + + + + +
    +$v){ ?> +
    +

    +

    有效期至 可用

    + +
    + +
    暂无记录
    + +
    + + +@include('weixin.common.footer') + \ No newline at end of file diff --git a/resources/views/weixin/goods/categoryGoodsList.blade.php b/resources/views/weixin/goods/categoryGoodsList.blade.php index 4f4cbc7..14f0d51 100644 --- a/resources/views/weixin/goods/categoryGoodsList.blade.php +++ b/resources/views/weixin/goods/categoryGoodsList.blade.php @@ -2,7 +2,7 @@ 商城 - +
    返回
    @@ -12,7 +12,7 @@ @include('weixin.common.headerNav') -
    +
      > diff --git a/resources/views/weixin/goods/goodslist.blade.php b/resources/views/weixin/goods/goodslist.blade.php index b9b1718..a893055 100644 --- a/resources/views/weixin/goods/goodslist.blade.php +++ b/resources/views/weixin/goods/goodslist.blade.php @@ -2,7 +2,7 @@ LQYCMS微商城 - +
      返回
      商品列表
      @@ -10,18 +10,20 @@
    页面标题:名称: " class="required" style="width:60%" placeholder="在此输入标题">
    别名:" size="30"> 是否显示: + /> 是   + /> 否 +
    模板文件名:" size="30">
    seoTitle:" style="width:60%">排序: + +
    缩略图:
    页面关键字:"> (用","分开)
    页面摘要信息:封面: " style="width:40%"> " src="" width="120" height="80" id="picview2">
    页面内容:
    - + - +
    ">"page","pagename"=>$row["filename"])); ?>">预览 ">修改 ')" href="javascript:;">删除">否";} ?>">修改 ')" href="javascript:;">删除
    商品品牌: + +
    关键词: (多个用","分开)
    商品品牌: + +
    关键词: "> (多个用","分开)