350 lines
7.4 KiB
PHP
Executable File
350 lines
7.4 KiB
PHP
Executable File
<?php
|
|
namespace app\common\model\coach;
|
|
use app\common\enum\coach\CoachEnum;
|
|
use app\common\model\BaseModel;
|
|
use app\common\model\Region;
|
|
use app\common\model\skill\Skill;
|
|
use app\common\service\FileService;
|
|
use think\model\concern\SoftDelete;
|
|
|
|
/**
|
|
* 技师模型类
|
|
* Class Coach
|
|
* @package app\common\model\coach
|
|
*/
|
|
class Coach extends BaseModel
|
|
{
|
|
use SoftDelete;
|
|
|
|
protected $deleteTime = 'delete_time';
|
|
protected $json = ['location'];
|
|
|
|
// 设置JSON数据返回数组
|
|
protected $jsonAssoc = true;
|
|
|
|
public function lifePhoto()
|
|
{
|
|
return $this->hasMany(CoachLifePhoto::class,'coach_id')->field('uri,coach_id');
|
|
}
|
|
|
|
|
|
public function goodsIds()
|
|
{
|
|
return $this->hasMany(CoachGoodsIndex::class,'coach_id')->field('goods_id,coach_id');
|
|
}
|
|
|
|
|
|
public function goods()
|
|
{
|
|
return $this->hasMany(CoachGoodsIndex::class,'coach_id');
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* @notes 获取工作状态
|
|
* @param $value
|
|
* @param $data
|
|
* @return string|string[]
|
|
* @author cjhao
|
|
* @date 2024/8/21 17:48
|
|
*/
|
|
public function getWorkStatusDescAttr($value,$data){
|
|
return CoachEnum::getWorkStatusDesc($data['work_status']);
|
|
}
|
|
|
|
public function getServerStatusDescAttr($value,$data){
|
|
return CoachEnum::getServerStatusDesc($data['server_status']);
|
|
}
|
|
|
|
/**
|
|
* @notes 将距离转成km格式显示
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author cjhao
|
|
* @date 2024/9/3 22:56
|
|
*/
|
|
public function getDistanceDescAttr($value,$data){
|
|
return round($data['distance'],2).'km';
|
|
}
|
|
|
|
/**
|
|
* @notes 获取审核状态
|
|
* @param $value
|
|
* @param $data
|
|
* @return string|string[]
|
|
* @author cjhao
|
|
* @date 2024/8/21 17:48
|
|
*/
|
|
public function getAuditStatusDescAttr($value,$data){
|
|
return CoachEnum::getAuditStatusDesc($data['audit_status']);
|
|
}
|
|
|
|
|
|
// public function getWorkInfoAttr($value,$data)
|
|
// {
|
|
// return [
|
|
// 'take_order' => 22,
|
|
// 'total_order' => 22,
|
|
// ];
|
|
// }
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getIdCardFrontAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setIdCardFrontAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getIdCardBackAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setIdCardBackAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getPortraitShootingAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setPortraitShootingAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getWorkPhotoAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setWorkPhotoAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getCertificationAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setCertificationAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getHealthCertificateAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
|
|
/**
|
|
* @notes 去掉图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function setHealthCertificateAttr($value,$data)
|
|
{
|
|
return FileService::setFileUrl($value);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 获取技能名称
|
|
* @param $value
|
|
* @param $data
|
|
* @return void
|
|
* @author cjhao
|
|
* @date 2024/8/26 12:49
|
|
*/
|
|
public function getSkillDescAttr($value,$data)
|
|
{
|
|
return Skill::where(['id'=>$data['skill_id']])->value('name');
|
|
}
|
|
|
|
/**
|
|
* @notes 获取地区
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author cjhao
|
|
* @date 2024/8/26 12:52
|
|
*/
|
|
public function getRegionDescAttr($value,$data)
|
|
{
|
|
if($data){
|
|
$lists = Region::where(['id'=>[$data['province_id'],$data['city_id'],$data['region_id']]])->column('name');
|
|
return implode('',$lists);
|
|
}
|
|
return '';
|
|
|
|
}
|
|
|
|
/**
|
|
* @notes 获取地区
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author cjhao
|
|
* @date 2024/8/26 12:52
|
|
*/
|
|
public function getRegionNameAttr($value,$data)
|
|
{
|
|
if($data){
|
|
return Region::where(['id'=>$data['region_id']])->value('name');
|
|
}
|
|
return '';
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 省份id
|
|
* @param $value
|
|
* @param $data
|
|
* @return mixed
|
|
* @author cjhao
|
|
* @date 2024/11/26 14:47
|
|
*/
|
|
public function getProvinceNameAttr($value,$data)
|
|
{
|
|
if($data){
|
|
return Region::where(['id'=>$data['province_id']])->value('name');
|
|
}
|
|
return '';
|
|
}
|
|
|
|
/**
|
|
* @notes 省份id
|
|
* @param $value
|
|
* @param $data
|
|
* @return mixed
|
|
* @author cjhao
|
|
* @date 2024/11/26 14:47
|
|
*/
|
|
public function getCityNameAttr($value,$data)
|
|
{
|
|
if($data){
|
|
return Region::where(['id'=>$data['city_id']])->value('name');
|
|
}
|
|
return '';
|
|
}
|
|
|
|
/**
|
|
* @notes 补全图片路径
|
|
* @param $value
|
|
* @param $data
|
|
* @return string
|
|
* @author ljj
|
|
* @date 2022/2/17 6:11 下午
|
|
*/
|
|
public function getAvatarAttr($value,$data)
|
|
{
|
|
return FileService::getFileUrl($value);
|
|
}
|
|
}
|