<?php
namespace app\common\model;
use think\Model;
/**
* 期望对象模型
*/
class Expect Extends Model
{
// 表名
protected $name = 'expect';
// 开启自动写入时间戳字段
protected $autoWriteTimestamp = 'int';
/**
* 获取用户期望对象对应标签列表
* $expect 格式 1,2,3
* return $user_ids;用户ID集合
*/
public static function getTagsByExpect($expect) {
if(!$expect) return false;
$user_ids = [];
$where = [];
$where['id'] = ["in",$expect];
$list = self::where($where)->select();
$tag_ids = [];
if($list) foreach($list as $k => $v) {
$ids = explode(',',$v['tag_ids']);
if($ids) foreach($ids as $m => $n) {
$tag_ids[] = $n;
}
}
$tag_ids = array_unique($tag_ids);
if($tag_ids) {
$tag_ids_str = implode(",",$tag_ids);
$tagCanbeSearch = config('site.tagCanbeSearch');
// 获取对应用户ID
$where = [];
$where['tag_id'] = ['in',$tag_ids_str];
$where['number'] = ['gt',$tagCanbeSearch];
$user_ids = \app\common\model\TagUser::where($where)->column("user_id");
$user_ids = array_unique($user_ids);
}
return $user_ids;
}
public static function getExpectNames($expect_ids) {
if($expect_ids) {
$expect_ids = explode(',',$expect_ids);
$expect_names = self::where(['id'=>['in',$expect_ids]])->column('name');
} else {
$expect_names = [];
}
return $expect_names;
}
}