addFile.html 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>添加分类</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  9. <link rel="stylesheet" href="../../static/css/font-awesome.min.css">
  10. <link rel="stylesheet" href="../../static/css/weadmin.css">
  11. <link rel="stylesheet" href="../../static/css/style.css">
  12. <!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
  13. <!--[if lt IE 9]>
  14. <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  15. <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
  16. <![endif]-->
  17. <style>
  18. html{
  19. overflow-y: auto;
  20. }
  21. .layui-form-label{
  22. width: 100px;
  23. }
  24. .layui-input-block{
  25. margin-left: 138px;
  26. }
  27. .w-e-toolbar{
  28. padding: 0 !important;
  29. }
  30. .w-e-toolbar .w-e-menu{
  31. padding: 5px 4px !important;
  32. }
  33. .fileItem{
  34. margin-bottom: 15px;
  35. }
  36. .fileItem input{
  37. width: 90%;
  38. display: inline-block;
  39. }
  40. .deleteLink{
  41. margin-left: 15px;
  42. position: relative;
  43. top: 2px;
  44. font-size: 20px;
  45. }
  46. </style>
  47. </head>
  48. <body>
  49. <div class="weadmin-body">
  50. <form class="layui-form">
  51. <div class="layui-form-item">
  52. <label class="layui-form-label">
  53. 文件名称:
  54. </label>
  55. <div class="layui-input-block steta_grouds">
  56. <input type="text" placeholder="请输入文件名称" class="layui-input textName" lay-verify="required" oninput="pureTextTitles(this.value)">
  57. </div>
  58. </div>
  59. <div class="layui-form-item">
  60. <label class="layui-form-label">文件:</label>
  61. <div class="layui-input-block">
  62. <div class="fileItems">
  63. </div>
  64. <button type="button" class="layui-btn" id="upload1">
  65. <i class="layui-icon">&#xe67c;</i>上传文件
  66. </button>
  67. </div>
  68. </div>
  69. <div class="layui-form-item" style="text-align: center;padding-top: 50px">
  70. <button class="layui-btn" lay-submit lay-filter="fileBtn">提交</button>
  71. </div>
  72. </form>
  73. <span class="text" style="display: none"></span>
  74. </div>
  75. <script src="../../lib/layui/layui.js" charset="utf-8"></script>
  76. <script>
  77. layui.use(['form','layer','jquery','upload'], function(){
  78. var form = layui.form,
  79. $ = layui.jquery,
  80. upload= layui.upload,
  81. layer = layui.layer;
  82. form.render();
  83. if (sessionStorage.getItem('QRcodeIDs') !=""){
  84. QRcodeFile(sessionStorage.getItem('QRcodeIDs'))
  85. }
  86. window.pureTextTitles = function (title) {
  87. parent.onFocus();
  88. parent.pureTextTitle(title)
  89. };
  90. var index,num = 0,fileSize,bums =0,delatefiles =[];
  91. var uploadInst = upload.render({
  92. elem: '#upload1'
  93. ,url: 'http://apptest.jieweizhineng.com/api/swagger/api/common/v1/uploadFile'
  94. ,accept: 'file'
  95. ,exts: 'zip|rar|doc|docx|xls|xlsx|ppt|pptx|pdf|dwg|vsd|wps|wpt|dot|et|ett|xlt|dps|dpt|pot|pps'
  96. ,before: function(obj){
  97. index = layer.load(2);
  98. obj.preview(function(index, file, result){
  99. });
  100. }
  101. ,done: function(res){
  102. //上传成功
  103. layer.close(index)
  104. if(res.code == 200){
  105. fileSize = parent.renderSize(res.data.size);
  106. var muns = bums++ +1;
  107. parent.onFocus();
  108. parent.uploadFile(res.data.fileName,muns);
  109. var str = `
  110. <div class="fileItem" index-data="${muns}" file-path="${res.data.fullURL}" file-size="${fileSize}">
  111. <input type="text" class="layui-input fileName" value="${res.data.fileName}" disabled>
  112. <i class="fa fa-trash-o deleteLink"></i>
  113. </div>`;
  114. $('.fileItems').append(str);
  115. return layer.msg('上传成功');
  116. }
  117. //如果上传失败
  118. layer.msg('上传失败');
  119. }
  120. ,error: function(){
  121. layer.msg('请检查网络!');
  122. }
  123. });
  124. $('body').on('click','.deleteLink',function () {
  125. var fileItemobj = {id:'',fileName:"",filePath:'',deleteFlag:'',parentId:'',title:'',fileSize:''};
  126. $(this).parent().remove();
  127. var index_data = $(this).parent().attr('index-data');
  128. parent.onFocus();
  129. parent.deleteFile(index_data);
  130. $(this).parent().attr("file-path","");
  131. $(this).parent().attr("file-size","");
  132. $(this).parent().find('.fileName').val("");
  133. if ($(this).parent().parent().attr('file-id') != "") {
  134. fileItemobj = {};
  135. fileItemobj.title = $('.textName').val();
  136. fileItemobj.parentId = sessionStorage.getItem("QRcodeIDs");
  137. fileItemobj.fileName = $(this).parent().find('.fileName').val();
  138. fileItemobj.filePath = $(this).parent().attr('file-path');
  139. fileItemobj.fileSize = $(this).parent().attr('file-size');
  140. fileItemobj.id = $(this).parent().attr('file-id');
  141. fileItemobj.deleteFlag = true;
  142. delatefiles.push(fileItemobj)
  143. }
  144. });
  145. form.on('submit(fileBtn)', function(){
  146. var fileItemArray = [] , fileItem = $('.fileItem');
  147. var fileItemobj = {id:'',fileName:"",filePath:'',deleteFlag:false,parentId:'',title:'',fileSize:''};
  148. if (delatefiles != []) {
  149. for (var j = 0; j < delatefiles.length; j++) {
  150. fileItemArray.push(delatefiles[j])
  151. }
  152. }
  153. fileItem.each(function () {
  154. fileItemobj = {};
  155. fileItemobj.title = $('.textName').val();
  156. fileItemobj.parentId = sessionStorage.getItem("QRcodeIDs");
  157. fileItemobj.fileName = $(this).find('.fileName').val();
  158. fileItemobj.filePath = $(this).attr('file-path');
  159. fileItemobj.fileSize = $(this).attr('file-size');
  160. fileItemobj.id = $(this).attr('file-id');
  161. fileItemobj.deleteFlag = false;
  162. fileItemArray.push(fileItemobj)
  163. });
  164. $.ajax({
  165. url:'http://apptest.jieweizhineng.com/api/swagger/api/page/v1/updateFile',
  166. type:'post',
  167. data:JSON.stringify(fileItemArray),
  168. contentType:'application/json;charset=utf-8',
  169. dataType:'json',
  170. success:function (res) {
  171. if (res.code === '200'){
  172. parent.onFocus();
  173. parent.pageRelationIdFun(res.data);
  174. layer.msg('文件修改成功');
  175. }else {
  176. layer.msg('文件修改失败,请检查信息');
  177. }
  178. },
  179. error:function () {
  180. layer.msg('网络错误,请检查网络');
  181. }
  182. })
  183. return false;
  184. });
  185. // 数据回显
  186. function QRcodeFile(id) {
  187. $.ajax({
  188. url: 'http://apptest.jieweizhineng.com/api/swagger/api/page/v1/getPageEdit/'+sessionStorage.getItem('QRcodeDetaileID'),
  189. type: 'get',
  190. dataType: 'json',
  191. success: function (res) {
  192. for (var i = 0; i < res.data.pageItemList.length; i++) {
  193. if (res.data.pageItemList[i].pageRelation.businessType == "FILE" && res.data.pageItemList[i].pageRelation.businessId == id) {
  194. for (var j = 0; j < res.data.pageItemList[i].fileList.length; j++) {
  195. $('.textName').val(res.data.pageItemList[i].fileList[j].title);
  196. bums = j;
  197. var str = `
  198. <div class="fileItem" index-data="${bums}" file-path="${res.data.pageItemList[i].fileList[j].filePath}" file-size="${res.data.pageItemList[i].fileList[j].fileSize}" file-id="${res.data.pageItemList[i].fileList[j].id}">
  199. <input type="text" class="layui-input fileName" value="${res.data.pageItemList[i].fileList[j].fileName}" disabled>
  200. <i class="fa fa-trash-o deleteLink"></i>
  201. </div>`;
  202. $('.fileItems').append(str);
  203. }
  204. }
  205. }
  206. },
  207. error:function () {
  208. layer.msg('请检查网络', {icon: 2});
  209. }
  210. });
  211. }
  212. });
  213. </script>
  214. </body>
  215. </html>