新增条形码组件库、其他细节优化
parent
fd1e26cf1e
commit
61b2fa866e
|
|
@ -297,6 +297,9 @@ class Common extends BaseController
|
|||
// 是否加载视频播放器组件
|
||||
$assign['is_load_ckplayer'] = 0;
|
||||
|
||||
// 是否加载条形码组件
|
||||
$assign['is_load_barcode'] = 0;
|
||||
|
||||
// 默认不加载地图api、类型默认百度地图
|
||||
$assign['is_load_map_api'] = 0;
|
||||
$assign['load_map_type'] = MyC('common_map_type', 'baidu', true);
|
||||
|
|
|
|||
|
|
@ -34,18 +34,20 @@
|
|||
</div>
|
||||
<div class="am-popup-bd">
|
||||
<form class="am-form form-validation-delivery am-form-popup-fixed" method="post" action="{{:MyUrl('admin/order/delivery')}}" request-type="ajax-reload">
|
||||
<div class="business-item">
|
||||
<div class="business-list business-list-nbfc">
|
||||
{{if !empty($express_list)}}
|
||||
<ul class="express-list" data-type="express">
|
||||
<ul class="am-avg-sm-2 am-avg-md-3 express-list" data-type="express">
|
||||
{{foreach $express_list as $express}}
|
||||
{{if $express.is_enable eq 1}}
|
||||
<li class="express-items-{{$express.id}}" data-value="{{$express.id}}">
|
||||
{{if !empty($express.icon)}}
|
||||
<img src="{{$express.icon}}" />
|
||||
{{/if}}
|
||||
<span>{{$express.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
<li class="am-padding-sm" data-value="{{$express.id}}">
|
||||
<div class="business-item am-nbfc am-padding-sm am-radius">
|
||||
{{if !empty($express.icon)}}
|
||||
<img src="{{$express.icon}}" class="am-radius" />
|
||||
{{/if}}
|
||||
<span>{{$express.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
</div>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{/foreach}}
|
||||
|
|
@ -81,17 +83,19 @@
|
|||
</div>
|
||||
<div class="am-popup-bd">
|
||||
<form class="am-form form-validation-pay am-form-popup-fixed" action="{{:MyUrl('admin/order/pay')}}" method="POST" request-type="ajax-reload">
|
||||
<div class="business-item">
|
||||
<div class="business-list business-list-nbfc">
|
||||
{{if !empty($buy_payment_list)}}
|
||||
<ul class="payment-list" data-type="payment">
|
||||
<ul class="am-avg-sm-2 am-avg-md-3 payment-list" data-type="payment">
|
||||
{{foreach $buy_payment_list as $payment}}
|
||||
<li class="payment-items-{{$payment.id}}" data-value="{{$payment.id}}">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
<li class="am-padding-sm" data-value="{{$payment.id}}">
|
||||
<div class="business-item am-nbfc am-padding-sm am-radius">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" class="am-radius" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
</div>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -113,6 +113,11 @@
|
|||
<script type='text/javascript' src="{{$public_host}}static/common/lib/ckplayer/js/ckplayer.min.js?v={{:MyC('home_static_cache_version')}}"></script>
|
||||
{{/if}}
|
||||
|
||||
<!-- 条形码 -->
|
||||
{{if isset($is_load_barcode) and $is_load_barcode eq 1}}
|
||||
<script type='text/javascript' src="{{$public_host}}static/common/lib/JsBarcode/JsBarcode.all.min.js?v={{:MyC('home_static_cache_version')}}"></script>
|
||||
{{/if}}
|
||||
|
||||
<!-- map -->
|
||||
{{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}}
|
||||
{{switch $load_map_type}}
|
||||
|
|
|
|||
|
|
@ -225,7 +225,7 @@ class User extends Common
|
|||
}
|
||||
|
||||
/**
|
||||
* [ClientCenter 用户中心]
|
||||
* 用户中心
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
|
|
|
|||
|
|
@ -11,6 +11,31 @@
|
|||
|
||||
// 应用公共文件
|
||||
|
||||
/**
|
||||
* 两个数组字段对比处理、arr1不存在arr2中的字段则移除
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2022-11-12
|
||||
* @desc description
|
||||
* @param [array] $arr1 [待处理的数据]
|
||||
* @param [array] $arr2 [参考对比的数据]
|
||||
*/
|
||||
function ArrayFieldContrastHandle($arr1, $arr2)
|
||||
{
|
||||
if(!empty($arr1) && is_array($arr1) && is_array($arr2))
|
||||
{
|
||||
foreach($arr1 as $fk=>$fv)
|
||||
{
|
||||
if(!array_key_exists($fk, $arr2))
|
||||
{
|
||||
unset($arr1[$fk]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $arr1;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取汉字拼音、默认返回数组
|
||||
* @author Devil
|
||||
|
|
|
|||
|
|
@ -405,6 +405,9 @@ class Common extends BaseController
|
|||
// 是否加载视频播放器组件
|
||||
$assign['is_load_ckplayer'] = 0;
|
||||
|
||||
// 是否加载条形码组件
|
||||
$assign['is_load_barcode'] = 0;
|
||||
|
||||
// 默认不加载地图api、类型默认百度地图
|
||||
$assign['is_load_map_api'] = 0;
|
||||
$assign['load_map_type'] = MyC('common_map_type', 'baidu', true);
|
||||
|
|
|
|||
|
|
@ -522,22 +522,26 @@
|
|||
|
||||
<!-- 支付方式 -->
|
||||
{{if $base['actual_price'] gt 0 and $common_order_is_booking neq 1}}
|
||||
<div id="buy-items-payment" class="buy-items business-item payment" data-field="payment_id">
|
||||
<div id="buy-items-payment" class="buy-items">
|
||||
<h3>选择支付</h3>
|
||||
{{if !empty($payment_list)}}
|
||||
<ul class="payment-list">
|
||||
{{foreach $payment_list as $payment}}
|
||||
<li data-value="{{$payment.id}}" class="{{if isset($params['payment_id']) and $params['payment_id'] eq $payment['id']}}selected{{/if}}">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
<div class="business-list business-list-nbfc payment am-margin-top-sm" data-field="payment_id">
|
||||
{{if !empty($payment_list)}}
|
||||
<ul class="am-avg-sm-2 am-avg-md-3 am-avg-lg-4 payment-list" data-is-required="1">
|
||||
{{foreach $payment_list as $payment}}
|
||||
<li data-value="{{$payment.id}}" class="am-padding-sm {{if isset($params['payment_id']) and $params['payment_id'] eq $payment['id']}}selected{{/if}}">
|
||||
<div class="business-item am-nbfc am-padding-sm am-radius">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" class="am-radius" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
</div>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{if empty($payment_list)}}
|
||||
<div class="table-no"><i class="am-icon-warning"></i> 没有支付方式</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -6,17 +6,19 @@
|
|||
</div>
|
||||
<div class="am-popup-bd">
|
||||
<form class="am-form pay-form am-form-popup-fixed" method="post" action="{{:MyUrl('index/order/pay')}}">
|
||||
<div class="business-item">
|
||||
<div class="business-list business-list-nbfc">
|
||||
{{if !empty($buy_payment_list)}}
|
||||
<ul class="payment-list" data-type="payment">
|
||||
<ul class="am-avg-sm-2 am-avg-md-3 payment-list" data-type="payment">
|
||||
{{foreach $buy_payment_list as $payment}}
|
||||
<li class="payment-items-{{$payment.id}}" data-value="{{$payment.id}}">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
<li class="am-padding-sm" data-value="{{$payment.id}}">
|
||||
<div class="business-item am-nbfc am-padding-sm am-radius">
|
||||
{{if !empty($payment.logo)}}
|
||||
<img src="{{$payment.logo}}" class="am-radius" />
|
||||
{{/if}}
|
||||
<span>{{$payment.name}}</span>
|
||||
<div class="rotate"></div>
|
||||
<i class="am-icon-check"></i>
|
||||
</div>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@
|
|||
|
||||
<!-- content -->
|
||||
<div class="am-container user-main">
|
||||
|
||||
<!-- user menu start -->
|
||||
{{include file="public/user_menu" /}}
|
||||
<!-- user menu end -->
|
||||
|
|
@ -23,8 +22,8 @@
|
|||
<div class="user-content">
|
||||
<div class="user-content-body">
|
||||
<legend>
|
||||
<span class="legend-title">个人资料</span>
|
||||
<a href="{{:MyUrl('index/personal/saveinfo')}}" class="am-fr"> 编辑</a>
|
||||
<span class="am-text-default">个人资料</span>
|
||||
<a href="{{:MyUrl('index/personal/saveinfo')}}" class="am-fr am-text-xs am-margin-top-sm am-icon-edit"> 编辑</a>
|
||||
</legend>
|
||||
<dl class="dl-content">
|
||||
{{foreach $personal_show_list as $k=>$v}}
|
||||
|
|
|
|||
|
|
@ -25,8 +25,8 @@
|
|||
<!-- form start -->
|
||||
<form class="am-form form-validation" action="{{:MyUrl('index/personal/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('index/personal/index')}}">
|
||||
<legend>
|
||||
<span class="legend-title">个人资料</span>
|
||||
<a href="{{:MyUrl('index/personal/index')}}" class="am-fr am-margin-top-sm am-icon-mail-reply"> 返回</a>
|
||||
<span class="am-text-default">个人资料</span>
|
||||
<a href="{{:MyUrl('index/personal/index')}}" class="am-fr am-text-xs am-margin-top-sm am-icon-mail-reply"> 返回</a>
|
||||
</legend>
|
||||
<div class="am-form-group">
|
||||
<label>昵称</label>
|
||||
|
|
|
|||
|
|
@ -95,6 +95,11 @@
|
|||
<script type='text/javascript' src="{{$public_host}}static/common/lib/ckplayer/js/ckplayer.min.js?v={{:MyC('home_static_cache_version')}}"></script>
|
||||
{{/if}}
|
||||
|
||||
<!-- 条形码 -->
|
||||
{{if isset($is_load_barcode) and $is_load_barcode eq 1}}
|
||||
<script type='text/javascript' src="{{$public_host}}static/common/lib/JsBarcode/JsBarcode.all.min.js?v={{:MyC('home_static_cache_version')}}"></script>
|
||||
{{/if}}
|
||||
|
||||
<!-- map -->
|
||||
{{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}}
|
||||
{{switch $load_map_type}}
|
||||
|
|
|
|||
|
|
@ -93,6 +93,10 @@ class OrderService
|
|||
return DataReturn('状态不可操作['.$status_text.'-'.$order['order_no'].']', -1);
|
||||
}
|
||||
|
||||
// 订单详情
|
||||
$detail = self::OrderItemList([$order]);
|
||||
$order['detail'] = (empty($detail) || !array_key_exists($order['id'], $detail)) ? [] : $detail[$order['id']];
|
||||
|
||||
// 订单用户
|
||||
$order['user'] = UserService::UserHandle(UserService::UserInfo('id', $order['user_id']));
|
||||
if(empty($order['user']))
|
||||
|
|
@ -230,6 +234,7 @@ class OrderService
|
|||
'user' => $current_user,
|
||||
'business_ids' => $order_ids,
|
||||
'business_nos' => $order_nos,
|
||||
'business_data' => $order_data,
|
||||
'total_price' => $total_price,
|
||||
'payment' => $payment['payment'],
|
||||
'payment_name' => $payment['name'],
|
||||
|
|
@ -246,6 +251,7 @@ class OrderService
|
|||
'user_id' => $current_user['id'],
|
||||
'business_ids' => $order_ids,
|
||||
'business_nos' => $order_nos,
|
||||
'business_data' => $order_data,
|
||||
'total_price' => $total_price,
|
||||
'payment' => $payment['payment'],
|
||||
'payment_name' => $payment['name'],
|
||||
|
|
@ -263,6 +269,7 @@ class OrderService
|
|||
'business_type' => 'system-order',
|
||||
'business_ids' => $order_ids,
|
||||
'business_nos' => $order_nos,
|
||||
'business_data' => $order_data,
|
||||
'order_id' => $pay_log['data']['id'],
|
||||
'order_no' => $pay_log['data']['log_no'],
|
||||
'name' => '订单支付',
|
||||
|
|
|
|||
|
|
@ -70,9 +70,10 @@ class ResourcesService
|
|||
* @version 1.0.0
|
||||
* @date 2018-12-12
|
||||
* @desc description
|
||||
* @param [string|array] $value [附件路径地址]
|
||||
* @param [string|array] $value [附件路径地址]
|
||||
* @param [string] $field [url字段名称]
|
||||
*/
|
||||
public static function AttachmentPathHandle($value)
|
||||
public static function AttachmentPathHandle($value, $field = 'url')
|
||||
{
|
||||
// 配置文件附件url地址
|
||||
$attachment_host = SystemBaseService::AttachmentHost();
|
||||
|
|
@ -92,10 +93,10 @@ class ResourcesService
|
|||
{
|
||||
foreach($value as &$v)
|
||||
{
|
||||
// 是否二级url
|
||||
if(isset($v['url']))
|
||||
// 是否二级
|
||||
if(isset($v[$field]))
|
||||
{
|
||||
$v['url'] = empty($v['url']) ? '' : str_replace($search, DS, $v['url']);
|
||||
$v[$field] = empty($v[$field]) ? '' : str_replace($search, DS, $v[$field]);
|
||||
} else {
|
||||
$v = empty($v) ? '' : str_replace($search, DS, $v);
|
||||
}
|
||||
|
|
@ -137,9 +138,10 @@ class ResourcesService
|
|||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @datetime 2019-01-13T15:13:30+0800
|
||||
* @param [string|array] $value [附件地址]
|
||||
* @param [string|array] $value [附件地址]
|
||||
* @param [string] $field [url字段名称]
|
||||
*/
|
||||
public static function AttachmentPathViewHandle($value)
|
||||
public static function AttachmentPathViewHandle($value, $field = 'url')
|
||||
{
|
||||
if(!empty($value))
|
||||
{
|
||||
|
|
@ -151,12 +153,12 @@ class ResourcesService
|
|||
{
|
||||
foreach($value as &$v)
|
||||
{
|
||||
// 是否二级url
|
||||
if(isset($v['url']))
|
||||
// 是否二级
|
||||
if(isset($v[$field]))
|
||||
{
|
||||
if(substr($v['url'], 0, 4) != 'http')
|
||||
if(substr($v[$field], 0, 4) != 'http')
|
||||
{
|
||||
$v['url'] = $host.$v['url'];
|
||||
$v[$field] = $host.$v[$field];
|
||||
}
|
||||
} else {
|
||||
if(substr($v, 0, 4) != 'http')
|
||||
|
|
@ -778,5 +780,21 @@ class ResourcesService
|
|||
|
||||
return empty($uid) ? '' : md5($uid);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取表结构
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2022-11-12
|
||||
* @desc description
|
||||
* @param [string] $table [表名称、可以是大写字母会自动转为小写前面加下划线分隔]
|
||||
*/
|
||||
public static function TableStructureData($table)
|
||||
{
|
||||
$table_name = MyConfig('database.connections.mysql.prefix').strtolower(preg_replace('/\B([A-Z])/', '_$1', $table));
|
||||
$res = Db::query('SELECT COLUMN_NAME AS field,COLUMN_COMMENT AS name FROM INFORMATION_SCHEMA.Columns WHERE `table_name`="'.$table_name.'"');
|
||||
return empty($res) ? [] : array_column($res, 'name', 'field');
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -120,17 +120,20 @@ class SearchService
|
|||
// 是否转ascii处理主键字段
|
||||
if($is_ascii && !empty($field) && isset($v[$field]))
|
||||
{
|
||||
$v[$did] = StrToAscii(($v[$field]));
|
||||
$v[$did] = StrToAscii($v[$field]);
|
||||
}
|
||||
if((isset($params[$pid]) && $params[$pid] == $v[$did]))
|
||||
$temp_params = $params;
|
||||
if(isset($v[$did]))
|
||||
{
|
||||
$temp_params = $params;
|
||||
unset($temp_params[$pid]);
|
||||
} else {
|
||||
$temp_params = array_merge($params, [$pid=>$v[$did]]);
|
||||
if(isset($params[$pid]) && $params[$pid] == $v[$did])
|
||||
{
|
||||
unset($temp_params[$pid]);
|
||||
} else {
|
||||
$temp_params = array_merge($params, [$pid=>$v[$did]]);
|
||||
}
|
||||
}
|
||||
$v['url'] = MyUrl('index/search/index', $temp_params);
|
||||
$v['is_active'] = (isset($params[$pid]) && $params[$pid] == $v[$did]) ? 1 : 0;
|
||||
$v['is_active'] = (isset($params[$pid]) && isset($v[$did]) && $params[$pid] == $v[$did]) ? 1 : 0;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -94,8 +94,8 @@ ul {margin-top:0;}
|
|||
.admin-sidebar-list li a .nav-name {line-height: 14px;width: calc(100% - 50px);}
|
||||
.admin-sidebar-sub {margin-top:0;margin-bottom:0;box-shadow:0 16px 8px -15px #e2e2e2 inset;background:#646464;padding-left:10px;}
|
||||
.admin-sidebar-sub li:first-child {border-top:1px solid #dedede;}
|
||||
.admin-sidebar-sub li { background: #404246 !important; border-color: #393b3e !important ; }
|
||||
.admin-sidebar {height:100%;overflow-x:hidden;overflow-y:scroll;-webkit-overflow-scrolling:touch;}
|
||||
.admin-sidebar-sub li { background: #404246 !important; border-color: #393b3e !important; }
|
||||
.admin-sidebar {height:100%;overflow-x:hidden;overflow-y:scroll;-webkit-overflow-scrolling:touch;scrollbar-width: none;}
|
||||
.admin-sidebar .am-icon-angle-down {margin-top: 2px;}
|
||||
@media only screen and (min-width:641px) {
|
||||
header { left: 160px; }
|
||||
|
|
@ -116,7 +116,7 @@ ul {margin-top:0;}
|
|||
.admin {width:100%;height:100%;display:flex;display:-webkit-flex;padding-top:33px;background:#fff;}
|
||||
.admin .am-g {padding-left:0;padding-right:0;}
|
||||
/*---right Content---*/
|
||||
.content-right .content {padding:10px 10px 0 10px;}
|
||||
.content-right > .content {padding:10px 10px 0 10px;}
|
||||
.admin-sidebar-list li a {padding:0.65rem;}
|
||||
.common-left-menu a:hover { background:rgba(118, 119, 120, 0.45); }
|
||||
.common-left-menu-active {background:#1cc09f !important;color:#fff !important;}
|
||||
|
|
|
|||
|
|
@ -70,6 +70,7 @@
|
|||
margin-top: 4px;
|
||||
margin-left: 20px;
|
||||
height: 25px;
|
||||
scrollbar-width: none;
|
||||
}
|
||||
.header-menu-open-pages-list ul li {
|
||||
display: inline-block;
|
||||
|
|
|
|||
|
|
@ -1607,31 +1607,37 @@ form.am-form-popup-fixed .am-form-popup-submit {
|
|||
border-top: 1px solid #eee;
|
||||
z-index: 2;
|
||||
}
|
||||
.am-popup.popup-not-title form.am-form-popup-fixed .am-form-popup-submit {
|
||||
width: calc(100% - 50px);
|
||||
margin-left: 25px;
|
||||
}
|
||||
|
||||
/**
|
||||
* 混合业务列表选择
|
||||
*/
|
||||
.business-item ul {
|
||||
padding: 5px;
|
||||
.business-list-nbfc {
|
||||
overflow: hidden;
|
||||
}
|
||||
.business-item ul li {
|
||||
border:1px solid transparent;
|
||||
overflow: hidden;
|
||||
float: left;
|
||||
.business-list-nbfc ul {
|
||||
width: calc(100% + 1.8rem);
|
||||
margin-left: -0.9rem;
|
||||
margin-top: -0.9rem;
|
||||
}
|
||||
.business-list ul li .business-item {
|
||||
border: 1px solid #ddd;
|
||||
cursor: pointer;
|
||||
padding: 5px;
|
||||
border: 1px solid #eee;
|
||||
margin: 0 10px 10px 0;
|
||||
border-radius: 2px;
|
||||
background: #fff;
|
||||
position: relative;
|
||||
}
|
||||
.business-item ul li img {
|
||||
width: 36px;
|
||||
height: 36px;
|
||||
.business-list ul li .business-item img {
|
||||
width: 16px;
|
||||
height: 15px;
|
||||
}
|
||||
.business-list ul li .business-item img,
|
||||
.business-list ul li .business-item span {
|
||||
vertical-align: middle;
|
||||
border-radius: 2px;
|
||||
}
|
||||
.business-item ul li .rotate {
|
||||
.business-list ul li .business-item .rotate {
|
||||
background-color: #d2364c;
|
||||
width: 22px;
|
||||
height: 70px;
|
||||
|
|
@ -1641,84 +1647,22 @@ form.am-form-popup-fixed .am-form-popup-submit {
|
|||
bottom: -20px;
|
||||
display: none;
|
||||
}
|
||||
.business-item ul li i.am-icon-check {
|
||||
.business-list ul li .business-item i.am-icon-check {
|
||||
position: absolute;
|
||||
right: 1px;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
color: #fff !important;
|
||||
display: none;
|
||||
}
|
||||
.business-item ul li.selected .rotate,
|
||||
.business-item ul li.selected i.am-icon-check {
|
||||
.business-list ul li.selected .business-item .rotate,
|
||||
.business-list ul li.selected .business-item i.am-icon-check {
|
||||
display: block;
|
||||
}
|
||||
.business-item ul li:hover {
|
||||
.business-list ul li.selected .business-item,
|
||||
.business-list ul li .business-item:hover {
|
||||
border: 1px solid #d2364c;
|
||||
box-shadow: 0px 0 0px 1px #d2364c;
|
||||
}
|
||||
.business-item ul li.selected {
|
||||
border-color: #d2364c;
|
||||
position: relative;
|
||||
box-shadow: 0px 0 0px 1px #d2364c;
|
||||
}
|
||||
@media only screen and (min-width:640px) {
|
||||
.business-item ul li {
|
||||
width:calc(33% - 5px);
|
||||
}
|
||||
.business-item ul li:nth-child(3n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
@media only screen and (max-width:640px) {
|
||||
.business-item ul li {
|
||||
width: calc(50% - 5px);
|
||||
}
|
||||
.business-item ul li:nth-child(2n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 滚动条样式
|
||||
*/
|
||||
::-webkit-scrollbar {
|
||||
width: 3px;
|
||||
height: 6px;
|
||||
}
|
||||
::-webkit-scrollbar-button,
|
||||
::-webkit-scrollbar-button:vertical {
|
||||
display: none;
|
||||
}
|
||||
::-webkit-scrollbar-track,
|
||||
::-webkit-scrollbar-track:vertical {
|
||||
background-color: black;
|
||||
}
|
||||
::-webkit-scrollbar-track-piece {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
::-webkit-scrollbar-track-piece {
|
||||
border-top: 1px solid rgba(0,0,0,.01);
|
||||
}
|
||||
::-webkit-scrollbar-thumb,
|
||||
::-webkit-scrollbar-thumb:vertical {
|
||||
margin-right: 10px;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
::-webkit-scrollbar-thumb:hover,
|
||||
::-webkit-scrollbar-thumb:vertical:hover {
|
||||
background-color: #a9a9a9;
|
||||
}
|
||||
::-webkit-scrollbar-corner,
|
||||
::-webkit-scrollbar-corner:vertical {
|
||||
background-color: #e5e5e5;
|
||||
}
|
||||
::-webkit-scrollbar-resizer,
|
||||
::-webkit-scrollbar-resizer:vertical {
|
||||
background-color: #ff6e00;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 输入框、选择框数据清除
|
||||
|
|
@ -1774,4 +1718,51 @@ a.input-clearout-submit:focus > i {
|
|||
.chosen-container-single > .chosen-single.input-clearout-element > .chosen-single-icon,
|
||||
.am-selected > .am-selected-btn.input-clearout-element > .am-selected-icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 滚动条样式
|
||||
*/
|
||||
::-webkit-scrollbar {
|
||||
width: 3px;
|
||||
height: 6px;
|
||||
}
|
||||
::-webkit-scrollbar-button,
|
||||
::-webkit-scrollbar-button:vertical {
|
||||
display: none;
|
||||
}
|
||||
::-webkit-scrollbar-track,
|
||||
::-webkit-scrollbar-track:vertical {
|
||||
background-color: black;
|
||||
}
|
||||
::-webkit-scrollbar-track-piece {
|
||||
background-color: #fafafa;
|
||||
}
|
||||
::-webkit-scrollbar-track-piece {
|
||||
border-top: 1px solid rgba(0,0,0,.01);
|
||||
}
|
||||
::-webkit-scrollbar-thumb,
|
||||
::-webkit-scrollbar-thumb:vertical {
|
||||
margin-right: 10px;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
::-webkit-scrollbar-thumb:hover,
|
||||
::-webkit-scrollbar-thumb:vertical:hover {
|
||||
background-color: #a9a9a9;
|
||||
}
|
||||
::-webkit-scrollbar-corner,
|
||||
::-webkit-scrollbar-corner:vertical {
|
||||
background-color: #e5e5e5;
|
||||
}
|
||||
::-webkit-scrollbar-resizer,
|
||||
::-webkit-scrollbar-resizer:vertical {
|
||||
background-color: #ff6e00;
|
||||
}
|
||||
/**
|
||||
* 滚动条样式 - 火狐浏览器、使用更窄的样式
|
||||
*/
|
||||
* {
|
||||
scrollbar-width: thin;
|
||||
}
|
||||
|
|
@ -627,12 +627,13 @@ function FormDataFill(json, tag)
|
|||
$form = $(tag);
|
||||
for(var i in json)
|
||||
{
|
||||
$form.find('input[type="hidden"][name="'+i+'"], input[type="text"][name="'+i+'"], input[type="password"][name="'+i+'"], input[type="email"][name="'+i+'"], input[type="number"][name="'+i+'"], input[type="date"][name="'+i+'"], textarea[name="'+i+'"], select[name="'+i+'"], input[type="url"][name="'+i+'"]').val(json[i]);
|
||||
$form.find('input[type="hidden"][name="'+i+'"], input[type="text"][name="'+i+'"], input[type="password"][name="'+i+'"], input[type="email"][name="'+i+'"], input[type="number"][name="'+i+'"], input[type="date"][name="'+i+'"], textarea[name="'+i+'"], select[name="'+i+'"], input[type="url"][name="'+i+'"]').val(json[i]).trigger('change');
|
||||
|
||||
// input radio
|
||||
$form.find('input[type="radio"][name="'+i+'"]').each(function(k, v)
|
||||
{
|
||||
this.checked = (json[i] == $(this).val());
|
||||
$(this).trigger('change');
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -652,6 +653,7 @@ function FormDataFill(json, tag)
|
|||
var name = $(this).find('input').attr('name') || null;
|
||||
var state = (name == null || (json[name] || 0) == 0) ? false : true;
|
||||
$(this).find('input').bootstrapSwitch('state', state);
|
||||
$(this).find('input').trigger('change');
|
||||
});
|
||||
|
||||
// 多选插件事件更新
|
||||
|
|
@ -3982,16 +3984,30 @@ $(function()
|
|||
});
|
||||
|
||||
// 混合业务列表选择
|
||||
$(document).on('click', '.business-item ul li', function()
|
||||
$(document).on('click', '.business-list ul li', function()
|
||||
{
|
||||
var $form = $(this).parents('form');
|
||||
var $business = ($(this).parents('form').length == 1) ? $(this).parents('form') : $(this).parents('.business-list');
|
||||
var $parent = $(this).parent();
|
||||
var type = $parent.data('type');
|
||||
var $input = $business.find('input[name='+type+']').length == 0 ? $business.find('input[name='+type+'_id]') : $business.find('input[name='+type+']');
|
||||
var value = $input.val();
|
||||
if($(this).hasClass('selected'))
|
||||
{
|
||||
$form.find('input[name='+$parent.data('type')+'_id]').val(0);
|
||||
$(this).removeClass('selected');
|
||||
if(parseInt($parent.data('is-required') || 0) == 0)
|
||||
{
|
||||
$input.val('');
|
||||
if(value != '')
|
||||
{
|
||||
$input.trigger('change');
|
||||
}
|
||||
$(this).removeClass('selected');
|
||||
}
|
||||
} else {
|
||||
$form.find('input[name='+$parent.data('type')+'_id]').val($(this).data('value'));
|
||||
$input.val($(this).data('value'));
|
||||
if(value != $(this).data('value'))
|
||||
{
|
||||
$input.trigger('change');
|
||||
}
|
||||
$(this).addClass('selected').siblings('li').removeClass('selected');
|
||||
}
|
||||
});
|
||||
|
|
@ -4006,6 +4022,11 @@ $(function()
|
|||
{
|
||||
InputClearOutHandle($(this));
|
||||
});
|
||||
// 输入数据框添加清除按钮 - 获取焦点事件
|
||||
$(document).on('focus', 'select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"]', function()
|
||||
{
|
||||
InputClearOutHandle($(this));
|
||||
});
|
||||
// 下拉选择组件
|
||||
$(document).on('mouseenter', '.chosen-container .chosen-single, .am-selected .am-selected-btn', function()
|
||||
{
|
||||
|
|
@ -4031,7 +4052,7 @@ $(function()
|
|||
// 文本框则清空数据
|
||||
if($(this).prev().is('input') || $(this).prev().is('textarea'))
|
||||
{
|
||||
$(this).prev().val('');
|
||||
$(this).prev().val('').trigger('change');
|
||||
}
|
||||
// 插件下拉选择组件
|
||||
if($(this).parents('.chosen-container').length > 0)
|
||||
|
|
@ -4054,6 +4075,17 @@ $(function()
|
|||
// 删除清除按钮
|
||||
$(this).remove();
|
||||
});
|
||||
// 页面滚动则移除input删除按钮
|
||||
$(window).on('scroll', function()
|
||||
{
|
||||
$('*').removeClass('input-clearout-element');
|
||||
$('.input-clearout-submit').remove();
|
||||
});
|
||||
$('*').on('scroll', function()
|
||||
{
|
||||
$('*').removeClass('input-clearout-element');
|
||||
$('.input-clearout-submit').remove();
|
||||
});
|
||||
|
||||
// 下拉组件输入框快捷添加则不触发失去焦点事件
|
||||
$(document).on('blur', '.chosen-container > .chosen-drop > .chosen-search > input', function()
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -11644,9 +11644,9 @@ return /******/ (function(modules) { // webpackBootstrap
|
|||
}
|
||||
}
|
||||
if (i == l) {
|
||||
qrCodeAlg = new QRCodeAlg(this.options.text, this.options.correctLevel);
|
||||
qrCodeAlg = new QRCodeAlg(this.options.text.toString(), this.options.correctLevel);
|
||||
qrcodeAlgObjCache.push({
|
||||
text: this.options.text,
|
||||
text: this.options.text.toString(),
|
||||
correctLevel: this.options.correctLevel,
|
||||
obj: qrCodeAlg
|
||||
});
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -62,14 +62,14 @@ $(function()
|
|||
});
|
||||
|
||||
// 混合列表选择
|
||||
$('.business-item ul li').on('click', function()
|
||||
$('.business-list ul li').on('click', function()
|
||||
{
|
||||
var $parent = $(this).parents('.business-item');
|
||||
var $parent = $(this).parents('.business-list');
|
||||
var field = $parent.data('field') || null;
|
||||
var value = $(this).data('value') || null;
|
||||
if(field != null && value != null)
|
||||
{
|
||||
var anchor = $parent.attr('id') || '';
|
||||
var anchor = $parent.attr('id') || $(this).parents('.buy-items').attr('id') || '';
|
||||
window.location.href = UrlFieldReplace(field, value, null, anchor);
|
||||
}
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue