1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- <?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' => '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';
- $clientVersion = $request['version'];
- $url = isset($upgradeInfo[$request['os']]) ? $upgradeInfo[$request['os']]['url'] : '';
- $row = version_compare($version, $clientVersion);
- if (-1 == $row) {
- $info['upgrade'] = 0;
- } elseif (0 == $row) {
- $info['upgrade'] = 0;
- } elseif (1 == $row) {
- $info['upgrade'] = 1;
- }
- $info['url'] = $url;
- } else {
- $info['upgrade'] = 0;
- $info['url'] = '';
- Log::error('未设置升级配置信息');
- }
- return $this->jsonSuccess($info);
- }
- }
|