ossupload.js 125 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134
  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(/……/g,"")
  57. fileName = fileName.replace(/±/g,"")
  58. fileName = fileName.replace(/#/g,"")
  59. fileName = fileName.replace(/%/g,"")
  60. var dfl=new File([file],fileName,{type:file.type});
  61. file = dfl
  62. /*console.log(file.name.indexOf("—")!=-1);
  63. console.log("-----------------------start");*/
  64. ftlMultitest(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt);
  65. };
  66. function multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  67. file.name.replace(" ","")
  68. file.name.replace(/—/g,"")
  69. var fileName = file.name;
  70. // 将单引号‘’都转换成',将双引号“”都转换成"
  71. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  72. // 将中括号【】转换成[],将大括号{}转换成{}
  73. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  74. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  75. // 将逗号,转换成,,将:转换成:
  76. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  77. //将中文——转换为英文-
  78. fileName = fileName.replace(/—/g,"-")
  79. fileName = fileName.replace(/……/g,"")
  80. fileName = fileName.replace(/±/g,"")
  81. fileName = fileName.replace(/#/g,"")
  82. fileName = fileName.replace(/%/g,"")
  83. var dfl=new File([file],fileName,{type:file.type});
  84. file = dfl
  85. /*console.log(file.name.indexOf("—")!=-1);
  86. console.log("-----------------------start");*/
  87. if(cpt == 1)
  88. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,"",prefix);
  89. else
  90. multitest(client,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt);
  91. };
  92. function CollectUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  93. console.log("-----------------------start");
  94. console.log("-----------------------"+realPath);
  95. file.name.replace(" ","")
  96. file.name.replace(/—/g,"")
  97. var fileName = file.name;
  98. // 将单引号‘’都转换成',将双引号“”都转换成"
  99. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  100. // 将中括号【】转换成[],将大括号{}转换成{}
  101. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  102. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  103. // 将逗号,转换成,,将:转换成:
  104. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  105. //将中文——转换为英文-
  106. fileName = fileName.replace(/—/g,"-")
  107. fileName = fileName.replace(/……/g,"")
  108. fileName = fileName.replace(/±/g,"")
  109. fileName = fileName.replace(/#/g,"")
  110. fileName = fileName.replace(/%/g,"")
  111. var dfl=new File([file],fileName,{type:file.type});
  112. file = dfl
  113. requestUrl = realPath+"/previewController/getAccess";
  114. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  115. if (err) {
  116. console.log(err);
  117. $.ajax({
  118. type:"post",
  119. url:realPath+"/previewController/saveJSError",
  120. data:{object:err.toString()},
  121. async: false,
  122. success:function(data){
  123. }
  124. });
  125. return alert(err);
  126. }
  127. try {
  128. result = JSON.parse(response);
  129. } catch (e) {
  130. errmsg = 'parse sts response info error: ' + e.message;
  131. return alert(errmsg);
  132. }
  133. console.log("---------result"+result);
  134. client = new OSS.Wrapper({
  135. accessKeyId: result.AccessKeyId,
  136. accessKeySecret: result.AccessKeySecret,
  137. stsToken: result.SecurityToken,
  138. bucket: result.Bucket,
  139. endpoint: result.Endpoint,
  140. timeout:'30000'
  141. });
  142. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  143. if(cpt == 1)
  144. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  145. else
  146. CollectMultitest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  147. })
  148. };
  149. function multipartUploadWithStsOnProcessAccessory(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, fileCount) {
  150. file.name.replace(" ","")
  151. file.name.replace(/—/g,"")
  152. var fileName = file.name;
  153. // 将单引号‘’都转换成',将双引号“”都转换成"
  154. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  155. // 将中括号【】转换成[],将大括号{}转换成{}
  156. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  157. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  158. // 将逗号,转换成,,将:转换成:
  159. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  160. //将中文——转换为英文-
  161. fileName = fileName.replace(/—/g,"-")
  162. fileName = fileName.replace(/……/g,"")
  163. fileName = fileName.replace(/±/g,"")
  164. fileName = fileName.replace(/#/g,"")
  165. fileName = fileName.replace(/%/g,"")
  166. var dfl=new File([file],fileName,{type:file.type});
  167. file = dfl
  168. requestUrl = realPath+"/previewController/getAccess";
  169. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  170. if (err) {
  171. console.log(err);
  172. $.ajax({
  173. type:"post",
  174. url:realPath+"/previewController/saveJSError",
  175. data:{object:err.toString()},
  176. async: false,
  177. success:function(data){
  178. }
  179. });
  180. return alert(err);
  181. }
  182. try {
  183. result = JSON.parse(response);
  184. } catch (e) {
  185. errmsg = 'parse sts response info error: ' + e.message;
  186. return alert(errmsg);
  187. }
  188. console.log("---------result"+result);
  189. client = new OSS.Wrapper({
  190. accessKeyId: result.AccessKeyId,
  191. accessKeySecret: result.AccessKeySecret,
  192. stsToken: result.SecurityToken,
  193. bucket: result.Bucket,
  194. endpoint: result.Endpoint,
  195. timeout:'30000'
  196. });
  197. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  198. multitestOnProcessAccessory(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, fileCount);
  199. })
  200. };
  201. function multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  202. console.log("-----------------------start");
  203. console.log("-----------------------"+realPath);
  204. file.name.replace(" ","")
  205. file.name.replace(/—/g,"")
  206. var fileName = file.name;
  207. // 将单引号‘’都转换成',将双引号“”都转换成"
  208. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  209. // 将中括号【】转换成[],将大括号{}转换成{}
  210. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  211. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  212. // 将逗号,转换成,,将:转换成:
  213. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  214. //将中文——转换为英文-
  215. fileName = fileName.replace(/—/g,"-")
  216. fileName = fileName.replace(/……/g,"")
  217. fileName = fileName.replace(/±/g,"")
  218. fileName = fileName.replace(/#/g,"")
  219. fileName = fileName.replace(/%/g,"")
  220. var dfl=new File([file],fileName,{type:file.type});
  221. file = dfl
  222. requestUrl = realPath+"/previewController/getAccess";
  223. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  224. if (err) {
  225. console.log(err);
  226. $.ajax({
  227. type:"post",
  228. url:realPath+"/previewController/saveJSError",
  229. data:{object:err.toString()},
  230. async: false,
  231. success:function(data){
  232. }
  233. });
  234. return alert(err);
  235. }
  236. try {
  237. result = JSON.parse(response);
  238. } catch (e) {
  239. errmsg = 'parse sts response info error: ' + e.message;
  240. return alert(errmsg);
  241. }
  242. console.log("---------result"+result);
  243. client = new OSS.Wrapper({
  244. accessKeyId: result.AccessKeyId,
  245. accessKeySecret: result.AccessKeySecret,
  246. stsToken: result.SecurityToken,
  247. bucket: result.Bucket,
  248. endpoint: result.Endpoint,
  249. timeout:'30000'
  250. });
  251. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  252. if(cpt == 1)
  253. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  254. else
  255. multitest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  256. })
  257. };
  258. function multipartUploadWorkOrder(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  259. console.log("-----------------------start");
  260. console.log("-----------------------"+realPath);
  261. file.name.replace(" ","")
  262. file.name.replace(/—/g,"")
  263. var fileName = file.name;
  264. // 将单引号‘’都转换成',将双引号“”都转换成"
  265. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  266. // 将中括号【】转换成[],将大括号{}转换成{}
  267. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  268. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  269. // 将逗号,转换成,,将:转换成:
  270. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  271. //将中文——转换为英文-
  272. fileName = fileName.replace(/—/g,"-")
  273. fileName = fileName.replace(/……/g,"")
  274. fileName = fileName.replace(/±/g,"")
  275. fileName = fileName.replace(/#/g,"")
  276. fileName = fileName.replace(/%/g,"")
  277. var dfl=new File([file],fileName,{type:file.type});
  278. file = dfl
  279. requestUrl = realPath+"/previewController/getAccess";
  280. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  281. if (err) {
  282. console.log(err);
  283. $.ajax({
  284. type:"post",
  285. url:realPath+"/previewController/saveJSError",
  286. data:{object:err.toString()},
  287. async: false,
  288. success:function(data){
  289. }
  290. });
  291. return alert(err);
  292. }
  293. try {
  294. result = JSON.parse(response);
  295. } catch (e) {
  296. errmsg = 'parse sts response info error: ' + e.message;
  297. return alert(errmsg);
  298. }
  299. console.log("---------result"+result);
  300. client = new OSS.Wrapper({
  301. accessKeyId: result.AccessKeyId,
  302. accessKeySecret: result.AccessKeySecret,
  303. stsToken: result.SecurityToken,
  304. bucket: result.Bucket,
  305. endpoint: result.Endpoint,
  306. timeout:'30000'
  307. });
  308. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  309. if(cpt == 1)
  310. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  311. else
  312. multitestWorkOrder(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  313. })
  314. };
  315. function ftlMultitest (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  316. var formdata = new FormData();
  317. formdata.append("storeAs",storeAs);
  318. formdata.append("file",file);
  319. var names = storeAs.split("/");
  320. var name = names[names.length-1];
  321. var fileLocation = "";
  322. var lookUrl = "";
  323. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  324. $.ajax({
  325. type:"get",
  326. url:realPath+"/bos/getFileStorageLocation",
  327. async: false,
  328. success:function(data){
  329. fileLocation = data.fileLocation;
  330. }
  331. });
  332. $.ajax({
  333. type:'post',
  334. url:realPath+"/bos/uploadFtl",
  335. data:formdata,
  336. contentType: false,
  337. processData: false,
  338. success:function (data1) {
  339. if(data1.code==='1'){
  340. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  341. $.ajax({
  342. type:'post',
  343. url:returnUrl,
  344. data:{
  345. "attachmentName":data1.name,
  346. "attachmentId":attachmentId,
  347. "attachmentFlag":attachmentFlag,
  348. "url":data1.url,
  349. "divIdType":divId
  350. },
  351. success:function(data){
  352. var lowerType = data.type.toLowerCase();
  353. //console.log('url : ' + data.url);
  354. if(data.status=="Success"){
  355. parent.layer.msg("上传成功!",{icon:1});
  356. var lenght =$(".trIdAdds").length;
  357. if (size != 0){
  358. lenght += size;
  359. }
  360. var addFile = "addFile"+divId;
  361. var str = '<tr class="trIdAdds">'+
  362. '<td class="text-center">' ;
  363. if(2 == fileLocation){
  364. $.ajax({
  365. type:"post",
  366. async:false,
  367. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  368. data:{"file":data.url,},
  369. success:function(result){
  370. lookUrl = result.lookUrl;
  371. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  372. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  373. }else if(isContains("pdf",lowerType)){
  374. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  375. }else if(isContains("rar,zip,jar,7z",lowerType)){
  376. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  377. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  378. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  379. }else {
  380. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  381. }
  382. }
  383. });
  384. }else{
  385. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  386. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  387. }else if(isContains("pdf",lowerType)){
  388. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  389. }else if(isContains("rar,zip,jar,7z",lowerType)){
  390. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  391. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  392. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  393. }else {
  394. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  395. }
  396. }
  397. str = str +'</td>'+
  398. '<td >'+data.createByName+'</td>'+
  399. '<td >'+data.createDate+
  400. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  401. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  402. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.url+'"/>'+
  403. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.name+'"/>'+
  404. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  405. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  406. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  407. '<input name="workAttachments['+lenght+'].divIdType" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.divIdType+'"/>'+
  408. '</td>'+
  409. '<td class="op-td">'+
  410. '<div class="op-btn-box">' ;
  411. if(2 == fileLocation){
  412. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  413. }else{
  414. 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>';
  415. }
  416. str = str +'<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  417. '</div>' +
  418. '</td>'+
  419. '</tr>';
  420. /*console.log("file:"+divId);
  421. console.log("str="+str);*/
  422. $("#file"+divId).append(str);
  423. var p = Math.floor(1*100);
  424. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  425. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  426. $("#baifenbi"+divId).html(p+"%");
  427. $("#fileName"+divId).html("上传进度:");
  428. }else {
  429. parent.layer.msg("上传失败!",{icon:2});
  430. }
  431. }
  432. })
  433. }else {
  434. parent.layer.msg("上传失败!",{icon:2});
  435. }
  436. }
  437. })
  438. };
  439. function collectingAccessory(obj,url,fileUrl,uploadUserId,fileSize) {
  440. $.ajax({
  441. type: "post",
  442. url: url,
  443. data: {"url": fileUrl, "type": "1", "collectType": 1, "collectUserId": uploadUserId,"fileSize":fileSize},
  444. success: function (data) {
  445. if (data.success) {
  446. $(obj).hide()
  447. parent.layer.msg(data.str, {icon: 1});
  448. } else {
  449. parent.layer.msg(data.str, {icon: 2});
  450. }
  451. }
  452. });
  453. }
  454. /*
  455. function collectingAccessory(obj,url,fileUrl,uploadUserId,fileSize){
  456. if(navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)){//如果是移动端,就使用自适应大小弹窗
  457. width='auto';
  458. height='auto';
  459. }else{//如果是PC端,根据用户设置的width和height显示。
  460. }
  461. top.layer.open({
  462. type: 2,
  463. area: ['50%', '70%'],
  464. title: '收藏',
  465. maxmin: true, //开启最大化最小化按钮
  466. content: realPath+'/projectAccessory/projectAccessory/skipSaveCollectAccessoryForm?url='+ fileUrl + '&collectUserId='+uploadUserId+'&fileSize='+ fileSize + '&type=1&collectType=1',
  467. btn: ['确定','关闭'],
  468. btn1: function(index, layero){
  469. var body = top.layer.getChildFrame('body', index);
  470. var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
  471. var inputForm = body.find('#inputForm');
  472. var top_iframe;
  473. if(false){
  474. top_iframe = false;//如果指定了iframe,则在改frame中跳转
  475. }else{
  476. top_iframe = top.getActiveTab().attr("name");//获取当前active的tab的iframe
  477. }
  478. inputForm.attr("target",top_iframe);//表单提交成功后,从服务器返回的url在当前tab中展示
  479. if(iframeWin.contentWindow.doSubmit(1) ){
  480. // top.layer.close(index);//关闭对话框。
  481. setTimeout(function(){top.layer.close(index)}, 100);//延时0.1秒,对应360 7.1版本bug
  482. }
  483. },
  484. btn3: function(index){
  485. }
  486. });
  487. }*/
  488. function multipartUploadWithStsCollection(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  489. console.log("-----------------------start");
  490. console.log("-----------------------"+realPath);
  491. var fileUrl=file.linUrl;
  492. var url=file.url;
  493. var fileSize=file.fileSize;
  494. file.fileName.replace(" ","")
  495. file.fileName.replace(/—/g,"")
  496. var fileName = file.fileName;
  497. // 将单引号‘’都转换成',将双引号“”都转换成"
  498. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  499. // 将中括号【】转换成[],将大括号{}转换成{}
  500. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  501. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  502. // 将逗号,转换成,,将:转换成:
  503. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  504. //将中文——转换为英文-
  505. fileName = fileName.replace(/—/g,"-")
  506. fileName = fileName.replace(/……/g,"")
  507. fileName = fileName.replace(/±/g,"")
  508. fileName = fileName.replace(/#/g,"")
  509. fileName = fileName.replace(/%/g,"")
  510. var dfl=new File([file],fileName,{type:file.type});
  511. file = dfl
  512. requestUrl = realPath+"/previewController/getAccess";
  513. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  514. if (err) {
  515. console.log(err);
  516. $.ajax({
  517. type:"post",
  518. url:realPath+"/previewController/saveJSError",
  519. data:{object:err.toString()},
  520. async: false,
  521. success:function(data){
  522. }
  523. });
  524. return alert(err);
  525. }
  526. try {
  527. result = JSON.parse(response);
  528. } catch (e) {
  529. errmsg = 'parse sts response info error: ' + e.message;
  530. return alert(errmsg);
  531. }
  532. console.log("---------result"+result);
  533. client = new OSS.Wrapper({
  534. accessKeyId: result.AccessKeyId,
  535. accessKeySecret: result.AccessKeySecret,
  536. stsToken: result.SecurityToken,
  537. bucket: result.Bucket,
  538. endpoint: result.Endpoint,
  539. timeout:'30000'
  540. });
  541. storeAs = url;
  542. if(cpt == 1)
  543. fBmultitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  544. else
  545. multitestCollection(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,fileUrl,fileSize);
  546. })
  547. };
  548. function multipartUploadWithStsCollectionCollect(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, fileCount,idx,prefix,currentUser) {
  549. console.log("-----------------------start");
  550. console.log("-----------------------"+realPath);
  551. var fileUrl=file.linUrl;
  552. var url=file.url;
  553. var fileSize=file.fileSize;
  554. file.fileName.replace(" ","")
  555. file.fileName.replace(/—/g,"")
  556. var fileName = file.fileName;
  557. // 将单引号‘’都转换成',将双引号“”都转换成"
  558. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  559. // 将中括号【】转换成[],将大括号{}转换成{}
  560. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  561. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  562. // 将逗号,转换成,,将:转换成:
  563. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  564. //将中文——转换为英文-
  565. fileName = fileName.replace(/—/g,"-")
  566. fileName = fileName.replace(/……/g,"")
  567. fileName = fileName.replace(/±/g,"")
  568. fileName = fileName.replace(/#/g,"")
  569. fileName = fileName.replace(/%/g,"")
  570. var dfl=new File([file],fileName,{type:file.type});
  571. file = dfl
  572. requestUrl = realPath+"/previewController/getAccess";
  573. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  574. if (err) {
  575. console.log(err);
  576. $.ajax({
  577. type:"post",
  578. url:realPath+"/previewController/saveJSError",
  579. data:{object:err.toString()},
  580. async: false,
  581. success:function(data){
  582. }
  583. });
  584. return alert(err);
  585. }
  586. try {
  587. result = JSON.parse(response);
  588. } catch (e) {
  589. errmsg = 'parse sts response info error: ' + e.message;
  590. return alert(errmsg);
  591. }
  592. console.log("---------result"+result);
  593. client = new OSS.Wrapper({
  594. accessKeyId: result.AccessKeyId,
  595. accessKeySecret: result.AccessKeySecret,
  596. stsToken: result.SecurityToken,
  597. bucket: result.Bucket,
  598. endpoint: result.Endpoint,
  599. timeout:'30000'
  600. });
  601. storeAs = url;
  602. multitestCollectionCollect(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, fileCount,fileUrl,fileSize);
  603. })
  604. };
  605. function multitestCollectionCollect (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,fileCount,fileUrl,fileSize) {
  606. var names = storeAs.split("/");
  607. var name = names[names.length-1];
  608. ossClient.multipartUpload(storeAs, file,{
  609. partSize: 1 * 1024 * 1024,
  610. parallel: 5,
  611. progress: function* (percent, cpt) {
  612. var p = Math.floor(percent*100);
  613. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  614. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  615. $("#baifenbi"+divId).html(p+"%");
  616. $("#fileName"+divId).html(file.name);
  617. checkpoint_temp = cpt;
  618. }
  619. }).then(function (result) {
  620. var fileLocation = "";
  621. var lookUrl = "";
  622. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  623. $.ajax({
  624. type:"get",
  625. url:realPath+"/bos/getFileStorageLocation",
  626. async: false,
  627. success:function(data){
  628. fileLocation = data.fileLocation;
  629. }
  630. });
  631. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  632. $.ajax({
  633. type:'post',
  634. url:returnUrl,
  635. data:{
  636. "attachmentName":file['name'],
  637. "attachmentId":attachmentId,
  638. "attachmentFlag":attachmentFlag,
  639. "fileSize":fileSize,
  640. "url":storeAs
  641. },
  642. success:function(data){
  643. var lowerType = data.type.toLowerCase();
  644. if(data.status=="Success"){
  645. parent.layer.msg("上传成功!",{icon:1});
  646. var lenght =$(".trIdAdds").length;
  647. if(parseInt(fileCount) == parseInt(lenght)){
  648. }else{
  649. lenght = parseInt(fileCount);
  650. }
  651. if (size != 0){
  652. lenght += size;
  653. }
  654. var sort = parseInt(fileCount)+1;
  655. var addFile = "addFile"+divId;
  656. var str = '<tr class="trIdAdds">'+
  657. '<td class="text-center">' ;
  658. if(2 == fileLocation){
  659. $.ajax({
  660. type:"post",
  661. async:false,
  662. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  663. data:{"file":data.url,},
  664. success:function(result){
  665. lookUrl = result.lookUrl;
  666. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  667. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  668. }else if(isContains("pdf",lowerType)){
  669. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  670. }else if(isContains("rar,zip,jar,7z",lowerType)){
  671. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  672. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  673. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  674. }else {
  675. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  676. }
  677. }
  678. });
  679. }else{
  680. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  681. 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+'"/>';
  682. }else if(isContains("pdf",lowerType)){
  683. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  684. }else if(isContains("rar,zip,jar,7z",lowerType)){
  685. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  686. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  687. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  688. }else {
  689. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  690. }
  691. }
  692. str = str +'</td>'+
  693. '<td >'+data.createByName+'</td>'+
  694. '<td >'+data.createDate+
  695. '<input name="workAttachments['+sort+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  696. '<input name="workAttachments['+sort+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  697. '<input name="workAttachments['+sort+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  698. '<input name="workAttachments['+sort+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  699. '<input name="workAttachments['+sort+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  700. '<input name="workAttachments['+sort+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  701. '<input name="workAttachments['+sort+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  702. '<input name="workAttachments['+sort+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  703. '<input name="workAttachments['+sort+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  704. '<input id="workAttachments'+sort+'_sort" name="workAttachments['+sort+'].sort" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+sort+'"/>'+
  705. '</td>'+
  706. '<td style="padding:0px">'+'<input id="workAttachments'+sort+'_description" name="workAttachments['+sort+'].description" type="text" readonly="readonly" maxlength="250" class="form-control layui-input" required placeholder="请输入文件描述" onclick="openInfo(\'workAttachments'+sort+'\',this.value)" style="width: 100%;height: 100%;padding:0px;background-color: #FFFFFF;" />'+'</td>'+
  707. '<td class="op-td">'+
  708. '<div class="op-btn-box">';
  709. if(2 == fileLocation){
  710. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  711. }else{
  712. 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>';
  713. }
  714. str = str +'<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  715. /*'<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>'+*/
  716. '</div>' +
  717. '</td>'+
  718. '</tr>';
  719. $("#file"+divId).append(str);
  720. }else {
  721. parent.layer.msg("上传失败!",{icon:2});
  722. }
  723. }
  724. })
  725. }).catch(function (err) {
  726. console.log("err------ err:");
  727. console.log(err);
  728. });
  729. };
  730. function multitestCollection (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt,fileUrl,fileSize) {
  731. var names = storeAs.split("/");
  732. var name = names[names.length-1];
  733. ossClient.multipartUpload(storeAs, file,{
  734. partSize: 1 * 1024 * 1024,
  735. parallel: 5,
  736. progress: function* (percent, cpt) {
  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(file.name);
  742. checkpoint_temp = cpt;
  743. }
  744. }).then(function (result) {
  745. var fileLocation = "";
  746. var lookUrl = "";
  747. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  748. $.ajax({
  749. type:"get",
  750. url:realPath+"/bos/getFileStorageLocation",
  751. async: false,
  752. success:function(data){
  753. fileLocation = data.fileLocation;
  754. }
  755. });
  756. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  757. $.ajax({
  758. type:'post',
  759. url:returnUrl,
  760. data:{
  761. "attachmentName":file['name'],
  762. "attachmentId":attachmentId,
  763. "attachmentFlag":attachmentFlag,
  764. "fileSize":fileSize,
  765. "url":storeAs
  766. },
  767. success:function(data){
  768. var lowerType = data.type.toLowerCase();
  769. if(data.status=="Success"){
  770. parent.layer.msg("上传成功!",{icon:1});
  771. var lenght =$(".trIdAdds").length;
  772. if (size != 0){
  773. lenght += size;
  774. }
  775. var addFile = "addFile"+divId;
  776. var str = '<tr class="trIdAdds">'+
  777. '<td class="text-center">' ;
  778. if(2 == fileLocation){
  779. $.ajax({
  780. type:"post",
  781. async:false,
  782. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  783. data:{"file":data.url,},
  784. success:function(result){
  785. lookUrl = result.lookUrl;
  786. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  787. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  788. }else if(isContains("pdf",lowerType)){
  789. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  790. }else if(isContains("rar,zip,jar,7z",lowerType)){
  791. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  792. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  793. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  794. }else {
  795. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  796. }
  797. }
  798. });
  799. }else{
  800. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  801. 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+'"/>';
  802. }else if(isContains("pdf",lowerType)){
  803. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  804. }else if(isContains("rar,zip,jar,7z",lowerType)){
  805. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  806. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  807. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  808. }else {
  809. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  810. }
  811. }
  812. str = str +'</td>'+
  813. '<td >'+data.createByName+'</td>'+
  814. '<td >'+data.createDate+
  815. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  816. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  817. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  818. '<input name="workAttachments['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  819. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  820. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  821. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  822. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  823. '<input name="workAttachments['+lenght+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  824. '</td>'+
  825. '<td class="op-td">'+
  826. '<div class="op-btn-box">';
  827. if(2 == fileLocation){
  828. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  829. }else{
  830. 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>';
  831. }
  832. str = str +'<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  833. /*'<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>'+*/
  834. '</div>' +
  835. '</td>'+
  836. '</tr>';
  837. $("#file"+divId).append(str);
  838. }else {
  839. parent.layer.msg("上传失败!",{icon:2});
  840. }
  841. }
  842. })
  843. }).catch(function (err) {
  844. console.log("err------ err:");
  845. console.log(err);
  846. });
  847. };
  848. function fBmultitestFlag (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt,idx,prefix,currentUser) {
  849. var formdata = new FormData();
  850. formdata.append("storeAs",storeAs);
  851. formdata.append("file",file);
  852. var names = storeAs.split("/");
  853. var name = names[names.length-1];
  854. var fileLocation = "";
  855. var lookUrl = "";
  856. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  857. $.ajax({
  858. type:"get",
  859. url:realPath+"/bos/getFileStorageLocation",
  860. async: false,
  861. success:function(data){
  862. fileLocation = data.fileLocation;
  863. }
  864. });
  865. $.ajax({
  866. type:'post',
  867. url:realPath+"/bos/upload",
  868. data:formdata,
  869. contentType: false,
  870. processData: false,
  871. success:function (data1) {
  872. if(data1.code==='1'){
  873. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  874. $.ajax({
  875. type:'post',
  876. url:returnUrl,
  877. data:{
  878. "attachmentName":file['name'],
  879. "attachmentId":attachmentId,
  880. "attachmentFlag":attachmentFlag,
  881. "url":data1.url,
  882. "divIdType":divId
  883. },
  884. success:function(data){
  885. var lowerType = data.type.toLowerCase();
  886. //console.log('url : ' + data.url);
  887. if(data.status=="Success"){
  888. parent.layer.msg("上传成功!",{icon:1});
  889. var str = '' ;
  890. var addFile = prefix+divId;
  891. if(2 == fileLocation){
  892. $.ajax({
  893. type:"post",
  894. async:false,
  895. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  896. data:{"file":data.url,},
  897. success:function(result){
  898. lookUrl = result.lookUrl;
  899. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  900. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  901. }else if(isContains("pdf",lowerType)){
  902. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  903. }else {
  904. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  905. }
  906. }
  907. });
  908. }else{
  909. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  910. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  911. }else if(isContains("pdf",lowerType)){
  912. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  913. }else {
  914. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  915. }
  916. }
  917. $(prefix).parent().parent().find("td").eq(2).html(str)
  918. $(prefix).parent().parent().find("td").eq(0).find("input").eq(1).val(data.id)
  919. $(prefix).parent().parent().find("td").eq(0).find("input").eq(2).val(data.url)
  920. var d = new Date();
  921. var dateTime=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
  922. 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>';
  923. var delResult =
  924. '<a href="javascript:void(0)" onclick="accordingBtn(this,\''+prefix+'\')" class=\"op-btn op-btn-edit" ><i class="fa fa-edit"></i>&nbsp;修改</a>';
  925. // $(prefix).parent().parent().find("td").eq(4).append(result)
  926. }else {
  927. parent.layer.msg("上传失败!",{icon:2});
  928. }
  929. }
  930. })
  931. }else {
  932. parent.layer.msg("上传失败!",{icon:2});
  933. }
  934. }
  935. })
  936. };
  937. function multitestFlag (ossClient,storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt,idx,prefix,currentUser) {
  938. var names = storeAs.split("/");
  939. var name = names[names.length-1];
  940. ossClient.multipartUpload(storeAs, file,{
  941. partSize: 1 * 1024 * 1024,
  942. parallel: 5,
  943. progress: function* (percent, cpt) {
  944. var p = Math.floor(percent*100);
  945. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  946. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  947. $("#baifenbi"+divId).html(p+"%");
  948. $("#fileName"+divId).html(file.name);
  949. checkpoint_temp = cpt;
  950. }
  951. }).then(function (result) {
  952. var fileLocation = "";
  953. var lookUrl = "";
  954. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  955. $.ajax({
  956. type:"get",
  957. url:realPath+"/bos/getFileStorageLocation",
  958. async: false,
  959. success:function(data){
  960. fileLocation = data.fileLocation;
  961. }
  962. });
  963. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  964. $.ajax({
  965. type:'post',
  966. url:returnUrl,
  967. data:{
  968. "attachmentName":file['name'],
  969. "attachmentId":attachmentId,
  970. "attachmentFlag":attachmentFlag,
  971. "url":"/"+storeAs
  972. },
  973. success:function(data){
  974. var lowerType = data.type.toLowerCase();
  975. //console.log('url : ' + data.url);
  976. if(data.status=="Success"){
  977. parent.layer.msg("上传成功!",{icon:1});
  978. var str = '' ;
  979. var addFile = prefix+divId;
  980. if(2 == fileLocation){
  981. $.ajax({
  982. type:"post",
  983. async:false,
  984. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  985. data:{"file":data.url,},
  986. success:function(result){
  987. lookUrl = result.lookUrl;
  988. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  989. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  990. }else if(isContains("pdf",lowerType)){
  991. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  992. }else {
  993. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  994. }
  995. }
  996. });
  997. }else{
  998. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  999. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1000. }else if(isContains("pdf",lowerType)){
  1001. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  1002. }else {
  1003. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1004. }
  1005. }
  1006. $(prefix+"_fileTypeDiv").empty();
  1007. $(prefix+"_fileTypeDiv").append(str);
  1008. $(prefix+"_uploadUserName").html(currentUser);
  1009. var d = new Date();
  1010. var dateTime=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
  1011. $(prefix+"_uploadDate").html(dateTime);
  1012. $(prefix+"_fileName").val(data.attachmentName);
  1013. $(prefix+"_fileType").val(data.type);
  1014. $(prefix+"_fileUrl").val(data.url);
  1015. $(prefix+"_fileAttachmentFlag").val(data.attachmentFlag);
  1016. $(prefix+"_fileAttachmentId").val(data.attachmentId);
  1017. 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>';
  1018. var delResult =
  1019. '<a href="javascript:void(0)" onclick="accordingBtn(this,\''+prefix+'\')" class=\"op-btn op-btn-edit" ><i class="fa fa-edit"></i>&nbsp;修改</a>';
  1020. $(prefix+"_operation").empty();
  1021. $(prefix+"_operation").append(delResult);
  1022. }else {
  1023. parent.layer.msg("上传失败!",{icon:2});
  1024. }
  1025. }
  1026. })
  1027. }).catch(function (err) {
  1028. console.log("err------ err:");
  1029. console.log(err);
  1030. });
  1031. };
  1032. function multitest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1033. var names = storeAs.split("/");
  1034. var name = names[names.length-1];
  1035. ossClient.multipartUpload(storeAs, file,{
  1036. partSize: 1 * 1024 * 1024,
  1037. parallel: 5,
  1038. progress: function* (percent, cpt) {
  1039. var p = Math.floor(percent*100);
  1040. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1041. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1042. $("#baifenbi"+divId).html(p+"%");
  1043. $("#fileName"+divId).html(file.name);
  1044. checkpoint_temp = cpt;
  1045. }
  1046. }).then(function (result) {
  1047. var fileLocation = "";
  1048. var lookUrl = "";
  1049. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1050. $.ajax({
  1051. type:"get",
  1052. url:realPath+"/bos/getFileStorageLocation",
  1053. async: false,
  1054. success:function(data){
  1055. fileLocation = data.fileLocation;
  1056. }
  1057. });
  1058. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1059. $.ajax({
  1060. type:'post',
  1061. url:returnUrl,
  1062. data:{
  1063. "attachmentName":file['name'],
  1064. "attachmentId":attachmentId,
  1065. "attachmentFlag":attachmentFlag,
  1066. "fileSize":file['size'],
  1067. "url":"/"+storeAs
  1068. },
  1069. success:function(data){
  1070. var lowerType = data.type.toLowerCase();
  1071. if(data.status=="Success"){
  1072. parent.layer.msg("上传成功!",{icon:1});
  1073. var lenght =$(".trIdAdds").length;
  1074. if (size != 0){
  1075. lenght += size;
  1076. }
  1077. var addFile = "addFile"+divId;
  1078. var str = '<tr class="trIdAdds">'+
  1079. '<td class="text-center">' ;
  1080. if(2 == fileLocation){
  1081. $.ajax({
  1082. type:"post",
  1083. async:false,
  1084. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1085. data:{"file":data.url,},
  1086. success:function(result){
  1087. lookUrl = result.lookUrl;
  1088. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1089. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1090. }else if(isContains("pdf",lowerType)){
  1091. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  1092. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1093. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  1094. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1095. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1096. }else {
  1097. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  1098. }
  1099. }
  1100. });
  1101. }else{
  1102. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1103. 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+'"/>';
  1104. }else if(isContains("pdf",lowerType)){
  1105. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  1106. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1107. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  1108. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1109. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1110. }else {
  1111. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  1112. }
  1113. }
  1114. str = str +'</td>'+
  1115. '<td >'+data.createByName+'</td>'+
  1116. '<td >'+data.createDate+
  1117. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1118. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1119. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1120. '<input name="workAttachments['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  1121. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1122. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1123. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1124. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1125. '<input name="workAttachments['+lenght+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  1126. '</td>'+
  1127. '<td class="op-td">'+
  1128. '<div class="op-btn-box">';
  1129. if(2 == fileLocation){
  1130. if(isContains("pdf",lowerType)){
  1131. str = str +'<a href="'+lookUrl+'" target="_blank" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1132. }else{
  1133. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1134. }
  1135. }else{
  1136. 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>';
  1137. }
  1138. /*str = str + '<a href="javascript:void(0)" onclick="ossCollectingAccessory(this,\''+realPath+'/projectAccessory/projectAccessory/saveCollectAccessory?url='+data.url+'&fileName='+data.attachmentName+'\',\''+addFile+'\',\''+data.createBy+'\')" class="op-btn op-btn-delete" style="background-color: #FFB800"><i class="layui-icon layui-icon-rate"></i>&nbsp;收藏</a>'+*/
  1139. str = str + '<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  1140. '</div>' +
  1141. '</td>'+
  1142. '</tr>';
  1143. $("#file"+divId).append(str);
  1144. }else {
  1145. parent.layer.msg("上传失败!",{icon:2});
  1146. }
  1147. }
  1148. })
  1149. }).catch(function (err) {
  1150. console.log("err------ err:");
  1151. console.log(err);
  1152. });
  1153. };
  1154. function CollectMultitest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1155. var names = storeAs.split("/");
  1156. var name = names[names.length-1];
  1157. ossClient.multipartUpload(storeAs, file,{
  1158. partSize: 1 * 1024 * 1024,
  1159. parallel: 5,
  1160. progress: function* (percent, cpt) {
  1161. var p = Math.floor(percent*100);
  1162. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1163. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1164. $("#baifenbi"+divId).html(p+"%");
  1165. $("#fileName"+divId).html(file.name);
  1166. checkpoint_temp = cpt;
  1167. }
  1168. }).then(function (result) {
  1169. var fileLocation = "";
  1170. var lookUrl = "";
  1171. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1172. $.ajax({
  1173. type:"get",
  1174. url:realPath+"/bos/getFileStorageLocation",
  1175. async: false,
  1176. success:function(data){
  1177. fileLocation = data.fileLocation;
  1178. }
  1179. });
  1180. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1181. $.ajax({
  1182. type:'post',
  1183. url:returnUrl,
  1184. data:{
  1185. "attachmentName":file['name'],
  1186. "attachmentId":attachmentId,
  1187. "attachmentFlag":attachmentFlag,
  1188. "fileSize":file['size'],
  1189. "url":"/"+storeAs
  1190. },
  1191. success:function(data){
  1192. var lowerType = data.type.toLowerCase();
  1193. if(data.status=="Success"){
  1194. parent.layer.msg("上传成功!",{icon:1});
  1195. var lenght =$(".trIdAdds").length;
  1196. if (size != 0){
  1197. lenght += size;
  1198. }
  1199. var addFile = "addFile"+divId;
  1200. var str = '<tr class="trIdAdds">'+
  1201. '<td class="text-center">' ;
  1202. if(2 == fileLocation){
  1203. $.ajax({
  1204. type:"post",
  1205. async:false,
  1206. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1207. data:{"file":data.url,},
  1208. success:function(result){
  1209. lookUrl = result.lookUrl;
  1210. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1211. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1212. }else if(isContains("pdf",lowerType)){
  1213. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  1214. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1215. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  1216. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1217. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1218. }else {
  1219. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  1220. }
  1221. }
  1222. });
  1223. }else{
  1224. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1225. 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+'"/>';
  1226. }else if(isContains("pdf",lowerType)){
  1227. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  1228. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1229. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  1230. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1231. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1232. }else {
  1233. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  1234. }
  1235. }
  1236. str = str +'</td>'+
  1237. '<td >'+data.createByName+'</td>'+
  1238. '<td >'+data.createDate+
  1239. '<input name="url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1240. '<input name="fileName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1241. '<input name="userId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1242. '<input name="type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="1"/>'+
  1243. '<input name="fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  1244. '</td>'+
  1245. '<td class="op-td">'+
  1246. '<div class="op-btn-box">';
  1247. if(2 == fileLocation){
  1248. if(isContains("pdf",lowerType)){
  1249. str = str +'<a href="'+lookUrl+'" target="_blank" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1250. }else{
  1251. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1252. }
  1253. }else{
  1254. 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>';
  1255. }
  1256. /*str = str + '<a href="javascript:void(0)" onclick="ossCollectingAccessory(this,\''+realPath+'/projectAccessory/projectAccessory/saveCollectAccessory?url='+data.url+'&fileName='+data.attachmentName+'\',\''+addFile+'\',\''+data.createBy+'\')" class="op-btn op-btn-delete" style="background-color: #FFB800"><i class="layui-icon layui-icon-rate"></i>&nbsp;收藏</a>'+*/
  1257. str = str + '<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  1258. '</div>' +
  1259. '</td>'+
  1260. '</tr>';
  1261. $("#file"+divId).append(str);
  1262. }else {
  1263. parent.layer.msg("上传失败!",{icon:2});
  1264. }
  1265. }
  1266. })
  1267. }).catch(function (err) {
  1268. console.log("err------ err:");
  1269. console.log(err);
  1270. });
  1271. };
  1272. function multitestWorkOrder (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1273. var names = storeAs.split("/");
  1274. var name = names[names.length-1];
  1275. ossClient.multipartUpload(storeAs, file,{
  1276. partSize: 1 * 1024 * 1024,
  1277. parallel: 5,
  1278. progress: function* (percent, cpt) {
  1279. var p = Math.floor(percent*100);
  1280. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1281. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1282. $("#baifenbi"+divId).html(p+"%");
  1283. $("#fileName"+divId).html(file.name);
  1284. checkpoint_temp = cpt;
  1285. }
  1286. }).then(function (result) {
  1287. var fileLocation = "";
  1288. var lookUrl = "";
  1289. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1290. $.ajax({
  1291. type:"get",
  1292. url:realPath+"/bos/getFileStorageLocation",
  1293. async: false,
  1294. success:function(data){
  1295. fileLocation = data.fileLocation;
  1296. }
  1297. });
  1298. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1299. $.ajax({
  1300. type:'post',
  1301. url:returnUrl,
  1302. data:{
  1303. "attachmentName":file['name'],
  1304. "attachmentId":attachmentId,
  1305. "attachmentFlag":attachmentFlag,
  1306. "fileSize":file['size'],
  1307. "url":"/"+storeAs
  1308. },
  1309. success:function(data){
  1310. var lowerType = data.type.toLowerCase();
  1311. if(data.status=="Success"){
  1312. parent.layer.msg("上传成功!",{icon:1});
  1313. var lenght =$(".trIdAdds").length;
  1314. if (size != 0){
  1315. lenght += size;
  1316. }
  1317. var addFile = "addFile"+divId;
  1318. var str = '<tr class="trIdAdds">'+
  1319. '<td class="text-center">' ;
  1320. if(2 == fileLocation){
  1321. $.ajax({
  1322. type:"post",
  1323. async:false,
  1324. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1325. data:{"file":data.url,},
  1326. success:function(result){
  1327. lookUrl = result.lookUrl;
  1328. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1329. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1330. }
  1331. }
  1332. });
  1333. }else{
  1334. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1335. 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+'"/>';
  1336. }
  1337. }
  1338. str = str +'</td>'+
  1339. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1340. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1341. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1342. '<input name="workAttachments['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  1343. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1344. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1345. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1346. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1347. '<input name="workAttachments['+lenght+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  1348. '</td>'+
  1349. '<td class="op-td">'+
  1350. '<div class="op-btn-box">';
  1351. if(2 == fileLocation){
  1352. if(isContains("pdf",lowerType)){
  1353. 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>';
  1354. }else{
  1355. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1356. }
  1357. }else{
  1358. 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>';
  1359. }
  1360. str = str +
  1361. '<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  1362. '</div>' +
  1363. '</td>'+
  1364. '</tr>';
  1365. $("#file"+divId).append(str);
  1366. }else {
  1367. parent.layer.msg("上传失败!",{icon:2});
  1368. }
  1369. }
  1370. })
  1371. }).catch(function (err) {
  1372. console.log("err------ err:");
  1373. console.log(err);
  1374. });
  1375. };
  1376. function multipartUploadWithStsRecordsReported(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt,idx,prefix,currentUser) {
  1377. console.log("-----------------------start");
  1378. console.log("-----------------------"+realPath);
  1379. file.name.replace(" ","")
  1380. file.name.replace(/—/g,"")
  1381. var fileName = file.name;
  1382. // 将单引号‘’都转换成',将双引号“”都转换成"
  1383. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  1384. // 将中括号【】转换成[],将大括号{}转换成{}
  1385. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  1386. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  1387. // 将逗号,转换成,,将:转换成:
  1388. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  1389. //将中文——转换为英文-
  1390. fileName = fileName.replace(/—/g,"-")
  1391. fileName = fileName.replace(/……/g,"")
  1392. fileName = fileName.replace(/±/g,"")
  1393. fileName = fileName.replace(/#/g,"")
  1394. fileName = fileName.replace(/%/g,"")
  1395. var dfl=new File([file],fileName,{type:file.type});
  1396. file = dfl
  1397. requestUrl = realPath+"/previewController/getAccess";
  1398. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  1399. if (err) {
  1400. console.log(err);
  1401. $.ajax({
  1402. type:"post",
  1403. url:realPath+"/previewController/saveJSError",
  1404. data:{object:err.toString()},
  1405. async: false,
  1406. success:function(data){
  1407. }
  1408. });
  1409. return alert(err);
  1410. }
  1411. try {
  1412. result = JSON.parse(response);
  1413. } catch (e) {
  1414. errmsg = 'parse sts response info error: ' + e.message;
  1415. return alert(errmsg);
  1416. }
  1417. console.log("---------result"+result);
  1418. client = new OSS.Wrapper({
  1419. accessKeyId: result.AccessKeyId,
  1420. accessKeySecret: result.AccessKeySecret,
  1421. stsToken: result.SecurityToken,
  1422. bucket: result.Bucket,
  1423. endpoint: result.Endpoint,
  1424. timeout:'30000'
  1425. });
  1426. storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
  1427. if(cpt == 1)
  1428. multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
  1429. else
  1430. multitestRecordsReported(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt);
  1431. })
  1432. };
  1433. function multitestRecordsReported (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1434. var names = storeAs.split("/");
  1435. var name = names[names.length-1];
  1436. ossClient.multipartUpload(storeAs, file,{
  1437. partSize: 1 * 1024 * 1024,
  1438. parallel: 5,
  1439. progress: function* (percent, cpt) {
  1440. var p = Math.floor(percent*100);
  1441. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1442. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1443. $("#baifenbi"+divId).html(p+"%");
  1444. $("#fileName"+divId).html(file.name);
  1445. checkpoint_temp = cpt;
  1446. }
  1447. }).then(function (result) {
  1448. var fileLocation = "";
  1449. var lookUrl = "";
  1450. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1451. $.ajax({
  1452. type:"get",
  1453. url:realPath+"/bos/getFileStorageLocation",
  1454. async: false,
  1455. success:function(data){
  1456. fileLocation = data.fileLocation;
  1457. }
  1458. });
  1459. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1460. $.ajax({
  1461. type:'post',
  1462. url:returnUrl,
  1463. data:{
  1464. "attachmentName":file['name'],
  1465. "attachmentId":attachmentId,
  1466. "attachmentFlag":attachmentFlag,
  1467. "fileSize":file['size'],
  1468. "url":"/"+storeAs
  1469. },
  1470. success:function(data){
  1471. var lowerType = data.type.toLowerCase();
  1472. if(data.status=="Success"){
  1473. parent.layer.msg("上传成功!",{icon:1});
  1474. var lenght =$(".trIdAdds").length;
  1475. if (size != 0){
  1476. lenght += size;
  1477. }
  1478. var addFile = "addFile"+divId;
  1479. var str = '<tr class="trIdAdds">'+
  1480. '<td class="text-center">' ;
  1481. if(2 == fileLocation){
  1482. $.ajax({
  1483. type:"post",
  1484. async:false,
  1485. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1486. data:{"file":data.url,},
  1487. success:function(result){
  1488. lookUrl = result.lookUrl;
  1489. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1490. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1491. }else if(isContains("pdf",lowerType)){
  1492. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  1493. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1494. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  1495. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1496. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1497. }else {
  1498. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  1499. }
  1500. }
  1501. });
  1502. }else{
  1503. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1504. 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+'"/>';
  1505. }else if(isContains("pdf",lowerType)){
  1506. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  1507. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1508. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  1509. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1510. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1511. }else {
  1512. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  1513. }
  1514. }
  1515. str = str +'</td>'+
  1516. '<td >'+data.createByName+'</td>'+
  1517. '<td >'+data.createDate+
  1518. '<input name="recordsReported.workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1519. '<input name="recordsReported.workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1520. '<input name="recordsReported.workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1521. '<input name="recordsReported.workAttachments['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  1522. '<input name="recordsReported.workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1523. '<input name="recordsReported.workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1524. '<input name="recordsReported.workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1525. '<input name="recordsReported.workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1526. '<input name="recordsReported.workAttachments['+lenght+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  1527. '</td>'+
  1528. '<td class="op-td">'+
  1529. '<div class="op-btn-box">';
  1530. if(2 == fileLocation){
  1531. if(isContains("pdf",lowerType)){
  1532. str = str +'<a href="'+lookUrl+'" target="_blank" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1533. }else{
  1534. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1535. }
  1536. }else{
  1537. 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>';
  1538. }
  1539. /*str = str + '<a href="javascript:void(0)" onclick="ossCollectingAccessory(this,\''+realPath+'/projectAccessory/projectAccessory/saveCollectAccessory?url='+data.url+'&fileName='+data.attachmentName+'\',\''+addFile+'\',\''+data.createBy+'\')" class="op-btn op-btn-delete" style="background-color: #FFB800"><i class="layui-icon layui-icon-rate"></i>&nbsp;收藏</a>'+*/
  1540. str = str + '<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  1541. '</div>' +
  1542. '</td>'+
  1543. '</tr>';
  1544. $("#file"+divId).append(str);
  1545. }else {
  1546. parent.layer.msg("上传失败!",{icon:2});
  1547. }
  1548. }
  1549. })
  1550. }).catch(function (err) {
  1551. console.log("err------ err:");
  1552. console.log(err);
  1553. });
  1554. };
  1555. function multitestOnProcessAccessory (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,fileCount) {
  1556. var names = storeAs.split("/");
  1557. var name = names[names.length-1];
  1558. ossClient.multipartUpload(storeAs, file,{
  1559. partSize: 1 * 1024 * 1024,
  1560. parallel: 5,
  1561. progress: function* (percent, cpt) {
  1562. var p = Math.floor(percent*100);
  1563. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1564. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1565. $("#baifenbi"+divId).html(p+"%");
  1566. $("#fileName"+divId).html(file.name);
  1567. checkpoint_temp = cpt;
  1568. }
  1569. }).then(function (result) {
  1570. var fileLocation = "";
  1571. var lookUrl = "";
  1572. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1573. $.ajax({
  1574. type:"get",
  1575. url:realPath+"/bos/getFileStorageLocation",
  1576. async: false,
  1577. success:function(data){
  1578. fileLocation = data.fileLocation;
  1579. }
  1580. });
  1581. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1582. $.ajax({
  1583. type:'post',
  1584. url:returnUrl,
  1585. data:{
  1586. "attachmentName":file['name'],
  1587. "attachmentId":attachmentId,
  1588. "attachmentFlag":attachmentFlag,
  1589. "fileSize":file['size'],
  1590. "url":"/"+storeAs
  1591. },
  1592. success:function(data){
  1593. var lowerType = data.type.toLowerCase();
  1594. if(data.status=="Success"){
  1595. parent.layer.msg("上传成功!",{icon:1});
  1596. var lenght =$(".trIdAdds").length;
  1597. if(parseInt(fileCount) == parseInt(lenght)){
  1598. }else{
  1599. lenght = parseInt(fileCount);
  1600. }
  1601. if (size != 0){
  1602. lenght += size;
  1603. }
  1604. var sort = parseInt(fileCount)+1;
  1605. var addFile = "addFile"+divId;
  1606. var str = '<tr class="trIdAdds">'+
  1607. '<td class="text-center">' ;
  1608. if(2 == fileLocation){
  1609. $.ajax({
  1610. type:"post",
  1611. async:false,
  1612. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1613. data:{"file":data.url,},
  1614. success:function(result){
  1615. lookUrl = result.lookUrl;
  1616. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1617. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1618. }else if(isContains("pdf",lowerType)){
  1619. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
  1620. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1621. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
  1622. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1623. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1624. }else {
  1625. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
  1626. }
  1627. }
  1628. });
  1629. }else{
  1630. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1631. 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+'"/>';
  1632. }else if(isContains("pdf",lowerType)){
  1633. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
  1634. }else if(isContains("rar,zip,jar,7z",lowerType)){
  1635. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
  1636. }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
  1637. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1638. }else {
  1639. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
  1640. }
  1641. }
  1642. str = str +'</td>'+
  1643. '<td >'+data.createByName+'</td>'+
  1644. '<td >'+data.createDate+
  1645. '<input name="workAttachments['+sort+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1646. '<input name="workAttachments['+sort+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1647. '<input name="workAttachments['+sort+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1648. '<input name="workAttachments['+sort+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
  1649. '<input name="workAttachments['+sort+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1650. '<input name="workAttachments['+sort+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1651. '<input name="workAttachments['+sort+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1652. '<input name="workAttachments['+sort+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1653. '<input name="workAttachments['+sort+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
  1654. '<input id="workAttachments'+sort+'_sort" name="workAttachments['+sort+'].sort" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+sort+'"/>'+
  1655. '</td>'+
  1656. '<td style="padding:0px">'+'<input id="workAttachments'+sort+'_description" name="workAttachments['+sort+'].description" type="text" readonly="readonly" maxlength="250" class="form-control layui-input" required placeholder="请输入文件描述" onclick="openInfo(\'workAttachments'+sort+'\',this.value)" style="width: 100%;height: 100%;padding:0px;background-color: #FFFFFF;" />'+'</td>'+
  1657. '<td class="op-td">'+
  1658. '<div class="op-btn-box">';
  1659. if(2 == fileLocation){
  1660. if(isContains("pdf",lowerType)){
  1661. str = str +'<a href="'+lookUrl+'" target="_blank" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1662. }else{
  1663. str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>';
  1664. }
  1665. }else{
  1666. 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>';
  1667. }
  1668. /* str = str + '<a href="javascript:void(0)" onclick="ossCollectingAccessory(this,\''+realPath+'/projectAccessory/projectAccessory/saveCollectAccessory?url='+data.url+'&fileName='+data.attachmentName+'\',\''+addFile+'\',\''+data.createBy+'\')" class="op-btn op-btn-delete" style="background-color: #FFB800"><i class="layui-icon layui-icon-rate"></i>&nbsp;收藏</a>'+*/
  1669. str = str + '<a href="javascript:void(0)" onclick="deleteFileFromAliyun1(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>'+
  1670. '</div>' +
  1671. '</td>'+
  1672. '</tr>';
  1673. $("#file"+divId).append(str);
  1674. }else {
  1675. parent.layer.msg("上传失败!",{icon:2});
  1676. }
  1677. }
  1678. })
  1679. }).catch(function (err) {
  1680. console.log("err------ err:");
  1681. console.log(err);
  1682. });
  1683. };
  1684. function ossCollectingAccessory(obj,url,id,uploadUserId){
  1685. $.ajax({
  1686. type:"post",
  1687. url:url,
  1688. data: {"id":id,"type":"1","collectType":1,"collectUserId":uploadUserId},
  1689. success:function(data){
  1690. if(data.success){
  1691. parent.layer.msg(data.str,{icon:1});
  1692. $(obj).hide()
  1693. }else {
  1694. parent.layer.msg(data.str,{icon:2});
  1695. }
  1696. }
  1697. });
  1698. }
  1699. /*
  1700. function multitest (storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1701. var formdata = new FormData();
  1702. formdata.append("storeAs",storeAs);
  1703. formdata.append("file",file);
  1704. var names = storeAs.split("/");
  1705. var name = names[names.length-1];
  1706. var fileLocation = "";
  1707. var lookUrl = "";
  1708. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  1709. $.ajax({
  1710. type:"get",
  1711. url:realPath+"/bos/getFileStorageLocation",
  1712. async: false,
  1713. success:function(data){
  1714. fileLocation = data.fileLocation;
  1715. }
  1716. });
  1717. $.ajax({
  1718. type:'post',
  1719. url:realPath+"/bos/upload",
  1720. data:formdata,
  1721. contentType: false,
  1722. processData: false,
  1723. success:function (data1) {
  1724. if(data1.code==='1'){
  1725. returnUrl = realPath+"/sys/workattachment/saveAttachment";
  1726. $.ajax({
  1727. type:'post',
  1728. url:returnUrl,
  1729. async:false,
  1730. data:{
  1731. "attachmentName":file['name'],
  1732. "attachmentId":attachmentId,
  1733. "attachmentFlag":attachmentFlag,
  1734. "url":data1.url,
  1735. "divIdType":divId
  1736. },
  1737. success:function(data){
  1738. var lowerType = data.type.toLowerCase();
  1739. // console.log('ajax requst : ' + data.status);
  1740. //console.log('url : ' + data.url);
  1741. if(data.status=="Success"){
  1742. parent.layer.msg("上传成功!",{icon:1});
  1743. var lenght =$(".trIdAdds").length;
  1744. if (size != 0){
  1745. lenght += size;
  1746. }
  1747. var addFile = "addFile"+divId;
  1748. var str = '<tr class="trIdAdds">'+
  1749. '<td class="text-center">' ;
  1750. if(2 == fileLocation){
  1751. $.ajax({
  1752. type:"post",
  1753. async:false,
  1754. url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
  1755. data:{"file":data.url,},
  1756. success:function(result){
  1757. lookUrl = result.lookUrl;
  1758. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1759. str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1760. }else if(isContains("pdf",lowerType)){
  1761. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  1762. }else {
  1763. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+lookUrl+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1764. }
  1765. }
  1766. });
  1767. }else{
  1768. if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
  1769. str = str +'<img src="'+data.url+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +data.url+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
  1770. }else if(isContains("pdf",lowerType)){
  1771. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  1772. }else {
  1773. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1774. }
  1775. }
  1776. str = str +'</td>'+
  1777. '<td >'+data.createByName+'</td>'+
  1778. '<td >'+data.createDate+
  1779. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1780. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1781. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data1.url+'"/>'+
  1782. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1783. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1784. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1785. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1786. '<input name="workAttachments['+lenght+'].divIdType" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.divIdType+'"/>'+
  1787. '</td>'+
  1788. '<td class="op-td">'+
  1789. '<div class="op-btn-box">' +
  1790. '<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>'+
  1791. //'<a href="'+data1.url+'" class="op-btn op-btn-download"><i class="fa fa-download"></i>&nbsp;下载</a>'+
  1792. '<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>'+
  1793. '</div>' +
  1794. '</td>'+
  1795. '</tr>';
  1796. /!*console.log("file:"+divId);
  1797. console.log("str="+str);*!/
  1798. $("#file"+divId).append(str);
  1799. $("#flagFile").val(true);
  1800. var p = Math.floor(1*100);
  1801. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1802. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1803. $("#baifenbi"+divId).html(p+"%");
  1804. $("#fileName"+divId).html("上传进度:");
  1805. }else {
  1806. parent.layer.msg("上传失败!",{icon:2});
  1807. }
  1808. }
  1809. })
  1810. }else {
  1811. parent.layer.msg("上传失败!",{icon:2});
  1812. }
  1813. }
  1814. })
  1815. };*/
  1816. /*
  1817. function multitest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  1818. var names = storeAs.split("/");
  1819. var name = names[names.length-1];
  1820. ossClient.multipartUpload(storeAs, file,{
  1821. partSize: 1 * 1024 * 1024,
  1822. parallel: 5,
  1823. progress: function* (percent, cpt) {
  1824. console.log(cpt);
  1825. console.log('Progress: ' + percent);
  1826. var p = Math.floor(percent*100);
  1827. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  1828. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  1829. $("#baifenbi"+divId).html(p+"%");
  1830. $("#fileName"+divId).html(name);
  1831. checkpoint_temp = cpt;
  1832. }
  1833. }).then(function (result) {
  1834. console.log("uploadPath:"+uploadPath);
  1835. console.log("rusult:"+result);
  1836. console.log("end-------result:");
  1837. returnUrl = realPath+"/a/sys/workattachment/saveAttachment";
  1838. $.ajax({
  1839. type:'post',
  1840. url:returnUrl,
  1841. data:{
  1842. "attachmentName":file['name'],
  1843. "attachmentId":attachmentId,
  1844. "attachmentFlag":attachmentFlag,
  1845. "url":uploadPath
  1846. },
  1847. success:function(data){
  1848. console.log('ajax requst : ' + data.status);
  1849. if(data.status=="Success"){
  1850. parent.layer.msg("上传成功!",{icon:1});
  1851. var lenght =$(".trIdAdds").length;
  1852. if (size != 0){
  1853. lenght += size;
  1854. }
  1855. var addFile = "addFile"+divId;
  1856. var str = '<tr class="trIdAdds">'+
  1857. '<td class="text-center">' ;
  1858. if (isContains("jpg,png,gif,bmp,jpeg",data.type)){
  1859. 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+'"/>';
  1860. }else if(isContains("pdf",data.type)){
  1861. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\',\'1\')">'+data.attachmentName+'</a>';
  1862. }else {
  1863. str = str + '<a class="attention-info" href="javascript:void(0)" onclick="preview(\'预览\',\''+data.url+'\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
  1864. }
  1865. str = str +'</td>'+
  1866. '<td >'+data.createByName+'</td>'+
  1867. '<td >'+data.createDate+
  1868. '<input name="workAttachments['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
  1869. '<input name="workAttachments['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
  1870. '<input name="workAttachments['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
  1871. '<input name="workAttachments['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
  1872. '<input name="workAttachments['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
  1873. '<input name="workAttachments['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
  1874. '<input name="workAttachments['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
  1875. '</td>'+
  1876. '<td class="op-td">'+
  1877. '<div class="op-btn-box">' +
  1878. '<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>'+
  1879. '<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>'+
  1880. '</div>' +
  1881. '</td>'+
  1882. '</tr>';
  1883. console.log("file:"+divId);
  1884. console.log("str="+str);
  1885. $("#file"+divId).append(str);
  1886. // $("img").not(".upload_ico").each(function () {
  1887. // var num = 1 ;
  1888. // $(this).live("click",function () {
  1889. // var flag = num%2;
  1890. // if(flag == 1){
  1891. // $(this).css("width","90%");
  1892. // $(this).css("height","90%");
  1893. // num++;
  1894. // }else if(flag ==0){
  1895. // $(this).css("width","50px");
  1896. // $(this).css("height","50px");
  1897. // num++;
  1898. // }
  1899. // })
  1900. // });
  1901. }else {
  1902. parent.layer.msg("上传失败!",{icon:2});
  1903. }
  1904. }
  1905. })
  1906. }).catch(function (err) {
  1907. console.log("err------ err:");
  1908. console.log(err);
  1909. multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath, size,checkpoint_temp);
  1910. });
  1911. };*/
  1912. function isContains(str, substr) {
  1913. return str.indexOf(substr) >= 0;
  1914. }
  1915. function deleteFileFromAliyun(obj,deleteUrl,addFile,divId){
  1916. /*console.log("---------------------------------:");
  1917. console.log(divId);
  1918. console.log("---------------------------------");*/
  1919. if (divId==null || divId== undefined || divId == ''){
  1920. divId = "_attachment";
  1921. }
  1922. var fileDiv = divId.substr(1,divId.length)+"_file";
  1923. /*console.log("---------------------------------:");
  1924. console.log(fileDiv);
  1925. console.log("---------------------------------");*/
  1926. $("#"+fileDiv).val("");
  1927. $.ajax({
  1928. type:"post",
  1929. url:deleteUrl,
  1930. success:function(data){
  1931. if(data.str){
  1932. parent.layer.msg('删除成功',{icon:1});
  1933. $(obj).parent().parent().parent().remove();
  1934. $("#"+addFile).hide();
  1935. }else {
  1936. parent.layer.msg('删除失败',{icon:2});
  1937. }
  1938. }
  1939. });
  1940. }
  1941. function deleteFileFromAliyun1(obj,deleteUrl,addFile,divId){
  1942. /*console.log("---------------------------------:");
  1943. console.log(divId);
  1944. console.log("---------------------------------");*/
  1945. if (divId==null || divId== undefined || divId == ''){
  1946. divId = "_attachment";
  1947. }
  1948. var fileDiv = divId.substr(1,divId.length)+"_file";
  1949. /*console.log("---------------------------------:");
  1950. console.log(fileDiv);
  1951. console.log("---------------------------------");*/
  1952. $("#"+fileDiv).val("");
  1953. parent.layer.msg('删除成功',{icon:1});
  1954. $(obj).parent().parent().parent().remove();
  1955. $("#"+addFile).hide();
  1956. }
  1957. function fileCollectAccessory(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size, cpt) {
  1958. file.name.replace(" ","")
  1959. file.name.replace(/—/g,"")
  1960. var fileName = file.name;
  1961. // 将单引号‘’都转换成',将双引号“”都转换成"
  1962. fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"\"");
  1963. // 将中括号【】转换成[],将大括号{}转换成{}
  1964. fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  1965. fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
  1966. // 将逗号,转换成,,将:转换成:
  1967. fileName = fileName.replace(/,/g,",").replace(/:/g,":");
  1968. //将中文——转换为英文-
  1969. fileName = fileName.replace(/—/g,"-")
  1970. fileName = fileName.replace(/……/g,"")
  1971. fileName = fileName.replace(/±/g,"")
  1972. fileName = fileName.replace(/#/g,"")
  1973. fileName = fileName.replace(/%/g,"")
  1974. var dfl=new File([file],fileName,{type:file.type});
  1975. file = dfl
  1976. requestUrl = realPath+"/previewController/getAccess";
  1977. OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
  1978. if (err) {
  1979. console.log(err);
  1980. $.ajax({
  1981. type: "post",
  1982. url: realPath + "/previewController/saveJSError",
  1983. data: {object: err.toString()},
  1984. async: false,
  1985. success: function (data) {
  1986. }
  1987. });
  1988. return alert(err);
  1989. }
  1990. try {
  1991. result = JSON.parse(response);
  1992. } catch (e) {
  1993. errmsg = 'parse sts response info error: ' + e.message;
  1994. return alert(errmsg);
  1995. }
  1996. console.log("---------result" + result);
  1997. client = new OSS.Wrapper({
  1998. accessKeyId: result.AccessKeyId,
  1999. accessKeySecret: result.AccessKeySecret,
  2000. stsToken: result.SecurityToken,
  2001. bucket: result.Bucket,
  2002. endpoint: result.Endpoint,
  2003. timeout: '30000'
  2004. });
  2005. storeAs = "attachment-file/" + storeAs + "/" + today + new Date().getTime() + file.name;
  2006. collectAccessory(client, storeAs, file, attachmentId, attachmentFlag, uploadPath, divId, size, cpt);
  2007. })
  2008. };
  2009. function collectAccessory (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId, size,cpt) {
  2010. var names = storeAs.split("/");
  2011. var name = names[names.length-1];
  2012. ossClient.multipartUpload(storeAs, file,{
  2013. partSize: 1 * 1024 * 1024,
  2014. parallel: 5,
  2015. progress: function* (percent, cpt) {
  2016. var p = Math.floor(percent*100);
  2017. $("#jindutiao"+divId).attr("style","width: "+p+"%");
  2018. $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
  2019. $("#baifenbi"+divId).html(p+"%");
  2020. checkpoint_temp = cpt;
  2021. }
  2022. }).then(function (result) {
  2023. var fileLocation = "";
  2024. var lookUrl = "";
  2025. //获取文件存储位置(0:本地;1:百度云;2:阿里云)
  2026. $.ajax({
  2027. type:"get",
  2028. url:realPath+"/bos/getFileStorageLocation",
  2029. async: false,
  2030. success:function(data){
  2031. fileLocation = data.fileLocation;
  2032. }
  2033. });
  2034. returnUrl = realPath+"/collectAccessory/collectAccessory/saveCollectAccessory";
  2035. $.ajax({
  2036. type:'post',
  2037. url:returnUrl,
  2038. data:{
  2039. "fileName":file['name'],
  2040. "fileSize":file['size'],
  2041. "url":"/"+storeAs,
  2042. "type":"1"
  2043. },
  2044. success:function(data){
  2045. if(data.success){
  2046. parent.layer.msg("上传成功!",{icon:1});
  2047. location.reload();
  2048. }else {
  2049. parent.layer.msg("上传失败!",{icon:2});
  2050. }
  2051. }
  2052. })
  2053. }).catch(function (err) {
  2054. console.log("err------ err:");
  2055. console.log(err);
  2056. });
  2057. };