lqmac 11 months ago
parent 29b7f903e8
commit fad622eead
  1. 3
      app/api/controller/Controller.php
  2. 5
      app/api/controller/Goods.php
  3. 38
      app/common/model/Goods.php
  4. 8
      app/store/controller/Goods.php

@ -32,6 +32,8 @@ class Controller extends BaseController
// 当前商城ID
protected int $storeId;
protected $storeInfo;
/**
* API基类初始化
* @throws BaseException
@ -82,6 +84,7 @@ class Controller extends BaseController
if ($store['is_recycle'] || $store['is_delete']) {
throwError('很抱歉,当前商城已删除');
}
$this->storeInfo = $store;
}
/**

@ -39,9 +39,14 @@ class Goods extends Controller
*/
public function list(): Json
{
// 获取列表数据
$model = new GoodsModel;
$param = $this->request->param();
//限制过滤条件-渠道
$param['channels'] = $this->storeInfo['open_channel'] ? array_merge(['zy'], explode(",", $this->storeInfo['open_channel'])) : [];
//分类利润-利润率
$param['fliter_condition'] = $this->storeInfo['fliter_condition'];
$list = $model->getList($param);
return $this->renderSuccess(compact('list'));
}

@ -329,13 +329,36 @@ class Goods extends BaseModel
$query = $query->whereRaw('goods_name like ? or goods_no like ?', ["%{$val}%", "%{$val}%"]);
}
}
// 执行查询
$list = $query->with(['images.file'])
->alias($this->name)
->field($field)
->where('is_delete', '=', 0)
->order($sort)
->paginate($listRows);
if (isset($param['fliter_condition']) && $param['fliter_condition']) {
$fliter_condition = json_decode($param['fliter_condition'], true);
$str = "";
foreach ($fliter_condition as $value) {
$strConditon = "(";
$strConditon .= "goods_category_rel.category_id in (".implode(",", $value['category']).")";
$strConditon .= " and goods.profit >= ".$value['profit'];
$strConditon .= " and goods.profit_rate >= ".$value['profit_rate'] . ") or ";
$str .= $strConditon;
}
$str = trim($str, "or ");
// 执行查询
$list = $query->with(['images.file'])
->alias($this->name)
->field($field)
->where('is_delete', '=', 0)
->where($str)
->order($sort)
->paginate($listRows);
} else {
// 执行查询
$list = $query->with(['images.file'])
->alias($this->name)
->field($field)
->where('is_delete', '=', 0)
->order($sort)
->paginate($listRows);
}
// 整理列表数据并返回
return $this->setGoodsListData($list);
@ -526,6 +549,7 @@ class Goods extends BaseModel
if (isset($param['is_has_detail']) && $param['is_has_detail'] !== '') {
$filter[] = ['goods.is_has_detail', '=', $params['is_has_detail']];
}
// 实例化新查询对象
return $query->where($filter);
}

@ -158,10 +158,10 @@ class Goods extends Controller
$params['goods_no'] = $model->goods_no;
}
echo "<pre>";
print_r($params);
print_r($model->toArray());
exit();
// echo "<pre>";
// print_r($params);
// print_r($model->toArray());
// exit();
// 更新记录
if ($model->edit($params)) {
return $this->renderSuccess('更新成功');

Loading…
Cancel
Save