{extend name="public/base" /} {block name="body"} <div class="layui-fluid"> <div class="layui-row layui-col-space15"> <div class="layui-col-md12"> <div class="layui-card"> <div class="layui-card-header">升级服务</div> <div class="layui-card-body"> <div class="layui-form" wid100 lay-filter=""> {if ($ver_num.key == '')} <div class="layui-form-item"> <label class="layui-form-label">配置Key</label> <div class="layui-input-inline"> <input type="text" name="key" value="{$ver_num.key}" required class="layui-input" placeholder="填写申请得到在Key"> </div> <div class="layui-input-inline layui-input-company"><button style="float: left;" type="button" class="layui-btn layui-btn-sm" id="upgrade-key">保存</button></div> <div class="layui-form-mid layui-word-aux" >无Key不能升级</div> <div class="layui-form-mid layui-word-aux " ><a href="http://www.aieok.com" target="_blank">去官网申请Key</a></div> </div> {else /} <div class="layui-form-item"> <label class="layui-form-label">升级Key</label> <div class="layui-form-item layui-hide"> <input type="text" name="key" value="{$ver_num.key}" class="layui-input"> </div> <div class="layui-form-mid layui-word-aux " ><span style="color:red">{$ver_num.key}</span></div> <div class="layui-input-inline layui-input-company"><a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit" id-data="{:url('upgrade/keyedit')}" ><i class="layui-icon layui-icon-edit"></i>修改?</a></div> </div> <div class="layui-form-item"> <label class="layui-form-label">在线升级</label> <div class="layui-input-inline layui-input-company" id="ver_nums" >当前版本:Taole v_{$ver_num.sys_version_num}</div> <div class="layui-upload"> <button type="button" class="layui-btn layui-btn-sm" data-url="{$ver_num.upcheck_url}" id="upload-check">检查更新</button> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">手动更新</label> <div class="layui-upload"> <button type="button" class="layui-btn layui-btn-sm" id="select-file">选择文件</button> <button type="button" class="layui-btn layui-btn-sm" id="upgrade-sys-button">开始升级</button> </div> </div> {/if} <div style="margin-top: 10px;"> <div class="layui-form-item"> <div class="layui-card-header">升级说明</div> <div style="padding-left: 20px;">1.升级服务需要去官网申请key配置文件</div> <div style="padding-left: 20px;">2.多个版本需要升级时,会自行判断依次序升级</div> <div style="padding-left: 20px;">3.升级过程尽管会自动备份文件,但为了安全起见可以自行备份文件</div> <div style="padding-left: 20px;">4.在某些特殊场合,可能需要手动升级</div> </div> </div> </div> </div> </div> </div> </div> </div> {/block} {block name="js"} <script> layui.config({ base: '/static/admin/' //静态资源所在路径 }).extend({ index: 'lib/index' //主入口模块 }).use(['index', 'set']); </script> <script> layui.use(['layer','form','upload'], function(){ var $ = layui.jquery ,layer = layui.layer ,form = layui.form ,upload = layui.upload; //手动更新,选完文件后不自动上传 upload.render({ elem: '#select-file' ,url: '/admin/upgrade/uploadzip' ,accept: 'file' ,field: 'file' ,auto: false ,exts: 'zip|rar|7z' ,size: 10000 //,multiple: true ,bindAction: '#upgrade-sys-button' ,before: function(obj){ //obj参数包含的信息,跟 choose回调完全一致,可参见上文。 layer.load(); //上传loading } ,done: function(res){ layer.closeAll('loading'); //关闭loading if(res.code == 1){ layer.msg(res.msg,{ icon:6, tiye:2000 },function(){ location.reload(); }); } else { layer.open({ title:"上传失败", content:res.msg, icon:5, anim:6 }); } } }); //检测更新 $('#upload-check').on('click',function(){ var url = $(this).attr('data-url'), loading = layer.load(2, { shade: [0.2, '#000'], time: 2000, }); $.ajax({ type:"post", url:"{:url('admin/upgrade/check')}", data:{"url":url}, daType:"json", success:function (data){ if (data.code == 1) { layer.close(loading); $('div#ver_nums').after('<div class="layui-input-inline layui-input-company">发现<span style="color:red">'+data.upnum+'</span>个新版本:<span style="color:red">可更新至v'+data.version+'</span></div> <button class="layui-btn layui-btn-sm" lay-submit lay-filter="update_system" data-url="{$ver_num.upgrade_url}" id="update_system">确认升级</button>'); $('button#upload-check').hide(); layer.msg(data.msg,{ icon:6, time:2000 }); } else { layer.open({ tiele:'添加失败', content:data.msg, icon:5, anim:6 }); } } }); return false; }); //确定升级操作 $(document).on('click','#update_system',function(){ var url = $(this).attr('data-url'), key = $('input[name=key]').attr("value"), loading = layer.load(2, { shade: [0.2, '#000'], }); $.ajax({ type:"post", url:"{:url('admin/upgrade/upload')}", data:{"url":url,"key":key}, daType:"json", success:function (data){ if (data.code == 1) { layer.close(loading); layer.msg(data.msg,{ icon:6, time:2000 },function(){ location.reload(); }); } else { layer.close(loading); layer.open({ tiele:'升级失败', content:data.msg, icon:5, anim:6 }); } } }); return false; }); //设置key $('#upgrade-key').on('click',function(){ var key = $('input[name=key]').val(); console.log(key); $.ajax({ type:"post", url:"{:url('admin/upgrade/key')}", data:{"key":key}, daType:"json", success:function (data){ if (data.code == 1) { layer.msg(data.msg,{ icon:6, time:2000 },function(){ location.reload(); }); } else { layer.open({ tiele:'保存失败', content:data.msg, icon:5, anim:6 }); } } }); return false; }); //修改key $('a[lay-event=edit]').on('click', function(){ layer.open({ type: 2, title: '修改key', content: 'keyedit.html', maxmin: true, area : ['420px' , '380px'], btn: ['确定', '取消'], yes: function(index, layero){ var iframeWindow = window['layui-layer-iframe'+ index] ,submitID = 'LAY-keyedit-submit' ,submit = layero.find('iframe').contents().find('#'+ submitID); //监听提交 iframeWindow.layui.form.on('submit('+ submitID +')', function(data){ var field = data.field; //获取提交的字段 //console.log(field); //提交 Ajax 成功后,静态更新表格中的数据 $.ajax({ type:"post", url:"{:url('admin/upgrade/keyedit')}", data:{"key":field.key,"upcheck_url":field.upcheck_url,"upgrade_url":field.upgrade_url}, daType:"json", success:function (data){ if (data.code == 1) { layer.msg(data.msg,{ icon:6, time:2000 }, function(){ location.reload(); }); } else { layer.open({ tiele:'修改失败', content:data.msg, icon:5, anim:6 }); } } }); layer.close(index); }); submit.trigger('click'); } }); return false; }); }); </script> {/block}