Browse Source

Merge branch 'phoenix' of ssh://120.24.33.109:11022/hyzjshwo/lanzu_api_hyperf into phoenix

master
weigang 5 years ago
parent
commit
a5f8f180a8
  1. 3
      app/Controller/v3/BalanceStatementController.php
  2. 7
      app/Controller/v3/CouponController.php
  3. 3
      app/Controller/v3/HomeController.php
  4. 9
      app/Controller/v3/OrderOnlineController.php
  5. 5
      app/Controller/v3/ShopCartController.php
  6. 12
      app/Controller/v3/UserAddressController.php
  7. 36
      app/Request/v3/UserAddressRequest.php
  8. 29
      app/Service/v3/Implementations/CouponRecService.php
  9. 2
      app/Service/v3/Interfaces/CouponRecServiceInterface.php

3
app/Controller/v3/BalanceStatementController.php

@ -3,6 +3,7 @@
namespace App\Controller\v3;
use App\Controller\BaseController;
use App\Request\v3\UserRequest;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\RevenueListServiceInterface;
use App\Service\v3\Interfaces\WithdrawalListServiceInterface;
@ -20,7 +21,7 @@ class BalanceStatementController extends BaseController
* @var WithdrawalListServiceInterface
*/
protected $withdrawalListService;
public function getRevenueListByUser()
public function getRevenueListByUser(UserRequest $request)
{
$userId = $this->request->input('user_id',0);
$page = $this->request->input('page',0);

7
app/Controller/v3/CouponController.php

@ -12,6 +12,7 @@ declare(strict_types=1);
namespace App\Controller\v3;
use App\Request\v3\UserRequest;
use Hyperf\Di\Annotation\Inject;
use App\Controller\BaseController;
use App\Service\v3\Interfaces\CouponRecServiceInterface;
@ -58,7 +59,7 @@ class CouponController extends BaseController
* 获取用户当前订单可用的优惠券列表
* 按分类(1订单 等优惠)分组返回
*/
public function getListByUser()
public function getListByUser(UserRequest $request)
{
$userId = $this->request->input('user_id');
$page = $this->request->input('page');
@ -68,8 +69,8 @@ class CouponController extends BaseController
* $type unused 未使用 used 已使用 expired已失效
*/
$res = $this->couponRecService->getListByUser($userId,$type,$page,$pagesize);
$res['coupon_list'] = $this->couponRecService->getListByUser($userId,$type,$page,$pagesize);
$res['statistics'] = $this->couponRecService->statistics($userId);
return $this->success($res);
}

3
app/Controller/v3/HomeController.php

@ -178,7 +178,8 @@ class HomeController extends BaseController
}
$data['user']['collection_count'] = $this->collectStoreService->countByUser($params['user_id']);
$data['user']['coupon_count'] = $this->couponRecService->countAvailableByUser($params['user_id']);
$couponStatistics = $this->couponRecService->statistics($params['user_id']);
$data['user']['coupon_count'] = $couponStatistics['unused'];
$data['user']['role'] = $roles;
$data['badge'] = $this->badgeService->allByUserOrder($params['user_id']);

9
app/Controller/v3/OrderOnlineController.php

