<%@page import="java.net.URLDecoder"%> <%@page import="com.amarsoft.are.jbo.impl.BizObjectTableMapper"%> <%@page import="com.amarsoft.awe.util.DBKeyHelp"%> <%@page import="com.amarsoft.awe.common.attachment.*"%> <%@ page contentType="text/html; charset=GBK"%> <%@ include file="/IncludeBegin.jsp"%><% AmarsoftUpload myAmarsoftUpload = new AmarsoftUpload(); myAmarsoftUpload.initialize(pageContext); myAmarsoftUpload.upload(); String sFileName = myAmarsoftUpload.getFiles().getFile(0).getFileName(); //文件名称 String relativeid= (String)myAmarsoftUpload.getRequest().getParameter("RELATIVE_ID"); //附件编号 String InputTime= StringFunction.getTodayNow(); //附件编号上传时间 BizObjectManager libBm=JBOFactory.getBizObjectManager("jbo.app.tenwa.doc.LB_DOCLIBRARY"); BizObjectManager attrBm=JBOFactory.getBizObjectManager("jbo.app.tenwa.doc.LB_DOCATTRIBUTE"); BizObject lib=libBm.createQuery("relative_id=:id").setParameter("id", relativeid).getSingleResult(true); String libraryId=lib.getAttribute("id").getString(); BizObject attr=attrBm.newObject(); attr.setAttributeValue("Library_Id", libraryId); attr.setAttributeValue("FileName", sFileName); attr.setAttributeValue("InputUserId", CurUser.getUserID()); attr.setAttributeValue("InputOrgId", CurUser.getOrgID()); attr.setAttributeValue("InputTime",InputTime); attr.setAttributeValue("objectType", "Board"); //得到不带路径的文件名 sFileName = StringFunction.getFileName(sFileName); sFileName = URLDecoder.decode(URLDecoder.decode(sFileName,"UTF-8"),"UTF-8"); //定义数据库操作变量 SqlObject so = null; String sNewSql = ""; String sFileSaveMode = CurConfig.getConfigure("FileSaveMode"); String sFileSavePath = CurConfig.getConfigure("FileSavePath"); String sFileNameType = CurConfig.getConfigure("FileNameType"); String trueTable = ((BizObjectTableMapper)attrBm).getTable(); //取得真实的表名 String sAttachmentNo = DBKeyHelp.getSerialNo(trueTable,"Id"); if (!myAmarsoftUpload.getFiles().getFile(0).isMissing()){ try { System.out.println("sDocNo="+libraryId+"--sAttachmentNo="+sAttachmentNo+"--sFileName="+sFileName+"--sFileSavePath="+sFileSavePath); System.out.println("sFileNameType="+sFileNameType+"--application="+application); String sFullPath = com.amarsoft.awe.common.attachment.FileNameHelper.getFullPath(libraryId, sAttachmentNo,sFileName, sFileSavePath, sFileNameType, application); myAmarsoftUpload.getFiles().getFile(0).saveAs(sFullPath); //得到带相对路径的文件名 String sFilePath = FileNameHelper.getFilePath(libraryId,sAttachmentNo,sFileName,sFileNameType); attr.setAttributeValue("FilePath",sFilePath); attr.setAttributeValue("FullPath",sFullPath); attr.setAttributeValue("Content_Type",DataConvert.toString(myAmarsoftUpload.getFiles().getFile(0).getContentType())); attr.setAttributeValue("FileSize",DataConvert.toString(String.valueOf(myAmarsoftUpload.getFiles().getFile(0).getSize()))); attrBm.saveObject(attr); myAmarsoftUpload = null; }catch(Exception e){ e.printStackTrace(); out.println("An error occurs : " + e.toString()); attrBm.deleteObject(attr); myAmarsoftUpload = null; %> <% } } %> <%@ include file="/IncludeEnd.jsp"%>