mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-10-30 14:31:04 +00:00
【程序目录】处理判断
This commit is contained in:
parent
ec47994f61
commit
8b61254242
@ -440,4 +440,15 @@ class UserBillController
|
||||
$uid = (int)$request->uid();
|
||||
return app('json')->success($this->services->brokerage_rank($uid, $data['type']));
|
||||
}
|
||||
|
||||
/**
|
||||
* 事业部/代理商推广订单
|
||||
* @param Request $request
|
||||
* @return mixed
|
||||
*/
|
||||
public function divisionOrder(Request $request)
|
||||
{
|
||||
$uid = (int)$request->uid();
|
||||
return app('json')->successful($this->services->divisionOrder($uid));
|
||||
}
|
||||
}
|
||||
|
||||
@ -181,6 +181,7 @@ Route::group(function () {
|
||||
Route::get('integral/list', 'v1.user.UserBillController/integral_list')->name('integralList');//积分记录
|
||||
Route::get('user/routine_code', 'v1.user.UserBillController/getRoutineCode')->name('getRoutineCode');//小程序二维码
|
||||
Route::get('user/spread_info', 'v1.user.UserBillController/getSpreadInfo')->name('getSpreadInfo');//获取分销背景等信息
|
||||
Route::post('division/order', 'v1.user.UserBillController/divisionOrder')->name('divisionOrder');//事业部推广订单
|
||||
//提现类
|
||||
Route::get('extract/bank', 'v1.user.UserExtractController/bank')->name('extractBank');//提现银行/提现最低金额
|
||||
Route::post('extract/cash', 'v1.user.UserExtractController/cash')->name('extractCash');//提现申请
|
||||
|
||||
@ -173,8 +173,6 @@ class StoreOrderDao extends BaseDao
|
||||
} else {
|
||||
$query->where('refund_status', 0);
|
||||
}
|
||||
})->when(isset($where['is_spread']), function ($query) {
|
||||
$query->where('refund_status', 2);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -566,4 +566,24 @@ class StoreOrder extends BaseModel
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 事业部推广订单
|
||||
* @param $query
|
||||
* @param $value
|
||||
*/
|
||||
public function searchDivisionIdAttr($query, $value)
|
||||
{
|
||||
if ($value !== '') $query->where('division_id', $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 代理商推广订单
|
||||
* @param $query
|
||||
* @param $value
|
||||
*/
|
||||
public function searchAgentIdAttr($query, $value)
|
||||
{
|
||||
if ($value !== '') $query->where('agent_id', $value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -392,14 +392,14 @@ class DivisionServices extends BaseServices
|
||||
/** 员工直接下级 */
|
||||
if ($isSelfBrokerage) {
|
||||
$storeBrokerageOne = $storeBrokerageRatio;
|
||||
$storeBrokerageTwo = 0;
|
||||
$staffPercent = $staffInfo['division_percent'] - $storeBrokerageOne;
|
||||
$storeBrokerageTwo = $staffInfo['division_percent'] - $storeBrokerageOne;
|
||||
$staffPercent = 0;
|
||||
$agentPercent = $agentInfo['division_percent'] - $staffInfo['division_percent'];
|
||||
$divisionPercent = $divisionInfo['division_percent'] - $agentInfo['division_percent'];
|
||||
} else {
|
||||
$storeBrokerageOne = 0;
|
||||
$storeBrokerageOne = $staffInfo['division_percent'];
|
||||
$storeBrokerageTwo = 0;
|
||||
$staffPercent = $staffInfo['division_percent'];
|
||||
$staffPercent = 0;
|
||||
$agentPercent = $agentInfo['division_percent'] - $staffInfo['division_percent'];
|
||||
$divisionPercent = $divisionInfo['division_percent'] - $agentInfo['division_percent'];
|
||||
}
|
||||
|
||||
@ -1189,9 +1189,9 @@ class UserBillServices extends BaseServices
|
||||
$storeOrderServices = app()->make(StoreOrderServices::class);
|
||||
[$page, $limit] = $this->getPageValue();
|
||||
$time = [];
|
||||
$where = ['paid' => 1, 'type' => 1, 'spread_or_uid' => $uid, 'pid' => 0, 'is_spread' => 1];
|
||||
$where = ['paid' => 1, 'type' => 1, 'spread_or_uid' => $uid, 'pid' => 0];
|
||||
$list = $storeOrderServices->getlist($where, ['id,order_id,uid,add_time,spread_uid,status,spread_two_uid,one_brokerage,two_brokerage,pay_price,pid'], $page, $limit, ['split']);
|
||||
$result['count'] = $storeOrderServices->count($where + ['pid' => 0]);
|
||||
$result['count'] = $storeOrderServices->count($where);
|
||||
$time_data = [];
|
||||
if ($list) {
|
||||
$uids = array_unique(array_column($list, 'uid'));
|
||||
@ -1240,4 +1240,60 @@ class UserBillServices extends BaseServices
|
||||
return $this->dao->getGroupField($where, $rechargeSumField, $group);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 事业部/代理商订单
|
||||
* @param $uid
|
||||
* @return array
|
||||
*/
|
||||
public function divisionOrder($uid)
|
||||
{
|
||||
/** @var UserServices $userService */
|
||||
$userService = app()->make(UserServices::class);
|
||||
/** @var StoreOrderServices $storeOrderServices */
|
||||
$storeOrderServices = app()->make(StoreOrderServices::class);
|
||||
$userInfo = $userService->getUserInfo($uid);
|
||||
if (!$userInfo) {
|
||||
throw new ValidateException('数据不存在');
|
||||
}
|
||||
$division_type = $userInfo['division_type'];
|
||||
[$page, $limit] = $this->getPageValue();
|
||||
$where = ['paid' => 1, 'type' => 1, 'pid' => 0];
|
||||
if ($division_type == 1) {
|
||||
$where = $where + ['division_id' => $uid];
|
||||
} elseif ($division_type == 2) {
|
||||
$where = $where + ['agent_id' => $uid];
|
||||
}
|
||||
|
||||
$list = $storeOrderServices->getlist($where, ['id,order_id,uid,add_time,spread_uid,division_id,agent_id,status,spread_two_uid,one_brokerage,two_brokerage,agent_brokerage,division_brokerage,pay_price,pid'], $page, $limit, ['split']);
|
||||
$result['count'] = $storeOrderServices->count($where);
|
||||
$time_data = [];
|
||||
if ($list) {
|
||||
$uids = array_unique(array_column($list, 'uid'));
|
||||
$userInfos = $userService->getColumn([['uid', 'in', $uids]], 'uid,avatar,nickname', 'uid');
|
||||
foreach ($list as &$item) {
|
||||
$item['avatar'] = $userInfos[$item['uid']]['avatar'] ?? '';
|
||||
$item['nickname'] = $userInfos[$item['uid']]['nickname'] ?? '';
|
||||
$item['time'] = $item['add_time'] ? date('Y-m-d H:i', $item['add_time']) : '';
|
||||
$item['time_key'] = $item['add_time'] ? date('Y-m', $item['add_time']) : '';
|
||||
$item['type'] = in_array($item['status'], [2, 3]) ? 'brokerage' : 'number';
|
||||
if ($division_type == 1) {
|
||||
$item['number'] = $item['division_brokerage'];
|
||||
} elseif ($division_type == 2) {
|
||||
$item['number'] = $item['agent_brokerage'];
|
||||
}
|
||||
}
|
||||
$times = array_unique(array_column($list, 'time_key'));
|
||||
$time_data = [];
|
||||
$i = 0;
|
||||
foreach ($times as $time) {
|
||||
$time_data[$i]['time'] = $time;
|
||||
$time_data[$i]['count'] = $storeOrderServices->getMonthCount($where + ['pid' => 0], $time);
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
$result['list'] = $list;
|
||||
$result['time'] = $time_data;
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user