@ -11,6 +11,7 @@ use App\Model\v3\OrderMain;
use App\Request\v3\OrderOnlineDetailRequest;
use App\Request\v3\OrderOnlineRequest;
use App\Request\v3\OrderOnlineStateRequest;
use App\Request\v3\UserRequest;
use App\Service\v3\Implementations\PaymentService;
use App\Service\v3\Interfaces\CouponRecServiceInterface;
use App\Service\v3\Interfaces\SeparateAccountsServiceInterface;
@ -75,11 +76,11 @@ class OrderOnlineController extends BaseController
* 配送费独立接口 可根据距离动态计算费用
* 增值服务接口
* */
public function review()
public function review(UserRequest $request)
{
$userId = $this->request->input('user_id');
$marketId = $this->request->input('market_id');
$shopcartIds = $this->request->input('shopcart_ids');
$userId = $this->request->input('user_id','');
$marketId = $this->request->input('market_id','');
$shopcartIds = $this->request->input('shopcart_ids','');
//判断用户有没有绑定手机
$telExists = $this->userBindTelService->check($userId);

5
app/Controller/v3/ShopCartController.php

@ -3,6 +3,7 @@
namespace App\Controller\v3;
use App\Controller\BaseController;
use App\Request\v3\UserRequest;
use App\Service\v3\Interfaces\InitialDeliveryServiceInterface;
use Hyperf\Di\Annotation\Inject;
use App\Service\v3\Interfaces\ShopCartServiceInterface;
@ -19,7 +20,7 @@ class ShopCartController extends BaseController
* @var InitialDeliveryServiceInterface
*/
protected $intialDeliveryService;
public function detail()
public function detail(UserRequest $request)
{
$userId = $this->request->input('user_id');
$marketId = $this->request->input('market_id');
@ -36,7 +37,7 @@ class ShopCartController extends BaseController
// return $this->success($res);
}
public function info()
public function info(UserRequest $request)
{
$userId = $this->request->input('user_id');
$marketId = $this->request->input('market_id');

12
app/Controller/v3/UserAddressController.php

@ -4,7 +4,9 @@
namespace App\Controller\v3;
use App\Controller\BaseController;
use App\Request\v3\UserAddressRequest;
use App\Request\v3\UserAddressUpdateRequest;
use App\Request\v3\UserRequest;
use App\Service\v3\Interfaces\UserAddressServiceInterface;
use Hyperf\Di\Annotation\Inject;
class UserAddressController extends BaseController
@ -31,28 +33,28 @@ class UserAddressController extends BaseController
return $this->success($res);
}
public function get()
public function get(UserAddressRequest $request)
{
$userAddressId = $this->request->input('user_address_id');
$res = $this->userAddressService->get($userAddressId);
return $this->success($res);
}
public function delete()
public function delete(UserAddressRequest $request)
{
$userAddressId = $this->request->input('user_address_id');
$res = $this->userAddressService->undo($userAddressId);
return $this->success($res);
}
public function getList()
public function getList(UserRequest $request)
{
$userId = $this->request->input('user_id');
$res = $this->userAddressService->getList($userId);
return $this->success($res);
}
public function setDefault()
public function setDefault(UserAddressRequest $request)
{
$userId = $this->request->input('user_id');
$userAddressId = $this->request->input('user_address_id');
@ -60,7 +62,7 @@ class UserAddressController extends BaseController
return $this->success($res);
}
public function getAddressAndDistributionPrice()
public function getAddressAndDistributionPrice(UserAddressRequest $request)
{
$userAddressId = $this->request->input('user_address_id');
$marketId = $this->request->input('market_id');

36
app/Request/v3/UserAddressRequest.php

@ -0,0 +1,36 @@
<?php
declare(strict_types=1);
namespace App\Request\v3;
use App\Request\BaseFormRequest;
class UserAddressRequest extends BaseFormRequest
{
/**
* Get the validation rules that apply to the request.
*/
public function rules(): array
{
return [
'user_address_id' => 'required|nonempty|integer',
];
}
/**
* @return array
*/
public function messages(): array
{
return [
'*.*' => ':attribute无效',
];
}
public function attributes(): array
{
return parent::attributes();
}
}

29
app/Service/v3/Implementations/CouponRecService.php

@ -155,7 +155,7 @@ class CouponRecService implements CouponRecServiceInterface
//拼接时间文字提示
$coupon['time_text'] = date("Y-m-d H:i:s",$coupon['usable_start_time']). ' - ' .date("Y-m-d H:i:s",$coupon['usable_end_time']);
}
return ['has_more_pages' => $paginate->hasMorePages(), 'coupon_list' => $couponList['data']];
return ['has_more_pages' => $paginate->hasMorePages(), 'list' => $couponList['data']];
}
/**
@ -285,12 +285,29 @@ class CouponRecService implements CouponRecServiceInterface
}
/**
* @inheritDoc
* @param $userId
* @return mixed
*/
public function countAvailableByUser($userId)
public function statistics($userId)
{
$coupons = $this->getListByUser($userId,'unused',1,9999);
$numberRemain= (array_column($coupons['coupon_list'], 'number_remain'));
return array_sum($numberRemain);
//未使用
$res['unused'] = 0;
//已使用
$res['used'] = 0;
//已过期
$res['expired'] = 0;
$coupons = CouponRec::query()
->with('coupon')
->where('user_id',$userId)
->get();
foreach ($coupons as $coupon){
if($coupon->coupon->usable_end_time < time() || $coupon->coupon->status != 1){
$res['expired'] += $coupon->number_remain;
}else{
$res['unused'] += $coupon->number_remain;
}
$res['used'] += $coupon->used_num;
}
return $res;
}
}

2
app/Service/v3/Interfaces/CouponRecServiceInterface.php

@ -15,5 +15,5 @@ interface CouponRecServiceInterface
* @param $userId
* @return mixed
*/
public function countAvailableByUser($userId);
public function statistics($userId);
}
Loading…
Cancel
Save