新增条形码组件库、其他细节优化

feat/task1-c-wallet
gongfuxiang 2022-11-16 18:22:24 +08:00
parent fd1e26cf1e
commit 61b2fa866e
22 changed files with 269 additions and 165 deletions

View File

@ -297,6 +297,9 @@ class Common extends BaseController
// 是否加载视频播放器组件 // 是否加载视频播放器组件
$assign['is_load_ckplayer'] = 0; $assign['is_load_ckplayer'] = 0;
// 是否加载条形码组件
$assign['is_load_barcode'] = 0;
// 默认不加载地图api、类型默认百度地图 // 默认不加载地图api、类型默认百度地图
$assign['is_load_map_api'] = 0; $assign['is_load_map_api'] = 0;
$assign['load_map_type'] = MyC('common_map_type', 'baidu', true); $assign['load_map_type'] = MyC('common_map_type', 'baidu', true);

View File

@ -34,18 +34,20 @@
</div> </div>
<div class="am-popup-bd"> <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"> <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)}} {{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}} {{foreach $express_list as $express}}
{{if $express.is_enable eq 1}} {{if $express.is_enable eq 1}}
<li class="express-items-{{$express.id}}" data-value="{{$express.id}}"> <li class="am-padding-sm" data-value="{{$express.id}}">
{{if !empty($express.icon)}} <div class="business-item am-nbfc am-padding-sm am-radius">
<img src="{{$express.icon}}" /> {{if !empty($express.icon)}}
{{/if}} <img src="{{$express.icon}}" class="am-radius" />
<span>{{$express.name}}</span> {{/if}}
<div class="rotate"></div> <span>{{$express.name}}</span>
<i class="am-icon-check"></i> <div class="rotate"></div>
<i class="am-icon-check"></i>
</div>
</li> </li>
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -81,17 +83,19 @@
</div> </div>
<div class="am-popup-bd"> <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"> <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)}} {{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}} {{foreach $buy_payment_list as $payment}}
<li class="payment-items-{{$payment.id}}" data-value="{{$payment.id}}"> <li class="am-padding-sm" data-value="{{$payment.id}}">
{{if !empty($payment.logo)}} <div class="business-item am-nbfc am-padding-sm am-radius">
<img src="{{$payment.logo}}" /> {{if !empty($payment.logo)}}
{{/if}} <img src="{{$payment.logo}}" class="am-radius" />
<span>{{$payment.name}}</span> {{/if}}
<div class="rotate"></div> <span>{{$payment.name}}</span>
<i class="am-icon-check"></i> <div class="rotate"></div>
<i class="am-icon-check"></i>
</div>
</li> </li>
{{/foreach}} {{/foreach}}
</ul> </ul>

View File

