Browse Source

补字段

gorden 4 months ago
parent
commit
5899c12104

+ 64 - 55
app/admin/controller/client/EvaluateController.php

@@ -8,6 +8,7 @@ use app\model\ClientFavorite;
 use app\model\Goods;
 use app\model\GoodsEvaluate;
 use app\model\Member;
+use app\model\MemberRole;
 use support\exception\BusinessException;
 use support\Request;
 use support\Response;
@@ -21,18 +22,18 @@ class EvaluateController extends Curd
 
     public function select(Request $request): Response
     {
-        $goodsName = $request->get('goods_name','');
-        $searchTimes = $request->get('goods_evaluate_addtimes',[]);
+        $goodsName = $request->get('goods_name', '');
+        $searchTimes = $request->get('goods_evaluate_addtimes', []);
 
         [$where, $format, $limit, $field, $order] = $this->selectInput($request);
         $order = $request->get('order', 'desc');
         $field = $field ?? 'goods_evaluate_addtimes';
 
-        if ($goodsName != ''){
-            $goodsIds = Goods::where('goods_name','like','%'.$goodsName.'%')->pluck('goods_id')->toArray();
-            $where['join_evaluate_goods_id'] = ['in',implode(',',$goodsIds)];
+        if ($goodsName != '') {
+            $goodsIds = Goods::where('goods_name', 'like', '%' . $goodsName . '%')->pluck('goods_id')->toArray();
+            $where['join_evaluate_goods_id'] = ['in', implode(',', $goodsIds)];
         }
-        if(!empty($searchTimes)){
+        if (!empty($searchTimes)) {
             $searchTimes[0] = !empty($searchTimes[0]) ? strtotime($searchTimes[0]) : time();
             $searchTimes[1] = !empty($searchTimes[1]) ? strtotime($searchTimes[1]) : time();
 
@@ -42,6 +43,7 @@ class EvaluateController extends Curd
         $query = $this->doSelect($where, $field, $order);
         return $this->doFormat($query, $format, $limit);
     }
+
     protected function doSelect(array $where, string $field = null, string $order = 'desc')
     {
         $model = $this->model->with([
@@ -92,78 +94,85 @@ class EvaluateController extends Curd
 
     public function afterQuery($items)
     {
-        foreach ($items as &$item){
-            if (!empty($item->goods_evaluate_json)){
+        foreach ($items as &$item) {
+            if (!empty($item->goods_evaluate_json)) {
                 $imagesStr = '';
-                $goodsEvaluateJson = json_decode($item->goods_evaluate_json,true);
-                if (isset($goodsEvaluateJson['photo'])){
-                    foreach ($goodsEvaluateJson['photo'] as $images){
-                        if (isset($images['file'])){
-                            $imagesStr .= getenv('APP_IMAGE_DOMAIN').$images['file']['file_savepath'].$images['file']['file_savename'].',';
+                $goodsEvaluateJson = json_decode($item->goods_evaluate_json, true);
+                if (isset($goodsEvaluateJson['photo'])) {
+                    foreach ($goodsEvaluateJson['photo'] as $images) {
+                        if (isset($images['file'])) {
+                            $imagesStr .= getenv('APP_IMAGE_DOMAIN') . $images['file']['file_savepath'] . $images['file']['file_savename'] . ',';
                         }
                     }
                 }
-                if (isset($goodsEvaluateJson['desc'])){
+                if (isset($goodsEvaluateJson['desc'])) {
                     $item->desc = $goodsEvaluateJson['desc'];
                 }
-                $item->photos = rtrim($imagesStr,',');
+                $item->photos = rtrim($imagesStr, ',');
             }
         }
         return $items;
     }
 
-    public function info(Request $request):Response
+    public function info(Request $request): Response
     {
-        $goodsEvaluateId = $request->get('goods_evaluate_id','');
-        if (!$goodsEvaluateId){
+        $goodsEvaluateId = $request->get('goods_evaluate_id', '');
+        if (!$goodsEvaluateId) {
             return json_fail('参数异常');
         }
 
         $evaluate = GoodsEvaluate::with([
-            'member'=>function($query){
-                $query->select('member_id','member_mobile');
+            'member' => function ($query) {
+                $query->select('member_id', 'member_mobile', 'member_is_owner', 'join_member_role_id', 'member_is_vip', 'member_is_partner', 'member_is_referrer');
             },
-            'cert' => function ($query){
-                $query->select('join_cert_member_id','member_cert_name');
+            'cert' => function ($query) {
+                $query->select('join_cert_member_id', 'member_cert_name');
             },
-            'info' => function ($query){
-                $query->select('join_info_member_id','member_info_nickname','member_info_headimg');
+            'info' => function ($query) {
+                $query->select('join_info_member_id', 'member_info_nickname', 'member_info_headimg');
             },
-            'goods' => function($query){
-                $query->select('goods_id','goods_name','goods_cover','goods_sales_price');
+            'goods' => function ($query) {
+                $query->select('goods_id', 'goods_name', 'goods_cover', 'goods_sales_price');
             },
-            'order' => function($query){
-                $query->select('order_id','order_amount_pay','order_is_complete','order_status_system','order_status_payment','order_addtimes');
+            'order' => function ($query) {
+                $query->select('order_id', 'order_amount_pay', 'order_is_complete', 'order_status_system', 'order_status_payment', 'order_addtimes');
             }
-        ])->where('goods_evaluate_id',$goodsEvaluateId)
+        ])->where('goods_evaluate_id', $goodsEvaluateId)
             ->first();
 
-        if (!empty($evaluate->goods_evaluate_json)){
+        if (!empty($evaluate->goods_evaluate_json)) {
             $imagesStr = '';
-            $goodsEvaluateJson = json_decode($evaluate->goods_evaluate_json,true);
-            if (isset($goodsEvaluateJson['photo'])){
-                foreach($goodsEvaluateJson['photo'] as $file){
-                    if (isset($file['file'])){
-                        $imagesStr .= getenv('APP_IMAGE_DOMAIN_LOCAL').$file['file']['file_savepath'].$file['file']['file_savename'].',';
+            $goodsEvaluateJson = json_decode($evaluate->goods_evaluate_json, true);
+            if (isset($goodsEvaluateJson['photo'])) {
+                foreach ($goodsEvaluateJson['photo'] as $file) {
+                    if (isset($file['file'])) {
+                        $imagesStr .= getenv('APP_IMAGE_DOMAIN_LOCAL') . $file['file']['file_savepath'] . $file['file']['file_savename'] . ',';
                     }
                 }
-                $evaluate->photos = rtrim($imagesStr,',');
+                $evaluate->photos = rtrim($imagesStr, ',');
             }
-            if (isset($goodsEvaluateJson['desc'])){
+            if (isset($goodsEvaluateJson['desc'])) {
                 $evaluate->desc = $goodsEvaluateJson['desc'];
             }
         }
-
-        if (!empty($evaluate->info)){
-            $evaluate->info->member_info_headimg = MemberService::getAvatarUrl($evaluate->info->member_info_headimg);
-            $evaluate->info->member_info_nickname ?? substr($evaluate->member->member_mobile,-4).'会员';
+        if (!empty($evaluate->member) && !empty($evaluate->member->join_member_role_id)) {
+            $evaluate->member->level = MemberRole::where('member_role_id', $evaluate->member->join_member_role_id)->value('member_role_name');
         }
-        if (!empty($evaluate->goods)){
-            $evaluate->goods->goods_cover = getenv('STORAGE_DOMAIN').$evaluate->goods->goods_cover;
-            $evaluate->goods->goods_cover_origin = str_replace('/thumb','',$evaluate->goods->goods_cover);
+        $evaluate->member->member_info_headimg = MemberService::getAvatarUrl(!empty($evaluate->info) && !empty($evaluate->info->member_info_headimg) ? $evaluate->info->member_info_headimg : '');
+        $evaluate->member->member_info_nickname = MemberService::getNickname(!empty($evaluate->info) && !empty($evaluate->info->member_info_nickname) ? $evaluate->info->member_info_nickname : '', !empty($evaluate->member) ? $evaluate->member->member_mobile : '');
+
+        if (!empty($evaluate->goods)) {
+            $evaluateGoods = $evaluate->goods;
+            foreach ($evaluateGoods as &$good) {
+                $good['goods_cover'] = getenv('STORAGE_DOMAIN') . $good['goods_cover'];
+                $good['goods_cover_origin'] = str_replace('/thumb', '', $good['goods_cover']);
+            }
+            $evaluate->goods = $evaluateGoods;
+//            $evaluate->goods->goods_cover = getenv('STORAGE_DOMAIN') . $evaluate->goods->goods_cover;
+//            $evaluate->goods->goods_cover_origin = str_replace('/thumb', '', $evaluate->goods->goods_cover);
         }
 
-        return json_success('success',$evaluate);
+        return json_success('success', $evaluate);
     }
 
     /**
@@ -177,7 +186,7 @@ class EvaluateController extends Curd
         try {
             $data = $this->insertInput($request);
             $this->doInsert($data);
-            
+
         } catch (BusinessException $customException) {
             return json_fail($customException->getMessage());
         } catch (\Exception $e) {
@@ -197,15 +206,15 @@ class EvaluateController extends Curd
     {
         $data = $this->inputFilter($request->post());
 
-        if (!empty($data['goods_evaluate_json'])){
-            $goodsEvaluateJson = explode(',',$data['goods_evaluate_json']);
-            foreach ($goodsEvaluateJson as $key => $item){
+        if (!empty($data['goods_evaluate_json'])) {
+            $goodsEvaluateJson = explode(',', $data['goods_evaluate_json']);
+            foreach ($goodsEvaluateJson as $key => $item) {
                 $goodsEvaluateJson[$key] = str_replace(getenv('STORAGE_DOMAIN'), '', $item);
             }
 
-            $data['goods_evaluate_json'] = json_encode(['images'=>$goodsEvaluateJson]);
+            $data['goods_evaluate_json'] = json_encode(['images' => $goodsEvaluateJson]);
         }
-        
+
         return $data;
     }
 
@@ -246,13 +255,13 @@ class EvaluateController extends Curd
             throw new BusinessException('记录不存在', 2);
         }
 
-        if (!empty($data['goods_evaluate_json'])){
-            $goodsEvaluateJson = explode(',',$data['goods_evaluate_json']);
-            foreach ($goodsEvaluateJson as $key => $item){
+        if (!empty($data['goods_evaluate_json'])) {
+            $goodsEvaluateJson = explode(',', $data['goods_evaluate_json']);
+            foreach ($goodsEvaluateJson as $key => $item) {
                 $goodsEvaluateJson[$key] = str_replace(getenv('STORAGE_DOMAIN'), '', $item);
             }
 
-            $data['goods_evaluate_json'] = json_encode(['images'=>$goodsEvaluateJson]);
+            $data['goods_evaluate_json'] = json_encode(['images' => $goodsEvaluateJson]);
         }
 
         unset($data[$primary_key]);

+ 2 - 6
app/admin/controller/order/KangyangCityController.php

@@ -980,12 +980,8 @@ class KangyangCityController extends Curd
                 if (!empty($item['member']['join_member_role_id'])) {
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
-
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
-                }
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
             }
             $order->sheet_amount = number_format($sheetAmount, 2);
 

+ 2 - 5
app/admin/controller/order/NewCustomerController.php

@@ -874,11 +874,8 @@ class NewCustomerController extends Curd
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
 
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
-                }
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
             }
             $order->sheet_amount = number_format($sheetAmount, 2);
 

+ 2 - 6
app/admin/controller/order/PartnerController.php

@@ -941,12 +941,8 @@ class PartnerController extends Curd
                 if (!empty($item['member']['join_member_role_id'])) {
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
-
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
-                }
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
                 // 推荐人
                 if (!empty($item['member']['join_invite_member_id'])) {
                     $inviteMember = Member::with([

+ 5 - 70
app/admin/controller/order/RechargeController.php

@@ -755,34 +755,6 @@ class RechargeController extends Curd
                 if (!empty($item['goods'])) {
                     $item['goods']['goods_cover'] = getenv('STORAGE_DOMAIN') . $item['goods']['goods_cover'];
                 }
-                if (!empty($item['goods']) && $item['goods']['goods_classify'] == 'PACKAGE') {
-                    $components = GoodsComponent::with('goods')
-                        ->where('join_component_master_goods_id', $item['goods']['goods_id'])
-                        ->select('join_component_master_goods_id', 'join_component_goods_id', 'goods_component_price',
-                            'goods_component_price', 'goods_component_json')
-                        ->get()
-                        ->toArray();
-                    $goodsArr = [];
-                    foreach ($components as $component) {
-                        $configJson = !empty($component['goods_component_json']) ? json_decode($component['goods_component_json'], true) : [];
-                        if (!empty($component['goods'])) {
-                            $supplierName = Supplier::where('supplier_id', $component['goods']['join_goods_supplier_id'])->value('supplier_name');
-                            $benefit = MemberBenefit::where('join_benefit_member_id', $item['join_sheet_member_id'])
-                                ->where('join_benefit_goods_id', $component['goods']['goods_id'])
-                                ->where('join_benefit_order_id', $orderId)
-                                ->first();
-                            $goodsArr[] = [
-                                'goods_name' => $component['goods']['goods_name'],
-                                'goods_cover' => getenv('STORAGE_DOMAIN') . $component['goods']['goods_cover'],
-                                'supplier_name' => $supplierName,
-                                'nbr' => $configJson['nbr'] ?? 0,
-                                'used' => !empty($benefit->member_benefit_used_count) ? intval($benefit->member_benefit_used_count) : ''
-                            ];
-                        }
-                    }
-
-                    $item['goods']['components'] = $goodsArr;
-                }
                 if (!empty($item['sku'])) {
                     if (!empty($item['sku']['goods_sku_specs_json'])) {
                         $specsJson = json_decode($item['sku']['goods_sku_specs_json'], true);
@@ -842,6 +814,7 @@ class RechargeController extends Curd
                         }
                     }
                     if (isset($goodsAttributeJson['added'])) {
+                        $item['goods']['added_amount'] = floatval($goodsAttributeJson['added']['nbr']) * $item['goods']['goods_sales_price'];
                         $item['goods']['added_rate'] = floatval($goodsAttributeJson['added']['nbr']) * 100;
                     }
                 }
@@ -865,11 +838,11 @@ class RechargeController extends Curd
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
 
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
+                if (empty($evaluate->info)){
+                    $evaluate->info = new \stdClass();
                 }
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
             }
             $order->sheet_amount = number_format($sheetAmount, 2);
             $payDetails = PayDetail::where('join_pay_order_id', $order->order_groupby)
@@ -942,44 +915,6 @@ class RechargeController extends Curd
                     $order->dept_id = $orderExtendJson['dept_id'];
                 }
             }
-            $discount = ['coupon_name' => '', 'classify' => '', 'value' => 0];
-            if (!empty($order->order_discount_json)) {
-                $orderDiscountJson = json_decode($order->order_discount_json, true);
-                foreach ($orderDiscountJson as $discountItem) {
-                    if (!empty($discountItem['coupon_id'])) {
-                        $coupon = Coupon::where('coupon_id', $discountItem['coupon_id'])
-                            ->select('coupon_name', 'coupon_classify', 'coupon_category', 'coupon_value', 'coupon_minimum_limit')
-                            ->first();
-                        if (!$coupon) {
-                            continue;
-                        }
-                        $classify = CouponService::couponClassifyInfo($coupon->coupon_classify, $coupon->coupon_category, $coupon->coupon_value, $coupon->coupon_minimum_limit);
-                        $discount['coupon_name'] .= $coupon->coupon_classify . ':' . $coupon->coupon_name . '(优惠¥' . sprintf("%.2f", $discountItem['coupon_value']) . '), ';
-                    }
-                    if ($discountItem['coupon_classify'] == '退款') {
-                        continue;
-                    }
-                    if (empty($discountItem['coupon_id']) && !empty($discountItem['coupon_classify'])) {
-                        if (!empty($discountItem['coupon_detail_id'])) {
-
-                            $discount['classify'] .= $discountItem['coupon_detail_id'][0] . '(优惠¥' . sprintf("%.2f", $discountItem['coupon_value']) . '), ';
-                        } else {
-                            $discount['classify'] .= $discountItem['coupon_classify'] . '(优惠¥' . sprintf("%.2f", $discountItem['coupon_value']) . '), ';
-                        }
-                    }
-                    if (!empty($discountItem['coupon_value'])) {
-                        $discount['value'] += $discountItem['coupon_value'];
-                    }
-                }
-                if (!empty($discount['coupon_name'])) {
-                    $discount['coupon_name'] = rtrim($discount['coupon_name'], ', ');
-                }
-                if (!empty($discount['classify'])) {
-                    $discount['classify'] = rtrim($discount['classify'], ', ');
-                }
-            }
-            $discount['value'] = sprintf("%.2f", $discount['value']);
-            $order->discount = $discount;
 
             $order->premises = $order->premises ?? $premises;
             $data = [

+ 2 - 6
app/admin/controller/order/ReferrerController.php

@@ -938,12 +938,8 @@ class ReferrerController extends Curd
                 if (!empty($item['member']['join_member_role_id'])) {
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
-
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
-                }
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
             }
             $order->sheet_amount = number_format($sheetAmount, 2);
 

+ 3 - 7
app/admin/controller/order/WholeController.php

@@ -478,12 +478,9 @@ class WholeController extends Curd
                 if (!empty($item['member']['join_member_role_id'])) {
                     $item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
                 }
-
-                if (!empty($item['member_info'])) {
-                    if (empty($item['member_info']['member_info_headimg']) || substr($item['member_info']['member_info_headimg'], 0, 1) == '.') {
-                        $item['member_info']['member_info_headimg'] = "https://img.wanyuewellness.com.cn/images/avatar_default.png";
-                    }
-                }
+                
+                $item['member_info']['member_info_nickname'] = MemberService::getNickname(!empty($item['member_info']) ? $item['member_info']['member_info_nickname'] : '', (!empty($item['member']) ? $item['member']['member_mobile'] : ''));
+                $item['member_info']['member_info_headimg'] = MemberService::getAvatarUrl(!empty($item['member_info']) && !empty($item['member_info']['member_info_headimg']) ? $item['member_info']['member_info_headimg'] : '');
             }
             $order->sheet_amount = number_format($sheetAmount, 2);
 
@@ -500,7 +497,6 @@ class WholeController extends Curd
             if (!empty($payDetail) && !empty($payDetail->pay_extend_json)) {
                 $payExtendJson = json_decode($payDetail->pay_extend_json, true);
                 $order->cancel_times = $payExtendJson['cancel_times'] ?? '';
-//            $payDetail->cancel_times = $payExtendJson['cancel_times'] ?? '';
             }
             if (!empty($payDetail) && !empty($payDetail->pay_prepayid)) {
                 $categoryArray = explode('-', $payDetail->pay_prepayid);

+ 26 - 6
app/admin/service/member/MemberService.php

@@ -48,10 +48,10 @@ class MemberService
 
         // 兼容老等级搜索
         $levelIds = [];
-        if (!empty($level)){
-            $levelName = MemberRole::where('member_role_id',$level)->value('member_role_name');
-            if (!empty($levelName)){
-                $levelIds = MemberRole::where('member_role_name',$levelName)->pluck('member_role_id')->toArray();
+        if (!empty($level)) {
+            $levelName = MemberRole::where('member_role_id', $level)->value('member_role_name');
+            if (!empty($levelName)) {
+                $levelIds = MemberRole::where('member_role_name', $levelName)->pluck('member_role_id')->toArray();
             }
         }
 
@@ -68,12 +68,12 @@ class MemberService
                 $query->where('member_cert.member_cert_name', 'like', '%' . $name . '%');
             })->when($mobile != '', function ($query) use ($mobile) {
                 $query->where('member.member_mobile', 'like', '%' . $mobile . '%');
-            })->when($level != '', function ($query) use ($level,$levelIds) {
+            })->when($level != '', function ($query) use ($level, $levelIds) {
                 if ($level == 'other') {
                     $query->where('member.join_member_role_id', NULL)->orWhere('member.join_member_role_id', '');
                 } else if ($level == 'VIP') {
                     $query->where('member.member_is_vip', 'Y');
-                }else if (!empty($levelIds)){
+                } else if (!empty($levelIds)) {
                     $query->whereIn('member_role.member_role_id', $levelIds);
                 } else {
                     $query->where('member_role.member_role_id', $level);
@@ -1857,6 +1857,26 @@ class MemberService
         return $url;
     }
 
+    /**
+     * @Desc 获取昵称
+     * @Author Gorden
+     * @Date 2024/10/23 11:50
+     *
+     * @param $nickname
+     * @param $mobile
+     * @return mixed|string
+     */
+    public static function getNickname($nickname, $mobile)
+    {
+        if (!empty($nickname)) {
+            return $nickname;
+        } else if (!empty($mobile)) {
+            return substr($mobile, -4, 4) . '会员';
+        } else {
+            return '';
+        }
+    }
+
     public static function getRoleName($roleId)
     {
         if (empty($roleId)) {

+ 1 - 1
app/model/GoodsEvaluate.php

@@ -56,7 +56,7 @@ class GoodsEvaluate extends Model
      */
     public function goods()
     {
-        return $this->hasOne(Goods::class, 'goods_id', 'join_evaluate_goods_id');
+        return $this->hasMany(Goods::class, 'goods_id', 'join_evaluate_goods_id');
     }
 
     /**