修复:资源股东自动结算错误

修复:资源股东结算后提现佣金无变化的问题
增加:资源股东移动端接口相关
This commit is contained in:
wuhui_zzw 2024-05-28 14:44:25 +08:00
parent cdb0589221
commit 46c9df6a15
5 changed files with 92 additions and 13 deletions

View File

@ -54,7 +54,7 @@ class UserBillDao extends BaseDao
public function getTimeoutBrokerageBill($time)
{
return UserBill::getDB()->where('create_time', '<=', $time)->where('category', 'brokerage')
->whereIn('type', ['order_one', 'order_two'])->with('user')->where('status', 0)->select();
->whereIn('type', ['order_one', 'order_two','resource_shareholders'])->with('user')->where('status', 0)->select();
}
public function getTimeoutIntegralBill($time)
@ -104,7 +104,7 @@ class UserBillDao extends BaseDao
public function lockBrokerage($uid)
{
$lst = UserBill::getDB()->where('category', 'brokerage')
->whereIn('type', ['order_one', 'order_two'])->where('uid', $uid)->where('status', 0)->field('link_id,number')->select()->toArray();
->whereIn('type', ['order_one', 'order_two','resource_shareholders'])->where('uid', $uid)->where('status', 0)->field('link_id,number')->select()->toArray();
$refundPrice = 0;
if (count($lst)) {
$refundPrice = -1 * UserBill::getDB()->whereIn('link_id', array_column($lst, 'link_id'))->where('uid', $uid)
@ -164,7 +164,7 @@ class UserBillDao extends BaseDao
public function totalBrokerage($uid)
{
return bcsub(UserBill::getDB()->where('category', 'brokerage')
->whereIn('type', ['order_one', 'order_two'])->where('uid', $uid)->sum('number'),
->whereIn('type', ['order_one', 'order_two','resource_shareholders'])->where('uid', $uid)->sum('number'),
UserBill::getDB()->where('uid', $uid)
->where('category', 'brokerage')->whereIn('type', ['refund_two', 'refund_one'])->sum('number'), 2);
}
@ -178,7 +178,7 @@ class UserBillDao extends BaseDao
public function yesterdayBrokerage($uid)
{
return getModelTime(UserBill::getDB()->where('category', 'brokerage')
->whereIn('type', ['order_one', 'order_two'])->where('uid', $uid), 'yesterday')->sum('number');
->whereIn('type', ['order_one', 'order_two','resource_shareholders'])->where('uid', $uid), 'yesterday')->sum('number');
}
/**

View File

@ -412,7 +412,7 @@ class StoreOrderRepository extends BaseRepository
// 记录用户流水
app()->make(UserBillRepository::class)->incBill($rsUid, 'brokerage', 'resource_shareholders', [
'link_id' => $order->order_id,
'status' => 1,
'status' => 0,
'title' => '资源股东收益',
'number' =>$resourceShareholdersMoney,
'mark' => $provinceHereMerchant['mer_name'] . '产生订单,获得资源股东收益' . $resourceShareholdersMoney,

View File

@ -34,6 +34,8 @@ class UserBillRepository extends BaseRepository
'brokerage/order_two' => '获得二级推广佣金',
'brokerage/refund_one' => '退还一级佣金',
'brokerage/refund_two' => '退还二级佣金',
'brokerage/resource_shareholders' => '资源股东佣金',
'brokerage/refund_shareholders' => '退还资源股东佣金',
'integral/cancel' => '退回积分',
'integral/deduction' => '购买商品',
'integral/points' => '兑换商品',

View File

@ -5,23 +5,22 @@
namespace app\controller\api\user;
use app\common\model\user\UserBill;
use app\common\repositories\system\merchant\MerchantRepository;
use app\common\repositories\user\UserBillRepository;
use crmeb\basic\BaseController;
use app\common\repositories\user\FeedbackRepository;
use think\App;
class Member extends BaseController
{
class Member extends BaseController{
protected $repository;
public function __construct(App $app, UserBillRepository $repository)
{
public function __construct(App $app, UserBillRepository $repository){
parent::__construct($app);
$this->repository = $repository;
}
public function getMemberValue()
{
public function getMemberValue(){
$where = [
'uid' => $this->request->uid(),
'category' => 'sys_members',
@ -29,4 +28,77 @@ class Member extends BaseController
$data = $this->repository->month($where);
return app('json')->success($data);
}
/**
* Common: 资源股东 - 统计
* Author: wu-hui
* Time: 2024/05/28 11:31
* @return mixed
*/
public function shareholdersStatistics(){
$uid = $this->request->uid();
$query = app()->make(UserBillRepository::class)->getSearch([]);
$data = [
[
'title' => '总收益',
'num' => $query->where(['uid' => $uid,'category' => 'brokerage','type' => 'resource_shareholders'])->sum('number')
],
[
'title' => '待结算',
'num' => $query->where(['uid' => $uid,'category' => 'brokerage','type' => 'resource_shareholders', 'status'=>0])->sum('number')
],
[
'title' => '已退款',
'num' => $query->where(['uid' => $uid,'category' => 'brokerage','type' => 'refund_shareholders'])->sum('number')
]
];
return app('json')->success($data);
}
/**
* Common: 资源股东 - 关联的商户列表
* Author: wu-hui
* Time: 2024/05/28 10:29
* @return mixed
*/
public function shareholdersMerList(){
$uid = $this->request->uid();
[$page, $limit] = $this->getPage();
// 信息获取
$query = app()->make(MerchantRepository::class)
->getSearch(['resource_shareholders_uid' => $uid])
->field('mer_id,mer_name,mer_avatar,resource_shareholders_rate');
$count = $query->count();
$list = $query->page($page,$limit)->select();
return app('json')->success(compact('count','list'));
}
/**
* Common: 资源股东 - 相关订单列表
* Author: wu-hui
* Time: 2024/05/28 13:57
* @return mixed
*/
public function shareholdersOrderList(){
$uid = $this->request->uid();
[$page, $limit] = $this->getPage();
// 查询
$query = (new UserBill())
->alias('a')
->join('store_order so','so.order_id = a.link_id')
->field('a.number,a.status,a.mark,a.create_time,a.pm,so.order_sn,so.order_id')
->where('a.category', 'brokerage')
->whereIn('a.type', ['resource_shareholders','refund_shareholders'])
->where('a.uid', $uid)
->order('a.link_id DESC');
$count = $query->count();
$list = $query->page($page,$limit)->select();
return app('json')->success(compact('count','list'));
}
}

View File

@ -197,9 +197,15 @@ Route::group('api/', function () {
//客服列表
Route::get('services', 'User/services');
Route::get('member/info', 'User/memberInfo');
Route::get('member/log', 'Member/getMemberValue');
// 资源股东
Route::get('shareholders/statistics', 'Member/shareholdersStatistics');
Route::get('shareholders/mer_list', 'Member/shareholdersMerList');
Route::get('shareholders/order_list', 'Member/shareholdersOrderList');
})->prefix('api.user.');
//购物车
Route::group('user/cart', function () {
@ -452,7 +458,6 @@ Route::group('api/', function () {
})->middleware(UserTokenMiddleware::class, true);
//非强制登录
Route::group(function () {