package com.vci.server.bof.server.create; import com.vci.common.utility.ObjectUtility; import com.vci.corba.common.data.VCIInvocationInfo; import com.vci.corba.omd.data.BusinessObject; import com.vci.corba.omd.data.LinkObject; import com.vci.corba.common.VCIError; import com.vci.server.base.persistence.dao.HibernateSessionFactory; import com.vci.server.base.utility.LogRecordUtil; import com.vci.server.bof.server.ServiceFacadeExecuteHelper; import com.vci.server.bof.service.BOFactoryServices; public class CreateBOLOTS extends ServiceFacadeExecuteHelper{ private static ServiceFacadeExecuteHelper instance = null; public static ServiceFacadeExecuteHelper getInstance() { if(instance == null) { instance = new CreateBOLOTS(); } return instance; } @Override protected Object doAction() throws Throwable { BusinessObject[] bos = params.getBos(); LinkObject lo = params.getLo(); try { BOFactoryServices services = BOFactoryServices.getInstance(); for (int i = 0; i < bos.length; i++) { if (bos[i].oid.trim().equals("")) { bos[i].oid = ObjectUtility.getNewObjectID36(); } if (bos[i].revisionid.trim().equals("")) { bos[i].revisionid = ObjectUtility.getNewObjectID36(); } if (bos[i].nameoid.trim().equals("")) { bos[i].nameoid = ObjectUtility.getNewObjectID36(); } if (lo.oid.trim().equals("")) { lo.oid = ObjectUtility.getNewObjectID36(); } } services.createBusinessObject(bos, lo, params.getTs()); //日志记录 VCIInvocationInfo info = HibernateSessionFactory.getVciSessionInfo(); String ip = "127.0.0.1"; if(info!=null){ ip = info.clientIPInfo == null||"".equals(info.clientIPInfo) ?"127.0.0.1":info.clientIPInfo; } //batchRecordLog(bos, ip, "创建"); LogRecordUtil.batchWriteLog(bos, "创建"); return true; } catch (VCIError e) { throw this.getLocalString(e.code, e); } catch (Exception e) { //e.printStackTrace(); throw this.getLocalString("P0010SOF-00001", e); } catch (Throwable t) { //t.printStackTrace(); throw this.getLocalString("P0010SOF-00001", t); } } }