|
@@ -11,6 +11,7 @@ namespace General\Services\User;
|
|
|
|
|
|
use General\Models\User\SubscribeRecord;
|
|
use General\Models\User\SubscribeRecord;
|
|
use General\Models\User\User;
|
|
use General\Models\User\User;
|
|
|
|
+use Illuminate\Support\Facades\DB;
|
|
|
|
|
|
class UserService
|
|
class UserService
|
|
{
|
|
{
|
|
@@ -30,6 +31,29 @@ class UserService
|
|
return $sql->paginate(100);
|
|
return $sql->paginate(100);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function companyAuthUsersNew($channel_id,$start_time = '',$end_time = '',$uids = [])
|
|
|
|
+ {
|
|
|
|
+ $query = User::leftjoin('force_subscribe_users','force_subscribe_users.uid','users.id')
|
|
|
|
+ ->leftjoin('ww_external_contact_infos','ww_external_contact_infos.uid','users.id')
|
|
|
|
+ ->select('users.*','force_subscribe_users.appid','force_subscribe_users.openid','force_subscribe_users.is_subscribed',
|
|
|
|
+ 'force_subscribe_users.subscribe_time','ww_external_contact_infos.external_user_id','ww_external_contact_infos.open_external_user_id',
|
|
|
|
+ 'ww_external_contact_infos.unionid',
|
|
|
|
+ DB::raw("(select ww_corp_infos.agent_id from ww_corp_infos where ww_corp_infos.corp_id=ww_external_contact_infos.corp_id and ww_corp_infos.state='normal') as agent_id"))
|
|
|
|
+ ->where('users.distribution_channel_id',$channel_id)
|
|
|
|
+ ->orderBy('id', 'desc');
|
|
|
|
+
|
|
|
|
+ if($start_time){
|
|
|
|
+ $query->where('users.created_at', '>=', $start_time);
|
|
|
|
+ }
|
|
|
|
+ if ($end_time) {
|
|
|
|
+ $query->where('users.created_at', '<=', $end_time);
|
|
|
|
+ }
|
|
|
|
+ if ($uids) {
|
|
|
|
+ $query->whereIn('users.id', $uids);
|
|
|
|
+ }
|
|
|
|
+ return $query->paginate(100);
|
|
|
|
+ }
|
|
|
|
+
|
|
public function findSubscribeRecords(int $channel_id, array $uids)
|
|
public function findSubscribeRecords(int $channel_id, array $uids)
|
|
{
|
|
{
|
|
return SubscribeRecord::where('distribution_channel_id', $channel_id)
|
|
return SubscribeRecord::where('distribution_channel_id', $channel_id)
|