使用场景:用户上传附件到表单中,在表单中显示附件的信息(文件名称、文件类型、文件大小、上传时间)。
第一步:添加附件上传控件。
第二步:获取上传的附件名称。- (function(){
- var name="";
- var doc=getCurrentDocument();
- var jsonText = doc.getItemValueAsString("附件上传"); //附件上传控件名称
- if(jsonText!=""){
- println("文件json格式"+jsonText);
- var jsonArray = new Packages.org.json.JSONArray(jsonText);
- for(var ii=0;ii<jsonArray.length();ii++){
- var jsonObject = jsonArray.getJSONObject(ii);
- name+= jsonObject.getString("name");
- }
- }
-
- return name;
- })();
复制代码 第三步:获取上传的附件类型。- (function(){
- var doc=getCurrentDocument();
- var name=doc.getItemValueAsString("文件名称");//获取附件的名称进行SQL查询
- println("name-------->"+name);
- var sql="SELECT '"+getDomainid()+"' as DOMAINID,type as item_type FROM t_upload WHERE NAME='"+name+"'";
- println("sql-------->"+sql);
- var type="";
- var query =queryBySQL(sql);
- if(query!=null){
- var iter  =query.iterator();
- if(iter != null && iter.hasNext()){
- doc = iter.next();
- rtn = doc.getItemValueAsString("type");
- println("rtn->"+rtn);
- if(rtn==".doc"||rtn==".docx"){
- type="doc";
- }else if(rtn==".xls"||rtn==".xlsx"){
- type="xls";
- }else if(rtn==".ppt"||rtn==".pptx"){
- type="ppt";
- }
-           }
- }
- return type;
- })()
复制代码 第四步:获取上传的附件的大小。- (function(){
- var doc=getCurrentDocument();
- var name=doc.getItemValueAsString("文件名称");
- println("name-------->"+name);
- if(name!=""){
- var sql="SELECT '"+getDomainid()+"' as DOMAINID, filesize as item_size FROM t_upload WHERE NAME='"+name+"'";
- println("sql-------->"+sql);
- var query =queryBySQL(sql);
- var rtn="";
- if(query!=null){
- var iter  =query.iterator();
- if(iter != null && iter.hasNext()){
- doc = iter.next();
- rtn = round(doc.getItemValueAsDouble("size")/1024,1);
- println("rtn---->"+rtn);
- if(rtn>="1024"){
- rtn=round((rtn/1024),1)+"M";
- }else{
- rtn=round(rtn,0)+"K";
- }
-           }
- }
- }
- return rtn;
- })();
复制代码 第五步:在视图添加列,并设置值脚本模式。
- (function(){
- var path="";
- var doc=getCurrentDocument();
- var jsonText = doc.getItemValueAsString("附件上传");
- if(jsonText!=""){
- println("文件json格式"+jsonText);
- var jsonArray = new Packages.org.json.JSONArray(jsonText);
- for(var ii=0;ii<jsonArray.length();ii++){
- var jsonObject = jsonArray.getJSONObject(ii);
- path+= jsonObject.getString("path");
- var request = $WEB.getParamsTable().getHttpRequest();
- println("request==="+request);
- var url="http://" + request.getServerName()+":" + request.getServerPort() + request.getContextPath();
- path=url+path;
- println("pathsss-------->"+path);
- }
- }
- return "<a href='"+path+"'>下载</a>";
- })();
复制代码 效果展示:
|