ossupload.js 54 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983
  1. stsAccessKeyId = ""
  2. stsAccessKeySecret = ""
  3. stsToken = ""
  4. var checkpoint_temp;
  5. var client = null;
  6. var requestUrl;
  7. var returnUrl;
  8. var str;
  9. var nowTime = new Date();
  10. nowTime.setTime(nowTime.getTime());
  11. var month = nowTime.getMonth()+1
  12. var day = nowTime.getDate();
  13. if(day<10){
  14. day = "0" + day;
  15. }
  16. var today = nowTime.getFullYear()+"/" + month + "/" + day + "/";
  17. /*function multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  18. console.log("-----------------------start");
  19. console.log("-----------------------"+realPath);
  20. requestUrl = realPath+"/a/previewController/getAccess";
  21. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  22. if (err) {
  23. return alert(err);
  24. }
  25. try {
  26. result = JSON.parse(response);
  27. } catch (e) {
  28. errmsg = 'parse sts response info error: ' + e.message;
  29. return alert(errmsg);
  30. }
  31. console.log("---------result"+result);
  32. client = new OSS.Wrapper({
  33. accessKeyId: result.AccessKeyId,
  34. accessKeySecret: result.AccessKeySecret,
  35. stsToken: result.SecurityToken,
  36. bucket: result.Bucket,
  37. endpoint: result.Endpoint,
  38. timeout:'30000'
  39. });
  40. multitest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://gangwan-app.oss-cn-hangzhou.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  41. })
  42. };*/
  43. function ftlUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  44. file.name.replace(" ","")
  45. file.name.replace(/—/g,"")
  46. var fileName = file.name;
  47. // 将单引号‘’都转换成',将双引号“”都转换成"
  48. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  49. // 将中括号【】转换成[],将大括号{}转换成{}
  50. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  51. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  52. // 将逗号,转换成,,将:转换成:
  53. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  54. //将中文——转换为英文-
  55. fileName = fileName.replace(/—/g,"-")
  56. fileName = fileName.replace("……","")
  57. fileName = fileName.replace("±","")
  58. var dfl=new File([file],fileName,{type:file.type});
  59. file = dfl
  60. /*console.log(file.name.indexOf("—")!=-1);
  61. console.log("-----------------------start");*/
  62. ftlMultitest(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt);
  63. };
  64. function multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  65. file.name.replace(" ","")
  66. file.name.replace(/—/g,"")
  67. var fileName = file.name;
  68. // 将单引号‘’都转换成',将双引号“”都转换成"
  69. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  70. // 将中括号【】转换成[],将大括号{}转换成{}
  71. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  72. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  73. // 将逗号,转换成,,将:转换成:
  74. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  75. //将中文——转换为英文-
  76. fileName = fileName.replace(/—/g,"-")
  77. fileName = fileName.replace("……","")
  78. fileName = fileName.replace("±","")
  79. var dfl=new File([file],fileName,{type:file.type});
  80. file = dfl
  81. /*console.log(file.name.indexOf("—")!=-1);
  82. console.log("-----------------------start");*/
  83. if(cpt == 1)
  84. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,"",prefix);
  85. else
  86. multitest(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt);
  87. };
  88. function multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  89. console.log("-----------------------start");
  90. console.log("-----------------------"+realPath);
  91. file.name.replace(" ","")
  92. file.name.replace(/—/g,"")
  93. var fileName = file.name;
  94. // 将单引号‘’都转换成',将双引号“”都转换成"
  95. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  96. // 将中括号【】转换成[],将大括号{}转换成{}
  97. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  98. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  99. // 将逗号,转换成,,将:转换成:
  100. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  101. //将中文——转换为英文-
  102. fileName = fileName.replace(/—/g,"-")
  103. fileName = fileName.replace("……","")
  104. fileName = fileName.replace("±","")
  105. var dfl=new File([file],fileName,{type:file.type});
  106. file = dfl
  107. requestUrl = realPath+"/previewController/getAccess";
  108. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  109. if (err) {
  110. console.log(err);
  111. $.ajax({
  112. type:"post",
  113. url:realPath+"/previewController/saveJSError",
  114. data:{object:err.toString()},
  115. async: false,
  116. success:function(data){
  117. }
  118. });
  119. return alert(err);
  120. }
  121. try {
  122. result = JSON.parse(response);
  123. } catch (e) {
  124. errmsg = 'parse sts response info error: ' + e.message;
  125. return alert(errmsg);
  126. }
  127. console.log("---------result"+result);
  128. client = new OSS.Wrapper({
  129. accessKeyId: result.AccessKeyId,
  130. accessKeySecret: result.AccessKeySecret,
  131. stsToken: result.SecurityToken,
  132. bucket: result.Bucket,
  133. endpoint: result.Endpoint,
  134. timeout:'30000'
  135. });
  136. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  137. if(cpt == 1)
  138. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  139. else
  140. multitest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  141. })
  142. };
  143. function fBmultipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  144. console.log("-----------------------start");
  145. console.log("-----------------------"+realPath);
  146. file.name.replace(" ","")
  147. file.name.replace(/—/g,"")
  148. var fileName = file.name;
  149. // 将单引号‘’都转换成',将双引号“”都转换成"
  150. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  151. // 将中括号【】转换成[],将大括号{}转换成{}
  152. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  153. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  154. // 将逗号,转换成,,将:转换成:
  155. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  156. //将中文——转换为英文-
  157. fileName = fileName.replace(/—/g,"-")
  158. fileName = fileName.replace("……","")
  159. fileName = fileName.replace("±","")
  160. var dfl=new File([file],fileName,{type:file.type});
  161. file = dfl
  162. requestUrl = realPath+"/previewController/getAccess";
  163. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  164. if (err) {
  165. console.log(err);
  166. $.ajax({
  167. type:"post",
  168. url:realPath+"/previewController/saveJSError",
  169. data:{object:err.toString()},
  170. async: false,
  171. success:function(data){
  172. }
  173. });
  174. return alert(err);
  175. }
  176. try {
  177. result = JSON.parse(response);
  178. } catch (e) {
  179. errmsg = 'parse sts response info error: ' + e.message;
  180. return alert(errmsg);
  181. }
  182. console.log("---------result"+result);
  183. client = new OSS.Wrapper({
  184. accessKeyId: result.AccessKeyId,
  185. accessKeySecret: result.AccessKeySecret,
  186. stsToken: result.SecurityToken,
  187. bucket: result.Bucket,
  188. endpoint: result.Endpoint,
  189. timeout:'30000'
  190. });
  191. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  192. if(cpt == 1)
  193. fBmultitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  194. else
  195. multitest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  196. })
  197. };
  198. function ftlMultitest (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  199. var formdata = new FormData();
  200. formdata.append("storeAs",storeAs);
  201. formdata.append("file",file);
  202. var names = storeAs.split("/");
  203. var name = names[names.length-1];
  204. var fileLocation = "";
  205. var lookUrl = "";
  206. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  207. $.ajax({
  208. type:"get",
  209. url:realPath+"/bos/getFileStorageLocation",
  210. async: false,
  211. success:function(data){
  212. fileLocation = data.fileLocation;
  213. }
  214. });
  215. $.ajax({
  216. type:'post',
  217. url:realPath+"/bos/uploadFtl",
  218. data:formdata,
  219. contentType: false,
  220. processData: false,
  221. success:function (data1) {
  222. if(data1.code==='1'){
  223. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  224. $.ajax({
  225. type:'post',
  226. url:returnUrl,
  227. data:{
  228. "attachmentName":data1.name,
  229. "attachmentId":attachmentId,
  230. "attachmentFlag":attachmentFlag,
  231. "url":data1.url,
  232. "divIdType":divId
  233. },
  234. success:function(data){
  235. var lowerType = data.type.toLowerCase();
  236. //console.log('url : ' + data.url);
  237. if(data.status=="Success"){
  238. parent.layer.msg("上传成功!",{icon:1});
  239. var lenght =$(".trIdAdds").length;
  240. if (size != 0){
  241. lenght += size;
  242. }
  243. var addFile = "addFile"+divId;
  244. var str = '<tr class="trIdAdds">'+
  245. '<td class="text-center">' ;
  246. if(2 == fileLocation){
  247. $.ajax({
  248. type:"post",
  249. async:false,
  250. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  251. data:{"file":data.url,},
  252. success:function(result){
  253. lookUrl = result.lookUrl;
  254. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  255. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  256. }else if(isContains("pdf",data.lowerType)){
  257. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  258. }else {
  259. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  260. }
  261. }
  262. });
  263. }else{
  264. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  265. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  266. }else if(isContains("pdf",lowerType)){
  267. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  268. }else {
  269. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  270. }
  271. }
  272. str = str +'</td>'+
  273. '<td >'+data.createByName+'</td>'+
  274. '<td >'+data.createDate+
  275. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  276. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  277. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.url+'"/>'+
  278. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.name+'"/>'+
  279. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  280. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  281. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  282. '<input name="workAttachments['+lenght+'].divIdType" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.divIdType+'"/>'+
  283. '</td>'+
  284. '<td class="op-td">'+
  285. '<div class="op-btn-box">' ;
  286. if(2 == fileLocation){
  287. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  288. }else{
  289. str = str +'<a href="javascript:location.href=\''+realPath+'/a/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  290. }
  291. str = str +'<a href="javascript:void(0)" onclick="deleteFileFromAliyun(this,\''+realPath+'/sys/workattachment/deleteFileFromAliyun?url='+data.url+'&id='+data.id+'&type=2\',\''+addFile+'\',\''+divId+'\')" class="op-btn op-btn-delete" ><i class="fa fa-trash"></i>&nbsp;删除</a>'+
  292. '</div>' +
  293. '</td>'+
  294. '</tr>';
  295. /*console.log("file:"+divId);
  296. console.log("str="+str);*/
  297. $("#file"+divId).append(str);
  298. var p = Math.floor(1*100);
  299. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  300. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  301. $("#baifenbi"+divId).html(p+"%");
  302. $("#fileName"+divId).html("上传进度:");
  303. }else {
  304. parent.layer.msg("上传失败!",{icon:2});
  305. }
  306. }
  307. })
  308. }else {
  309. parent.layer.msg("上传失败!",{icon:2});
  310. }
  311. }
  312. })
  313. };
  314. function fBmultitestFlag (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt,idx,prefix,currentUser) {
  315. var formdata = new FormData();
  316. formdata.append("storeAs",storeAs);
  317. formdata.append("file",file);
  318. var names = storeAs.split("/");
  319. var name = names[names.length-1];
  320. var fileLocation = "";
  321. var lookUrl = "";
  322. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  323. $.ajax({
  324. type:"get",
  325. url:realPath+"/bos/getFileStorageLocation",
  326. async: false,
  327. success:function(data){
  328. fileLocation = data.fileLocation;
  329. }
  330. });
  331. $.ajax({
  332. type:'post',
  333. url:realPath+"/bos/upload",
  334. data:formdata,
  335. contentType: false,
  336. processData: false,
  337. success:function (data1) {
  338. if(data1.code==='1'){
  339. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  340. $.ajax({
  341. type:'post',
  342. url:returnUrl,
  343. data:{
  344. "attachmentName":file['name'],
  345. "attachmentId":attachmentId,
  346. "attachmentFlag":attachmentFlag,
  347. "url":data1.url,
  348. "divIdType":divId
  349. },
  350. success:function(data){
  351. var lowerType = data.type.toLowerCase();
  352. //console.log('url : ' + data.url);
  353. if(data.status=="Success"){
  354. parent.layer.msg("上传成功!",{icon:1});
  355. var str = '' ;
  356. var addFile = prefix+divId;
  357. if(2 == fileLocation){
  358. $.ajax({
  359. type:"post",
  360. async:false,
  361. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  362. data:{"file":data.url,},
  363. success:function(result){
  364. lookUrl = result.lookUrl;
  365. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  366. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  367. }else if(isContains("pdf",lowerType)){
  368. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  369. }else {
  370. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  371. }
  372. }
  373. });
  374. }else{
  375. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  376. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  377. }else if(isContains("pdf",lowerType)){
  378. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  379. }else {
  380. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  381. }
  382. }
  383. $(prefix).parent().parent().find("td").eq(2).html(str)
  384. $(prefix).parent().parent().find("td").eq(0).find("input").eq(1).val(data.id)
  385. $(prefix).parent().parent().find("td").eq(0).find("input").eq(2).val(data.url)
  386. var d = new Date();
  387. var dateTime=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
  388. var result = '<a href="javascript:location.href=\''+realPath+'/a/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  389. var delResult =
  390. '<a href="javascript:void(0)" onclick="accordingBtn(this,\''+prefix+'\')" class=\"op-btn op-btn-edit" ><i class="fa fa-edit"></i>&nbsp;修改</a>';
  391. // $(prefix).parent().parent().find("td").eq(4).append(result)
  392. }else {
  393. parent.layer.msg("上传失败!",{icon:2});
  394. }
  395. }
  396. })
  397. }else {
  398. parent.layer.msg("上传失败!",{icon:2});
  399. }
  400. }
  401. })
  402. };
  403. function multitestFlag (ossClient,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt,idx,prefix,currentUser) {
  404. var names = storeAs.split("/");
  405. var name = names[names.length-1];
  406. ossClient.multipartUpload(storeAs, file,{
  407. partSize: 1 * 1024 * 1024,
  408. parallel: 5,
  409. progress: function* (percent, cpt) {
  410. var p = Math.floor(percent*100);
  411. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  412. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  413. $("#baifenbi"+divId).html(p+"%");
  414. $("#fileName"+divId).html(file.name);
  415. checkpoint_temp = cpt;
  416. }
  417. }).then(function (result) {
  418. var fileLocation = "";
  419. var lookUrl = "";
  420. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  421. $.ajax({
  422. type:"get",
  423. url:realPath+"/bos/getFileStorageLocation",
  424. async: false,
  425. success:function(data){
  426. fileLocation = data.fileLocation;
  427. }
  428. });
  429. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  430. $.ajax({
  431. type:'post',
  432. url:returnUrl,
  433. data:{
  434. "attachmentName":file['name'],
  435. "attachmentId":attachmentId,
  436. "attachmentFlag":attachmentFlag,
  437. "url":"/"+storeAs
  438. },
  439. success:function(data){
  440. var lowerType = data.type.toLowerCase();
  441. //console.log('url : ' + data.url);
  442. if(data.status=="Success"){
  443. parent.layer.msg("上传成功!",{icon:1});
  444. var str = '' ;
  445. var addFile = prefix+divId;
  446. if(2 == fileLocation){
  447. $.ajax({
  448. type:"post",
  449. async:false,
  450. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  451. data:{"file":data.url,},
  452. success:function(result){
  453. lookUrl = result.lookUrl;
  454. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  455. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  456. }else if(isContains("pdf",lowerType)){
  457. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  458. }else {
  459. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  460. }
  461. }
  462. });
  463. }else{
  464. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  465. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  466. }else if(isContains("pdf",lowerType)){
  467. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  468. }else {
  469. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  470. }
  471. }
  472. $(prefix+"_fileTypeDiv").empty();
  473. $(prefix+"_fileTypeDiv").append(str);
  474. $(prefix+"_uploadUserName").html(currentUser);
  475. var d = new Date();
  476. var dateTime=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
  477. $(prefix+"_uploadDate").html(dateTime);
  478. $(prefix+"_fileName").val(data.attachmentName);
  479. $(prefix+"_fileType").val(data.type);
  480. $(prefix+"_fileUrl").val(data.url);
  481. $(prefix+"_fileAttachmentFlag").val(data.attachmentFlag);
  482. $(prefix+"_fileAttachmentId").val(data.attachmentId);
  483. var result = '<a style="margin-top: 10px;" href="javascript:location.href=\''+realPath+'/a/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  484. var delResult =
  485. '<a href="javascript:void(0)" onclick="accordingBtn(this,\''+prefix+'\')" class=\"op-btn op-btn-edit" ><i class="fa fa-edit"></i>&nbsp;修改</a>';
  486. $(prefix+"_operation").empty();
  487. $(prefix+"_operation").append(delResult);
  488. }else {
  489. parent.layer.msg("上传失败!",{icon:2});
  490. }
  491. }
  492. })
  493. }).catch(function (err) {
  494. console.log("err------ err:");
  495. console.log(err);
  496. });
  497. };
  498. function multitest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  499. var names = storeAs.split("/");
  500. var name = names[names.length-1];
  501. ossClient.multipartUpload(storeAs, file,{
  502. partSize: 1 * 1024 * 1024,
  503. parallel: 5,
  504. progress: function* (percent, cpt) {
  505. var p = Math.floor(percent*100);
  506. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  507. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  508. $("#baifenbi"+divId).html(p+"%");
  509. $("#fileName"+divId).html(file.name);
  510. checkpoint_temp = cpt;
  511. }
  512. }).then(function (result) {
  513. var fileLocation = "";
  514. var lookUrl = "";
  515. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  516. $.ajax({
  517. type:"get",
  518. url:realPath+"/bos/getFileStorageLocation",
  519. async: false,
  520. success:function(data){
  521. fileLocation = data.fileLocation;
  522. }
  523. });
  524. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  525. $.ajax({
  526. type:'post',
  527. url:returnUrl,
  528. data:{
  529. "attachmentName":file['name'],
  530. "attachmentId":attachmentId,
  531. "attachmentFlag":attachmentFlag,
  532. "url":"/"+storeAs
  533. },
  534. success:function(data){
  535. var lowerType = data.type.toLowerCase();
  536. if(data.status=="Success"){
  537. parent.layer.msg("上传成功!",{icon:1});
  538. var lenght =$(".trIdAdds").length;
  539. if (size != 0){
  540. lenght += size;
  541. }
  542. var addFile = "addFile"+divId;
  543. var str = '<tr class="trIdAdds">'+
  544. '<td class="text-center">' ;
  545. if(2 == fileLocation){
  546. $.ajax({
  547. type:"post",
  548. async:false,
  549. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  550. data:{"file":data.url,},
  551. success:function(result){
  552. lookUrl = result.lookUrl;
  553. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  554. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  555. }else if(isContains("pdf",lowerType)){
  556. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  557. }else {
  558. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  559. }
  560. }
  561. });
  562. }else{
  563. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  564. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+realPath+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  565. }else if(isContains("pdf",lowerType)){
  566. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  567. }else {
  568. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  569. }
  570. }
  571. str = str +'</td>'+
  572. '<td >'+data.createByName+'</td>'+
  573. '<td >'+data.createDate+
  574. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  575. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  576. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  577. '<input name="workAttachments['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  578. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  579. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  580. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  581. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  582. '</td>'+
  583. '<td class="op-td">'+
  584. '<div class="op-btn-box">';
  585. if(2 == fileLocation){
  586. if(isContains("pdf",lowerType)){
  587. str = str +'<a href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  588. }else{
  589. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  590. }
  591. }else{
  592. str = str +'<a href="javascript:location.href=\''+realPath+'/a/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  593. }
  594. str = str +'<a href="javascript:void(0)" onclick="deleteFileFromAliyun(this,\''+realPath+'/a/sys/workattachment/deleteFileFromAliyun?url='+encodeURIComponent(data.url)+'&id='+data.id+'&type=2\',\''+addFile+'\',\''+divId+'\')" class="op-btn op-btn-delete" ><i class="fa fa-trash"></i>&nbsp;删除</a>'+
  595. /*'<a href="javascript:void(0)" onclick="ossCollectingAccessory(this,\''+realPath+'/projectAccessory/projectAccessory/ossCollectAccessory?url='+data.url+'&fileName='+data.attachmentName+'\',\''+addFile+'\',\''+divId+'\')" class="op-btn op-btn-delete" ><i class="fa fa-trash"></i>&nbsp;收藏</a>'+*/
  596. '</div>' +
  597. '</td>'+
  598. '</tr>';
  599. $("#file"+divId).append(str);
  600. }else {
  601. parent.layer.msg("上传失败!",{icon:2});
  602. }
  603. }
  604. })
  605. }).catch(function (err) {
  606. console.log("err------ err:");
  607. console.log(err);
  608. });
  609. };
  610. /*
  611. function multitest (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  612. var formdata = new FormData();
  613. formdata.append("storeAs",storeAs);
  614. formdata.append("file",file);
  615. var names = storeAs.split("/");
  616. var name = names[names.length-1];
  617. var fileLocation = "";
  618. var lookUrl = "";
  619. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  620. $.ajax({
  621. type:"get",
  622. url:realPath+"/bos/getFileStorageLocation",
  623. async: false,
  624. success:function(data){
  625. fileLocation = data.fileLocation;
  626. }
  627. });
  628. $.ajax({
  629. type:'post',
  630. url:realPath+"/bos/upload",
  631. data:formdata,
  632. contentType: false,
  633. processData: false,
  634. success:function (data1) {
  635. if(data1.code==='1'){
  636. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  637. $.ajax({
  638. type:'post',
  639. url:returnUrl,
  640. async:false,
  641. data:{
  642. "attachmentName":file['name'],
  643. "attachmentId":attachmentId,
  644. "attachmentFlag":attachmentFlag,
  645. "url":data1.url,
  646. "divIdType":divId
  647. },
  648. success:function(data){
  649. var lowerType = data.type.toLowerCase();
  650. // console.log('ajax requst : ' + data.status);
  651. //console.log('url : ' + data.url);
  652. if(data.status=="Success"){
  653. parent.layer.msg("上传成功!",{icon:1});
  654. var lenght =$(".trIdAdds").length;
  655. if (size != 0){
  656. lenght += size;
  657. }
  658. var addFile = "addFile"+divId;
  659. var str = '<tr class="trIdAdds">'+
  660. '<td class="text-center">' ;
  661. if(2 == fileLocation){
  662. $.ajax({
  663. type:"post",
  664. async:false,
  665. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  666. data:{"file":data.url,},
  667. success:function(result){
  668. lookUrl = result.lookUrl;
  669. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  670. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  671. }else if(isContains("pdf",lowerType)){
  672. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  673. }else {
  674. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  675. }
  676. }
  677. });
  678. }else{
  679. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  680. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  681. }else if(isContains("pdf",lowerType)){
  682. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  683. }else {
  684. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  685. }
  686. }
  687. str = str +'</td>'+
  688. '<td >'+data.createByName+'</td>'+
  689. '<td >'+data.createDate+
  690. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  691. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  692. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.url+'"/>'+
  693. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  694. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  695. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  696. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  697. '<input name="workAttachments['+lenght+'].divIdType" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.divIdType+'"/>'+
  698. '</td>'+
  699. '<td class="op-td">'+
  700. '<div class="op-btn-box">' +
  701. '<a href="javascript:location.href=\''+realPath+'/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>'+
  702. //'<a href="'+data1.url+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>'+
  703. '<a href="javascript:void(0)" onclick="deleteFileFromAliyun(this,\''+realPath+'/sys/workattachment/deleteFileFromAliyun?url='+data.url+'&id='+data.id+'&type=2\',\''+addFile+'\',\''+divId+'\')" class="op-btn op-btn-delete" ><i class="fa fa-trash"></i>&nbsp;删除</a>'+
  704. '</div>' +
  705. '</td>'+
  706. '</tr>';
  707. /!*console.log("file:"+divId);
  708. console.log("str="+str);*!/
  709. $("#file"+divId).append(str);
  710. $("#flagFile").val(true);
  711. var p = Math.floor(1*100);
  712. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  713. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  714. $("#baifenbi"+divId).html(p+"%");
  715. $("#fileName"+divId).html("上传进度:");
  716. }else {
  717. parent.layer.msg("上传失败!",{icon:2});
  718. }
  719. }
  720. })
  721. }else {
  722. parent.layer.msg("上传失败!",{icon:2});
  723. }
  724. }
  725. })
  726. };*/
  727. /*
  728. function multitest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  729. var names = storeAs.split("/");
  730. var name = names[names.length-1];
  731. ossClient.multipartUpload(storeAs, file,{
  732. partSize: 1 * 1024 * 1024,
  733. parallel: 5,
  734. progress: function* (percent, cpt) {
  735. console.log(cpt);
  736. console.log('Progress: ' + percent);
  737. var p = Math.floor(percent*100);
  738. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  739. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  740. $("#baifenbi"+divId).html(p+"%");
  741. $("#fileName"+divId).html(name);
  742. checkpoint_temp = cpt;
  743. }
  744. }).then(function (result) {
  745. console.log("uploadPath:"+uploadPath);
  746. console.log("rusult:"+result);
  747. console.log("end-------result:");
  748. returnUrl = realPath+"/a/sys/workattachment/saveAttachment";
  749. $.ajax({
  750. type:'post',
  751. url:returnUrl,
  752. data:{
  753. "attachmentName":file['name'],
  754. "attachmentId":attachmentId,
  755. "attachmentFlag":attachmentFlag,
  756. "url":uploadPath
  757. },
  758. success:function(data){
  759. console.log('ajax requst : ' + data.status);
  760. if(data.status=="Success"){
  761. parent.layer.msg("上传成功!",{icon:1});
  762. var lenght =$(".trIdAdds").length;
  763. if (size != 0){
  764. lenght += size;
  765. }
  766. var addFile = "addFile"+divId;
  767. var str = '<tr class="trIdAdds">'+
  768. '<td class="text-center">' ;
  769. if (isContains("jpg,png,gif,bmp,jpeg",data.type)){
  770. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+realPath+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  771. }else if(isContains("pdf",data.type)){
  772. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  773. }else {
  774. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  775. }
  776. str = str +'</td>'+
  777. '<td >'+data.createByName+'</td>'+
  778. '<td >'+data.createDate+
  779. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  780. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  781. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  782. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  783. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  784. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  785. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  786. '</td>'+
  787. '<td class="op-td">'+
  788. '<div class="op-btn-box">' +
  789. '<a href="javascript:location.href=\''+realPath+'/a/workfullmanage/workFullManage/downLoadAttach?file=\'+encodeURIComponent(\''+data.url+'\');" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>'+
  790. '<a href="javascript:void(0)" onclick="deleteFileFromAliyun(this,\''+realPath+'/a/sys/workattachment/deleteFileFromAliyun?url='+encodeURIComponent(data.url)+'&id='+data.id+'&type=2\',\''+addFile+'\',\''+divId+'\')" class="op-btn op-btn-delete" ><i class="fa fa-trash"></i>&nbsp;删除</a>'+
  791. '</div>' +
  792. '</td>'+
  793. '</tr>';
  794. console.log("file:"+divId);
  795. console.log("str="+str);
  796. $("#file"+divId).append(str);
  797. // $("img").not(".upload_ico").each(function () {
  798. // var num = 1 ;
  799. // $(this).live("click",function () {
  800. // var flag = num%2;
  801. // if(flag == 1){
  802. // $(this).css("width","90%");
  803. // $(this).css("height","90%");
  804. // num++;
  805. // }else if(flag ==0){
  806. // $(this).css("width","50px");
  807. // $(this).css("height","50px");
  808. // num++;
  809. // }
  810. // })
  811. // });
  812. }else {
  813. parent.layer.msg("上传失败!",{icon:2});
  814. }
  815. }
  816. })
  817. }).catch(function (err) {
  818. console.log("err------ err:");
  819. console.log(err);
  820. multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath, size,checkpoint_temp);
  821. });
  822. };*/
  823. function isContains(str, substr) {
  824. return str.indexOf(substr) >= 0;
  825. }
  826. function deleteFileFromAliyun(obj,deleteUrl,addFile,divId){
  827. /*console.log("---------------------------------:");
  828. console.log(divId);
  829. console.log("---------------------------------");*/
  830. if (divId==null || divId== undefined || divId == ''){
  831. divId = "_attachment";
  832. }
  833. var fileDiv = divId.substr(1,divId.length)+"_file";
  834. /*console.log("---------------------------------:");
  835. console.log(fileDiv);
  836. console.log("---------------------------------");*/
  837. $("#"+fileDiv).val("");
  838. $.ajax({
  839. type:"post",
  840. url:deleteUrl,
  841. success:function(data){
  842. if(data.str){
  843. parent.layer.msg('删除成功',{icon:1});
  844. $(obj).parent().parent().parent().remove();
  845. $("#"+addFile).hide();
  846. }else {
  847. parent.layer.msg('删除失败',{icon:2});
  848. }
  849. }
  850. });
  851. }
  852. function fileCollectAccessory(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  853. file.name.replace(" ","")
  854. file.name.replace(/—/g,"")
  855. var fileName = file.name;
  856. // 将单引号‘’都转换成',将双引号“”都转换成"
  857. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  858. // 将中括号【】转换成[],将大括号{}转换成{}
  859. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  860. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  861. // 将逗号,转换成,,将:转换成:
  862. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  863. //将中文——转换为英文-
  864. fileName = fileName.replace(/—/g,"-")
  865. fileName = fileName.replace("……","")
  866. fileName = fileName.replace("±","")
  867. var dfl=new File([file],fileName,{type:file.type});
  868. file = dfl
  869. requestUrl = realPath+"/previewController/getAccess";
  870. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  871. if (err) {
  872. console.log(err);
  873. $.ajax({
  874. type: "post",
  875. url: realPath + "/previewController/saveJSError",
  876. data: {object: err.toString()},
  877. async: false,
  878. success: function (data) {
  879. }
  880. });
  881. return alert(err);
  882. }
  883. try {
  884. result = JSON.parse(response);
  885. } catch (e) {
  886. errmsg = 'parse sts response info error: ' + e.message;
  887. return alert(errmsg);
  888. }
  889. console.log("---------result" + result);
  890. client = new OSS.Wrapper({
  891. accessKeyId: result.AccessKeyId,
  892. accessKeySecret: result.AccessKeySecret,
  893. stsToken: result.SecurityToken,
  894. bucket: result.Bucket,
  895. endpoint: result.Endpoint,
  896. timeout: '30000'
  897. });
  898. storeAs = "attachment-file/" + storeAs + "/" + today + new Date().getTime() + file.name;
  899. collectAccessory(client, storeAs, file, attachmentId, attachmentFlag, uploadPath, divId, size, cpt);
  900. })
  901. };
  902. function collectAccessory (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  903. var names = storeAs.split("/");
  904. var name = names[names.length-1];
  905. ossClient.multipartUpload(storeAs, file,{
  906. partSize: 1 * 1024 * 1024,
  907. parallel: 5,
  908. progress: function* (percent, cpt) {
  909. var p = Math.floor(percent*100);
  910. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  911. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  912. $("#baifenbi"+divId).html(p+"%");
  913. checkpoint_temp = cpt;
  914. }
  915. }).then(function (result) {
  916. var fileLocation = "";
  917. var lookUrl = "";
  918. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  919. $.ajax({
  920. type:"get",
  921. url:realPath+"/bos/getFileStorageLocation",
  922. async: false,
  923. success:function(data){
  924. fileLocation = data.fileLocation;
  925. }
  926. });
  927. returnUrl = realPath+"/collectAccessory/collectAccessory/saveCollectAccessory";
  928. $.ajax({
  929. type:'post',
  930. url:returnUrl,
  931. data:{
  932. "fileName":file['name'],
  933. "url":"/"+storeAs,
  934. "type":"1"
  935. },
  936. success:function(data){
  937. if(data.success){
  938. parent.layer.msg("上传成功!",{icon:1});
  939. location.reload();
  940. }else {
  941. parent.layer.msg("上传失败!",{icon:2});
  942. }
  943. }
  944. })
  945. }).catch(function (err) {
  946. console.log("err------ err:");
  947. console.log(err);
  948. });
  949. };