123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- <?php
- /**
- * Created by PhpStorm.
- * User: hp
- * Date: 2017/12/2
- * Time: 15:56
- */
- namespace App\Modules\Channel\Services;
- use App\Modules\Channel\Models\Channel;
- use App\Modules\Channel\Models\ChannelUser;
- use DB;
- class ChannelUserService
- {
- /**
- * 创建渠道
- * @param array $params ['password','name','pay_type','nickname','latest_login_ip','latest_login_time','remark','register_ip']
- * @return object
- */
- static function createUser($params)
- {
- return ChannelUser::createUser($params);
- }
- /**
- * 登陆
- */
- static function login($phone, $password)
- {
- return ChannelUser::login($phone, $password);
- }
- /**
- * 修改密码
- * @param string $phone 手机号码
- * @param string $password 加密后密码
- */
- static function modifyPassword($phone, $password)
- {
- return ChannelUser::modifyPassword($phone, $password);
- }
- /**
- * 判断是否注册
- */
- static function isRegistered($phone)
- {
- return ChannelUser::isRegistered($phone);
- }
- /**
- * 通过手机号码获取
- */
- static function getByPhone($phone)
- {
- return ChannelUser::getByPhone($phone);
- }
- /**
- * 通过ID获取
- */
- static function getById($id)
- {
- return ChannelUser::getById((int)$id);
- }
- /**
- * 通过ID获取 is_important
- */
- static function getImpotantById($id)
- {
- if (empty($id)) {
- return 0;
- }
- return ChannelUser::getImpotantById($id);
- }
- /**
- * 修改渠道信息
- * @param $id 渠道ID
- * @param $params []
- * name:渠道名称 可选
- * nickname:渠道昵称 可选
- * pay_merchant_id: 支付通道 可选
- * distribution_manages_id: 管理员 可选
- * phone:电话 可选
- * person_in_charge_name:负责人 可选
- * remark:备注 可选
- * is_enabled: 是否开通 0:未审核; 1:审核通过
- * company_id:
- * company_name:
- * @return mixed
- */
- public static function updateChannelData($id, $params = [])
- {
- return ChannelUser::updateChannelUserData($id, $params);
- }
- public static function updateChannelUserManager($distribution_manages_id, $company_id)
- {
- $channelUserList = ChannelUser::where('company_id', $company_id)->get();
- if ($channelUserList && count($channelUserList) > 0) {
- foreach ($channelUserList as $channelUser) {
- //更新 ChannelUser 对应 渠道 的商务 ID
- $distribution_manage = DB::table('distribution_manages')->find($distribution_manages_id);
- $manager = $distribution_manage?$distribution_manage->nickname:'';
- $affectedAA = DB::update('UPDATE distribution_channels SET distribution_manages_id=:distribution_manages_id,person_in_charge_name=:manager WHERE channel_user_id=:channel_user_id', ['distribution_manages_id' => $distribution_manages_id, 'channel_user_id' => $channelUser->id,'manager'=>$manager]);
- }
- }
- $company = DB::table('companies')->find($company_id);
- $company_name = $company?$company->name:'';
- $affected = DB::update('UPDATE channel_users SET distribution_manages_id=:distribution_manages_id,company_name=:company_name WHERE company_id=:company_id', ['distribution_manages_id' => $distribution_manages_id, 'company_id' => $company_id,'company_name'=>$company_name]);
- }
- /**
- * 获取渠道列表
- * @param $params []
- * channel_id:渠道ID 可选
- * channel_name:渠道名称 可选
- * search_name: 搜索名称
- * start_date:开始时间 可选
- * end_date:结束时间 可选
- * is_enabled: 是否开通 0:未审核; 1:审核通过
- * distribution_manages_id: 管理员 可选
- * @param $isAll
- * @return mixed
- */
- public static function getChannelList($params = [], $isAll = '')
- {
- return ChannelUser::getChannelUserList($params, $isAll);
- }
- /**
- * 获取公司对应的所有账户ID
- * @param $companyId
- * @return mixed
- */
- public static function getChannelUserIdListByCompany($companyId)
- {
- return ChannelUser::where('company_id', $companyId)->pluck('id');
- }
- /**
- * 获取渠道列表
- * @param $channelUserIds
- * @return mixed
- */
- public static function getChannelListByChannelUserIds($channelUserIds = [])
- {
- $search_object = Channel::select([
- 'distribution_channels.id',
- 'distribution_channels.name',
- 'distribution_channels.pay_merchant_id',
- 'distribution_channels.phone',
- 'distribution_channels.nickname',
- 'distribution_channels.person_in_charge_name',
- 'distribution_channels.latest_login_time',
- 'distribution_channels.remark',
- 'distribution_channels.latest_login_ip',
- 'distribution_channels.password',
- 'distribution_channels.register_ip',
- 'distribution_channels.is_enabled',
- 'distribution_channels.distribution_manages_id',
- 'distribution_channels.created_at',
- 'distribution_channels.channel_user_id',
- 'distribution_manages.account as distribution_manages_account',
- 'distribution_manages.number as distribution_manages_number',
- 'distribution_manages.nickname as distribution_manages_nickname',
- ])
- ->leftjoin('distribution_manages', 'distribution_manages.id', '=', 'distribution_channels.distribution_manages_id')
- ->orderBy('distribution_channels.id', 'desc')
- ->orderBy('distribution_channels.created_at', 'desc');
- return $search_object->whereIn('distribution_channels.channel_user_id', $channelUserIds)->get();
- }
- }
|