diff --git a/backend/app/api/controller/v1/user/UserBillController.php b/backend/app/api/controller/v1/user/UserBillController.php index 375b5f6c1..deb921edf 100644 --- a/backend/app/api/controller/v1/user/UserBillController.php +++ b/backend/app/api/controller/v1/user/UserBillController.php @@ -17,7 +17,6 @@ use app\services\other\QrcodeServices; use app\services\system\attachment\SystemAttachmentServices; use app\services\system\config\SystemConfigServices; use app\services\user\UserBillServices; -use app\services\user\UserBrokerageServices; use app\services\user\UserMoneyServices; use app\services\driver\upload\UploadService; @@ -42,16 +41,6 @@ class UserBillController $this->services = $services; } - /** - * 推广数据 昨天的佣金 累计提现金额 当前佣金 - * @param Request $request - * @return mixed - */ - public function commission(Request $request) - { - $uid = (int)$request->uid(); - return app('json')->success($this->services->commission($uid)); - } /** * 推广订单 @@ -70,45 +59,7 @@ class UserBillController return app('json')->success($this->services->spread_order($uid, $orderInfo)); } - /** - * 推广佣金明细 - * @param Request $request - * @param $type 0 全部 1 消费 2 充值 3 返佣 4 提现 - * @return mixed - */ - public function spreadCommission(Request $request, $type) - { - $uid = (int)$request->uid(); - $data = []; - switch ($type) { - case 0: - case 1: - case 2: - /** @var UserMoneyServices $moneyService */ - $moneyService = app()->make(UserMoneyServices::class); - $data = $moneyService->getMoneyList($uid, $type); - break; - case 3: - case 4: - /** @var UserBrokerageServices $brokerageService */ - $brokerageService = app()->make(UserBrokerageServices::class); - $data = $brokerageService->getBrokerageList($uid, $type); - break; - } - return app('json')->success($data); - } - /** - * 推广 佣金/提现 总和 - * @param Request $request - * @param $type 3 佣金 4 提现 - * @return mixed - */ - public function spreadCount(Request $request, $type) - { - $uid = (int)$request->uid(); - return app('json')->success(['count' => $this->services->spread_count($uid, $type)]); - } /** @@ -133,9 +84,9 @@ class UserBillController $routineSpreadBanner[] = ['pic' => $item]; } if ($type == 1) { - $poster = $user['uid'] . '_' . $user['is_promoter'] . '_user_routine_poster_'; + $poster = $user['uid'] . '_user_routine_poster_'; } else { - $poster = $user['uid'] . '_' . $user['is_promoter'] . '_user_wap_poster_'; + $poster = $user['uid'] . '_user_wap_poster_'; } /** @var SystemAttachmentServices $systemAttachment */ $systemAttachment = app()->make(SystemAttachmentServices::class); @@ -173,7 +124,7 @@ class UserBillController $siteUrl = sys_config('site_url'); if ($type == 1) { //小程序 - $name = $user['uid'] . '_' . $user['is_promoter'] . '_user_routine.jpg'; + $name = $user['uid'] . '_user_routine.jpg'; $imageInfo = $systemAttachment->getInfo(['real_name' => $name, 'module_type' => 2]); //检测远程文件是否存在 if (isset($imageInfo['att_dir']) && strstr($imageInfo['att_dir'], 'http') !== false && curl_file_exist($imageInfo['att_dir']) === false) { @@ -248,7 +199,7 @@ class UserBillController ), 'background' => $item['pic'] ); - $resRoutine = $resRoutine && $posterInfo = PosterServices::setSharePoster($config, 'routine/spread/poster', $user['uid'] . '_' . $user['is_promoter'] . '_user_routine_poster_' . $key . '.jpg'); + $resRoutine = $resRoutine && $posterInfo = PosterServices::setSharePoster($config, 'routine/spread/poster', $user['uid'] . '_user_routine_poster_' . $key . '.jpg'); if (!is_array($posterInfo)) return app('json')->fail($posterInfo); $systemAttachment->attachmentAdd($posterInfo['name'], $posterInfo['size'], $posterInfo['type'], $posterInfo['dir'], $posterInfo['thumb_path'], 1, $posterInfo['image_type'], $posterInfo['time'], 2); if ($resRoutine) { @@ -261,7 +212,7 @@ class UserBillController } } else if ($type == 2) { //公众号 - $name = $user['uid'] . '_' . $user['is_promoter'] . '_user_wap.jpg'; + $name = $user['uid'] . '_user_wap.jpg'; $imageInfo = $systemAttachment->getInfo(['real_name' => $name, 'module_type' => 2]); //检测远程文件是否存在 if (isset($imageInfo['att_dir']) && strstr($imageInfo['att_dir'], 'http') !== false && curl_file_exist($imageInfo['att_dir']) === false) { @@ -321,7 +272,7 @@ class UserBillController ), 'background' => $item['pic'] ); - $resWap = $resWap && $posterInfo = PosterServices::setSharePoster($config, 'wap/spread/poster', $user['uid'] . '_' . $user['is_promoter'] . '_user_wap_poster_' . $key . '.jpg'); + $resWap = $resWap && $posterInfo = PosterServices::setSharePoster($config, 'wap/spread/poster', $user['uid'] . '_user_wap_poster_' . $key . '.jpg'); if (!is_array($posterInfo)) return app('json')->fail($posterInfo); $systemAttachment->attachmentAdd($posterInfo['name'], $posterInfo['size'], $posterInfo['type'], $posterInfo['dir'], $posterInfo['thumb_path'], 1, $posterInfo['image_type'], $posterInfo['time'], 2); if ($resWap) { @@ -339,6 +290,43 @@ class UserBillController } } + /** + * 分享邀新海报素材 + * 分享邀新只需要海报背景与邀请二维码,不涉及佣金/分销结算数据 + * @param Request $request + * @return mixed + */ + public function getSpreadInfo(Request $request) + { + /** @var SystemConfigServices $systemConfigServices */ + $systemConfigServices = app()->make(SystemConfigServices::class); + // 底图优先取「用户注册设置 - 邀新海报背景图」;未配置时回退组合数据里的海报组 + $posterBg = trim((string)sys_config('invite_poster_bg', '')); + if ($posterBg !== '') { + $spreadBanner = [set_file_url($posterBg, sys_config('site_url'))]; + } else { + $spreadBanner = $systemConfigServices->getSpreadBanner() ?? []; + } + $routineSpreadBanner = []; + foreach ($spreadBanner as $item) { + $routineSpreadBanner[] = ['pic' => $item]; + } + //公众号环境返回带邀请人标识的临时二维码,其它端由前端自行生成(?spid=uid) + if (sys_config('share_qrcode', 0) && $request->isWechat()) { + /** @var QrcodeServices $qrcodeService */ + $qrcodeService = app()->make(QrcodeServices::class); + $qrcode = $qrcodeService->getTemporaryQrcode('spread', (int)$request->uid())->url; + } else { + $qrcode = ''; + } + return app('json')->success([ + 'spread' => $routineSpreadBanner, + 'qrcode' => $qrcode, + 'nickname' => $request->user('nickname'), + 'site_name' => sys_config('site_name'), + ]); + } + /** * 获取小程序二维码 * @param Request $request @@ -354,7 +342,7 @@ class UserBillController /** @var SystemAttachmentServices $systemAttachment */ $systemAttachment = app()->make(SystemAttachmentServices::class); //小程序 - $name = $user['uid'] . '_' . $user['is_promoter'] . '_user_routine.jpg'; + $name = $user['uid'] . '_user_routine.jpg'; $imageInfo = $systemAttachment->getInfo(['real_name' => $name, 'module_type' => 2]); //检测远程文件是否存在 if (isset($imageInfo['att_dir']) && strstr($imageInfo['att_dir'], 'http') !== false && curl_file_exist($imageInfo['att_dir']) === false) { @@ -390,42 +378,6 @@ class UserBillController return app('json')->success(['url' => $urlCode]); } - /** - * 获取海报详细信息 - * @param Request $request - * @return mixed - * @throws \think\db\exception\DataNotFoundException - * @throws \think\db\exception\DbException - * @throws \think\db\exception\ModelNotFoundException - */ - public function getSpreadInfo(Request $request) - { - /** @var SystemConfigServices $systemConfigServices */ - $systemConfigServices = app()->make(SystemConfigServices::class); - $spreadBanner = $systemConfigServices->getSpreadBanner() ?? []; - $bannerCount = count($spreadBanner); - $routineSpreadBanner = []; - if ($bannerCount) { - foreach ($spreadBanner as $item) { - $routineSpreadBanner[] = ['pic' => $item]; - } - } - - if (sys_config('share_qrcode', 0) && request()->isWechat()) { - /** @var QrcodeServices $qrcodeService */ - $qrcodeService = app()->make(QrcodeServices::class); - $qrcode = $qrcodeService->getTemporaryQrcode('spread', $request->uid())->url; - } else { - $qrcode = ''; - } - - return app('json')->success([ - 'spread' => $routineSpreadBanner, - 'qrcode' => $qrcode, - 'nickname' => $request->user('nickname'), - 'site_name' => sys_config('site_name') - ]); - } /** * 积分记录 @@ -442,36 +394,6 @@ class UserBillController return app('json')->success($data['list'] ?? []); } - /** - * 佣金排行 - * @param Request $request - * @return mixed - * @throws \think\db\exception\DataNotFoundException - * @throws \think\db\exception\DbException - * @throws \think\db\exception\ModelNotFoundException - */ - public function brokerageRank(Request $request) - { - $data = $request->getMore([ - ['page', ''], - ['limit'], - ['type'] - ]); - $uid = (int)$request->uid(); - return app('json')->success($this->services->brokerage_rank($uid, $data['type'])); - } - - /** - * 事业部/代理商推广订单 - * @param Request $request - * @return mixed - */ - public function divisionOrder(Request $request) - { - $uid = (int)$request->uid(); - return app('json')->success($this->services->divisionOrder($uid)); - } - /** * 资金明细(0=全部, 1=消费, 2=充值) * @param Request $request diff --git a/backend/public/install/data/system_config_data.sql b/backend/public/install/data/system_config_data.sql index 326cf5613..55361aabf 100755 --- a/backend/public/install/data/system_config_data.sql +++ b/backend/public/install/data/system_config_data.sql @@ -69,4 +69,5 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config (471,'elec_invoice_tax_rate','text','input',50,'',1,'{\"required\":false}',13,0,'\"0\"','电子发票税率','请填写电子发票的税率,填写0-100直接的整数,如:13%的税率请填写13',0,1,0,0,0), (472,'elec_invoice_cate_name','text','input',50,'',1,'{\"required\":false}',13,0,'\"\"','发票分类名称','电子发票分类对应的名称,用于回显',0,1,0,0,0), (187,'copy_product_apikey','text','input',136,'',1,'',0,0,'\"\"','99Api apiKey','注册99api采集接口在个人中心复制key',0,1,1,292,2), -(292,'system_product_copy_type','radio','input',136,'1=>一号通\n2=>99Api',1,'',0,0,'1','商品采集接口','采集商品接口选择,一号通快速注册开通使用不用配置apikey,或者去99api网址:https://www.99api.com/注册帐号,推荐一号通方便快捷',999,1,0,0,0); +(292,'system_product_copy_type','radio','input',136,'1=>一号通\n2=>99Api',1,'',0,0,'1','商品采集接口','采集商品接口选择,一号通快速注册开通使用不用配置apikey,或者去99api网址:https://www.99api.com/注册帐号,推荐一号通方便快捷',999,1,0,0,0), +(520,'invite_poster_bg','upload','input',105,'',1,'',0,0,'\"\"','邀新海报背景图','分享邀新海报的底图,建议尺寸 750*1334(9:16);未配置时回退「组合数据-个人中心分销海报」,两者都没有则邀新页无海报',99,1,0,0,0);