搜索参数类型控制
parent
922b03237b
commit
7e2098984c
|
|
@ -179,6 +179,9 @@ class Site extends Common
|
|||
// 首页楼层数据类型
|
||||
$this->assign('common_site_floor_data_type_list', lang('common_site_floor_data_type_list'));
|
||||
|
||||
// 搜索参数类型
|
||||
$this->assign('common_goods_parameters_type_list', lang('common_goods_parameters_type_list'));
|
||||
|
||||
// 主导航
|
||||
$this->assign('second_nav_list', [
|
||||
[
|
||||
|
|
@ -334,6 +337,11 @@ class Site extends Common
|
|||
// 楼层左侧分类
|
||||
$params['home_index_floor_left_top_category'] = empty($params['home_index_floor_left_top_category']) ? '' : json_encode($params['home_index_floor_left_top_category'], JSON_UNESCAPED_UNICODE);
|
||||
break;
|
||||
|
||||
// 搜索
|
||||
case 'search' :
|
||||
$field_list[] = 'home_search_params_type';
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
|||
|
|
@ -76,6 +76,14 @@
|
|||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.home_search_params_type.name}}<span class="am-form-group-label-tips">{{$data.home_search_params_type.describe}}</span></label>
|
||||
<select name="{{$data.home_search_params_type.only_tag}}" multiple="multiple" class="am-radius chosen-select" data-placeholder="{{$data.home_search_params_type.name}}" data-validation-message="{{$data.home_search_params_type.error_tips}}">
|
||||
{{foreach $common_goods_parameters_type_list as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['home_search_params_type']['value']) and in_array($v['value'], $data['home_search_params_type']['value'])}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.home_search_is_spec.name}}<span class="am-form-group-label-tips">{{$data.home_search_is_spec.describe}}</span></label>
|
||||
<select name="{{$data.home_search_is_spec.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.home_search_is_spec.error_tips}}" required>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<!-- form start -->
|
||||
<form class="am-form form-validation view-save" action="{{:MyUrl('admin/sqlconsole/implement')}}" method="POST" request-type="ajax-fun" request-value="ViewImplementBack">
|
||||
<div class="am-form-group">
|
||||
<textarea rows="6" name="sql" class="am-radius" placeholder="SQL语句" data-validation-message="请填写需要执行的SQL语句" required></textarea>
|
||||
<textarea rows="16" name="sql" class="am-radius" placeholder="SQL语句" data-validation-message="请填写需要执行的SQL语句" required></textarea>
|
||||
</div>
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-top-lg am-padding-left-0">
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'处理中...'}">执行</button>
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@ class ConfigService
|
|||
'home_user_login_type',
|
||||
'home_user_reg_type',
|
||||
'admin_login_type',
|
||||
'home_search_params_type',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -259,7 +259,7 @@ class SearchService
|
|||
}
|
||||
if(!empty($params['goods_params_values']))
|
||||
{
|
||||
$ids = Db::name('GoodsParams')->where(['value'=>$params['goods_params_values'], 'type'=>2])->column('goods_id');
|
||||
$ids = Db::name('GoodsParams')->where(['value'=>$params['goods_params_values'], 'type'=>self::SearchParamsWhereTypeValue()])->column('goods_id');
|
||||
if(!empty($ids))
|
||||
{
|
||||
$where_base[] = ['g.id', 'in', $ids];
|
||||
|
|
@ -291,6 +291,32 @@ class SearchService
|
|||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* 参数搜索条件类型
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2021-04-11
|
||||
* @desc description
|
||||
*/
|
||||
public static function SearchParamsWhereTypeValue()
|
||||
{
|
||||
// 获取配置
|
||||
$value = MyC('home_search_params_type');
|
||||
if(empty($value))
|
||||
{
|
||||
$value = [2];
|
||||
}
|
||||
|
||||
// 是否为数组
|
||||
if(!is_array($value))
|
||||
{
|
||||
$value = explode(',', $value);
|
||||
}
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* 搜索记录添加
|
||||
* @author Devil
|
||||
|
|
@ -480,7 +506,7 @@ class SearchService
|
|||
$where_screening_price = $where['screening_price'];
|
||||
|
||||
// 仅搜索基础参数
|
||||
$where_base[] = ['gp.type', '=', 2];
|
||||
$where_base[] = ['gp.type', 'in', self::SearchParamsWhereTypeValue()];
|
||||
|
||||
// 一维数组、参数值去重
|
||||
$data = Db::name('Goods')->alias('g')->join(['__GOODS_CATEGORY_JOIN__'=>'gci'], 'g.id=gci.goods_id')->join(['__GOODS_PARAMS__'=>'gp'], 'g.id=gp.goods_id')->where($where_base)->where(function($query) use($where_keywords) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue