lang($code), 'message' => is_int($message) ? lang($message) : $message ]; // if (!empty($data)) { $resData['data'] = $data; // } return response($resData, 200, $header); } function showJsonSucc($message, $data = []) { return showJson(101, $message, $data); } function showJsonErr($message, $data = []) { return showJson(102, $message, $data); } function reJson($code = 101, $message = 1001, $data = []) { $resData = [ 'code' => lang($code), 'message' => is_int($message) ? lang($message) : $message ]; if (!empty($data)) { $resData['data'] = $data; } return json_encode($resData); } function lang($value) { return trans('api.' . $value); } function getValidatorError($error) { foreach ($error->messages() as $item) { return $item['0']; break; } } /** * 拼接url * @author lyh 894806814@qq.com * @date 2018/12/14 * @description */ function getUrl($url) { $url = trim($url); if (empty($url)) { return $url; } if (strpos($url, 'http') === 0 || strpos($url, 'https') === 0) { return $url; } else { // return url()->formatRoot('http://') . $url; return env('APP_URL') . $url; } } function perPage() { return empty(Request::all('perPage')['perPage']) ? env('PerPage', 10) : Request::all('perPage')['perPage']; } /** * @return \App\Modes\User|null */ function Admin() { return Auth::guard(config('permission.guard'))->user(); } function adminsWhere($model, $param = [], $isAll = false) { $str = ''; if (empty($param) && $isAll == false) { if (Admin()->province) { $model->whereProvince(Admin()->province); $str = $str . \App\Modes\Area::getName(Admin()->province . ' '); } if (Admin()->city) { $model->whereCity(Admin()->city); $str = $str . \App\Modes\Area::getName(Admin()->city . ' '); } if (Admin()->district) { $model->whereDistrict(Admin()->district); $str = $str . \App\Modes\Area::getName(Admin()->district); } } else { if (!empty($param['province'])) { $model->whereProvince($param['province']); $str = $str . \App\Modes\Area::getName($param['province'] . ' '); } if (!empty($param['city'])) { $model->whereCity(Admin()->city); $str = $str . \App\Modes\Area::getName($param['city'] . ' '); } if (!empty($param['district'])) { $model->whereDistrict($param['district']); $str = $str . \App\Modes\Area::getName($param['district']); } } return [ $model, $str, ]; } /** * 地区条件过滤 * @return \Illuminate\Database\Eloquent\Model */ function whereArea($model) { if (Admin()->province) { $model->whereProvince(Admin()->province); } if (Admin()->city) { $model->whereCity(Admin()->city); } if (Admin()->district) { $model->whereDistrict(Admin()->district); } return $model; } /** * 地区条件过滤 * @return \Illuminate\Database\Eloquent\Model */ function whereAreaByParam($model, $param) { if (!empty($param['province'])) { $model->whereProvince($param['province']); } if (!empty($param['city'])) { $model->whereCity(Admin()->city); } if (!empty($param['district'])) { $model->whereDistrict($param['district']); } return $model; } function getIds() { $ids = \Cache::get('ids'); return $ids; } function filterReq($postData, $data) { $filterData = array_filter($postData, function ($v, $k) use ($data) { return $v != null && $v != '' && in_array($k, $data); }, ARRAY_FILTER_USE_BOTH); return $filterData; } //判断是否是移动端访问 function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) { return TRUE; } // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息 if (isset ($_SERVER['HTTP_VIA'])) { return stristr($_SERVER['HTTP_VIA'], "wap") ? TRUE : FALSE;// 找不到为flase,否则为TRUE } // 判断手机发送的客户端标志,兼容性有待提高 if (isset ($_SERVER['HTTP_USER_AGENT'])) { $clientkeywords = array( 'mobile', 'nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-', 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap' ); // 从HTTP_USER_AGENT中查找手机浏览器的关键字 if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) { return TRUE; } } if (isset ($_SERVER['HTTP_ACCEPT'])) { // 协议法,因为有可能不准确,放到最后判断 // 如果只支持wml并且不支持html那一定是移动设备 // 如果支持wml和html但是wml在html之前则是移动设备 if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== FALSE) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === FALSE || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) { return TRUE; } } return FALSE; } /** * 金钱格式化小数点 * @param $money * @param int $decimal 小数点位数,默认系统配置2位 * @return float */ function moneyFormat($money, $decimal=null){ $formatConfig = []; $charset = !empty($formatConfig['charset'])? trim($formatConfig['charset']) : 'utf-8'; if($decimal == null){ $decimal = isset($formatConfig['moneyDecimal'])? intval($formatConfig['moneyDecimal']): 2; } $money = round($money, $decimal+1); $data = explode('.', $money); $money = isset($data[0])? $data[0] : 0; $float = isset($data[1])? $data[1] : ''; $len = $float? mb_strlen($float, $charset) : 0; $decimal = $decimal? intval($decimal) : 2; $float = $len>=$decimal? mb_substr($data[1], 0, $decimal, $charset) : $float.str_repeat('0', $decimal-$len); $money = $money.'.'.$float; return number_format($money, $decimal, '.', ''); }