diff --git a/src_app_fresh/apx/com/amarsoft/als/apzl/apply/business/doc/upload/service/impl/LibraryDocUploadServiceImpl.java b/src_app_fresh/apx/com/amarsoft/als/apzl/apply/business/doc/upload/service/impl/LibraryDocUploadServiceImpl.java index ed4700c1b..4568e8617 100644 --- a/src_app_fresh/apx/com/amarsoft/als/apzl/apply/business/doc/upload/service/impl/LibraryDocUploadServiceImpl.java +++ b/src_app_fresh/apx/com/amarsoft/als/apzl/apply/business/doc/upload/service/impl/LibraryDocUploadServiceImpl.java @@ -1,119 +1,118 @@ -package apx.com.amarsoft.als.apzl.apply.business.doc.upload.service.impl; - -import java.io.DataOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.InputStream; -import java.net.URLDecoder; -import java.util.List; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import jbo.app.tenwa.doc.LB_DOCLIBRARY; -import apx.com.amarsoft.als.apzl.apply.business.doc.upload.service.LibraryDocUploadService; - -import com.amarsoft.are.jbo.BizObject; -import com.amarsoft.are.jbo.BizObjectManager; -import com.amarsoft.are.jbo.JBOFactory; -import com.amarsoft.are.jbo.JBOTransaction; -import com.amarsoft.are.util.StringFunction; -import com.amarsoft.awe.Configure; -import com.amarsoft.awe.util.Transaction; -import com.amarsoft.context.ASUser; -import com.base.constant.RestfullConstant; -import com.base.util.MultipartDataUtil; -import com.base.util.ReturnMapUtil; - -public class LibraryDocUploadServiceImpl implements LibraryDocUploadService { - private Map fieldMap; - private List> fileList; - - @SuppressWarnings("unchecked") - public Map upload(HttpServletRequest request, - HttpServletResponse response, JBOTransaction tx, Transaction sqlca, - ReturnMapUtil ReturnMapUtil) throws Exception { - Map testMap = (Map) MultipartDataUtil - .readRequestParam(request, "UTF-8"); - fieldMap = (Map) testMap.get("fieldMap"); // 参数 - fileList = (List>) testMap.get("fileList"); // 资料列表 - String applyType = fieldMap.get("applytype") == null ? "" : fieldMap.get( - "applytype").toString(); - - String libraryId = fieldMap.get("id") == null ? "" : fieldMap.get( - "id").toString(); // docName - - String remark = fieldMap.get("remark") == null ? "" : fieldMap.get( - "remark").toString(); // remark - - String userId = fieldMap.get("userid") == null ? "" : fieldMap.get( - "userid").toString(); - ASUser user = new ASUser(userId, sqlca); - String time = StringFunction.getTodayNow(); - - BizObjectManager libraryManage = JBOFactory - .getBizObjectManager(LB_DOCLIBRARY.CLASS_NAME); - BizObject library = libraryManage - .createQuery( - "ID=:ID").setParameter("ID", libraryId) - .getSingleResult(true); - if (null == library) { - ReturnMapUtil.setReturnMap(null, - RestfullConstant.baseProperty.get("FAIL").toString(), - "未找到该业务流程的资料清单类型!"); - return ReturnMapUtil.getReturnMap(); - } else { - libraryId = library.getAttribute("ID") == null ? "" : library.getAttribute( - "ID").toString(); - } - library.setAttributeValue("Remark", remark); - tx.join(libraryManage); - libraryManage.saveObject(library); - @SuppressWarnings("deprecation") - Configure CurConfig = Configure.getInstance(); - BizObjectManager attrBm=JBOFactory.getBizObjectManager("jbo.app.tenwa.doc.LB_DOCATTRIBUTE"); - for (Map file : fileList) { - BizObject attr=attrBm.newObject(); - attr.setAttributeValue("Library_Id", libraryId); - attr.setAttributeValue("FileName", file.get("fileName")); - attr.setAttributeValue("InputUserId", user.getUserID()); - attr.setAttributeValue("InputOrgId", user.getOrgID()); - attr.setAttributeValue("InputTime",time); - attr.setAttributeValue("objectType", applyType); - - //得到不带路径的文件名 - String sFileName = StringFunction.getFileName(file.get("fileName").toString()); - sFileName = URLDecoder.decode(URLDecoder.decode(sFileName,"UTF-8"),"UTF-8"); - - //定义数据库操作变量 - String sFileSavePath = CurConfig.getConfigure("FileSavePath"); - - String uuid=java.util.UUID.randomUUID().toString().replaceAll("-", ""); - String sFullPath =com.tenwa.officetempalte.util.FileOperatorUtil.getuploadFileDir(sFileSavePath) +uuid+"_"+sFileName; - InputStream is = (InputStream) file.get("file"); - File f = new File(sFullPath); - DataOutputStream fileout = new DataOutputStream( - new FileOutputStream(f)); - String sFileSize = file.get("fileSize") == null ? "" : file.get("fileSize").toString(); - byte b[] = new byte[Integer.valueOf(sFileSize)]; - @SuppressWarnings("unused") - int i = is.read(b, 0, Integer.valueOf(sFileSize) - 1); - fileout.write(b, 0, b.length); // 将文件数据存盘 - fileout.close(); - - //得到带相对路径的文件名 - String sFilePath = sFullPath.replace(sFileSavePath, ""); - attr.setAttributeValue("FilePath",sFilePath); - attr.setAttributeValue("FullPath",sFullPath); - attr.setAttributeValue("Content_Type", file.get("fileContentType")); - attr.setAttributeValue("FileSize", file.get("fileSize")); - tx.join(attrBm); - attrBm.saveObject(attr); - } - - ReturnMapUtil.setReturnMap(null, RestfullConstant.baseProperty.get("success").toString(), ""); - return ReturnMapUtil.getReturnMap(); - } - -} +package apx.com.amarsoft.als.apzl.apply.business.doc.upload.service.impl; + +import java.io.DataOutputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.InputStream; +import java.net.URLDecoder; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import jbo.app.tenwa.doc.LB_DOCLIBRARY; +import apx.com.amarsoft.als.apzl.apply.business.doc.upload.service.LibraryDocUploadService; + +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.are.jbo.BizObjectManager; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.amarsoft.are.util.StringFunction; +import com.amarsoft.awe.Configure; +import com.amarsoft.awe.util.Transaction; +import com.amarsoft.context.ASUser; +import com.base.constant.RestfullConstant; +import com.base.util.MultipartDataUtil; +import com.base.util.ReturnMapUtil; + +public class LibraryDocUploadServiceImpl implements LibraryDocUploadService { + private Map fieldMap; + private List> fileList; + + @SuppressWarnings("unchecked") + public Map upload(HttpServletRequest request, + HttpServletResponse response, JBOTransaction tx, Transaction sqlca, + ReturnMapUtil ReturnMapUtil) throws Exception { + Map testMap = (Map) MultipartDataUtil + .readRequestParam(request, "UTF-8"); + fieldMap = (Map) testMap.get("fieldMap"); // 参数 + fileList = (List>) testMap.get("fileList"); // 资料列表 + String applyType = fieldMap.get("applytype") == null ? "" : fieldMap.get( + "applytype").toString(); + + String libraryId = fieldMap.get("id") == null ? "" : fieldMap.get( + "id").toString(); // docName + + String remark = fieldMap.get("remark") == null ? "" : fieldMap.get( + "remark").toString(); // remark + + String userId = fieldMap.get("userid") == null ? "" : fieldMap.get( + "userid").toString(); + ASUser user = new ASUser(userId, sqlca); + String time = StringFunction.getTodayNow(); + + BizObjectManager libraryManage = JBOFactory + .getBizObjectManager(LB_DOCLIBRARY.CLASS_NAME); + BizObject library = libraryManage + .createQuery( + "ID=:ID").setParameter("ID", libraryId) + .getSingleResult(true); + if (null == library) { + ReturnMapUtil.setReturnMap(null, + RestfullConstant.baseProperty.get("FAIL").toString(), + "未找到该业务流程的资料清单类型!"); + return ReturnMapUtil.getReturnMap(); + } else { + libraryId = library.getAttribute("ID") == null ? "" : library.getAttribute( + "ID").toString(); + } + library.setAttributeValue("Remark", remark); + tx.join(libraryManage); + libraryManage.saveObject(library); + @SuppressWarnings("deprecation") + Configure CurConfig = Configure.getInstance(); + BizObjectManager attrBm=JBOFactory.getBizObjectManager("jbo.app.tenwa.doc.LB_DOCATTRIBUTE",tx); + for (Map file : fileList) { + BizObject attr=attrBm.newObject(); + attr.setAttributeValue("Library_Id", libraryId); + attr.setAttributeValue("FileName", file.get("fileName")); + attr.setAttributeValue("InputUserId", user.getUserID()); + attr.setAttributeValue("InputOrgId", user.getOrgID()); + attr.setAttributeValue("InputTime",time); + attr.setAttributeValue("objectType", applyType); + + //得到不带路径的文件名 + String sFileName = StringFunction.getFileName(file.get("fileName").toString()); + sFileName = URLDecoder.decode(URLDecoder.decode(sFileName,"UTF-8"),"UTF-8"); + + //定义数据库操作变量 + String sFileSavePath = CurConfig.getConfigure("FileSavePath"); + + String uuid=java.util.UUID.randomUUID().toString().replaceAll("-", ""); + String sFullPath =com.tenwa.officetempalte.util.FileOperatorUtil.getuploadFileDir(sFileSavePath) +uuid+"_"+sFileName; + InputStream is = (InputStream) file.get("file"); + File f = new File(sFullPath); + DataOutputStream fileout = new DataOutputStream( + new FileOutputStream(f)); + String sFileSize = file.get("fileSize") == null ? "" : file.get("fileSize").toString(); + byte b[] = new byte[Integer.valueOf(sFileSize)]; + @SuppressWarnings("unused") + int i = is.read(b, 0, Integer.valueOf(sFileSize) - 1); + fileout.write(b, 0, b.length); // 将文件数据存盘 + fileout.close(); + + //得到带相对路径的文件名 + String sFilePath = sFullPath.replace(sFileSavePath, ""); + attr.setAttributeValue("FilePath",sFilePath); + attr.setAttributeValue("FullPath",sFullPath); + attr.setAttributeValue("Content_Type", file.get("fileContentType")); + attr.setAttributeValue("FileSize", file.get("fileSize")); + attrBm.saveObject(attr); + } + + ReturnMapUtil.setReturnMap(null, RestfullConstant.baseProperty.get("success").toString(), ""); + return ReturnMapUtil.getReturnMap(); + } + +}