徐总多门店
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
jiuhaoshenghuo/app/AppService.php

83 lines
3.0 KiB

<?php
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
namespace app;
use app\listener\wechat\OffcialAccountListener;
use app\listener\wechat\OpenPlatformListener;
use app\listener\wechat\RoutineListener;
use app\listener\wechat\WorkListener;
use crmeb\services\SystemConfigService;
use app\services\work\WorkConfigServices;
use crmeb\services\GroupDataService;
use crmeb\services\wechat\config\HttpCommonConfig;
use crmeb\services\wechat\config\LogCommonConfig;
use crmeb\services\wechat\config\WorkConfig;
use crmeb\services\wechat\MiniProgram;
use crmeb\services\wechat\OfficialAccount;
use crmeb\services\wechat\OpenPlatform;
use crmeb\services\wechat\Work;
use crmeb\utils\Json;
use think\Service;
use Yurun\Util\Swoole\Guzzle\SwooleHandler;
use GuzzleHttp\DefaultHandler;
/**
* Class AppService
* @package app
*/
class AppService extends Service
{
public $bind = [
'json' => Json::class,
'sysConfig' => SystemConfigService::class,
'sysGroupData' => GroupDataService::class
];
public function boot()
{
defined('DS') || define('DS', DIRECTORY_SEPARATOR);
DefaultHandler::setDefaultHandler(SwooleHandler::class);
}
/**
* 注册
*/
public function register()
{
//http配置服务
$this->app->bind(HttpCommonConfig::class, function () {
return (new HttpCommonConfig())->setServe(\app\services\system\config\SystemConfigServices::class);
});
//公众号
$this->app->bind(OfficialAccount::class, function () {
return (new OfficialAccount)->setPushMessageHandler(OffcialAccountListener::class);
});
//小程序
$this->app->bind(MiniProgram::class, function () {
return (new MiniProgram)->setPushMessageHandler(RoutineListener::class);
});
//开放平台
$this->app->bind(OpenPlatform::class, function () {
return (new OpenPlatform)->setPushMessageHandler(OpenPlatformListener::class);
});
//实例化企业微信配置
$this->app->bind(WorkConfig::class, function () {
return (new WorkConfig(new LogCommonConfig(), $this->app->make(HttpCommonConfig::class)))->setHandler(WorkConfigServices::class);
});
//企业微信
$this->app->bind(Work::class, function () {
return (new Work)->setPushMessageHandler(WorkListener::class)
->setConfigHandler(WorkConfigServices::class);
});
}
}