$(function () {
var fileLen =""
var upImageLen =""
var fileUploadArr ={};
var urlArr=[];
var getDataList ={
init:function(){
this.addListenner();
}
addListenner:function(){
var self = this;
//附件上传
$("#upload_file").on('change',function(){
fileLen = $('.voice_file_upload').length;
upImageLen = Array.from($(this)[0].files).length;
if((fileLen + upImageLen) < 11){
var fileArr = Array.from($(this)[0].files);
count = 0;
$("#upload_file")[0].setAttribute('type','text');
self.testPic(fileArr,'30');//录音附件大小及格式处理
}else if((fileLen + upImageLen) >= 11){ //超过10条弹框
$(".pic-num").text("最多只能上传10个附件!")
$(".upload-alert-box").show();
$("#upload_file")[0].setAttribute('type','file');
count = 0;
}
});
}
//附件上传
fileUpload:function(formData,fileType){
var self = this;
var url = bpmUrl + "/workflow/attachment/uploadFile";
$("body").mLoading();
$.ajax({
type:"POST",
url: url,
data:formData,
processData:false,
contentType: false,
success: function(data) {
$("body").mLoading('hide');
$("#upload_file")[0].setAttribute('type','file');
$("#upload_img")[0].setAttribute('type','file')
$("#writingUploadFile")[0].setAttribute('type','file');
var responseData = JSON.parse(data);
if(fileType == '30'){ //点击录音附件返回的数据
fileUploadArr.fileLink =responseData.finalUrl
fileUploadArr.fileName = responseData.fileName
var size = responseData.fsize.replace(",",'')
fileUploadArr.fileSize = (size/1024 ).toFixed(2)
fileUploadArr.fileType = '30'
urlArr.push({fileLink:fileUploadArr.fileLink,fileName:fileUploadArr.fileName,fileType:fileUploadArr.fileType})
self.thumbNailFile(fileUploadArr);
self.thumbNailWritingFile(fileUploadArr);
}else if(fileType == '10'){ //写作图片上传
fileUploadArr.fileLink =responseData.finalUrl
fileUploadArr.fileName = responseData.fileName
fileUploadArr.fileSize = responseData.fsize
fileUploadArr.fileType = '10'
urlArr.push(fileUploadArr)
self.thumbNailWritingImg(fileUploadArr)
}
},
error: function(error) {
alert("请求错误");
$("body").mLoading('hide');
$("#upload_file")[0].setAttribute('type','file');
$("#upload_img")[0].setAttribute('type','file')
$("#writingUploadFile")[0].setAttribute('type','file');
}
})
},
// 口语录音附件上传
thumbNailFile:function(responseData){ //录音附件
let fileId = responseData.fileId?responseData.fileId:''
var file_upload = '<div class="voice-box voice_file_upload recorder"><div class="left-box"><div class="file-text">'+responseData.fileName +
'</div><div data-fileid="'+fileId+'" data-type="'+responseData.fileType+'" data-name="'+responseData.fileName+'" data-url="'+responseData.fileLink+'" data-size="'+responseData.fileSize+'MB'+'" class="file-url file-data">'+responseData.fileLink+
'</div><div class="file-size">'+ responseData.fileSize+'MB'+'</div></div><div class="right-box">'+
'<img class="del-icon" data-fileid="'+fileId+'" src='+ imgUrl +'/img/ic_delete.png></div></div>'
$(".voice-file").append(file_upload);
this.domChage()
},
testPic:function(file,fileType){
var self = this;
if(file.length > 11){
$(".upload-alert-box").show();
$("#upload_file")[0].setAttribute('type','file');
$("#upload_img")[0].setAttribute('type','file');
$("#writingUploadFile")[0].setAttribute('type','file');
return false
}
if(fileType == '30'){
if(file.length == 1){
var fileSize = file[0].size / 1024 / 1024 < 20;
if(!fileSize){
alert('文件大小不能超过20MB');
$("#upload_file")[0].setAttribute('type','file');
$("#writingUploadFile")[0].setAttribute('type','file');
return false
}
var formData = new FormData();
formData.append('mFile', file[0])
self.fileUpload(formData,fileType)
}else{
$.each(file,function(index,item){
var fileSize = item.size / 1024 / 1024 < 20;
if(!fileSize){
alert('文件大小不能超过20MB');
$("#upload_file")[0].setAttribute('type','file');
$("#writingUploadFile")[0].setAttribute('type','file');
return false
}
});
self.moreChage(file,fileType);
}
}
if(fileType == '20'){
if(file.length == 1){
var fileSize = file[0].size / 1024 / 1024 < 20;
if(!fileSize){
alert('录音大小不能超过20MB');
return false
}
var formData = new FormData();
formData.append('mFile', file[0])
self.fileUpload(formData,fileType)
}else{
$.each(file,function(index,item){
var fileSize = item.size / 1024 / 1024 < 20;
if(!fileSize){
alert('录音大小不能超过20MB');
return false
}
});
self.moreChage(file,fileType);
}
}
if(fileType == '10'){
if(file.length == 1){
var fileSize = file[0].size / 1024 / 1024 < 20;
if(!fileSize){
alert('图片大小不能超过20MB');
$("#upload_img")[0].setAttribute('type','file');
return false
}
var formData = new FormData();
formData.append('mFile', file[0])
self.fileUpload(formData,fileType)
}else{
$.each(file,function(index,item){
var fileSize = item.size / 1024 / 1024 < 20;
if(!fileSize){
alert('图片大小不能超过20MB');
$("#upload_img")[0].setAttribute('type','file');
return false
}
});
self.moreChage(file,fileType);
}
}
},
moreChage:function(fileArr,fileType){
var self = this;
$.each(fileArr,function(index,item){
(function(j){
//显示图片 上传文件
var formData = new FormData();
formData.append('mFile',j);
self.fileUpload(formData,fileType);
})(item)
});
},
}
getDataList.init()
}
jq中文件 上传的方法
最新推荐文章于 2024-04-30 17:35:01 发布