Browse Source

Merge branch 'revenue_fix'

master
Lemon 5 years ago
parent
commit
152ae4afa3
  1. 3
      app/Controller/v3/BalanceStatementController.php
  2. 5
      app/Model/v3/FinancialRecord.php
  3. 22
      app/Service/v3/Implementations/RevenueListService.php
  4. 2
      app/Service/v3/Interfaces/RevenueListServiceInterface.php

3
app/Controller/v3/BalanceStatementController.php

@ -24,6 +24,7 @@ class BalanceStatementController extends BaseController
public function getRevenueListByUser(UserRequest $request)
{
$userId = $this->request->input('user_id',0);
$tab = $this->request->input('tab','');
$page = $this->request->input('page',0);
$pagesize = $this->request->input('pagesize',0);
$startTime = $this->request->input('start_time','');
@ -36,7 +37,7 @@ class BalanceStatementController extends BaseController
$endTime = strtotime($endTime.' 23:59:59');
}
return $this->success($this->revenueListService->getListByUser($userId, $page, $pagesize ,$startTime,$endTime));
return $this->success($this->revenueListService->getListByUser($userId, $tab,$page, $pagesize ,$startTime,$endTime));
}
public function getWithdrawalListByStore()

5
app/Model/v3/FinancialRecord.php

@ -76,6 +76,11 @@ class FinancialRecord extends Model
const MONEY_TYPE_CS_WITHDRAW = 104; // 社区提现类型
const MONEY_TYPE_STORE_WITHDRAW = 105; // 商户提现类型
const MONEY_TYPE_STORE_OL_ORDER_DIRECT_REFUND = 106; // 商户订单退款(直接退)
//线上订单 包含收入和退款
const MONEY_TYPE_STORE_ORDER_ONLINE = [self::MONEY_TYPE_STORE_OL_ORDER_COMP, self::MONEY_TYPE_STORE_OL_ORDER_DIRECT_REFUND];
//商户奖励
const MONEY_TYPE_STORE_REWARD = [self::MONEY_TYPE_STORE_PLAT_NEW_USER, self::MONEY_TYPE_STORE_FIRST_ORDER];
/**
* 状态

22
app/Service/v3/Implementations/RevenueListService.php

@ -24,17 +24,29 @@ class RevenueListService implements RevenueListServiceInterface
// TODO: Implement undo() method.
}
public function getListByUser($userId, $page=1, $pagesize=10 ,$startTime = '',$endTime = '')
public function getListByUser($userId,$tab ,$page=1, $pagesize=10 ,$startTime = '',$endTime = '')
{
$financialRecord = new FinancialRecord();
$mod = bcmod((string)$userId, '5', 0);
$financialRecord->suffix($mod);
$builder = $financialRecord->where('user_id',$userId)
//->where('money_type','<',100)
->where('user_type','=',UserType::STORE);
// if(!empty($startTime) && !empty($endTime)){
// $builder->whereBetween('created_at',[strtotime($startTime.' 00:00:00'),strtotime($endTime.' 23:59:59')]);
// }
switch ($tab) {
case 'all':
break;
case 'online':
$builder->whereIn('money_type', $financialRecord::MONEY_TYPE_STORE_ORDER_ONLINE);
break;
case 'offline':
$builder->where('money_type', $financialRecord::MONEY_TYPE_STORE_OFL_ORDER_COMP);
break;
case 'withdraw':
$builder->where('money_type', $financialRecord::MONEY_TYPE_STORE_WITHDRAW);
break;
case 'reward':
$builder->whereIn('money_type', $financialRecord::MONEY_TYPE_STORE_REWARD);
break;
}
if (!empty($startTime)) {
$builder->where('created_at', '>=', $startTime);

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

@ -12,7 +12,7 @@ interface RevenueListServiceInterface
public function undo();
public function getListByUser($userId, $page=1, $pagesize=10 ,$startTime = '',$endTime = '');
public function getListByUser($userId, $tab,$page=1, $pagesize=10 ,$startTime = '',$endTime = '');
public function getRevenueByUser($userId,$type = [],$startTime = '',$endTime = '');
}
Loading…
Cancel
Save