提交 c1445a49 编写于 作者: G gongfuxiang

后台菜单优化、搜索记录新增开关

上级 13eb1ddd
......@@ -109,8 +109,8 @@ class Common extends BaseController
$this->admin = AdminService::LoginInfo();
// 权限菜单
AdminPowerService::PowerMenuInit($this->admin);
$this->left_menu = AdminPowerService::MenuData($this->admin);
$menu = AdminPowerService::PowerMenuInit($this->admin);
$this->left_menu = $menu['admin_left_menu'];
// 视图初始化
$this->ViewInit();
......
......@@ -13,6 +13,14 @@
<!-- form start -->
<form class="am-form form-validation" action="{{:MyUrl('admin/site/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/site/index', ['nav_type'=>$nav_type, 'view_type'=>$view_type])}}" enctype="multipart/form-data">
<div class="am-form-group">
<label>{{$data.home_search_history_record.name}}<span class="am-form-group-label-tips">{{$data.home_search_history_record.describe}}</span></label>
<select name="{{$data.home_search_history_record.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.home_search_history_record.error_tips}}" required>
{{foreach $common_is_text_list as $v}}
<option value="{{$v.id}}" {{if isset($data['home_search_history_record']['value']) and $data['home_search_history_record']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
{{/foreach}}
</select>
</div>
<div class="am-form-group">
<label>{{$data.home_search_keywords_type.name}}</label>
<select name="{{$data.home_search_keywords_type.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.home_search_keywords_type.error_tips}}">
......
......@@ -314,35 +314,24 @@ class AdminPowerService
MyCache(SystemService::CacheKey('shopxo.cache_admin_power_key').$admin_id, $admin_power);
MyCache(SystemService::CacheKey('shopxo.cache_admin_power_plugins_key').$admin_id, $admin_plugins);
}
return true;
}
/**
* 获取菜单数据
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2022-05-16
* @desc description
* @param [array] $admin [管理员信息]
*/
public static function MenuData($admin)
{
if(!empty($admin['id']))
{
$data = MyCache(SystemService::CacheKey('shopxo.cache_admin_left_menu_key').$admin['id']);
}
// 后台左侧菜单钩子
$hook_name = 'plugins_service_admin_menu_data';
MyEventTrigger($hook_name, [
'hook_name' => $hook_name,
'is_backend' => true,
'admin' => $admin,
'data' => &$data,
'hook_name' => $hook_name,
'is_backend' => true,
'admin' => $admin,
'admin_left_menu' => &$admin_left_menu,
'admin_power' => &$admin_power,
'admin_plugins' => &$admin_plugins,
]);
return empty($data) ? [] : $data;
// 返回菜单和权限数据
return [
'admin_left_menu' => $admin_left_menu,
'admin_power' => $admin_power,
'admin_plugins' => $admin_plugins,
];
}
/**
......
......@@ -508,70 +508,73 @@ class SearchService
*/
public static function SearchAdd($params = [])
{
// 排序
$ov_arr = empty($params['ov']) ? '' : explode('-', $params['ov']);
if(empty($ov_arr) && !empty($params['order_by_type']) && !empty($params['order_by_field']))
// 是否增加搜索记录
if(MyC('home_search_history_record', 0) == 1)
{
$ov_arr = [$params['order_by_field'], $params['order_by_type']];
}
// 排序
$ov_arr = empty($params['ov']) ? '' : explode('-', $params['ov']);
if(empty($ov_arr) && !empty($params['order_by_type']) && !empty($params['order_by_field']))
{
$ov_arr = [$params['order_by_field'], $params['order_by_type']];
}
// 结果仅保留商品id
if(!empty($params['search_result_data']) && is_array($params['search_result_data']) && !empty($params['search_result_data']['data']))
{
$params['search_result_data']['data'] = array_column($params['search_result_data']['data'], 'id');
}
// 结果仅保留商品id
if(!empty($params['search_result_data']) && is_array($params['search_result_data']) && !empty($params['search_result_data']['data']))
{
$params['search_result_data']['data'] = array_column($params['search_result_data']['data'], 'id');
}
// 日志数据
$data = [
'user_id' => isset($params['user_id']) ? intval($params['user_id']) : 0,
'keywords' => empty($params['wd']) ? '' : $params['wd'],
'order_by_field' => empty($ov_arr) ? '' : $ov_arr[0],
'order_by_type' => empty($ov_arr) ? '' : $ov_arr[1],
'search_result' => empty($params['search_result_data']) ? '' : json_encode($params['search_result_data'], JSON_UNESCAPED_UNICODE),
'ymd' => date('Ymd'),
'add_time' => time(),
];
// 日志数据
$data = [
'user_id' => isset($params['user_id']) ? intval($params['user_id']) : 0,
'keywords' => empty($params['wd']) ? '' : $params['wd'],
'order_by_field' => empty($ov_arr) ? '' : $ov_arr[0],
'order_by_type' => empty($ov_arr) ? '' : $ov_arr[1],
'search_result' => empty($params['search_result_data']) ? '' : json_encode($params['search_result_data'], JSON_UNESCAPED_UNICODE),
'ymd' => date('Ymd'),
'add_time' => time(),
];
// 参数处理
$field_arr = [
'brand_ids' => ['brand_ids', 'brand', 'bid'],
'category_ids' => ['category_ids', 'category_id', 'cid'],
'screening_price_values'=> ['screening_price_values', 'peid'],
'goods_params_values' => ['goods_params_values', 'psid'],
'goods_spec_values' => ['goods_spec_values', 'scid'],
];
foreach($field_arr as $k=>$v)
{
$item = [];
foreach($v as $vs)
// 参数处理
$field_arr = [
'brand_ids' => ['brand_ids', 'brand', 'bid'],
'category_ids' => ['category_ids', 'category_id', 'cid'],
'screening_price_values'=> ['screening_price_values', 'peid'],
'goods_params_values' => ['goods_params_values', 'psid'],
'goods_spec_values' => ['goods_spec_values', 'scid'],
];
foreach($field_arr as $k=>$v)
{
if(!empty($params[$vs]))
$item = [];
foreach($v as $vs)
{
// 价格区间
if($vs == 'peid')
if(!empty($params[$vs]))
{
$temp_price = Db::name('ScreeningPrice')->where(['is_enable'=>1, 'id'=>intval($params[$vs])])->field('min_price,max_price')->find();
$params[$vs] = empty($temp_price) ? '' : implode('-', $temp_price);
}
// 价格区间
if($vs == 'peid')
{
$temp_price = Db::name('ScreeningPrice')->where(['is_enable'=>1, 'id'=>intval($params[$vs])])->field('min_price,max_price')->find();
$params[$vs] = empty($temp_price) ? '' : implode('-', $temp_price);
}
// Ascii处理
if(in_array($vs, ['psid', 'scid']))
{
$params[$vs] = AsciiToStr($params[$vs]);
}
// Ascii处理
if(in_array($vs, ['psid', 'scid']))
{
$params[$vs] = AsciiToStr($params[$vs]);
}
// 合并参数
$tv = (substr($params[$vs], 0, 1) == '{') ? json_decode(htmlspecialchars_decode($params[$vs]), true) : $params[$vs];
if($tv !== '' && $tv !== null)
{
$item = array_merge($item, is_array($tv) ? $tv : [$tv]);
// 合并参数
$tv = (substr($params[$vs], 0, 1) == '{') ? json_decode(htmlspecialchars_decode($params[$vs]), true) : $params[$vs];
if($tv !== '' && $tv !== null)
{
$item = array_merge($item, is_array($tv) ? $tv : [$tv]);
}
}
}
$data[$k] = empty($item) ? '' : (is_array($item) ? json_encode($item, JSON_UNESCAPED_UNICODE) : $item);
}
$data[$k] = empty($item) ? '' : (is_array($item) ? json_encode($item, JSON_UNESCAPED_UNICODE) : $item);
Db::name('SearchHistory')->insert($data);
}
Db::name('SearchHistory')->insert($data);
}
/**
......
......@@ -9,9 +9,10 @@ html,body {
.am-table-striped > tbody > tr:nth-child(odd) > th {
background-color: #1d1d1d;
}
pre,
.am-table-hover > tbody > tr:hover > td,
.am-table-hover > tbody > tr:hover > th {
background-color: #181818;
background-color: #202020;
}
.am-table-bordered > thead > tr > th,
.am-table-bordered > tbody > tr > th,
......@@ -77,7 +78,7 @@ html,body {
background: transparent;
}
.dl-content dt:hover, .dl-content dd:hover, .data-avg-text-list li:hover {
background: #202020;
background: #1a1a1a;
}
.data-avg-text-list li:hover .data-avg-text-list-content {
color: #e9e9e9;
......@@ -410,7 +411,7 @@ iframe,
.am-list-bordered > li > a:hover,
.am-list-border > li > a:focus,
.am-list-bordered > li > a:focus {
background-color: #262727;
background-color: #181818;
}
.am-table > thead > tr > td.am-primary,
.am-table > tbody > tr > td.am-primary,
......@@ -590,6 +591,9 @@ fieldset[disabled] .am-form-field {
.plugins-data-list ul li .submit-state.am-success {
color: #fff !important;
}
.am-ucheck-checkbox:disabled + .am-ucheck-icons, .am-ucheck-radio:disabled + .am-ucheck-icons {
color: #252525;
}
header {
background-color: #19222c !important;
border-color: #151d26 !important;
......@@ -664,6 +668,9 @@ ul.plug-file-upload-view li {
#modal-plugins-multilingual-select-container .am-modal-bd ul {
border: 1px solid #2b2b2b;
}
.data-avg-text-list, .data-avg-text-list li {
border-color: #232323;
}
/**
* 编辑器还是使用白底色
......@@ -672,6 +679,35 @@ ul.plug-file-upload-view li {
background: transparent !important;
}
/**
* 打印模板
*/
.hiprint-printPaper.design {
background: -webkit-linear-gradient(top, transparent 15px, #181818 15px, #181818 16px, transparent 16px, transparent 31px, #181818 31px, #181818 32px, transparent 32px, transparent 47px, #181818 47px, #181818 48px, transparent 48px, transparent 63px, #1c1c1c 63px, #1c1c1c 63px), -webkit-linear-gradient( left, transparent 15px, #181818 15px, #181818 16px, transparent 16px, transparent 31px, #181818 31px, #181818 32px, transparent 32px, transparent 47px, #181818 47px, #181818 48px, transparent 48px, transparent 63px, #1c1c1c 63px, #1c1c1c 63px);
background-size: 64px 64px;
background-repeat: repeat;
}
.right-option-setting {
background: rgb(28 28 28 / 70%);
}
.hiprint-option-items .hiprint-option-item-field input, .hiprint-option-items .hiprint-option-item-field select, .hiprint-option-items .hiprint-option-item-field textarea {
border-color: rgb(47 47 47);
}
.hiprint-printElement-table thead {
background: #2d2d2d;
}
.hiprint-printElement-table td {
color: #666;
border-color: #242424;
}
.hitable .selected {
background: #3d3d3d;
}
.drag-list li .item a {
color: #999;
}
/**
* 进销存
*/
......@@ -746,6 +782,9 @@ ul.plug-file-upload-view li {
.header-menu-open-pages-list ul li a:hover {
color: #802c12;
}
.list-find li .item-content:hover {
border-color: #454545;
}
.product-unit-table thead tr > th:last-child, .product-unit-table tbody tr > td:last-child {
background: rgb(30 30 30);
box-shadow: rgb(136 136 136 / 10%) -5px 0px 8px;
......@@ -801,7 +840,7 @@ ul.plug-file-upload-view li {
}
::-webkit-scrollbar-corner,
::-webkit-scrollbar-corner:vertical {
background-color: #f9f9f9;
background-color: #353535;
}
::-webkit-scrollbar-resizer,
::-webkit-scrollbar-resizer:vertical {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册