修改未开启自购获取数据失败

This commit is contained in:
liqianjin 2025-03-31 16:27:58 +08:00
parent db042696ff
commit d97311b349
2 changed files with 16 additions and 13 deletions

View File

@ -49,12 +49,13 @@ class FenxiaoOrder extends BaseModel
['fenxiao_level l', 'f.level_id = l.level_id', 'right']
];
$fenxiao_info = model("fenxiao")->getInfo([ [ 'f.fenxiao_id', '=', $fenxiao_id ], [ 'f.is_delete', '=', 0 ] ],$field,'f',$join);
if (empty($fenxiao_info)) return $this->success();
// 如果购买人是分销商 并且未开启分销商自购
if ($member_info[ 'is_fenxiao' ] && $fenxiao_basic_config[ 'self_purchase_rebate' ] == 0) {
if (empty($fenxiao_info[ 'parent' ])) return $this->success();
$fenxiao_info = model("fenxiao")->getInfo([ [ 'fenxiao_id', '=', $fenxiao_info[ 'parent' ] ], [ 'is_delete', '=', 0 ] ]);
$fenxiao_info = model("fenxiao")->getInfo([ [ 'fenxiao_id', '=', $fenxiao_info[ 'parent' ] ], [ 'is_delete', '=', 0 ] ],$field,'f',$join);
if (empty($fenxiao_info)) return $this->success();
}
@ -96,11 +97,14 @@ class FenxiaoOrder extends BaseModel
$goods_info = model('goods')->getInfo([['goods_id','=',$v['goods_id']]],'is_fenxiao, fenxiao_type,goods_kind_id');
//报单商品才有直推和间推
if($goods_info['goods_kind_id']){
$order_fenxiao_data = $this->getPushFenXiaoCommission($fenxiao_info,$v,$order_fenxiao_data,$goods_info['fenxiao_type'],$fenxiao_basic_config);
}
//计算进货佣金
$order_fenxiao_data = $this->getWholesaleFenXiaoCommission($fenxiao_info,$v,$order_fenxiao_data,$fenxiao_basic_config,$goods_info['goods_kind_id'],$goods_info['fenxiao_type']);
if(($order_fenxiao_data['commission'] && $order_fenxiao_data['commission_rate']) || $order_fenxiao_data['wholesale_rate'] || $order_fenxiao_data['founder_rate']){
$data = [
'order_id' => $order['order_id'],
@ -174,14 +178,11 @@ class FenxiaoOrder extends BaseModel
$join = [
['fenxiao_level fl','f.level_id = fl.level_id','right']
];
if($config['self_purchase_rebate'] > 0){
$parent_fenxiao_info = $fenxiao_info;
$g_parent_fenxiao_info = $fenxiao_info['parent'] > 0 ? model('fenxiao')->getInfo([ [ 'f.fenxiao_id', '=', $fenxiao_info[ 'parent' ] ], [ 'f.is_delete', '=', 0 ] ], 'f.fenxiao_id, f.fenxiao_name, f.status, f.parent,f.level_id,fl.level_num','f',$join) : [];
}else{
$parent_fenxiao_info = $fenxiao_info['parent'] > 0 ? model('fenxiao')->getInfo([ [ 'f.fenxiao_id', '=', $fenxiao_info[ 'parent' ] ], [ 'f.is_delete', '=', 0 ] ], 'f.fenxiao_id, f.fenxiao_name, f.status, f.parent,f.level_id,fl.level_num','f',$join) : [];
$g_parent_fenxiao_info = $fenxiao_info['grand_parent'] > 0 ? model('fenxiao')->getInfo([ [ 'f.fenxiao_id', '=', $fenxiao_info[ 'grand_parent' ] ], [ 'f.is_delete', '=', 0 ] ], 'f.fenxiao_id, f.fenxiao_name, f.status, f.parent,f.level_id,fl.level_num','f',$join) : [];
}
//开启自购后fenxiao_info是自己未开启是上级
$parent_fenxiao_info = $fenxiao_info;
$g_parent_fenxiao_info = $fenxiao_info['parent'] > 0 ? model('fenxiao')->getInfo([ [ 'f.fenxiao_id', '=', $fenxiao_info[ 'parent' ] ], [ 'f.is_delete', '=', 0 ] ], 'f.fenxiao_id, f.fenxiao_name, f.status, f.parent,f.level_id,fl.level_num','f',$join) : [];
//直推
if (!empty($parent_fenxiao_info) && $parent_fenxiao_info[ 'status' ] == 1) {
if($type == 2){
@ -199,9 +200,11 @@ class FenxiaoOrder extends BaseModel
$order_fenxiao_data['commission_rate'] += $order_fenxiao_data[ 'one_rate' ] = round($one_money * $v[ 'num' ] / $v[ 'real_goods_money' ], 2);
$order_fenxiao_data['commission'] += $order_fenxiao_data[ 'one_commission' ] = $one_money * $v[ 'num' ];
}
$order_fenxiao_data['one_fenxiao_id'] = $parent_fenxiao_info['fenxiao_id'];
$order_fenxiao_data['one_fenxiao_name'] = $parent_fenxiao_info['fenxiao_name'];
}
//间退
if (!empty($g_parent_fenxiao_info) && $g_parent_fenxiao_info[ 'status' ] == 1) {

View File

@ -24,16 +24,16 @@ class Test{
//
public function test(){
$orderId = 104;
$orderId = 108;
$order_info = model('order')->getInfo(['order_id' => $orderId]);
// $fenxiao_order = new OrderPay();
$fenxiao_order = new OrderPay();
// $res = $fenxiao_order->handle($order_info);
// $fenxiao_order = new WeightOrder();
// $res = $fenxiao_order->calculate(1);
// $fenxiao_order_model = new FenxiaoOrder();
$res = $fenxiao_order->handle($order_info);
// $fenxiao_order_model = new FenxiaoOrder();
// $res = $fenxiao_order->handle($order_info);
$fenxiao_order_model = new FenxiaoOrder();
$res = $fenxiao_order_model->calculate($order_info);
// $res = $fenxiao_order_model->calculate($order_info);
// $res = $fenxiao_order_model->settlement($orderId);
dump($res);die;
$fenxiao_id = 195;