upload.html 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>系统配置样例</title>
  6. </head>
  7. <body class="laytp-container">
  8. <div class="layui-card">
  9. <div class="layui-card-body">
  10. <form class="layui-form" lay-filter="layui-form">
  11. <div class="table-container">
  12. </div>
  13. <div class="bottom">
  14. <div class="button-container">
  15. <button type="submit" class="laytp-btn laytp-btn-primary laytp-btn-sm" lay-submit="" lay-filter="add">
  16. <i class="layui-icon layui-icon-ok"></i>
  17. 保存配置
  18. </button>
  19. <button type="reset" class="laytp-btn laytp-btn-sm">
  20. <i class="layui-icon layui-icon-refresh"></i>
  21. 重置
  22. </button>
  23. </div>
  24. </div>
  25. </form>
  26. </div>
  27. </div>
  28. <script id="confTableHtml" type="text/html">
  29. <input type="hidden" name="group" id="group" value="{{=d.group}}"/>
  30. <table class="layui-table" style="margin: 0;" lay-skin="nob">
  31. <colgroup>
  32. <col width="15%">
  33. <col width="70%">
  34. <col width="15%">
  35. </colgroup>
  36. <tbody>
  37. <tr>
  38. <td style="text-align:right;">
  39. <span style="color: red;">*</span> 默认上传方式
  40. </td>
  41. <td>
  42. <div class="xmSelect"
  43. data-name="defaultType"
  44. data-sourceType="data"
  45. data-source='[{"name":"本地上传","value":"local"},{"name":"阿里云OSS","value":"ali-oss"},{"name":"七牛云KODO","value":"qiniu-kodo"}]'
  46. data-valueField="value"
  47. data-radio="true"
  48. data-layVerify="required"
  49. data-selected="{{# if(!d.defaultType){ d.defaultType = 'local'; } }}{{d.defaultType}}"
  50. ></div>
  51. <input type="hidden" name="form_type[defaultType]" value="xmSelect" />
  52. </td>
  53. <td>
  54. <div class="conf-des layui-form-mid layui-word-aux">
  55. <label title="所有上传组件,不定义上传方式时,使用的默认上传方式">所有上传组件,不定义上传方式时,使用的默认上传方式</label>
  56. <br/>
  57. <code title="{{=d.group}}.defaultType')">{{=d.group}}.defaultType</code>
  58. </div>
  59. </td>
  60. </tr>
  61. <tr>
  62. <td style="text-align:right;">
  63. <span style="color: red;">*</span> 最大上传文件大小
  64. </td>
  65. <td>
  66. <input autocomplete="off" type="text" name="size" id="size" value="{{=d.size}}" placeholder="请输入站点名称" class="layui-input" lay-verify="required">
  67. <!-- 这个隐藏的input用来标记当前表单元素 -->
  68. <input type="hidden" name="form_type[size]" value="input" />
  69. </td>
  70. <td>
  71. <div class="conf-des layui-form-mid layui-word-aux">
  72. <label title="配置说明">最大上传文件大小,单位自行输入KB,MB,GB</label>
  73. <br/>
  74. <code title="{{=d.group}}.size">{{=d.group}}.size 一般100MB</code>
  75. </div>
  76. </td>
  77. </tr>
  78. <tr>
  79. <td style="text-align:right;">
  80. <span style="color: red;">*</span> 允许上传的文件后缀
  81. </td>
  82. <td>
  83. <input autocomplete="off" type="text" name="mime" id="mime" value="{{=d.mime}}" placeholder="请输入站点名称" class="layui-input" lay-verify="required">
  84. <!-- 这个隐藏的input用来标记当前表单元素 -->
  85. <input type="hidden" name="form_type[mime]" value="input" />
  86. </td>
  87. <td>
  88. <div class="conf-des layui-form-mid layui-word-aux">
  89. <label title="允许上传的文件后缀,多个以英文逗号隔开">允许上传的文件后缀,多个以英文逗号隔开</label>
  90. <br/>
  91. <code title="{{=d.group}}.mime">png,jpg,gif,jpeg,doc,xls,pdf,pem,mp4</code>
  92. </div>
  93. </td>
  94. </tr>
  95. </tbody>
  96. </table>
  97. </script>
  98. <script type="application/javascript">
  99. if(localStorage.getItem("staticDomain")){
  100. document.write("<link rel='stylesheet' href='" + localStorage.getItem("staticDomain") + "/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  101. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  102. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  103. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/jquery_3.3.1.js?v="+localStorage.getItem("version")+"'><\/script>");
  104. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/jquery.tablednd.js?v="+localStorage.getItem("version")+"'><\/script>");
  105. }else{
  106. document.write("<link rel='stylesheet' href='/static/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  107. document.write("<script src='/static/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  108. document.write("<script src='/static/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  109. document.write("<script src='/static/component/jquery_3.3.1.js?v="+localStorage.getItem("version")+"'><\/script>");
  110. document.write("<script src='/static/component/jquery.tablednd.js?v="+localStorage.getItem("version")+"'><\/script>");
  111. }
  112. </script>
  113. <script>
  114. layui.use(['laytp'],function(){
  115. var group = "system.upload";
  116. // 先获取数据,渲染表单
  117. // 渲染完表单之后,设置滚动条
  118. facade.ajax({
  119. route: "/admin.conf/getGroupConf",
  120. data: {"group" : group},
  121. successAlert: false,
  122. showLoading: true
  123. }).done(function(res){
  124. if(res.code === 0){
  125. res.data.group = group;
  126. layui.laytpl($("#confTableHtml").html()).render(res.data,function(string){
  127. $(".table-container").html(string);
  128. layui.laytpForm.render();
  129. layui.form.render();
  130. var windowHeight = $(window).height();
  131. var maxHeight = parseInt(windowHeight) - 86;
  132. var minHeight = parseInt(windowHeight) - 86;
  133. // 设置table-container的最大高度和超过高度后展示滚动条
  134. $(".table-container").css("margin-bottom", '40px');
  135. $(".table-container").css("max-height", maxHeight + 'px');
  136. $(".table-container").css("min-height", minHeight + 'px');
  137. $(".table-container").css("overflow-y", "auto");
  138. $('.bottom').css("background-color", "#f6f6f6");
  139. });
  140. }
  141. });
  142. layui.form.on('submit(add)', function(data){
  143. var btnAnim = layui.button.load({elem:$(this)});
  144. try{
  145. data = facade.setEditorField(data);
  146. }catch (e) {
  147. facade.error(e);
  148. return false;
  149. }
  150. data.field.group = group;
  151. facade.ajax({
  152. route:'/admin.conf/saveGroupConf',
  153. data : data.field
  154. }).done(function(res){
  155. btnAnim.stop();
  156. }).fail(function(){
  157. btnAnim.stop();
  158. });
  159. return false;
  160. });
  161. })
  162. </script>
  163. </body>
  164. </html>