From 63bb244f8b624e5f93a3141a2f07333b00cda58d Mon Sep 17 00:00:00 2001 From: wuhui_zzw <1760308791@qq.com> Date: Mon, 19 Feb 2024 14:39:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=EF=BC=9A=E4=BB=A3=E7=90=86?= =?UTF-8?q?=E5=95=86=E4=B8=AD=E5=BF=83=E6=B7=BB=E5=8A=A0=E6=80=BB=E9=83=A8?= =?UTF-8?q?=E5=A4=96=E5=8B=A4=E5=92=8C=E6=80=BB=E9=83=A8=E5=86=85=E5=8B=A4?= =?UTF-8?q?=E8=A7=92=E8=89=B2=20=E6=B7=BB=E5=8A=A0=EF=BC=9A=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E6=88=90=E4=B8=BA=E6=80=BB=E9=83=A8=E5=86=85=E5=8B=A4?= =?UTF-8?q?=E5=92=8C=E6=80=BB=E9=83=A8=E5=A4=96=E5=8B=A4=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E7=9A=84=E8=B4=B9=E7=94=A8=E5=8F=8A=E9=82=80=E8=AF=B7=E4=BA=BA?= =?UTF-8?q?=E7=9A=84=E4=BD=A3=E9=87=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/model/marketing/Agent.php | 2 +- .../marketing/AgentBrokerageRepository.php | 40 +++++++++++++------ .../marketing/AgentRepository.php | 18 +++++++++ app/controller/admin/marketing/Agent.php | 16 ++++++++ 4 files changed, 62 insertions(+), 14 deletions(-) diff --git a/app/common/model/marketing/Agent.php b/app/common/model/marketing/Agent.php index 33833fd..9b86414 100644 --- a/app/common/model/marketing/Agent.php +++ b/app/common/model/marketing/Agent.php @@ -55,7 +55,7 @@ class Agent extends BaseModel{ */ public function getChildrenCountAttr():int{ if(($this->id ?? 0) > 0){ - return self::where('pid',$this->id)->count(); + return self::where('pid',$this->id)->where('is_del',0)->count(); } return 0; } diff --git a/app/common/repositories/marketing/AgentBrokerageRepository.php b/app/common/repositories/marketing/AgentBrokerageRepository.php index 6c1d91c..76eef8a 100644 --- a/app/common/repositories/marketing/AgentBrokerageRepository.php +++ b/app/common/repositories/marketing/AgentBrokerageRepository.php @@ -111,30 +111,34 @@ class AgentBrokerageRepository extends BaseRepository{ // 获取全部上级 $upAllList = app()->make(AgentRepository::class)->getAllUp($applyInfo['pid']); $upAllList = array_column($upAllList, null, 'agent_type'); - // 获取佣金信息 类型:1=发起人,2=省公司,3=省合伙人(外勤),4=省合伙人(内勤),5=区县运营商,6=区县合伙人,7=餐厅,8=配送商 + // 获取佣金信息 类型:1=总部发起人,2=省公司发起人,3=省合伙人(外勤),4=省合伙人(内勤),5=区县运营商,6=区县合伙人,7=餐厅,8=配送商,9=总部外勤,10=总部内勤 $initiator = $upAllList[1] ?? []; $province = $upAllList[2] ?? []; $fieldStaff = $upAllList[3] ?? []; $areaStore = $upAllList[5] ?? []; $area = $upAllList[6] ?? []; + $fieldPersonnel = $upAllList[9] ?? []; $data = [ - 'source' => 1, - 'user_order_id' => $orderId, + 'source' => 1, + 'user_order_id' => $orderId, // 发起人 - 'initiator_uid' => $initiator ? $initiator['uid'] : 0, - 'initiator_agent_id' => $initiator ? $initiator['id'] : 0, + 'initiator_uid' => $initiator ? $initiator['uid'] : 0, + 'initiator_agent_id' => $initiator ? $initiator['id'] : 0, // 省公司 - 'province_uid' => $province ? $province['uid'] : 0, - 'province_agent_id' => $province ? $province['id'] : 0, + 'province_uid' => $province ? $province['uid'] : 0, + 'province_agent_id' => $province ? $province['id'] : 0, // 外勤 - 'field_staff_uid' => $fieldStaff ? $fieldStaff['uid'] : 0, - 'field_staff_agent_id' => $fieldStaff ? $fieldStaff['id'] : 0, + 'field_staff_uid' => $fieldStaff ? $fieldStaff['uid'] : 0, + 'field_staff_agent_id' => $fieldStaff ? $fieldStaff['id'] : 0, // 运营商 - 'area_store_uid' => $areaStore ? $areaStore['uid'] : 0, - 'area_store_agent_id' => $areaStore ? $areaStore['id'] : 0, + 'area_store_uid' => $areaStore ? $areaStore['uid'] : 0, + 'area_store_agent_id' => $areaStore ? $areaStore['id'] : 0, // 合伙人 - 'area_uid' => $area ? $area['uid'] : 0, - 'area_agent_id' => $area ? $area['id'] : 0, + 'area_uid' => $area ? $area['uid'] : 0, + 'area_agent_id' => $area ? $area['id'] : 0, + // 总部外勤 + 'field_personnel_uid' => $fieldPersonnel ? $fieldPersonnel['uid'] : 0, + 'field_personnel_agent_id' => $fieldPersonnel ? $fieldPersonnel['id'] : 0, ]; $isToExamine = 0;// 是否免审核 0=需要审核,1=无需审核 switch((int)$applyInfo['agent_type']){ @@ -143,6 +147,16 @@ class AgentBrokerageRepository extends BaseRepository{ $data['platform_brokerage'] = $config['province_money_platform'] ?? 0; $data['initiator_brokerage'] = $config['province_money_initiator'] ?? 0; break; + case 9: + $isToExamine = $config['field_personnel_process'] ?? 0; + $data['platform_brokerage'] = $config['field_personnel_money_platform'] ?? 0; + $data['initiator_brokerage'] = $config['field_personnel_money_initiator'] ?? 0; + break; + case 10: + $isToExamine = $config['external_personnel_process'] ?? 0; + $data['platform_brokerage'] = $config['external_personnel_money_platform'] ?? 0; + $data['initiator_brokerage'] = $config['external_personnel_money_initiator'] ?? 0; + break; case 3: $isToExamine = $config['field_staff_process'] ?? 0; $data['platform_brokerage'] = $config['field_staff_money_platform'] ?? 0; diff --git a/app/common/repositories/marketing/AgentRepository.php b/app/common/repositories/marketing/AgentRepository.php index 864f000..3bd9927 100644 --- a/app/common/repositories/marketing/AgentRepository.php +++ b/app/common/repositories/marketing/AgentRepository.php @@ -308,6 +308,22 @@ class AgentRepository extends BaseRepository{ 'province_money_initiator', 'province_money_platform', 'province_process', + // 总部外勤相关 + 'province_money_field_personnel', + 'field_staff_money_field_personnel', + 'internal_staff_money_field_personnel', + 'operator_money_field_personnel', + 'partner_money_field_personnel', + 'mer_money_field_personnel', + 'delivery_money_field_personnel', + 'field_personnel_money', + 'field_personnel_process', + 'field_personnel_money_platform', + 'field_personnel_money_initiator', + 'external_personnel_money', + 'external_personnel_process', + 'external_personnel_money_platform', + 'external_personnel_money_initiator', ]); $config['delivery_process'] = (int)$config['delivery_process']; $config['field_staff_process'] = (int)$config['field_staff_process']; @@ -316,6 +332,8 @@ class AgentRepository extends BaseRepository{ $config['operator_process'] = (int)$config['operator_process']; $config['partner_process'] = (int)$config['partner_process']; $config['province_process'] = (int)$config['province_process']; + $config['field_personnel_process'] = (int)$config['field_personnel_process']; + $config['external_personnel_process'] = (int)$config['external_personnel_process']; return $config; } diff --git a/app/controller/admin/marketing/Agent.php b/app/controller/admin/marketing/Agent.php index 48bff0a..af94e45 100644 --- a/app/controller/admin/marketing/Agent.php +++ b/app/controller/admin/marketing/Agent.php @@ -294,6 +294,22 @@ class Agent extends BaseController{ ['province_money_initiator',0], ['province_money_platform',0], ['province_process',0], + // 总部外勤佣金 + ['province_money_field_personnel',0], + ['field_staff_money_field_personnel',0], + ['internal_staff_money_field_personnel',0], + ['operator_money_field_personnel',0], + ['partner_money_field_personnel',0], + ['mer_money_field_personnel',0], + ['delivery_money_field_personnel',0], + ['field_personnel_money',0], + ['field_personnel_process',0], + ['field_personnel_money_platform',0], + ['field_personnel_money_initiator',0], + ['external_personnel_money',0], + ['external_personnel_process',0], + ['external_personnel_money_platform',0], + ['external_personnel_money_initiator',0], ]); // 保存信息 $cid = app()->make(ConfigClassifyRepository::class)->getConfigClassifyKeyById('agent_config', '代理中心配置');