|
@@ -0,0 +1,55 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace App\Http\Controllers;
|
|
|
+
|
|
|
+use Illuminate\Http\Request;
|
|
|
+use Illuminate\Support\Facades\Log;
|
|
|
+use Illuminate\Support\Facades\Storage;
|
|
|
+use Illuminate\Support\Facades\Validator;
|
|
|
+use Illuminate\Validation\Rule;
|
|
|
+
|
|
|
+class UpgradeController extends Controller
|
|
|
+{
|
|
|
+
|
|
|
+ * 系统升级接口
|
|
|
+ * @param Request $request
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ public function index(Request $request)
|
|
|
+ {
|
|
|
+ $validator = Validator::make($request->all(), [
|
|
|
+ 'os' => ['required', Rule::in('ios', 'android')],
|
|
|
+ 'version_code' => 'required',
|
|
|
+ ]);
|
|
|
+ if ($validator->fails()) {
|
|
|
+ return jsonError($validator->errors()->first());
|
|
|
+ }
|
|
|
+ $upgradeInfo = json_decode(config('customer.app_upgrade_info'), true);
|
|
|
+ $info = [];
|
|
|
+ if ($upgradeInfo) {
|
|
|
+ $version = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['version'] : '1.0.0';
|
|
|
+ $versionCode = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['version_code'] : '1';
|
|
|
+ $content = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['content'] : '系统升级';
|
|
|
+ $title = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['title'] : '升级提示';
|
|
|
+ $clientVersion = intval($request['version_code']);
|
|
|
+ $url = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['url'] : '';
|
|
|
+ if ($clientVersion < $versionCode) {
|
|
|
+ $info['upgrade'] = 1;
|
|
|
+ } else {
|
|
|
+ $info['upgrade'] = 0;
|
|
|
+ }
|
|
|
+ $info['url'] = $url;
|
|
|
+ $info['version'] = $version;
|
|
|
+ $info['title'] = $title;
|
|
|
+ $info['content'] = $content;
|
|
|
+ } else {
|
|
|
+ $info['upgrade'] = 0;
|
|
|
+ $info['url'] = '';
|
|
|
+ $info['version'] = '';
|
|
|
+ $info['title'] = '';
|
|
|
+ $info['content'] = '';
|
|
|
+ Log::error('未设置升级配置信息');
|
|
|
+ }
|
|
|
+ return $this->jsonSuccess($info);
|
|
|
+ }
|
|
|
+}
|