/** * 附件管理。 * @returns {AttachMent} */ if (typeof AttachMent == 'undefined') { AttachMent = {}; } /** * 选择非直接上传附件时判断用flash还是html */ AttachMent.addFile=function(obj){ AttachMent.htmlUpLoadFile(obj); } /** * 选择直接上传附件时判断用flash还是html */ AttachMent.directUpLoadFile=function(obj){ AttachMent.htmlUpLoadFile(obj); } /** * flash附件非直接上传 */ AttachMent.FlexAddFile=function(obj){ var inputObj=$(obj); var fieldName=inputObj.attr("field"); var parent=inputObj.parent().parent(); var rights="w"; var divName="div.attachement"; var inputName="input[name='" +fieldName +"'],textarea[name='" +fieldName +"']"; //获取div对象。 var divObj=$(divName,parent); var inputJson=$(inputName,parent); var aryJson=AttachMent.getFileJsonArray(divObj); //文件选择器 FlexUploadDialog({isSingle:false,callback:function (fileIds,fileNames,filePaths,extPaths){ if(fileIds==undefined || fileIds=="") return ; var aryFileId=fileIds.split(","); var aryName=fileNames.split(","); var aryExtPath=extPaths.split(","); for(var i=0;i'); div.append('
'); div.append(''); var onclick="AttachMent.addFile(this)"; if($(this).attr("isdirectupload")=="1"){ onclick="AttachMent.directUpLoadFile(this)"; } div.append('选择'); if(this.value==""||typeof(this.value)=="undefined"||this.value.indexOf("¥@@¥") != -1){ $(this).after(div); $(this).remove(); } }); if( $.isEmpty(parent)){ parent = $("div[name='div_attachment_container']"); } parent.each(function(){ var me=$(this), rights=me.attr("right"); //如果没有权限属性,可能是子表中的附件 if(!rights){ rights=me.closest("[type='subtable']").attr("right"); } //对于弹出框的处理 if(!$.isEmpty(subRights)) rights = subRights; if(rights){ rights=rights.toLowerCase(); } if(rights!="w" && rights!="r" && rights!="b"){ //rights="w"; } // else{ if(rights=="r"){ //$("a.attachement").remove(); //$("a.selectFile").remove(); $("a[field]",me).remove(); } var atta =$("textarea[controltype='attachment']",me); var jsonStr = atta.val(); if(!$.isEmpty(jsonStr)){ jsonStr = jsonStr.replaceAll("¥@@¥","\""); atta.val(jsonStr); } var divAttachment=$("div.attachement",me); //json数据为空。 AttachMent.insertHtml(divAttachment,jsonStr,rights); // } }); }; /** * 附件插入显示 * @param {} div * @param {} jsonStr * @param {} rights 权限 如果不传,默认是r */ AttachMent.insertHtml= function(div,jsonStr,rights){ if($.isEmpty(jsonStr)) { div.empty(); return ; } if($.isEmpty(rights)) rights ='r'; var jsonObj=[]; try { jsonStr = jsonStr.replaceAll("¥@@¥","\""); jsonObj = jQuery.parseJSON(jsonStr); } catch (e) { } var html=AttachMent.getHtml(jsonObj,rights); div.empty(); div.append($(html)); }; /** * 获取文件的html。 * @param aryJson * @returns {String} */ AttachMent.getHtml=function(aryJson,rights){ var str=""; var template=""; //onclick='AttachMent.handleClickItem(this,\"w\")' //onclick='AttachMent.handleClickItem(this,\"r\")' //path='#path#' // var templateW="
  • #name# #preview#
  • "; var templateR="
  • #name##preview#
  • "; if(rights=="w"){ template=templateW; } else{ template=templateR; } for(var i=0;i0){ tmp=template.replace("#file#",file).replace("#preview#","预览").replace("#path#",path).replace("#name#", AttachMent.parseName(name)).replace("#title#",name).replace("#fileId#", id); }else{ tmp=template.replace("#file#",file).replace("#preview#","").replace("#path#",path).replace("#name#", AttachMent.parseName(name)).replace("#title#",name).replace("#fileId#", id); } //PDF预览新增代码end 李猛ADD //附件如果是图片就显示到后面 str+=tmp; } console.log(str); str = ""; /*改为一个附件就占领一行*/ return str; }; AttachMent.parseName = function(name){ if(name.length >30) return name.substr(0,30)+"..."; /*暂时去掉截取字段*/ return name; } /** * 添加json。 * @param fileId * @param name * @param path * @param aryJson */ AttachMent.addJson=function(fileId,name,aryJson){ var rtn=AttachMent.isFileExist(aryJson,fileId); if(!rtn){ var obj={id:fileId,name:name}; aryJson.push(obj); } }; /** * 删除json。 * @param fileId 文件ID。 * @param aryJson 文件的JSON。 */ AttachMent.delJson=function(fileId,aryJson){ for(var i=aryJson.length-1;i>=0;i--){ var obj=aryJson[i]; if(obj.id==fileId){ aryJson.splice(i,1); } } }; /** * 判断文件是否存在。 * @param aryJson * @param fileId * @returns {Boolean} */ AttachMent.isFileExist=function(aryJson,fileId){ for(var i=0;i0) var fileId = span.attr("fileId"); var path =__ctx+"/platform/system/sysFile/file_"+fileId+".ht?download=true"; window.open(path,'_blank'); }