ossupload.js 148 KB

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