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.
225 lines
4.5 KiB
225 lines
4.5 KiB
2 months ago
|
<?php
|
||
|
namespace app\dynamic\model;
|
||
|
|
||
|
use app\BaseModel;
|
||
|
use think\facade\Db;
|
||
|
|
||
|
class DynamicList extends BaseModel
|
||
|
{
|
||
|
//定义表名
|
||
|
protected $name = 'massage_dynamic_list';
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
protected $append = [
|
||
|
|
||
|
|
||
|
'friend_time'
|
||
|
];
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 13:54
|
||
|
* @功能说明:处理友好时间
|
||
|
*/
|
||
|
public function getFriendTimeAttr($value,$data){
|
||
|
|
||
|
if(isset($data['create_time'])){
|
||
|
|
||
|
return lbGetDates($data['create_time']);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
/**
|
||
|
* @param $value
|
||
|
* @param $data
|
||
|
* @功能说明:
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-30 14:58
|
||
|
*/
|
||
|
public function getImgsAttr($value,$data){
|
||
|
|
||
|
if(!empty($value)){
|
||
|
|
||
|
return explode(',',$value);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2020-09-29 11:04
|
||
|
* @功能说明:添加
|
||
|
*/
|
||
|
public function dataAdd($data){
|
||
|
|
||
|
$data['create_time'] = time();
|
||
|
|
||
|
$res = $this->insert($data);
|
||
|
|
||
|
return $res;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2020-09-29 11:05
|
||
|
* @功能说明:编辑
|
||
|
*/
|
||
|
public function dataUpdate($dis,$data){
|
||
|
|
||
|
$res = $this->where($dis)->update($data);
|
||
|
|
||
|
return $res;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2020-09-29 11:06
|
||
|
* @功能说明:列表
|
||
|
*/
|
||
|
public function dataList($dis,$page=10){
|
||
|
|
||
|
$data = $this->where($dis)->order('top desc,id desc')->paginate($page)->toArray();
|
||
|
|
||
|
return $data;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2020-09-29 11:43
|
||
|
* @功能说明:
|
||
|
*/
|
||
|
public function dataInfo($dis){
|
||
|
|
||
|
$data = $this->where($dis)->find();
|
||
|
|
||
|
return !empty($data)?$data->toArray():[];
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 14:11
|
||
|
* @功能说明:
|
||
|
*/
|
||
|
public function coachDataList($dis,$alh,$page=10){
|
||
|
|
||
|
$data = $this->alias('a')
|
||
|
->join('massage_service_coach_list b','a.coach_id = b.id','left')
|
||
|
->where($dis)
|
||
|
->field(['a.*',$alh,'b.coach_name,b.work_img'])
|
||
|
->order('a.top desc,a.create_time desc,distance asc,a.id desc')
|
||
|
->paginate($page)
|
||
|
->toArray();
|
||
|
|
||
|
if(!empty($data['data'])){
|
||
|
|
||
|
foreach ($data['data'] as &$v){
|
||
|
|
||
|
$v['distance'] = distance_text($v['distance']);
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return $data;
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 14:11
|
||
|
* @功能说明:
|
||
|
*/
|
||
|
public function adminDataList($dis,$page=10){
|
||
|
|
||
|
$data = $this->alias('a')
|
||
|
->join('massage_service_coach_list b','a.coach_id = b.id','left')
|
||
|
->where($dis)
|
||
|
->field('a.*,b.coach_name,b.work_img')
|
||
|
->order('a.top desc,a.create_time desc,a.id desc')
|
||
|
->paginate($page)
|
||
|
->toArray();
|
||
|
|
||
|
return $data;
|
||
|
}
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 14:11
|
||
|
* @功能说明:
|
||
|
*/
|
||
|
public function coachFollowDataList($dis,$alh,$page=10){
|
||
|
|
||
|
$data = $this->alias('a')
|
||
|
->join('massage_service_coach_list b','a.coach_id = b.id','left')
|
||
|
->join('massage_dynamic_follow c','a.coach_id = c.coach_id AND a.create_time >= c.create_time')
|
||
|
->where($dis)
|
||
|
->field(['a.*',$alh,'b.coach_name,b.work_img'])
|
||
|
->group('a.id')
|
||
|
->order('a.top desc,a.create_time desc,distance asc,a.id desc')
|
||
|
->paginate($page)
|
||
|
->toArray();
|
||
|
|
||
|
if(!empty($data['data'])){
|
||
|
|
||
|
foreach ($data['data'] as &$v){
|
||
|
|
||
|
$v['distance'] = distance_text($v['distance']);
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return $data;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 11:12
|
||
|
* @功能说明:获取动态评论数量
|
||
|
*/
|
||
|
public function getCommentNum($dis){
|
||
|
|
||
|
$num = $this->alias('a')
|
||
|
->join('massage_dynamic_comment b','a.id = b.dynamic_id')
|
||
|
->where($dis)
|
||
|
->where('b.status','=',2)
|
||
|
->group('b.id')
|
||
|
->count();
|
||
|
|
||
|
return $num;
|
||
|
}
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @author chenniang
|
||
|
* @DataTime: 2023-01-29 11:12
|
||
|
* @功能说明:获取动态点赞数量
|
||
|
*/
|
||
|
public function getThumbsNum($dis){
|
||
|
|
||
|
$num = $this->alias('a')
|
||
|
->join('massage_dynamic_thumbs b','a.id = b.dynamic_id')
|
||
|
->where($dis)
|
||
|
->where('b.status','=',1)
|
||
|
->group('b.id')
|
||
|
->count();
|
||
|
|
||
|
return $num;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|