1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <?php
- namespace App\Http\Controllers\Api;
- use App\Http\Controllers\Controller as BaseController;
- use Dingo\Api\Routing\Helpers;
- class Controller extends BaseController
- {
- use Helpers;
- /**
- * 统一接口返回json格式
- * @param $data
- * @param int $errorNo
- * @return array
- */
- public static function returnValue($data, $errorNo = 0, $err_msg = '')
- {
- $err = config('errors.ERR_CODES')[$errorNo];
- if($errorNo == 1102) $err_msg = self::errorMessage($data);
- return [
- "rst" => $data,
- "errno" => $errorNo . '',
- "err" => $err . (!empty($err_msg) ? ':'.$err_msg : ''),
- "timestamp" => intval(microtime(true)) . '',
- ];
- }
- /**
- * 统一分页响应格式
- * @param $data
- * @param $total
- * @param $pageSize
- * @param $page
- * @return array
- */
- public static function returnPageValue($data, $total, $pageSize, $page = 1, $extra = null)
- {
- $pages = ceil($total / $pageSize);
- $result = [
- 'data' => $data,
- 'pageInfo' => [
- 'total' => $total,
- 'pages' => $pages,
- 'size' => $pageSize,
- 'page' => $page
- ]
- ];
- if( $extra !== null && is_array($extra) ){
- $result = array_merge( $result, $extra );
- }
- return self::returnValue($result);
- }
- /*
- * 验证数据信息拼接
- */
- public static function errorMessage($errors)
- {
- $errorArr = json_decode(json_encode($errors),1);
- $message = null;
- if(isset($errorArr['error'])) {
- if(is_array($errorArr['error'])) {
- foreach($errorArr['error'] as $value) {
- $num = count($value);
- for($i=0;$i<$num;$i++) {
- $message .= $value[$i].' ';
- }
- }
- } else {
- $message = $errorArr['error'];
- }
- }
- return $message;
- }
- }
|