|
@@ -13,6 +13,7 @@ use JinDouYun\Dao\CommissionPartner\DNewCommissionCash;
|
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionDetail;
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionDetail;
|
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionPartner;
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionPartner;
|
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionTask;
|
|
use JinDouYun\Dao\CommissionPartner\DNewCommissionTask;
|
|
|
|
|
+use JinDouYun\Dao\CommissionPartner\DNewCommissionSetting;
|
|
|
|
|
|
|
|
|
|
|
|
|
class PartnerTools{
|
|
class PartnerTools{
|
|
@@ -25,11 +26,12 @@ class PartnerTools{
|
|
|
private $dbNewCommissionCash;
|
|
private $dbNewCommissionCash;
|
|
|
private $dbNewCommissionBalanceDetail;
|
|
private $dbNewCommissionBalanceDetail;
|
|
|
private $dbNewCommissionTask;
|
|
private $dbNewCommissionTask;
|
|
|
|
|
+ private $dbNewCommissionSetting;
|
|
|
|
|
|
|
|
private $enterpriseId;
|
|
private $enterpriseId;
|
|
|
private $cache;
|
|
private $cache;
|
|
|
private $cutTable = 1;//客户按照企业id分表
|
|
private $cutTable = 1;//客户按照企业id分表
|
|
|
-
|
|
|
|
|
|
|
+ private $commissionSettingData = null;
|
|
|
private $levMoney = 20000;//升级条件
|
|
private $levMoney = 20000;//升级条件
|
|
|
private $levPer = 0.05;//升级佣金比例
|
|
private $levPer = 0.05;//升级佣金比例
|
|
|
private $incomePer = 0.1;//佣金比例
|
|
private $incomePer = 0.1;//佣金比例
|
|
@@ -55,6 +57,9 @@ class PartnerTools{
|
|
|
//用户账号表
|
|
//用户账号表
|
|
|
$this->dbUserCenter = new DUserCenter();
|
|
$this->dbUserCenter = new DUserCenter();
|
|
|
|
|
|
|
|
|
|
+ //设置表
|
|
|
|
|
+ $this->dbNewCommissionSetting = new DNewCommissionSetting('default');
|
|
|
|
|
+ $this->commissionSettingData = $this->dbNewCommissionSetting->get(["enterpriseId"=>$enterpriseId]);
|
|
|
|
|
|
|
|
//订单索引表
|
|
//订单索引表
|
|
|
$this->dbOrderIndex = new DOrderIndex();
|
|
$this->dbOrderIndex = new DOrderIndex();
|
|
@@ -107,6 +112,12 @@ class PartnerTools{
|
|
|
if(empty($orderId) || empty($enterpriseId)){
|
|
if(empty($orderId) || empty($enterpriseId)){
|
|
|
return ["code"=>-1,"msg"=>"参数为空"];
|
|
return ["code"=>-1,"msg"=>"参数为空"];
|
|
|
}
|
|
}
|
|
|
|
|
+ $dbSetting = new DNewCommissionSetting('default');
|
|
|
|
|
+ $settingData = $dbSetting->get(["enterpriseId"=>$enterpriseId]);
|
|
|
|
|
+ if(empty($settingData) || empty($settingData["is_open"]) || $settingData["levMoney"]<=0){
|
|
|
|
|
+ return ["code"=>-1,"msg"=>"还未进行分佣配置"];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
$dbTask = new DNewCommissionTask('default');
|
|
$dbTask = new DNewCommissionTask('default');
|
|
|
$taskTableName = $dbTask->getTableName($dbTask->get_Table(), $enterpriseId, 1);
|
|
$taskTableName = $dbTask->getTableName($dbTask->get_Table(), $enterpriseId, 1);
|
|
|
$dbTask->setTable($taskTableName);
|
|
$dbTask->setTable($taskTableName);
|
|
@@ -130,7 +141,9 @@ class PartnerTools{
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function runTask(){
|
|
public function runTask(){
|
|
|
-
|
|
|
|
|
|
|
+ if(empty($this->commissionSettingData) || empty($this->commissionSettingData["is_open"]) || $this->commissionSettingData["levMoney"]<=0){
|
|
|
|
|
+ return ["code"=>-1,"msg"=>"未开启配置"];
|
|
|
|
|
+ }
|
|
|
$key = "partnertaskcache".'::'.$this->enterpriseId;
|
|
$key = "partnertaskcache".'::'.$this->enterpriseId;
|
|
|
$result = $this->cache->get($key);
|
|
$result = $this->cache->get($key);
|
|
|
if(!empty($result)){
|
|
if(!empty($result)){
|
|
@@ -301,18 +314,22 @@ class PartnerTools{
|
|
|
* @return bool
|
|
* @return bool
|
|
|
*/
|
|
*/
|
|
|
public function calcMoney($customerData,$money){
|
|
public function calcMoney($customerData,$money){
|
|
|
|
|
+ if(empty($this->commissionSettingData) || empty($this->commissionSettingData["is_open"]) || $this->commissionSettingData["levMoney"]<=0){
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
$parentData = $this->getParentPartner($customerData);
|
|
$parentData = $this->getParentPartner($customerData);
|
|
|
if(empty($parentData) || $parentData["isPartner"]==0){
|
|
if(empty($parentData) || $parentData["isPartner"]==0){
|
|
|
//上级合伙人不存在
|
|
//上级合伙人不存在
|
|
|
- if($money>=$this->levMoney && $customerData["isPartner"]==0){
|
|
|
|
|
|
|
+ if($money>=$this->commissionSettingData["levMoney"] && $customerData["isPartner"]==0){
|
|
|
$this->setPartner($customerData["id"]);
|
|
$this->setPartner($customerData["id"]);
|
|
|
}
|
|
}
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
- $per = $this->incomePer;
|
|
|
|
|
|
|
+ $per = $this->commissionSettingData["incomePer"];
|
|
|
$isUpgrade = 0;
|
|
$isUpgrade = 0;
|
|
|
- if($money>=$this->levMoney && $customerData["isPartner"]==0){
|
|
|
|
|
- $per = $this->levPer;
|
|
|
|
|
|
|
+ if($money>=$this->commissionSettingData["levMoney"] && $customerData["isPartner"]==0){
|
|
|
|
|
+ $per = $this->commissionSettingData["levPer"];
|
|
|
$isUpgrade = 1;
|
|
$isUpgrade = 1;
|
|
|
}
|
|
}
|
|
|
$resData=[
|
|
$resData=[
|
|
@@ -336,6 +353,11 @@ class PartnerTools{
|
|
|
* @return bool
|
|
* @return bool
|
|
|
*/
|
|
*/
|
|
|
public function runCalcMoneyData($orderId){
|
|
public function runCalcMoneyData($orderId){
|
|
|
|
|
+
|
|
|
|
|
+ if(empty($this->commissionSettingData) || empty($this->commissionSettingData["is_open"]) || $this->commissionSettingData["levMoney"]<=0){
|
|
|
|
|
+ return ["code"=>-1,"msg"=>"配置信息错误"];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
//获取订单信息
|
|
//获取订单信息
|
|
|
if(empty($orderId)){
|
|
if(empty($orderId)){
|
|
|
return ["code"=>-1,"msg"=>"订单id错误"];
|
|
return ["code"=>-1,"msg"=>"订单id错误"];
|
|
@@ -365,7 +387,7 @@ class PartnerTools{
|
|
|
return ["code"=>-1,"msg"=>"用户不存在"];
|
|
return ["code"=>-1,"msg"=>"用户不存在"];
|
|
|
}
|
|
}
|
|
|
if(empty($customerData["parentPath"])){
|
|
if(empty($customerData["parentPath"])){
|
|
|
- if($orderMoney>=$this->levMoney && $customerData["isPartner"]==0){
|
|
|
|
|
|
|
+ if($orderMoney>=$this->commissionSettingData["levMoney"] && $customerData["isPartner"]==0){
|
|
|
$this->setPartner($orderCustomerId);
|
|
$this->setPartner($orderCustomerId);
|
|
|
}
|
|
}
|
|
|
return ["code"=>-1,"msg"=>"用户不存在父级"];
|
|
return ["code"=>-1,"msg"=>"用户不存在父级"];
|