<?php namespace App\Model; use Illuminate\Database\Eloquent\Model; use App\Model\OrderModel; class CrmModel extends Model { protected $connection = 'crm'; protected $table = 'user'; protected $primaryKey = 'user_id'; public $timestamps = false; // 获取用户绑定的业务员ID public function getSaleId($user_id) { $user = $this->where('outter_uid', $user_id)->select('user_id')->first(); if (!$user) return false; $sales = $this->from('salesman')->where('user_id', $user->user_id)->select('sale_id')->first(); return $sales ? $sales->sale_id : 0; } // 判断用户与客服是否存在关联关系 public function isBind($user_id, $sale_id) { $map = []; $map['user_id'] = $user_id; $map['sale_id'] = $sale_id; $map['status'] = 0; return $this->from('invoice_com_user')->where($map)->value('id'); } // 获取用户跟进的销售 public function getUserSaleId($user_id) { return $this->from('invoice_com_user')->where('user_id', $user_id)->value('sale_id'); } // 获取当前销售的成交用户上限 public function getOrderUserLimit($sale_id) { return $this->from('employee_card')->where('sale_id', $sale_id)->value('order_user_limit'); } // 获取当前销售 已下单用户数量 public function getSaleOrderUserCount($sale_id) { $users = $this->from('invoice_com_user')->where('user_id', '<>', 0)->where('sale_id', $sale_id)->lists('user_id'); if (empty($users)) return 0; return OrderModel::whereIn('user_id', $users)->where('status', '<>', -1)->where('sale_id', $sale_id)->groupBy('user_id')->get()->count(); // 去重+统计 laravel需要先get() } }