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; } }