quanwei
2026-01-17 e1e2fe5710a5b5cd9c19bd3aa99c998a1a613ca8
admin/app/api/controller/supplier/Index.php
@@ -20,15 +20,24 @@
use app\api\model\plus\live\Room as RoomModel;
use app\common\model\supplier\Service as ServiceModel;
use app\api\model\plus\chat\Chat as ChatModel;
use app\api\model\supplier\Category as CategoryModel; // 主营分类 by lyzflash
use app\api\model\user\Card as CardrModel; // 会员卡 by lyzflash
use app\api\model\supplier\User as UserModel; // by lyzflash
use app\api\model\supplier\Category as CategoryModel;
// 主营分类 by lyzflash
use app\api\model\user\Card as CardrModel;
// 会员卡 by lyzflash
use app\api\model\supplier\User as UserModel;
// by lyzflash
use app\api\model\plus\work\Setting as PlusSettingModel;
use app\api\model\supplier\Group as GroupModel; // by yj
use app\api\model\supplier\Group as GroupModel;
// by yj
use app\common\model\app\App as AppModel;
use app\common\enum\order\OrderTypeEnum;
use app\api\model\store\Store as StoreModel;
use app\api\model\supplier\member\Member as MemberModel;
/**
 * 供应商
 */
@@ -94,6 +103,70 @@
        $category = CategoryModel::getALL($param)->toArray();
        $category = array_merge([['category_id' => 0, 'name' => '全部']], $category);
        return $this->renderSuccess('', compact('category'));
    }
    public function getGroupBuyList()
    {
        $param = request()->param();
        $model = new SupplierModel();
        $param['product_num'] = isset($param['product_num']) ? $param['product_num'] : 3;
        // 获取用户位置信息
        $param['longitude'] = isset($param['longitude']) ? $param['longitude'] : 0;
        $param['latitude'] = isset($param['latitude']) ? $param['latitude'] : 0;
        // 处理筛选参数
        if (isset($param['sortType'])) {
            $sortMap = [
                'smart' => 'all',
                'distance' => 'distance',
                'score' => 'score',
                'price_low' => 'price_asc',
                'price_high' => 'price_desc'
            ];
            if (isset($sortMap[$param['sortType']])) {
                $param['sortType'] = $sortMap[$param['sortType']];
            }
        }
        $list = $model->getGroupBuyList($param);
        return $this->renderSuccess('', compact('list'));
    }
    public function getGroupBuyCondition()
    {
        $sortOptions = [
            ['text' => '智能排序', 'value' => 'smart'],
            ['text' => '距离最近', 'value' => 'distance'],
            ['text' => '评分最高', 'value' => 'score'],
            ['text' => '价格最低', 'value' => 'price_low'],
            ['text' => '价格最高', 'value' => 'price_high']
        ];
        $distanceOptions = [
            ['label' => '不限', 'value' => -1],
            ['label' => '500m以内', 'value' => 0.5],
            ['label' => '1km以内', 'value' => 1],
            ['label' => '2km以内', 'value' => 2],
            ['label' => '3km以内', 'value' => 3],
            ['label' => '5km以内', 'value' => 5]
        ];
        $priceOptions = [
            ['label' => '不限', 'value' => -1],
            ['label' => '50元以下', 'value' => ['min' => 0, 'max' => 50]],
            ['label' => '50-100元', 'value' => ['min' => 50, 'max' => 100]],
            ['label' => '100-200元', 'value' => ['min' => 100, 'max' => 200]],
            ['label' => '200元以上', 'value' => ['min' => 200, 'max' => -1]]
        ];
        $scoreOptions = [
            ['label' => '不限', 'value' => -1],
            ['label' => '4.0分以上', 'value' => 4.0],
            ['label' => '4.5分以上', 'value' => 4.5],
            ['label' => '4.8分以上', 'value' => 4.8]
        ];
        $category = CategoryModel::getALL(['category_type'=>20])->toArray();
        $category = array_merge([['category_id' => 0, 'name' => '全部']], $category);
        return $this->renderSuccess('', compact('sortOptions', 'distanceOptions', 'priceOptions', 'scoreOptions','category'));
    }
    /**
@@ -281,6 +354,7 @@
            return $this->renderError($model->getError() ?: '修改失败');
        }
    }
    public function refundDeposit()
    {
        $data = $this->postData();