From cbb5f4577ec6282e86a420300a602664be9985a1 Mon Sep 17 00:00:00 2001 From: Hsh <1746433624@qq.com> Date: Wed, 23 Oct 2019 17:52:56 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=95=86=E5=93=81sku?= =?UTF-8?q?=E7=AD=89=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Api/Goods/GoodsController.php | 40 ++++++++++++++++++ .../Transformers/GetGoodsSkuTransformer.php | 14 +++++++ app/Repositories/GoodsRepository.php | 42 +++++++++++++++++++ routes/api.php | 4 ++ 4 files changed, 100 insertions(+) create mode 100644 app/Http/Transformers/GetGoodsSkuTransformer.php diff --git a/app/Http/Controllers/Api/Goods/GoodsController.php b/app/Http/Controllers/Api/Goods/GoodsController.php index 62ae1c5..7bb4a4b 100644 --- a/app/Http/Controllers/Api/Goods/GoodsController.php +++ b/app/Http/Controllers/Api/Goods/GoodsController.php @@ -10,6 +10,7 @@ namespace App\Http\Controllers\Api\Goods; use App\Http\Controllers\Api\BaseAdminController; use App\Repositories\GoodsRepository; +use App\Transformers\Admin\GetGoodsSkuTransformer; use App\Transformers\GetGoodsCategoryPageTransformer; use App\Transformers\GetGoodsPageTransformer; use App\Transformers\GetGoodsListTransformer; @@ -83,12 +84,23 @@ class GoodsController extends BaseAdminController public function addGoods(Request $request){ $data = $request->all(); + if($startTime = data_get($data, 'startTime') && $endTime = data_get($data, 'endTime')){ + if($endTime <= $startTime){ + $this->response->errorBadRequest('结拍时间不能小于开拍时间'); + } + } + data_set($data, 'createBy', Auth::user()->nickname ); $add = $this->goodsRepository->addGoodsRepository($data); return $this->response->accepted('', 'success'); } + /** + * 获取商品分页列表 + * @param Request $request + * @return \Dingo\Api\Http\Response + */ public function getGoodsPage(Request $request){ $limit = $request->get('limit', 0); $data = $request->except(['limit']); @@ -99,6 +111,34 @@ class GoodsController extends BaseAdminController return $this->response->paginator($page, new GetGoodsPageTransformer()); } + /** + * 获取商品的sku列表 + * @param Request $request + * @return \Dingo\Api\Http\Response + */ + public function getGoodsSku(Request $request){ + $goodsId = $request->id; + $keyword = $request->get('keyword'); + + $page = $this->goodsRepository->getGoodsSkuRepository($goodsId,$keyword); + + return $this->response->collection($page, new GetGoodsSkuTransformer()); + } + + /** + * @param Request $request + * @return \Dingo\Api\Http\Response + */ + public function updateGoodsSku(Request $request){ + if( !$data = $request->all() ){ + $this->response->errorBadRequest('缺少更新参数'); + } + + $this->goodsRepository->updateGoodsSkuRepository($data); + + return $this->response->accepted('', 'success'); + } + /** * 保存拍卖信息 * @param Request $request diff --git a/app/Http/Transformers/GetGoodsSkuTransformer.php b/app/Http/Transformers/GetGoodsSkuTransformer.php new file mode 100644 index 0000000..652498f --- /dev/null +++ b/app/Http/Transformers/GetGoodsSkuTransformer.php @@ -0,0 +1,14 @@ +toArray(); + } +} \ No newline at end of file diff --git a/app/Repositories/GoodsRepository.php b/app/Repositories/GoodsRepository.php index 0184d7a..f053fde 100644 --- a/app/Repositories/GoodsRepository.php +++ b/app/Repositories/GoodsRepository.php @@ -13,6 +13,7 @@ use App\Models\AuctionGoodsInfo; use App\Models\Goods; use App\Models\GoodsCategory; use App\Models\GoodsSku; +use Carbon\Carbon; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Log; @@ -142,11 +143,52 @@ class GoodsRepository extends BaseRepositories } } + /** + * @param array $data + * @param int $limit + * @return mixed + */ public function getGoodsPageRepository(array $data, int $limit = LIMIT_PAGE){ return $this->goods ->paginate($limit); } + /** + * @param $goodsId + * @return mixed + */ + public function getGoodsSkuRepository($goodsId,$keyword){ + return $this->goodsSku + ->when($keyword, function ($q)use($keyword){ + $q->where('title', 'like', '%'.$keyword.'%') + ->orWhere('description', 'like', '%'.$keyword.'%'); + }) + ->where('goodsId',$goodsId) + ->get(); + } + + /** + * 更新sku信息 + * @param $data + * @return bool + */ + public function updateGoodsSkuRepository($data){ + DB::beginTransaction(); + try { + + foreach ($data as $datum){ + data_set($datum, 'updated_at', Carbon::now()); + $this->goodsSku->where('id', $datum['id'])->update($datum); + } + + DB::commit(); + return true; + } catch (\Exception $e) { + DB::rollback(); + $this->response->errorInternal($e->getMessage());exit; + } + } + /** * 保存拍卖信息 * @param array $data diff --git a/routes/api.php b/routes/api.php index b5c34bc..3703b7b 100644 --- a/routes/api.php +++ b/routes/api.php @@ -96,6 +96,10 @@ $api->version('v1', ['namespace' => 'App\Http\Controllers\Api'], function ($api) $api->post('goods', ['as' => 'goods.post', 'uses' => 'Goods\GoodsController@addGoods']); //获取商品分页列表 $api->get('goods/page', ['as' => 'goods.page.get', 'uses' => 'Goods\GoodsController@getGoodsPage']); + //获取商品分页列表 + $api->get('goods/sku/{id}', ['as' => 'goods.sku.get', 'uses' => 'Goods\GoodsController@getGoodsSku']); + //更新商品分页列表 + $api->patch('goods/sku', ['as' => 'goods.sku.patch', 'uses' => 'Goods\GoodsController@updateGoodsSku']); }); }); }); -- Gitee From 290332822ed8a07e4b3444090108293a7e7a66eb Mon Sep 17 00:00:00 2001 From: Hsh <1746433624@qq.com> Date: Thu, 24 Oct 2019 16:38:29 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=AE=9E=E5=90=8D=E8=AE=A4=E8=AF=81=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Api/UserController.php | 17 ++++++++ .../GetUserAuthenticationTransformer.php | 14 ++++++ app/Models/User.php | 2 +- app/Models/UserAuthentication.php | 43 +++++++++++++++++++ app/Repositories/UserRepository.php | 19 +++++++- app/Services/UserService.php | 11 ++++- routes/api.php | 2 + 7 files changed, 105 insertions(+), 3 deletions(-) create mode 100644 app/Http/Transformers/GetUserAuthenticationTransformer.php create mode 100644 app/Models/UserAuthentication.php diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php index 625995f..d9fddd1 100644 --- a/app/Http/Controllers/Api/UserController.php +++ b/app/Http/Controllers/Api/UserController.php @@ -19,6 +19,8 @@ use App\Http\Transformers\Admin\ManageUserPageTransformer; use App\Http\Transformers\CurrentUserTransformer; use App\Http\Transformers\UserPageTransformer; use App\Http\Transformers\UserTransformer; +use App\Transformers\Admin\GetUserAuthenticationTransformer; +use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; /** @@ -146,4 +148,19 @@ class UserController extends BaseAdminController $this->response->errorInternal($data['msg']); } + + /** + * 获取用户实名认证信息 + * @param Request $request + * @return \Dingo\Api\Http\Response + */ + public function getUserAuthentication(Request $request){ + $userId = $request->id; + + //接收参数 + $authentication = $this->user_service->getUserAuthentication($userId); + + return $this->response->collection($authentication, new GetUserAuthenticationTransformer()); + + } } \ No newline at end of file diff --git a/app/Http/Transformers/GetUserAuthenticationTransformer.php b/app/Http/Transformers/GetUserAuthenticationTransformer.php new file mode 100644 index 0000000..6b27cf8 --- /dev/null +++ b/app/Http/Transformers/GetUserAuthenticationTransformer.php @@ -0,0 +1,14 @@ +toArray(); + } +} \ No newline at end of file diff --git a/app/Models/User.php b/app/Models/User.php index c40c25c..5ee00e2 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -64,7 +64,7 @@ class User extends Authenticatable implements JWTSubject * @return \Illuminate\Database\Eloquent\Relations\HasMany */ public function loginLog(){ - return $this->hasMany(UserLoginLog::class); + return $this->hasMany(UserLoginLog::class, 'userId', 'id'); } /** diff --git a/app/Models/UserAuthentication.php b/app/Models/UserAuthentication.php new file mode 100644 index 0000000..2214878 --- /dev/null +++ b/app/Models/UserAuthentication.php @@ -0,0 +1,43 @@ +user = $user; + $this->userAuthentication = $userAuthentication; } /** @@ -137,4 +145,13 @@ class UserRepository return $user; } + + /** + * 获取用户实名认证信息 + * @param $userId + * @return mixed + */ + public function getUserAuthentication($userId){ + return $this->userAuthentication->where('userId',$userId)->get(); + } } \ No newline at end of file diff --git a/app/Services/UserService.php b/app/Services/UserService.php index 6708089..e317c9b 100644 --- a/app/Services/UserService.php +++ b/app/Services/UserService.php @@ -8,11 +8,11 @@ namespace App\Services; +use App\Traits\UserInfo; use App\Repositories\PermissionRepository; use App\Repositories\RoleRepository; use App\Repositories\UserRepository; use App\Services\Admin\PermissionService; -use App\Traits\UserInfo; use Illuminate\Support\Facades\Log; /** @@ -181,4 +181,13 @@ class UserService extends BaseAdminService return $this->returnServerData(true, '', $user); } } + + /** + * 获取用户实名认证信息 + * @param int $userId + * @return mixed + */ + public function getUserAuthentication(int $userId){ + return $this->userRepository->getUserAuthentication($userId); + } } \ No newline at end of file diff --git a/routes/api.php b/routes/api.php index 3703b7b..40c6b41 100644 --- a/routes/api.php +++ b/routes/api.php @@ -38,6 +38,8 @@ $api->version('v1', ['namespace' => 'App\Http\Controllers\Api'], function ($api) $api->get('user/current', 'UserController@current'); //获取用户列表 $api->get('user/page', 'UserController@userPage'); + //获取用户实名认证信息 + $api->get('user/authentication/{id}', 'UserController@getUserAuthentication'); /****用户登录日志相关****/ //获取用户登录日志列表 -- Gitee