From a3a1abef0e1fe51c0ee2242aeeb8a96f5a416ecb 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: Tue, 8 Aug 2017 19:30:41 +0800
Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E6=94=B6=E8=97=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/Common/Helper.php | 6 +
.../Api/CollectGoodsController.php | 76 +++
.../Controllers/Api/CommentController.php | 114 ++++
.../Controllers/Api/FeedBackController.php | 53 ++
app/Http/Controllers/Api/IndexController.php | 92 +--
app/Http/Controllers/Api/QrcodeController.php | 25 +
app/Http/Controllers/Api/UserController.php | 442 +++++++++++--
.../Controllers/Api/UserMoneyController.php | 9 +-
.../Controllers/Api/UserPointController.php | 9 +-
.../Controllers/Api/VerifyCodeController.php | 43 ++
.../Auth/ForgotPasswordController.php | 32 -
app/Http/Controllers/Auth/LoginController.php | 39 --
.../Controllers/Auth/RegisterController.php | 71 --
.../Auth/ResetPasswordController.php | 39 --
app/Http/Controllers/Home/IndexController.php | 3 +
app/Http/Model/BaseModel.php | 2 +-
app/Http/Model/CollectGoods.php | 89 +++
app/Http/Model/Comment.php | 94 +++
app/Http/Model/FeedBack.php | 80 +++
app/Http/Model/{Product.php => Goods.php} | 10 +-
app/Http/Model/GoodsPhoto.php | 13 +
.../Model/{ProductType.php => GoodsType.php} | 10 +-
app/Http/Model/ProductPic.php | 13 -
app/Http/Model/Sysconfig.php | 67 +-
app/Http/Model/User.php | 76 ++-
app/Http/Model/UserAddress.php | 4 +-
app/Http/Model/UserMoney.php | 12 +-
app/Http/Model/UserPoint.php | 12 +-
app/Http/Model/VerifyCode.php | 1 +
composer.json | 1 +
composer.lock | 621 ++++++++++++------
config/app.php | 6 +-
routes/web.php | 25 +-
说明.txt | 5 +-
34 files changed, 1623 insertions(+), 571 deletions(-)
create mode 100644 app/Http/Controllers/Api/CollectGoodsController.php
create mode 100644 app/Http/Controllers/Api/CommentController.php
create mode 100644 app/Http/Controllers/Api/FeedBackController.php
create mode 100644 app/Http/Controllers/Api/QrcodeController.php
create mode 100644 app/Http/Controllers/Api/VerifyCodeController.php
delete mode 100644 app/Http/Controllers/Auth/ForgotPasswordController.php
delete mode 100644 app/Http/Controllers/Auth/LoginController.php
delete mode 100644 app/Http/Controllers/Auth/RegisterController.php
delete mode 100644 app/Http/Controllers/Auth/ResetPasswordController.php
create mode 100644 app/Http/Model/CollectGoods.php
create mode 100644 app/Http/Model/Comment.php
create mode 100644 app/Http/Model/FeedBack.php
rename app/Http/Model/{Product.php => Goods.php} (83%)
create mode 100644 app/Http/Model/GoodsPhoto.php
rename app/Http/Model/{ProductType.php => GoodsType.php} (52%)
delete mode 100644 app/Http/Model/ProductPic.php
diff --git a/app/Common/Helper.php b/app/Common/Helper.php
index 8f2e21c..1717ca2 100644
--- a/app/Common/Helper.php
+++ b/app/Common/Helper.php
@@ -164,6 +164,12 @@ class Helper
return $result;
}
+
+ //生成二维码
+ public static function qrcode($url,$size=150)
+ {
+ return 'data:image/png;base64,'.base64_encode(\QrCode::format('png')->encoding('UTF-8')->size($size)->margin(0)->errorCorrection('H')->generate($url));
+ }
//获取浏览器信息
public static function getBrowser()
diff --git a/app/Http/Controllers/Api/CollectGoodsController.php b/app/Http/Controllers/Api/CollectGoodsController.php
new file mode 100644
index 0000000..75ced80
--- /dev/null
+++ b/app/Http/Controllers/Api/CollectGoodsController.php
@@ -0,0 +1,76 @@
+input('limit', 10);
+ $data['offset'] = $request->input('offset', 0);
+ $data['user_id'] = Token::$uid;
+
+ $res = CollectGoods::getList($data);
+ if(!$res)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ //收藏商品
+ public function collectGoodsAdd(Request $request)
+ {
+ //参数
+ $data['goods_id'] = $request->input('goods_id',null);
+ if($request->input('is_attention', null) !== null){$data['is_attention'] = $request->input('is_attention');}
+ $data['add_time'] = time();
+ $data['user_id'] = Token::$uid;
+
+ if($data['goods_id']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = CollectGoods::add($data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ //取消收藏商品
+ public function collectGoodsDelete(Request $request)
+ {
+ //参数
+ $data['goods_id'] = $request->input('goods_id',null);
+ $data['user_id'] = Token::$uid;
+
+ if($data['goods_id']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = CollectGoods::remove($data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Api/CommentController.php b/app/Http/Controllers/Api/CommentController.php
new file mode 100644
index 0000000..44de235
--- /dev/null
+++ b/app/Http/Controllers/Api/CommentController.php
@@ -0,0 +1,114 @@
+input('limit', 10);
+ $data['offset'] = $request->input('offset', 0);
+ $data['user_id'] = Token::$uid;
+ $data['comment_type'] = $request->input('comment_type', 0); //0商品评价,1文章评价
+ if($request->input('comment_rank', null) !== null){$data['comment_rank'] = $request->input('comment_rank');}
+
+ $res = Comment::getList($data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ //添加评价
+ public function goodsCommentAdd(Request $request)
+ {
+ //参数
+ $data['comment_type'] = $request->input('comment_type',0);
+ $data['id_value'] = $request->input('id_value',null);
+ $data['content'] = $request->input('content',null);
+ $data['comment_rank'] = $request->input('comment_rank',null);
+ if($request->input('email', null) !== null){$data['email'] = $request->input('email');}
+ if($request->input('user_name', null) !== null){$data['user_name'] = $request->input('user_name');}
+ if($request->input('ip_address', null) !== null){$data['ip_address'] = $request->input('ip_address');}
+ if($request->input('parent_id', null) !== null){$data['parent_id'] = $request->input('parent_id');}
+ $data['add_time'] = time();
+ $data['user_id'] = Token::$uid;
+
+ if($data['comment_type']===null || $data['id_value']===null || $data['content']===null || $data['comment_rank']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = Comment::add($data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ public function goodsCommentUpdate(Request $request)
+ {
+ //参数
+ $id = $request->input('id',null);
+ $data['comment_type'] = $request->input('comment_type',0);
+ $data['id_value'] = $request->input('id_value',null);
+ $data['content'] = $request->input('content',null);
+ $data['comment_rank'] = $request->input('comment_rank',null);
+ if($request->input('email', null) !== null){$data['email'] = $request->input('email');}
+ if($request->input('user_name', null) !== null){$data['user_name'] = $request->input('user_name');}
+ if($request->input('ip_address', null) !== null){$data['ip_address'] = $request->input('ip_address');}
+ if($request->input('parent_id', null) !== null){$data['parent_id'] = $request->input('parent_id');}
+ $data['add_time'] = time();
+ $data['user_id'] = Token::$uid;
+
+ if($id===null || $data['comment_type']===null || $data['id_value']===null || $data['content']===null || $data['comment_rank']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = Comment::modify(array('id'=>$id),$data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ //删除评价
+ public function goodsCommentDelete(Request $request)
+ {
+ //参数
+ $data['comment_type'] = $request->input('comment_type',null);
+ $data['id_value'] = $request->input('id_value',null);
+ $data['user_id'] = Token::$uid;
+
+ if($data['comment_type']===null || $data['id_value']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = Comment::remove($data);
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Api/FeedBackController.php b/app/Http/Controllers/Api/FeedBackController.php
new file mode 100644
index 0000000..2e6fe6f
--- /dev/null
+++ b/app/Http/Controllers/Api/FeedBackController.php
@@ -0,0 +1,53 @@
+input('limit', 10);
+ $data['offset'] = $request->input('offset', 0);
+
+ $res = FeedBack::getList($data);
+ if(!$res)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
+ //添加意见反馈
+ public function feedbackAdd(Request $request)
+ {
+ //参数
+ $data['content'] = $request->input('content',null);
+ if($request->input('title', null) !== null){$data['title'] = $request->input('title');}
+ $data['user_id'] = Token::$uid;
+
+ if($data['content']===null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ $res = FeedBack::add($data);
+ if(!$res)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Api/IndexController.php b/app/Http/Controllers/Api/IndexController.php
index be3e849..9221b56 100644
--- a/app/Http/Controllers/Api/IndexController.php
+++ b/app/Http/Controllers/Api/IndexController.php
@@ -2,7 +2,9 @@
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Api\CommonController;
-use Illuminate\Support\Facades\DB;
+use Illuminate\Http\Request;
+use App\Common\ReturnData;
+use App\Common\Token;
class IndexController extends CommonController
{
@@ -10,79 +12,21 @@ class IndexController extends CommonController
{
parent::__construct();
}
-
- //文章列表页
- public function listarc()
+
+ //安卓升级信息
+ public function andriodUpgrade()
{
- $res["code"] = 0;
- $res["msg"] = "success";
- $res["data"] = "";
-
- $where = array();
- $result = "";
-
- $PageIndex = request('PageIndex',1);
- $PageSize = request('PageSize', sysconfig('CMS_PAGESIZE'));
- $skip = ($PageIndex-1)*$PageSize;
-
- $typeid = request('typeid');if(!empty($typeid)){ $where['typeid']=$typeid; }
- $tuijian = request('tuijian');if(!empty($tuijian)){ $where['tuijian']=$tuijian; }
- $field = array('field','id,typeid,click,title,writer,litpic,pubdate');
- $orderby = request('orderby',['pubdate','desc']);
- $mname = request('mname','article');
-
- $model = DB::table($mname);
- if($where){$model = $model->where($where);}
- if($orderby == 'rand()'){$model = $model->orderBy(\DB::raw('rand()'));}else{$model = $model->orderBy($orderby[0], $orderby[1]);}
-
- $count = $model->count();
- $list = object_to_array($model->skip($skip)->take($PageSize)->get());
-
- if(!empty($list) && $PageIndex<=10)
- {
- /* foreach($list as $key=>$row)
- {
- //$list[$key]["pubdate"] = date("Y-m-d", $list[$key]["pubdate"]);
- $result .= '
';
-
- if(!empty($row['litpic']) && file_exists($_SERVER['DOCUMENT_ROOT'].$row['litpic']))
- {
- $result .= '
';
- }
-
- $result .= '
'.$row['title'].''.mb_strcut(strip_tags($row['description']),0,126,'UTF-8').'..[详情]
';
- $result .= '
'.date("Y-m-d H:i",$row['pubdate']).''.$row['click'].'人阅读
';
- } */
-
- foreach($list as $key=>$row)
- {
- $list[$key]["url"] = get_front_url(array("id"=>$row['id'],"type"=>'content'));
- $list[$key]["pubdate"] = date("Y-m-d", $list[$key]["pubdate"]);
- }
-
- $res["data"] = $list;
- }
- /* $result['List']=$list;
- $result['Count']=$count>0?$count:0; */
-
- //return $res;
- exit(json_encode($res));
+ $res = array(
+ 'appname' => 'lqycms', //app名字
+ 'serverVersion' => 2, //服务器版本号
+ 'serverFlag' => 1, //服务器标志
+ 'lastForce' => 0, //是否强制更新,0不强制,1强制
+ 'updateurl' => 'http://api.52danchuang.com/wap/app-release.apk', //apk下载地址
+ 'upgradeinfo' => '描述:3.0.0' //版本更新的描述
+ );
+
+ return ReturnData::create(ReturnData::SUCCESS, $res);
}
-
- //测试页面
- public function test()
- {
- return date("Y-m-d H:i:s",strtotime("2017-04"));
- }
+
+
}
diff --git a/app/Http/Controllers/Api/QrcodeController.php b/app/Http/Controllers/Api/QrcodeController.php
new file mode 100644
index 0000000..00d09d5
--- /dev/null
+++ b/app/Http/Controllers/Api/QrcodeController.php
@@ -0,0 +1,25 @@
+input('url');
+ $size = $request->input('size', 150);
+
+ return '';
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php
index 6cbe0eb..7ab0aa6 100644
--- a/app/Http/Controllers/Api/UserController.php
+++ b/app/Http/Controllers/Api/UserController.php
@@ -4,7 +4,7 @@ namespace App\Http\Controllers\Api;
use App\Http\Controllers\Api\CommonController;
use Illuminate\Http\Request;
use App\Common\ReturnData;
-
+use App\Common\Token;
use App\Http\Model\User;
class UserController extends CommonController
@@ -14,109 +14,417 @@ class UserController extends CommonController
parent::__construct();
}
+ //用户信息
+ public function userInfo(Request $request)
+ {
+ if ($user = User::getOne(Token::$uid))
+ {
+ return ReturnData::create(ReturnData::SUCCESS, $user);
+ }
+ else
+ {
+ return ReturnData::create(ReturnData::RECORD_NOT_EXIST);
+ }
+ }
+
+ //修改用户信息
+ public function updateUserInfo(Request $request)
+ {
+ $data = $data2 = '';
+ if($request->input('sex', null)!=null){$data['sex'] = $request->input('sex');}
+ if($request->input('head_img', null)!=null){$data['head_img'] = $request->input('head_img');}
+ if($request->input('name', null)!=null){$data['name'] = $request->input('name');}
+ if($request->input('nickname', null)!=null){$data['nickname'] = $request->input('nickname');}
+ if($request->input('verify_mobile', null)!=null){$data['verify_mobile'] = $request->input('verify_mobile');}
+ if($request->input('community_id', null)!=null){$data['community_id'] = $request->input('community_id');}
+ if($request->input('address', null)!=null){$data['address'] = $request->input('address');}
+
+ if ($data != '')
+ {
+ MallDataManager::userUpdate(['id'=>Token::$uid],$data);
+ }
+
+ return ReturnCode::create(ReturnCode::SUCCESS);
+ }
+
+ //用户列表
+ public function userList(Request $request)
+ {
+ //参数
+ $data['limit'] = $request->input('limit', 10);
+ $data['offset'] = $request->input('offset', 0);
+
+ $res = User::getList($data);
+ if(!$res)
+ {
+ return ReturnData::create(ReturnData::SYSTEM_FAIL);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS,$res);
+ }
+
//签到
public function signin(Request $request)
{
- $user = MallDataManager::userFirst(['id'=>Token::$uid]);
- if($user){}else{return ReturnCode::create(ReturnCode::PARAMS_ERROR);}
+ $res = User::signin();
+
+ if($res !== true)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR,null,$res);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS);
+ }
+
+ //注册
+ public function register(Request $request)
+ {
+ $mobile = $request->input('mobile', null);
+ $password = $request->input('password', null);
+ $community_id = $request->input('community_id', null);
+ $address = $request->input('address', null);
+ $type = $request->input('type', null);
+ $verificationCode = $request->input('verificationCode', null);
+ $verificationType = $request->input('verificationType', null); //7表示验证码登录
+
+ $yezhu_mobile = $request->input('yezhu_mobile', null);
+
+ Log::info("注册手机号==========mobile=======".$mobile);
+
+ if ($mobile==null || $password==null || $verificationCode==null || $verificationType===null || $community_id===null)
+ {
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR);
+ }
+
+ if (!Helper::isValidMobile($mobile))
+ {
+ return response(ReturnCode::create(ReturnCode::MOBILE_FORMAT_FAIL));
+ }
- $signin_time='';
- if(!empty($user->signin_time)){$signin_time = date('Ymd',strtotime($user->signin_time));} //签到时间
+ $verifyCode = VerifyCode::isVerify($mobile, $verificationCode, $verificationType);
+ if(!$verifyCode)
+ {
+ return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE);
+ }
- $today = date('Ymd',time()); //今日日期
+ if($yezhu_mobile!=null)
+ {
+ $yezhu = MallDataManager::userFirst(['mobile'=>$yezhu_mobile,'community_id'=>$community_id]);
+ if (!$yezhu)
+ {
+ return response(ReturnCode::create(ReturnCode::PARAMS_ERROR,'业主不匹配'));
+ }
+ }
- if($signin_time==$today){return ReturnCode::create(101,'已经签到啦,请明天再来!');}
+ //判断是否已经注册
+ $user = MallDataManager::userFirst(['mobile'=>$mobile]);
+ if ($user)
+ {
+ return response(ReturnCode::create(ReturnCode::MOBILE_EXIST));
+ }
- $signin_point = (int)DB::table('system')->where(['keyword'=>'signin_point'])->value('value'); //签到积分
- DB::table('user')->where(['id'=>Token::$uid])->update(['point'=>($user->point+$signin_point),'signin_time'=>date('Y-m-d H:i:s')]); //更新用户积分,及签到时间
- DB::table('user_point_log')->insert(['type'=>1,'point'=>$signin_point,'des'=>'签到','user_id'=>Token::$uid]); //添加签到积分记录
+ try
+ {
+ DB::beginTransaction();
+ //创建用户
+ $userdata['mobile'] = $mobile;
+ $userdata['password'] = $password;
+ $userdata['verify_mobile'] = 1;
+ $userdata['name'] = $mobile;
+ $userdata['nickname'] = $mobile;
+ $userdata['community_id'] = $community_id;
+ $userdata['address'] = $address;
+ $userdata['type'] = $type;
+ $userid = DB::table('user')->insertGetId($userdata);
+
+ //注册环信用户
+ $Easemob = new Easemob();
+ $Easemob->imRegister(['username'=>'cuobian'.$userid,'password'=>md5('cuobian'.$userid)]);
+
+ //生成token
+ if ($user = MallDataManager::userFirst(['mobile'=>$mobile,'password'=>$password]))
+ {
+ //获取token
+ $expired_at = Carbon::now()->addDay()->toDateTimeString();
+ $token = Token::generate(Token::TYPE_SHOP, $user->id);
+ }
+
+ DB::commit();
+ $response = ReturnCode::create(ReturnCode::SUCCESS);
+ $response['data'] = [
+ 'id' => $user->id,
+ 'mobile' => $user->mobile,
+ 'expired_at' => $expired_at,
+ 'token' => $token,
+ ];
+ }
+ catch (Exception $e)
+ {
+ DB::rollBack();
+ Log::info($e->getMessage());
+ return response(ReturnCode::error($e->getCode(), $e->getMessage()));
+ }
+
+ return response($response);
+ }
+
+ //登录
+ public function login(Request $request)
+ {
+ $mobile = $request->input('mobile');
+ $password = $request->input('password');
- return ReturnCode::create(ReturnCode::SUCCESS,'恭喜您今日签到成功!+'.$signin_point.'积分');
+ if (!$mobile || !$password)
+ {
+ return response(ReturnCode::create(ReturnCode::PARAMS_ERROR));
+ }
+
+ if ($user = MallDataManager::userFirst(['mobile'=>$mobile]))
+ {
+ //判断密码
+ if ($password == $user->password)
+ {
+ //获取token
+ $expired_at = Carbon::now()->addDay()->toDateTimeString();
+ $token = Token::generate(Token::TYPE_SHOP, $user->id);
+
+ $response = ReturnCode::success();
+ $response['data']=[
+ 'id' => $user->id, 'name' => $user->name, 'nickname' => $user->nickname, 'headimg' => (string)$user->head_img, 'token' => $token, 'expired_at' => $expired_at, 'mobile' => $user->mobile, 'hx_name' => 'cuobian'.$user->id, 'hx_pwd' => md5('cuobian'.$user->id)
+ ];
+
+ return response($response);
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::PASSWORD_NOT_MATCH));
+ }
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::USER_NOT_EXIST));
+ }
}
- //验证码校验
- public function verifyCodeCheck(Request $request)
+ //验证码登录
+ public function verificationCodeLogin(Request $request)
{
- $mobile = $request->input('mobile', null); //手机号码
- $verificationCode = $request->input('verificationCode', null); //手机验证码
- $type = $request->input('type', null); //验证码类型
+ $mobile = $request->input('mobile');
+ $code = $request->input('code', null);
+ $type = $request->input('type', null); //7表示验证码登录
+
+ if (!$mobile || !$code)
+ {
+ return response(ReturnCode::create(ReturnCode::PARAMS_ERROR));
+ }
+
+ //判断验证码
+ if ($type != VerifyCode::TYPE_LOGIN)
+ {
+ return response(ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE));
+ }
- if ($mobile==null || $verificationCode==null || $type==null)
+ $verifyCode = VerifyCode::isVerify($mobile, $code, $type);
+ if (!$verifyCode)
+ {
+ return response(ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE));
+ }
+
+ if ($user = MallDataManager::userFirst(['mobile'=>$mobile]))
+ {
+ //获取token
+ $expired_at = Carbon::now()->addDay()->toDateTimeString();
+ $token = Token::generate(Token::TYPE_SHOP, $user->id);
+
+ $response = ReturnCode::success();
+ $response['data']=[
+ 'id' => $user->id, 'name' => $user->name, 'nickname' => $user->nickname, 'headimg' => (string)$user->head_img, 'token' => $token, 'expired_at' => $expired_at, 'mobile' => $user->mobile, 'hx_name' => 'cuobian'.$user->id, 'hx_pwd' => md5('cuobian'.$user->id)
+ ];
+
+ return response($response);
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::USER_NOT_EXIST));
+ }
+ }
+
+ //修改密码
+ public function changePassword(Request $request)
+ {
+ $mobile = $request->input('mobile', null);
+ $password = $request->input('password', null); //新密码
+ $oldPassword = $request->input('oldPassword', null); //旧密码
+
+ if (!$mobile || !$password || !$oldPassword)
{
return ReturnCode::create(ReturnCode::PARAMS_ERROR);
}
+ if($password == $oldPassword)
+ {
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR,'新旧密码相同');
+ }
+
if (!Helper::isValidMobile($mobile))
{
return ReturnCode::create(ReturnCode::MOBILE_FORMAT_FAIL);
}
- $verifyCode = VerifyCode::isVerify($mobile, $verificationCode, $type);
- if(!$verifyCode)
+ $user = MallDataManager::userFirst(['mobile'=>$mobile,'password'=>$oldPassword,'id'=>Token::$uid]);
+
+ if(!$user)
{
- return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE);
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR,'手机或密码错误');
}
+ DB::table('user')->where(['mobile'=>$mobile,'password'=>$oldPassword,'id'=>Token::$uid])->update(['password'=>$password]);
+
+ MallDataManager::tokenDelete(['uid'=>Token::$uid]);
+
return ReturnCode::create(ReturnCode::SUCCESS);
}
- //积分记录
- public function getCommunityNoticeList(Request $request)
+ //找回密码,不用输入旧密码
+ public function findPassword(Request $request)
{
- $where = '';
- $page = $request->input('page',1);
- $size = $request->input('size',10);
- $skip = ($page-1)*$size;
+ $mobile = $request->input('mobile', null);
+ $password = $request->input('password', null);
- $select = ['id','title','des','litpic','type','created_at as time'];
- $orderBy = ['id','desc'];
- return ReturnCode::create(ReturnCode::SUCCESS,MallDataManager::getCommunityNoticeList($where,$select,$orderBy,$skip,$size));
+ if ($mobile && $password)
+ {
+ if (!Helper::isValidMobile($mobile))
+ {
+ return response(ReturnCode::create(ReturnCode::MOBILE_FORMAT_FAIL));
+ }
+
+ //判断验证码是否有效
+ $code = $request->input('code', '');
+ $type = $request->input('type', null);
+ if($type != VerifyCode::TYPE_CHANGE_PASSWORD)
+ return response(ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE,'验证码类型错误'));
+ $verifyCode = VerifyCode::isVerify($mobile, $code, $type);
+
+ if($verifyCode)
+ {
+ try
+ {
+ DB::beginTransaction();
+ $verifyCode->status = VerifyCode::STATUS_USE;
+ $verifyCode->save();
+
+ if ($user = MallDataManager::userFirst(['mobile'=>$mobile]))
+ {
+ DB::table('user')->where(['mobile'=>$mobile])->update(['password'=>$password]);
+
+ MallDataManager::tokenDelete(['uid'=>$user->id]);
+
+ $response = response(ReturnCode::create(ReturnCode::SUCCESS));
+ }
+ else
+ {
+ $response = response(ReturnCode::create(ReturnCode::PARAMS_ERROR));
+ }
+
+ DB::commit();
+
+ return $response;
+ }
+ catch (Exception $e)
+ {
+ DB::rollBack();
+ return response(ReturnCode::error($e->getCode(), $e->getMessage()));
+ }
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE));
+ }
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::PARAMS_ERROR));
+ }
}
- //用户收货地址列表
- public function userAddressList(Request $request)
- {
- //参数
- $data['limit'] = $request->input('limit', 10);
- $data['offset'] = $request->input('offset', 0);
-
- $res = UserAddress::getList($data);
- if(!$res)
+ //用户意见反馈
+ public function feedback(Request $request)
+ {
+ $content = $request->input('content', null);
+ if(!$content)
+ return response(ReturnCode::create(ReturnCode::PARAMS_ERROR));
+ if ($user = MallDataManager::userFirst(['id'=>Token::$uid]))
{
- return ReturnData::create(ReturnData::SYSTEM_FAIL);
- }
-
- return ReturnData::create(ReturnData::SUCCESS,$res);
+ $id = MallDataManager::mallFeedbackinsertGetId(['content' => $content, 'user_id' => Token::$uid]);
+
+ return response(ReturnCode::create(ReturnCode::SUCCESS,$id));
+ }
+ else
+ {
+ return response(ReturnCode::create(ReturnCode::AUTHORIZE_FAIL));
+ }
}
-
- //用户收货地址详情
- public function userAddressDetail(Request $request)
- {
- //参数
- $id = $request->input('id',null);
-
- $res = UserAddress::getOne($id);
- if(!$res)
+
+ //关于
+ public function about(Request $request)
+ {
+ return response(ReturnCode::create(ReturnCode::SUCCESS,['url'=>'http://www.baidu.com']));
+ }
+
+ //修改手机号
+ public function changeMobile(Request $request)
+ {
+ $mobile = $request->input('mobile', null); //新手机号码
+ $verificationCode = $request->input('verificationCode', null); //新手机验证码
+ $oldMobile = $request->input('oldMobile', null); //旧手机号码
+ $oldVerificationCode = $request->input('oldVerificationCode', null); //旧手机验证码
+ $type = $request->input('type', null); //验证码类型
+
+ if (!$mobile || !$verificationCode || !$oldMobile || !$oldVerificationCode || !$type)
{
- return ReturnData::create(ReturnData::SYSTEM_FAIL);
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR);
+ }
+
+ if (!Helper::isValidMobile($mobile))
+ {
+ return ReturnCode::create(ReturnCode::MOBILE_FORMAT_FAIL);
}
-
- return ReturnData::create(ReturnData::SUCCESS,$res);
- }
-
- //设为默认地址
- public function userAddressSetDefault(Request $request)
- {
- //参数
- $id = $request->input('id',null);
-
- $res = UserAddress::setDefault($id);
- if(!$res)
+
+ if($mobile == $oldMobile)
{
- return ReturnData::create(ReturnData::SYSTEM_FAIL);
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR,'新旧手机号码相同');
}
-
- return ReturnData::create(ReturnData::SUCCESS,$res);
+
+ if($type != VerifyCode::TYPE_CHANGE_MOBILE)
+ {
+ return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE,'验证码类型错误');
+ }
+
+ $verifyCode = VerifyCode::isVerify($oldMobile, $oldVerificationCode, $type);
+ if(!$verifyCode)
+ {
+ return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE);
+ }
+
+ $verifyCode = null;
+ $verifyCode = VerifyCode::isVerify($mobile, $verificationCode, $type);
+ if(!$verifyCode)
+ {
+ return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE);
+ }
+
+ $user = MallDataManager::userFirst(['mobile'=>$oldMobile,'id'=>Token::$uid]);
+
+ if(!$user)
+ {
+ return ReturnCode::create(ReturnCode::PARAMS_ERROR,'旧手机号码错误');
+ }
+
+ DB::table('user')->where(['mobile'=>$oldMobile,'id'=>Token::$uid])->update(['mobile'=>$mobile]);
+
+ MallDataManager::tokenDelete(['uid'=>Token::$uid]);
+
+ return ReturnCode::create(ReturnCode::SUCCESS);
}
//添加收货地址
diff --git a/app/Http/Controllers/Api/UserMoneyController.php b/app/Http/Controllers/Api/UserMoneyController.php
index 1f33e55..32d4631 100644
--- a/app/Http/Controllers/Api/UserMoneyController.php
+++ b/app/Http/Controllers/Api/UserMoneyController.php
@@ -4,7 +4,7 @@ namespace App\Http\Controllers\Api;
use App\Http\Controllers\Api\CommonController;
use Illuminate\Http\Request;
use App\Common\ReturnData;
-
+use App\Common\Token;
use App\Http\Model\UserMoney;
class UserMoneyController extends CommonController
@@ -19,7 +19,7 @@ class UserMoneyController extends CommonController
//参数
$data['limit'] = $request->input('limit', 10);
$data['offset'] = $request->input('offset', 0);
- if($request->input('type', null) !== null){$data['type'] = $request->input('type');};
+ if($request->input('type', null) !== null){$data['type'] = $request->input('type');}
$res = UserMoney::getList($data);
if(!$res)
@@ -34,11 +34,12 @@ class UserMoneyController extends CommonController
public function userMoneyAdd(Request $request)
{
//参数
- $data['user_id'] = Token::$uid;
$data['type'] = $request->input('type',null);
$data['money'] = $request->input('money',null);
- $data['add_time'] = time();
$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)
{
diff --git a/app/Http/Controllers/Api/UserPointController.php b/app/Http/Controllers/Api/UserPointController.php
index 059af43..0fdf739 100644
--- a/app/Http/Controllers/Api/UserPointController.php
+++ b/app/Http/Controllers/Api/UserPointController.php
@@ -4,7 +4,7 @@ namespace App\Http\Controllers\Api;
use App\Http\Controllers\Api\CommonController;
use Illuminate\Http\Request;
use App\Common\ReturnData;
-
+use App\Common\Token;
use App\Http\Model\UserPoint;
class UserPointController extends CommonController
@@ -34,18 +34,19 @@ class UserPointController extends CommonController
public function userPointAdd(Request $request)
{
//参数
- $data['user_id'] = Token::$uid;
$data['type'] = $request->input('type',null);
$data['point'] = $request->input('point',null);
- $data['add_time'] = time();
$data['des'] = $request->input('des',null);
+ if($request->input('user_point', null) !== null){$data['user_point'] = $request->input('user_point');}
+ $data['add_time'] = time();
+ $data['user_id'] = Token::$uid;
if($data['type']===null || $data['point']===null || $data['des']===null)
{
return ReturnData::create(ReturnData::PARAMS_ERROR);
}
- $res = UserMoney::add($data);
+ $res = UserPoint::add($data);
if(!$res)
{
return ReturnData::create(ReturnData::SYSTEM_FAIL);
diff --git a/app/Http/Controllers/Api/VerifyCodeController.php b/app/Http/Controllers/Api/VerifyCodeController.php
new file mode 100644
index 0000000..91d8b27
--- /dev/null
+++ b/app/Http/Controllers/Api/VerifyCodeController.php
@@ -0,0 +1,43 @@
+input('mobile', null); //手机号码
+ $verifyCode = $request->input('verifyCode', null); //手机验证码
+ $type = $request->input('type', null); //验证码类型
+
+ if ($mobile==null || $verifyCode==null || $type==null)
+ {
+ return ReturnData::create(ReturnData::PARAMS_ERROR);
+ }
+
+ if (!Helper::isValidMobile($mobile))
+ {
+ return ReturnData::create(ReturnData::MOBILE_FORMAT_FAIL);
+ }
+
+ $verifyCode = VerifyCode::isVerify($mobile, $verifyCode, $type);
+ if(!$verifyCode)
+ {
+ return ReturnData::create(ReturnData::INVALID_VERIFYCODE);
+ }
+
+ return ReturnData::create(ReturnData::SUCCESS);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php
deleted file mode 100644
index 6a247fe..0000000
--- a/app/Http/Controllers/Auth/ForgotPasswordController.php
+++ /dev/null
@@ -1,32 +0,0 @@
-middleware('guest');
- }
-}
diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php
deleted file mode 100644
index b2ea669..0000000
--- a/app/Http/Controllers/Auth/LoginController.php
+++ /dev/null
@@ -1,39 +0,0 @@
-middleware('guest')->except('logout');
- }
-}
diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php
deleted file mode 100644
index ed8d1b7..0000000
--- a/app/Http/Controllers/Auth/RegisterController.php
+++ /dev/null
@@ -1,71 +0,0 @@
-middleware('guest');
- }
-
- /**
- * Get a validator for an incoming registration request.
- *
- * @param array $data
- * @return \Illuminate\Contracts\Validation\Validator
- */
- protected function validator(array $data)
- {
- return Validator::make($data, [
- 'name' => 'required|string|max:255',
- 'email' => 'required|string|email|max:255|unique:users',
- 'password' => 'required|string|min:6|confirmed',
- ]);
- }
-
- /**
- * Create a new user instance after a valid registration.
- *
- * @param array $data
- * @return User
- */
- protected function create(array $data)
- {
- return User::create([
- 'name' => $data['name'],
- 'email' => $data['email'],
- 'password' => bcrypt($data['password']),
- ]);
- }
-}
diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php
deleted file mode 100644
index cf726ee..0000000
--- a/app/Http/Controllers/Auth/ResetPasswordController.php
+++ /dev/null
@@ -1,39 +0,0 @@
-middleware('guest');
- }
-}
diff --git a/app/Http/Controllers/Home/IndexController.php b/app/Http/Controllers/Home/IndexController.php
index 09e95b6..81beb1e 100644
--- a/app/Http/Controllers/Home/IndexController.php
+++ b/app/Http/Controllers/Home/IndexController.php
@@ -259,6 +259,9 @@ class IndexController extends CommonController
//测试页面
public function test()
{
+ $qrcode = new \SimpleSoftwareIO\QrCode\BaconQrCodeGenerator;
+ return $qrcode->size(500)->generate('Make a qrcode without Laravel!');
+ //return '';
//set_exception_handler('myException');
//return uniqid();
//return \App\Common\Helper::formatPrice(1.2346);
diff --git a/app/Http/Model/BaseModel.php b/app/Http/Model/BaseModel.php
index 989bb1d..8862d4a 100644
--- a/app/Http/Model/BaseModel.php
+++ b/app/Http/Model/BaseModel.php
@@ -6,4 +6,4 @@ use Illuminate\Database\Eloquent\Model;
class BaseModel extends Model
{
-}
+}
\ No newline at end of file
diff --git a/app/Http/Model/CollectGoods.php b/app/Http/Model/CollectGoods.php
new file mode 100644
index 0000000..a21e862
--- /dev/null
+++ b/app/Http/Model/CollectGoods.php
@@ -0,0 +1,89 @@
+where($where);
+
+ $res['count'] = $model->count();
+ $res['list'] = array();
+
+ if($res['count']>0)
+ {
+ $res['list'] = $model->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
+ }
+ else
+ {
+ return false;
+ }
+
+ return $res;
+ }
+
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
+ public static function add(array $data)
+ {
+ if(self::where(array('user_id'=>$data['user_id'],'goods_id'=>$data['goods_id']))->first()){return '亲,您已经收藏啦!';}
+
+ if ($id = self::insertGetId($data))
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ public static function modify($where, array $data)
+ {
+ if (self::where($where)->update($data))
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ //删除一条记录
+ public static function remove(array $data)
+ {
+ if(!self::where(array('user_id'=>$data['user_id'],'goods_id'=>$data['goods_id']))->first()){return '商品未收藏';}
+
+ if (!self::where(array('user_id'=>$data['user_id'],'goods_id'=>$data['goods_id']))->delete())
+ {
+ return false;
+ }
+
+ return true;
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Model/Comment.php b/app/Http/Model/Comment.php
new file mode 100644
index 0000000..49b5418
--- /dev/null
+++ b/app/Http/Model/Comment.php
@@ -0,0 +1,94 @@
+where($where);
+
+ $res['count'] = $model->count();
+ $res['list'] = array();
+
+ if($res['count']>0)
+ {
+ $res['list'] = $model->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
+ }
+ else
+ {
+ return '暂无记录';
+ }
+
+ return $res;
+ }
+
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
+ public static function add(array $data)
+ {
+ if(self::where(array('user_id'=>$data['user_id'],'id_value'=>$data['id_value'],'comment_type'=>$data['comment_type']))->first()){return '亲,您已经评价啦!';}
+
+ if ($id = self::insertGetId($data))
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ public static function modify($where, array $data)
+ {
+ if (self::where($where)->update($data))
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ //删除一条记录
+ public static function remove(array $data)
+ {
+ if(!self::where(array('user_id'=>$data['user_id'],'comment_type'=>$data['comment_type'],'id_value'=>$data['id_value']))->first()){return '商品尚未评价';}
+
+ if (!self::where(array('user_id'=>$data['user_id'],'comment_type'=>$data['comment_type'],'id_value'=>$data['id_value']))->delete())
+ {
+ return false;
+ }
+
+ return true;
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Model/FeedBack.php b/app/Http/Model/FeedBack.php
new file mode 100644
index 0000000..90ab008
--- /dev/null
+++ b/app/Http/Model/FeedBack.php
@@ -0,0 +1,80 @@
+count();
+ $res['list'] = array();
+
+ if($res['count']>0)
+ {
+ $res['list'] = $model->select('title','created_at')->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
+ }
+ else
+ {
+ return false;
+ }
+
+ return $res;
+ }
+
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
+ public static function add(array $data)
+ {
+ if ($id = self::insertGetId($data))
+ {
+ return $id;
+ }
+
+ 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/app/Http/Model/Product.php b/app/Http/Model/Goods.php
similarity index 83%
rename from app/Http/Model/Product.php
rename to app/Http/Model/Goods.php
index 8725d6d..cefbf01 100644
--- a/app/Http/Model/Product.php
+++ b/app/Http/Model/Goods.php
@@ -1,9 +1,9 @@
belongsTo(ProductType::class, 'typeid', 'id');
+ return $this->belongsTo(GoodsType::class, 'typeid', 'id');
}
}
diff --git a/app/Http/Model/GoodsPhoto.php b/app/Http/Model/GoodsPhoto.php
new file mode 100644
index 0000000..bbd29e1
--- /dev/null
+++ b/app/Http/Model/GoodsPhoto.php
@@ -0,0 +1,13 @@
+hasMany(ProductType::class, 'typeid', 'id');
+ return $this->hasMany(GoodsType::class, 'typeid', 'id');
}
}
diff --git a/app/Http/Model/ProductPic.php b/app/Http/Model/ProductPic.php
deleted file mode 100644
index f7ab507..0000000
--- a/app/Http/Model/ProductPic.php
+++ /dev/null
@@ -1,13 +0,0 @@
-count();
+ $res['list'] = array();
+
+ if($res['count']>0)
+ {
+ $res['list'] = $model->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
+ }
+ else
+ {
+ return false;
+ }
+
+ return $res;
+ }
+
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
+ public static function add(array $data)
+ {
+ if ($id = self::insertGetId($data))
+ {
+ return $id;
+ }
+
+ 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/app/Http/Model/User.php b/app/Http/Model/User.php
index 40bf924..210360b 100644
--- a/app/Http/Model/User.php
+++ b/app/Http/Model/User.php
@@ -43,4 +43,78 @@ class User extends BaseModel
return true;
}
-}
+
+ //获取列表
+ public static function getList(array $param)
+ {
+ extract($param); //参数:limit,offset
+
+ $where = '';
+ $limit = isset($limit) ? $limit : 10;
+ $offset = isset($offset) ? $offset : 0;
+
+ $model = new User;
+
+ if(isset($group_id)){$where['group_id'] = $group_id;}
+
+ if($where != '')
+ {
+ $model = $model->where($where);
+ }
+
+ $res['count'] = $model->count();
+ $res['list'] = array();
+
+ if($res['count']>0)
+ {
+ $res['list'] = $model->select('id','user_name','email','sex','money','point','mobile','nickname','add_time')->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
+ }
+ else
+ {
+ return false;
+ }
+
+ return $res;
+ }
+
+ //用户信息
+ public static function getOne($id)
+ {
+ $user = self::where('id', $id)->first();
+ if(!$user){return false;}
+ $user['reciever_address'] = UserAddress::getOne($user->address_id);
+
+ return $user;
+ }
+
+ public static function add(array $data)
+ {
+ if ($id = self::insertGetId($data))
+ {
+ return $id;
+ }
+
+ 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/app/Http/Model/UserAddress.php b/app/Http/Model/UserAddress.php
index dd8ca01..3a90649 100644
--- a/app/Http/Model/UserAddress.php
+++ b/app/Http/Model/UserAddress.php
@@ -56,7 +56,7 @@ class UserAddress extends BaseModel
}
//获取一条记录,不传address_id表示获取默认地址
- public static function getOne($address_id)
+ public static function getOne($address_id='')
{
$arr = '';
@@ -79,7 +79,7 @@ class UserAddress extends BaseModel
{
// 取默认地址
$arr = self::join('user','user_address.id', '=', 'user.address_id')
- ->where('user.user_id',Token::$uid)
+ ->where('user.id',Token::$uid)->select('user_address.id','user_address.name','country','province','city','district','address','user_address.mobile','zipcode','best_time')
->first();
if($arr)
diff --git a/app/Http/Model/UserMoney.php b/app/Http/Model/UserMoney.php
index 9e5573f..f16a1cf 100644
--- a/app/Http/Model/UserMoney.php
+++ b/app/Http/Model/UserMoney.php
@@ -38,7 +38,7 @@ class UserMoney extends BaseModel
if($res['count']>0)
{
- $res['list'] = $model->skip($offset)->take($limit)->get()->toArray();
+ $res['list'] = $model->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
}
else
{
@@ -48,9 +48,14 @@ class UserMoney extends BaseModel
return $res;
}
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
public static function add(array $data)
{
- if ($id = DB::table(self::$table)->insertGetId($data))
+ if ($id = self::insertGetId($data))
{
return $id;
}
@@ -60,8 +65,7 @@ class UserMoney extends BaseModel
public static function modify($where, array $data)
{
- $slide = DB::table(self::$table);
- if ($slide->where($where)->update($data))
+ if (self::where($where)->update($data))
{
return true;
}
diff --git a/app/Http/Model/UserPoint.php b/app/Http/Model/UserPoint.php
index b1c1651..6d4fc47 100644
--- a/app/Http/Model/UserPoint.php
+++ b/app/Http/Model/UserPoint.php
@@ -37,7 +37,7 @@ class UserPoint extends BaseModel
if($res['count']>0)
{
- $res['list'] = $model->skip($offset)->take($limit)->get()->toArray();
+ $res['list'] = $model->skip($offset)->take($limit)->orderBy('id','desc')->get()->toArray();
}
else
{
@@ -47,9 +47,14 @@ class UserPoint extends BaseModel
return $res;
}
+ public static function getOne($id)
+ {
+ return self::where('id', $id)->first()->toArray();
+ }
+
public static function add(array $data)
{
- if ($id = DB::table(self::$table)->insertGetId($data))
+ if ($id = self::insertGetId($data))
{
return $id;
}
@@ -59,8 +64,7 @@ class UserPoint extends BaseModel
public static function modify($where, array $data)
{
- $slide = DB::table(self::$table);
- if ($slide->where($where)->update($data))
+ if (self::where($where)->update($data))
{
return true;
}
diff --git a/app/Http/Model/VerifyCode.php b/app/Http/Model/VerifyCode.php
index 79417f9..f22d46d 100644
--- a/app/Http/Model/VerifyCode.php
+++ b/app/Http/Model/VerifyCode.php
@@ -6,6 +6,7 @@ use App\Common\Sms;
use App\Common\Helper;
use App\Common\ReturnData;
+//验证码
class VerifyCode extends BaseModel
{
protected $table = 'verify_code';
diff --git a/composer.json b/composer.json
index 2bf13b0..f570e23 100644
--- a/composer.json
+++ b/composer.json
@@ -11,6 +11,7 @@
"laravel/tinker": "~1.0",
"maatwebsite/excel": "~2.1.0",
"overtrue/laravel-wechat": "~3.1",
+ "simplesoftwareio/simple-qrcode": "~1",
"jpush/jpush": "v3.5.*"
},
"require-dev": {
diff --git a/composer.lock b/composer.lock
index d46d9a0..3587774 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,50 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "content-hash": "2367b038aae2731238e00c910f6f6cc3",
+ "content-hash": "e7606121c9508220e3848d04772f6938",
"packages": [
+ {
+ "name": "bacon/bacon-qr-code",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/Bacon/BaconQrCode.git",
+ "reference": "031a2ce68c5794064b49d11775b2daf45c96e21c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://files.phpcomposer.com/files/Bacon/BaconQrCode/031a2ce68c5794064b49d11775b2daf45c96e21c.zip",
+ "reference": "031a2ce68c5794064b49d11775b2daf45c96e21c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "suggest": {
+ "ext-gd": "to generate QR code images"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-0": {
+ "BaconQrCode": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-2-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Ben Scholzen 'DASPRiD'",
+ "email": "mail@dasprids.de",
+ "homepage": "http://www.dasprids.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "BaconQrCode is a QR code generator for PHP.",
+ "homepage": "https://github.com/Bacon/BaconQrCode",
+ "time": "2016-01-09T22:55:35+00:00"
+ },
{
"name": "dnoegel/php-xdg-base-dir",
"version": "0.1",
@@ -41,16 +83,16 @@
},
{
"name": "doctrine/cache",
- "version": "v1.6.1",
+ "version": "v1.6.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/cache.git",
- "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3"
+ "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/doctrine/cache/b6f544a20f4807e81f7044d31e679ccbb1866dc3.zip",
- "reference": "b6f544a20f4807e81f7044d31e679ccbb1866dc3",
+ "url": "https://files.phpcomposer.com/files/doctrine/cache/eb152c5100571c7a45470ff2a35095ab3f3b900b.zip",
+ "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b",
"shasum": ""
},
"require": {
@@ -107,7 +149,7 @@
"cache",
"caching"
],
- "time": "2016-10-29T11:16:17+00:00"
+ "time": "2017-07-22T12:49:21+00:00"
},
{
"name": "doctrine/inflector",
@@ -178,16 +220,16 @@
},
{
"name": "erusev/parsedown",
- "version": "1.6.2",
+ "version": "1.6.3",
"source": {
"type": "git",
"url": "https://github.com/erusev/parsedown.git",
- "reference": "1bf24f7334fe16c88bf9d467863309ceaf285b01"
+ "reference": "728952b90a333b5c6f77f06ea9422b94b585878d"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/erusev/parsedown/1bf24f7334fe16c88bf9d467863309ceaf285b01.zip",
- "reference": "1bf24f7334fe16c88bf9d467863309ceaf285b01",
+ "url": "https://files.phpcomposer.com/files/erusev/parsedown/728952b90a333b5c6f77f06ea9422b94b585878d.zip",
+ "reference": "728952b90a333b5c6f77f06ea9422b94b585878d",
"shasum": ""
},
"require": {
@@ -216,20 +258,20 @@
"markdown",
"parser"
],
- "time": "2017-03-29T16:04:15+00:00"
+ "time": "2017-05-14T14:47:48+00:00"
},
{
"name": "guzzlehttp/guzzle",
- "version": "6.2.3",
+ "version": "6.3.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
- "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006"
+ "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/guzzle/guzzle/8d6c6cc55186db87b7dc5009827429ba4e9dc006.zip",
- "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006",
+ "url": "https://files.phpcomposer.com/files/guzzle/guzzle/f4db5a78a5ea468d4831de7f0bf9d9415e348699.zip",
+ "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699",
"shasum": ""
},
"require": {
@@ -239,9 +281,12 @@
},
"require-dev": {
"ext-curl": "*",
- "phpunit/phpunit": "^4.0",
+ "phpunit/phpunit": "^4.0 || ^5.0",
"psr/log": "^1.0"
},
+ "suggest": {
+ "psr/log": "Required for using the Log middleware"
+ },
"type": "library",
"extra": {
"branch-alias": {
@@ -278,7 +323,7 @@
"rest",
"web service"
],
- "time": "2017-02-28T22:50:30+00:00"
+ "time": "2017-06-22T18:50:49+00:00"
},
{
"name": "guzzlehttp/promises",
@@ -398,16 +443,16 @@
},
{
"name": "intervention/image",
- "version": "2.3.13",
+ "version": "2.4.0",
"source": {
"type": "git",
"url": "https://github.com/Intervention/image.git",
- "reference": "15a517f052ee15d373ffa145c9642d5fec7ddf5c"
+ "reference": "322a4ade249467179c50a3e50eda8760ff3af2a3"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/Intervention/image/15a517f052ee15d373ffa145c9642d5fec7ddf5c.zip",
- "reference": "15a517f052ee15d373ffa145c9642d5fec7ddf5c",
+ "url": "https://files.phpcomposer.com/files/Intervention/image/322a4ade249467179c50a3e50eda8760ff3af2a3.zip",
+ "reference": "322a4ade249467179c50a3e50eda8760ff3af2a3",
"shasum": ""
},
"require": {
@@ -417,7 +462,7 @@
},
"require-dev": {
"mockery/mockery": "~0.9.2",
- "phpunit/phpunit": "3.*"
+ "phpunit/phpunit": "^4.8 || ^5.7"
},
"suggest": {
"ext-gd": "to use GD library based image processing.",
@@ -428,6 +473,14 @@
"extra": {
"branch-alias": {
"dev-master": "2.3-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Intervention\\Image\\ImageServiceProvider"
+ ],
+ "aliases": {
+ "Image": "Intervention\\Image\\Facades\\Image"
+ }
}
},
"autoload": {
@@ -442,8 +495,8 @@
"authors": [
{
"name": "Oliver Vogel",
- "email": "oliver@olivervogel.net",
- "homepage": "http://olivervogel.net/"
+ "email": "oliver@olivervogel.com",
+ "homepage": "http://olivervogel.com/"
}
],
"description": "Image handling and manipulation library with support for Laravel integration",
@@ -456,7 +509,7 @@
"thumbnail",
"watermark"
],
- "time": "2017-04-23T18:45:36+00:00"
+ "time": "2017-07-03T15:50:40+00:00"
},
{
"name": "jakub-onderka/php-console-color",
@@ -603,22 +656,65 @@
],
"time": "2016-12-07T09:37:55+00:00"
},
+ {
+ "name": "jpush/jpush",
+ "version": "v3.5.22",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/jpush/jpush-api-php-client.git",
+ "reference": "a3d1907b01980de034995c73e5d0c24edf4cedcd"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://files.phpcomposer.com/files/jpush/jpush-api-php-client/a3d1907b01980de034995c73e5d0c24edf4cedcd.zip",
+ "reference": "a3d1907b01980de034995c73e5d0c24edf4cedcd",
+ "shasum": ""
+ },
+ "require": {
+ "ext-curl": "*",
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "*"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "JPush\\": "src/JPush/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "JPush",
+ "email": "support@jpush.cn",
+ "homepage": "https://www.jpush.cn/",
+ "role": "Developer"
+ }
+ ],
+ "description": "JPush API PHP Client",
+ "homepage": "https://github.com/jpush/jpush-api-php-client",
+ "time": "2017-08-01T05:13:49+00:00"
+ },
{
"name": "laravel/framework",
- "version": "v5.4.24",
+ "version": "v5.4.32",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "ec8548db26c1b147570f661128649e98f3ac0f29"
+ "reference": "b8300578d159199b1195413b67318c79068cd24d"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/laravel/framework/ec8548db26c1b147570f661128649e98f3ac0f29.zip",
- "reference": "ec8548db26c1b147570f661128649e98f3ac0f29",
+ "url": "https://files.phpcomposer.com/files/laravel/framework/b8300578d159199b1195413b67318c79068cd24d.zip",
+ "reference": "b8300578d159199b1195413b67318c79068cd24d",
"shasum": ""
},
"require": {
- "doctrine/inflector": "~1.0",
+ "doctrine/inflector": "~1.1.0",
"erusev/parsedown": "~1.6",
"ext-mbstring": "*",
"ext-openssl": "*",
@@ -730,20 +826,20 @@
"framework",
"laravel"
],
- "time": "2017-05-30T12:44:32+00:00"
+ "time": "2017-08-03T12:59:42+00:00"
},
{
"name": "laravel/tinker",
- "version": "v1.0.0",
+ "version": "v1.0.2",
"source": {
"type": "git",
"url": "https://github.com/laravel/tinker.git",
- "reference": "3d5b675b55b24ccbf86395964042dbe061d5a965"
+ "reference": "203978fd67f118902acff95925847e70b72e3daf"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/laravel/tinker/3d5b675b55b24ccbf86395964042dbe061d5a965.zip",
- "reference": "3d5b675b55b24ccbf86395964042dbe061d5a965",
+ "url": "https://files.phpcomposer.com/files/laravel/tinker/203978fd67f118902acff95925847e70b72e3daf.zip",
+ "reference": "203978fd67f118902acff95925847e70b72e3daf",
"shasum": ""
},
"require": {
@@ -764,6 +860,11 @@
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Laravel\\Tinker\\TinkerServiceProvider"
+ ]
}
},
"autoload": {
@@ -788,20 +889,20 @@
"laravel",
"psysh"
],
- "time": "2016-12-30T18:13:17+00:00"
+ "time": "2017-07-13T13:11:05+00:00"
},
{
"name": "league/flysystem",
- "version": "1.0.40",
+ "version": "1.0.41",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem.git",
- "reference": "3828f0b24e2c1918bb362d57a53205d6dc8fde61"
+ "reference": "f400aa98912c561ba625ea4065031b7a41e5a155"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/thephpleague/flysystem/3828f0b24e2c1918bb362d57a53205d6dc8fde61.zip",
- "reference": "3828f0b24e2c1918bb362d57a53205d6dc8fde61",
+ "url": "https://files.phpcomposer.com/files/thephpleague/flysystem/f400aa98912c561ba625ea4065031b7a41e5a155.zip",
+ "reference": "f400aa98912c561ba625ea4065031b7a41e5a155",
"shasum": ""
},
"require": {
@@ -822,13 +923,13 @@
"league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3",
"league/flysystem-azure": "Allows you to use Windows Azure Blob storage",
"league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching",
- "league/flysystem-copy": "Allows you to use Copy.com storage",
"league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem",
"league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files",
"league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib",
"league/flysystem-webdav": "Allows you to use WebDAV storage",
"league/flysystem-ziparchive": "Allows you to use ZipArchive adapter",
- "spatie/flysystem-dropbox": "Allows you to use Dropbox storage"
+ "spatie/flysystem-dropbox": "Allows you to use Dropbox storage",
+ "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications"
},
"type": "library",
"extra": {
@@ -871,20 +972,20 @@
"sftp",
"storage"
],
- "time": "2017-04-28T10:15:08+00:00"
+ "time": "2017-08-06T17:41:04+00:00"
},
{
"name": "maatwebsite/excel",
- "version": "2.1.17",
+ "version": "2.1.20",
"source": {
"type": "git",
"url": "https://github.com/Maatwebsite/Laravel-Excel.git",
- "reference": "14d5abf8e20563c80dd074fd7c8cf1c05bf51f1d"
+ "reference": "a8baf7de1030d261318f90fa5c273a47ef616b59"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/Maatwebsite/Laravel-Excel/14d5abf8e20563c80dd074fd7c8cf1c05bf51f1d.zip",
- "reference": "14d5abf8e20563c80dd074fd7c8cf1c05bf51f1d",
+ "url": "https://files.phpcomposer.com/files/Maatwebsite/Laravel-Excel/a8baf7de1030d261318f90fa5c273a47ef616b59.zip",
+ "reference": "a8baf7de1030d261318f90fa5c273a47ef616b59",
"shasum": ""
},
"require": {
@@ -900,7 +1001,7 @@
},
"require-dev": {
"mockery/mockery": "~0.9",
- "orchestra/testbench": "3.1.*",
+ "orchestra/testbench": "3.1.*|3.2.*|3.3.*|3.4.*|3.5.*",
"phpseclib/phpseclib": "~1.0",
"phpunit/phpunit": "~4.0"
},
@@ -911,6 +1012,16 @@
"illuminate/view": "5.0.*|5.1.*|5.2.*|5.3.*|5.4.*"
},
"type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "Maatwebsite\\Excel\\ExcelServiceProvider"
+ ],
+ "aliases": {
+ "Excel": "Maatwebsite\\Excel\\Facades\\Excel"
+ }
+ }
+ },
"autoload": {
"classmap": [
"src/Maatwebsite/Excel"
@@ -939,20 +1050,20 @@
"import",
"laravel"
],
- "time": "2017-04-04T18:28:12+00:00"
+ "time": "2017-07-26T18:04:04+00:00"
},
{
"name": "monolog/monolog",
- "version": "1.22.1",
+ "version": "1.23.0",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "1e044bc4b34e91743943479f1be7a1d5eb93add0"
+ "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/Seldaek/monolog/1e044bc4b34e91743943479f1be7a1d5eb93add0.zip",
- "reference": "1e044bc4b34e91743943479f1be7a1d5eb93add0",
+ "url": "https://files.phpcomposer.com/files/Seldaek/monolog/fd8c787753b3a2ad11bc60c063cff1358a32a3b4.zip",
+ "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4",
"shasum": ""
},
"require": {
@@ -973,7 +1084,7 @@
"phpunit/phpunit-mock-objects": "2.3.0",
"ruflin/elastica": ">=0.90 <3.0",
"sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
+ "swiftmailer/swiftmailer": "^5.3|^6.0"
},
"suggest": {
"aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
@@ -1017,7 +1128,7 @@
"logging",
"psr-3"
],
- "time": "2017-03-13T07:08:03+00:00"
+ "time": "2017-06-19T01:22:40+00:00"
},
{
"name": "mtdowling/cron-expression",
@@ -1118,16 +1229,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v3.0.5",
+ "version": "v3.1.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "2b9e2f71b722f7c53918ab0c25f7646c2013f17d"
+ "reference": "4d4896e553f2094e657fe493506dc37c509d4e2b"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/nikic/PHP-Parser/2b9e2f71b722f7c53918ab0c25f7646c2013f17d.zip",
- "reference": "2b9e2f71b722f7c53918ab0c25f7646c2013f17d",
+ "url": "https://files.phpcomposer.com/files/nikic/PHP-Parser/4d4896e553f2094e657fe493506dc37c509d4e2b.zip",
+ "reference": "4d4896e553f2094e657fe493506dc37c509d4e2b",
"shasum": ""
},
"require": {
@@ -1165,26 +1276,36 @@
"parser",
"php"
],
- "time": "2017-03-05T18:23:57+00:00"
+ "time": "2017-07-28T14:45:09+00:00"
},
{
"name": "overtrue/laravel-wechat",
- "version": "3.1.8",
+ "version": "3.1.10",
"source": {
"type": "git",
"url": "https://github.com/overtrue/laravel-wechat.git",
- "reference": "a9c0b0117326571fb164cb513ae9ec15ca910c46"
+ "reference": "70b655714b5445f9be7f03a1c66c1b6deb26ef33"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/overtrue/laravel-wechat/a9c0b0117326571fb164cb513ae9ec15ca910c46.zip",
- "reference": "a9c0b0117326571fb164cb513ae9ec15ca910c46",
+ "url": "https://files.phpcomposer.com/files/overtrue/laravel-wechat/70b655714b5445f9be7f03a1c66c1b6deb26ef33.zip",
+ "reference": "70b655714b5445f9be7f03a1c66c1b6deb26ef33",
"shasum": ""
},
"require": {
- "overtrue/wechat": "~3.0"
+ "overtrue/wechat": "^3.3.3"
},
"type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "Overtrue\\LaravelWechat\\ServiceProvider"
+ ],
+ "aliases": {
+ "EasyWeChat": "Overtrue\\LaravelWechat\\Facade"
+ }
+ }
+ },
"autoload": {
"psr-4": {
"Overtrue\\LaravelWechat\\": "src/"
@@ -1207,20 +1328,20 @@
"wechat",
"weixin"
],
- "time": "2017-03-21T08:59:43+00:00"
+ "time": "2017-07-03T09:53:13+00:00"
},
{
"name": "overtrue/socialite",
- "version": "1.0.25",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/overtrue/socialite.git",
- "reference": "234b3051e7864bc94744c7cfa2a9fb1999a9ca2c"
+ "reference": "0b943f2b2063c8c4f1672b4d2f4451e57d7415a7"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/overtrue/socialite/234b3051e7864bc94744c7cfa2a9fb1999a9ca2c.zip",
- "reference": "234b3051e7864bc94744c7cfa2a9fb1999a9ca2c",
+ "url": "https://files.phpcomposer.com/files/overtrue/socialite/0b943f2b2063c8c4f1672b4d2f4451e57d7415a7.zip",
+ "reference": "0b943f2b2063c8c4f1672b4d2f4451e57d7415a7",
"shasum": ""
},
"require": {
@@ -1257,31 +1378,31 @@
"wechat",
"weibo"
],
- "time": "2017-05-16T15:34:16+00:00"
+ "time": "2017-07-27T08:22:56+00:00"
},
{
"name": "overtrue/wechat",
- "version": "3.3.2",
+ "version": "3.3.12",
"source": {
"type": "git",
"url": "https://github.com/overtrue/wechat.git",
- "reference": "18f22de7a1d88d81a8e38ce03f23fa020369e8ed"
+ "reference": "7cd51ceb6b44245b724bb565f94d72de7150dfa8"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/overtrue/wechat/18f22de7a1d88d81a8e38ce03f23fa020369e8ed.zip",
- "reference": "18f22de7a1d88d81a8e38ce03f23fa020369e8ed",
+ "url": "https://files.phpcomposer.com/files/overtrue/wechat/7cd51ceb6b44245b724bb565f94d72de7150dfa8.zip",
+ "reference": "7cd51ceb6b44245b724bb565f94d72de7150dfa8",
"shasum": ""
},
"require": {
- "doctrine/cache": "~1.4",
+ "doctrine/cache": "^1.4",
"ext-openssl": "*",
- "guzzlehttp/guzzle": "~6.2.1",
+ "guzzlehttp/guzzle": "^6.2",
"monolog/monolog": "^1.17",
- "overtrue/socialite": ">=1.0.24",
+ "overtrue/socialite": "^1.0.25",
"php": ">=5.5.0",
- "pimple/pimple": "~3.0",
- "symfony/http-foundation": "~2.6|~2.7|~2.8|~3.0",
+ "pimple/pimple": "^3.0",
+ "symfony/http-foundation": "^2.6|^3.0",
"symfony/psr-http-message-bridge": "~0.3|^1.0"
},
"require-dev": {
@@ -1315,7 +1436,7 @@
"weixin",
"weixin-sdk"
],
- "time": "2017-04-27T04:10:13+00:00"
+ "time": "2017-08-01T09:38:23+00:00"
},
{
"name": "paragonie/random_compat",
@@ -1424,25 +1545,29 @@
},
{
"name": "pimple/pimple",
- "version": "v3.0.2",
+ "version": "v3.2.2",
"source": {
"type": "git",
"url": "https://github.com/silexphp/Pimple.git",
- "reference": "a30f7d6e57565a2e1a316e1baf2a483f788b258a"
+ "reference": "4d45fb62d96418396ec58ba76e6f065bca16e10a"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/silexphp/Pimple/a30f7d6e57565a2e1a316e1baf2a483f788b258a.zip",
- "reference": "a30f7d6e57565a2e1a316e1baf2a483f788b258a",
+ "url": "https://files.phpcomposer.com/files/silexphp/Pimple/4d45fb62d96418396ec58ba76e6f065bca16e10a.zip",
+ "reference": "4d45fb62d96418396ec58ba76e6f065bca16e10a",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": ">=5.3.0",
+ "psr/container": "^1.0"
+ },
+ "require-dev": {
+ "symfony/phpunit-bridge": "^3.2"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "3.2.x-dev"
}
},
"autoload": {
@@ -1466,7 +1591,56 @@
"container",
"dependency injection"
],
- "time": "2015-09-11T15:10:35+00:00"
+ "time": "2017-07-23T07:32:15+00:00"
+ },
+ {
+ "name": "psr/container",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/container.git",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://files.phpcomposer.com/files/php-fig/container/b7ce3b176482dbbc1245ebf52b181af44c2cf55f.zip",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Container\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common Container Interface (PHP FIG PSR-11)",
+ "homepage": "https://github.com/php-fig/container",
+ "keywords": [
+ "PSR-11",
+ "container",
+ "container-interface",
+ "container-interop",
+ "psr"
+ ],
+ "time": "2017-02-14T16:28:37+00:00"
},
{
"name": "psr/http-message",
@@ -1567,16 +1741,16 @@
},
{
"name": "psy/psysh",
- "version": "v0.8.5",
+ "version": "v0.8.11",
"source": {
"type": "git",
"url": "https://github.com/bobthecow/psysh.git",
- "reference": "38a9d21406597a0440690eafbcb0222f528c8ac6"
+ "reference": "b193cd020e8c6b66cea6457826ae005e94e6d2c0"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/bobthecow/psysh/38a9d21406597a0440690eafbcb0222f528c8ac6.zip",
- "reference": "38a9d21406597a0440690eafbcb0222f528c8ac6",
+ "url": "https://files.phpcomposer.com/files/bobthecow/psysh/b193cd020e8c6b66cea6457826ae005e94e6d2c0.zip",
+ "reference": "b193cd020e8c6b66cea6457826ae005e94e6d2c0",
"shasum": ""
},
"require": {
@@ -1606,7 +1780,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-develop": "0.9.x-dev"
+ "dev-develop": "0.8.x-dev"
}
},
"autoload": {
@@ -1636,20 +1810,20 @@
"interactive",
"shell"
],
- "time": "2017-05-17T06:49:19+00:00"
+ "time": "2017-07-29T19:30:02+00:00"
},
{
"name": "ramsey/uuid",
- "version": "3.6.1",
+ "version": "3.7.0",
"source": {
"type": "git",
"url": "https://github.com/ramsey/uuid.git",
- "reference": "4ae32dd9ab8860a4bbd750ad269cba7f06f7934e"
+ "reference": "0ef23d1b10cf1bc576e9d865a7e9c47982c5715e"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/ramsey/uuid/4ae32dd9ab8860a4bbd750ad269cba7f06f7934e.zip",
- "reference": "4ae32dd9ab8860a4bbd750ad269cba7f06f7934e",
+ "url": "https://files.phpcomposer.com/files/ramsey/uuid/0ef23d1b10cf1bc576e9d865a7e9c47982c5715e.zip",
+ "reference": "0ef23d1b10cf1bc576e9d865a7e9c47982c5715e",
"shasum": ""
},
"require": {
@@ -1718,7 +1892,58 @@
"identifier",
"uuid"
],
- "time": "2017-03-26T20:37:53+00:00"
+ "time": "2017-08-04T13:39:04+00:00"
+ },
+ {
+ "name": "simplesoftwareio/simple-qrcode",
+ "version": "1.5.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/SimpleSoftwareIO/simple-qrcode.git",
+ "reference": "0d8fbf73f7adc166ec5aabbf898b7327f6c69600"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://files.phpcomposer.com/files/SimpleSoftwareIO/simple-qrcode/0d8fbf73f7adc166ec5aabbf898b7327f6c69600.zip",
+ "reference": "0d8fbf73f7adc166ec5aabbf898b7327f6c69600",
+ "shasum": ""
+ },
+ "require": {
+ "bacon/bacon-qr-code": "1.0.*",
+ "ext-gd": "*",
+ "illuminate/support": ">=4.2.0",
+ "php": ">=5.4.0"
+ },
+ "require-dev": {
+ "mockery/mockery": "0.9.*",
+ "phpunit/phpunit": "~5"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-0": {
+ "SimpleSoftwareIO\\QrCode\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Simple Software LLC",
+ "email": "support@simplesoftware.io"
+ }
+ ],
+ "description": "Simple QrCode is a QR code generator made for Laravel.",
+ "homepage": "http://www.simplesoftware.io",
+ "keywords": [
+ "Simple",
+ "generator",
+ "laravel",
+ "qrcode",
+ "wrapper"
+ ],
+ "time": "2016-12-06T01:39:52+00:00"
},
{
"name": "swiftmailer/swiftmailer",
@@ -1776,16 +2001,16 @@
},
{
"name": "symfony/console",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "c80e63f3f5e3a331bfc25e6e9332b10422eb9b05"
+ "reference": "b0878233cb5c4391347e5495089c7af11b8e6201"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/console/c80e63f3f5e3a331bfc25e6e9332b10422eb9b05.zip",
- "reference": "c80e63f3f5e3a331bfc25e6e9332b10422eb9b05",
+ "url": "https://files.phpcomposer.com/files/symfony/console/b0878233cb5c4391347e5495089c7af11b8e6201.zip",
+ "reference": "b0878233cb5c4391347e5495089c7af11b8e6201",
"shasum": ""
},
"require": {
@@ -1798,6 +2023,7 @@
},
"require-dev": {
"psr/log": "~1.0",
+ "symfony/config": "~3.3",
"symfony/dependency-injection": "~3.3",
"symfony/event-dispatcher": "~2.8|~3.0",
"symfony/filesystem": "~2.8|~3.0",
@@ -1840,11 +2066,11 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2017-05-28T14:08:56+00:00"
+ "time": "2017-07-29T21:27:59+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
@@ -1897,16 +2123,16 @@
},
{
"name": "symfony/debug",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "ef5f19a7a68075a0bd05969a329ead3b0776fb7a"
+ "reference": "7c13ae8ce1e2adbbd574fc39de7be498e1284e13"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/debug/ef5f19a7a68075a0bd05969a329ead3b0776fb7a.zip",
- "reference": "ef5f19a7a68075a0bd05969a329ead3b0776fb7a",
+ "url": "https://files.phpcomposer.com/files/symfony/debug/7c13ae8ce1e2adbbd574fc39de7be498e1284e13.zip",
+ "reference": "7c13ae8ce1e2adbbd574fc39de7be498e1284e13",
"shasum": ""
},
"require": {
@@ -1949,20 +2175,20 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2017-05-27T16:02:27+00:00"
+ "time": "2017-07-28T15:27:31+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "a9f8b02b0ef07302eca92cd4bba73200b7980e9c"
+ "reference": "67535f1e3fd662bdc68d7ba317c93eecd973617e"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/event-dispatcher/a9f8b02b0ef07302eca92cd4bba73200b7980e9c.zip",
- "reference": "a9f8b02b0ef07302eca92cd4bba73200b7980e9c",
+ "url": "https://files.phpcomposer.com/files/symfony/event-dispatcher/67535f1e3fd662bdc68d7ba317c93eecd973617e.zip",
+ "reference": "67535f1e3fd662bdc68d7ba317c93eecd973617e",
"shasum": ""
},
"require": {
@@ -2012,20 +2238,20 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
- "time": "2017-05-04T12:23:07+00:00"
+ "time": "2017-06-09T14:53:08+00:00"
},
{
"name": "symfony/finder",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "30cb2a2c09627823a7243638dd456de4e2748fed"
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/finder/30cb2a2c09627823a7243638dd456de4e2748fed.zip",
- "reference": "30cb2a2c09627823a7243638dd456de4e2748fed",
+ "url": "https://files.phpcomposer.com/files/symfony/finder/baea7f66d30854ad32988c11a09d7ffd485810c4.zip",
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4",
"shasum": ""
},
"require": {
@@ -2061,20 +2287,20 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2017-05-25T23:10:31+00:00"
+ "time": "2017-06-01T21:01:25+00:00"
},
{
"name": "symfony/http-foundation",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "a3272c06d538bd48261e7d83308e7f84992d4ec8"
+ "reference": "49e8cd2d59a7aa9bfab19e46de680c76e500a031"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/http-foundation/a3272c06d538bd48261e7d83308e7f84992d4ec8.zip",
- "reference": "a3272c06d538bd48261e7d83308e7f84992d4ec8",
+ "url": "https://files.phpcomposer.com/files/symfony/http-foundation/49e8cd2d59a7aa9bfab19e46de680c76e500a031.zip",
+ "reference": "49e8cd2d59a7aa9bfab19e46de680c76e500a031",
"shasum": ""
},
"require": {
@@ -2114,20 +2340,20 @@
],
"description": "Symfony HttpFoundation Component",
"homepage": "https://symfony.com",
- "time": "2017-05-25T13:39:26+00:00"
+ "time": "2017-07-21T11:04:46+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "4ad34a0d20a5848c0fcbf6ff6a2ff1cd9cf4b9ed"
+ "reference": "db10d05f1d95e4168e638db7a81c79616f568ea5"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/http-kernel/4ad34a0d20a5848c0fcbf6ff6a2ff1cd9cf4b9ed.zip",
- "reference": "4ad34a0d20a5848c0fcbf6ff6a2ff1cd9cf4b9ed",
+ "url": "https://files.phpcomposer.com/files/symfony/http-kernel/db10d05f1d95e4168e638db7a81c79616f568ea5.zip",
+ "reference": "db10d05f1d95e4168e638db7a81c79616f568ea5",
"shasum": ""
},
"require": {
@@ -2140,7 +2366,8 @@
"conflict": {
"symfony/config": "<2.8",
"symfony/dependency-injection": "<3.3",
- "symfony/var-dumper": "<3.3"
+ "symfony/var-dumper": "<3.3",
+ "twig/twig": "<1.34|<2.4,>=2"
},
"require-dev": {
"psr/cache": "~1.0",
@@ -2199,20 +2426,20 @@
],
"description": "Symfony HttpKernel Component",
"homepage": "https://symfony.com",
- "time": "2017-05-29T21:02:12+00:00"
+ "time": "2017-08-01T10:25:59+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
+ "version": "v1.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/polyfill-mbstring/e79d363049d1c2128f133a2667e4f4190904f7f4.zip",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
+ "url": "https://files.phpcomposer.com/files/symfony/polyfill-mbstring/f29dca382a6485c3cbe6379f0c61230167681937.zip",
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937",
"shasum": ""
},
"require": {
@@ -2224,7 +2451,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
@@ -2258,20 +2485,20 @@
"portable",
"shim"
],
- "time": "2016-11-14T01:06:16+00:00"
+ "time": "2017-06-09T14:24:12+00:00"
},
{
"name": "symfony/polyfill-php56",
- "version": "v1.3.0",
+ "version": "v1.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php56.git",
- "reference": "1dd42b9b89556f18092f3d1ada22cb05ac85383c"
+ "reference": "bc0b7d6cb36b10cfabb170a3e359944a95174929"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/polyfill-php56/1dd42b9b89556f18092f3d1ada22cb05ac85383c.zip",
- "reference": "1dd42b9b89556f18092f3d1ada22cb05ac85383c",
+ "url": "https://files.phpcomposer.com/files/symfony/polyfill-php56/bc0b7d6cb36b10cfabb170a3e359944a95174929.zip",
+ "reference": "bc0b7d6cb36b10cfabb170a3e359944a95174929",
"shasum": ""
},
"require": {
@@ -2281,7 +2508,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
@@ -2314,20 +2541,20 @@
"portable",
"shim"
],
- "time": "2016-11-14T01:06:16+00:00"
+ "time": "2017-06-09T08:25:21+00:00"
},
{
"name": "symfony/polyfill-util",
- "version": "v1.3.0",
+ "version": "v1.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-util.git",
- "reference": "746bce0fca664ac0a575e465f65c6643faddf7fb"
+ "reference": "ebccbde4aad410f6438d86d7d261c6b4d2b9a51d"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/polyfill-util/746bce0fca664ac0a575e465f65c6643faddf7fb.zip",
- "reference": "746bce0fca664ac0a575e465f65c6643faddf7fb",
+ "url": "https://files.phpcomposer.com/files/symfony/polyfill-util/ebccbde4aad410f6438d86d7d261c6b4d2b9a51d.zip",
+ "reference": "ebccbde4aad410f6438d86d7d261c6b4d2b9a51d",
"shasum": ""
},
"require": {
@@ -2336,7 +2563,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
@@ -2366,20 +2593,20 @@
"polyfill",
"shim"
],
- "time": "2016-11-14T01:06:16+00:00"
+ "time": "2017-06-09T08:25:21+00:00"
},
{
"name": "symfony/process",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "8e30690c67aafb6c7992d6d8eb0d707807dd3eaf"
+ "reference": "07432804942b9f6dd7b7377faf9920af5f95d70a"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/process/8e30690c67aafb6c7992d6d8eb0d707807dd3eaf.zip",
- "reference": "8e30690c67aafb6c7992d6d8eb0d707807dd3eaf",
+ "url": "https://files.phpcomposer.com/files/symfony/process/07432804942b9f6dd7b7377faf9920af5f95d70a.zip",
+ "reference": "07432804942b9f6dd7b7377faf9920af5f95d70a",
"shasum": ""
},
"require": {
@@ -2415,7 +2642,7 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2017-05-22T12:32:03+00:00"
+ "time": "2017-07-13T13:05:09+00:00"
},
{
"name": "symfony/psr-http-message-bridge",
@@ -2479,16 +2706,16 @@
},
{
"name": "symfony/routing",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "3aa0c7d759a2c88f4dff47c3d6776e7380bb2c9a"
+ "reference": "4aee1a917fd4859ff8b51b9fd1dfb790a5ecfa26"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/routing/3aa0c7d759a2c88f4dff47c3d6776e7380bb2c9a.zip",
- "reference": "3aa0c7d759a2c88f4dff47c3d6776e7380bb2c9a",
+ "url": "https://files.phpcomposer.com/files/symfony/routing/4aee1a917fd4859ff8b51b9fd1dfb790a5ecfa26.zip",
+ "reference": "4aee1a917fd4859ff8b51b9fd1dfb790a5ecfa26",
"shasum": ""
},
"require": {
@@ -2553,20 +2780,20 @@
"uri",
"url"
],
- "time": "2017-05-24T11:35:23+00:00"
+ "time": "2017-07-21T17:43:13+00:00"
},
{
"name": "symfony/translation",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "dc3b2a0c6cfff60327ba1c043a82092735397543"
+ "reference": "35dd5fb003c90e8bd4d8cabdf94bf9c96d06fdc3"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/translation/dc3b2a0c6cfff60327ba1c043a82092735397543.zip",
- "reference": "dc3b2a0c6cfff60327ba1c043a82092735397543",
+ "url": "https://files.phpcomposer.com/files/symfony/translation/35dd5fb003c90e8bd4d8cabdf94bf9c96d06fdc3.zip",
+ "reference": "35dd5fb003c90e8bd4d8cabdf94bf9c96d06fdc3",
"shasum": ""
},
"require": {
@@ -2618,20 +2845,20 @@
],
"description": "Symfony Translation Component",
"homepage": "https://symfony.com",
- "time": "2017-05-22T07:42:36+00:00"
+ "time": "2017-06-24T16:45:30+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "568ce40d88b14f6b42aa48f50572cc4427be9757"
+ "reference": "b2623bccb969ad595c2090f9be498b74670d0663"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/var-dumper/568ce40d88b14f6b42aa48f50572cc4427be9757.zip",
- "reference": "568ce40d88b14f6b42aa48f50572cc4427be9757",
+ "url": "https://files.phpcomposer.com/files/symfony/var-dumper/b2623bccb969ad595c2090f9be498b74670d0663.zip",
+ "reference": "b2623bccb969ad595c2090f9be498b74670d0663",
"shasum": ""
},
"require": {
@@ -2643,7 +2870,7 @@
},
"require-dev": {
"ext-iconv": "*",
- "twig/twig": "~1.20|~2.0"
+ "twig/twig": "~1.34|~2.4"
},
"suggest": {
"ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
@@ -2686,7 +2913,7 @@
"debug",
"dump"
],
- "time": "2017-05-22T17:32:12+00:00"
+ "time": "2017-07-28T06:06:09+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",
@@ -3097,22 +3324,22 @@
},
{
"name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
+ "version": "3.2.1",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
+ "reference": "183824db76118b9dddffc7e522b91fa175f75119"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/phpDocumentor/ReflectionDocBlock/8331b5efe816ae05461b7ca1e721c01b46bafb3e.zip",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
+ "url": "https://files.phpcomposer.com/files/phpDocumentor/ReflectionDocBlock/183824db76118b9dddffc7e522b91fa175f75119.zip",
+ "reference": "183824db76118b9dddffc7e522b91fa175f75119",
"shasum": ""
},
"require": {
"php": ">=5.5",
"phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
+ "phpdocumentor/type-resolver": "^0.3.0",
"webmozart/assert": "^1.0"
},
"require-dev": {
@@ -3138,24 +3365,24 @@
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30T07:12:33+00:00"
+ "time": "2017-08-04T20:55:59+00:00"
},
{
"name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
+ "version": "0.3.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
+ "reference": "fb3933512008d8162b3cdf9e18dba9309b7c3773"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/phpDocumentor/TypeResolver/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb.zip",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
+ "url": "https://files.phpcomposer.com/files/phpDocumentor/TypeResolver/fb3933512008d8162b3cdf9e18dba9309b7c3773.zip",
+ "reference": "fb3933512008d8162b3cdf9e18dba9309b7c3773",
"shasum": ""
},
"require": {
- "php": ">=5.5",
+ "php": "^5.5 || ^7.0",
"phpdocumentor/reflection-common": "^1.0"
},
"require-dev": {
@@ -3185,7 +3412,7 @@
"email": "me@mikevanriel.com"
}
],
- "time": "2016-11-25T06:54:22+00:00"
+ "time": "2017-06-03T08:32:36+00:00"
},
{
"name": "phpspec/prophecy",
@@ -3501,16 +3728,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "5.7.20",
+ "version": "5.7.21",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "3cb94a5f8c07a03c8b7527ed7468a2926203f58b"
+ "reference": "3b91adfb64264ddec5a2dee9851f354aa66327db"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit/3cb94a5f8c07a03c8b7527ed7468a2926203f58b.zip",
- "reference": "3cb94a5f8c07a03c8b7527ed7468a2926203f58b",
+ "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit/3b91adfb64264ddec5a2dee9851f354aa66327db.zip",
+ "reference": "3b91adfb64264ddec5a2dee9851f354aa66327db",
"shasum": ""
},
"require": {
@@ -3579,20 +3806,20 @@
"testing",
"xunit"
],
- "time": "2017-05-22T07:42:55+00:00"
+ "time": "2017-06-21T08:11:54+00:00"
},
{
"name": "phpunit/phpunit-mock-objects",
- "version": "3.4.3",
+ "version": "3.4.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "3ab72b65b39b491e0c011e2e09bb2206c2aa8e24"
+ "reference": "a23b761686d50a560cc56233b9ecf49597cc9118"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit-mock-objects/3ab72b65b39b491e0c011e2e09bb2206c2aa8e24.zip",
- "reference": "3ab72b65b39b491e0c011e2e09bb2206c2aa8e24",
+ "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit-mock-objects/a23b761686d50a560cc56233b9ecf49597cc9118.zip",
+ "reference": "a23b761686d50a560cc56233b9ecf49597cc9118",
"shasum": ""
},
"require": {
@@ -3638,7 +3865,7 @@
"mock",
"xunit"
],
- "time": "2016-12-08T20:27:08+00:00"
+ "time": "2017-06-30T09:13:00+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
@@ -4155,16 +4382,16 @@
},
{
"name": "symfony/yaml",
- "version": "v3.3.0",
+ "version": "v3.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "885db865f6b2b918404a1fae28f9ac640f71f994"
+ "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed"
},
"dist": {
"type": "zip",
- "url": "https://files.phpcomposer.com/files/symfony/yaml/885db865f6b2b918404a1fae28f9ac640f71f994.zip",
- "reference": "885db865f6b2b918404a1fae28f9ac640f71f994",
+ "url": "https://files.phpcomposer.com/files/symfony/yaml/ddc23324e6cfe066f3dd34a37ff494fa80b617ed.zip",
+ "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed",
"shasum": ""
},
"require": {
@@ -4206,7 +4433,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2017-05-28T10:56:20+00:00"
+ "time": "2017-07-23T12:43:26+00:00"
},
{
"name": "webmozart/assert",
diff --git a/config/app.php b/config/app.php
index 4e8afcf..3cfd63d 100644
--- a/config/app.php
+++ b/config/app.php
@@ -177,7 +177,8 @@ return [
App\Providers\EventServiceProvider::class,
App\Providers\RouteServiceProvider::class,
- 'Maatwebsite\Excel\ExcelServiceProvider', //Excel导入导出
+ SimpleSoftwareIO\QrCode\QrCodeServiceProvider::class, //Simple QrCode By FLi
+ 'Maatwebsite\Excel\ExcelServiceProvider', //Excel导入导出 By FLi
],
/*
@@ -226,7 +227,8 @@ return [
'Validator' => Illuminate\Support\Facades\Validator::class,
'View' => Illuminate\Support\Facades\View::class,
'Image' => Intervention\Image\Facades\Image::class, //图片处理
- 'Excel' => Maatwebsite\Excel\Facades\Excel::class, //Excel导入导出
+ 'Excel' => Maatwebsite\Excel\Facades\Excel::class, //Excel导入导出 By FLi
+ 'QrCode' => SimpleSoftwareIO\QrCode\Facades\QrCode::class, //Simple QrCode By FLi
],
];
diff --git a/routes/web.php b/routes/web.php
index 20aa0e2..08ad983 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -187,10 +187,24 @@ Route::group(['prefix' => 'dataapi', 'namespace' => 'Api', 'middleware' => ['web
//接口路由,需token验证
Route::group(['prefix' => 'dataapi', 'namespace' => 'Api', 'middleware' => ['web','token']], function () {
//用户中心
+ Route::post('/user_signin', 'UserController@signin');
+ Route::get('/user_info', 'UserController@userInfo');
+ Route::get('/user_list', 'UserController@userList');
+ Route::get('/user_money_list', 'UserMoneyController@userMoneyList'); //余额明细
+ Route::post('/user_money_add', 'UserMoneyController@userMoneyAdd'); //添加余额明细
//浏览记录
//商品
+ Route::get('/goods_list', 'GoodsController@goodsList'); //商品列表
+ Route::get('/goodstype_list', 'GoodsTypeController@goodsTypeList'); //商品分类列表
//商品评价
+ Route::get('/goods_comment_list', 'CommentController@goodsCommentList'); //商品评价列表
+ Route::post('/goods_comment_add', 'CommentController@goodsCommentAdd'); //商品评价添加
+ Route::post('/goods_comment_update', 'CommentController@goodsCommentUpdate'); //商品评价修改
+ Route::post('/goods_comment_delete', 'CommentController@goodsCommentDelete'); //商品评价删除
//商品收藏
+ Route::get('/collect_goods_list', 'CollectGoodsController@collectGoodsList'); //收藏商品列表
+ Route::post('/collect_goods_add', 'CollectGoodsController@collectGoodsAdd'); //收藏商品
+ Route::post('/collect_goods_delete', 'CollectGoodsController@collectGoodsDelete'); //取消收藏商品
//订单
//购物车
@@ -198,17 +212,22 @@ Route::group(['prefix' => 'dataapi', 'namespace' => 'Api', 'middleware' => ['web
//分销
//积分
-
+ Route::get('/user_point_list', 'UserPointController@userPointList');
+ Route::post('/user_point_add', 'UserPointController@userPointAdd');
//优惠券
//微信
-
+ //意见反馈
+ Route::get('/feedback_list', 'FeedBackController@feedbackList');
+ Route::post('/feedback_add', 'FeedBackController@feedbackAdd');
//其它
+ Route::get('/verifycode_check', 'VerifyCodeController@check'); //验证码校验
+ Route::get('/andriod_upgrade', 'IndexController@andriodUpgrade'); //安卓升级
//图片上传
//二维码
-
+ Route::get('/create_simple_qrcode', 'QrcodeController@createSimpleQrcode');
//轮播图
Route::get('/slide_list', 'SlideController@slideList');
//收货地址
diff --git a/说明.txt b/说明.txt
index 31a476b..0b72700 100644
--- a/说明.txt
+++ b/说明.txt
@@ -34,8 +34,11 @@ php artisan key:generate
+Simple QrCodeĵhttps://www.simplesoftware.io/docs/simple-qrcode/zh
+$qrcode = new \SimpleSoftwareIO\QrCode\BaconQrCodeGenerator;
+return $qrcode->size(500)->generate('Make a qrcode without Laravel!');
-
+ֱʾɶάͼƬreturn '';