jh-admin/addon/commission/model/CommissionRecord.php

118 lines
5.0 KiB
PHP

<?php
/**
* SaaSMall商城系统 - 团队十年电商经验汇集巨献!
* =========================================================
* Copy right 2019-2029 成都SAAS云科技有限公司, 保留所有权利。
* ----------------------------------------------
* 官方网址: https://www.gobuysaas.com
* =========================================================
*/
namespace addon\commission\model;
use app\model\BaseModel;
class CommissionRecord extends BaseModel{
/**
* Common: 获取抽成记录列表
* Author: wu-hui
* Time: 2024/05/03 16:41
* @param $page
* @param $params
* @param $siteId
* @return array
*/
public function getPageList($page, $params, $siteId){
// 判断:不是总平台 仅显示当前店铺相关抽成记录
if($siteId != $this->adminSiteId) $params['site_id'] = $siteId;
// 生成查询条件
$where = [];
if(isset($params['member_id']) && $params['member_id'] !== '') $where[] = ['a.member_id','=',$params['member_id']];
if(isset($params['site_id']) && $params['site_id'] !== '') $where[] = ['a.site_id','=',$params['site_id']];
if(isset($params['store_id']) && $params['store_id'] !== '') $where[] = ['a.store_id','=',$params['store_id']];
if(isset($params['order_id']) && $params['order_id'] !== '') $where[] = ['a.order_id','=',$params['order_id']];
if(isset($params['order_no']) && $params['order_no'] !== '') $where[] = ['o.order_no','=',$params['order_no']];
if(isset($params['goods_id']) && $params['goods_id'] !== '') $where[] = ['a.goods_id','=',$params['goods_id']];
// 关联查询
$join = [
[ 'member m', 'm.member_id = a.member_id', 'left' ],
[ 'order o', 'o.order_id = a.order_id', 'left' ],
[ 'goods g', 'g.goods_id = a.goods_id', 'left' ],
[ 'site s', 's.site_id = a.site_id', 'left' ]
];
$field = [
'a.id',
'a.real_goods_money',
'a.integral_rate',
'a.integral_money',
'a.operations_rate',
'a.operations_money',
'a.operations_technology_money',
'a.operations_platform_money',
'a.partner_rate',
'a.partner_money',
'a.partner_status',
'a.merchants_rate',
'a.merchants_money',
'a.merchants_status',
'a.promoter_rate',
'a.promoter_money',
'a.promoter_status',
'a.create_time',
'a.refund_ratio',
'm.member_id',
'm.nickname',
'm.username',
'm.headimg',
'o.order_id',
'o.order_no',
'o.order_type',
'g.goods_id',
'g.goods_name',
'g.goods_image',
's.site_name',
's.contacts_name',
's.contacts_mobile',
];
$result = model('commission_record')->pageList($where,$field,'a.id DESC',$page,PAGE_LIST_ROWS,'a',$join);
$result['is_admin'] = $siteId == $this->adminSiteId;
return $this->success($result);
}
/**
* Common: 获取统计信息
* Author: wu-hui
* Time: 2024/05/13 9:43
* @param $params
* @param $siteId
* @return array
*/
public function getStatistics($params, $siteId){
// 判断:不是总平台 仅显示当前店铺相关抽成记录
if($siteId != $this->adminSiteId) $params['site_id'] = $siteId;
// 生成查询条件
$where = [];
if(isset($params['member_id']) && $params['member_id'] !== '') $where[] = ['a.member_id','=',$params['member_id']];
if(isset($params['site_id']) && $params['site_id'] !== '') $where[] = ['a.site_id','=',$params['site_id']];
if(isset($params['store_id']) && $params['store_id'] !== '') $where[] = ['a.store_id','=',$params['store_id']];
if(isset($params['order_id']) && $params['order_id'] !== '') $where[] = ['a.order_id','=',$params['order_id']];
if(isset($params['order_no']) && $params['order_no'] !== '') $where[] = ['o.order_no','=',$params['order_no']];
if(isset($params['goods_id']) && $params['goods_id'] !== '') $where[] = ['a.goods_id','=',$params['goods_id']];
// 关联查询
$join = [
[ 'order o', 'o.order_id = a.order_id', 'left' ],
];
// 信息统计
return [
'total_real_goods_money' => model('commission_record')->getSum($where,'real_goods_money','a',$join),
'total_integral_money' => model('commission_record')->getSum($where,'integral_money','a',$join),
'total_operations_money' => model('commission_record')->getSum($where,'operations_money','a',$join),
'total_partner_money' => model('commission_record')->getSum($where,'partner_money','a',$join),
'total_merchants_money' => model('commission_record')->getSum($where,'merchants_money','a',$join),
'total_promoter_money' => model('commission_record')->getSum($where,'promoter_money','a',$join),
];
}
}