$merchant_id, ); $config = $this->getFind($map); if ($config['commission'] == 1) { $map['commission'] = array('elt', $commission); } if ($config['indent'] == 1) { $map['indent'] = array('elt', $indent); } if ($config['invite'] == 1) { $map['invite'] = array('elt', $invite); } if ($config['client'] == 1) { $map['client'] = array('elt', $client); } if (empty($commission) && empty($indent) && empty($indent) && empty($client)) { $map['commission'] = array('elt', $commission); } $field = 'id,proportion,grade_name'; $res = $this->getOrderFind($map, $field, 'proportion desc'); return $res ? $res : array(); } /** * 获取下个级别的升级条件 * @param $present 当前佣金比 * @param $merchant_id 商户ID * @return array|mixed */ public function getUpgradeConditions($present, $merchant_id) { $where = [ 'status' => 0, 'merchant_id' => $merchant_id, 'proportion' => ['GT', $present] ]; $field = [ 'id', 'grade_name', 'invite', 'commission', 'myself_money', 'client', 'is_invite', 'is_commission', 'is_myself_money', 'is_client', 'proportion', 'upgrade_type' ]; $result = $this->getOrderFind($where, $field, 'proportion asc'); if ($result) { if ($result['is_invite'] != 1) { unset($result['invite']); } if ($result['is_commission'] != 1) { unset($result['commission']); } if ($result['is_myself_money'] != 1) { unset($result['myself_money']); } if ($result['is_client'] != 1) { unset($result['client']); } if (!$result['is_invite'] || !$result['is_commission'] || !$result['is_myself_money'] || !$result['is_client']) { // 未设置任何升级条件 } // unset($result['is_invite']); // unset($result['is_client']); // unset($result['is_commission']); // unset($result['is_myself_money']); } else { $result = []; } return $result; } // 获取升级条件V2--一次性获取所有级别 public function getAllUpgradeConditions($merchant_id, $field) { return $this->getSelect(['status' => 0, 'merchant_id' => $merchant_id], $field, 'proportion asc'); } }