|
@@ -2523,4 +2523,202 @@ function temporaryMultitest (storeAs, file,filePath,attachmentId,attachmentFlag,
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+function multiTypePartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size,type, cpt,idx,prefix,currentUser) {
|
|
|
+
|
|
|
+ console.log("-----------------------start");
|
|
|
+ console.log("-----------------------"+realPath);
|
|
|
+
|
|
|
+ file.name.replace(" ","")
|
|
|
+ file.name.replace(/—/g,"")
|
|
|
+ var fileName = file.name;
|
|
|
+ // 将单引号‘’都转换成',将双引号“”都转换成"
|
|
|
+ fileName = fileName.replace(/\’|\‘/g,"'").replace(/\“|\”/g,"");
|
|
|
+ // 将中括号【】转换成[],将大括号{}转换成{}
|
|
|
+ fileName = fileName.replace(/\【/g,"(").replace(/\】/g,")").replace(/\{/g,"(").replace(/\}/g,")");
|
|
|
+ fileName = fileName.replace(/\[/g,"(").replace(/\]/g,")").replace(/\{/g,"(").replace(/\}/g,")");
|
|
|
+ // 将逗号,转换成,,将:转换成:
|
|
|
+ fileName = fileName.replace(/,/g,",").replace(/:/g,":");
|
|
|
+ //将中文——转换为英文-
|
|
|
+ fileName = fileName.replace(/—/g,"-")
|
|
|
+ fileName = fileName.replace(/……/g,"")
|
|
|
+ fileName = fileName.replace(/±/g,"")
|
|
|
+ fileName = fileName.replace(/#/g,"")
|
|
|
+ fileName = fileName.replace(/%/g,"")
|
|
|
+ fileName = fileName.replace(/Π/g,"")
|
|
|
+ fileName = fileName.replace(/π/g,"")
|
|
|
+ fileName = fileName.replace(/·/g,".")
|
|
|
+ var dfl=new File([file],fileName,{type:file.type});
|
|
|
+ file = dfl
|
|
|
+
|
|
|
+ requestUrl = realPath+"/previewController/getAccess";
|
|
|
+ OSS.urllib.request(requestUrl, {method: 'GET'}, function (err, response) {
|
|
|
+ if (err) {
|
|
|
+ console.log(err);
|
|
|
+ $.ajax({
|
|
|
+ type:"post",
|
|
|
+ url:realPath+"/previewController/saveJSError",
|
|
|
+ data:{object:err.toString()},
|
|
|
+ async: false,
|
|
|
+ success:function(data){
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return alert(err);
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ result = JSON.parse(response);
|
|
|
+ } catch (e) {
|
|
|
+ errmsg = 'parse sts response info error: ' + e.message;
|
|
|
+ return alert(errmsg);
|
|
|
+ }
|
|
|
+ console.log("---------result"+result);
|
|
|
+ client = new OSS.Wrapper({
|
|
|
+ accessKeyId: result.AccessKeyId,
|
|
|
+ accessKeySecret: result.AccessKeySecret,
|
|
|
+ stsToken: result.SecurityToken,
|
|
|
+ bucket: result.Bucket,
|
|
|
+ endpoint: result.Endpoint,
|
|
|
+ timeout:'30000'
|
|
|
+ });
|
|
|
+ storeAs = "attachment-file/" + storeAs +"/"+today+new Date().getTime()+ file.name;
|
|
|
+ if(cpt == 1)
|
|
|
+ multitestFlag(client,storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,size, cpt,idx,prefix,currentUser);
|
|
|
+ else
|
|
|
+ multiTypeTest(client, storeAs, file,attachmentId,attachmentFlag,uploadPath.replace('http://dmtest-test.oss-cn-shanghai.aliyuncs.com', result.AliyunUrl),divId,type,size, cpt);
|
|
|
+ })
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
+function multiTypeTest (ossClient, storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,type, size,cpt) {
|
|
|
+
|
|
|
+ var names = storeAs.split("/");
|
|
|
+ var name = names[names.length-1];
|
|
|
+ ossClient.multipartUpload(storeAs, file,{
|
|
|
+ partSize: 1 * 1024 * 1024,
|
|
|
+ parallel: 5,
|
|
|
+ progress: function* (percent, cpt) {
|
|
|
+ var p = Math.floor(percent*100);
|
|
|
+ $("#jindutiao"+divId).attr("style","width: "+p+"%");
|
|
|
+ $("#jindutiao"+divId).attr("aria-valuenow",p+"%");
|
|
|
+ $("#baifenbi"+divId).html(p+"%");
|
|
|
+ $("#fileName"+divId).html(file.name);
|
|
|
+ checkpoint_temp = cpt;
|
|
|
+ }
|
|
|
+ }).then(function (result) {
|
|
|
+ var fileLocation = "";
|
|
|
+ var lookUrl = "";
|
|
|
+ //获取文件存储位置(0:本地;1:百度云;2:阿里云)
|
|
|
+ $.ajax({
|
|
|
+ type:"get",
|
|
|
+ url:realPath+"/bos/getFileStorageLocation",
|
|
|
+ async: false,
|
|
|
+ success:function(data){
|
|
|
+ fileLocation = data.fileLocation;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ returnUrl = realPath+"/sys/workattachment/saveAttachment";
|
|
|
+ $.ajax({
|
|
|
+ type:'post',
|
|
|
+ url:returnUrl,
|
|
|
+ data:{
|
|
|
+ "attachmentName":file['name'],
|
|
|
+ "attachmentId":attachmentId,
|
|
|
+ "attachmentFlag":attachmentFlag,
|
|
|
+ "fileSize":file['size'],
|
|
|
+ "url":"/"+storeAs,
|
|
|
+ "divIdType":divId
|
|
|
+ },
|
|
|
+ success:function(data){
|
|
|
+ var lowerType = data.type.toLowerCase();
|
|
|
+ if(data.status=="Success"){
|
|
|
+ parent.layer.msg("上传成功!",{icon:1});
|
|
|
+ var lenght =$(".trIdAdds").length;
|
|
|
+ if (size != 0){
|
|
|
+ lenght += size;
|
|
|
+ }
|
|
|
+ var addFile = "addFile"+divId;
|
|
|
+ var str = '<tr class="trIdAdds">'+
|
|
|
+ '<td class="text-center">' ;
|
|
|
+ if(2 == fileLocation){
|
|
|
+ $.ajax({
|
|
|
+ type:"post",
|
|
|
+ async:false,
|
|
|
+ url:realPath+"/workfullmanage/workFullManage/getFileTemporaryLookUrl",
|
|
|
+ data:{"file":data.url,},
|
|
|
+ success:function(result){
|
|
|
+ lookUrl = result.lookUrl;
|
|
|
+ if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
|
|
|
+ str = str +'<img src="'+lookUrl+'" width="50" height="50" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/picturePreview?url=' +lookUrl+ '\',\'90%\',\'90%\')" alt="'+data.attachmentName+'"/>';
|
|
|
+ }else if(isContains("pdf",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',1)">'+data.attachmentName+'</a>';
|
|
|
+ }else if(isContains("rar,zip,jar,7z",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',3)">'+data.attachmentName+'</a>';
|
|
|
+ }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
|
|
|
+ }else {
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+lookUrl+'\',2)">'+data.attachmentName+'</a>';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ }else{
|
|
|
+ if (isContains("jpg,png,gif,bmp,jpeg",lowerType)){
|
|
|
+ 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+'"/>';
|
|
|
+ }else if(isContains("pdf",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',1)">'+data.attachmentName+'</a>';
|
|
|
+ }else if(isContains("rar,zip,jar,7z",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',3)">'+data.attachmentName+'</a>';
|
|
|
+ }else if(isContains("avi,wmv,mpg,mpeg,mov,rm,ram,swf,flv,mp4,rmvb",lowerType)){
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openDialogView(\'预览\',\''+ '/a/sys/picturepreview/videoPreview?url=' +lookUrl+ '\',\'90%\',\'90%\')">'+data.attachmentName+'</a>';
|
|
|
+ }else {
|
|
|
+ str = str + '<a class="attention-info" href="javascript:void(0)" onclick="openPreview(\''+data.url+'\',2)">'+data.attachmentName+'</a>';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ str = str +'</td>'+
|
|
|
+ '<td >'+data.createByName+'</td>'+
|
|
|
+ '<td >'+data.createDate+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value=""/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].attachmentId" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentId+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].url" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.url+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].temporaryUrl" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.temporaryUrl+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].attachmentName" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentName+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].createBy.id" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.createBy+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].type" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.type+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].attachmentFlag" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.attachmentFlag+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].fileSize" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.fileSize+'"/>'+
|
|
|
+ '<input name="workAttachment'+ type +'s['+lenght+'].divIdType" type="hidden" readonly="readonly" maxlength="20" style="width:140px;" class="form-control" value="'+data.divIdType+'"/>'+
|
|
|
+ '</td>'+
|
|
|
+ '<td class="op-td">'+
|
|
|
+ '<div class="op-btn-box">';
|
|
|
+ if(2 == fileLocation){
|
|
|
+ if(isContains("pdf",lowerType)){
|
|
|
+ str = str +'<a href="'+lookUrl+'" target="_blank" class="op-btn op-btn-download"><i class="fa fa-download"></i> 下载</a>';
|
|
|
+ }else{
|
|
|
+ str = str +'<a href="'+lookUrl+'" class="op-btn op-btn-download"><i class="fa fa-download"></i> 下载</a>';
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ 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> 下载</a>';
|
|
|
+ }
|
|
|
+ /*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> 收藏</a>'+*/
|
|
|
+ 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> 删除</a>'+
|
|
|
+ '</div>' +
|
|
|
+ '</td>'+
|
|
|
+ '</tr>';
|
|
|
+ $("#file"+divId).append(str);
|
|
|
+ }else {
|
|
|
+ parent.layer.msg("上传失败!",{icon:2});
|
|
|
+ }
|
|
|
+ console.log(str)
|
|
|
+ $("#flagFile").val(true);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }).catch(function (err) {
|
|
|
+ console.log("err------ err:");
|
|
|
+ console.log(err);
|
|
|
+ });
|
|
|
};
|