| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317 |
- <?php
- // +----------------------------------------------------------------------
- // | likeadmin快速开发前后端分离管理后台(PHP版)
- // +----------------------------------------------------------------------
- // | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
- // | 开源版本可自由商用,可去除界面版权logo
- // | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
- // | github下载:https://github.com/likeshop-github/likeadmin
- // | 访问官网:https://www.likeadmin.cn
- // | likeadmin团队 版权所有 拥有最终解释权
- // +----------------------------------------------------------------------
- // | author: likeadminTeam
- // +----------------------------------------------------------------------
- namespace app\common\model\agricultural_machinery;
- use app\common\model\agricultural_machinery\ServiceCategory;
- use app\common\model\BaseModel;
- use app\common\model\asset\AssetArea;
- use app\common\model\recharge\RechargeOrder;
- use app\common\model\agricultural_machinery\MechanicalCate;
- use app\common\service\FileService;
- use app\common\model\user\User;
- use think\model\concern\SoftDelete;
- /**
- * 服务管理模型
- * Class ArticleCate
- * @package app\common\model\article;
- */
- class UserService extends BaseModel
- {
- use SoftDelete;
- protected $deleteTime = 'delete_time';
- /**
- * @notes 关联用户
- * @return \think\model\relation\HasMany
- * @author 段誉
- * @date 2022/10/19 16:59
- */
- public function user()
- {
- return $this->hasOne(User::class, 'id', 'user_id')->field('id,nickname,avatar');
- }
- public function orderInfo()
- {
- return $this->hasOne(RechargeOrder::class, 'id', 'order_id');
- }
- /**
- * @notes 状态描述
- * @param $value
- * @param $data
- * @return string
- * @author 段誉 状态 0 新增 1 有效 2 已过期
- * @date 2022/9/15 11:25
- */
- public function getStatusDescAttr($value, $data)
- {
- $status = $data['status'];
- $desc = [
- 0 => '新增',
- 1 => '已支付',
- 2 => '已过期',
- ];
- return $desc[$status] ?? '';
- }
- public function getPayStatusDescAttr($value, $data)
- {
- $status = $data['pay_status'];
- $desc = [
- 0 => '未支付',
- 1 => '已支付',
- ];
- return $desc[$status] ?? '';
- }
- /**
- * @notes
- * @param $value
- * @param $data
- * @return int
- * @author 段誉
- * @date 2022/9/15 11:32
- */
- public function getPayInfoAttr($value, $data)
- {
- $where['user_id'] = $data['user_id'];
- $rechare_order = RechargeOrder::where($where)->order('id desc')->find();
- return $rechare_order;
- }
- public function getTypeDescAttr($value,$data){
- $type = $data['type'];
- $desc = [
- 1 => '农机手',
- 2 => '烘干服务',
- 3 => '飞防服务',
- ];
- return $desc[$type] ?? '';
- }
- public function getCateDescAttr($value,$data){
- $cate_id_arr = explode(',',$data['cate_id']);
- $cate_id_arr = array_filter($cate_id_arr);
- $cateWhere = [];
- $cateWhere[]=['id','in',$cate_id_arr];
- $cate_list = ServiceCategory::where($cateWhere)->field('id,name')->select()->toArray();
- $cate_arr = array_column($cate_list,'name');
- $cate_str = implode(',',$cate_arr);
- return['cate_str'=>$cate_str,'cate_arr'=>$cate_list];
- }
- public function getAreaDescAttr($value,$data){
- $area_id_arr = explode(',',$data['area_id']);
- $area_id_arr = array_filter($area_id_arr);
- $aresWhere = [];
- $aresWhere[]=['id','in',$area_id_arr];
- $area_list = AssetArea::where($aresWhere)->field('id,title')->select()->toArray();
- $area_arr = array_column($area_list,'title');
- $area_str = implode(',',$area_arr);
- return['area_str'=>$area_str,'area_arr'=>$area_list];
- }
- public function getMechanicalCateDescAttr($value,$data){
- $area_id_arr = explode(',',$data['mechanical_cate_id']);
- $area_id_arr = array_filter($area_id_arr);
- $aresWhere = [];
- $aresWhere[]=['id','in',$area_id_arr];
- $area_list = MechanicalCate::where($aresWhere)->field('id,name')->select()->toArray();
- $area_arr = array_column($area_list,'name');
- $area_str = implode(',',$area_arr);
- return['mechanical_cate_str'=>$area_str,'mechanical_cate_arr'=>$area_list];
- }
- /**
- * @notes 设置图片域名
- * @param $value
- * @param $data
- * @return array|string|string[]|null
- * @author 段誉
- * @date 2022/9/28 10:17
- */
- public function getContentAttr($value, $data)
- {
- return get_file_domain($value);
- }
- /**
- * @notes 清除图片域名
- * @param $value
- * @param $data
- * @return array|string|string[]
- * @author 段誉
- * @date 2022/9/28 10:17
- */
- public function setContentAttr($value, $data)
- {
- return clear_file_domain($value);
- }
- /**
- * @notes 清除图片域名
- * @param $value
- * @param $data
- * @return array|string|string[]
- * @author 段誉
- * @date 2022/9/28 10:17
- */
- // public function setImagesAttr($value,$data)
- // {
- // $imagesArr = explode(',',$data['images']);
- // $imagesStr = '';
- // foreach($imagesArr as $k=>$v){
- // if($k==0){
- // $imagesStr = clear_file_domain($v);
- // }else{
- // $imagesStr .=','. clear_file_domain($v);
- // }
- //
- // }
- // return $imagesStr;
- // }
- // public function setDriverImageAttr($value,$data)
- // {
- // return $imagesStr = clear_file_domain($data['driver_image']);
- // $imagesArr = explode(',',$data['driver_image']);
- // $imagesStr = '';
- // foreach($imagesArr as $k=>$v){
- // if($k==0){
- // $imagesStr = clear_file_domain($v);
- // }else{
- // $imagesStr .=','. clear_file_domain($v);
- // }
- //
- // }
- // return $imagesStr;
- // }
- // public function setDrivingImageAttr($value,$data)
- // {
- // $imagesArr = explode(',',$data['driving_image']);
- // $imagesStr = '';
- // foreach($imagesArr as $k=>$v){
- // if($k==0){
- // $imagesStr = clear_file_domain($v);
- // }else{
- // $imagesStr .=','. clear_file_domain($v);
- // }
- //
- // }
- //
- // return $imagesStr;
- // }
- // public function setAgriculturalImageAttr($value,$data)
- // {
- // $imagesArr = explode(',',$data['agricultural_image']);
- // $imagesStr = '';
- // foreach($imagesArr as $k=>$v){
- // if($k==0){
- // $imagesStr = clear_file_domain($v);
- // }else{
- // $imagesStr .=','. clear_file_domain($v);
- // }
- //
- // }
- // return $imagesStr;
- // }
- /**
- * @notes 加图片域名
- * @param $value
- * @param $data
- * @return array|string|string[]
- * @author 段誉
- * @date 2022/9/28 10:17
- */
- public function getImagesAttr($value,$data)
- {
- $imagesArr = explode(',',$data['images']);
- $imagesStr = '';
- foreach($imagesArr as $k=>$v){
- if($k==0){
- $imagesStr = FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }else{
- $imagesStr .=','. FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }
- }
- return $imagesStr;
- }
- public function getDriverImageAttr($value,$data)
- {
- $imagesArr = explode(',',$data['driver_image']);
- $imagesStr = '';
- foreach($imagesArr as $k=>$v){
- if($k==0){
- $imagesStr = FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }else{
- $imagesStr .=','. FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }
- }
- return $imagesStr;
- }
- public function getDrivingImageAttr($value,$data)
- {
- $imagesArr = explode(',',$data['driving_image']);
- $imagesStr = '';
- foreach($imagesArr as $k=>$v){
- if($k==0){
- $imagesStr = FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }else{
- $imagesStr .=','. FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }
- }
- return $imagesStr;
- }
- public function getAgriculturalImageAttr($value,$data)
- {
- $imagesArr = explode(',',$data['agricultural_image']);
- $imagesStr = '';
- foreach($imagesArr as $k=>$v){
- if($k==0){
- $imagesStr = FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }else{
- $imagesStr .=','. FileService::getFileUrl(trim($v, '/')); //get_file_domain($v);
- }
- }
- return $imagesStr;
- }
- }
|