@ -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> <script type='text/javascript' src="{{$public_host}}static/common/lib/ckplayer/js/ckplayer.min.js?v={{:MyC('home_static_cache_version')}}"></script>
{{/if}} {{/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 --> <!-- map -->
{{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}} {{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}}
{{switch $load_map_type}} {{switch $load_map_type}}

View File

@ -225,7 +225,7 @@ class User extends Common
} }
/** /**
* [ClientCenter 用户中心] * 用户中心
* @author Devil * @author Devil
* @blog http://gong.gg/ * @blog http://gong.gg/
* @version 1.0.0 * @version 1.0.0

View File

@ -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 * @author Devil

View File

@ -405,6 +405,9 @@ class Common extends BaseController
// 是否加载视频播放器组件 // 是否加载视频播放器组件
$assign['is_load_ckplayer'] = 0; $assign['is_load_ckplayer'] = 0;
// 是否加载条形码组件
$assign['is_load_barcode'] = 0;
// 默认不加载地图api、类型默认百度地图 // 默认不加载地图api、类型默认百度地图
$assign['is_load_map_api'] = 0; $assign['is_load_map_api'] = 0;
$assign['load_map_type'] = MyC('common_map_type', 'baidu', true); $assign['load_map_type'] = MyC('common_map_type', 'baidu', true);

View File

@ -522,22 +522,26 @@
<!-- 支付方式 --> <!-- 支付方式 -->
{{if $base['actual_price'] gt 0 and $common_order_is_booking neq 1}} {{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> <h3>选择支付</h3>
{{if !empty($payment_list)}} <div class="business-list business-list-nbfc payment am-margin-top-sm" data-field="payment_id">
<ul class="payment-list"> {{if !empty($payment_list)}}
{{foreach $payment_list as $payment}} <ul class="am-avg-sm-2 am-avg-md-3 am-avg-lg-4 payment-list" data-is-required="1">
<li data-value="{{$payment.id}}" class="{{if isset($params['payment_id']) and $params['payment_id'] eq $payment['id']}}selected{{/if}}"> {{foreach $payment_list as $payment}}
{{if !empty($payment.logo)}} <li data-value="{{$payment.id}}" class="am-padding-sm {{if isset($params['payment_id']) and $params['payment_id'] eq $payment['id']}}selected{{/if}}">
<img src="{{$payment.logo}}" /> <div class="business-item am-nbfc am-padding-sm am-radius">
{{/if}} {{if !empty($payment.logo)}}
<span>{{$payment.name}}</span> <img src="{{$payment.logo}}" class="am-radius" />
<div class="rotate"></div> {{/if}}
<i class="am-icon-check"></i> <span>{{$payment.name}}</span>
</li> <div class="rotate"></div>
{{/foreach}} <i class="am-icon-check"></i>
</ul> </div>
{{/if}} </li>
{{/foreach}}
</ul>
{{/if}}
</div>
{{if empty($payment_list)}} {{if empty($payment_list)}}
<div class="table-no"><i class="am-icon-warning"></i> 没有支付方式</div> <div class="table-no"><i class="am-icon-warning"></i> 没有支付方式</div>
{{/if}} {{/if}}

View File

@ -6,17 +6,19 @@
</div> </div>
<div class="am-popup-bd"> <div class="am-popup-bd">
<form class="am-form pay-form am-form-popup-fixed" method="post" action="{{:MyUrl('index/order/pay')}}"> <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)}} {{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}} {{foreach $buy_payment_list as $payment}}
<li class="payment-items-{{$payment.id}}" data-value="{{$payment.id}}"> <li class="am-padding-sm" data-value="{{$payment.id}}">
{{if !empty($payment.logo)}} <div class="business-item am-nbfc am-padding-sm am-radius">
<img src="{{$payment.logo}}" /> {{if !empty($payment.logo)}}
{{/if}} <img src="{{$payment.logo}}" class="am-radius" />
<span>{{$payment.name}}</span> {{/if}}
<div class="rotate"></div> <span>{{$payment.name}}</span>
<i class="am-icon-check"></i> <div class="rotate"></div>
<i class="am-icon-check"></i>
</div>
</li> </li>
{{/foreach}} {{/foreach}}
</ul> </ul>

View File

@ -14,7 +14,6 @@
<!-- content --> <!-- content -->
<div class="am-container user-main"> <div class="am-container user-main">
<!-- user menu start --> <!-- user menu start -->
{{include file="public/user_menu" /}} {{include file="public/user_menu" /}}
<!-- user menu end --> <!-- user menu end -->
@ -23,8 +22,8 @@
<div class="user-content"> <div class="user-content">
<div class="user-content-body"> <div class="user-content-body">
<legend> <legend>
<span class="legend-title">个人资料</span> <span class="am-text-default">个人资料</span>
<a href="{{:MyUrl('index/personal/saveinfo')}}" class="am-fr"> 编辑</a> <a href="{{:MyUrl('index/personal/saveinfo')}}" class="am-fr am-text-xs am-margin-top-sm am-icon-edit"> 编辑</a>
</legend> </legend>
<dl class="dl-content"> <dl class="dl-content">
{{foreach $personal_show_list as $k=>$v}} {{foreach $personal_show_list as $k=>$v}}

View File

@ -25,8 +25,8 @@
<!-- form start --> <!-- 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')}}"> <form class="am-form form-validation" action="{{:MyUrl('index/personal/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('index/personal/index')}}">
<legend> <legend>
<span class="legend-title">个人资料</span> <span class="am-text-default">个人资料</span>
<a href="{{:MyUrl('index/personal/index')}}" class="am-fr am-margin-top-sm am-icon-mail-reply"> 返回</a> <a href="{{:MyUrl('index/personal/index')}}" class="am-fr am-text-xs am-margin-top-sm am-icon-mail-reply"> 返回</a>
</legend> </legend>
<div class="am-form-group"> <div class="am-form-group">
<label>昵称</label> <label>昵称</label>

View File

@ -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> <script type='text/javascript' src="{{$public_host}}static/common/lib/ckplayer/js/ckplayer.min.js?v={{:MyC('home_static_cache_version')}}"></script>
{{/if}} {{/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 --> <!-- map -->
{{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}} {{if isset($is_load_map_api) and $is_load_map_api eq 1 and !empty($load_map_type)}}
{{switch $load_map_type}} {{switch $load_map_type}}

View File

@ -93,6 +93,10 @@ class OrderService
return DataReturn('状态不可操作['.$status_text.'-'.$order['order_no'].']', -1); 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'])); $order['user'] = UserService::UserHandle(UserService::UserInfo('id', $order['user_id']));
if(empty($order['user'])) if(empty($order['user']))
@ -230,6 +234,7 @@ class OrderService
'user' => $current_user, 'user' => $current_user,
'business_ids' => $order_ids, 'business_ids' => $order_ids,
'business_nos' => $order_nos, 'business_nos' => $order_nos,
'business_data' => $order_data,
'total_price' => $total_price, 'total_price' => $total_price,
'payment' => $payment['payment'], 'payment' => $payment['payment'],
'payment_name' => $payment['name'], 'payment_name' => $payment['name'],
@ -246,6 +251,7 @@ class OrderService
'user_id' => $current_user['id'], 'user_id' => $current_user['id'],
'business_ids' => $order_ids, 'business_ids' => $order_ids,
'business_nos' => $order_nos, 'business_nos' => $order_nos,
'business_data' => $order_data,
'total_price' => $total_price, 'total_price' => $total_price,
'payment' => $payment['payment'], 'payment' => $payment['payment'],
'payment_name' => $payment['name'], 'payment_name' => $payment['name'],
@ -263,6 +269,7 @@ class OrderService
'business_type' => 'system-order', 'business_type' => 'system-order',
'business_ids' => $order_ids, 'business_ids' => $order_ids,
'business_nos' => $order_nos, 'business_nos' => $order_nos,
'business_data' => $order_data,
'order_id' => $pay_log['data']['id'], 'order_id' => $pay_log['data']['id'],
'order_no' => $pay_log['data']['log_no'], 'order_no' => $pay_log['data']['log_no'],
'name' => '订单支付', 'name' => '订单支付',

View File

@ -70,9 +70,10 @@ class ResourcesService
* @version 1.0.0 * @version 1.0.0
* @date 2018-12-12 * @date 2018-12-12
* @desc description * @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地址 // 配置文件附件url地址
$attachment_host = SystemBaseService::AttachmentHost(); $attachment_host = SystemBaseService::AttachmentHost();
@ -92,10 +93,10 @@ class ResourcesService
{ {
foreach($value as &$v) 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 { } else {
$v = empty($v) ? '' : str_replace($search, DS, $v); $v = empty($v) ? '' : str_replace($search, DS, $v);
} }
@ -137,9 +138,10 @@ class ResourcesService
* @blog http://gong.gg/ * @blog http://gong.gg/
* @version 1.0.0 * @version 1.0.0
* @datetime 2019-01-13T15:13:30+0800 * @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)) if(!empty($value))
{ {
@ -151,12 +153,12 @@ class ResourcesService
{ {
foreach($value as &$v) 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 { } else {
if(substr($v, 0, 4) != 'http') if(substr($v, 0, 4) != 'http')
@ -778,5 +780,21 @@ class ResourcesService
return empty($uid) ? '' : md5($uid); 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');
}
} }
?> ?>

View File

@ -120,17 +120,20 @@ class SearchService
// 是否转ascii处理主键字段 // 是否转ascii处理主键字段
if($is_ascii && !empty($field) && isset($v[$field])) 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; if(isset($params[$pid]) && $params[$pid] == $v[$did])
unset($temp_params[$pid]); {
} else { unset($temp_params[$pid]);
$temp_params = array_merge($params, [$pid=>$v[$did]]); } else {
$temp_params = array_merge($params, [$pid=>$v[$did]]);
}
} }
$v['url'] = MyUrl('index/search/index', $temp_params); $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; return $data;
} }

View File

@ -94,8 +94,8 @@ ul {margin-top:0;}
.admin-sidebar-list li a .nav-name {line-height: 14px;width: calc(100% - 50px);} .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 {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:first-child {border-top:1px solid #dedede;}
.admin-sidebar-sub li { background: #404246 !important; border-color: #393b3e !important ; } .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 {height:100%;overflow-x:hidden;overflow-y:scroll;-webkit-overflow-scrolling:touch;scrollbar-width: none;}
.admin-sidebar .am-icon-angle-down {margin-top: 2px;} .admin-sidebar .am-icon-angle-down {margin-top: 2px;}
@media only screen and (min-width:641px) { @media only screen and (min-width:641px) {
header { left: 160px; } 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 {width:100%;height:100%;display:flex;display:-webkit-flex;padding-top:33px;background:#fff;}
.admin .am-g {padding-left:0;padding-right:0;} .admin .am-g {padding-left:0;padding-right:0;}
/*---right Content---*/ /*---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;} .admin-sidebar-list li a {padding:0.65rem;}
.common-left-menu a:hover { background:rgba(118, 119, 120, 0.45); } .common-left-menu a:hover { background:rgba(118, 119, 120, 0.45); }
.common-left-menu-active {background:#1cc09f !important;color:#fff !important;} .common-left-menu-active {background:#1cc09f !important;color:#fff !important;}

View File

@ -70,6 +70,7 @@
margin-top: 4px; margin-top: 4px;
margin-left: 20px; margin-left: 20px;
height: 25px; height: 25px;
scrollbar-width: none;
} }
.header-menu-open-pages-list ul li { .header-menu-open-pages-list ul li {
display: inline-block; display: inline-block;

View File

@ -1607,31 +1607,37 @@ form.am-form-popup-fixed .am-form-popup-submit {
border-top: 1px solid #eee; border-top: 1px solid #eee;
z-index: 2; 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 { .business-list-nbfc {
padding: 5px;
overflow: hidden; overflow: hidden;
} }
.business-item ul li { .business-list-nbfc ul {
border:1px solid transparent; width: calc(100% + 1.8rem);
overflow: hidden; margin-left: -0.9rem;
float: left; margin-top: -0.9rem;
}
.business-list ul li .business-item {
border: 1px solid #ddd;
cursor: pointer; cursor: pointer;
padding: 5px; background: #fff;
border: 1px solid #eee; position: relative;
margin: 0 10px 10px 0;
border-radius: 2px;
} }
.business-item ul li img { .business-list ul li .business-item img {
width: 36px; width: 16px;
height: 36px; height: 15px;
}
.business-list ul li .business-item img,
.business-list ul li .business-item span {
vertical-align: middle; vertical-align: middle;
border-radius: 2px;
} }
.business-item ul li .rotate { .business-list ul li .business-item .rotate {
background-color: #d2364c; background-color: #d2364c;
width: 22px; width: 22px;
height: 70px; height: 70px;
@ -1641,84 +1647,22 @@ form.am-form-popup-fixed .am-form-popup-submit {
bottom: -20px; bottom: -20px;
display: none; display: none;
} }
.business-item ul li i.am-icon-check { .business-list ul li .business-item i.am-icon-check {
position: absolute; position: absolute;
right: 1px; right: 0;
bottom: 0; bottom: 0;
color: #fff !important; color: #fff !important;
display: none; display: none;
} }
.business-item ul li.selected .rotate, .business-list ul li.selected .business-item .rotate,
.business-item ul li.selected i.am-icon-check { .business-list ul li.selected .business-item i.am-icon-check {
display: block; 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; border: 1px solid #d2364c;
box-shadow: 0px 0 0px 1px #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, .chosen-container-single > .chosen-single.input-clearout-element > .chosen-single-icon,
.am-selected > .am-selected-btn.input-clearout-element > .am-selected-icon { .am-selected > .am-selected-btn.input-clearout-element > .am-selected-icon {
display: none; 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;
} }

View File

@ -627,12 +627,13 @@ function FormDataFill(json, tag)
$form = $(tag); $form = $(tag);
for(var i in json) 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 // input radio
$form.find('input[type="radio"][name="'+i+'"]').each(function(k, v) $form.find('input[type="radio"][name="'+i+'"]').each(function(k, v)
{ {
this.checked = (json[i] == $(this).val()); 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 name = $(this).find('input').attr('name') || null;
var state = (name == null || (json[name] || 0) == 0) ? false : true; var state = (name == null || (json[name] || 0) == 0) ? false : true;
$(this).find('input').bootstrapSwitch('state', state); $(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 $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')) if($(this).hasClass('selected'))
{ {
$form.find('input[name='+$parent.data('type')+'_id]').val(0); if(parseInt($parent.data('is-required') || 0) == 0)
$(this).removeClass('selected'); {
$input.val('');
if(value != '')
{
$input.trigger('change');
}
$(this).removeClass('selected');
}
} else { } 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'); $(this).addClass('selected').siblings('li').removeClass('selected');
} }
}); });
@ -4006,6 +4022,11 @@ $(function()
{ {
InputClearOutHandle($(this)); 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() $(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')) if($(this).prev().is('input') || $(this).prev().is('textarea'))
{ {
$(this).prev().val(''); $(this).prev().val('').trigger('change');
} }
// 插件下拉选择组件 // 插件下拉选择组件
if($(this).parents('.chosen-container').length > 0) if($(this).parents('.chosen-container').length > 0)
@ -4054,6 +4075,17 @@ $(function()
// 删除清除按钮 // 删除清除按钮
$(this).remove(); $(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() $(document).on('blur', '.chosen-container > .chosen-drop > .chosen-search > input', function()

File diff suppressed because one or more lines are too long

View File

@ -11644,9 +11644,9 @@ return /******/ (function(modules) { // webpackBootstrap
} }
} }
if (i == l) { if (i == l) {
qrCodeAlg = new QRCodeAlg(this.options.text, this.options.correctLevel); qrCodeAlg = new QRCodeAlg(this.options.text.toString(), this.options.correctLevel);
qrcodeAlgObjCache.push({ qrcodeAlgObjCache.push({
text: this.options.text, text: this.options.text.toString(),
correctLevel: this.options.correctLevel, correctLevel: this.options.correctLevel,
obj: qrCodeAlg obj: qrCodeAlg
}); });

File diff suppressed because one or more lines are too long

View File

@ -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 field = $parent.data('field') || null;
var value = $(this).data('value') || null; var value = $(this).data('value') || null;
if(field != null && 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); window.location.href = UrlFieldReplace(field, value, null, anchor);
} }
}); });